Browse Source

feat:groupId新说

zhangwei 3 years ago
parent
commit
a806c08678

+ 1 - 1
src/main/java/com/winhc/repal/entity/RepalCustomer.java

@@ -35,7 +35,7 @@ public class RepalCustomer implements Serializable {
 
     @ApiModelProperty(value = "所属组织id")
     @TableField("REPAL_GROUP_ID")
-    private String repalGroupId;
+    private Long repalGroupId;
 
     @ApiModelProperty(value = "客户名称")
     @TableField("CUST_NAME")

+ 1 - 1
src/main/java/com/winhc/repal/entity/RepalGroupMember.java

@@ -35,7 +35,7 @@ public class RepalGroupMember implements Serializable {
 
     @ApiModelProperty(value = "组织id")
     @TableField("REPAL_GROUP_ID")
-    private String repalGroupId;
+    private Long repalGroupId;
 
     @ApiModelProperty(value = "用户id")
     @TableField("USER_ID")

+ 1 - 1
src/main/java/com/winhc/repal/model/vo/RepalGroupMemberVO.java

@@ -17,7 +17,7 @@ public class RepalGroupMemberVO {
     private Long id;
 
     @ApiModelProperty(value = "组织id")
-    private String repalGroupId;
+    private Long repalGroupId;
 
     @ApiModelProperty(value = "用户id")
     private Long userId;

+ 1 - 1
src/main/java/com/winhc/repal/repository/RepalCustomerMapper.java

@@ -23,7 +23,7 @@ public interface RepalCustomerMapper extends BaseMapper<RepalCustomer> {
      * @return
      */
     Page<RepalCustomerInfoBO> getCustPage(Page<RepalCustomerInfoBO> page,
-                                          @Param("groupId") String groupId,
+                                          @Param("groupId") Long groupId,
                                           @Param("custProperty")Integer custProperty,
                                           @Param("sortType")Integer sortType,
                                           @Param("custType")Integer custType,

+ 11 - 10
src/main/java/com/winhc/repal/service/impl/RepalCustomerServiceImpl.java

@@ -82,22 +82,21 @@ public class RepalCustomerServiceImpl extends ServiceImpl<RepalCustomerMapper, R
     @Autowired
     private RepalRolePermissionService repalRolePermissionService;
 
-    @Autowired
-    private ThirdPartyAccountService thirdPartyAccountService;
-
      @Override
      public VOPage<RepalCustomerInfoVO> find(RepalCustomerQueryDTO dto,UserBean userBean) {
          //权限
          boolean allFlag = repalRolePermissionService.checkUserPermission(UserContextUtil.getUser().getUserId(),
                  Dict.custTypeEnum.客户.getCode().equals(dto.getCustType()) ? PermissionEnum.QUERY_ALL_CUST.getCode() : PermissionEnum.QUERY_ALL_SUPPLY.getCode());
-         //反查组织
-         ThirdPartyAccount thirdPartyAccount = thirdPartyAccountService.getOne(Wrappers.lambdaQuery(ThirdPartyAccount.class).eq(ThirdPartyAccount::getUserId,userBean.getUserId()).eq(ThirdPartyAccount::getAppId,0).eq(ThirdPartyAccount::getDeleted, Dict.DeletedStatusEnunm.否.getCode()),false);
-         if(ObjectUtil.isNull(thirdPartyAccount)){
+         //查组织id
+         RepalGroupMember repalGroupMember = repalGroupMemberService.getOne(Wrappers.lambdaQuery(RepalGroupMember.class)
+                 .eq(RepalGroupMember::getUserId,userBean.getUserId())
+                 .eq(RepalGroupMember::getDeleted,Dict.DeletedStatusEnunm.否.getCode()),false);
+         if(ObjectUtil.isNull(repalGroupMember)){
              return new VOPage<>();
          }
          Page<RepalCustomerInfoBO> page = new Page<>(dto.getPageNum(),dto.getPageSize());
          int billType = Dict.custTypeEnum.客户.getCode().equals(dto.getCustType()) ? RepalBillTypeEnum.RECEIVABLE.getCode() : RepalBillTypeEnum.RECEIPT.getCode();
-         page = repalCustomerMapper.getCustPage(page, thirdPartyAccount.getGroupId(),dto.getCustProperty(),dto.getSortType(),dto.getCustType(),billType,allFlag,userBean.getUserId());
+         page = repalCustomerMapper.getCustPage(page, repalGroupMember.getRepalGroupId(),dto.getCustProperty(),dto.getSortType(),dto.getCustType(),billType,allFlag,userBean.getUserId());
          VOPage<RepalCustomerInfoVO> result = new VOPage<>(dto.getPageNum(), dto.getPageSize(), page.getTotal(), new ArrayList<>());
          if(CollUtil.isEmpty(page.getRecords())){
              return result;
@@ -159,13 +158,15 @@ public class RepalCustomerServiceImpl extends ServiceImpl<RepalCustomerMapper, R
             throw new CommonException(CodeMsg.FAILED,"暂无此权限,可联系超级管理员在我的-成员管理页面开通");
         }
         //查组织id
-        ThirdPartyAccount thirdPartyAccount = thirdPartyAccountService.getOne(Wrappers.lambdaQuery(ThirdPartyAccount.class).eq(ThirdPartyAccount::getUserId,userBean.getUserId()).eq(ThirdPartyAccount::getAppId,0).eq(ThirdPartyAccount::getDeleted, Dict.DeletedStatusEnunm.否.getCode()),false);
-        if(ObjectUtil.isNull(thirdPartyAccount)){
+        RepalGroupMember repalGroupMember = repalGroupMemberService.getOne(Wrappers.lambdaQuery(RepalGroupMember.class)
+                .eq(RepalGroupMember::getUserId,userBean.getUserId())
+                .eq(RepalGroupMember::getDeleted,Dict.DeletedStatusEnunm.否.getCode()),false);
+        if(ObjectUtil.isNull(repalGroupMember)){
             throw new CommonException(CodeMsg.FAILED,"您还未加入该组织,请联系超级管理员");
         }
          RepalCustomer repalCustomer = new RepalCustomer();
          BeanUtils.copyProperties(dto,repalCustomer);
-         repalCustomer.setRepalGroupId(thirdPartyAccount.getGroupId());
+         repalCustomer.setRepalGroupId(repalCustomer.getRepalGroupId());
          //校验非空字段
          if(StrUtil.isBlank(dto.getCustName())){
              throw new CommonException(CodeMsg.FAILED,"客户名不能为空");

+ 22 - 8
src/main/java/com/winhc/repal/service/impl/RepalRemindHistoryServiceImpl.java

@@ -5,7 +5,6 @@ import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -72,6 +71,8 @@ public class RepalRemindHistoryServiceImpl extends ServiceImpl<RepalRemindHistor
     private RepalBookService repalBookService;
     @Autowired
     private RepalRolePermissionService repalRolePermissionService;
+    @Autowired
+    private RepalGroupMemberService repalGroupMemberService;
 
     @Override
     public RepalBillRemindUnReadVO getRemindUnReadVO(List<RepalBill> repalBills,Long userId) {
@@ -280,9 +281,11 @@ public class RepalRemindHistoryServiceImpl extends ServiceImpl<RepalRemindHistor
             }
         }else if(Dict.COUNT_QUERY_ENUM.用户.getCode().equals(dto.getQueryType())){
             //用户->组织->客户s->账款s
-            ThirdPartyAccount thirdPartyAccount = thirdPartyAccountService.getOne(Wrappers.lambdaQuery(ThirdPartyAccount.class).eq(ThirdPartyAccount::getUserId,userBean.getUserId()).eq(ThirdPartyAccount::getAppId,0).eq(ThirdPartyAccount::getDeleted, Dict.DeletedStatusEnunm.否.getCode()),false);
-            if(thirdPartyAccount!=null){
-                List<RepalCustomer> repalCustomers = repalCustomerService.list(Wrappers.lambdaQuery(RepalCustomer.class).eq(RepalCustomer::getRepalGroupId,thirdPartyAccount.getGroupId()).eq(RepalCustomer::getDeleted,Dict.DeletedStatusEnunm.否.getCode()));
+            RepalGroupMember repalGroupMember = repalGroupMemberService.getOne(Wrappers.lambdaQuery(RepalGroupMember.class)
+                    .eq(RepalGroupMember::getUserId,userBean.getUserId())
+                    .eq(RepalGroupMember::getDeleted,Dict.DeletedStatusEnunm.否.getCode()),false);
+            if(repalGroupMember!=null){
+                List<RepalCustomer> repalCustomers = repalCustomerService.list(Wrappers.lambdaQuery(RepalCustomer.class).eq(RepalCustomer::getRepalGroupId,repalGroupMember.getRepalGroupId()).eq(RepalCustomer::getDeleted,Dict.DeletedStatusEnunm.否.getCode()));
                 List<RepalBill> repalBills = repalBillService.list(Wrappers.lambdaQuery(RepalBill.class).in(RepalBill::getCustomerId,repalCustomers.stream().map(RepalCustomer::getCustId).collect(Collectors.toList())).eq(RepalBill::getDeleted, Dict.DeletedStatusEnunm.否.getCode()));
                 for(RepalBill repalBill:repalBills){
                     RepalRemindReadInfo repalRemindReadInfo = repalRemindReadInfoService.getReadInfoByUserId(userBean.getUserId(), dto.getRepalBillId(), repalBill.getRepalBookId());
@@ -364,6 +367,9 @@ public class RepalRemindHistoryServiceImpl extends ServiceImpl<RepalRemindHistor
             }
             //客户维度多账款
             List<RepalBill> repalBills = repalBillService.list(Wrappers.lambdaQuery(RepalBill.class).eq(RepalBill::getCustomerId,dto.getCustId()).eq(RepalBill::getDeleted, Dict.DeletedStatusEnunm.否.getCode()));
+            if(CollUtil.isEmpty(repalBills)){
+                return new VOPage<>();
+            }
             qw.in(RepalRemindHistory::getRepalBillId,repalBills.stream().map(RepalBill::getId).collect(Collectors.toList()));
             Map<String,RepalCustomer> repalCustomerMap = repalCustomerService.list(Wrappers.lambdaQuery(RepalCustomer.class).in(RepalCustomer::getCustId,repalBills.stream().map(RepalBill::getCustomerId).collect(Collectors.toList()))).stream().collect(Collectors.toMap(RepalCustomer::getCustName, Function.identity()));
             IPage<RepalRemindHistory> pageAccountRemindHistory = page(new Page<>(pageNum, pageSize), qw);
@@ -402,11 +408,19 @@ public class RepalRemindHistoryServiceImpl extends ServiceImpl<RepalRemindHistor
             }
         }else if(Dict.COUNT_QUERY_ENUM.用户.getCode().equals(dto.getQueryType())){
             //用户->组织->客户s->账款s
-            ThirdPartyAccount thirdPartyAccount = thirdPartyAccountService.getOne(Wrappers.lambdaQuery(ThirdPartyAccount.class).eq(ThirdPartyAccount::getUserId,userBean.getUserId()).eq(ThirdPartyAccount::getAppId,0).eq(ThirdPartyAccount::getDeleted, Dict.DeletedStatusEnunm.否.getCode()),false);
-            if(thirdPartyAccount!=null){
-                List<RepalCustomer> repalCustomers = repalCustomerService.list(Wrappers.lambdaQuery(RepalCustomer.class).eq(RepalCustomer::getRepalGroupId,thirdPartyAccount.getGroupId()).eq(RepalCustomer::getDeleted,Dict.DeletedStatusEnunm.否.getCode()));
+            RepalGroupMember repalGroupMember = repalGroupMemberService.getOne(Wrappers.lambdaQuery(RepalGroupMember.class)
+                    .eq(RepalGroupMember::getUserId,userBean.getUserId())
+                    .eq(RepalGroupMember::getDeleted,Dict.DeletedStatusEnunm.否.getCode()),false);
+            if(repalGroupMember!=null){
+                List<RepalCustomer> repalCustomers = repalCustomerService.list(Wrappers.lambdaQuery(RepalCustomer.class).eq(RepalCustomer::getRepalGroupId,repalGroupMember.getRepalGroupId()).eq(RepalCustomer::getDeleted,Dict.DeletedStatusEnunm.否.getCode()));
+                if(CollUtil.isEmpty(repalCustomers)){
+                    return new VOPage<>();
+                }
                 List<RepalBill> repalBills = repalBillService.list(Wrappers.lambdaQuery(RepalBill.class).in(RepalBill::getCustomerId,repalCustomers.stream().map(RepalCustomer::getCustId).collect(Collectors.toList())).eq(RepalBill::getDeleted, Dict.DeletedStatusEnunm.否.getCode()));
-                Map<String,RepalCustomer> repalCustomerMap = repalCustomerService.list(Wrappers.lambdaQuery(RepalCustomer.class).in(RepalCustomer::getCustId,repalBills.stream().map(RepalBill::getCustomerId).collect(Collectors.toList()))).stream().collect(Collectors.toMap(RepalCustomer::getCustName, Function.identity()));
+                if(CollUtil.isEmpty(repalBills)){
+                    return new VOPage<>();
+                }
+                Map<String,RepalCustomer> repalCustomerMap = repalCustomers.stream().collect(Collectors.toMap(RepalCustomer::getCustName, Function.identity()));
                 qw.in(RepalRemindHistory::getRepalBillId,repalBills.stream().map(RepalBill::getId).collect(Collectors.toList()));
                 qw.exists(!allFlag,"select 1 from REPAL_CUST_CHARGE_REL C WHERE C.CUST_ID = REPAL_REMIND_HISTORY.CUST_ID AND C.MEMBER_USER_ID = "+userBean.getUserId());
                 IPage<RepalRemindHistory> pageAccountRemindHistory = page(new Page<>(pageNum, pageSize), qw);