Просмотр исходного кода

update 增减运单看板列表接口

chenlin 2 лет назад
Родитель
Сommit
6701145364

+ 40 - 18
sckw-modules/sckw-report/src/main/java/com/sckw/report/service/KwTransportService.java

@@ -175,7 +175,16 @@ public class KwTransportService {
         criteria.and("delFlag").is(NumberConstant.ZERO);
 
         if (StringUtils.isNotBlank(query.getStatus())) {
-            criteria.and("status").is(query.getStatus());
+            // TODO 此处需要修改
+            if(query.getStatus().equals(String.valueOf(NumberConstant.ONE_ZERO_ZERO))) {
+                List<Long> statuses = new ArrayList<>();
+                statuses.add(CarWaybillEnum.REJECT_ORDER.getCode().longValue());
+                statuses.add(CarWaybillEnum.REFUSE_TRAFFIC.getCode().longValue());
+                statuses.add(CarWaybillEnum.REVOKED.getCode().longValue());
+                criteria.and("status").in(statuses);
+            } else {
+                criteria.and("status").is(query.getStatus());
+            }
         }
         // 装载时间
         if (StringUtils.isNotBlank(query.getStartLoadTime()) && StringUtils.isNotEmpty(query.getEndLoadTime())) {
@@ -193,21 +202,16 @@ public class KwTransportService {
                     .lte(query.getEndUnloadTime()));
         }
         // 多条件模糊查询
-        Criteria c1 = new Criteria();
-        Criteria c2 = new Criteria();
-        Criteria c3 = new Criteria();
-        Criteria c4 = new Criteria();
-        Criteria c5 = new Criteria();
-        Criteria c6 = new Criteria();
+        List<Criteria> orCriteria = new ArrayList<>();
         if (StringUtils.isNotBlank(query.getKeywords())) {
             Pattern pattern = Pattern.compile("^.*" + query.getKeywords() + ".*$", Pattern.CASE_INSENSITIVE);
-            c1 = Criteria.where("wOrderNo").regex(pattern);
-            c2 = Criteria.where("truckNo").regex(pattern);
-            c3 = Criteria.where("driverName").regex(pattern);
-            c4 = Criteria.where("firmName").regex(pattern);
-            c5 = Criteria.where("loadAddress").regex(pattern);
-            c6 = Criteria.where("unloadAddress").regex(pattern);
-            criteria.orOperator(c1, c2, c3, c4, c5, c6);
+            orCriteria.add(Criteria.where("wOrderNo").regex(pattern));
+            orCriteria.add(Criteria.where("truckNo").regex(pattern));
+            orCriteria.add(Criteria.where("driverName").regex(pattern));
+            orCriteria.add(Criteria.where("firmName").regex(pattern));
+            orCriteria.add(Criteria.where("loadAddress").regex(pattern));
+            orCriteria.add(Criteria.where("unloadAddress").regex(pattern));
+            criteria.orOperator(orCriteria);
         }
         return criteria;
     }
@@ -231,21 +235,39 @@ public class KwTransportService {
         List<TableTops> results = outputTypeCount.getMappedResults();
         // 填充默认值
         List<TableTops> list = new ArrayList<>();
+        TableTops topExpired = new TableTops();
+        topExpired.setName("已作废");
+        topExpired.setValue(String.valueOf(NumberConstant.ONE_ZERO_ZERO));
+        topExpired.setTotal(0);
+        ArrayList<Long> expiredStatuses = new ArrayList<>();
+        expiredStatuses.add(CarWaybillEnum.REJECT_ORDER.getCode().longValue());
+        expiredStatuses.add(CarWaybillEnum.REFUSE_TRAFFIC.getCode().longValue());
+        expiredStatuses.add(CarWaybillEnum.REVOKED.getCode().longValue());
+
         for (CarWaybillEnum status : CarWaybillEnum.values()) {
+            boolean expiredFlag = expiredStatuses.contains(status.getCode().longValue());
             TableTops top = new TableTops();
             top.setName(status.getDestination());
             top.setValue(String.valueOf(status.getCode()));
             top.setTotal(0);
             if (CollectionUtils.isNotEmpty(results)) {
                 for (TableTops result : results) {
-                    if (StringUtils.isNotEmpty(result.getValue()) && String.valueOf(result.getValue()).equals(String.valueOf(status.getCode()))) {
-                        top.setTotal(result.getTotal());
-                        continue;
+                    if (StringUtils.isNotEmpty(result.getValue())
+                            && String.valueOf(result.getValue()).equals(String.valueOf(status.getCode()))) {
+                        if(expiredFlag) {
+                            topExpired.setTotal(topExpired.getTotal() + result.getTotal());
+                        } else {
+                            top.setTotal(result.getTotal());
+                        }
+                        break;
                     }
                 }
             }
-            list.add(top);
+            if(!expiredFlag) {
+                list.add(top);
+            }
         }
+        list.add(topExpired);
         // 查询结果
         return HttpResult.ok(list);
     }

+ 2 - 4
sckw-modules/sckw-report/src/main/resources/bootstrap-dev.yml

@@ -5,8 +5,7 @@ spring:
         # 服务注册地址
         server-addr: 10.10.10.230:8848
         # 命名空间
-#        namespace: sckw_jc
-        namespace:  sckw-service-platform-dev
+        namespace: sckw-service-platform-dev
         # 共享配置
         group: sckw-service-platform
       config:
@@ -15,8 +14,7 @@ spring:
         # 配置文件格式
         file-extension: yaml
         # 命名空间
-#        namespace: sckw_jc
-        namespace:  sckw-service-platform-dev
+        namespace: sckw-service-platform-dev
         # 共享配置
         group: sckw-service-platform
         #可以读多个配置文件  需要在同一个命名空间下面可以是不同的组

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

@@ -4,8 +4,7 @@ import com.sckw.core.utils.CollectionUtils;
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.model.ValiList;
 import com.sckw.core.web.response.HttpResult;
-import com.sckw.transport.model.dto.OperateWaybillDto;
-import com.sckw.transport.model.dto.OperateSendCarDto;
+import com.sckw.transport.model.dto.ConfirmRefuseSendCarDto;
 import com.sckw.transport.model.dto.SendCarDto1;
 import com.sckw.transport.model.dto.UpdateDriverCarDTO;
 import com.sckw.transport.service.DriverService;
@@ -125,7 +124,7 @@ public class KwtWaybillOrderController {
      * @date 2023/7/24
      **/
     @PostMapping("/confirmSendCar")
-    public HttpResult confirmSendCar(@RequestBody @Valid OperateSendCarDto params){
+    public HttpResult confirmSendCar(@RequestBody @Valid ConfirmRefuseSendCarDto params){
         return waybillOrderService.confirmSendCar(params);
     }
 
@@ -136,30 +135,30 @@ public class KwtWaybillOrderController {
      * @date 2023/7/24
      **/
     @PostMapping("/refuseSendCar")
-    public HttpResult refuseSendCar(@RequestBody @Valid OperateSendCarDto params){
+    public HttpResult refuseSendCar(@RequestBody @Valid ConfirmRefuseSendCarDto params){
         return waybillOrderService.refuseSendCar(params);
     }
 
     /**
-     * @param params 确认/拒绝出车参数
+     * @param params {}
      * @description 确认出车
      * @author zk
      * @date 2023/7/26
      **/
     @PostMapping("/confirmDeparture")
-    public HttpResult confirmDeparture(@RequestBody @Valid OperateWaybillDto params){
-        return waybillOrderService.confirmDeparture(params);
+    public HttpResult confirmDeparture(@RequestBody @Valid ConfirmRefuseSendCarDto params){
+        return waybillOrderService.confirmSendCar(params);
     }
 
     /**
-     * @param params 确认/拒绝出车参数
+     * @param params {}
      * @description 拒绝出车
      * @author zk
      * @date 2023/7/26
      **/
     @PostMapping("/refuseDeparture")
-    public HttpResult refuseDeparture(@RequestBody @Valid OperateWaybillDto params){
-        return waybillOrderService.refuseDeparture(params);
+    public HttpResult refuseDeparture(@RequestBody @Valid ConfirmRefuseSendCarDto params){
+        return waybillOrderService.refuseSendCar(params);
     }
 
 

+ 13 - 4
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/controller/WaybillManagementController.java

@@ -2,14 +2,14 @@ package com.sckw.transport.controller;
 
 import com.sckw.core.web.constant.HttpStatus;
 import com.sckw.core.web.response.HttpResult;
+import com.sckw.transport.model.dto.WaybillOrderDTO;
 import com.sckw.transport.service.WaybillManagementService;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
+
 
 /**
  * @author lfdc
@@ -25,7 +25,7 @@ public class WaybillManagementController {
     @Autowired
     WaybillManagementService waybillManagementService;
 
-    @RequestMapping(value = "/waybillData", method = RequestMethod.GET)
+    @RequestMapping(name = "运单详情", value = "/waybillData", method = RequestMethod.GET)
     public HttpResult waybillData(@Param("id") Long id) {
         try {
             return waybillManagementService.waybillData(id);
@@ -34,4 +34,13 @@ public class WaybillManagementController {
             return HttpResult.error(HttpStatus.GLOBAL_EXCEPTION_CODE, e.getMessage());
         }
     }
+    @RequestMapping(name = "运单看板", value = "/waybillIndex", method = RequestMethod.GET)
+    public HttpResult waybillIndex(WaybillOrderDTO waybillOrderDTO) {
+        try {
+            return waybillManagementService.waybillIndex(waybillOrderDTO);
+        } catch (Exception e) {
+            log.error("运单看板:订单id {},error {} ", e.getMessage(), e);
+            return HttpResult.error(HttpStatus.GLOBAL_EXCEPTION_CODE, e.getMessage());
+        }
+    }
 }

+ 68 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/dto/WaybillOrderDTO.java

@@ -0,0 +1,68 @@
+package com.sckw.transport.model.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.sckw.core.model.page.PageRequest;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author JC
+ * @version 1.0
+ * @desc TODO
+ * @date 2023/{07}/19 10:20:44
+ **/
+@Data
+@Accessors(chain = true)
+public class WaybillOrderDTO extends PageRequest implements Serializable {
+    private List<Long> ids;
+    /**
+     * 派车开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private String startSendCarTime;
+
+    /**
+     * 派车结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private String endSendCarTime;
+
+    /**
+     * 装载开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private String startLoadTime;
+
+    /**
+     * 装载结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private String endLoadTime;
+
+    /**
+     * 卸载开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private String startUnloadTime;
+
+    /**
+     * 卸载结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private String endUnloadTime;
+
+    /**
+     * 关键字搜索
+     */
+    @NotBlank(message = "关键字不能为空")
+    private String keywords;
+
+    /**
+     * 运单状态
+     */
+    private String status;
+}

+ 105 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/vo/WaybillBoardListVO.java

@@ -0,0 +1,105 @@
+package com.sckw.transport.model.vo;
+
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+import java.util.List;
+
+/**
+ * @author JC
+ * @version 1.0
+ * @desc TODO
+ * @date 2023/07/26 17:03:22
+ **/
+@Data
+@Accessors(chain = true)
+public class WaybillBoardListVO {
+    /**
+     * 运单Id
+     */
+    private String wOrderId;
+    /**
+     * 运单号
+     */
+    private String wOrderNo;
+
+    /**
+     * 商品名称
+     */
+    private String goodsName;
+
+    /**
+     * 装货地点
+     */
+    private String loadDetailAddress;
+
+    /**
+     * 卸货地点
+     */
+    private String unloadDetailAddress;
+
+    /**
+     * 开始时间
+     */
+    private String startTime;
+
+    /**
+     * 结束时间
+     */
+    private String endTime;
+
+    /**
+     * 托运单位
+     */
+    private String firmName;
+
+    /**
+     * 派单人员
+     */
+    private String createByName;
+
+    /**
+     * 派单时间
+     */
+    private String createTime;
+
+    /**
+     * 司机姓名
+     */
+    private String driverName;
+
+    /**
+     * 司机电话
+     */
+    private String driverPhone;
+
+    /**
+     * 车牌号
+     */
+    private String truckNo;
+
+    /**
+     * 装载重量
+     */
+    private String loadGrossAmount;
+
+    /**
+     * 卸货重量
+     */
+    private String unloadGrossAmount;
+
+    /**
+     * 装载图片
+     */
+    private String loadUrls;
+
+    /**
+     * 卸货图片
+     */
+    private String unloadUrls;
+
+    /**
+     * 进度列表
+     */
+    private List<WaybillStatusVO> tracks;
+}

+ 39 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/vo/WaybillStatusVO.java

@@ -0,0 +1,39 @@
+package com.sckw.transport.model.vo;
+
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+/**
+ * @author JC
+ * @version 1.0
+ * @desc TODO
+ * @date 2023/07/26 17:03:22
+ **/
+@Data
+@Accessors(chain = true)
+public class WaybillStatusVO {
+    /**
+     * 状态描述
+     */
+    private String destination;
+
+    /**
+     * 状态码
+     */
+    private Integer code;
+
+    /**
+     * 进行状态
+     */
+    private boolean status;
+
+    /**
+     * 记录时间
+     */
+    private String createTime;
+
+    /**
+     * 记录时间
+     */
+    private String createByName;
+}

+ 148 - 4
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/WaybillManagementService.java

@@ -2,10 +2,17 @@ package com.sckw.transport.service;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.sckw.core.common.enums.NumberConstant;
+import com.sckw.core.model.enums.CarWaybillEnum;
+import com.sckw.core.model.page.PageResult;
+import com.sckw.core.utils.BeanUtils;
 import com.sckw.core.utils.CollectionUtils;
+import com.sckw.core.utils.StringUtils;
+import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.core.web.response.HttpResult;
+import com.sckw.excel.utils.DateUtil;
 import com.sckw.fleet.api.RemoteFleetService;
 import com.sckw.fleet.api.model.vo.RTruckVo;
+import com.sckw.mongo.model.SckwWaybillOrder;
 import com.sckw.system.api.RemoteSystemService;
 import com.sckw.system.api.model.dto.res.UserCacheResDto;
 import com.sckw.transport.dao.KwtWaybillOrderAddressMapper;
@@ -16,15 +23,21 @@ import com.sckw.transport.model.KwtWaybillOrderAddress;
 import com.sckw.transport.model.KwtWaybillOrderTicket;
 import com.sckw.transport.model.KwtWaybillOrderTrack;
 import com.sckw.transport.model.dto.WayBillDetailDTO;
-import com.sckw.transport.model.vo.WaybillCarVO;
-import com.sckw.transport.model.vo.WaybillDataVO;
-import com.sckw.transport.model.vo.WaybillTicketVO;
-import com.sckw.transport.model.vo.WaybillTrackVO;
+import com.sckw.transport.model.dto.WaybillOrderDTO;
+import com.sckw.transport.model.vo.*;
+import jakarta.validation.constraints.NotBlank;
+import lombok.Value;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboReference;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.PageRequest;
+import org.springframework.data.domain.Sort;
+import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -57,6 +70,9 @@ public class WaybillManagementService {
     @Autowired
     public KwtWaybillOrderTrackMapper kwtWaybillOrderTrackMapper;
 
+    @Autowired
+    private MongoTemplate mongoTemplate;
+
     /**
      * 运单详情
      *
@@ -149,4 +165,132 @@ public class WaybillManagementService {
         waybillDataVO.setLogsMessage(waybillTrackVOS);
         return HttpResult.ok(waybillDataVO);
     }
+
+    /**
+     * 运单看板列表
+     * @return
+     */
+    public HttpResult waybillIndex(WaybillOrderDTO query) {
+        // mongo查询列数据,不足的数据单独关联表查询
+        // 状态查询 status [2-8]
+        List<Integer> statuses = new ArrayList<>();
+        statuses.add(CarWaybillEnum.PENDING_VEHICLE.getCode());
+        statuses.add(CarWaybillEnum.EXIT_COMPLETED.getCode());
+        statuses.add(CarWaybillEnum.WAIT_LOADING.getCode());
+        statuses.add(CarWaybillEnum.COMPLETION_LOADING.getCode());
+        statuses.add(CarWaybillEnum.WAIT_UNLOADING.getCode());
+        statuses.add(CarWaybillEnum.COMPLETION_UNLOADING.getCode());
+        statuses.add(CarWaybillEnum.APPROVAL_COMPLETED.getCode());
+        // 初始化各状态
+        List<WaybillStatusVO> statusVOS = new ArrayList<>();
+        statuses.forEach(e -> {
+            WaybillStatusVO waybillStatusVO = new WaybillStatusVO();
+            waybillStatusVO.setStatus(false);
+            waybillStatusVO.setCode(e);
+            switch (e){
+                case 2 -> waybillStatusVO.setDestination("司机接单");
+                case 3 -> waybillStatusVO.setDestination("出车");
+                case 4 -> waybillStatusVO.setDestination("到装货地");
+                case 5 -> waybillStatusVO.setDestination("装货");
+                case 6 -> waybillStatusVO.setDestination("到卸货地");
+                case 7 -> waybillStatusVO.setDestination("卸货");
+                case 8 -> waybillStatusVO.setDestination("核单");
+            }
+            statusVOS.add(waybillStatusVO);
+        });
+
+        Criteria criteria = new Criteria();
+        criteria.and("entId").is(LoginUserHolder.getEntId());
+        criteria.and("delFlag").is(NumberConstant.ZERO);
+
+        if (StringUtils.isNotBlank(query.getStatus())) {
+            criteria.and("status").is(query.getStatus());
+        } else {
+            criteria.and("status").in(statuses);
+        }
+        // 装载时间
+        if (StringUtils.isNotBlank(query.getStartLoadTime()) && StringUtils.isNotEmpty(query.getEndLoadTime())) {
+            criteria.andOperator(Criteria.where("loadTime").gte(query.getStartLoadTime()), Criteria.where("loadTime")
+                    .lte(query.getEndLoadTime()));
+        }
+        if (StringUtils.isNotBlank(query.getStartLoadTime()) && StringUtils.isNotEmpty(query.getEndLoadTime())) {
+            criteria.andOperator(Criteria.where("loadTime").gte(query.getStartLoadTime()), Criteria.where("loadTime")
+                    .lte(query.getEndLoadTime()));
+        }
+        // 派车时间
+        if (StringUtils.isNotBlank(query.getStartSendCarTime()) && StringUtils.isNotEmpty(query.getEndSendCarTime())) {
+            criteria.andOperator(Criteria.where("sendCarTime").gte(query.getStartSendCarTime()), Criteria.where("sendCarTime")
+                    .lte(query.getEndSendCarTime()));
+        }
+        // 卸货时间
+        if (StringUtils.isNotBlank(query.getStartUnloadTime()) && StringUtils.isNotEmpty(query.getEndUnloadTime())) {
+            criteria.andOperator(Criteria.where("unloadTime").gte(query.getStartUnloadTime()), Criteria.where("unloadTime")
+                    .lte(query.getEndUnloadTime()));
+        }
+        // 多条件模糊查询
+        List<Criteria> orCriteria = new ArrayList<>();
+        if (StringUtils.isNotBlank(query.getKeywords())) {
+            Pattern pattern = Pattern.compile("^.*" + query.getKeywords() + ".*$", Pattern.CASE_INSENSITIVE);
+            orCriteria.add(Criteria.where("wOrderNo").regex(pattern));
+            orCriteria.add(Criteria.where("truckNo").regex(pattern));
+            orCriteria.add(Criteria.where("driverName").regex(pattern));
+            orCriteria.add(Criteria.where("firmName").regex(pattern));
+            orCriteria.add(Criteria.where("loadAddress").regex(pattern));
+            orCriteria.add(Criteria.where("unloadAddress").regex(pattern));
+            criteria.orOperator(orCriteria);
+        }
+        Query queryFormat = new Query(criteria);
+        long total = mongoTemplate.count(queryFormat, SckwWaybillOrder.class);
+        queryFormat.with(PageRequest.of(query.getPage() - 1, query.getPageSize(),
+                Sort.by(Sort.Order.desc("createTime"))));
+        // 执行查询
+        List<SckwWaybillOrder> list = mongoTemplate.find(queryFormat, SckwWaybillOrder.class);
+        // 查询关联单据信息
+        List<WaybillBoardListVO> orders = new ArrayList<>();
+        for (SckwWaybillOrder sckwWaybillOrder:list) {
+            WaybillBoardListVO waybillBoardListVO = new WaybillBoardListVO();
+            waybillBoardListVO.setWOrderId(String.valueOf(sckwWaybillOrder.getWOrderId()));
+            waybillBoardListVO.setWOrderNo(String.valueOf(sckwWaybillOrder.getWOrderNo()));
+            waybillBoardListVO.setGoodsName(String.valueOf(sckwWaybillOrder.getGoodsName()));
+            waybillBoardListVO.setLoadDetailAddress(String.valueOf(sckwWaybillOrder.getLoadDetailAddress()));
+            waybillBoardListVO.setUnloadDetailAddress(String.valueOf(sckwWaybillOrder.getUnloadDetailAddress()));
+            waybillBoardListVO.setStartTime(DateUtil.getDateTime(sckwWaybillOrder.getStartTime()));
+            waybillBoardListVO.setEndTime(DateUtil.getDateTime(sckwWaybillOrder.getEndTime()));
+            waybillBoardListVO.setFirmName(String.valueOf(sckwWaybillOrder.getFirmName()));
+            waybillBoardListVO.setCreateByName(String.valueOf(sckwWaybillOrder.getCreateByName()));
+            waybillBoardListVO.setCreateTime(DateUtil.getDateTime(sckwWaybillOrder.getCreateTime()));
+            waybillBoardListVO.setDriverName(String.valueOf(sckwWaybillOrder.getDriverName()));
+            waybillBoardListVO.setDriverPhone(String.valueOf(sckwWaybillOrder.getDriverPhone()));
+            waybillBoardListVO.setTruckNo(String.valueOf(sckwWaybillOrder.getTruckNo()));
+            waybillBoardListVO.setLoadGrossAmount(sckwWaybillOrder.getLoadGrossAmount() != null ? String.valueOf(sckwWaybillOrder.getLoadGrossAmount()) : null);
+            waybillBoardListVO.setUnloadGrossAmount(sckwWaybillOrder.getUnloadGrossAmount() != null ? String.valueOf(sckwWaybillOrder.getUnloadGrossAmount()) : null);
+            waybillBoardListVO.setLoadUrls(sckwWaybillOrder.getLoadUrls() != null ? String.valueOf(sckwWaybillOrder.getLoadUrls()) : null);
+            waybillBoardListVO.setUnloadUrls(sckwWaybillOrder.getUnloadUrls() != null ? String.valueOf(sckwWaybillOrder.getUnloadUrls()) : null);
+            // 运单进度
+            List<WaybillStatusVO> statusVOS2 = new ArrayList<>();
+            BeanUtils.copyProperties(statusVOS, statusVOS2);
+            log.error("XXXX-11 {}", statusVOS);
+            log.error("XXXX-12 {}", statusVOS2);
+            List<KwtWaybillOrderTrack> kwtWaybillOrderTracks = kwtWaybillOrderTrackMapper.selectList(new LambdaQueryWrapper<KwtWaybillOrderTrack>()
+                    .eq(KwtWaybillOrderTrack::getWOrderId, sckwWaybillOrder.getWOrderId()));
+            if (CollectionUtils.isNotEmpty(kwtWaybillOrderTracks)) {
+                for (WaybillStatusVO waybillStatusVO: statusVOS2) {
+                    for (KwtWaybillOrderTrack waybillOrderTrack: kwtWaybillOrderTracks) {
+                        log.error("XXXX-1 {}", waybillStatusVO.getCode());
+                        log.error("XXXX-2 {}", waybillOrderTrack.getStatus());
+                        if(waybillStatusVO.getCode().equals(waybillOrderTrack.getStatus())) {
+                            waybillStatusVO.setStatus(true);
+                            waybillStatusVO.setCreateTime(DateUtil.getDateTime(waybillOrderTrack.getCreateTime()));
+                            waybillStatusVO.setCreateByName(String.valueOf(waybillOrderTrack.getCreateBy()));
+                        }
+                    }
+                }
+            }
+            waybillBoardListVO.setTracks(statusVOS);
+            orders.add(waybillBoardListVO);
+        }
+
+        PageResult build = PageResult.build(query.getPage(), query.getPageSize(), total, orders);
+        return HttpResult.ok(build);
+    }
 }