From fd95223d9703b9c038ed3c782474c885052dda08 Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期五, 22 十二月 2023 17:05:25 +0800 Subject: [PATCH] 代码整理 --- consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java | 249 ++++++++++++++++++++++++------------------------- 1 files changed, 123 insertions(+), 126 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java index 7ee165a..8dea44c 100644 --- a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java +++ b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java @@ -12,6 +12,7 @@ import java.util.Set; import org.apache.commons.compress.utils.Lists; +import org.apache.commons.lang3.ObjectUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.GetMapping; @@ -21,11 +22,12 @@ import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; -import com.alibaba.excel.EasyExcel; +import com.alibaba.excel.EasyExcelFactory; import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.event.AnalysisEventListener; import com.alibaba.excel.exception.ExcelDataConvertException; import com.consum.base.BaseController; +import com.consum.base.core.type.StatesType; import com.consum.base.core.utils.CommonUtil; import com.consum.base.core.utils.MapperUtil; import com.consum.base.core.utils.PageUtil; @@ -37,6 +39,7 @@ import com.consum.base.pojo.response.FinSysTenantUserVO; import com.consum.base.pojo.response.FinSysTenantVO; import com.consum.base.pojo.response.UserVO; +import com.consum.base.service.BaseWarehouseManagerService; import com.consum.base.service.FinSysTenantDepartmentService; import com.consum.base.service.FinSysTenantService; import com.consum.base.service.FinSysTenantUserService; @@ -87,16 +90,15 @@ private FinSysTenantDepartmentService finSysTenantDepartmentService; @Autowired - public void setUserService(UserServiceImpl userService) { - this.userService = userService; - } + private BaseWarehouseManagerService baseWarehouseManagerService; @Autowired public FinSysTenantUserController(FinSysTenantService finSysTenantService, - FinSysTenantUserService finSysTenantUserService, RoleServiceImpl roleService) { + FinSysTenantUserService finSysTenantUserService, RoleServiceImpl roleService, UserServiceImpl userService) { this.finSysTenantUserService = finSysTenantUserService; this.finSysTenantService = finSysTenantService; this.roleService = roleService; + this.userService = userService; } /** @@ -122,13 +124,6 @@ String tel = finSysTenantUser.getUserPhone() != null ? AESUtils.decryptStrAES(finSysTenantUser.getUserPhone(), PlatformRSAUtils.AES_KEY) : null; finSysTenantUser.setUserPhone(StringUtils.isNotEmpty(tel) ? PhoneNumberUtils.maskMobile(tel) : ""); - - // 鍒楄〃涓嶉渶瑕佹煡璇㈣鑹诧紝鍙樉绀哄垪琛ㄦ墍闇�瑕佺殑淇℃伅 - /*List<S_role> list = finSysTenantUserService.getByUserId(finSysTenantUser.getSysUserId()); - StringBuilder roleStr = new StringBuilder(); - list.forEach(s_role -> roleStr.append(s_role.getRole_name()).append(" ")); - finSysTenantUser.setRoleStr(roleStr.toString()); - finSysTenantUser.setIsSupplier(finSysTenantUser.getSupplierId() != null ? "鏄�" : "鍚�");*/ } return ResponseValue.success(pager); @@ -198,13 +193,7 @@ // 鏄惁鍒犻櫎 0鏄� 1鍚� tenantUser.setIsDelete(0); tenantUser.setSysUserId(NumberGenerator.getLongSequenceNumber()); - // 鍔犲瘑鎵嬫満鍙� - String key = PlatformRSAUtils.AES_KEY; - String encPhone = ""; - if (tenantUser.getUserPhone() != null) { - encPhone = AESUtils.encryptStrAES(tenantUser.getUserPhone(), key); - } - tenantUser.setUserPhone(encPhone); + setUserPhone(tenantUser, tenantUser.getUserPhone()); String tenantId = tenantUser.getTenantId(); FinSysTenant finSysTenant = finSysTenantService.selectById(Long.valueOf(tenantId)); tenantUser.setTenantCode(finSysTenant.getCode()); @@ -216,9 +205,19 @@ tenantUser.setTenantCode(sysInfo.getTenantCode()); tenantUser.setTenantId(sysInfo.getTenantId()); // 杩愮淮绠$悊 - tenantUser.setSysDeptId(2l); + tenantUser.setSysDeptId(2L); } + } + + private void setUserPhone(FinSysTenantUser tenantUser, String userPhone) { + // 鍔犲瘑鎵嬫満鍙� + String key = PlatformRSAUtils.AES_KEY; + String encPhone = ""; + if (StringUtils.isNotEmpty(userPhone)) { + encPhone = AESUtils.encryptStrAES(userPhone, key); + } + tenantUser.setUserPhone(encPhone); } private S_user_core getsUserCore(FinSysTenantUser tenantUser) { @@ -294,82 +293,81 @@ List<S_role> roles = this.roleService.select(new S_role()); ArrayList<FinSysTenantUser> finSysTenantUsers = new ArrayList<>(); - EasyExcel.read(file.getInputStream(), ImportUserParam.class, new AnalysisEventListener<ImportUserParam>() { - @Override - public void invoke(ImportUserParam data, AnalysisContext context) { - if (StringUtils.isEmpty(data.getUserName()) || StringUtils.isEmpty(data.getUserCode()) - || StringUtils.isEmpty(data.getUserPhone()) || null == data.getSex() - || StringUtils.isEmpty(data.getEmail()) || null == data.getSeq() - || StringUtils.isEmpty(data.getRoleName())) { - throw new ImportUserParamVerifyException("鍗曞厓鏍间笉鑳戒负绌�!"); - } - // 鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず - if (finSysTenantUserService.getByUserCode(data.getUserCode()) != null) { - throw new ImportUserParamVerifyException("鍛樺伐缂栧彿涓虹┖鎴栧凡瀛樺湪!"); - } - if (data.getSex() < 1 && data.getSex() > 0) { - throw new ImportUserParamVerifyException("鎬у埆鐮佸彧鑳戒负 0 鎴� 1"); - } - FinSysTenantUser user = new FinSysTenantUser(); - user.setUserName(data.getUserName()); - user.setUserCode(data.getUserCode()); - user.setUserPhone(data.getUserPhone()); - user.setSex(data.getSex()); - user.setEmail(data.getEmail()); - user.setSeq(data.getSeq()); - user.setTenantId(tenantId); - user.setTenantCode(tenantCode); - // 璁剧疆瑙掕壊 - Optional<S_role> sRole = - roles.stream().filter(role -> role.getRole_name().equals(data.getRoleName())).findFirst(); - user.setRoleList(Arrays.asList(sRole.orElse(new S_role()).getRole_id())); - - user.setId(NumberGenerator.getLongSequenceNumber()); - user.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - user.setCreateBy(currentUser.getUser_name()); - user.setUpdateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - user.setUpdateBy(currentUser.getUser_name()); - user.setStatus(1);// 0绂佺敤 1鍚敤 - user.setIsDelete(0);// 鏄惁鍒犻櫎 0鏄� 1鍚� - user.setSysUserId(NumberGenerator.getLongSequenceNumber()); - user.setRemark("鎵归噺瀵煎叆"); - // 鍔犲瘑鎵嬫満鍙� - String key = PlatformRSAUtils.AES_KEY; - String encPhone = AESUtils.encryptStrAES(data.getUserPhone(), key); - user.setUserPhone(encPhone); - - user.setIsDelete(1); - // 鎬庝箞鑾峰彇宸︿晶鏈烘瀯鏍戞暟鎹� - user.setSysDeptId(3L); // 瀵瑰簲骞冲彴鏈烘瀯id 榛樿涓哄钩鍙扮鐞� - finSysTenantUsers.add(user); - } - - @Override - public void doAfterAllAnalysed(AnalysisContext context) { - - } - - @Override - public void onException(Exception exception, AnalysisContext context) throws Exception { - if (exception != null) { - // 濡傛灉鏄煇涓�涓崟鍏冩牸鐨勮浆鎹㈠紓甯� 鑳借幏鍙栧埌鍏蜂綋琛屽彿 灏佽鏃跺紓甯� - if (exception instanceof ExcelDataConvertException) { - ExcelDataConvertException excelDataConvertException = (ExcelDataConvertException)exception; - logger.error("绗瑊}琛岋紝绗瑊}鍒楄В鏋愬紓甯革紝鏁版嵁涓�:{}", excelDataConvertException.getRowIndex(), - excelDataConvertException.getColumnIndex() + 1, - excelDataConvertException.getCellData().getStringValue()); - throw new IllegalStateException("绗�" + (excelDataConvertException.getRowIndex() + 1) + "琛岋紝绗�" - + (excelDataConvertException.getColumnIndex() + 1) + "鍒楄В鏋愬紓甯革紝寮傚父鏁版嵁涓�:[ " - + excelDataConvertException.getCellData().getStringValue() + " ]"); + EasyExcelFactory + .read(file.getInputStream(), ImportUserParam.class, new AnalysisEventListener<ImportUserParam>() { + @Override + public void invoke(ImportUserParam data, AnalysisContext context) { + if (StringUtils.isEmpty(data.getUserName()) || StringUtils.isEmpty(data.getUserCode()) + || StringUtils.isEmpty(data.getUserPhone()) || null == data.getSex() + || StringUtils.isEmpty(data.getEmail()) || null == data.getSeq() + || StringUtils.isEmpty(data.getRoleName())) { + throw new ImportUserParamVerifyException("鍗曞厓鏍间笉鑳戒负绌�!"); } - if (exception instanceof ImportUserParamVerifyException) { - throw new IllegalStateException("绗�" + context.readSheetHolder().getRowIndex() + "琛�, 瑙f瀽閿欒:[ " - + exception.getMessage() + " ]"); + // 鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず + if (finSysTenantUserService.getByUserCode(data.getUserCode()) != null) { + throw new ImportUserParamVerifyException("鍛樺伐缂栧彿涓虹┖鎴栧凡瀛樺湪!"); } - throw exception; + if (data.getSex() < 1 && data.getSex() > 0) { + throw new ImportUserParamVerifyException("鎬у埆鐮佸彧鑳戒负 0 鎴� 1"); + } + FinSysTenantUser user = new FinSysTenantUser(); + user.setUserName(data.getUserName()); + user.setUserCode(data.getUserCode()); + user.setUserPhone(data.getUserPhone()); + user.setSex(data.getSex()); + user.setEmail(data.getEmail()); + user.setSeq(data.getSeq()); + user.setTenantId(tenantId); + user.setTenantCode(tenantCode); + // 璁剧疆瑙掕壊 + Optional<S_role> sRole = + roles.stream().filter(role -> role.getRole_name().equals(data.getRoleName())).findFirst(); + user.setRoleList(Arrays.asList(sRole.orElse(new S_role()).getRole_id())); + + user.setId(NumberGenerator.getLongSequenceNumber()); + user.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); + user.setCreateBy(currentUser.getUser_name()); + user.setUpdateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); + user.setUpdateBy(currentUser.getUser_name()); + user.setStatus(1);// 0绂佺敤 1鍚敤 + user.setIsDelete(0);// 鏄惁鍒犻櫎 0鏄� 1鍚� + user.setSysUserId(NumberGenerator.getLongSequenceNumber()); + user.setRemark("鎵归噺瀵煎叆"); + // 鍔犲瘑鎵嬫満鍙� + setUserPhone(user, data.getUserPhone()); + + user.setIsDelete(1); + // 鎬庝箞鑾峰彇宸︿晶鏈烘瀯鏍戞暟鎹� + user.setSysDeptId(3L); // 瀵瑰簲骞冲彴鏈烘瀯id 榛樿涓哄钩鍙扮鐞� + finSysTenantUsers.add(user); } - } - }).sheet().doRead(); + + @Override + public void doAfterAllAnalysed(AnalysisContext context) { + + } + + @Override + public void onException(Exception exception, AnalysisContext context) throws Exception { + if (exception != null) { + // 濡傛灉鏄煇涓�涓崟鍏冩牸鐨勮浆鎹㈠紓甯� 鑳借幏鍙栧埌鍏蜂綋琛屽彿 灏佽鏃跺紓甯� + if (exception instanceof ExcelDataConvertException) { + ExcelDataConvertException excelDataConvertException = (ExcelDataConvertException)exception; + logger.error("绗瑊}琛岋紝绗瑊}鍒楄В鏋愬紓甯革紝鏁版嵁涓�:{}", excelDataConvertException.getRowIndex(), + excelDataConvertException.getColumnIndex() + 1, + excelDataConvertException.getCellData().getStringValue()); + throw new IllegalStateException("绗�" + (excelDataConvertException.getRowIndex() + 1) + "琛岋紝绗�" + + (excelDataConvertException.getColumnIndex() + 1) + "鍒楄В鏋愬紓甯革紝寮傚父鏁版嵁涓�:[ " + + excelDataConvertException.getCellData().getStringValue() + " ]"); + } + if (exception instanceof ImportUserParamVerifyException) { + throw new IllegalStateException("绗�" + context.readSheetHolder().getRowIndex() + "琛�, 瑙f瀽閿欒:[ " + + exception.getMessage() + " ]"); + } + throw exception; + } + } + }).sheet().doRead(); insertUserAndUserCoreBatch(finSysTenantUsers); @@ -421,12 +419,7 @@ if (tenantUser == null) { return ResponseValue.error("鍙傛暟涓虹┖"); } - String key = PlatformRSAUtils.AES_KEY; - String encPhone = ""; - if (tenantUser.getUserPhone() != null) { - encPhone = AESUtils.encryptStrAES(tenantUser.getUserPhone(), key); - } - tenantUser.setUserPhone(encPhone); + setUserPhone(tenantUser, tenantUser.getUserPhone()); // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER finSysTenantUserService.update(tenantUser); // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE @@ -442,8 +435,12 @@ // 鍏堝垹闄ゅ啀娣诲姞 if (!CollectionUtils.isEmpty(list)) { finSysTenantUserService.execDelRoleUserList(sysUserId); + // 鍒犻櫎搴撶鍛樹俊鎭褰� + list.stream().filter(item -> "浠撳簱绠$悊鍛�".equals(item.getRole_name())).findFirst() + .ifPresent(item -> baseWarehouseManagerService.deleteMangerBySysUserId(sysUserId)); } if (!CollectionUtils.isEmpty(roleList)) { + // 鍥犱负涓嶇煡閬撹鐢ㄦ埛闇�瑕佺鐞嗛偅涓粨搴� 鏁呬笉鏂板浠撳簱绠$悊鍛樹俊鎭紝鍙坊鍔犺鑹� finSysTenantUserService.execInsertRoleUserList(roleList, sysUserId); } this.getFinSysTenantUserCache().remove(sysUserId.toString()); @@ -494,7 +491,7 @@ finSysTenantUser.setStatus(user.getStatus()); finSysTenantUserService.update(finSysTenantUser); // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE - S_user_core userCore = buildUpdateUserCore(tenantUser); + S_user_core userCore = buildUpdateUserCore(finSysTenantUser); this.userService.update(userCore); return ResponseValue.success(1); } @@ -548,6 +545,9 @@ finSysTenantUser.setUserPhone(phone); Long sysUserId = finSysTenantUser.getSysUserId(); List<S_role> roleList = finSysTenantUserService.getRoleBySysUserId(sysUserId); + // 杩囨护浠撳簱绠$悊鍛樼殑鏄剧ず + roleList.removeIf(role -> "浠撳簱绠$悊鍛�".equals(role.getRole_name())); + HashMap<String, Object> map = new HashMap<>(); map.put("list", roleList); map.put("data", finSysTenantUser); @@ -584,19 +584,15 @@ // 鏌ヨ鐖剁被鐨刼rgcode 闇�瑕佸皢鑷繁鐨刼rg鍏堟煡鍑烘潵 鍐嶆牴鎹畃arentid 鏌ョ埗绫� String tenantId = sysInfo.getTenantId(); - if (tenantId != null && !tenantId.equals("")) { - List<FinSysTenant> select = finSysTenantService.select(new FinSysTenant(Long.valueOf(tenantId))); - if (select != null && select.size() > 0) { - FinSysTenant finSysTenant = select.get(0); - if (finSysTenant != null && finSysTenant.getParentId() != null) { - List<FinSysTenant> parents = - finSysTenantService.select(new FinSysTenant(finSysTenant.getParentId())); - if (parents != null && parents.size() > 0) { - sysInfo.setParentCode(parents.get(0).getCode()); - } + if (StringUtils.isNotEmpty(tenantId)) { + FinSysTenant finSysTenant = finSysTenantService.get(new FinSysTenant(Long.valueOf(tenantId))); + if (finSysTenant != null && finSysTenant.getParentId() != null) { + FinSysTenant parentTenant = finSysTenantService.get(new FinSysTenant(finSysTenant.getParentId())); + if (ObjectUtils.isNotEmpty(parentTenant)) { + sysInfo.setParentCode(parentTenant.getCode()); } - } + } } return ResponseValue.success(sysInfo); @@ -623,10 +619,14 @@ // 閫夋嫨鐨勬潈闄� List<Long> roleList = user.getRoleList(); // 鍏堝垹闄ゅ啀娣诲姞 - if (list != null && list.size() > 0) { - finSysTenantUserService.execDelRoleUserList(user.getSysUserId()); + if (!CollectionUtils.isEmpty(list)) { + Long sysUserId = user.getSysUserId(); + finSysTenantUserService.execDelRoleUserList(sysUserId); + // 鍒犻櫎搴撶鍛樹俊鎭褰� + list.stream().filter(item -> "浠撳簱绠$悊鍛�".equals(item.getRole_name())).findFirst() + .ifPresent(item -> baseWarehouseManagerService.deleteMangerBySysUserId(sysUserId)); } - if (roleList != null && roleList.size() > 0) { + if (!CollectionUtils.isEmpty(roleList)) { finSysTenantUserService.execInsertRoleUserList(roleList, user.getSysUserId()); } return ResponseValue.success(1); @@ -649,7 +649,7 @@ } // 鑾峰彇杩愮淮绠$悊 List<S_dept> depts = this.finSysTenantUserService.selectDept(roleName); - if (depts == null || depts.size() == 0) { + if (CollectionUtils.isEmpty(depts)) { return ResponseValue.error(roleName + "鐨勮鑹蹭笉瀛樺湪"); } // 鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず @@ -674,7 +674,7 @@ return ResponseValue.success(1); } - private Set<String> picFormatArr = new HashSet<String>() { + private final Set<String> picFormatArr = new HashSet<String>() { { add(".pjp"); add(".svgz"); @@ -710,21 +710,16 @@ return ResponseValue.error("鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); } String avatar = userParam.getAvatar(); - if (!picFormatArr.contains(avatar.substring(avatar.lastIndexOf(".")))) { + if (StringUtils.isNotEmpty(avatar) && !picFormatArr.contains(avatar.substring(avatar.lastIndexOf(".")))) { return ResponseValue.error("澶村儚鏍煎紡涓嶅厑璁�"); } FinSysTenantUser updUser = new FinSysTenantUser(); updUser.setId(sysInfo.getId()); - updUser.setAvatar(userParam.getAvatar()); + updUser.setAvatar(avatar); updUser.setEmail(userParam.getEmail()); updUser.setUserName(userParam.getUserName()); updUser.setSex(userParam.getSex()); - String encPhone = ""; - if (userParam.getUserPhone() != null) { - String key = PlatformRSAUtils.AES_KEY; - encPhone = AESUtils.encryptStrAES(userParam.getUserPhone(), key); - } - updUser.setUserPhone(encPhone); + setUserPhone(updUser, userParam.getUserPhone()); // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER finSysTenantUserService.update(updUser); // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE @@ -818,6 +813,8 @@ // 閮ㄩ棬 FinSysTenantDepartment finSysTenantDepartment = new FinSysTenantDepartment(); finSysTenantDepartment.setTenantId(agencyId); + finSysTenantDepartment.setStatus(StatesType.NORMAL.getValue()); + finSysTenantDepartment.setIsDelete(0); List<FinSysTenantDepartment> tenantDepartmentList = finSysTenantDepartmentService.select(finSysTenantDepartment); List<DepartmentVO> departmentVOList = Lists.newArrayList(); @@ -829,8 +826,8 @@ departmentVO.setName(department.getName()); departmentVO.setType("department"); - String sql = "SELECT SYS_USER_ID,USER_NAME FROM " + "fin_sys_tenant_user " - + "WHERE SYS_DEPT_ID =:deptId AND SYS_USER_ID NOT IN(SELECT MANAGER_ID FROM base_warehouse_manager)"; + String sql = "SELECT SYS_USER_ID,USER_NAME FROM fin_sys_tenant_user " + + "WHERE STATUS =1 and SYS_DEPT_ID =:deptId AND SYS_USER_ID NOT IN(SELECT MANAGER_ID FROM base_warehouse_manager)"; Map<String, Object> param = new HashMap<>(); param.put("deptId", id); List<Map<String, Object>> select = finSysTenantUserService.select(sql, param, new MapperUtil()); -- Gitblit v1.9.1