فهرست منبع

对账dubbo提供

lengfaqiang 2 سال پیش
والد
کامیت
8688d3b273

+ 1 - 0
sckw-common/sckw-common-core/src/main/java/com/sckw/core/common/enums/enums/DictTypeEnum.java

@@ -40,6 +40,7 @@ public enum DictTypeEnum {
     USE_TYPE("use_type", "使用性质"),
     SIGNING_WAY("signing_way", "签约方式"),
     WEIGHT_CAR("weight_car", "以车的限重"),
+    TAX_RATE_TYPE("tax_rate_type", "合理损耗单位"),
     TRANSPORT_DEMAND_STATUS("transport_demand_status", "运需状态"),
     PREPAID_LIMIT("prepaid_limit", "预付限额"),
     ;

+ 2 - 2
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/dubbo/TransportDubboService.java

@@ -2,9 +2,9 @@ package com.sckw.transport.api.dubbo;
 
 import com.sckw.core.web.response.HttpResult;
 import com.sckw.transport.api.model.dto.AddressResDTO;
+import com.sckw.transport.api.model.dto.LogisticsOrderDTO;
 import com.sckw.transport.api.model.param.LogisticsOrderParam;
 import com.sckw.transport.api.model.vo.KwtLogisticsOrderVO;
-import com.sckw.transport.api.model.vo.LogisticsOrderVO;
 
 import java.util.List;
 import java.util.Map;
@@ -33,7 +33,7 @@ public interface TransportDubboService {
      * @param ids
      * @return
      */
-    List<LogisticsOrderVO> getAcceptCarriageOrderList(List<String> ids);
+    List<LogisticsOrderDTO> getAcceptCarriageOrderList(List<String> ids);
 
     /**
      * 获取物流订单中地址信息

+ 195 - 5
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/model/dto/LogisticsOrderDTO.java

@@ -1,9 +1,12 @@
 package com.sckw.transport.api.model.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.util.Date;
 
 /**
  * @author lfdc
@@ -17,6 +20,7 @@ public class LogisticsOrderDTO implements Serializable {
      * 物流订单id
      */
     private String lOrderId;
+
     /**
      * 物流订单编号
      */
@@ -26,61 +30,247 @@ public class LogisticsOrderDTO implements Serializable {
      * 销售订单id
      */
     private String tOrderId;
+
     /**
      * 销售订单编号
      */
     private String tOrderNO;
+
     /**
      * 付款方式
      */
     private String payment;
+
     /**
      * 运输趟次
      */
     private Long count;
+
     /**
      * 计费方式
      */
     private String billingMode;
+
+    /**
+     * 计费方式label
+     */
+    private String billingModeLabel;
+
     /**
      * 合同
      */
-    private String contract;
+    private String contractId;
+
     /**
      * 合同编号
      */
     private String contractNo;
+
     /**
      * 合同名称
      */
     private String contractName;
+
     /**
      * 承运单位
      */
     private String carrierCompany;
+
+    /**
+     * 承运单位联系电话
+     */
+    private String carrierPhone;
+
+    /**
+     * 承运单位联系人
+     */
+    private String carrierContacts;
+
     /**
      * 托运单位
      */
     private String consignCompany;
+
+    /**
+     * 托运联系人
+     */
+    private String consignContacts;
+
+    /**
+     * 托运联系电话
+     */
+    private String consignPhone;
+
     /**
      * 商品名称
      */
     private String goodsName;
+
     /**
      * 计划量
      */
-    private String amount;
+    private BigDecimal amount;
+
+    /**
+     * 计划量Label
+     */
+    private String amountLabel;
+
+    /**
+     * 待分配量
+     */
+    private BigDecimal ignoreAmount;
+
+    /**
+     * 待分配量Label
+     */
+    private String ignoreAmountLabel;
+
+    /**
+     * 实际卸货量
+     */
+    private BigDecimal unloadAmount;
+
+    /**
+     * 实际装货量
+     */
+    private BigDecimal loadAmount;
+
     /**
      * 运价
      */
     private BigDecimal price;
 
+    /**
+     * 运价方式
+     */
+    private String priceLabel;
+
+    /**
+     * 装货地点名称
+     */
+    private String loadName;
+
+    /**
+     * 装货地址明细
+     */
+    private String loadAddress;
+
+    /**
+     * 装货联系人姓名
+     */
+    private String loadContacts;
+
+    /**
+     * 装货联系电话
+     */
+    private String loadPhone;
+
+    /**
+     * 卸货地点名称
+     */
+    private String unloadName;
+
+    /**
+     * 卸货地址明细
+     */
+    private String unloadAddress;
+
+    /**
+     * 卸货联系人姓名
+     */
+    private String unloadContacts;
+
+    /**
+     * 卸货联系电话
+     */
+    private String unloadPhone;
+
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnit;
+
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnit;
+
+    /**
+     * 合理损耗
+     */
+    private BigDecimal loss;
+
+    /**
+     * 合理损耗单位
+     */
+    private String lossUnit;
+
+    /**
+     * 合理损耗label
+     */
+    private String lossUnitLabel;
+
     /**
      * 扣亏损值
      */
     private BigDecimal goodsPrice;
-    private BigDecimal loss;
-    private BigDecimal unloadAmount;
-    private BigDecimal loadAmount;
 
+    /**
+     * 扣亏值单位
+     */
+    private String goodsPriceUnit;
+
+    /**
+     * 扣亏值单位label
+     */
+    private String goodsPriceLabel;
+
+    /**
+     * 结算周期
+     */
+    private Integer settlementCycle;
+
+    /**
+     * 结算周期
+     */
+    private String settlementCycleLabel;
+
+    /**
+     * 计划发货时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private LocalDate startTime;
+
+    /**
+     * 计划收货时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private LocalDate endTime;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 创建人
+     */
+    private Long createBy;
+
+    /**
+     * 创建人
+     */
+    private String createByName;
+
+    /**
+     * 任务量-分配量计量单位
+     */
+    private String unit;
+
+    /**
+     * 创建时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss",timezone = "GMT+8")
+    private Date createTime;
 }

+ 194 - 5
sckw-modules-api/sckw-transport-api/src/main/java/com/sckw/transport/api/model/vo/LogisticsOrderVO.java

@@ -1,9 +1,12 @@
 package com.sckw.transport.api.model.vo;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.util.Date;
 
 /**
  * @author lfdc
@@ -17,6 +20,7 @@ public class LogisticsOrderVO implements Serializable {
      * 物流订单id
      */
     private String lOrderId;
+
     /**
      * 物流订单编号
      */
@@ -26,62 +30,247 @@ public class LogisticsOrderVO implements Serializable {
      * 销售订单id
      */
     private String tOrderId;
+
     /**
      * 销售订单编号
      */
     private String tOrderNO;
+
     /**
      * 付款方式
      */
     private String payment;
+
     /**
      * 运输趟次
      */
     private Long count;
+
     /**
      * 计费方式
      */
     private String billingMode;
+
+    /**
+     * 计费方式label
+     */
+    private String billingModeLabel;
+
     /**
      * 合同
      */
-    private String contract;
+    private String contractId;
+
     /**
      * 合同编号
      */
     private String contractNo;
+
     /**
      * 合同名称
      */
     private String contractName;
+
     /**
      * 承运单位
      */
     private String carrierCompany;
+
+    /**
+     * 承运单位联系电话
+     */
+    private String carrierPhone;
+
+    /**
+     * 承运单位联系人
+     */
+    private String carrierContacts;
+
     /**
      * 托运单位
      */
     private String consignCompany;
+
+    /**
+     * 托运联系人
+     */
+    private String consignContacts;
+
+    /**
+     * 托运联系电话
+     */
+    private String consignPhone;
+
     /**
      * 商品名称
      */
     private String goodsName;
+
     /**
      * 计划量
      */
-    private String amount;
+    private BigDecimal amount;
+
+    /**
+     * 计划量Label
+     */
+    private String amountLabel;
+
+    /**
+     * 待分配量
+     */
+    private BigDecimal ignoreAmount;
+
+    /**
+     * 待分配量Label
+     */
+    private String ignoreAmountLabel;
+
+    /**
+     * 实际卸货量
+     */
+    private BigDecimal unloadAmount;
+
+    /**
+     * 实际装货量
+     */
+    private BigDecimal loadAmount;
+
     /**
      * 运价
      */
     private BigDecimal price;
 
+    /**
+     * 运价方式
+     */
+    private String priceLabel;
+
+    /**
+     * 装货地点名称
+     */
+    private String loadName;
+
+    /**
+     * 装货地址明细
+     */
+    private String loadAddress;
+
+    /**
+     * 装货联系人姓名
+     */
+    private String loadContacts;
+
+    /**
+     * 装货联系电话
+     */
+    private String loadPhone;
+
+    /**
+     * 卸货地点名称
+     */
+    private String unloadName;
+
+    /**
+     * 卸货地址明细
+     */
+    private String unloadAddress;
+
+    /**
+     * 卸货联系人姓名
+     */
+    private String unloadContacts;
+
+    /**
+     * 卸货联系电话
+     */
+    private String unloadPhone;
+
+    /**
+     * 发货单位
+     */
+    private String shipmentsUnit;
+
+    /**
+     * 收货单位
+     */
+    private String receiveGoodsUnit;
+
+    /**
+     * 合理损耗
+     */
+    private BigDecimal loss;
+
+    /**
+     * 合理损耗单位
+     */
+    private String lossUnit;
+
+    /**
+     * 合理损耗label
+     */
+    private String lossUnitLabel;
+
     /**
      * 扣亏损值
      */
     private BigDecimal goodsPrice;
-    private BigDecimal loss;
-    private BigDecimal unloadAmount;
-    private BigDecimal loadAmount;
 
+    /**
+     * 扣亏值单位
+     */
+    private String goodsPriceUnit;
+
+    /**
+     * 扣亏值单位label
+     */
+    private String goodsPriceLabel;
+
+    /**
+     * 结算周期
+     */
+    private Integer settlementCycle;
+
+    /**
+     * 结算周期
+     */
+    private String settlementCycleLabel;
+
+    /**
+     * 计划发货时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private LocalDate startTime;
+
+    /**
+     * 计划收货时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private LocalDate endTime;
+
+    /**
+     * 备注
+     */
+    private String remark;
 
+    /**
+     * 创建人
+     */
+    private Long createBy;
+
+    /**
+     * 创建人
+     */
+    private String createByName;
+
+    /**
+     * 任务量-分配量计量单位
+     */
+    private String unit;
+
+    /**
+     * 创建时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss",timezone = "GMT+8")
+    private Date createTime;
 }

+ 2 - 2
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/model/vo/res/LedgerLogisticsDetailVo.java

@@ -1,7 +1,7 @@
 package com.sckw.payment.model.vo.res;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
-import com.sckw.transport.api.model.vo.LogisticsOrderVO;
+import com.sckw.transport.api.model.dto.LogisticsOrderDTO;
 import lombok.Getter;
 import lombok.Setter;
 
@@ -38,7 +38,7 @@ public class LedgerLogisticsDetailVo {
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private LocalDateTime endTime;
 
-    private List<LogisticsOrderVO> orderList = new ArrayList<>();
+    private List<LogisticsOrderDTO> orderList = new ArrayList<>();
     private String remark;
 
 

+ 4 - 4
sckw-modules/sckw-payment/src/main/java/com/sckw/payment/service/KwpLedgerLogisticsService.java

@@ -29,8 +29,8 @@ import com.sckw.system.api.RemoteSystemService;
 import com.sckw.system.api.model.dto.res.EntCacheResDto;
 import com.sckw.system.api.model.dto.res.SysDictResDto;
 import com.sckw.transport.api.dubbo.TransportDubboService;
+import com.sckw.transport.api.model.dto.LogisticsOrderDTO;
 import com.sckw.transport.api.model.vo.KwtLogisticsOrderVO;
-import com.sckw.transport.api.model.vo.LogisticsOrderVO;
 import jakarta.annotation.Resource;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -568,7 +568,7 @@ public class KwpLedgerLogisticsService extends AbsLedger {
         ledgerLogisticsDetailVo.setRemark(ledgerLogisticsDto.getRemark());
         /*查询物流订单详情*/
         if (!CollectionUtils.isEmpty(kwpLedgerLogisticsOrders)) {
-            List<LogisticsOrderVO> acceptCarriageOrderList = transportDubboService.getAcceptCarriageOrderList(kwpLedgerLogisticsOrders.stream().map(a -> Long.toString(a.getLOrderId())).collect(Collectors.toList()));
+            List<LogisticsOrderDTO> acceptCarriageOrderList = transportDubboService.getAcceptCarriageOrderList(kwpLedgerLogisticsOrders.stream().map(a -> Long.toString(a.getLOrderId())).collect(Collectors.toList()));
             if (CollectionUtils.isEmpty(acceptCarriageOrderList)) {
                 ledgerLogisticsDetailVo.setOrderList(new ArrayList<>());
             } else {
@@ -578,14 +578,14 @@ public class KwpLedgerLogisticsService extends AbsLedger {
         return ledgerLogisticsDetailVo;
     }
 
-    public PageRes<LogisticsOrderVO> orderList(LedgerListReq ledgerListReq) {
+    public PageRes<LogisticsOrderDTO> orderList(LedgerListReq ledgerListReq) {
         PageHelper.startPage(ledgerListReq.getPage(), ledgerListReq.getPageSize());
         List<KwpLedgerLogisticsOrder> kwpLedgerLogisticsOrders = logisticsOrderService.queryList(ledgerListReq.getIdLong());
         if (CollectionUtils.isEmpty(kwpLedgerLogisticsOrders)) {
             return new PageRes<>();
         }
         PageInfo<KwpLedgerLogisticsOrder> pageInfo = new PageInfo<>(kwpLedgerLogisticsOrders);
-        List<LogisticsOrderVO> acceptCarriageOrderList = transportDubboService.getAcceptCarriageOrderList(kwpLedgerLogisticsOrders.stream().map(a -> String.valueOf(a.getLOrderId())).toList());
+        List<LogisticsOrderDTO> acceptCarriageOrderList = transportDubboService.getAcceptCarriageOrderList(kwpLedgerLogisticsOrders.stream().map(a -> String.valueOf(a.getLOrderId())).toList());
         return PageRes.build(pageInfo, acceptCarriageOrderList);
     }
 

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

@@ -79,6 +79,7 @@ public class AcceptCarriageOrderController {
      */
     @RequestMapping(value = "/getAcceptCarriageOrder", method = RequestMethod.POST)
     public HttpResult getAcceptCarriageOrder(@RequestBody @Validated LogisticsOrderParam logisticsOrderParam) {
+        log.info("对账管理查询物流订单信息:{}",JSONObject.toJSONString(logisticsOrderParam));
         try {
             return transportCommonService.getAcceptCarriageOrder(logisticsOrderParam);
         } catch (Exception e) {

+ 8 - 11
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/dao/KwtLogisticsOrderMapper.java

@@ -27,14 +27,15 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
      * 查询物流订单数据
      *
      * @param logisticsOrderParam 查询参数
-     * @param dictId              字典id
+     * @param dictValue              字典id
      * @return
      */
-    List<LogisticsOrderDTO> selectLogisticOrderData(@Param("logisticsOrderParam") LogisticsOrderParam logisticsOrderParam, @Param("dictId") Long dictId);
+    List<LogisticsOrderVO> selectLogisticOrderData(@Param("logisticsOrderParam") LogisticsOrderParam logisticsOrderParam, @Param("dictValue") String dictValue, @Param("entId") Long entId);
 
 
     /**
      * 销售订单-采购订单-托运详情
+     *
      * @param id
      * @param page
      * @param pageSize
@@ -42,7 +43,7 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
      * @return
      */
     List<com.sckw.transport.model.dto.LogisticsOrderDTO> selectOrderList(@Param("id") String id, @Param("page") int page,
-                                                                         @Param("pageSize") int pageSize,@Param("type") String type);
+                                                                         @Param("pageSize") int pageSize, @Param("type") String type);
 
     /**
      * 销售订单-采购订单-托运详情
@@ -79,10 +80,10 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
 
     /**
      * @param logisticsOrderParam
-     * @param dictId
+     * @param dictValue
      * @return
      */
-    Long selectLogisticOrderCount(@Param("logisticsOrderParam") LogisticsOrderParam logisticsOrderParam, @Param("dictId") Long dictId);
+    Long selectLogisticOrderCount(@Param("logisticsOrderParam") LogisticsOrderParam logisticsOrderParam, @Param("dictValue") String dictValue);
 
     Map<String, String> getRejectReason(@Param("id") String id, @Param("status") String status);
 
@@ -97,14 +98,12 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
     List<SubcontractConsignmentVO> getSubcontractConsignment(@Param("lOrderId") String lOrderId, @Param("page") Integer page, @Param("pageSize") Integer pageSize);
 
     /**
-     *
      * @param lOrderId
      * @return
      */
     List<SubcontractConsignmentVO> getSubcontractConsignmentNotPage(@Param("lOrderId") String lOrderId);
 
     /**
-     *
      * @param lOrderId
      * @return
      */
@@ -122,7 +121,7 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
      * @param ids
      * @return
      */
-    List<LogisticsOrderVO> selectLogisticOrderList(@Param("ids") List<String> ids);
+    List<LogisticsOrderDTO> selectLogisticOrderList(@Param("ids") List<String> ids);
 
     /**
      * 通过物流订单id获取统计数据
@@ -141,21 +140,18 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
     List<KwtLogisticsOrder> findLogisticsOrder(Map params);
 
     /**
-     *
      * @param entId
      * @return
      */
     List<Integer> getAddressList(@Param("entId") Long entId);
 
     /**
-     *
      * @param entId
      * @return
      */
     List<AddressResDTO> getAddressDetailListByEntId(@Param("entId") Long entId);
 
     /**
-     *
      * @param id
      * @return
      */
@@ -163,6 +159,7 @@ public interface KwtLogisticsOrderMapper extends BaseMapper<KwtLogisticsOrder> {
 
     /**
      * 根据贸易订单id统计委派量-实际装货量-实际卸货量
+     *
      * @param tOrderId
      * @return
      */

+ 3 - 3
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/param/LogisticsOrderParam.java

@@ -24,18 +24,18 @@ public class LogisticsOrderParam implements Serializable {
 //    @NotBlank(message = "客户单位名称不能为空")
     private String companyName;
     /**
-     * 开始时间
+     * 计划开始时间
      */
     private String startTime;
     /**
-     * 结束时间
+     * 计划结束时间
      */
     private String endTime;
 
     /**
      * 付款方式(预付款、线下支付、第三方支付)
      */
-    @NotNull(message = "付款方式不能为空")
+    @NotBlank(message = "付款方式不能为空")
     private String payment;
 
     /**

+ 63 - 17
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/TransportCommonService.java

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.sckw.contract.api.RemoteContractService;
 import com.sckw.contract.api.model.dto.res.ContractCommonInfoResDto;
 import com.sckw.core.common.enums.NumberConstant;
+import com.sckw.core.common.enums.enums.DictTypeEnum;
 import com.sckw.core.model.enums.LogisticsOrderEnum;
 import com.sckw.core.model.page.PageResult;
 import com.sckw.core.utils.CollectionUtils;
@@ -21,7 +22,7 @@ import com.sckw.order.api.model.CreateOrCancelLogisticsOrderParam;
 import com.sckw.stream.model.SckwBusSum;
 import com.sckw.system.api.RemoteSystemService;
 import com.sckw.system.api.model.dto.res.SysDictResDto;
-import com.sckw.transport.api.model.dto.LogisticsOrderDTO;
+import com.sckw.transport.api.model.vo.LogisticsOrderVO;
 import com.sckw.transport.dao.*;
 import com.sckw.transport.model.*;
 import com.sckw.transport.model.dto.CancelOrderDTO;
@@ -38,10 +39,8 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.ObjectUtils;
 
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * @author lfdc
@@ -52,7 +51,7 @@ import java.util.Map;
 @Service
 public class TransportCommonService {
 
-    @DubboReference(version = "2.0.0", group = "design", check = false)
+    @DubboReference(version = "2.0.0", group = "design", check = false,timeout = 10000)
     RemoteSystemService remoteSystemService;
 
     @DubboReference(version = "2.0.0", group = "design", check = false)
@@ -232,7 +231,7 @@ public class TransportCommonService {
             param.setTOrderId(tOrderId);
             HttpResult httpResult = tradeOrderInfoService.createOrCancelLogisticsOrder(param);
             if (HttpStatus.SUCCESS_CODE != httpResult.getCode()) {
-                log.info("撤销托运错误:,请求参数:{},响应信息:{}",JSONObject.toJSONString(param),JSONObject.toJSONString(httpResult));
+                log.info("撤销托运错误:,请求参数:{},响应信息:{}", JSONObject.toJSONString(param), JSONObject.toJSONString(httpResult));
             }
             logisticsOrderMapper.update(null, new LambdaUpdateWrapper<KwtLogisticsOrder>()
                     .eq(KwtLogisticsOrder::getId, logisticsOrder.getId())
@@ -320,8 +319,8 @@ public class TransportCommonService {
      * @return
      */
     public HttpResult getAcceptCarriageOrder(LogisticsOrderParam logisticsOrderParam) {
-        SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(logisticsOrderParam.getPaymentType(), logisticsOrderParam.getPayment());
-        Long dictId = sysDictResDto.getId();
+        SysDictResDto sysDictResDto = remoteSystemService.queryDictByTypeAndValue(DictTypeEnum.TRADE_TYPE.getType(), logisticsOrderParam.getPayment());
+        String dictValue = sysDictResDto.getValue();
         if (StringUtils.isNotBlank(logisticsOrderParam.getStartTime())) {
             logisticsOrderParam.setStartTime(logisticsOrderParam.getStartTime() + " 00:00:00");
         }
@@ -330,22 +329,69 @@ public class TransportCommonService {
         }
         Integer page = logisticsOrderParam.getPage();
         logisticsOrderParam.setPage((logisticsOrderParam.getPage() - 1) * logisticsOrderParam.getPageSize());
-        List<LogisticsOrderDTO> list = logisticsOrderMapper.selectLogisticOrderData(logisticsOrderParam, dictId);
-        Long count = logisticsOrderMapper.selectLogisticOrderCount(logisticsOrderParam, dictId);
+        List<LogisticsOrderVO> list = logisticsOrderMapper.selectLogisticOrderData(logisticsOrderParam, dictValue,LoginUserHolder.getEntId());
+        Long count = logisticsOrderMapper.selectLogisticOrderCount(logisticsOrderParam, dictValue);
+        /**计量单位*/
+        Map<String, String> unitTypeDictData = getDictData(DictTypeEnum.UNIT_TYPE.getType());
+        /**运价方式*/
+        Map<String, String> priceDictData = getDictData(DictTypeEnum.PRICE_TYPE.getType());
+//        /**签约方式*/
+//        Map<String, String> singDictData = getDictData(DictTypeEnum.SIGNING_TYPE.getType());
+        /**计费方式*/
+        Map<String, String> chargingDictData = getDictData(DictTypeEnum.CHARGING_TYPE.getType());
+        /**结算周期*/
+        Map<String, String> settlementDictData = getDictData(DictTypeEnum.SETTLEMENT_CYCLE.getType());
+        /**合理损耗*/
+        Map<String, String> taxRateTypeDictData = getDictData(DictTypeEnum.TAX_RATE_TYPE.getType());
         if (CollectionUtils.isNotEmpty(list)) {
-            for (LogisticsOrderDTO logisticsOrderDTO : list) {
-                KwtLogisticsOrderUnit orderUnit = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
+            for (LogisticsOrderVO logisticsOrderDTO : list) {
+                KwtLogisticsOrderUnit consignOrderUnit = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
                         .eq(KwtLogisticsOrderUnit::getLOrderId, logisticsOrderDTO.getLOrderId())
                         .eq(KwtLogisticsOrderUnit::getUnitType, NumberConstant.ONE));
-                KwtLogisticsOrderUnit orderUnit1 = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
+                KwtLogisticsOrderUnit carrierOrderUnit = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
                         .eq(KwtLogisticsOrderUnit::getLOrderId, logisticsOrderDTO.getLOrderId())
                         .eq(KwtLogisticsOrderUnit::getUnitType, NumberConstant.TWO));
-                logisticsOrderDTO.setCarrierCompany(orderUnit1 == null ? null : orderUnit1.getFirmName());
-                logisticsOrderDTO.setConsignCompany(orderUnit == null ? null : orderUnit.getFirmName());
-                logisticsOrderDTO.setCount(waybillOrderMapper.selectCount(new LambdaQueryWrapper<KwtWaybillOrder>().eq(KwtWaybillOrder::getLOrderId, logisticsOrderDTO.getLOrderId())));
+                KwtLogisticsOrderAddress loadOrderAddress = logisticsOrderAddressMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                        .eq(KwtLogisticsOrderAddress::getLOrderId, logisticsOrderDTO.getLOrderId())
+                        .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.ONE)
+                );
+                KwtLogisticsOrderAddress unloadOrderAddress = logisticsOrderAddressMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                        .eq(KwtLogisticsOrderAddress::getLOrderId, logisticsOrderDTO.getLOrderId())
+                        .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.TWO)
+                );
+                logisticsOrderDTO.setLoadAddress(loadOrderAddress.getDetailAddress());
+                logisticsOrderDTO.setLoadName(loadOrderAddress.getName());
+                logisticsOrderDTO.setLoadContacts(loadOrderAddress.getContacts());
+                logisticsOrderDTO.setLoadPhone(loadOrderAddress.getPhone());
+                logisticsOrderDTO.setUnloadAddress(unloadOrderAddress.getDetailAddress());
+                logisticsOrderDTO.setUnloadName(unloadOrderAddress.getName());
+                logisticsOrderDTO.setUnloadContacts(unloadOrderAddress.getContacts());
+                logisticsOrderDTO.setUnloadPhone(unloadOrderAddress.getPhone());
+                logisticsOrderDTO.setCarrierCompany(carrierOrderUnit == null ? null : carrierOrderUnit.getFirmName());
+                logisticsOrderDTO.setCarrierPhone(carrierOrderUnit == null ? null : carrierOrderUnit.getPhone());
+                logisticsOrderDTO.setCarrierContacts(carrierOrderUnit == null ? null : carrierOrderUnit.getContacts());
+                logisticsOrderDTO.setConsignCompany(consignOrderUnit == null ? null : consignOrderUnit.getFirmName());
+                logisticsOrderDTO.setConsignPhone(consignOrderUnit == null ? null : consignOrderUnit.getPhone());
+                logisticsOrderDTO.setConsignContacts(consignOrderUnit == null ? null : consignOrderUnit.getContacts());
+                logisticsOrderDTO.setSettlementCycleLabel(settlementDictData.get(logisticsOrderDTO.getSettlementCycle().toString()));
+                logisticsOrderDTO.setBillingModeLabel(chargingDictData.get(logisticsOrderDTO.getBillingMode()));
+                logisticsOrderDTO.setPriceLabel(priceDictData.get(logisticsOrderDTO.getPayment()));
+                logisticsOrderDTO.setLossUnitLabel(taxRateTypeDictData.get(logisticsOrderDTO.getLossUnit()));
+                logisticsOrderDTO.setAmountLabel(unitTypeDictData.get(logisticsOrderDTO.getUnit()));
+                logisticsOrderDTO.setIgnoreAmountLabel(unitTypeDictData.get(logisticsOrderDTO.getUnit()));
+//                logisticsOrderDTO.setCount(waybillOrderMapper.selectCount(new LambdaQueryWrapper<KwtWaybillOrder>().eq(KwtWaybillOrder::getLOrderId, logisticsOrderDTO.getLOrderId())));
             }
         }
         PageResult build = PageResult.build(page, logisticsOrderParam.getPageSize(), count, list);
         return HttpResult.ok(build);
     }
+
+    public Map<String, String> getDictData (String type) {
+        Map<String, String> maps = new HashMap<>(NumberConstant.SIXTEEN);
+        List<SysDictResDto> list = remoteSystemService.queryDictByType(type);
+        if (CollectionUtils.isNotEmpty(list)) {
+            maps = list.stream().collect(Collectors.toMap(SysDictResDto::getValue, SysDictResDto::getLabel, (key1, key2) -> key2));
+        }
+        return maps;
+    }
 }

+ 64 - 18
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/dubbo/TransportDubboServiceImpl.java

@@ -3,8 +3,11 @@ package com.sckw.transport.service.dubbo;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.sckw.core.common.enums.NumberConstant;
+import com.sckw.core.common.enums.enums.DictTypeEnum;
 import com.sckw.core.model.enums.LogisticsOrderEnum;
+import com.sckw.core.model.page.PageResult;
 import com.sckw.core.utils.CollectionUtils;
+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;
@@ -12,16 +15,16 @@ import com.sckw.mongo.enums.BusinessTypeEnum;
 import com.sckw.mongo.model.SckwLogisticsOrder;
 import com.sckw.stream.model.SckwBusSum;
 import com.sckw.system.api.RemoteSystemService;
+import com.sckw.system.api.model.dto.res.SysDictResDto;
 import com.sckw.transport.api.dubbo.TransportDubboService;
 import com.sckw.transport.api.model.dto.AddressResDTO;
+import com.sckw.transport.api.model.dto.LogisticsOrderDTO;
 import com.sckw.transport.api.model.param.LogisticsOrderParam;
 import com.sckw.transport.api.model.vo.KwtLogisticsOrderVO;
 import com.sckw.transport.api.model.vo.LogisticsOrderVO;
-import com.sckw.transport.dao.KwtLogisticsOrderGoodsMapper;
-import com.sckw.transport.dao.KwtLogisticsOrderMapper;
-import com.sckw.transport.dao.KwtLogisticsOrderUnitMapper;
-import com.sckw.transport.dao.KwtWaybillOrderMapper;
+import com.sckw.transport.dao.*;
 import com.sckw.transport.model.KwtLogisticsOrder;
+import com.sckw.transport.model.KwtLogisticsOrderAddress;
 import com.sckw.transport.model.KwtLogisticsOrderUnit;
 import com.sckw.transport.model.KwtWaybillOrder;
 import jakarta.annotation.Resource;
@@ -34,6 +37,7 @@ import org.springframework.cloud.stream.function.StreamBridge;
 import org.springframework.stereotype.Service;
 
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * @author lfdc
@@ -58,10 +62,7 @@ public class TransportDubboServiceImpl implements TransportDubboService {
     private KwtLogisticsOrderUnitMapper logisticsOrderUnitMapper;
 
     @Autowired
-    private KwtLogisticsOrderGoodsMapper logisticsOrderGoodsMapper;
-
-    @Autowired
-    private KwtWaybillOrderMapper waybillOrderMapper;
+    private KwtLogisticsOrderAddressMapper logisticsOrderAddressMapper;
 
     /**
      * 对账管理-ids查询
@@ -89,24 +90,69 @@ public class TransportDubboServiceImpl implements TransportDubboService {
      * @return
      */
     @Override
-    public List<LogisticsOrderVO> getAcceptCarriageOrderList(List<String> ids) {
-        List<LogisticsOrderVO> list = logisticsOrderMapper.selectLogisticOrderList(ids);
+    public List<LogisticsOrderDTO> getAcceptCarriageOrderList(List<String> ids) {
+        List<LogisticsOrderDTO> list = logisticsOrderMapper.selectLogisticOrderList(ids);
+        /**计量单位*/
+        Map<String, String> unitTypeDictData = getDictData(DictTypeEnum.UNIT_TYPE.getType());
+        /**运价方式*/
+        Map<String, String> priceDictData = getDictData(DictTypeEnum.PRICE_TYPE.getType());
+        /**计费方式*/
+        Map<String, String> chargingDictData = getDictData(DictTypeEnum.CHARGING_TYPE.getType());
+        /**结算周期*/
+        Map<String, String> settlementDictData = getDictData(DictTypeEnum.SETTLEMENT_CYCLE.getType());
+        /**合理损耗*/
+        Map<String, String> taxRateTypeDictData = getDictData(DictTypeEnum.TAX_RATE_TYPE.getType());
         if (CollectionUtils.isNotEmpty(list)) {
-            for (LogisticsOrderVO logisticsOrderVO : list) {
-                KwtLogisticsOrderUnit orderUnit = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
-                        .eq(KwtLogisticsOrderUnit::getLOrderId, logisticsOrderVO.getLOrderId())
+            for (LogisticsOrderDTO logisticsOrderDTO : list) {
+                KwtLogisticsOrderUnit consignOrderUnit = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
+                        .eq(KwtLogisticsOrderUnit::getLOrderId, logisticsOrderDTO.getLOrderId())
                         .eq(KwtLogisticsOrderUnit::getUnitType, NumberConstant.ONE));
-                KwtLogisticsOrderUnit orderUnit1 = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
-                        .eq(KwtLogisticsOrderUnit::getLOrderId, logisticsOrderVO.getLOrderId())
+                KwtLogisticsOrderUnit carrierOrderUnit = logisticsOrderUnitMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderUnit>()
+                        .eq(KwtLogisticsOrderUnit::getLOrderId, logisticsOrderDTO.getLOrderId())
                         .eq(KwtLogisticsOrderUnit::getUnitType, NumberConstant.TWO));
-                logisticsOrderVO.setCarrierCompany(orderUnit1 == null ? null : orderUnit1.getFirmName());
-                logisticsOrderVO.setConsignCompany(orderUnit == null ? null : orderUnit.getFirmName());
-                logisticsOrderVO.setCount(waybillOrderMapper.selectCount(new LambdaQueryWrapper<KwtWaybillOrder>().eq(KwtWaybillOrder::getLOrderId, logisticsOrderVO.getLOrderId())));
+                KwtLogisticsOrderAddress loadOrderAddress = logisticsOrderAddressMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                        .eq(KwtLogisticsOrderAddress::getLOrderId, logisticsOrderDTO.getLOrderId())
+                        .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.ONE)
+                );
+                KwtLogisticsOrderAddress unloadOrderAddress = logisticsOrderAddressMapper.selectOne(new LambdaQueryWrapper<KwtLogisticsOrderAddress>()
+                        .eq(KwtLogisticsOrderAddress::getLOrderId, logisticsOrderDTO.getLOrderId())
+                        .eq(KwtLogisticsOrderAddress::getAddressType, NumberConstant.TWO)
+                );
+                logisticsOrderDTO.setLoadAddress(loadOrderAddress.getDetailAddress());
+                logisticsOrderDTO.setLoadName(loadOrderAddress.getName());
+                logisticsOrderDTO.setLoadContacts(loadOrderAddress.getContacts());
+                logisticsOrderDTO.setLoadPhone(loadOrderAddress.getPhone());
+                logisticsOrderDTO.setUnloadAddress(unloadOrderAddress.getDetailAddress());
+                logisticsOrderDTO.setUnloadName(unloadOrderAddress.getName());
+                logisticsOrderDTO.setUnloadContacts(unloadOrderAddress.getContacts());
+                logisticsOrderDTO.setUnloadPhone(unloadOrderAddress.getPhone());
+                logisticsOrderDTO.setCarrierCompany(carrierOrderUnit == null ? null : carrierOrderUnit.getFirmName());
+                logisticsOrderDTO.setCarrierPhone(carrierOrderUnit == null ? null : carrierOrderUnit.getPhone());
+                logisticsOrderDTO.setCarrierContacts(carrierOrderUnit == null ? null : carrierOrderUnit.getContacts());
+                logisticsOrderDTO.setConsignCompany(consignOrderUnit == null ? null : consignOrderUnit.getFirmName());
+                logisticsOrderDTO.setConsignPhone(consignOrderUnit == null ? null : consignOrderUnit.getPhone());
+                logisticsOrderDTO.setConsignContacts(consignOrderUnit == null ? null : consignOrderUnit.getContacts());
+                logisticsOrderDTO.setSettlementCycleLabel(settlementDictData.get(logisticsOrderDTO.getSettlementCycle().toString()));
+                logisticsOrderDTO.setBillingModeLabel(chargingDictData.get(logisticsOrderDTO.getBillingMode()));
+                logisticsOrderDTO.setPriceLabel(priceDictData.get(logisticsOrderDTO.getPayment()));
+                logisticsOrderDTO.setLossUnitLabel(taxRateTypeDictData.get(logisticsOrderDTO.getLossUnit()));
+                logisticsOrderDTO.setAmountLabel(unitTypeDictData.get(logisticsOrderDTO.getUnit()));
+                logisticsOrderDTO.setIgnoreAmountLabel(unitTypeDictData.get(logisticsOrderDTO.getUnit()));
+//                logisticsOrderDTO.setCount(waybillOrderMapper.selectCount(new LambdaQueryWrapper<KwtWaybillOrder>().eq(KwtWaybillOrder::getLOrderId, logisticsOrderDTO.getLOrderId())));
             }
         }
         return list;
     }
 
+    public Map<String, String> getDictData (String type) {
+        Map<String, String> maps = new HashMap<>(NumberConstant.SIXTEEN);
+        List<SysDictResDto> list = remoteSystemService.queryDictByType(type);
+        if (CollectionUtils.isNotEmpty(list)) {
+            maps = list.stream().collect(Collectors.toMap(SysDictResDto::getValue, SysDictResDto::getLabel, (key1, key2) -> key2));
+        }
+        return maps;
+    }
+
     /**
      * 获取当前企业下物流订单地址信息
      *

+ 52 - 40
sckw-modules/sckw-transport/src/main/resources/mapper/KwtLogisticsOrderMapper.xml

@@ -108,23 +108,29 @@
           AND b.del_flag = '0'
           AND a.t_order_id = #{id,jdbcType=VARCHAR}
     </select>
-    <select id="selectLogisticOrderData" resultType="com.sckw.transport.api.model.dto.LogisticsOrderDTO">
+    <select id="selectLogisticOrderData" resultType="com.sckw.transport.api.model.vo.LogisticsOrderVO">
         SELECT
-        a.id as lOrderId,
-        a.l_order_no as lOrderNO,
-        a.t_order_id as tOrderId,
-        a.t_order_no as tOrderNO,
-        a.payment as payment,
-        a.billing_mode as billingMode,
-        c.contract_id as contractId,
-        b.goods_name as goodsName,
-        a.amount ,
+        a.id AS lOrderId,
+        a.l_order_no AS lOrderNO,
+        a.t_order_id AS tOrderId,
+        a.t_order_no AS tOrderNO,
+        a.payment AS payment,
+        a.billing_mode AS billingMode,
+        c.contract_id AS contractId,
+        b.goods_name AS goodsName,
+        a.amount,
+        a.unit ,
+        a.ignore_amount AS ignoreAmount,
         a.price,
-        a.goods_price as goodsPrice,
-        a.loss ,
-        a.load_amount as loadAmount,
-        a.unload_amount as unloadAmount,
-        a.start_time as startTime,
+        a.price_type,
+        a.goods_price AS goodsPrice,
+        a.loss,
+        a.loss_unit AS lossUnit,
+        a.tax_rate as taxRate,
+        a.load_amount AS loadAmount,
+        a.unload_amount AS unloadAmount,
+        a.settlement_cycle as settlementCycle,
+        a.start_time AS startTime,
         a.end_time AS endTime,
         a.create_time AS createTime,
         a.create_by AS createBy,
@@ -134,11 +140,12 @@
         kwt_logistics_order a
         LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id
         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 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 = 2 AND ent_id = #{entId} ) g ON a.id = g.l_order_id
         <where>
             a.del_flag = 0 and d.unit_type = 1
-            <if test="dictId != null and dictId != ''">
-                AND a.payment = #{dictId}
+            <if test="dictValue != null and dictValue != ''">
+                AND a.payment = #{dictValue}
             </if>
             <if test="logisticsOrderParam.companyId !=null and logisticsOrderParam.companyId != ''">
                 AND d.ent_id = #{logisticsOrderParam.companyId}
@@ -153,7 +160,7 @@
                 AND a.start_time &gt;= #{logisticsOrderParam.startTime}
             </if>
             <if test="logisticsOrderParam.endTime != null and logisticsOrderParam.endTime !=''">
-                AND a.ent_time &lt;= #{logisticsOrderParam.endTime}
+                AND a.end_time &lt;= #{logisticsOrderParam.endTime}
             </if>
         </where>
         ORDER BY a.create_time DESC
@@ -171,8 +178,8 @@
         LEFT JOIN kwt_logistics_order_contract c ON a.id=c.l_order_id
         <where>
             a.del_flag = 0 and d.unit_type = 1
-            <if test="dictId != null and dictId != ''">
-                AND a.payment = #{dictId}
+            <if test="dictValue != null and dictValue != ''">
+                AND a.payment = #{dictValue}
             </if>
             <if test="logisticsOrderParam.companyId !=null and logisticsOrderParam.companyId != ''">
                 AND d.ent_id = #{logisticsOrderParam.companyId}
@@ -187,7 +194,7 @@
                 AND a.start_time &gt;= #{logisticsOrderParam.startTime}
             </if>
             <if test="logisticsOrderParam.endTime != null and logisticsOrderParam.endTime !=''">
-                AND a.ent_time &lt;= #{logisticsOrderParam.endTime}
+                AND a.end_time &lt;= #{logisticsOrderParam.endTime}
             </if>
         </where>
         ORDER BY a.create_time DESC
@@ -404,23 +411,29 @@
         GROUP BY b.truck_no
     </select>
 
-    <select id="selectLogisticOrderList" resultType="com.sckw.transport.api.model.vo.LogisticsOrderVO">
+    <select id="selectLogisticOrderList" resultType="com.sckw.transport.api.model.dto.LogisticsOrderDTO">
         SELECT
-        a.id as lOrderId,
-        a.l_order_no as lOrderNO,
-        a.t_order_id as tOrderId,
-        a.t_order_no as tOrderNO,
-        a.payment as payment,
-        a.billing_mode as billingMode,
-        c.contract_id as contractId,
-        b.goods_name as goodsName,
-        a.amount ,
+        a.id AS lOrderId,
+        a.l_order_no AS lOrderNO,
+        a.t_order_id AS tOrderId,
+        a.t_order_no AS tOrderNO,
+        a.payment AS payment,
+        a.billing_mode AS billingMode,
+        c.contract_id AS contractId,
+        b.goods_name AS goodsName,
+        a.amount,
+        a.unit ,
+        a.ignore_amount AS ignoreAmount,
         a.price,
-        a.goods_price as goodsPrice,
-        a.loss ,
-        a.load_amount as loadAmount,
-        a.unload_amount as unloadAmount,
-        a.start_time as startTime,
+        a.price_type,
+        a.goods_price AS goodsPrice,
+        a.loss,
+        a.loss_unit AS lossUnit,
+        a.tax_rate as taxRate,
+        a.load_amount AS loadAmount,
+        a.unload_amount AS unloadAmount,
+        a.settlement_cycle as settlementCycle,
+        a.start_time AS startTime,
         a.end_time AS endTime,
         a.create_time AS createTime,
         a.create_by AS createBy,
@@ -429,9 +442,8 @@
         FROM
         kwt_logistics_order a
         LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id
-        LEFT JOIN kwt_logistics_order_contract c ON a.id=c.l_order_id
-        and
-        a.del_flag = 0
+        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
         <where>
             <if test="ids != null and ids.size() > 0">
                 and a.id in