diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 8fca1f7c..be804df0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -1,6 +1,7 @@ package com.hzs.member.base.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Validator; import cn.hutool.core.lang.tree.Tree; @@ -2464,6 +2465,9 @@ public class CuMemberServiceImpl extends ServiceImpl i Set pkMemberList = new HashSet<>(); for (ShowWaresDTO showWaresDTO : showWaresDTOS) { + if(CollUtil.isEmpty(showWaresDTO.getWaresAuthorityList())){ + continue; + } for (BdWaresAuthority bw : showWaresDTO.getWaresAuthorityList()) { if (bw.getAuthorityType() == EWaresPermissionType.BLOOD_ALLOW.getValue() || bw.getAuthorityType() == EWaresPermissionType.BLOOD_STOP.getValue()) { // 血缘关系 @@ -2501,6 +2505,9 @@ public class CuMemberServiceImpl extends ServiceImpl i } for (ShowWaresDTO showWaresDTO : showWaresDTOS) { + if(CollUtil.isEmpty(showWaresDTO.getWaresAuthorityList())){ + continue; + } boolean isShowWares = true; for (BdWaresAuthority bdWaresAuthority : showWaresDTO.getWaresAuthorityList()) { if (bdWaresAuthority.getAuthorityType() == EWaresPermissionType.BLOOD_ALLOW.getValue()) { diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml index 78c6dc95..c2e06f55 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresMapper.xml @@ -505,6 +505,13 @@ inner join bd_wares_extend be on bw.pk_id = be.pk_wares left join BD_AREA_CLASSIFY bac on bac.pk_id = bw.PK_AREA_CLASSIFY + + right join (select pk_id + from BD_AREA_CLASSIFY cm + start with cm.pk_id = #{param.pkAreaClassify} + connect by prior cm.pk_id = cm.pk_parent + order by level) te on te.pk_id = bw.PK_AREA_CLASSIFY + where bw.del_flag = 0 and be.del_flag = 0 and be.is_put_on = 0 @@ -519,9 +526,6 @@ and bw.pk_country = #{param.pkCountry} - - and bw.PK_AREA_CLASSIFY = #{param.pkAreaClassify} or bac.pk_parent = #{param.pkAreaClassify} - and bw.WARES_NAME = '%' || #{param.waresName} || '%'