From d3ae08fbd8634429150f8a54bc779efdfd9aa1e2 Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期三, 13 十二月 2023 19:02:03 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java | 829 ++++++++++++++++++++++++++++------------------------------ 1 files changed, 402 insertions(+), 427 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 a3f305f..7ee165a 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,69 +1,99 @@ package com.consum.base.controller; +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.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.EasyExcel; -import com.alibaba.excel.annotation.ExcelProperty; 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.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.service.FinSysTenantServiceImpl; -import com.consum.base.service.FinSysTenantUserServiceImpl; +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.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.*; +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 org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; -import java.io.IOException; -import java.util.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; /** * @Description 绯荤粺鐢ㄦ埛 * @Author wh * @Date 2023/7/17 14:16 */ +@Api(value = "鏈烘瀯鐢ㄦ埛淇℃伅", tags = "鏈烘瀯鐢ㄦ埛淇℃伅") @RestController @RequestMapping("/pc/fin/sys/tenant/user") public class FinSysTenantUserController extends BaseController { 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 FinSysTenantDepartmentService finSysTenantDepartmentService; @Autowired public void setUserService(UserServiceImpl userService) { this.userService = userService; } - private S_config sConfig; - @Autowired - public FinSysTenantUserController(FinSysTenantServiceImpl finSysTenantService, FinSysTenantUserServiceImpl finSysTenantUserService, RoleServiceImpl roleService) { + public FinSysTenantUserController(FinSysTenantService finSysTenantService, + FinSysTenantUserService finSysTenantUserService, RoleServiceImpl roleService) { this.finSysTenantUserService = finSysTenantUserService; this.finSysTenantService = finSysTenantService; this.roleService = roleService; @@ -75,61 +105,45 @@ * @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<FinSysTenantUser> datas = pager.getDatas(); - if (datas.size() > 0) { - for (FinSysTenantUser finSysTenantUser : datas) { - 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(""); - } + // 鍒楄〃涓嶉渶瑕佹煡璇㈣鑹诧紝鍙樉绀哄垪琛ㄦ墍闇�瑕佺殑淇℃伅 + /*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 ? "鏄�" : "鍚�");*/ - // 寰幆鍘绘煡瑙掕壊 - 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("鍚�"); - } - } } return ResponseValue.success(pager); } + @ApiOperation(value = "鏍规嵁鏈烘瀯id鏌ヨ鐢ㄦ埛", notes = "鏍规嵁鏈烘瀯id鏌ヨ鐢ㄦ埛") + @ApiImplicitParam(name = "tenantId", value = "鏈烘瀯id", required = true, dataType = "Long", paramType = "query") + @GetMapping("/query/user") + public ResponseValue queryUserByTenantId(Long tenantId) { + + FinSysTenantUser finSysTenantUser = new FinSysTenantUser(); + finSysTenantUser.setTenantId(String.valueOf(tenantId)); + List<FinSysTenantUser> result = finSysTenantUserService.select(finSysTenantUser); + return ResponseValue.success(result); + } /** * @Description 鏂板 @@ -138,66 +152,103 @@ */ @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);// 鏄惁鍒犻櫎 0鏄� 1鍚� - 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()); // 鍔犲瘑鎵嬫満鍙� String key = PlatformRSAUtils.AES_KEY; - String pwdPhone = ""; - if (user.getUserPhone() != null) { - pwdPhone = AESUtils.encryptStrAES(user.getUserPhone(), key); + String encPhone = ""; + if (tenantUser.getUserPhone() != null) { + encPhone = AESUtils.encryptStrAES(tenantUser.getUserPhone(), key); } - user.setUserPhone(pwdPhone); - user.setIsDelete(1); - //鎬庝箞鑾峰彇宸︿晶鏈烘瀯鏍戞暟鎹� - user.setSysDeptId(3L); //瀵瑰簲骞冲彴鏈烘瀯id 榛樿涓哄钩鍙扮鐞� - this.finSysTenantUserService.insert(user); - // 鎻掑叆骞冲彴鐢ㄦ埛 + tenantUser.setUserPhone(encPhone); + 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 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); @@ -212,82 +263,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; } /** @@ -296,35 +276,38 @@ * @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(); - if (currentUser==null){ + if (currentUser == null) { return ResponseValue.error("褰撳墠鐧诲綍鐢ㄦ埛涓虹┖"); } - if (StringUtils.isEmpty(tenantId)||StringUtils.isEmpty(tenantCode)){ + if (StringUtils.isEmpty(tenantId) || StringUtils.isEmpty(tenantCode)) { return ResponseValue.error("娣诲姞鏃惰閫夋嫨鍖哄幙"); } List<S_role> roles = this.roleService.select(new S_role()); ArrayList<FinSysTenantUser> finSysTenantUsers = new ArrayList<>(); - EasyExcel.read(file.getInputStream(), ImportUserParam.class, new AnalysisEventListener<ImportUserParam>(){ + 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())){ + 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()) > 0) { + // 鏍规嵁鍛樺伐缂栧彿鏌ヨ锛屽鏋滃瓨鍦ㄥ垯鎻愮ず + if (finSysTenantUserService.getByUserCode(data.getUserCode()) != null) { throw new ImportUserParamVerifyException("鍛樺伐缂栧彿涓虹┖鎴栧凡瀛樺湪!"); } - if (data.getSex()<1&&data.getSex()>0){ + if (data.getSex() < 1 && data.getSex() > 0) { throw new ImportUserParamVerifyException("鎬у埆鐮佸彧鑳戒负 0 鎴� 1"); } FinSysTenantUser user = new FinSysTenantUser(); @@ -336,8 +319,9 @@ 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(); + // 璁剧疆瑙掕壊 + 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()); @@ -351,30 +335,36 @@ user.setRemark("鎵归噺瀵煎叆"); // 鍔犲瘑鎵嬫満鍙� String key = PlatformRSAUtils.AES_KEY; - String pwdPhone = AESUtils.encryptStrAES(data.getUserPhone(), key); - user.setUserPhone(pwdPhone); + String encPhone = AESUtils.encryptStrAES(data.getUserPhone(), key); + user.setUserPhone(encPhone); user.setIsDelete(1); - //鎬庝箞鑾峰彇宸︿晶鏈烘瀯鏍戞暟鎹� - user.setSysDeptId(3L); //瀵瑰簲骞冲彴鏈烘瀯id 榛樿涓哄钩鍙扮鐞� + // 鎬庝箞鑾峰彇宸︿晶鏈烘瀯鏍戞暟鎹� + 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 != 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()+" ]"); + 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()+" ]"); + if (exception instanceof ImportUserParamVerifyException) { + throw new IllegalStateException("绗�" + context.readSheetHolder().getRowIndex() + "琛�, 瑙f瀽閿欒:[ " + + exception.getMessage() + " ]"); } throw exception; } @@ -390,68 +380,31 @@ * 鎵归噺鎻掑叆鐢ㄦ埛琛ㄥ拰骞冲彴鐢ㄦ埛琛� */ @Transactional(rollbackFor = Exception.class) - public void insertUserAndUserCoreBatch(List<FinSysTenantUser> finSysTenantUsers){ + public void insertUserAndUserCoreBatch(List<FinSysTenantUser> finSysTenantUsers) { 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); } - public static class ImportUserParamVerifyException extends RuntimeException{ - public ImportUserParamVerifyException(){super();} - public ImportUserParamVerifyException(String message){super(message);} - } + public static class ImportUserParamVerifyException extends RuntimeException { + public ImportUserParamVerifyException() { + super(); + } + + public ImportUserParamVerifyException(String message) { + super(message); + } + } /** * @Description 缂栬緫 @@ -460,30 +413,54 @@ */ @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); + String encPhone = ""; + if (tenantUser.getUserPhone() != null) { + encPhone = AESUtils.encryptStrAES(tenantUser.getUserPhone(), key); } - user.setUserPhone(pwdPhone); - // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER - finSysTenantUserService.update(user); - // 2.鏇存柊骞冲彴鐢ㄦ埛 S_USER_CORE + tenantUser.setUserPhone(encPhone); + // 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); + } + 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()); } @@ -491,20 +468,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; } /** @@ -514,30 +479,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(tenantUser); this.userService.update(userCore); return ResponseValue.success(1); } @@ -548,18 +505,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. 淇敼骞冲彴鐢ㄦ埛锛堜笉鐢ㄤ慨鏀癸級 @@ -581,20 +544,18 @@ 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); HashMap<String, Object> map = new HashMap<>(); - map.put("list", list); + map.put("list", roleList); map.put("data", finSysTenantUser); return ResponseValue.success(map); } /** - * 寰楀埌 褰撳墠鐧诲綍鐢ㄦ埛鐨勪俊鎭� - * 澧炲姞 鐖剁被鏈烘瀯鐨刢ode + * 寰楀埌 褰撳墠鐧诲綍鐢ㄦ埛鐨勪俊鎭� 澧炲姞 鐖剁被鏈烘瀯鐨刢ode * * @param * @return @@ -611,22 +572,25 @@ 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())); + List<FinSysTenant> parents = + finSysTenantService.select(new FinSysTenant(finSysTenant.getParentId())); if (parents != null && parents.size() > 0) { sysInfo.setParentCode(parents.get(0).getCode()); } @@ -638,22 +602,27 @@ 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(); //閫夋嫨鐨勬潈闄� - //鍏堝垹闄ゅ啀娣诲姞 + // 1. 鏍规嵁 user.getSysUserId() 鏌ヨ + // 宸叉湁鐨勬潈闄� + List<S_role> list = finSysTenantUserService.getRoleBySysUserId(user.getSysUserId()); + // 閫夋嫨鐨勬潈闄� + List<Long> roleList = user.getRoleList(); + // 鍏堝垹闄ゅ啀娣诲姞 if (list != null && list.size() > 0) { finSysTenantUserService.execDelRoleUserList(user.getSysUserId()); } @@ -663,7 +632,6 @@ return ResponseValue.success(1); } - /** * @Description 鏂板 * @Author llb @@ -671,7 +639,11 @@ */ @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("鍙傛暟涓虹┖"); } @@ -680,133 +652,82 @@ if (depts == null || depts.size() == 0) { 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 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(); + String avatar = userParam.getAvatar(); if (!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) { + updUser.setAvatar(userParam.getAvatar()); + updUser.setEmail(userParam.getEmail()); + updUser.setUserName(userParam.getUserName()); + updUser.setSex(userParam.getSex()); + String encPhone = ""; + if (userParam.getUserPhone() != null) { String key = PlatformRSAUtils.AES_KEY; - pwdPhone = AESUtils.encryptStrAES(user.getUserPhone(), key); + encPhone = AESUtils.encryptStrAES(userParam.getUserPhone(), key); } - updUser.setUserPhone(pwdPhone); - // 1.鏇存柊绯荤粺鐢ㄦ埛 FIN_SYS_TENANT_USER + updUser.setUserPhone(encPhone); + // 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()); @@ -825,11 +746,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("淇℃伅涓嶈兘涓虹┖锛�"); } @@ -837,7 +763,7 @@ if (sysInfo == null) { return ResponseValue.error("鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); } - //鏍¢獙淇╂杈撳叆鐨勫瘑鐮� + // 鏍¢獙淇╂杈撳叆鐨勫瘑鐮� btnMixPd = PlatformRSAUtils.getRsaDecryptValue(btnMixPd, PlatformRSAUtils.PRIK); newMixPd = PlatformRSAUtils.getRsaDecryptValue(newMixPd, PlatformRSAUtils.PRIK); if (!newMixPd.equals(btnMixPd)) { @@ -851,7 +777,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); @@ -860,14 +786,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); @@ -875,4 +801,53 @@ // 2. 淇敼骞冲彴鐢ㄦ埛锛堜笉鐢ㄤ慨鏀癸級 return ResponseValue.success(1); } + + @ApiOperation(value = "鏍规嵁鏈烘瀯id鏌ヨ閮ㄩ棬涓殑鐢ㄦ埛", notes = "鏍规嵁鏈烘瀯id鏌ヨ閮ㄩ棬涓殑鐢ㄦ埛") + @ApiImplicitParams({ + @ApiImplicitParam(name = "agencyId", value = "鏈烘瀯id", required = true, dataType = "Long", paramType = "query")}) + @GetMapping("/select/department") + public ResponseValue selectDepartment(Long agencyId) { + FinSysTenantVO finSysTenantVO = new FinSysTenantVO(); + + FinSysTenant finSysTenant = new FinSysTenant(); + finSysTenant.setId(agencyId); + FinSysTenant sysTenant = finSysTenantService.select(finSysTenant).get(0); + finSysTenantVO.setId(sysTenant.getId()); + finSysTenantVO.setName(sysTenant.getName()); + finSysTenantVO.setType("tenant"); + // 閮ㄩ棬 + FinSysTenantDepartment finSysTenantDepartment = new FinSysTenantDepartment(); + finSysTenantDepartment.setTenantId(agencyId); + 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"); + + 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)"; + 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(); + select.forEach(user -> { + UserVO userVO = new UserVO(); + userVO.setId((Long)user.get("sysUserId")); + userVO.setName(user.get("userName").toString()); + userVO.setType("user"); + userVOList.add(userVO); + }); + departmentVO.setChildren(userVOList); + departmentVOList.add(departmentVO); + }); + finSysTenantVO.setChildren(departmentVOList); + + return ResponseValue.success(finSysTenantVO); + } + } -- Gitblit v1.9.1