Pārlūkot izejas kodu

修改运营端订单查询+订单详情新增line

czh 1 gadu atpakaļ
vecāks
revīzija
a90fdb6bee

+ 3 - 1
sckw-modules/sckw-order/src/main/java/com/sckw/order/dao/KwoTradeOrderMapper.java

@@ -58,7 +58,8 @@ public interface KwoTradeOrderMapper extends BaseMapper<KwoTradeOrder> {
      */
     List<OrderListResDTO> tradeOrderSelect(@Param("query") TradeOrderListSelectDTO query,
                                            @Param("goodIds") List<Long> goodIds,
-                                           @Param("authUserIds") List<Long> authUserIds);
+                                           @Param("authUserIds") List<Long> authUserIds,
+                                           @Param("entIds") List<Long> entIds);
 
 
     /***
@@ -139,4 +140,5 @@ public interface KwoTradeOrderMapper extends BaseMapper<KwoTradeOrder> {
 
     WorkbenchOrderStsDTO getOrderStsInfo(@Param("query") OrderStsInfoDTO query,
                                          @Param("excludeStatuses") List<Integer> excludeStatuses);
+
 }

+ 2 - 2
sckw-modules/sckw-order/src/main/java/com/sckw/order/serivce/KwoTradeOrderService.java

@@ -1599,7 +1599,7 @@ public class KwoTradeOrderService {
     public PageResult tradeOrderSelect(TradeOrderListSelectParam params) {
         TradeOrderListSelectDTO dto = buildSelectParam(params);
         PageHelper.startPage(params.getPage(), params.getPageSize());
-        List<OrderListResDTO> list = kwoTradeOrderMapper.tradeOrderSelect(dto, dto.getGoodIds(), LoginUserHolder.getAuthUserIdList());
+        List<OrderListResDTO> list = kwoTradeOrderMapper.tradeOrderSelect(dto, dto.getGoodIds(), LoginUserHolder.getAuthUserIdList(), null);
 
 
         return buildResult(list, params.getPageSize());
@@ -1714,7 +1714,7 @@ public class KwoTradeOrderService {
      * @author yzc
      * @date 2024/3/15 8:52
      */
-    private TradeOrderListSelectDTO buildSelectParam(TradeOrderListStatisticParam params) {
+    public TradeOrderListSelectDTO buildSelectParam(TradeOrderListStatisticParam params) {
         TradeOrderListSelectDTO dto = BeanUtil.copyProperties(params, TradeOrderListSelectDTO.class);
         dto.setEntId(LoginUserHolder.getEntId())
                 .setUserId(LoginUserHolder.getUserId())

+ 8 - 4
sckw-modules/sckw-order/src/main/java/com/sckw/order/serivce/TradeOrderManageService.java

@@ -12,6 +12,8 @@ import com.sckw.core.web.context.LoginUserHolder;
 import com.sckw.order.dao.KwoTradeOrderMapper;
 import com.sckw.order.enums.OrderStatusEnum;
 import com.sckw.order.model.dto.OperatorTOrderListStsConditionDTO;
+import com.sckw.order.model.dto.OrderListResDTO;
+import com.sckw.order.model.dto.TradeOrderListSelectDTO;
 import com.sckw.order.model.vo.req.*;
 import com.sckw.system.api.RemoteUserService;
 import lombok.AllArgsConstructor;
@@ -58,11 +60,13 @@ public class TradeOrderManageService {
             }
             authEntIdList.addAll(ids);
         }
-        OperatorTOrderListStsConditionDTO dto = BeanUtils.copyProperties(params, OperatorTOrderListStsConditionDTO.class);
+
+        TradeOrderListStatisticParam tradeOrderListStatisticParam = new TradeOrderListExportParam();
+        BeanUtils.copyProperties(params, tradeOrderListStatisticParam);
+        TradeOrderListSelectDTO tradeOrderListSelectDTO = tradeOrderService.buildSelectParam(tradeOrderListStatisticParam);
         PageHelper.startPage(params.getPage(), params.getPageSize());
-//        List<OrderListResDTO> list = tradeOrderMapper.listPaging(dto,authEntIdList,);
-//        return tradeOrderService.buildResult(list, params.getPageSize());
-        return null;
+        List<OrderListResDTO> list = tradeOrderMapper.tradeOrderSelect(tradeOrderListSelectDTO, tradeOrderListSelectDTO.getGoodIds(), LoginUserHolder.getAuthUserIdList(), authEntIdList);
+        return tradeOrderService.buildResult(list, params.getPageSize());
     }
 
     /**

+ 56 - 46
sckw-modules/sckw-order/src/main/resources/mapper/KwoTradeOrderMapper.xml

@@ -83,54 +83,64 @@
         <where>
             a.del_flag = 0
 --          数据权限匹配
-            <if test="query.isMain == 0">
-                and (
-                <if test="query.orderType == 1">
-                    <if test="query.entId != null">
-                        d.top_ent_id = #{query.entId}
-                    </if>
-                    <if test="authUserIds != null and authUserIds.size() > 0">
-                        and d.contacts_id in
-                        <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">
-                            #{authUserId}
-                        </foreach>
-                        or d.create_by in
-                        <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">
-                            #{authUserId}
-                        </foreach>
-                    </if>
-                </if>
-                <if test="query.orderType == 2">
-                    <if test="query.entId != null">
-                        e.top_ent_id = #{query.entId}
-                    </if>
-                    <if test="authUserIds != null and authUserIds.size() > 0">
-                        and e.contacts_id in
-                        <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">
-                            #{authUserId}
-                        </foreach>
-                        or e.create_by in
-                        <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">
-                            #{authUserId}
-                        </foreach>
-                    </if>
-                </if>
-                )
-            </if>
-            <if test="query.isMain == 1">
-                and (
-                <if test="query.orderType == 1">
-                    <if test="query.entId != null">
-                        d.top_ent_id = #{query.entId}
+            <choose>
+                <when test="entIds == null or entIds.size == 0">
+                    <if test="query.isMain == 0">
+                        and (
+                        <if test="query.orderType == 1">
+                            <if test="query.entId != null">
+                                d.top_ent_id = #{query.entId}
+                            </if>
+                            <if test="authUserIds != null and authUserIds.size() > 0">
+                                and d.contacts_id in
+                                <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">
+                                    #{authUserId}
+                                </foreach>
+                                or d.create_by in
+                                <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">
+                                    #{authUserId}
+                                </foreach>
+                            </if>
+                        </if>
+                        <if test="query.orderType == 2">
+                            <if test="query.entId != null">
+                                e.top_ent_id = #{query.entId}
+                            </if>
+                            <if test="authUserIds != null and authUserIds.size() > 0">
+                                and e.contacts_id in
+                                <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">
+                                    #{authUserId}
+                                </foreach>
+                                or e.create_by in
+                                <foreach collection="authUserIds" item="authUserId" open="(" close=")" separator=",">
+                                    #{authUserId}
+                                </foreach>
+                            </if>
+                        </if>
+                        )
                     </if>
-                </if>
-                <if test="query.orderType == 2">
-                    <if test="query.entId != null">
-                        e.top_ent_id = #{query.entId}
+                    <if test="query.isMain == 1">
+                        and (
+                        <if test="query.orderType == 1">
+                            <if test="query.entId != null">
+                                d.top_ent_id = #{query.entId}
+                            </if>
+                        </if>
+                        <if test="query.orderType == 2">
+                            <if test="query.entId != null">
+                                e.top_ent_id = #{query.entId}
+                            </if>
+                        </if>
+                        )
                     </if>
-                </if>
-                )
-            </if>
+                </when>
+                <otherwise>
+                    a.ent_id in <foreach collection="ent" separator="," open="(" close=")" item="item">
+                            #{item}
+                </foreach>
+                </otherwise>
+            </choose>
+
 --          状态匹配
             <if test="query.status != null">
                 and a.status =#{query.status}

+ 2 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/model/vo/OrderDetailVO.java

@@ -260,5 +260,7 @@ public class OrderDetailVO {
      */
     private String taxRateLabel;
 
+    private List<String> lineFreightNameList;
+
 
 }

+ 10 - 0
sckw-modules/sckw-transport/src/main/java/com/sckw/transport/service/KwtTransportCommonService.java

@@ -133,6 +133,9 @@ public class KwtTransportCommonService {
     @Resource
     private StreamBridge streamBridge;
 
+    @Autowired
+    private KwtLogisticsOrderLineFreightRateMapper kwtLogisticsOrderLineFreightRateMapper;
+
     /**
      * 查看订单详情
      *
@@ -400,6 +403,13 @@ public class KwtTransportCommonService {
         } else {
             orderDetailVO.setOrderAmount(NumberUtils.parseBigDecimal(logisticsOrder.getAmount()).multiply(NumberUtils.parseBigDecimal(logisticsOrder.getPrice())));
         }
+
+
+        List<LineFreightRateVo> lineFreightRateVos = kwtLogisticsOrderLineFreightRateMapper.selectListByOrderId(Long.parseLong(dto.getId()));
+        if (CollectionUtils.isNotEmpty(lineFreightRateVos)) {
+            orderDetailVO.setLineFreightNameList(lineFreightRateVos.stream().map(LineFreightRateVo::getLineFreightName).collect(Collectors.toList()));
+        }
+
         return orderDetailVO;
     }
 

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

@@ -2,7 +2,6 @@ package com.sckw.transport.service;
 
 import cn.hutool.core.bean.BeanUtil;
 import com.alibaba.fastjson2.JSONObject;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.sckw.core.common.enums.enums.DictTypeEnum;
@@ -10,21 +9,14 @@ import com.sckw.core.model.constant.Global;
 import com.sckw.core.model.constant.NumberConstant;
 import com.sckw.core.model.enums.AddressTypeEnum;
 import com.sckw.core.model.enums.CarWaybillEnum;
-import com.sckw.core.model.enums.CarWaybillQueryEnum;
 import com.sckw.core.model.page.PageHelperUtil;
 import com.sckw.core.model.page.PageResult;
 import com.sckw.core.utils.*;
 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.mongo.model.TableTops;
 import com.sckw.system.api.RemoteSystemService;
-import com.sckw.system.api.model.dto.res.AreaTreeFrontResDto;
 import com.sckw.system.api.model.dto.res.EntCacheResDto;
-import com.sckw.system.api.model.dto.res.SysDictResDto;
 import com.sckw.system.api.model.dto.res.UserCacheResDto;
 import com.sckw.transport.dao.*;
 import com.sckw.transport.model.*;
@@ -32,24 +24,13 @@ import com.sckw.transport.model.dto.*;
 import com.sckw.transport.model.enuma.ApproveStatusEnum;
 import com.sckw.transport.model.enuma.CarWaybillAppEnum;
 import com.sckw.transport.model.enuma.CarWaybillDetailEnum;
-import com.sckw.transport.model.enuma.CarWaybillNdexTopEnum;
 import com.sckw.transport.model.vo.*;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.dubbo.config.annotation.DubboReference;
 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.aggregation.Aggregation;
-import org.springframework.data.mongodb.core.aggregation.AggregationResults;
-import org.springframework.data.mongodb.core.query.Criteria;
-import org.springframework.data.mongodb.core.query.Query;
 import org.springframework.stereotype.Service;
-import org.springframework.util.ObjectUtils;
-
-import java.math.BigDecimal;
 import java.util.*;
-import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
 /**

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

@@ -751,10 +751,7 @@
 
     <select id="findWaybillOrder" resultType="com.sckw.transport.model.KwtWaybillOrder" parameterType="java.util.Map">
         SELECT
-        kwo.id worderId, kwo.w_order_no worderNo, kwo.l_order_id lOrderId, kwo.type, kwo.ent_id carrierEntId, kwo.start_time startTime,
-        kwo.end_time endTime, kwo.entrust_amount entrustAmount, kwo.load_amount loadAmount, kwo.unload_amount unloadAmount,
-        kwo.deficit_amount deficitAmount, kwo.deficit_price deficitPrice, kwo.truck_id truckId, kwo.truck_no truckNo, kwo.status,
-        kwo.create_time createTime, kwo.driver_id driverId, kwo.driver_name driverName, kwo.driver_phone driverPhone, kwo.ent_id entId
+        kwo.*
         FROM kwt_waybill_order kwo
         where kwo.del_flag = 0
         <if test="tOrderId != null and tOrderId != ''">