소스 검색

fix 数据权限过滤问题

xucaiqin 1 개월 전
부모
커밋
514f1e909e

+ 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;
     //是否平台管理员

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

@@ -1646,8 +1646,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());
         //装卸货地址

+ 13 - 7
sckw-modules/sckw-order/src/main/resources/mapper/KwoTradeOrderMapper.xml

@@ -84,7 +84,7 @@
 --          数据权限匹配
             <choose>
                 <when test="query.manager != null and !query.manager">
-                    <if test="query.isMain == 0">
+                    <if test="query.isMain == 1">
                         <if test="query.entList != null and query.entList.size() > 0">
                             and (
                                 d.top_ent_id in
@@ -94,18 +94,24 @@
                             )
                         </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">