From dcdb0231034810232f2542f3865666ebf72daf11 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 30 四月 2025 16:45:34 +0800
Subject: [PATCH] sf

---
 server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java |   57 +++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 39 insertions(+), 18 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 fb23b03..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,13 +13,17 @@
 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;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
+import java.util.Objects;
 
 /**
  * @author T14
@@ -30,6 +34,9 @@
     @Autowired
     private SystemUserJoinMapper systemUserJoinMapper;
 
+    @Autowired
+    private SystemRoleService systemRoleService;
+
 
     @Override
     public PageData<CompanyUserDTO> findPage(PageWrap<CompanyUserQueryDTO> pageWrap) {
@@ -38,21 +45,29 @@
         MPJLambdaWrapper<SystemUser> mpjJoinMapper = new MPJLambdaWrapper<>();
         Utils.MP.blankToNull(pageWrap.getModel());
         mpjJoinMapper.selectAll(SystemUser.class)
-                    .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(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)
                     .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
-                    .eq(SystemUser::getType, Constants.ONE)
-                    .eq(SystemUser::getStatus,pageWrap.getModel().getStatus())
-                    .like(Company::getName,pageWrap.getModel().getCompanyName())
-                    .like(SystemUser::getUsername,pageWrap.getModel().getKeyWords())
-                    .or()
-                    .like(SystemUser::getRealname,pageWrap.getModel().getKeyWords());
+                    .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())
+                    .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);
     }
 
@@ -60,17 +75,22 @@
     public CompanyUserDTO findOne(CompanyUserDTO companyUserDTO) {
         MPJLambdaWrapper<SystemUser> mpjJoinMapper = new MPJLambdaWrapper<>();
         mpjJoinMapper.selectAll(SystemUser.class)
-                .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(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)
                 .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;
     }
 
@@ -78,6 +98,7 @@
     public List<CompanyUserDTO> findListByCompanyID(CompanyUserDTO companyUserDTO) {
         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)

--
Gitblit v1.9.3