From 74d80f67e70666dbd38b1f0b5e4c0c7772fa5b8c Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 18 九月 2023 15:03:50 +0800
Subject: [PATCH] 休bug

---
 server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java |   46 +++++++++++++++++++++++++++++++---------------
 1 files changed, 31 insertions(+), 15 deletions(-)

diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java
index e82e992..9a62f75 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java
@@ -13,7 +13,9 @@
 import com.doumee.dao.system.model.SystemRole;
 import com.doumee.dao.system.model.SystemUser;
 import com.doumee.dao.system.model.SystemUserRole;
+import com.doumee.dao.system.vo.SystemUserListVO;
 import com.doumee.service.business.CompanyUserService;
+import com.doumee.service.system.SystemRoleService;
 import com.github.yulichang.base.mapper.MPJJoinMapper;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.commons.lang3.StringUtils;
@@ -32,6 +34,9 @@
     @Autowired
     private SystemUserJoinMapper systemUserJoinMapper;
 
+    @Autowired
+    private SystemRoleService systemRoleService;
+
 
     @Override
     public PageData<CompanyUserDTO> findPage(PageWrap<CompanyUserQueryDTO> pageWrap) {
@@ -41,21 +46,28 @@
         Utils.MP.blankToNull(pageWrap.getModel());
         mpjJoinMapper.selectAll(SystemUser.class)
                     .selectAs(Company::getName,CompanyUserDTO::getCompanyName)
-                    .selectAs(SystemRole::getId,CompanyUserDTO::getRoleId)
-                    .selectAs(SystemRole::getCode,CompanyUserDTO::getRoleCode)
-                    .selectAs(SystemRole::getName,CompanyUserDTO::getRoleName)
-                    .selectAs(SystemRole::getType,CompanyUserDTO::getRoleType)
-                    .leftJoin(SystemUserRole.class,SystemUserRole::getUserId,SystemUser::getId)
-                    .leftJoin(SystemRole.class,SystemRole::getId,SystemUserRole::getRoleId)
+//                    .selectAs(SystemRole::getId,CompanyUserDTO::getRoleId)
+//                    .selectAs(SystemRole::getCode,CompanyUserDTO::getRoleCode)
+//                    .selectAs(SystemRole::getName,CompanyUserDTO::getRoleName)
+//                    .selectAs(SystemRole::getType,CompanyUserDTO::getRoleType)
+//                    .leftJoin(SystemUserRole.class,SystemUserRole::getUserId,SystemUser::getId)
+//                    .leftJoin(SystemRole.class,SystemRole::getId,SystemUserRole::getRoleId)
                     .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
                     .eq(SystemUser::getType, pageWrap.getModel().getType())
                     .eq(Objects.nonNull(pageWrap.getModel().getStatus()),SystemUser::getStatus,pageWrap.getModel().getStatus())
                     .like(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Company::getName,pageWrap.getModel().getCompanyName())
-                    .like(StringUtils.isNotBlank(pageWrap.getModel().getKeyWords()),SystemUser::getUsername,pageWrap.getModel().getKeyWords())
-                    .or()
-                    .like(StringUtils.isNotBlank(pageWrap.getModel().getKeyWords()),SystemUser::getRealname,pageWrap.getModel().getKeyWords());
+                    .and(StringUtils.isNotBlank(pageWrap.getModel().getKeyWords()),wapper ->{wapper.like(SystemUser::getUsername,pageWrap.getModel().getKeyWords())
+                            .or().like(SystemUser::getRealname,pageWrap.getModel().getKeyWords());})
+                    .orderByDesc(SystemUser::getCreateTime);
 
         IPage<CompanyUserDTO> companyUserDTOIPage = systemUserJoinMapper.selectJoinPage(page, CompanyUserDTO.class, mpjJoinMapper);
+        if(Constants.equalsInteger(pageWrap.getModel().getType(),Constants.ONE) && companyUserDTOIPage.getRecords()!=null){
+            for (CompanyUserDTO user : companyUserDTOIPage.getRecords()) {
+                // 鏌ヨ鐢ㄦ埛瑙掕壊鍒楄〃
+                user.setRoles(systemRoleService.findByUserId(user.getId()));
+            }
+        }
+
         return PageData.from(companyUserDTOIPage);
     }
 
@@ -64,17 +76,21 @@
         MPJLambdaWrapper<SystemUser> mpjJoinMapper = new MPJLambdaWrapper<>();
         mpjJoinMapper.selectAll(SystemUser.class)
                 .selectAs(Company::getName,CompanyUserDTO::getCompanyName)
-                .selectAs(SystemRole::getId,CompanyUserDTO::getRoleId)
-                .selectAs(SystemRole::getCode,CompanyUserDTO::getRoleCode)
-                .selectAs(SystemRole::getName,CompanyUserDTO::getRoleName)
-                .selectAs(SystemRole::getType,CompanyUserDTO::getRoleType)
-                .leftJoin(SystemUserRole.class,SystemUserRole::getUserId,SystemUser::getId)
-                .leftJoin(SystemRole.class,SystemRole::getId,SystemUserRole::getRoleId)
+//                .selectAs(SystemRole::getId,CompanyUserDTO::getRoleId)
+//                .selectAs(SystemRole::getCode,CompanyUserDTO::getRoleCode)
+//                .selectAs(SystemRole::getName,CompanyUserDTO::getRoleName)
+//                .selectAs(SystemRole::getType,CompanyUserDTO::getRoleType)
+//                .leftJoin(SystemUserRole.class,SystemUserRole::getUserId,SystemUser::getId)
+//                .leftJoin(SystemRole.class,SystemRole::getId,SystemUserRole::getRoleId)
                 .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
                 .eq(SystemUser::getType, Constants.ONE)
                 .eq(SystemUser::getId,companyUserDTO.getId());
 
         CompanyUserDTO companyUserDTOIPage = systemUserJoinMapper.selectJoinOne(CompanyUserDTO.class, mpjJoinMapper);
+        if(companyUserDTOIPage!=null && Constants.equalsInteger(companyUserDTOIPage.getType(),Constants.ONE) ){
+                // 鏌ヨ鐢ㄦ埛瑙掕壊鍒楄〃
+            companyUserDTOIPage.setRoles(systemRoleService.findByUserId(companyUserDTOIPage.getId()));
+        }
         return companyUserDTOIPage;
     }
 

--
Gitblit v1.9.3