Przeglądaj źródła

完结订单-状态+数据验证
派车新增查询数据接口
订单详情新增页面数据翻译字段

lengfaqiang 2 lat temu
rodzic
commit
d42a5417b6

+ 4 - 4
sckw-modules/sckw-example/src/main/java/com/sckw/example/controller/TestController.java

@@ -33,9 +33,9 @@ public class TestController {
     public R<List<WalletDto>> wall(@RequestParam("uid") Long uid, String channel, Long filter) {
         return payCenterDubboService.wallet(uid, null, filter);
     }
-    @GetMapping("/test")
-    public R<Object> test(@RequestParam("entId") Long entId) {
-        return R.ok(paymentDubboService.checkSettlement(entId));
-    }
+//    @GetMapping("/test")
+//    public R<Object> test(@RequestParam("entId") Long entId) {
+//        return R.ok(paymentDubboService.checkSettlement(entId));
+//    }
 
 }

+ 1 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/AcceptCarriageOrderController.java

@@ -306,7 +306,7 @@ public class AcceptCarriageOrderController {
      * @return
      */
     @RequestMapping(value = "/commitAcceptCarriageOrderFinish", method = RequestMethod.POST)
-    public HttpResult commitAcceptCarriageOrderFinish(@Validated @RequestBody OrderFinishDTO orderFinishDTO) {
+    public HttpResult commitAcceptCarriageOrderFinish(@Valid @RequestBody OrderFinishDTO orderFinishDTO) {
         try {
             return acceptCarriageOrderService.commitAcceptCarriageOrderFinish(orderFinishDTO);
         } catch (Exception e) {

+ 2 - 2
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/KwtWaybillOrderController.java

@@ -149,11 +149,11 @@ public class KwtWaybillOrderController {
     }
 
     /**
-     * 查询已排量、待运量数据
+     * 派车-查询已派车量、待运量数据
      * @param orderId
      * @return
      */
-    @RequestMapping(name = "查询已量、待运量数据",path = "/getLogisticsAmountByOrderId",method = RequestMethod.GET)
+    @RequestMapping(name = "查询已派车量、待运量数据",path = "/getLogisticsAmountByOrderId",method = RequestMethod.GET)
     public HttpResult getLogisticsAmountByOrderId(@NotBlank @RequestParam("orderId") String orderId){
         log.info("查询已排量、待运量数据 query :{}",orderId);
         try {

+ 23 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/vo/OrderDetailVO.java

@@ -64,6 +64,11 @@ public class OrderDetailVO {
      */
     private BigDecimal deduct;
 
+    /**
+     * 扣亏损值
+     */
+    private String deductLabel;
+
     /**
      * 商品名称
      */
@@ -76,10 +81,21 @@ public class OrderDetailVO {
      * 合理亏损
      */
     private BigDecimal loss;
+
+    /**
+     * 合理亏损
+     */
+    private String lossLabel;
     /**
      * 任务总量
      */
     private BigDecimal number;
+
+    /**
+     * 任务总量
+     */
+    private String numberLabel;
+
     /**
      * 订单金额
      */
@@ -92,6 +108,13 @@ public class OrderDetailVO {
      * 运价
      */
     private BigDecimal price;
+
+
+    /**
+     * 运价方式
+     */
+    private String priceLabel;
+
     /**
      * 计划结束时间
      */

+ 52 - 2
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/AcceptCarriageOrderService.java

@@ -1279,8 +1279,11 @@ public class AcceptCarriageOrderService {
 //            throw new BusinessException("完结订单,实装量不能大于分配量");
 //        }
         BigDecimal amount = logisticsOrder.getAmount() == null ? new BigDecimal("0.00") : logisticsOrder.getAmount();
-        if (amount.compareTo(orderFinishDTO.getLoadAmount()) < 0){
-            throw new BusinessException("完结订单,实装量不能大于分配量");
+        if (amount.compareTo(orderFinishDTO.getLoadAmount()) < 0) {
+            throw new BusinessException("完结订单,装货量不能大于运输总量");
+        }
+        if (orderFinishDTO.getUnloadAmount().compareTo(orderFinishDTO.getLoadAmount()) > 0) {
+            throw new BusinessException("完结订单,填写卸货量不能大于装货量");
         }
         /**订单状态验证*/
         if (!LogisticsOrderEnum.WAIT_DELIVERY.getStatus().equals(String.valueOf(logisticsOrder.getStatus()))
@@ -1646,6 +1649,53 @@ public class AcceptCarriageOrderService {
         orderDetailVO.setScheduleStartTime(logisticsOrder.getStartTime() == null ? null : logisticsOrder.getStartTime());
         orderDetailVO.setScheduleEndTime(logisticsOrder.getEndTime() == null ? null : logisticsOrder.getEndTime());
         orderDetailVO.setPerformanceAmount(logisticsOrder.getLoadAmount() == null ? null : logisticsOrder.getLoadAmount());
+        if (logisticsOrder.getSettlementCycle() != null) {
+            Map<String, SysDictResDto> dtoMap = remoteSystemService.queryDictMapByType(DictTypeEnum.SETTLEMENT_CYCLE.getType());
+            orderDetailVO.setSettlementCycleLabel(dtoMap.isEmpty() ? null :
+                    (dtoMap.get(String.valueOf(logisticsOrder.getSettlementCycle())) == null ? null : dtoMap.get(String.valueOf(logisticsOrder.getSettlementCycle())).getLabel()));
+        }
+        orderDetailVO.setBillingMode(logisticsOrder.getBillingMode());
+        if (logisticsOrder.getBillingMode() != null) {
+            Map<String, SysDictResDto> dictResDtoMap = remoteSystemService.queryDictMapByType(DictTypeEnum.CHARGING_TYPE.getType());
+            orderDetailVO.setBillingModeLabel(dictResDtoMap.isEmpty() ? null :
+                    (dictResDtoMap.get(logisticsOrder.getBillingMode()) == null ? null : dictResDtoMap.get(logisticsOrder.getBillingMode()).getLabel()));
+        }
+        if (logisticsOrder.getPayment() != null) {
+            Map<String, SysDictResDto> dictResDtoMap = remoteSystemService.queryDictMapByType(DictTypeEnum.TRADE_TYPE.getType());
+            if (dictResDtoMap.isEmpty()) {
+                orderDetailVO.setPaymentLabel(null);
+            } else {
+                if (dictResDtoMap.get(logisticsOrder.getPayment()) != null) {
+                    orderDetailVO.setPaymentLabel(dictResDtoMap.get(logisticsOrder.getPayment()).getLabel());
+                }
+            }
+        }
+        if (orderDetailVO.getSigningWay() != null) {
+            Map<String, SysDictResDto> dictResDtoMap = remoteSystemService.queryDictMapByType(DictTypeEnum.SIGNING_TYPE.getType());
+            if (dictResDtoMap.isEmpty()) {
+                orderDetailVO.setPaymentLabel(null);
+            } else {
+                if (dictResDtoMap.get(orderDetailVO.getSigningWay()) != null) {
+                    orderDetailVO.setSigningWayLabel(dictResDtoMap.get(orderDetailVO.getSigningWay()).getLabel());
+                }
+            }
+        }
+        if (logisticsOrder.getGoodsPriceUnit() != null) {
+            SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.PRICE_TYPE.getType(), logisticsOrder.getGoodsPriceUnit());
+            orderDetailVO.setDeductLabel(sysDictResDto == null ? null : sysDictResDto.getLabel());
+        }
+        if (logisticsOrder.getLossUnit() != null) {
+            SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.TAX_RATE_TYPE.getType(), logisticsOrder.getLossUnit());
+            orderDetailVO.setLossLabel(sysDictResDto == null ? null : sysDictResDto.getLabel());
+        }
+        if (logisticsOrder.getUnit()!=null){
+            SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.UNIT_TYPE.getType(), logisticsOrder.getUnit());
+            orderDetailVO.setNumberLabel(sysDictResDto == null ? null : sysDictResDto.getLabel());
+        }
+        if (logisticsOrder.getPriceType() != null) {
+            SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.PRICE_TYPE.getType(), String.valueOf(logisticsOrder.getPriceType()));
+            orderDetailVO.setPriceLabel(sysDictResDto == null ? null : sysDictResDto.getLabel());
+        }
         return HttpResult.ok(orderDetailVO);
     }
 

+ 5 - 2
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/ConsignOrderService.java

@@ -741,8 +741,11 @@ public class ConsignOrderService {
 //            throw new BusinessException("完结订单,实装量不能大于分配量");
 //        }
         BigDecimal amount = logisticsOrder.getAmount() == null ? new BigDecimal("0.00") : logisticsOrder.getAmount();
-        if (amount.compareTo(orderFinishDTO.getLoadAmount()) < 0){
-            throw new BusinessException("完结订单,实装量不能大于分配量");
+        if (amount.compareTo(orderFinishDTO.getLoadAmount()) < 0) {
+            throw new BusinessException("完结订单,装货量不能大于运输总量");
+        }
+        if (orderFinishDTO.getUnloadAmount().compareTo(orderFinishDTO.getLoadAmount()) > 0) {
+            throw new BusinessException("完结订单,填写卸货量不能大于装货量");
         }
         /**订单状态验证*/
         if (!LogisticsOrderEnum.WAIT_DELIVERY.getStatus().equals(String.valueOf(logisticsOrder.getStatus()))

+ 6 - 7
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtWaybillOrderService.java

@@ -2319,15 +2319,14 @@ public class KwtWaybillOrderService {
         BigDecimal subcontractAmount = kwtLogisticsOrder.getSubcontractAmount() == null ? new BigDecimal("0.00") : kwtLogisticsOrder.getSubcontractAmount();
         BigDecimal waitDistributionAmount = amount.subtract(entrustAmount).subtract(subcontractAmount);
         Map<String, Map> map = new HashMap(NumberConstant.SIXTEEN);
-        //效的车辆运单状态(其他状态不参与统计中)
+        //效的车辆运单状态(其他状态不参与统计中)
         List<Long> statusList = new ArrayList<>();
+        statusList.add(CarWaybillEnum.PENDING_ORDER.getCode().longValue());
         statusList.add(CarWaybillEnum.PENDING_VEHICLE.getCode().longValue());
-        statusList.add(CarWaybillEnum.EXIT_COMPLETED.getCode().longValue());
-        statusList.add(CarWaybillEnum.WAIT_LOADING.getCode().longValue());
-        statusList.add(CarWaybillEnum.COMPLETION_LOADING.getCode().longValue());
-        statusList.add(CarWaybillEnum.WAIT_UNLOADING.getCode().longValue());
-        statusList.add(CarWaybillEnum.COMPLETION_UNLOADING.getCode().longValue());
-        statusList.add(CarWaybillEnum.APPROVAL_PASS.getCode().longValue());
+        statusList.add(CarWaybillEnum.REJECT_ORDER.getCode().longValue());
+        statusList.add(CarWaybillEnum.REFUSE_TRAFFIC.getCode().longValue());
+        statusList.add(CarWaybillEnum.REVOKED.getCode().longValue());
+        statusList.add(CarWaybillEnum.APPROVAL_NO_PASS.getCode().longValue());
         //趟次
         Map<String, Object> tripMap = waybillOrderDao.selectOrderByOrderId(Long.parseLong(orderId), 1, statusList);
         tripMap.put("waitDistributionAmount",waitDistributionAmount);

+ 5 - 6
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/LogisticsConsignmentService.java

@@ -1170,13 +1170,12 @@ public class LogisticsConsignmentService {
         if (logisticsOrder == null) {
             throw new BusinessException("采购订单-完结订单-物流单据不存在!");
         }
-//        BigDecimal totalLoadAmount = logisticsOrder.getTotalLoadAmount() == null ? new BigDecimal("0.00") : logisticsOrder.getTotalLoadAmount();
-//        if (totalLoadAmount.compareTo(orderFinishDTO.getLoadAmount()) < 0) {
-//            throw new BusinessException("完结订单,实装量不能大于分配量");
-//        }
         BigDecimal amount = logisticsOrder.getAmount() == null ? new BigDecimal("0.00") : logisticsOrder.getAmount();
-        if (amount.compareTo(orderFinishDTO.getLoadAmount()) < 0){
-            throw new BusinessException("完结订单,实装量不能大于分配量");
+        if (amount.compareTo(orderFinishDTO.getLoadAmount()) < 0) {
+            throw new BusinessException("完结订单,装货量不能大于运输总量");
+        }
+        if (orderFinishDTO.getUnloadAmount().compareTo(orderFinishDTO.getLoadAmount()) > 0) {
+            throw new BusinessException("完结订单,填写卸货量不能大于装货量");
         }
         /**订单状态验证*/
         if (!LogisticsOrderEnum.WAIT_DELIVERY.getStatus().equals(String.valueOf(logisticsOrder.getStatus()))

+ 16 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/TransportCommonService.java

@@ -234,6 +234,22 @@ public class TransportCommonService {
                 }
             }
         }
+        if (logisticsOrder.getGoodsPriceUnit() != null) {
+            SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.PRICE_TYPE.getType(), logisticsOrder.getGoodsPriceUnit());
+            orderDetailVO.setDeductLabel(sysDictResDto == null ? null : sysDictResDto.getLabel());
+        }
+        if (logisticsOrder.getLossUnit() != null) {
+            SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.TAX_RATE_TYPE.getType(), logisticsOrder.getLossUnit());
+            orderDetailVO.setLossLabel(sysDictResDto == null ? null : sysDictResDto.getLabel());
+        }
+        if (logisticsOrder.getUnit()!=null){
+            SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.UNIT_TYPE.getType(), logisticsOrder.getUnit());
+            orderDetailVO.setNumberLabel(sysDictResDto == null ? null : sysDictResDto.getLabel());
+        }
+        if (logisticsOrder.getPriceType() != null) {
+            SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.PRICE_TYPE.getType(), String.valueOf(logisticsOrder.getPriceType()));
+            orderDetailVO.setPriceLabel(sysDictResDto == null ? null : sysDictResDto.getLabel());
+        }
         orderDetailVO.setRemark(logisticsOrder.getRemark());
         /**亏吨量/吨->装货量-卸货量
          * 合理损耗值=装货量*合理损耗

+ 0 - 1
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/WaybillManagementService.java

@@ -38,7 +38,6 @@ import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
 import org.springframework.util.ObjectUtils;
 
-import java.math.BigDecimal;
 import java.util.*;
 import java.util.regex.Pattern;
 

+ 1 - 1
sckw-modules/sckw-transport/src/main/resources/mapper/KwtWaybillOrderMapper.xml

@@ -453,7 +453,7 @@
         l_order_id = #{orderId}
         AND type = #{type} and del_flag = 0
         <if test="statusList != null and statusList.size() > 0">
-            and status in
+            and status not in
             <foreach collection="statusList" open="(" close=")" separator="," item="item">
                 #{item}
             </foreach>