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 | 938 ++++++++++++++++++++++++---------------------------------- 1 files changed, 390 insertions(+), 548 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 aa5fb16..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 @@ -1,65 +1,70 @@ package com.consum.base.controller; -import com.alibaba.excel.EasyExcel; -import com.alibaba.excel.annotation.ExcelProperty; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +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; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.multipart.MultipartFile; + +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; import com.consum.base.pojo.FinSysTenantUserSearchParam; import com.consum.base.pojo.FinSysTenantUserUpdParam; +import com.consum.base.pojo.ImportUserParam; +import com.consum.base.pojo.request.FinSysTenantUserParam; import com.consum.base.pojo.response.DepartmentVO; 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.FinSysTenantDepartmentServiceImpl; -import com.consum.base.service.FinSysTenantServiceImpl; -import com.consum.base.service.FinSysTenantUserServiceImpl; +import com.consum.base.service.BaseWarehouseManagerService; +import com.consum.base.service.FinSysTenantDepartmentService; +import com.consum.base.service.FinSysTenantService; +import com.consum.base.service.FinSysTenantUserService; import com.consum.model.po.FinSysTenant; import com.consum.model.po.FinSysTenantDepartment; import com.consum.model.po.FinSysTenantUser; import com.iplatform.base.ArgumentsConstants; -import com.iplatform.base.service.DeptServiceImpl; import com.iplatform.base.service.RoleServiceImpl; import com.iplatform.base.service.UserServiceImpl; import com.iplatform.base.util.PlatformRSAUtils; import com.iplatform.core.util.AESUtils; -import com.iplatform.model.po.S_config; import com.iplatform.model.po.S_dept; import com.iplatform.model.po.S_role; import com.iplatform.model.po.S_user_core; -import com.walker.db.page.GenericPager; import com.walker.infrastructure.utils.CollectionUtils; import com.walker.infrastructure.utils.DateUtils; import com.walker.infrastructure.utils.NumberGenerator; import com.walker.infrastructure.utils.PhoneNumberUtils; import com.walker.infrastructure.utils.StringUtils; import com.walker.web.ResponseValue; + import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; -import java.io.IOException; -import java.lang.reflect.Field; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.HashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import org.apache.commons.compress.utils.Lists; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.multipart.MultipartFile; /** * @Description 绯荤粺鐢ㄦ埛 @@ -73,33 +78,27 @@ private String roleName; - private FinSysTenantUserServiceImpl finSysTenantUserService; + private FinSysTenantUserService finSysTenantUserService; private UserServiceImpl userService; - private DeptServiceImpl deptService; - - private FinSysTenantServiceImpl finSysTenantService; + private FinSysTenantService finSysTenantService; private RoleServiceImpl roleService; @Autowired - private FinSysTenantDepartmentServiceImpl finSysTenantDepartmentService; - + private FinSysTenantDepartmentService finSysTenantDepartmentService; @Autowired - public void setUserService(UserServiceImpl userService) { - this.userService = userService; - } - - private S_config sConfig; + private BaseWarehouseManagerService baseWarehouseManagerService; @Autowired - public FinSysTenantUserController(FinSysTenantServiceImpl finSysTenantService, FinSysTenantUserServiceImpl finSysTenantUserService, - RoleServiceImpl roleService) { + public FinSysTenantUserController(FinSysTenantService finSysTenantService, + FinSysTenantUserService finSysTenantUserService, RoleServiceImpl roleService, UserServiceImpl userService) { this.finSysTenantUserService = finSysTenantUserService; this.finSysTenantService = finSysTenantService; this.roleService = roleService; + this.userService = userService; } /** @@ -108,78 +107,27 @@ * @Date 2023/7/11 13:59 */ @RequestMapping("/select/list") - public ResponseValue allocatedList(FinSysTenantUserSearchParam param) { + public ResponseValue allocatedList() { + FinSysTenantUserSearchParam param = CommonUtil.getObjFromReq(FinSysTenantUserSearchParam.class); + FinSysTenantUserSearchParam param2 = new FinSysTenantUserSearchParam(); + CommonUtil.copyProperties(param, param2); + param = param2; if (param.getTenantCode() == 0) { - FinSysTenantUser user = new FinSysTenantUser(); - Long id = this.getCurrentUser().getId(); - user.setSysUserId(id); - List<FinSysTenantUser> select = finSysTenantUserService.select(user); - if (select.size() > 0) { - param.setTenantCode(new Long(select.get(0).getTenantCode())); + String tenantId = this.getSysInfo().getTenantId(); + FinSysTenant finSysTenant = finSysTenantService.selectById(Long.valueOf(tenantId)); + if (finSysTenant != null) { + param.setTenantCode(Long.valueOf(finSysTenant.getCode())); } } - GenericPager<FinSysTenantUser> pager = this.finSysTenantUserService.queryAllPageUser(param); + PageUtil<FinSysTenantUserVO> pager = this.finSysTenantUserService.queryAllPageUser(param); + for (FinSysTenantUserVO finSysTenantUser : pager.getDatas()) { + String tel = finSysTenantUser.getUserPhone() != null + ? AESUtils.decryptStrAES(finSysTenantUser.getUserPhone(), PlatformRSAUtils.AES_KEY) : null; + finSysTenantUser.setUserPhone(StringUtils.isNotEmpty(tel) ? PhoneNumberUtils.maskMobile(tel) : ""); - List<FinSysTenantUserVO> resultList = Lists.newArrayList(); - List<FinSysTenantUser> datas = pager.getDatas(); - if (datas.size() > 0) { - for (FinSysTenantUser finSysTenantUser : datas) { - FinSysTenantUserVO userVO = new FinSysTenantUserVO(); - if (finSysTenantUser.getUserPhone() != null) { - // 瑙e瘑骞惰劚鏁� - String tel = null; - try { - tel = AESUtils.decryptStrAES(finSysTenantUser.getUserPhone(), PlatformRSAUtils.AES_KEY); - } catch (Exception e) { - logger.error("瑙e瘑鎵嬫満鍙峰け璐ワ紝鍘熷洜锛�" + e); - tel = null; - } - if (StringUtils.isNotEmpty(tel)) { - finSysTenantUser.setUserPhone(PhoneNumberUtils.maskMobile(tel)); - } else { - finSysTenantUser.setUserPhone(""); - } - } else { - finSysTenantUser.setUserPhone(""); - } - - // 寰幆鍘绘煡瑙掕壊 - Long sysUserId = finSysTenantUser.getSysUserId(); - if (sysUserId != null) { - List<S_role> list = finSysTenantUserService.getByUserId(sysUserId); - String roleStr = ""; - for (S_role s_role : list) { - roleStr = roleStr + s_role.getRole_name() + " "; - } - finSysTenantUser.setRoleStr(roleStr); - } - - //寰幆鏌ヨ杩愮淮鍟唅d - if (finSysTenantUser.getSupplierId() != null) { - finSysTenantUser.setIsSupplier("鏄�"); - } else { - finSysTenantUser.setIsSupplier("鍚�"); - } - BeanUtils.copyProperties(finSysTenantUser, userVO); - Long sysDeptId = finSysTenantUser.getSysDeptId(); - FinSysTenantDepartment department = finSysTenantDepartmentService.getById(sysDeptId); - if (Objects.nonNull(department)) { - userVO.setSysDeptName(department.getName()); - } - resultList.add(userVO); - } - } - - try { - Field fieldDatas = GenericPager.class.getDeclaredField("datas"); - fieldDatas.setAccessible(true); - fieldDatas.set(pager, resultList); - } catch (Exception e) { - e.printStackTrace(); } return ResponseValue.success(pager); } - @ApiOperation(value = "鏍规嵁鏈烘瀯id鏌ヨ鐢ㄦ埛", notes = "鏍规嵁鏈烘瀯id鏌ヨ鐢ㄦ埛") @ApiImplicitParam(name = "tenantId", value = "鏈烘瀯id", required = true, dataType = "Long", paramType = "query") @@ -192,7 +140,6 @@ return ResponseValue.success(result); } - /** * @Description 鏂板 * @Author wh @@ -200,65 +147,107 @@ */ @PostMapping("/add") @Transactional(rollbackFor = Exception.class) - public ResponseValue add(@RequestBody FinSysTenantUser user) { - if (user == null) { + public ResponseValue add() { + FinSysTenantUser user = CommonUtil.getObjFromReqBody(FinSysTenantUser.class); + FinSysTenantUser tenantUser = new FinSysTenantUser(); + CommonUtil.copyProperties(user, tenantUser); + + if (tenantUser == null) { return ResponseValue.error("鍙傛暟涓虹┖"); } - //鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず - if (finSysTenantUserService.getByUserCode(user.getUserCode()) != null && finSysTenantUserService.getByUserCode(user.getUserCode()) > 0) { + // 鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず + FinSysTenantUser userCode = finSysTenantUserService.getByUserCode(tenantUser.getUserCode()); + if (userCode != null) { return ResponseValue.error("鍛樺伐缂栧彿閲嶅"); } - if (user.getTenantId() == null || "".equals(user.getTenantId()) || new Integer(user.getTenantId()) == 0) { + if (StringUtils.isEmpty(tenantUser.getTenantId()) || "0".equals(tenantUser.getTenantId())) { return ResponseValue.error("娣诲姞鏃惰閫夋嫨鍖哄幙"); } - if (user.getTenantCode() == null || "".equals(user.getTenantCode()) || new Integer(user.getTenantCode()) == 0) { - return ResponseValue.error("娣诲姞鏃惰閫夋嫨鍖哄幙"); + + // 鎻掑叆绯荤粺鐢ㄦ埛 + buildTenantUser(tenantUser, null); + this.finSysTenantUserService.insert(tenantUser); + + // 鎻掑叆骞冲彴鐢ㄦ埛 + S_user_core userCore = getsUserCore(tenantUser); + this.userService.insert(userCore); + // 鎻掑叆骞冲彴鏈烘瀯 + // 灏戣鑹瞚d + // 鏈烘瀯id 澶氫釜 + List<Long> roleList = user.getRoleList(); + if (!CollectionUtils.isEmpty(roleList)) { + // 鐢ㄦ埛id + Long sysUserId = tenantUser.getSysUserId(); + this.finSysTenantUserService.execInsertRoleUserList(roleList, sysUserId); } - //鎻掑叆绯荤粺鐢ㄦ埛 - user.setId(NumberGenerator.getLongSequenceNumber()); - user.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - user.setCreateBy(this.getCurrentUser().getUser_name()); - user.setUpdateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - user.setUpdateBy(this.getCurrentUser().getUser_name()); - //user.setStatus(1);// 0绂佺敤 1鍚敤 - user.setIsDelete(0); - user.setSysUserId(NumberGenerator.getLongSequenceNumber()); + // this.getFinCustomerCache().remove(); + return ResponseValue.success(1); + } + + private void buildTenantUser(FinSysTenantUser tenantUser, FinSysTenantUser sysInfo) { + tenantUser.setId(NumberGenerator.getLongSequenceNumber()); + tenantUser.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); + tenantUser.setCreateBy(this.getCurrentUser().getUser_name()); + tenantUser.setUpdateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); + tenantUser.setUpdateBy(this.getCurrentUser().getUser_name()); + // 鏄惁鍒犻櫎 0鏄� 1鍚� + tenantUser.setIsDelete(0); + tenantUser.setSysUserId(NumberGenerator.getLongSequenceNumber()); + setUserPhone(tenantUser, tenantUser.getUserPhone()); + String tenantId = tenantUser.getTenantId(); + FinSysTenant finSysTenant = finSysTenantService.selectById(Long.valueOf(tenantId)); + tenantUser.setTenantCode(finSysTenant.getCode()); + + // 澶勭悊鏂规硶addSupplier + if (sysInfo != null) { + tenantUser.setIsDelete(1); + tenantUser.setLv(sysInfo.getLv()); + tenantUser.setTenantCode(sysInfo.getTenantCode()); + tenantUser.setTenantId(sysInfo.getTenantId()); + // 杩愮淮绠$悊 + tenantUser.setSysDeptId(2L); + } + + } + + private void setUserPhone(FinSysTenantUser tenantUser, String userPhone) { // 鍔犲瘑鎵嬫満鍙� String key = PlatformRSAUtils.AES_KEY; - String pwdPhone = ""; - if (user.getUserPhone() != null) { - pwdPhone = AESUtils.encryptStrAES(user.getUserPhone(), key); + String encPhone = ""; + if (StringUtils.isNotEmpty(userPhone)) { + encPhone = AESUtils.encryptStrAES(userPhone, key); } - user.setUserPhone(pwdPhone); - //鎬庝箞鑾峰彇宸︿晶鏈烘瀯鏍戞暟鎹� - user.setSysDeptId(3L); //瀵瑰簲骞冲彴鏈烘瀯id 榛樿涓哄钩鍙扮鐞� - this.finSysTenantUserService.insert(user); - // 鎻掑叆骞冲彴鐢ㄦ埛 + tenantUser.setUserPhone(encPhone); + } + + private S_user_core getsUserCore(FinSysTenantUser tenantUser) { S_user_core userCore = new S_user_core(); - userCore.setId(user.getSysUserId()); - userCore.setDept_id(3L); //閮ㄩ棬id锛岀洰鍓嶅啓姝� - userCore.setOrg_id(user.getSysDeptId()); //鏈烘瀯id + userCore.setId(tenantUser.getSysUserId()); + // 閮ㄩ棬id 閮ㄩ棬淇℃伅鏈悓姝ワ紝鍙~鍏呮暟鎹� + userCore.setDept_id(tenantUser.getSysDeptId()); + // 鏈烘瀯id + userCore.setOrg_id(tenantUser.getSysDeptId()); userCore.setOrg_id(1L); - userCore.setUser_name(user.getUserCode()); //鐢ㄦ埛璐﹀彿 - userCore.setNick_name(user.getUserName()); - //鐢ㄦ埛绫诲瀷 鍏堥粯璁よ缃负2 + // 鐢ㄦ埛璐﹀彿 + userCore.setUser_name(tenantUser.getUserCode()); + userCore.setNick_name(tenantUser.getUserName()); + // 鐢ㄦ埛绫诲瀷 鍏堥粯璁よ缃负2 userCore.setUser_type(2); - userCore.setPhonenumber(pwdPhone); - userCore.setSex(user.getSex().toString()); - //鍒濆鍖栧瘑鐮� 123456 + userCore.setPhonenumber(tenantUser.getUserPhone()); + userCore.setSex(tenantUser.getSex().toString()); + // 鍒濆鍖栧瘑鐮� 123456 String pws = this.getArgumentVariable(ArgumentsConstants.KEY_SECURITY_PASSWORD_INIT).getStringValue(); userCore.setPassword(pws); // 骞冲彴鐢ㄦ埛琛ㄥ拰绯荤粺鐢ㄦ埛 琛ㄧ姸鎬佺浉鍙� - if (user.getStatus() == 0) { - user.setStatus(1); + if (tenantUser.getStatus() == 0) { + userCore.setStatus(1); } else { - user.setStatus(0); + userCore.setStatus(0); } - userCore.setStatus(user.getStatus()); userCore.setDel_flag(0); userCore.setCreate_by(this.getCurrentUser().getUser_name()); userCore.setCreate_time(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - userCore.setRemark(user.getRemark()); + userCore.setRemark(tenantUser.getRemark()); userCore.setType(1); userCore.setBind_client_id("0"); userCore.setBind_wechat(0); @@ -273,95 +262,11 @@ userCore.setIs_logoff(0); userCore.setLogoff_time(0L); userCore.setIs_sms(0); - //绠$悊鍛樼被鍨嬶細1= 骞冲彴瓒呯, 2=鍟嗘埛瓒呯, 3=绯荤粺绠$悊鍛橈紝4=鍟嗘埛绠$悊鍛� + // 绠$悊鍛樼被鍨嬶細1= 骞冲彴瓒呯, 2=鍟嗘埛瓒呯, 3=绯荤粺绠$悊鍛橈紝4=鍟嗘埛绠$悊鍛� userCore.setType(1); - //鍟嗘埛id锛�0-骞冲彴 + // 鍟嗘埛id锛�0-骞冲彴 userCore.setMer_id(0L); - this.userService.insert(userCore); - // 鎻掑叆骞冲彴鏈烘瀯 - //灏戣鑹瞚d - List<Long> roleList = user.getRoleList(); //鏈烘瀯id 澶氫釜 - if (!CollectionUtils.isEmpty(roleList)) { - Long sysUserId = user.getSysUserId(); //鐢ㄦ埛id - this.finSysTenantUserService.execInsertRoleUserList(roleList, sysUserId); - } -// this.getFinCustomerCache().remove(); - return ResponseValue.success(1); - } - - - public static class ImportUserParam { - - @ExcelProperty("鐢ㄦ埛濮撳悕") - private String userName; - @ExcelProperty("鐢ㄦ埛缂栧彿") - private String userCode; - @ExcelProperty("鎵嬫満鍙�") - private String userPhone; - @ExcelProperty("鎬у埆(1鐢凤紝2濂�)") - private Integer sex; - @ExcelProperty("鐢靛瓙閭") - private String email; - @ExcelProperty("椤哄簭鍙�") - private Long seq; - @ExcelProperty("瑙掕壊鍚嶇О") - private String roleName; - - public String getUserName() { - return userName; - } - - public void setUserName(String userName) { - this.userName = userName; - } - - public String getUserCode() { - return userCode; - } - - public void setUserCode(String userCode) { - this.userCode = userCode; - } - - public String getUserPhone() { - return userPhone; - } - - public void setUserPhone(String userPhone) { - this.userPhone = userPhone; - } - - public Integer getSex() { - return sex; - } - - public void setSex(Integer sex) { - this.sex = sex; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public Long getSeq() { - return seq; - } - - public void setSeq(Long seq) { - this.seq = seq; - } - - public String getRoleName() { - return roleName; - } - - public void setRoleName(String roleName) { - this.roleName = roleName; - } + return userCore; } /** @@ -370,9 +275,10 @@ * @Date 2023/10/12 15:56 */ @PostMapping("/import") - public ResponseValue importUser(@RequestParam String tenantId, @RequestParam String tenantCode, MultipartFile file) throws IOException { + public ResponseValue importUser(@RequestParam String tenantId, @RequestParam String tenantCode, MultipartFile file) + throws IOException { String originalFilename = file.getOriginalFilename(); - if (!"xls".equals(originalFilename.substring(originalFilename.lastIndexOf(".") + 1))) { + if (!originalFilename.endsWith("xls")) { return ResponseValue.error("鏂囦欢鏍煎紡鏈夎!"); } S_user_core currentUser = this.getCurrentUser(); @@ -387,77 +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("鍗曞厓鏍间笉鑳戒负绌�!"); + 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 (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); } - //鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず - if (finSysTenantUserService.getByUserCode(data.getUserCode()) > 0) { - throw new ImportUserParamVerifyException("鍛樺伐缂栧彿涓虹┖鎴栧凡瀛樺湪!"); + + @Override + public void doAfterAllAnalysed(AnalysisContext context) { + } - 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 pwdPhone = AESUtils.encryptStrAES(data.getUserPhone(), key); - user.setUserPhone(pwdPhone); - - 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) + "鍒楄В鏋愬紓甯革紝寮傚父鏁版嵁涓�:[ " + @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; } - if (exception instanceof ImportUserParamVerifyException) { - throw new IllegalStateException("绗�" + context.readSheetHolder().getRowIndex() + "琛�, 瑙f瀽閿欒:[ " + exception.getMessage() + " ]"); - } - throw exception; } - } - }).sheet().doRead(); + }).sheet().doRead(); insertUserAndUserCoreBatch(finSysTenantUsers); @@ -472,56 +382,14 @@ ArrayList<S_user_core> sUserCores = new ArrayList<>(); for (FinSysTenantUser user : finSysTenantUsers) { // 鎻掑叆骞冲彴鐢ㄦ埛 - S_user_core userCore = new S_user_core(); - userCore.setId(user.getSysUserId()); - userCore.setDept_id(3L); //閮ㄩ棬id锛岀洰鍓嶅啓姝� - userCore.setOrg_id(user.getSysDeptId()); //鏈烘瀯id - userCore.setOrg_id(1L); - userCore.setUser_name(user.getUserCode()); //鐢ㄦ埛璐﹀彿 - userCore.setNick_name(user.getUserName()); - //鐢ㄦ埛绫诲瀷 鍏堥粯璁よ缃负2 - userCore.setUser_type(2); - userCore.setPhonenumber(user.getUserPhone()); - userCore.setSex(user.getSex().toString()); - //鍒濆鍖栧瘑鐮� 123456 - String pws = this.getArgumentVariable(ArgumentsConstants.KEY_SECURITY_PASSWORD_INIT).getStringValue(); - userCore.setPassword(pws); - // 骞冲彴鐢ㄦ埛琛ㄥ拰绯荤粺鐢ㄦ埛 琛ㄧ姸鎬佺浉鍙� - if (user.getStatus() == 0) { - user.setStatus(1); - } else { - user.setStatus(0); - } - userCore.setStatus(user.getStatus()); - userCore.setDel_flag(0); - userCore.setCreate_by(this.getCurrentUser().getUser_name()); - userCore.setCreate_time(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - userCore.setRemark(user.getRemark()); - userCore.setType(1); - userCore.setBind_client_id("0"); - userCore.setBind_wechat(0); - userCore.setModify_pwd(0); - userCore.setBind_mobile(0); - userCore.setBind_mail(0); - userCore.setProfile_id(0L); - userCore.setIs_wechat_public(0); - userCore.setIs_wechat_routine(0); - userCore.setIs_wechat_ios(0); - userCore.setIs_wechat_android(0); - userCore.setIs_logoff(0); - userCore.setLogoff_time(0L); - userCore.setIs_sms(0); - //绠$悊鍛樼被鍨嬶細1= 骞冲彴瓒呯, 2=鍟嗘埛瓒呯, 3=绯荤粺绠$悊鍛橈紝4=鍟嗘埛绠$悊鍛� - userCore.setType(1); - //鍟嗘埛id锛�0-骞冲彴 - userCore.setMer_id(0L); + S_user_core userCore = getsUserCore(user); sUserCores.add(userCore); } - //淇濆瓨鐢ㄦ埛淇℃伅 + // 淇濆瓨鐢ㄦ埛淇℃伅 this.finSysTenantUserService.insertBatch(finSysTenantUsers); - //淇濆瓨骞冲彴鐢ㄦ埛淇℃伅 + // 淇濆瓨骞冲彴鐢ㄦ埛淇℃伅 this.userService.insertBatch(sUserCores); - //淇濆瓨瑙掕壊鏉冮檺淇℃伅 + // 淇濆瓨瑙掕壊鏉冮檺淇℃伅 this.finSysTenantUserService.execInsertRoleUserList(finSysTenantUsers); } @@ -536,7 +404,6 @@ } } - /** * @Description 缂栬緫 * @Author wh @@ -544,30 +411,53 @@ */ @PostMapping("/update") @Transactional(rollbackFor = Exception.class) - public ResponseValue update(@RequestBody FinSysTenantUser user) { - if (user == null) { + public ResponseValue update() { + FinSysTenantUser user = CommonUtil.getObjFromReqBody(FinSysTenantUser.class); + FinSysTenantUser tenantUser = new FinSysTenantUser(); + CommonUtil.copyProperties(user, tenantUser); + + if (tenantUser == null) { return ResponseValue.error("鍙傛暟涓虹┖"); } - String key = PlatformRSAUtils.AES_KEY; - String pwdPhone = ""; - if (user.getUserPhone() != null) { - pwdPhone = AESUtils.encryptStrAES(user.getUserPhone(), key); + setUserPhone(tenantUser, tenantUser.getUserPhone()); + // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER + finSysTenantUserService.update(tenantUser); + // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE + S_user_core userCore = buildUpdateUserCore(user); + this.userService.update(userCore); + // 3. 鏇存柊瑙掕壊閰嶇疆 S_ROLE_USER + // 1. 鏍规嵁 user.getSysUserId() 鏌ヨ + // 宸叉湁鐨勬潈闄� + Long sysUserId = user.getSysUserId(); + List<S_role> list = finSysTenantUserService.getRoleBySysUserId(sysUserId); + // 閫夋嫨鐨勬潈闄� + List<Long> roleList = user.getRoleList(); + // 鍏堝垹闄ゅ啀娣诲姞 + if (!CollectionUtils.isEmpty(list)) { + finSysTenantUserService.execDelRoleUserList(sysUserId); + // 鍒犻櫎搴撶鍛樹俊鎭褰� + list.stream().filter(item -> "浠撳簱绠$悊鍛�".equals(item.getRole_name())).findFirst() + .ifPresent(item -> baseWarehouseManagerService.deleteMangerBySysUserId(sysUserId)); } - user.setUserPhone(pwdPhone); - // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER - finSysTenantUserService.update(user); - // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE + if (!CollectionUtils.isEmpty(roleList)) { + // 鍥犱负涓嶇煡閬撹鐢ㄦ埛闇�瑕佺鐞嗛偅涓粨搴� 鏁呬笉鏂板浠撳簱绠$悊鍛樹俊鎭紝鍙坊鍔犺鑹� + finSysTenantUserService.execInsertRoleUserList(roleList, sysUserId); + } + this.getFinSysTenantUserCache().remove(sysUserId.toString()); + return ResponseValue.success(1); + } + + private S_user_core buildUpdateUserCore(FinSysTenantUser user) { S_user_core userCore = new S_user_core(); userCore.setId(user.getSysUserId()); userCore.setUpdate_by(this.getCurrentUser().getUser_name()); userCore.setUpdate_time(DateUtils.getDateTimeNumber(System.currentTimeMillis())); // 骞冲彴鐢ㄦ埛琛ㄥ拰绯荤粺鐢ㄦ埛 琛ㄧ姸鎬佺浉鍙� if (user.getStatus() == 0) { - user.setStatus(1); + userCore.setStatus(1); } else { - user.setStatus(0); + userCore.setStatus(0); } - userCore.setStatus(user.getStatus()); if (user.getSex() != null) { userCore.setSex(user.getSex().toString()); } @@ -575,20 +465,8 @@ userCore.setNick_name(user.getUserName()); // 鍔犲瘑鎵嬫満鍙� userCore.setPhonenumber(user.getUserPhone()); - this.userService.update(userCore); - // 3. 鏇存柊瑙掕壊閰嶇疆 S_ROLE_USER - // 1. 鏍规嵁 user.getSysUserId() 鏌ヨ - List<S_role> list = finSysTenantUserService.getByUserId(user.getSysUserId()); //宸叉湁鐨勬潈闄� - List<Long> roleList = user.getRoleList(); //閫夋嫨鐨勬潈闄� - //鍏堝垹闄ゅ啀娣诲姞 - if (list != null && list.size() > 0) { - finSysTenantUserService.execDelRoleUserList(user.getSysUserId()); - } - if (roleList != null && roleList.size() > 0) { - finSysTenantUserService.execInsertRoleUserList(roleList, user.getSysUserId()); - } - this.getFinSysTenantUserCache().remove(user.getSysUserId() + ""); - return ResponseValue.success(1); + + return userCore; } /** @@ -598,30 +476,22 @@ */ @PostMapping("/updateStatus") @Transactional(rollbackFor = Exception.class) - public ResponseValue updateStatus(@RequestBody FinSysTenantUser user) { - if (user == null) { + public ResponseValue updateStatus() { + FinSysTenantUserParam user = CommonUtil.getObjFromReqBody(FinSysTenantUserParam.class); + FinSysTenantUser tenantUser = new FinSysTenantUser(); + CommonUtil.copyProperties(user, tenantUser); + if (tenantUser == null) { return ResponseValue.error("鍙傛暟涓虹┖"); } - // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER 搴旇鏄煡璇� 鐒跺悗鍙敼鐘舵�� - List<FinSysTenantUser> select = finSysTenantUserService.select(new FinSysTenantUser(user.getId())); - if (select == null || select.size() == 0) { + // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER 搴旇鏄煡璇� 鐒跺悗鍙敼鐘舵�� + FinSysTenantUser finSysTenantUser = finSysTenantUserService.queryOneById(tenantUser.getId().toString()); + if (finSysTenantUser == null) { return ResponseValue.error("鐢ㄦ埛涓嶅瓨鍦�"); } - FinSysTenantUser finSysTenantUser = select.get(0); finSysTenantUser.setStatus(user.getStatus()); finSysTenantUserService.update(finSysTenantUser); - // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE - S_user_core userCore = new S_user_core(); - userCore.setId(user.getSysUserId()); - userCore.setUpdate_by(this.getCurrentUser().getUser_name()); - userCore.setUpdate_time(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - // 骞冲彴鐢ㄦ埛琛ㄥ拰绯荤粺鐢ㄦ埛 琛ㄧ姸鎬佺浉鍙� - if (user.getStatus() == 0) { - user.setStatus(1); - } else { - user.setStatus(0); - } - userCore.setStatus(user.getStatus()); + // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE + S_user_core userCore = buildUpdateUserCore(finSysTenantUser); this.userService.update(userCore); return ResponseValue.success(1); } @@ -632,18 +502,24 @@ * @Date 2023/7/17 14:36 */ @PostMapping("/defaultPassword") - public ResponseValue defaultPassword(@RequestBody FinSysTenantUser finSysTenantUser) { - if (finSysTenantUser == null) { + public ResponseValue defaultPassword() { + FinSysTenantUserParam user = CommonUtil.getObjFromReqBody(FinSysTenantUserParam.class); + FinSysTenantUserParam tenantUser = new FinSysTenantUserParam(); + CommonUtil.copyProperties(user, tenantUser); + user = tenantUser; + + if (Objects.isNull(user)) { return ResponseValue.error("鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); } - //鍒濆鍖栧瘑鐮� 123456 - String stringValue = this.getArgumentVariable(ArgumentsConstants.KEY_SECURITY_PASSWORD_INIT).getStringValue();// 瀵嗘枃 + // 鍒濆鍖栧瘑鐮� 123456 + // 瀵嗘枃 + String password = this.getArgumentVariable(ArgumentsConstants.KEY_SECURITY_PASSWORD_INIT).getStringValue(); // 1. 淇敼鐢ㄦ埛琛� - //鐢ㄦ埛琛╥d - Long sysUserId = finSysTenantUser.getSysUserId(); + // 鐢ㄦ埛琛╥d + Long sysUserId = user.getSysUserId(); S_user_core userCore = new S_user_core(); userCore.setId(sysUserId); - userCore.setPassword(stringValue); + userCore.setPassword(password); userCore.setModify_pwd(0); userService.update(userCore); // 2. 淇敼骞冲彴鐢ㄦ埛锛堜笉鐢ㄤ慨鏀癸級 @@ -665,13 +541,15 @@ if (finSysTenantUser == null) { return ResponseValue.error("鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); } - String s = AESUtils.decryptStrAES(finSysTenantUser.getUserPhone(), PlatformRSAUtils.AES_KEY); - - finSysTenantUser.setUserPhone(s); + String phone = AESUtils.decryptStrAES(finSysTenantUser.getUserPhone(), PlatformRSAUtils.AES_KEY); + finSysTenantUser.setUserPhone(phone); Long sysUserId = finSysTenantUser.getSysUserId(); - List<S_role> list = finSysTenantUserService.getByUserId(sysUserId); + List<S_role> roleList = finSysTenantUserService.getRoleBySysUserId(sysUserId); + // 杩囨护浠撳簱绠$悊鍛樼殑鏄剧ず + roleList.removeIf(role -> "浠撳簱绠$悊鍛�".equals(role.getRole_name())); + HashMap<String, Object> map = new HashMap<>(); - map.put("list", list); + map.put("list", roleList); map.put("data", finSysTenantUser); return ResponseValue.success(map); } @@ -694,58 +572,65 @@ sysInfo.setUserPhone(AESUtils.decryptStrAES(userPhone, key)); } - // 鏌ヨ 鐢ㄦ埛瑙掕壊 TODO 涓存椂瑙e喅 灏嗘潵鏀鹃厤缃枃浠朵腑 - List<S_role> list = finSysTenantUserService.getByUserId(sysInfo.getSysUserId()); //宸叉湁鐨勬潈闄� + // 鏌ヨ 鐢ㄦ埛瑙掕壊 + // 宸叉湁鐨勬潈闄� + List<S_role> list = finSysTenantUserService.getRoleBySysUserId(sysInfo.getSysUserId()); for (S_role s_role : list) { + // TODO 涓存椂瑙e喅 灏嗘潵鏀鹃厤缃枃浠朵腑 if (s_role.getRole_id() != null && s_role.getRole_id().equals(1690961420053L)) { sysInfo.setKfStatus(1); } } - // 鏌ヨ鐖剁被鐨刼rgcode 闇�瑕佸皢鑷繁鐨刼rg鍏堟煡鍑烘潵 鍐嶆牴鎹畃arentid 鏌ョ埗绫� + // 鏌ヨ鐖剁被鐨刼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); } - /** * 鏇存柊瑙掕壊鏉冮檺 * - * @param user * @return */ @PostMapping("/updRole") - public ResponseValue updRole(@RequestBody FinSysTenantUser user) { + public ResponseValue updRole() { + FinSysTenantUser user = CommonUtil.getObjFromReqBody(FinSysTenantUser.class); + FinSysTenantUser tenantUser = new FinSysTenantUser(); + CommonUtil.copyProperties(user, tenantUser); + user = tenantUser; + if (user == null) { return ResponseValue.error("鍙傛暟涓虹┖"); } - // 1. 鏍规嵁 user.getSysUserId() 鏌ヨ - List<S_role> list = finSysTenantUserService.getByUserId(user.getSysUserId()); //宸叉湁鐨勬潈闄� - List<Long> roleList = user.getRoleList(); //閫夋嫨鐨勬潈闄� - //鍏堝垹闄ゅ啀娣诲姞 - if (list != null && list.size() > 0) { - finSysTenantUserService.execDelRoleUserList(user.getSysUserId()); + // 1. 鏍规嵁 user.getSysUserId() 鏌ヨ + // 宸叉湁鐨勬潈闄� + List<S_role> list = finSysTenantUserService.getRoleBySysUserId(user.getSysUserId()); + // 閫夋嫨鐨勬潈闄� + List<Long> roleList = user.getRoleList(); + // 鍏堝垹闄ゅ啀娣诲姞 + 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); } - /** * @Description 鏂板 @@ -754,142 +639,90 @@ */ @PostMapping("/addSupplier") @Transactional(rollbackFor = Exception.class) - public ResponseValue addSupplier(@RequestBody FinSysTenantUser user) { + public ResponseValue addSupplier() { + FinSysTenantUserParam userParam = CommonUtil.getObjFromReqBody(FinSysTenantUserParam.class); + FinSysTenantUser user = new FinSysTenantUser(); + CommonUtil.copyProperties(userParam, user); + if (user == null) { return ResponseValue.error("鍙傛暟涓虹┖"); } // 鑾峰彇杩愮淮绠$悊 List<S_dept> depts = this.finSysTenantUserService.selectDept(roleName); - if (depts == null || depts.size() == 0) { + if (CollectionUtils.isEmpty(depts)) { return ResponseValue.error(roleName + "鐨勮鑹蹭笉瀛樺湪"); } - //鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず - if (finSysTenantUserService.getByUserCode(user.getUserCode()) != null && finSysTenantUserService.getByUserCode(user.getUserCode()) > 0) { + // 鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず + if (finSysTenantUserService.getByUserCode(user.getUserCode()) != null) { return ResponseValue.error("鍛樺伐缂栧彿閲嶅"); } FinSysTenantUser sysInfo = this.getSysInfo(); - //鎻掑叆绯荤粺鐢ㄦ埛 - user.setId(NumberGenerator.getLongSequenceNumber()); - user.setCreateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - user.setCreateBy(this.getCurrentUser().getUser_name()); - user.setUpdateTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); - user.setUpdateBy(this.getCurrentUser().getUser_name()); - user.setIsDelete(0);// 鏄惁鍒犻櫎 0鏄� 1鍚� - user.setSysUserId(NumberGenerator.getLongSequenceNumber()); - user.setIsDelete(1); - user.setLv(sysInfo.getLv()); - user.setTenantCode(sysInfo.getTenantCode()); - user.setTenantId(sysInfo.getTenantId()); - user.setSysDeptId(2l); //杩愮淮绠$悊 - // 鍔犲瘑鎵嬫満鍙� - String key = PlatformRSAUtils.AES_KEY; - String userPhone = user.getUserPhone(); - String pwdPhone = ""; - if (userPhone != null) { - pwdPhone = AESUtils.encryptStrAES(userPhone, key); - user.setUserPhone(pwdPhone); - } - + // 鎻掑叆绯荤粺鐢ㄦ埛 + buildTenantUser(user, sysInfo); this.finSysTenantUserService.insert(user); // 鎻掑叆骞冲彴鐢ㄦ埛 - S_user_core userCore = new S_user_core(); - userCore.setId(user.getSysUserId()); - userCore.setDept_id(depts.get(0).getId()); //閮ㄩ棬 - userCore.setOrg_id(1L); - //userCore.setUser_name(); //鐢ㄦ埛璐﹀彿 - userCore.setUser_name(user.getUserCode()); //鐢ㄦ埛璐﹀彿 - userCore.setNick_name(user.getUserName()); - //鐢ㄦ埛绫诲瀷 鍏堥粯璁よ缃负2 - userCore.setUser_type(2); - - userCore.setPhonenumber(userPhone); - //鍒濆鍖栧瘑鐮� 123456 - String pws = this.getArgumentVariable(ArgumentsConstants.KEY_SECURITY_PASSWORD_INIT).getStringValue(); - userCore.setPassword(pws); - if (user.getStatus() == 0) { - userCore.setStatus(1); - } else { - userCore.setStatus(0); - } - userCore.setDel_flag(0); - userCore.setCreate_by(this.getCurrentUser().getCreate_by()); - userCore.setCreate_time(DateUtils.getDateTimeNumber()); - userCore.setRemark(user.getRemark()); - userCore.setType(1); - userCore.setBind_client_id("0"); - userCore.setBind_wechat(0); - userCore.setModify_pwd(0); - userCore.setBind_mobile(0); - userCore.setBind_mail(0); - userCore.setProfile_id(0L); - userCore.setIs_wechat_public(0); - userCore.setIs_wechat_routine(0); - userCore.setIs_wechat_ios(0); - userCore.setIs_wechat_android(0); - userCore.setIs_logoff(0); - userCore.setLogoff_time(0L); - userCore.setIs_sms(0); - //绠$悊鍛樼被鍨嬶細1= 骞冲彴瓒呯, 2=鍟嗘埛瓒呯, 3=绯荤粺绠$悊鍛橈紝4=鍟嗘埛绠$悊鍛� + S_user_core userCore = buildUpdateUserCore(user); + // 閮ㄩ棬 + userCore.setDept_id(depts.get(0).getId()); userCore.setType(2); - //鍟嗘埛id锛�0-骞冲彴 - userCore.setMer_id(0L); this.userService.insert(userCore); // 鎻掑叆骞冲彴鏈烘瀯 - //灏戣鑹瞚d - List<Long> roleList = user.getRoleList(); //鏈烘瀯id 澶氫釜 - Long sysUserId = user.getSysUserId(); //鐢ㄦ埛id + // 灏戣鑹瞚d + List<Long> roleList = user.getRoleList(); // 鏈烘瀯id 澶氫釜 + Long sysUserId = user.getSysUserId(); // 鐢ㄦ埛id this.finSysTenantUserService.execInsertRoleUserList(roleList, sysUserId); return ResponseValue.success(1); } - private Set<String> picFormatArr = new HashSet<String>() {{ - add(".pjp"); - add(".svgz"); - add(".jxl"); - add(".jpeg"); - add(".ico"); - add(".avif"); - add(".tif"); - add(".gif"); - add(".jfif"); - add(".jpg"); - add(".svg"); - add(".png"); - add(".xbm"); - add(".pjpeg"); - add(".bmp"); - add(".webp"); - }}; + private final Set<String> picFormatArr = new HashSet<String>() { + { + add(".pjp"); + add(".svgz"); + add(".jxl"); + add(".jpeg"); + add(".ico"); + add(".avif"); + add(".tif"); + add(".gif"); + add(".jfif"); + add(".jpg"); + add(".svg"); + add(".png"); + add(".xbm"); + add(".pjpeg"); + add(".bmp"); + add(".webp"); + } + }; @PostMapping("/updatePerson") @Transactional(rollbackFor = Exception.class) - public ResponseValue updatePerson(@RequestBody FinSysTenantUser user) { - if (user == null) { + public ResponseValue updatePerson() { + FinSysTenantUserParam userParam = CommonUtil.getObjFromReqBody(FinSysTenantUserParam.class); + FinSysTenantUserParam tenantUser = new FinSysTenantUserParam(); + CommonUtil.copyProperties(userParam, tenantUser); + userParam = tenantUser; + if (userParam == null) { return ResponseValue.error("鍙傛暟涓虹┖"); } FinSysTenantUser sysInfo = getSysInfo(); if (sysInfo == null) { return ResponseValue.error("鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); } - String avatar = user.getAvatar(); - if (!picFormatArr.contains(avatar.substring(avatar.lastIndexOf(".")))) { + String avatar = userParam.getAvatar(); + if (StringUtils.isNotEmpty(avatar) && !picFormatArr.contains(avatar.substring(avatar.lastIndexOf(".")))) { return ResponseValue.error("澶村儚鏍煎紡涓嶅厑璁�"); } FinSysTenantUser updUser = new FinSysTenantUser(); updUser.setId(sysInfo.getId()); - updUser.setAvatar(user.getAvatar()); - updUser.setEmail(user.getEmail()); - updUser.setUserName(user.getUserName()); - updUser.setSex(user.getSex()); - String pwdPhone = ""; - if (user.getUserPhone() != null) { - String key = PlatformRSAUtils.AES_KEY; - pwdPhone = AESUtils.encryptStrAES(user.getUserPhone(), key); - } - updUser.setUserPhone(pwdPhone); - // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER + updUser.setAvatar(avatar); + updUser.setEmail(userParam.getEmail()); + updUser.setUserName(userParam.getUserName()); + updUser.setSex(userParam.getSex()); + setUserPhone(updUser, userParam.getUserPhone()); + // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER finSysTenantUserService.update(updUser); - // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE + // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE S_user_core userCore = new S_user_core(); userCore.setId(sysInfo.getSysUserId()); userCore.setUpdate_by(this.getCurrentUser().getUser_name()); @@ -908,11 +741,16 @@ * @Description 淇敼瀵嗙爜 */ @PostMapping("/updatePassword") - public ResponseValue updatePassword(@RequestBody FinSysTenantUserUpdParam param) { + public ResponseValue updatePassword() { + FinSysTenantUserUpdParam param = CommonUtil.getObjFromReqBody(FinSysTenantUserUpdParam.class); + FinSysTenantUserUpdParam finSysTenantParam = new FinSysTenantUserUpdParam(); + CommonUtil.copyProperties(param, finSysTenantParam); + param = finSysTenantParam; + String oldMixPd = param.getOldMixPd(); String newMixPd = param.getNewMixPd(); String btnMixPd = param.getBtnMixPd(); - //鏍¢獙鍙傛暟 + // 鏍¢獙鍙傛暟 if (StringUtils.isEmpty(oldMixPd) || StringUtils.isEmpty(newMixPd) || StringUtils.isEmpty(btnMixPd)) { return ResponseValue.error("淇℃伅涓嶈兘涓虹┖锛�"); } @@ -920,7 +758,7 @@ if (sysInfo == null) { return ResponseValue.error("鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); } - //鏍¢獙淇╂杈撳叆鐨勫瘑鐮� + // 鏍¢獙淇╂杈撳叆鐨勫瘑鐮� btnMixPd = PlatformRSAUtils.getRsaDecryptValue(btnMixPd, PlatformRSAUtils.PRIK); newMixPd = PlatformRSAUtils.getRsaDecryptValue(newMixPd, PlatformRSAUtils.PRIK); if (!newMixPd.equals(btnMixPd)) { @@ -934,7 +772,7 @@ if (validatePasswordRule != null) { return ResponseValue.error(validatePasswordRule); } - //鐢ㄦ埛琛╥d + // 鐢ㄦ埛琛╥d Long sysUserId = sysInfo.getSysUserId(); S_user_core queryU = new S_user_core(); queryU.setId(sysUserId); @@ -943,14 +781,14 @@ return ResponseValue.error("鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); } oldMixPd = PlatformRSAUtils.getRsaDecryptValue(oldMixPd, PlatformRSAUtils.PRIK); - //鏍¢獙鑰佸瘑鐮� + // 鏍¢獙鑰佸瘑鐮� if (!this.matchesPassword(oldMixPd, queryUserInfo.getPassword())) { return ResponseValue.error("鏃у瘑鐮佽緭鍏ユ湁璇紒"); } if (oldMixPd.equalsIgnoreCase(btnMixPd)) { return ResponseValue.error("鏂板瘑鐮佷笉鑳戒笌鏃у瘑鐮佺浉鍚岋紒"); } - //鏇存柊鏁版嵁搴� + // 鏇存柊鏁版嵁搴� // 1. 淇敼鐢ㄦ埛琛� queryU.setPassword(this.encryptPassword(btnMixPd)); queryU.setModify_pwd(1); @@ -961,8 +799,7 @@ @ApiOperation(value = "鏍规嵁鏈烘瀯id鏌ヨ閮ㄩ棬涓殑鐢ㄦ埛", notes = "鏍规嵁鏈烘瀯id鏌ヨ閮ㄩ棬涓殑鐢ㄦ埛") @ApiImplicitParams({ - @ApiImplicitParam(name = "agencyId", value = "鏈烘瀯id", required = true, dataType = "Long", paramType = "query") - }) + @ApiImplicitParam(name = "agencyId", value = "鏈烘瀯id", required = true, dataType = "Long", paramType = "query")}) @GetMapping("/select/department") public ResponseValue selectDepartment(Long agencyId) { FinSysTenantVO finSysTenantVO = new FinSysTenantVO(); @@ -976,23 +813,29 @@ // 閮ㄩ棬 FinSysTenantDepartment finSysTenantDepartment = new FinSysTenantDepartment(); finSysTenantDepartment.setTenantId(agencyId); - List<FinSysTenantDepartment> tenantDepartmentList = finSysTenantDepartmentService.select(finSysTenantDepartment); + finSysTenantDepartment.setStatus(StatesType.NORMAL.getValue()); + finSysTenantDepartment.setIsDelete(0); + List<FinSysTenantDepartment> tenantDepartmentList = + finSysTenantDepartmentService.select(finSysTenantDepartment); List<DepartmentVO> departmentVOList = Lists.newArrayList(); tenantDepartmentList.forEach(department -> { DepartmentVO departmentVO = new DepartmentVO(); - //鐢ㄦ埛 + // 鐢ㄦ埛 Long id = department.getId(); departmentVO.setId(id); departmentVO.setName(department.getName()); departmentVO.setType("department"); - FinSysTenantUser finSysTenantUser = new FinSysTenantUser(); - finSysTenantUser.setSysDeptId(id); - List<FinSysTenantUser> tenantUserList = finSysTenantUserService.select(finSysTenantUser); + + 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()); List<UserVO> userVOList = Lists.newArrayList(); - tenantUserList.forEach(user -> { + select.forEach(user -> { UserVO userVO = new UserVO(); - userVO.setId(user.getId()); - userVO.setName(user.getUserName()); + userVO.setId((Long)user.get("sysUserId")); + userVO.setName(user.get("userName").toString()); userVO.setType("user"); userVOList.add(userVO); }); @@ -1003,6 +846,5 @@ return ResponseValue.success(finSysTenantVO); } - } -- Gitblit v1.9.1