From 1f4e7d0f73a73e7350cf5a1df279d5f30904c5d5 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期三, 06 十二月 2023 08:41:32 +0800
Subject: [PATCH] bug

---
 server/src/main/java/doumeemes/biz/system/impl/SystemUserBizImpl.java |   26 +++++++++++++++++++++++---
 1 files changed, 23 insertions(+), 3 deletions(-)

diff --git a/server/src/main/java/doumeemes/biz/system/impl/SystemUserBizImpl.java b/server/src/main/java/doumeemes/biz/system/impl/SystemUserBizImpl.java
index 65c732d..41daffd 100644
--- a/server/src/main/java/doumeemes/biz/system/impl/SystemUserBizImpl.java
+++ b/server/src/main/java/doumeemes/biz/system/impl/SystemUserBizImpl.java
@@ -10,6 +10,7 @@
 import doumeemes.core.utils.DateUtil;
 import doumeemes.core.utils.Utils;
 import doumeemes.core.utils.excel.EasyExcelUtil;
+import doumeemes.dao.business.CompanyMapper;
 import doumeemes.dao.business.CompanyPositionMapper;
 import doumeemes.dao.business.dto.AutoLoginUserDTO;
 import doumeemes.dao.business.dto.CompanyInitDataDTO;
@@ -78,6 +79,9 @@
     private DepartmentExtService departmentExtService;
     @Autowired
     private CompanyUserExtMapper companyUserExtMapper;
+
+    @Autowired
+    private CompanyMapper companyMapper;
 
     @Override
     public void deleteById(Integer id) {
@@ -162,6 +166,18 @@
         if(plansList == null || plansList.size()==0){
             throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "瀵煎叆鏁版嵁鍐呭鏈夎锛�");
         }
+        //娣诲姞浼佷笟鍛樺伐鍏宠仈鍏崇郴
+        CompanyUser cuw = new CompanyUser();
+        cuw.setDeleted(Constants.ZERO);
+        cuw.setRootDepartId(user.getRootDepartment().getId());
+        Company company = companyMapper.selectById(user.getCompany().getId());
+        if(company.getOpenUserNum() > 0){
+            //浜烘暟闄愬埗杈撳叆0锛岃〃绀轰笉闄愬埗浜烘暟
+            if(companyUserExtMapper.selectCount(new QueryWrapper<>(cuw)) + plansList.size() > company.getOpenUserNum() ){
+                throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛鏁伴噺瓒呰繃璐拱鏁伴噺锛岃鑱旂郴涓氬姟缁忕悊缁喘!");
+            }
+        }
+
         CompanyPosition cp = new CompanyPosition();
         cp.setDeleted(Constants.ZERO);
         cp.setCompanyId(user.getCompany().getId());
@@ -367,6 +383,9 @@
             cu.setUserId(userId);
         }
         companyUserService.create(cu);
+        CompanyUserExtListVO userModel = new CompanyUserExtListVO();
+        BeanUtils.copyProperties(cu, userModel);
+        com.setUserModel(userModel);
         if(StringUtils.equals(userParam.getManager(),Constants.ONE+"")){
             //濡傛灉鏄鐞嗗憳瑙掕壊锛岀粦瀹氶粯璁よ鑹�
             SystemRole sr = new SystemRole();
@@ -546,10 +565,11 @@
             cu.setDeleted(Constants.ZERO);
             cu.setRootDepartId(loginUser.getRootDepartment().getId());
             //闄愬埗浜烘暟
-            int limitUserNum = Constants.formatIntegerNum(loginUser.getCompany().getOpenUserNum());
-            if(limitUserNum > 0){
+//            int limitUserNum = Constants.formatIntegerNum(loginUser.getCompany().getOpenUserNum());
+            Company company = companyMapper.selectById(loginUser.getCompany().getId());
+            if(company.getOpenUserNum() > 0){
                 //浜烘暟闄愬埗杈撳叆0锛岃〃绀轰笉闄愬埗浜烘暟
-                if(companyUserExtMapper.selectCount(new QueryWrapper<>(cu)) +1 > limitUserNum ){
+                if(companyUserExtMapper.selectCount(new QueryWrapper<>(cu)) +1 > company.getOpenUserNum() ){
                     throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鐢ㄦ埛鏁伴噺瓒呰繃璐拱鏁伴噺锛岃鑱旂郴涓氬姟缁忕悊缁喘!");
                 }
             }

--
Gitblit v1.9.3