Преглед изворни кода

Merge remote-tracking branch 'origin/dev' into dev

yzc пре 1 година
родитељ
комит
b2c79ba78e

+ 1 - 19
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/dubbo/TransportRemoteService.java

@@ -1,9 +1,8 @@
 package com.sckw.transport.api.dubbo;
 
 import com.sckw.core.web.response.HttpResult;
-import com.sckw.transport.api.model.dto.AccountCheckingBindDTO;
-import com.sckw.transport.api.model.dto.AddressResDTO;
 import com.sckw.transport.api.model.dto.AcceptCarriageLogisticsOrderDto;
+import com.sckw.transport.api.model.dto.AccountCheckingBindDTO;
 import com.sckw.transport.api.model.dto.RWaybillOrderDto;
 import com.sckw.transport.api.model.param.ContractSignLogisticsParam;
 import com.sckw.transport.api.model.param.LogisticsOrderParam;
@@ -45,15 +44,6 @@ public interface TransportRemoteService {
      * @return
      */
     List<Integer> getLogisticsOrderAddressList();
-
-    /**
-     * 根据企业id获取物流订单地址信息
-     *
-     * @param entId 企业id
-     * @return
-     */
-    List<AddressResDTO> getLogisticsOrderAddressListByEntId(Long entId);
-
     /**
      * 贸易订单验证物流订单是否已完成
      *
@@ -70,14 +60,6 @@ public interface TransportRemoteService {
      */
     HttpResult checkLogisticsOrderStatusById(LogisticsOrderParam logisticsOrderParam);
 
-//    /**
-//     * 根据企业id获取物流订单地址信息
-//     *
-//     * @param entIds 企业id
-//     * @return
-//     */
-//    Map<Long, List<AddressResDTO>> getLogisticsOrderAddressListByEntId(List<Long> entIds);
-
     /**
      * 运费对账是否进行对账绑定数据
      *

+ 0 - 13
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/model/dto/AddressResDTO.java

@@ -1,13 +0,0 @@
-package com.sckw.transport.api.model.dto;
-
-import lombok.Data;
-
-/**
- * @author lfdc
- * @description 地址信息
- * @date 2023-08-02 14:08:52
- */
-@Data
-public class AddressResDTO {
-
-}

+ 0 - 6
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/dao/KwtLogisticsOrderMapper.java

@@ -175,12 +175,6 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
      */
     List<Integer> getAddressList(@Param("entId") Long entId);
 
-//    /**
-//     * @param entId
-//     * @return
-//     */
-//    List<AddressResDTO> getAddressDetailListByEntId(@Param("entId") Long entId);
-
     /**
      * @param id
      * @return

+ 0 - 10
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/dubbo/TransportServiceImpl.java

@@ -343,16 +343,6 @@ public class TransportServiceImpl implements TransportRemoteService {
         return logisticsOrderMapper.getAddressList(LoginUserHolder.getEntId());
     }
 
-    /**
-     * 根据企业id 获取物流订单相关地址信息
-     *
-     * @param entId 企业id
-     * @return
-     */
-    @Override
-    public List<AddressResDTO> getLogisticsOrderAddressListByEntId(Long entId) {
-        return null;
-    }
 
     /**
      * 贸易订单验证物流订单是否已完成

+ 22 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/vo/ManagementLogisticsOrderVO.java

@@ -6,6 +6,7 @@ import lombok.Data;
 
 import java.math.BigDecimal;
 import java.time.LocalDate;
+import java.util.List;
 
 /**
  * @author lfdc
@@ -325,4 +326,25 @@ public class ManagementLogisticsOrderVO /*extends PageRequest*/ {
      * 订单来源
      */
     private String orderSourceLabel;
+
+    /**
+     * 多装货地4.2
+     */
+    private List<String> loadNames;
+
+    private List<String> loadAddresses;
+
+    /**
+     * 多卸货地4.2
+     */
+    private List<String> unloadNames;
+
+    private List<String> unloadAddresses;
+
+    /**
+     * 多装货地4.2
+     */
+    private List<LoadAddressVo> loading;
+
+    private List<UnLoadAddressVo> unloading;
 }

+ 24 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/vo/SckwLogisticsOrderVO.java

@@ -7,6 +7,7 @@ import org.springframework.format.annotation.DateTimeFormat;
 import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.util.Date;
+import java.util.List;
 
 /**
  * @author zk
@@ -510,4 +511,27 @@ public class SckwLogisticsOrderVO {
     @DateTimeFormat(pattern = "yyyy-MM-dd")
     @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private LocalDate endTime;
+
+    /**
+     * 多装货地4.2
+     */
+    private List<String> loadNames;
+
+    private List<String> loadAddresses;
+
+
+    /**
+     * 多卸货地4.2
+     */
+    private List<String> unloadNames;
+
+    private List<String> unloadAddresses;
+
+
+    /**
+     * 多装货地4.2
+     */
+    private List<LoadAddressVo> loading;
+
+    private List<UnLoadAddressVo> unloading;
 }

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

@@ -2492,7 +2492,7 @@ public class KwtAcceptCarriageOrderService {
             List<KwtLogisticsOrderAddress> loadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
                     .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.ONE)
                     .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
-                    .eq(KwtLogisticsOrderAddress::getLOrderId, lOrderId)
+                    .eq(KwtLogisticsOrderAddress::getLOrderId, Long.parseLong(lOrderId))
             );
             loadAddress.forEach(address -> {
                 loadName.add(address.getName());
@@ -2504,7 +2504,7 @@ public class KwtAcceptCarriageOrderService {
             List<KwtLogisticsOrderAddress> unloadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
                     .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.TWO)
                     .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
-                    .eq(KwtLogisticsOrderAddress::getLOrderId, lOrderId)
+                    .eq(KwtLogisticsOrderAddress::getLOrderId, Long.parseLong(lOrderId))
             );
             unloadAddress.forEach(address -> {
                 unloadName.add(address.getName());

+ 43 - 3
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtTransportCommonService.java

@@ -5,6 +5,8 @@ import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import com.sckw.contract.api.RemoteContractService;
 import com.sckw.contract.api.model.dto.res.ContractCommonInfoResDto;
 import com.sckw.core.common.enums.enums.DictEnum;
@@ -13,6 +15,7 @@ import com.sckw.core.exception.BusinessException;
 import com.sckw.core.model.constant.Global;
 import com.sckw.core.model.constant.NumberConstant;
 import com.sckw.core.model.enums.LogisticsOrderEnum;
+import com.sckw.core.model.page.PageRes;
 import com.sckw.core.model.page.PageResult;
 import com.sckw.core.utils.*;
 import com.sckw.core.web.constant.HttpStatus;
@@ -891,10 +894,15 @@ public class KwtTransportCommonService {
      * @return 合同信息
      */
     public HttpResult getLogisticsOrderByContractId(ContractParam contractParam) {
+        PageHelper.startPage(contractParam.getPage(), contractParam.getPageSize());
         List<Long> contractIds = StringUtils.splitStrToList(contractParam.getContractIds(), Long.class);
         Map<Long, EntCacheResDto> entMap = remoteSystemService.queryEntTreeByIds(Collections.singletonList(LoginUserHolder.getEntId()));
         List<SckwLogisticsOrderVO> list = logisticsOrderMapper.selectOrderListByContractId(contractParam.getContractType(), entMap.get(LoginUserHolder.getEntId()).getId(), contractIds);
         List<SckwLogisticsOrderVO> returnList = new ArrayList<>();
+        PageInfo<SckwLogisticsOrderVO> pageInfo = new PageInfo<>(list);
+        if (CollectionUtils.isEmpty(list)) {
+            return HttpResult.ok(PageRes.build(pageInfo, list));
+        }
         /**计量单位*/
         Map<String, String> dictResDtoMap = getDictData(DictTypeEnum.UNIT_TYPE.getType());
         /**支付方式*/
@@ -920,11 +928,43 @@ public class KwtTransportCommonService {
                 vo.setSettlementCycleLabel(vo.getSettlementCycle() == null ? null : settlementDictData.get(vo.getSettlementCycle().toString()));
                 UserCacheResDto userCacheResDto = remoteSystemService.queryUserCacheById(vo.getCreateBy());
                 vo.setCreateByName(userCacheResDto == null ? null : userCacheResDto.getName());
+                Long lOrderId = vo.getLOrderId();
+                List<String> loadName = new ArrayList<String>();
+                List<String> loadAddressList = new ArrayList<String>();
+                List<KwtLogisticsOrderAddress> loadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                        .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.ONE)
+                        .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
+                        .eq(KwtLogisticsOrderAddress::getLOrderId, lOrderId)
+                );
+                loadAddress.forEach(address -> {
+                    loadName.add(address.getName());
+                    loadAddressList.add(address.getDetailAddress());
+                });
+
+                List<String> unloadName = new ArrayList<String>();
+                List<String> unloadAddressList = new ArrayList<String>();
+                List<KwtLogisticsOrderAddress> unloadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                        .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.TWO)
+                        .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
+                        .eq(KwtLogisticsOrderAddress::getLOrderId, lOrderId)
+                );
+                unloadAddress.forEach(address -> {
+                    unloadName.add(address.getName());
+                    unloadAddressList.add(address.getDetailAddress());
+                });
+                vo.setLoadNames(loadName);
+                vo.setLoadAddresses(loadAddressList);
+                vo.setUnloadNames(unloadName);
+                vo.setUnloadAddresses(unloadAddressList);
+                List<LoadAddressVo> loadAddressAmount = logisticsOrderAddressMapper.findByAddressAndLoadAmount(lOrderId, NumberConstant.ONE);
+                vo.setLoading(loadAddressAmount);
+                List<UnLoadAddressVo> unloadAddressAmount = logisticsOrderAddressMapper.findByAddressAndUnLoadAmount(lOrderId, NumberConstant.TWO);
+                vo.setUnloading(unloadAddressAmount);
             }
-            returnList = list.stream().skip((contractParam.getPage() - 1) * contractParam.getPageSize()).limit(contractParam.getPageSize()).collect(Collectors.toList());
+//            returnList = list.stream().skip((contractParam.getPage() - 1) * contractParam.getPageSize()).limit(contractParam.getPageSize()).collect(Collectors.toList());
         }
-        PageResult build = PageResult.build(contractParam.getPage(), contractParam.getPageSize(), list.stream().count(), returnList);
-        return HttpResult.ok(build);
+//        PageResult build = PageResult.build(contractParam.getPage(), contractParam.getPageSize(), list.stream().count(), returnList);
+        return HttpResult.ok(PageRes.build(pageInfo, list));
     }
 
     /**

+ 67 - 4
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/operateService/KwtManagementLogisticsOrderService.java

@@ -202,8 +202,41 @@ public class KwtManagementLogisticsOrderService {
             vo.setBillingModeLabel(chargingDictData.get(vo.getBillingMode()));
             vo.setSigningLabel(signingWay.get(vo.getSigning()));
             vo.setStatusLabel(LogisticsOrderEnum.getName(vo.getStatus()));
-            vo.setLoadAddress(vo.getLoadCityName() + vo.getLoadAddress());
-            vo.setUnloadAddress(vo.getUnloadCityName() + vo.getUnloadAddress());
+//            vo.setLoadAddress(vo.getLoadCityName() + vo.getLoadAddress());
+//            vo.setUnloadAddress(vo.getUnloadCityName() + vo.getUnloadAddress());
+
+            String lOrderId = vo.getLOrderId();
+            List<String> loadName = new ArrayList<String>();
+            List<String> loadAddressList = new ArrayList<String>();
+            List<KwtLogisticsOrderAddress> loadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                    .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.ONE)
+                    .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
+                    .eq(KwtLogisticsOrderAddress::getLOrderId, lOrderId)
+            );
+            loadAddress.forEach(address -> {
+                loadName.add(address.getName());
+                loadAddressList.add(address.getDetailAddress());
+            });
+
+            List<String> unloadName = new ArrayList<String>();
+            List<String> unloadAddressList = new ArrayList<String>();
+            List<KwtLogisticsOrderAddress> unloadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                    .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.TWO)
+                    .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
+                    .eq(KwtLogisticsOrderAddress::getLOrderId, lOrderId)
+            );
+            unloadAddress.forEach(address -> {
+                unloadName.add(address.getName());
+                unloadAddressList.add(address.getDetailAddress());
+            });
+            vo.setLoadNames(loadName);
+            vo.setLoadAddresses(loadAddressList);
+            vo.setUnloadNames(unloadName);
+            vo.setUnloadAddresses(unloadAddressList);
+            List<LoadAddressVo> loadAddressAmount = logisticsOrderAddressMapper.findByAddressAndLoadAmount(Long.parseLong(lOrderId), NumberConstant.ONE);
+            vo.setLoading(loadAddressAmount);
+            List<UnLoadAddressVo> unloadAddressAmount = logisticsOrderAddressMapper.findByAddressAndUnLoadAmount(Long.parseLong(lOrderId), NumberConstant.TWO);
+            vo.setUnloading(unloadAddressAmount);
             vo.setWaitDistributionAmount(vo.getCarryingCapacity().subtract(vo.getSubcontractAmount()).subtract(vo.getEntrustAmount()));
             String tOrderId = vo.getTOrderId();
             if (StringUtils.isNotBlank(tOrderId)) {
@@ -385,8 +418,38 @@ public class KwtManagementLogisticsOrderService {
             managementLogisticsOrderExcelVo.setBillingModeLabel(chargingDictData.get(vo.getBillingMode()));
             managementLogisticsOrderExcelVo.setSigningLabel(signingWay.get(vo.getSigning()));
             managementLogisticsOrderExcelVo.setStatusLabel(LogisticsOrderEnum.getName(vo.getStatus()));
-            managementLogisticsOrderExcelVo.setLoadAddress(vo.getLoadCityName() + vo.getLoadAddress());
-            managementLogisticsOrderExcelVo.setUnloadAddress(vo.getUnloadCityName() + vo.getUnloadAddress());
+
+//            managementLogisticsOrderExcelVo.setLoadAddress(vo.getLoadCityName() + vo.getLoadAddress());
+//            managementLogisticsOrderExcelVo.setUnloadAddress(vo.getUnloadCityName() + vo.getUnloadAddress());
+
+            String lOrderId = vo.getLOrderId();
+            List<String> loadName = new ArrayList<String>();
+            List<String> loadAddressList = new ArrayList<String>();
+            List<KwtLogisticsOrderAddress> loadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                    .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.ONE)
+                    .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
+                    .eq(KwtLogisticsOrderAddress::getLOrderId, lOrderId)
+            );
+            loadAddress.forEach(address -> {
+                loadName.add(address.getName());
+                loadAddressList.add(address.getDetailAddress());
+            });
+
+            List<String> unloadName = new ArrayList<String>();
+            List<String> unloadAddressList = new ArrayList<String>();
+            List<KwtLogisticsOrderAddress> unloadAddress = logisticsOrderAddressMapper.selectList(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                    .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.TWO)
+                    .eq(KwtLogisticsOrderAddress::getDelFlag, NumberConstant.ZERO)
+                    .eq(KwtLogisticsOrderAddress::getLOrderId, lOrderId)
+            );
+            unloadAddress.forEach(address -> {
+                unloadName.add(address.getName());
+                unloadAddressList.add(address.getDetailAddress());
+            });
+            managementLogisticsOrderExcelVo.setLoadName(StringUtils.stringListSpliceToString(loadName));
+            managementLogisticsOrderExcelVo.setLoadAddress(StringUtils.stringListSpliceToString(loadAddressList));
+            managementLogisticsOrderExcelVo.setUnloadName(StringUtils.stringListSpliceToString(unloadName));
+            managementLogisticsOrderExcelVo.setUnloadAddress(StringUtils.stringListSpliceToString(unloadAddressList));
             BigDecimal subtract = vo.getCarryingCapacity().subtract(vo.getSubcontractAmount()).subtract(vo.getEntrustAmount());
             DecimalFormat df = new DecimalFormat("0.00");
             managementLogisticsOrderExcelVo.setWaitDistributionAmount(subtract == null ? null : df.format(subtract));

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

@@ -953,8 +953,6 @@
         AND b.ent_id = #{entId}
         GROUP BY a.city_code
     </select>
-    <select id="getAddressDetailListByEntId" resultType="com.sckw.transport.api.model.dto.AddressResDTO">
-    </select>
     <select id="selectMaxLevel" resultType="java.lang.Integer">
         SELECT MAX(LEVEL)
         FROM kwt_logistics_order
@@ -1153,6 +1151,65 @@
         a.del_flag            as delFlag
     </sql>
 
+    <sql id="Query_Column_List_v42">
+        distinct a.id                  AS lOrderId,
+        a.l_order_no          AS lOrderNo,
+        a.t_order_id          AS tOrderId,
+        a.t_order_no          AS tOrderNo,
+        a.loss                AS loss,
+        a.loss_unit           AS lossUnit,
+        a.settlement_cycle    AS accountsCycle,
+        a.billing_mode        AS billingMode,
+        a.amount              AS carryingCapacity,
+        a.goods_price         AS goodsPrice,
+        a.goods_price_unit    AS goodsPriceUnit,
+        a.`status`            AS status,
+        a.settlement_cycle    AS settlementCycle,
+        a.price               AS price,
+        a.price_type          AS priceType,
+        a.type                AS orderSource,
+        a.unit                AS unit,
+        a.subcontract_amount  AS subcontractAmount,
+        a.entrust_amount      AS entrustAmount,
+        a.unload_amount       AS unloadAmount,
+        a.load_amount         AS loadAmount,
+        a.ignore_amount       AS ignoreAmount,
+        a.deficit_amount      AS deficitAmount,
+        a.deficit_price       AS deficitPrice,
+        a.total_load_amount   AS totalLoadAmount,
+        a.total_unload_amount AS totalUnloadAmount,
+        a.payment             AS payment,
+        a.tax_rate            AS taxRate,
+        a.ent_id              AS entId,
+        a.create_by           AS createBy,
+        a.create_time         AS createTime,
+        a.update_by           AS updateBy,
+        a.update_time         AS updateTime,
+        a.start_time          AS shipmentsDateTime,
+        a.end_time            AS receiveGoodsDateTime,
+        a.remark              AS remark,
+        g.goods_id            AS goodsId,
+        g.goods_name          AS goodsName,
+        g.goods_type          AS goodsType,
+        f.contract_id         AS contractId,
+        f.contract_no         AS contractNo,
+        f.signing_way         AS signing,
+        d.ent_id              AS consignCompanyId,
+        d.top_ent_id          AS consignTopEntId,
+        d.firm_name           AS consignCompany,
+        d.contacts            AS consignContacts,
+        d.contacts_id         AS consignContactsId,
+        e.contacts_id         AS carrierContactsId,
+        d.phone               AS consignPhone,
+        e.ent_id              AS carrierCompanyId,
+        e.firm_name           AS carrierCompany,
+        e.top_ent_id          AS carrierTopEntId,
+        e.contacts            AS carrierContacts,
+        e.phone               AS carrierPhone,
+        f.contract_name       as contract,
+        a.del_flag            as delFlag
+    </sql>
+
     <sql id="Query_Column_List_Accept_Carriage">
         DISTINCT a.id                                                AS lOrderId,
         a.l_order_no                                        AS lOrderNo,
@@ -1635,7 +1692,9 @@
 
     <select id="selectManagementLogisticsOrderList" resultType="com.sckw.transport.model.vo.ManagementLogisticsOrderVO">
         SELECT
-        <include refid="Query_Column_List">
+<!--        <include refid="Query_Column_List">-->
+<!--        </include>-->
+        <include refid="Query_Column_List_v42">
         </include>
         FROM kwt_logistics_order a
         LEFT JOIN kwt_logistics_order_address b ON a.id = b.l_order_id

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

@@ -635,7 +635,7 @@
         </if>
     </select>
 
-    <select id="selectWaybillOrderCountByStatus">
+    <select id="selectWaybillOrderCountByStatus" resultType="java.lang.Long">
         SELECT COUNT(id)
         FROM kwt_waybill_order
         WHERE ent_id = #{entId}