From 5d745c2c8854d2c1e94e5ee9004d5219681f6d7c Mon Sep 17 00:00:00 2001 From: 石广澎 <shiguangpeng@163.com> Date: 星期五, 29 十二月 2023 11:02:50 +0800 Subject: [PATCH] 增加图片验证码和登录日志 --- consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java | 165 +++++++++++++++++++++++++++---------------------------- 1 files changed, 81 insertions(+), 84 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 cfb4b42..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 @@ -22,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; @@ -123,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); @@ -299,80 +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("鎵归噺瀵煎叆"); - // 鍔犲瘑鎵嬫満鍙� - setUserPhone(user, data.getUserPhone()); - - 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); @@ -496,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); } @@ -551,7 +546,7 @@ Long sysUserId = finSysTenantUser.getSysUserId(); List<S_role> roleList = finSysTenantUserService.getRoleBySysUserId(sysUserId); // 杩囨护浠撳簱绠$悊鍛樼殑鏄剧ず - roleList.removeIf(role -> role.getRole_name().equals("浠撳簱绠$悊鍛�")); + roleList.removeIf(role -> "浠撳簱绠$悊鍛�".equals(role.getRole_name())); HashMap<String, Object> map = new HashMap<>(); map.put("list", roleList); @@ -679,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"); @@ -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