Pārlūkot izejas kodu

1、企业APP接口联调调整;

zk 1 gadu atpakaļ
vecāks
revīzija
783d29d02f

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

@@ -170,7 +170,7 @@ public class AppWayBillController {
      * @author zk
      * @author zk
      * @date 2024/4/3
      * @date 2024/4/3
      **/
      **/
-    @PostMapping("/ndex")
+    @PostMapping("/select")
     public HttpResult findNdexPage(@Validated @RequestBody WaybillListAppDTO params) throws SystemException {
     public HttpResult findNdexPage(@Validated @RequestBody WaybillListAppDTO params) throws SystemException {
         return HttpResult.ok(waybillManagementV1Service.findNdexPage(params));
         return HttpResult.ok(waybillManagementV1Service.findNdexPage(params));
     }
     }

+ 37 - 29
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtWaybillManagementV1Service.java

@@ -1,6 +1,7 @@
 package com.sckw.transport.service;
 package com.sckw.transport.service;
 
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.bean.BeanUtil;
+import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.github.pagehelper.PageInfo;
@@ -87,6 +88,9 @@ public class KwtWaybillManagementV1Service {
     @Autowired
     @Autowired
     public KwtWaybillOrderSubtaskMapper waybillOrderSubtaskMapper;
     public KwtWaybillOrderSubtaskMapper waybillOrderSubtaskMapper;
 
 
+    @Autowired
+    public KwtLogisticsOrderGoodsMapper logisticsOrderGoodsMapper;
+
     @Autowired
     @Autowired
     KwtWaybillOrderTicketService kwtWaybillOrderTicketService;
     KwtWaybillOrderTicketService kwtWaybillOrderTicketService;
 
 
@@ -150,9 +154,11 @@ public class KwtWaybillManagementV1Service {
     public HttpResult findNdexPage(WaybillListAppDTO query) {
     public HttpResult findNdexPage(WaybillListAppDTO query) {
         // 运单创建人或有关授权用户
         // 运单创建人或有关授权用户
         List<Long> userIds = LoginUserHolder.getAuthUserIdList();
         List<Long> userIds = LoginUserHolder.getAuthUserIdList();
+        String queryWstatus = Objects.requireNonNull(CarWaybillAppEnum.getRemark(query.getStatus())).getValue();
         WaybillOrderQueryDto queryDto = new WaybillOrderQueryDto();
         WaybillOrderQueryDto queryDto = new WaybillOrderQueryDto();
+        query.setStatus(null);
         BeanUtil.copyProperties(query, queryDto);
         BeanUtil.copyProperties(query, queryDto);
-        queryDto.setQueryWstatus(Objects.requireNonNull(CarWaybillAppEnum.getRemark(query.getStatus())).getValue());
+        queryDto.setQueryWstatus(queryWstatus);
         queryDto.setEntId(LoginUserHolder.getEntId());
         queryDto.setEntId(LoginUserHolder.getEntId());
         queryDto.setUserIds(userIds);
         queryDto.setUserIds(userIds);
         /*数据查询**/
         /*数据查询**/
@@ -162,42 +168,44 @@ public class KwtWaybillManagementV1Service {
         Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(List.of(DictTypeEnum.UNIT_TYPE.getType()));
         Map<String, Map<String, String>> dict = remoteSystemService.queryDictByType(List.of(DictTypeEnum.UNIT_TYPE.getType()));
         Map<String, String> unitMap = CollectionUtils.isNotEmpty(dict) ? dict.get(DictTypeEnum.UNIT_TYPE.getType()) : new HashMap<>(NumberConstant.SIXTEEN);
         Map<String, String> unitMap = CollectionUtils.isNotEmpty(dict) ? dict.get(DictTypeEnum.UNIT_TYPE.getType()) : new HashMap<>(NumberConstant.SIXTEEN);
 
 
-        //企业ID
-        List<Long> entIds = list.stream().map(WaybillOrderSelectVo::getEntId).toList();
-        Map<Long, EntCacheResDto> ents = remoteSystemService.queryEntCacheMapByIds(entIds);
-
-        //用户
-        userIds = list.stream().map(WaybillOrderSelectVo::getCreateBy).toList();
-        List<UserCacheResDto> users = remoteSystemService.queryUserCacheByIds(userIds);
-        Map<Long, UserCacheResDto> usersMap = new HashMap<>(Global.NUMERICAL_SIXTEEN);
-        users.forEach(e -> usersMap.put(e.getId(), e));
-
         //数据处理
         //数据处理
         List<Map<String, Object>> result = new ArrayList<>();
         List<Map<String, Object>> result = new ArrayList<>();
         for (WaybillOrderSelectVo waybillOrder:list) {
         for (WaybillOrderSelectVo waybillOrder:list) {
-            /*数据处理*/
-            List<Map<String, Object>> trackList = new ArrayList<>();
-            for (CarWaybillNdexTopEnum entity:CarWaybillNdexTopEnum.values()) {
-                Map<String, Object> trackData = new HashMap<>(NumberConstant.SIXTEEN);
-                //审核状态
-                KwtWaybillOrderTrack track = kwtWaybillOrderTrackMapper.findWaybillOrderTrackV1(waybillOrder.getWOrderId(), CarWaybillDetailEnum.IN_TRANSIT.getValue());
-                trackData.put("statusName", entity.getName());
-                trackData.put("operateStatus", track != null);
-                trackData.put("operateTime", track != null ? DateUtils.format(track.getOperateTime(), DateUtils.FORMAT11) : null);
-                trackList.add(trackData);
+            //运单地址信息
+            List<KwtWaybillOrderAddress> addresses = kwtWaybillOrderAddressMapper.findByAddresses(waybillOrder.getWOrderId(), null);
+            List<JSONObject> addressList = new ArrayList<>();
+            for (KwtWaybillOrderAddress address:addresses) {
+                //运单子单
+                KwtWaybillOrderSubtask subtask = waybillOrderSubtaskMapper.selectById(address.getWSubtaskId());
+                //物流订单商品信息
+                KwtLogisticsOrderGoods goods = logisticsOrderGoodsMapper.findByGoods(subtask != null ? subtask.getLOrderId() : null);
+                //榜单信息
+                KwtWaybillOrderTicket ticket = kwtWaybillOrderTicketMapper.findWaybillOrderTicketV2(address.getId(), subtask.getUnit());
+                //数据组装
+                JSONObject addressJson = new JSONObject();
+                addressJson.put("wAddressId", address.getId());
+                addressJson.put("addressType", address.getAddressType());
+                addressJson.put("addressName", address.getName());
+                addressJson.put("addressCityName", address.getCityName());
+                addressJson.put("addressDetail", address.getDetailAddress());
+                addressJson.put("planTime", DateUtils.format(address.getPlanTime(), DateUtils.FORMAT12));
+
+                addressJson.put("entrustAmount", address.getEntrustAmount());
+                addressJson.put("goodsName", goods != null ? goods.getGoodsName() : null);
+                addressJson.put("unit", subtask.getUnit());
+                addressJson.put("unitName", unitMap.get(subtask.getUnit()));
+                addressJson.put("amount", ticket != null ? ticket.getAmount() : null);
+                addressJson.put("urls", ticket != null ? ticket.getUrls() : null);
+                addressJson.put("operateStatus", ticket != null);
+                addressJson.put("operateTime", ticket != null ? DateUtils.format(address.getPlanTime(), DateUtils.FORMAT11) : null);
+                addressJson.put("approvalStatus", ticket != null ? ticket.getStatus() : null);
+                addressList.add(addressJson);
             }
             }
 
 
-            //子运单
-            List<KwtWaybillOrderSubtask> subtasks = waybillOrderSubtaskMapper.findByWOrderId(waybillOrder.getWOrderId());
-
-
             Map<String, Object> order = BeanUtil.beanToMap(waybillOrder);
             Map<String, Object> order = BeanUtil.beanToMap(waybillOrder);
-            order.put("createByName", usersMap.get(waybillOrder.getCreateBy()) != null ? usersMap.get(waybillOrder.getCreateBy()).getName() : null);
-            order.put("firmName", ents.get(waybillOrder.getEntId()) != null ? ents.get(waybillOrder.getEntId()).getFirmName() : null);
             order.put("statusLabel", CarWaybillEnum.getName(waybillOrder.getStatus()));
             order.put("statusLabel", CarWaybillEnum.getName(waybillOrder.getStatus()));
-            //order.put("unitLabel", unitMap.get(waybillOrder.getUnit()));
+            order.put("addresses", addressList);
             order.put("typeLabel", waybillOrder.getType() == NumberConstant.ONE ? "趟次" : "循环");
             order.put("typeLabel", waybillOrder.getType() == NumberConstant.ONE ? "趟次" : "循环");
-            order.put("tracks", trackList);
             result.add(order);
             result.add(order);
         }
         }
 
 

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

@@ -83,7 +83,10 @@
             </foreach>
             </foreach>
         </if>
         </if>
         <if test="queryWstatus != null and queryWstatus != ''">
         <if test="queryWstatus != null and queryWstatus != ''">
-            and wo.status in (#{queryWstatus, jdbcType=VARCHAR})
+            AND wo.status in
+            <foreach collection="queryWstatus.split(',')" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
         </if>
         </if>
         <if test="(loadCityCode != null and loadCityCode != '') or (unloadCityCode != null and unloadCityCode != '')">
         <if test="(loadCityCode != null and loadCityCode != '') or (unloadCityCode != null and unloadCityCode != '')">
             and wo.id in (
             and wo.id in (