Parcourir la source

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

chenxiaofei il y a 1 mois
Parent
commit
21fdebb5a8

+ 2 - 2
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/dto/TradeOrderAppStatisticParamDTO.java

@@ -27,9 +27,9 @@ public class TradeOrderAppStatisticParamDTO {
     private Integer orderType;
 
     /**
-     * 是否主账号(0是/1否)
+     * 是否主账号(1是/0否)
      */
     private Integer isMain;
 
 
-}
+}

+ 3 - 1
sckw-modules/sckw-order/src/main/java/com/sckw/order/model/dto/TradeOrderListSelectDTO.java

@@ -24,6 +24,8 @@ public class TradeOrderListSelectDTO {
      * 企业id
      */
     private Long entId;
+    //企业类型 1-卖方 2-买方
+    private Integer entType;
 
     /**
      * 用户id
@@ -31,7 +33,7 @@ public class TradeOrderListSelectDTO {
     private Long userId;
 
     /**
-     * 是否主账号(0是/1否)
+     * 是否主账号(1是/0否)
      */
     private Integer isMain;
     //是否平台管理员

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

@@ -5,6 +5,7 @@ import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.NumberUtil;
+import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -1646,8 +1647,10 @@ public class KwoTradeOrderService {
      */
     public TradeOrderListSelectDTO buildSelectParam(TradeOrderListStatisticParam params) {
         TradeOrderListSelectDTO dto = BeanUtil.copyProperties(params, TradeOrderListSelectDTO.class);
+        EntTypeResDto entTypeResDto = remoteSystemService.queryEntTypeById(LoginUserHolder.getEntId());
         dto.setEntId(LoginUserHolder.getEntId())
                 .setManager(LoginUserHolder.isManager())
+                .setEntType(Objects.nonNull(entTypeResDto) ? entTypeResDto.getType() : null)
                 .setEntList(LoginUserHolder.getChildEntList())
                 .setIsMain(LoginUserHolder.getIsMain());
         //装卸货地址
@@ -2031,7 +2034,9 @@ public class KwoTradeOrderService {
         unitList.forEach(e -> {
             KwoTradeOrderUnit unit = BeanUtil.copyProperties(e, KwoTradeOrderUnit.class);
             unit.setId(new IdWorker(1).nextId());
-            unit.setTOrderId(order.getId()).setUnitType(e.getUnitType()).setTOrderNo(order.getTOrderNo()).setTopEntId(e.getEntId());
+            unit.setTOrderId(order.getId())
+                    .setTOrderNo(order.getTOrderNo()).setTopEntId(e.getEntId());
+            unit.setUnitType(StrUtil.equals(e.getUnitType(), "1") ? "2" : "1");//贸易合同和订单的单位类型相反
             list.add(unit);
         });
         kwoTradeOrderUnitService.insertBatch(list);

+ 50 - 26
sckw-modules/sckw-order/src/main/resources/mapper/KwoTradeOrderMapper.xml

@@ -84,28 +84,40 @@
 --          数据权限匹配
             <choose>
                 <when test="query.manager != null and !query.manager">
-                    <if test="query.isMain == 0">
-                        <if test="query.entList != null and query.entList.size() > 0">
-                            and (
-                                d.top_ent_id in
-                            <foreach collection="query.entList" item="authUserId" open="(" close=")" separator=",">
-                                #{authUserId}
-                            </foreach>
-                            )
+                    <if test="query.isMain == 1">
+                        <if test="query.entList != null and query.entList.size() > 0  and query.entType != null">
+                            <if test="query.entType == 1">
+                                and
+                                    e.top_ent_id in
+                                <foreach collection="query.entList" item="authUserId" open="(" close=")" separator=",">
+                                    #{authUserId}
+                                </foreach>
+                            </if>
+                            <if test="query.entType == 2">
+                                and
+                                    d.top_ent_id in
+                                <foreach collection="query.entList" item="authUserId" open="(" close=")" separator=",">
+                                    #{authUserId}
+                                </foreach>
+                            </if>
                         </if>
                     </if>
-                    <if test="query.isMain == 1">
-                        <if test="query.entId != null">
-                            and (d.top_ent_id = #{query.entId}
-                                )
+                    <if test="query.isMain == 0">
+                        <if test="query.entId != null and query.entType != null">
+                            <if test="query.entType == 1">
+                                and e.top_ent_id = #{query.entId}
+                            </if>
+                            <if test="query.entType == 2">
+                                and d.top_ent_id = #{query.entId}
+                            </if>
                         </if>
                     </if>
                 </when>
             </choose>
-            <if test="query.buyEntId !=null">
+            <if test="query.buyEntId != null">
                 and d.ent_id = #{query.buyEntId}
             </if>
-            <if test="query.saleEntId !=null">
+            <if test="query.saleEntId != null">
                 and e.ent_id = #{query.saleEntId}
             </if>
             <if test="query.status != null">
@@ -442,20 +454,32 @@
             a.del_flag = 0
             <choose>
                 <when test="query.manager != null and !query.manager">
-                    <if test="query.isMain == 0">
-                        <if test="query.entList != null and query.entList.size() > 0">
-                            and (
-                            d.top_ent_id in
-                            <foreach collection="query.entList" item="authUserId" open="(" close=")" separator=",">
-                                #{authUserId}
-                            </foreach>
-                            )
+                    <if test="query.isMain == 1">
+                        <if test="query.entList != null and query.entList.size() > 0  and query.entType != null">
+                            <if test="query.entType == 1">
+                                and
+                                e.top_ent_id in
+                                <foreach collection="query.entList" item="authUserId" open="(" close=")" separator=",">
+                                    #{authUserId}
+                                </foreach>
+                            </if>
+                            <if test="query.entType == 2">
+                                and
+                                d.top_ent_id in
+                                <foreach collection="query.entList" item="authUserId" open="(" close=")" separator=",">
+                                    #{authUserId}
+                                </foreach>
+                            </if>
                         </if>
                     </if>
-                    <if test="query.isMain == 1">
-                        <if test="query.entId != null">
-                            and (d.top_ent_id = #{query.entId}
-                            )
+                    <if test="query.isMain == 0">
+                        <if test="query.entId != null and query.entType != null">
+                            <if test="query.entType == 1">
+                                and e.top_ent_id = #{query.entId}
+                            </if>
+                            <if test="query.entType == 2">
+                                and d.top_ent_id = #{query.entId}
+                            </if>
                         </if>
                     </if>
                 </when>