From d7fe8ae3888c8e2b1eea3c1e3769be0d42a21cc9 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期一, 16 十月 2023 09:03:47 +0800 Subject: [PATCH] Merge branch '1.0.3' of http://139.186.142.91:10010/r/productDev/dmMes into 1.0.3 --- server/src/main/java/doumeemes/biz/system/impl/SystemUserBizImpl.java | 49 ++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 38 insertions(+), 11 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 29f3f26..f6ea8f1 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()); @@ -213,10 +229,13 @@ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "瀵逛笉璧凤紝绗��"+index+"銆戣銆愭墜鏈哄彿銆戝憳宸ヨ处鍙峰凡缁忓瓨锛�"); } cuu.setPhone(null); - cuu.setCode(p.getNo()); - if(companyUserService.findOne(cuu) !=null){ - throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "瀵逛笉璧凤紝绗��"+index+"銆戣銆愬伐鍙枫�戝凡缁忓瓨锛�"); + if (StringUtils.isNotBlank(p.getNo())){ + cuu.setCode(p.getNo()); + if(companyUserService.findOne(cuu) !=null){ + throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "瀵逛笉璧凤紝绗��"+index+"銆戣銆愬伐鍙枫�戝凡缁忓瓨锛�"); + } } + SystemUser systemUser = new SystemUser(); systemUser.setUsername(cu.getPhone()); systemUser.setDeleted(Boolean.FALSE); @@ -325,10 +344,12 @@ cu.setDeleted(Constants.ZERO); cu.setCreateTime(date); cu.setCode("NO."+userParam.getPhone()); + cu.setIsMaster(com.getIsNew());//鏄惁涓昏处鍙� cu.setPhoneAuthStatus(Constants.ZERO+""); cu.setQrcodeid(barcodeParamExtService.getByType(com.getId(),com.getRootDepartment().getId(),Constants.BARCODEPARAM_TYPE.user)+""); cu.setComDepartId(com.getRootDepartment().getId()); cu.setDepartmentId(com.getRootDepartment().getId()); + cu.setOrigin(userParam.getOrigin()); if(userParam.getOrigin() == Constants.COMPANY_ORIGIN.lingyang){ cu.setLingyangUserid(userParam.getUserId()); }else if(userParam.getOrigin() == Constants.COMPANY_ORIGIN.edgp){ @@ -463,7 +484,6 @@ if(srList!=null && srList.size()>0){ List<SystemUserRole> urList = new ArrayList<>(); for(SystemRole tr :srList){ - SystemUserRole userRole = new SystemUserRole(); userRole.setUserId(cu.getUserId()); userRole.setDeleted(false); @@ -473,7 +493,7 @@ userRole.setCreateTime(userRole.getInvalidTime()); userRole.setRemark("缇氱緤浼佷笟鐢熸垚鑷姩瀵煎叆"); urList.add(userRole); -// systemUserRoleMapper.insert(userRole); +// systemUserRoleMapper.insert(userRole); } systemRoleMapper.insertRoleUserBatch(urList); } @@ -542,10 +562,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(),"鐢ㄦ埛鏁伴噺瓒呰繃璐拱鏁伴噺锛岃鑱旂郴涓氬姟缁忕悊缁喘!"); } } @@ -569,10 +590,14 @@ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "鎵嬫満鍙峰凡瀛樺湪锛�"); } } - cu.setCode(systemUser.getEmpNo()); - if(companyUserService.findOne(cu) !=null){ - throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "宸ュ彿宸插瓨鍦�"); + //瀛樺湪宸ュ彿闇�瑕佸敮涓�鍒ゆ柇 + if (StringUtils.isNotBlank(systemUser.getEmpNo())){ + cu.setCode(systemUser.getEmpNo()); + if(companyUserService.findOne(cu) !=null){ + throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "宸ュ彿宸插瓨鍦�"); + } } + cu.setUserId(userId); cu.setComDepartId(loginUser.getComDepartment().getId()); cu.setCreateUser(loginUser.getId()); @@ -688,6 +713,8 @@ if (codeUser != null && !codeUser.getId().equals(cu.getId())) { throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "宸ュ彿宸插瓨鍦�"); } + }else if (StringUtils.isBlank(systemUser.getEmpNo())) { + u.setCode(systemUser.getEmpNo()); } u.setId(cu.getId()); u.setName(systemUser.getRealname()); -- Gitblit v1.9.3