Pārlūkot izejas kodu

对账绑定状态dubbo接口-bugfix
承运订单-托运订单-自建订单,新增收货单位-发货单位

lengfaqiang 2 gadi atpakaļ
vecāks
revīzija
a6a7002223

+ 20 - 0
sckw-common/sckw-common-mongo/src/main/java/com/sckw/mongo/model/SckwLogisticsOrder.java

@@ -311,6 +311,26 @@ public class SckwLogisticsOrder {
      */
     private String carrierPhone;
 
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnitEntId;
+
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnit;
+
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnitEntId;
+
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnit;
+
     /**
      * 装货地址类型
      */

+ 10 - 0
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/model/vo/LogisticsOrderVO.java

@@ -188,11 +188,21 @@ public class LogisticsOrderVO implements Serializable {
      */
     private String unloadPhone;
 
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnitId;
+
     /**
      * 发货单位
      */
     private String shipmentsUnit;
 
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnitId;
+
     /**
      * 收货单位
      */

+ 4 - 0
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/KwAcceptCarriageService.java

@@ -322,6 +322,10 @@ public class KwAcceptCarriageService {
                     null : DateUtil.getDateTime(logisticsOrder.getCreateTime()));
             vo.setUpdateTime(logisticsOrder.getUpdateTime() == null ?
                     null : DateUtil.getDateTime(logisticsOrder.getUpdateTime()));
+            vo.setShipmentsUnitEntId(logisticsOrder.getShipmentsUnitEntId());
+            vo.setShipmentsUnit(logisticsOrder.getShipmentsUnit());
+            vo.setReceiveGoodsUnitEntId(logisticsOrder.getReceiveGoodsUnitEntId());
+            vo.setReceiveGoodsUnit(logisticsOrder.getReceiveGoodsUnit());
             returnList.add(vo);
         }
     }

+ 4 - 0
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/KwConsignService.java

@@ -210,6 +210,10 @@ public class KwConsignService {
                     null : DateUtil.getDateTime(logisticsOrder.getCreateTime()));
             vo.setUpdateTime(logisticsOrder.getUpdateTime() == null ?
                     null : DateUtil.getDateTime(logisticsOrder.getUpdateTime()));
+            vo.setShipmentsUnitEntId(logisticsOrder.getShipmentsUnitEntId());
+            vo.setShipmentsUnit(logisticsOrder.getShipmentsUnit());
+            vo.setReceiveGoodsUnitEntId(logisticsOrder.getReceiveGoodsUnitEntId());
+            vo.setReceiveGoodsUnit(logisticsOrder.getReceiveGoodsUnit());
             returnList.add(vo);
         }
     }

+ 21 - 0
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/vo/AcceptCarriageOrderVo.java

@@ -161,4 +161,25 @@ public class AcceptCarriageOrderVo extends PageRequest {
     private String createTime;
     private String updateTime;
 
+
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnitEntId;
+
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnit;
+
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnitEntId;
+
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnit;
+
 }

+ 22 - 0
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/vo/ConsignOrderVo.java

@@ -146,4 +146,26 @@ public class ConsignOrderVo implements Serializable {
     private String wOrderNo;
     private String createTime;
     private String updateTime;
+
+
+
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnitEntId;
+
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnit;
+
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnitEntId;
+
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnit;
 }

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

@@ -19,17 +19,13 @@ import com.sckw.core.utils.StringUtils;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.core.web.response.HttpResult;
-import com.sckw.excel.utils.DateUtil;
 import com.sckw.excel.utils.ValidUtil;
 import com.sckw.fleet.api.RemoteFleetService;
 import com.sckw.fleet.api.model.vo.RTruckVo;
 import com.sckw.mongo.enums.BusinessTypeEnum;
 import com.sckw.mongo.model.SckwLogisticsOrder;
 import com.sckw.order.api.dubbo.TradeOrderInfoService;
-import com.sckw.order.api.model.AddressInfoDetail;
-import com.sckw.order.api.model.CompleteLogisticsOrderParam;
-import com.sckw.order.api.model.CreateOrCancelLogisticsOrderParam;
-import com.sckw.order.api.model.OrderDetailRes;
+import com.sckw.order.api.model.*;
 import com.sckw.product.api.dubbo.GoodsInfoService;
 import com.sckw.product.api.model.KwpGoods;
 import com.sckw.stream.model.SckwBusSum;
@@ -40,9 +36,9 @@ import com.sckw.transport.model.dto.LogisticsOrderDTO;
 import com.sckw.transport.model.dto.OrderCarDTO;
 import com.sckw.transport.model.dto.OrderFinishDTO;
 import com.sckw.transport.model.param.LogisticsConsignmentParam;
+import com.sckw.transport.model.vo.OrderFinishVO;
 import com.sckw.transport.model.vo.PurchaseLogisticOrderExcelVo;
 import com.sckw.transport.model.vo.SellLogisticOrderExcelVo;
-import com.sckw.transport.model.vo.OrderFinishVO;
 import io.seata.core.context.RootContext;
 import jakarta.annotation.Resource;
 import lombok.extern.slf4j.Slf4j;
@@ -263,6 +259,22 @@ public class LogisticsConsignmentService {
         logisticsOrder.setCarrierEntId(Long.parseLong(bo.getConsignCompanyId()));
         logisticsOrder.setCarrierFirmName(bo.getConsignCompany());
         logisticsOrder.setCarrierContacts(bo.getConsignContacts());
+        OrderDetailRes orderDetailRes = tradeOrderInfoService.getOrderDetailById(Long.valueOf(bo.getTOrderId()));
+        // 收货单位+发货单位
+        if (orderDetailRes != null) {
+            List<UnitInfoDetailRes> unitInfo = orderDetailRes.getUnitInfo();
+            if (CollectionUtils.isNotEmpty(unitInfo)) {
+                for (UnitInfoDetailRes unitInfoDetailRes : unitInfo) {
+                    if (String.valueOf(NumberConstant.ONE).equals(unitInfoDetailRes.getUnitType())) {
+                        logisticsOrder.setShipmentsUnitEntId(String.valueOf(unitInfoDetailRes.getEntId()));
+                        logisticsOrder.setShipmentsUnit(unitInfoDetailRes.getFirmName());
+                    } else if (String.valueOf(NumberConstant.TWO).equals(unitInfoDetailRes.getUnitType())) {
+                        logisticsOrder.setReceiveGoodsUnitEntId(String.valueOf(unitInfoDetailRes.getEntId()));
+                        logisticsOrder.setReceiveGoodsUnit(unitInfoDetailRes.getFirmName());
+                    }
+                }
+            }
+        }
         List<AddressInfoDetail> addressInfo = tradeOrder.getAddressInfo();
         for (AddressInfoDetail detail : addressInfo) {
             if (String.valueOf(NumberConstant.ONE).equals(detail.getAddressType())) {
@@ -1658,6 +1670,7 @@ public class LogisticsConsignmentService {
 
     /**
      * 导出销售/采购订单对应的运单列表
+     *
      * @param ids 销售/采购订单IDs
      * @return
      */
@@ -1688,6 +1701,7 @@ public class LogisticsConsignmentService {
 
     /**
      * 导出销售/采购订单对应的运单列表
+     *
      * @param ids 销售/采购订单IDs
      * @return
      */

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

@@ -19,6 +19,8 @@ import com.sckw.mongo.enums.BusinessTypeEnum;
 import com.sckw.mongo.model.SckwLogisticsOrder;
 import com.sckw.order.api.dubbo.TradeOrderInfoService;
 import com.sckw.order.api.model.CreateOrCancelLogisticsOrderParam;
+import com.sckw.order.api.model.OrderDetailRes;
+import com.sckw.order.api.model.UnitInfoDetailRes;
 import com.sckw.stream.model.SckwBusSum;
 import com.sckw.system.api.RemoteSystemService;
 import com.sckw.system.api.model.dto.res.SysDictResDto;
@@ -379,6 +381,23 @@ public class TransportCommonService {
                 logisticsOrderDTO.setLossUnitLabel(taxRateTypeDictData.get(logisticsOrderDTO.getLossUnit()));
                 logisticsOrderDTO.setAmountLabel(unitTypeDictData.get(logisticsOrderDTO.getUnit()));
                 logisticsOrderDTO.setIgnoreAmountLabel(unitTypeDictData.get(logisticsOrderDTO.getUnit()));
+                if (logisticsOrderDTO.getTOrderId() != null) {
+                    OrderDetailRes orderDetailRes = tradeOrderInfoService.getOrderDetailById(Long.valueOf(logisticsOrderDTO.getTOrderId()));
+                    if (orderDetailRes != null) {
+                        List<UnitInfoDetailRes> unitInfo = orderDetailRes.getUnitInfo();
+                        if (CollectionUtils.isNotEmpty(unitInfo)) {
+                            for (UnitInfoDetailRes unitInfoDetailRes : unitInfo) {
+                                if (String.valueOf(NumberConstant.ONE).equals(unitInfoDetailRes.getUnitType())) {
+                                    logisticsOrderDTO.setShipmentsUnitId(String.valueOf(unitInfoDetailRes.getEntId()));
+                                    logisticsOrderDTO.setShipmentsUnit(unitInfoDetailRes.getFirmName());
+                                } else if (String.valueOf(NumberConstant.TWO).equals(unitInfoDetailRes.getUnitType())) {
+                                    logisticsOrderDTO.setReceiveGoodsUnitId(String.valueOf(unitInfoDetailRes.getEntId()));
+                                    logisticsOrderDTO.setReceiveGoodsUnit(unitInfoDetailRes.getFirmName());
+                                }
+                            }
+                        }
+                    }
+                }
 //                logisticsOrderDTO.setCount(waybillOrderMapper.selectCount(new LambdaQueryWrapper<KwtWaybillOrder>().eq(KwtWaybillOrder::getLOrderId, logisticsOrderDTO.getLOrderId())));
             }
         }

+ 3 - 2
sckw-modules/sckw-transport/src/main/resources/mapper/KwtLogisticsOrderMapper.xml

@@ -143,9 +143,10 @@
 <!--        LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id-->
         LEFT JOIN kwt_logistics_order_contract c ON a.id = c.l_order_id
 <!--        LEFT JOIN ( SELECT l_order_id FROM kwt_logistics_order_unit WHERE unit_type = 1 AND ent_id = #{entId} ) g ON a.id = g.l_order_id-->
-        LEFT JOIN ( SELECT ent_id FROM kwt_logistics_order_unit WHERE unit_type = 1 AND ent_id = #{entId} ) g ON a.id = g.l_order_id
+<!--        LEFT JOIN ( SELECT ent_id FROM kwt_logistics_order_unit WHERE unit_type = 1 AND ent_id = #{entId} ) g ON a.id = g.l_order_id-->
+        LEFT JOIN kwt_logistics_order_unit g on a.id =g.l_order_id and g.unit_type=1
         <where>
-            a.del_flag = 0 and a.bind_status = '0' and d.unit_type = 1
+            a.del_flag = 0 and a.bind_status = '0' <!--and d.unit_type = 1-->
             <if test="dictValue != null and dictValue != ''">
                 AND a.payment = #{dictValue}
             </if>