From 2d02dee9812ff906c0a5db97a5d04154bf54fa3f Mon Sep 17 00:00:00 2001
From: futian.liu <liufutianyoo@163.com>
Date: 星期三, 13 十二月 2023 17:39:58 +0800
Subject: [PATCH] 修改用户角色关联
---
admin-web/src/views/systemManger/server/user/index.vue | 2
consum-base/src/main/java/com/consum/base/controller/FinSysTenantUserController.java | 48 +++++----------
consum-base/src/main/java/com/consum/base/pojo/FinSysTenantUserSearchParam.java | 3 +
consum-base/src/main/java/com/consum/base/pojo/response/FinSysTenantUserVO.java | 60 +++++++++++++++++++
consum-base/src/main/java/com/consum/base/service/FinSysTenantUserService.java | 7 +-
consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantUserServiceImpl.java | 46 +++++++++------
6 files changed, 111 insertions(+), 55 deletions(-)
diff --git a/admin-web/src/views/systemManger/server/user/index.vue b/admin-web/src/views/systemManger/server/user/index.vue
index 04e3997..0a651d3 100644
--- a/admin-web/src/views/systemManger/server/user/index.vue
+++ b/admin-web/src/views/systemManger/server/user/index.vue
@@ -109,7 +109,7 @@
{ title: '缂栧彿', field: 'userCode', align: 'left' },
{ title: '鐢ㄦ埛濮撳悕', field: 'userName', align: 'left' },
{ title: '鐧诲綍鍚�', field: 'userPhone', align: 'center' },
- { title: '鎵�灞炴満鏋�', field: 'userPhone', align: 'center', width: 150 },
+ { title: '鎵�灞炴満鏋�', field: 'tenantName', align: 'center', width: 150 },
{ title: '閮ㄩ棬', field: 'sysDeptName', align: 'center' },
{
field: 'status',
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 25d05a3..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
@@ -12,7 +12,6 @@
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;
@@ -29,6 +28,7 @@
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.pojo.ImportUserParam;
@@ -51,7 +51,6 @@
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;
@@ -59,7 +58,6 @@
import com.walker.infrastructure.utils.StringUtils;
import com.walker.web.ResponseValue;
-import cn.hutool.core.util.ReflectUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -119,32 +117,20 @@
param.setTenantCode(Long.valueOf(finSysTenant.getCode()));
}
}
- GenericPager<FinSysTenantUser> pager = this.finSysTenantUserService.queryAllPageUser(param);
-
- List<FinSysTenantUserVO> resultList = new ArrayList<>();
- for (FinSysTenantUser finSysTenantUser : pager.getDatas()) {
- FinSysTenantUserVO userVO = new FinSysTenantUserVO();
+ 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<S_role> list = finSysTenantUserService.getByUserId(finSysTenantUser.getSysUserId());
+ // 鍒楄〃涓嶉渶瑕佹煡璇㈣鑹诧紝鍙樉绀哄垪琛ㄦ墍闇�瑕佺殑淇℃伅
+ /*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 ? "鏄�" : "鍚�");*/
- finSysTenantUser.setIsSupplier(finSysTenantUser.getSupplierId() != null ? "鏄�" : "鍚�");
-
- BeanUtils.copyProperties(finSysTenantUser, userVO);
- FinSysTenantDepartment department = finSysTenantDepartmentService.getById(finSysTenantUser.getSysDeptId());
- if (Objects.nonNull(department)) {
- userVO.setSysDeptName(department.getName());
- }
- resultList.add(userVO);
}
-
- ReflectUtil.setFieldValue(pager, "datas", resultList);
-
return ResponseValue.success(pager);
}
@@ -450,14 +436,14 @@
// 1. 鏍规嵁 user.getSysUserId() 鏌ヨ
// 宸叉湁鐨勬潈闄�
Long sysUserId = user.getSysUserId();
- List<S_role> list = finSysTenantUserService.getByUserId(sysUserId);
+ List<S_role> list = finSysTenantUserService.getRoleBySysUserId(sysUserId);
// 閫夋嫨鐨勬潈闄�
List<Long> roleList = user.getRoleList();
// 鍏堝垹闄ゅ啀娣诲姞
- if (list != null && list.size() > 0) {
+ if (!CollectionUtils.isEmpty(list)) {
finSysTenantUserService.execDelRoleUserList(sysUserId);
}
- if (roleList != null && roleList.size() > 0) {
+ if (!CollectionUtils.isEmpty(roleList)) {
finSysTenantUserService.execInsertRoleUserList(roleList, sysUserId);
}
this.getFinSysTenantUserCache().remove(sysUserId.toString());
@@ -558,13 +544,12 @@
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);
}
@@ -587,10 +572,11 @@
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);
}
@@ -633,7 +619,7 @@
}
// 1. 鏍规嵁 user.getSysUserId() 鏌ヨ
// 宸叉湁鐨勬潈闄�
- List<S_role> list = finSysTenantUserService.getByUserId(user.getSysUserId());
+ List<S_role> list = finSysTenantUserService.getRoleBySysUserId(user.getSysUserId());
// 閫夋嫨鐨勬潈闄�
List<Long> roleList = user.getRoleList();
// 鍏堝垹闄ゅ啀娣诲姞
diff --git a/consum-base/src/main/java/com/consum/base/pojo/FinSysTenantUserSearchParam.java b/consum-base/src/main/java/com/consum/base/pojo/FinSysTenantUserSearchParam.java
index d0327fc..20bee83 100644
--- a/consum-base/src/main/java/com/consum/base/pojo/FinSysTenantUserSearchParam.java
+++ b/consum-base/src/main/java/com/consum/base/pojo/FinSysTenantUserSearchParam.java
@@ -39,4 +39,7 @@
private Long sysUserId;
+ private Integer pageNum;
+
+ private Integer pageSize;
}
diff --git a/consum-base/src/main/java/com/consum/base/pojo/response/FinSysTenantUserVO.java b/consum-base/src/main/java/com/consum/base/pojo/response/FinSysTenantUserVO.java
index df9b90c..5e6bc2f 100644
--- a/consum-base/src/main/java/com/consum/base/pojo/response/FinSysTenantUserVO.java
+++ b/consum-base/src/main/java/com/consum/base/pojo/response/FinSysTenantUserVO.java
@@ -1,7 +1,7 @@
package com.consum.base.pojo.response;
-import com.consum.model.po.FinSysTenantUser;
import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
@@ -12,7 +12,63 @@
*/
@Data
@ApiModel(value = "FinSysTenantUserVO", description = "鏈烘瀯鐢ㄦ埛淇℃伅")
-public class FinSysTenantUserVO extends FinSysTenantUser {
+public class FinSysTenantUserVO {
+ // 涓婚敭
+ @ApiModelProperty(value = "涓婚敭")
+ private Long id;
+
+ @ApiModelProperty(value = "鐢ㄦ埛缂栫爜")
+ private String userCode;
+
+ @ApiModelProperty(value = "鐢ㄦ埛濮撳悕")
+ private String userName;
+
+ @ApiModelProperty(value = "鐢ㄦ埛鐧诲綍鍚�")
+ private String userPhone;
+
+ @ApiModelProperty(value = "鏈烘瀯id")
+ private String tenantId;
+
+ @ApiModelProperty(value = "鏈烘瀯鍚嶇О")
+ private String tenantName;
+
+ @ApiModelProperty(value = "閮ㄩ棬鍚嶇О")
private String sysDeptName;
+
+ @ApiModelProperty(value = "鐘舵�� (0绂佺敤1鍚敤)")
+ private Integer status;
+
+ // private String createBy;
+ //
+ // private Long createTime;
+ //
+ // private String updateBy;
+ //
+ // private Long updateTime;
+ //
+ // private Integer sex;
+ //
+ // private Long seq;
+ //
+ // private Long sysUserId;
+ //
+ // private Long sysDeptId;
+ //
+ // private String tenantCode;
+ //
+ // private Integer isDelete;
+ //
+ // private Long supplierId;
+ //
+ //
+ //
+ // private String roleStr;
+ //
+ // private List<Long> roleList;
+ //
+ // // 鏄惁涓鸿繍缁村晢 濡傛灉鏈夎繍缁村晢id 鍒欎唬琛ㄦ槸锛屽弽涔嬩笉鏄�
+ // private String isSupplier;
+
+
}
diff --git a/consum-base/src/main/java/com/consum/base/service/FinSysTenantUserService.java b/consum-base/src/main/java/com/consum/base/service/FinSysTenantUserService.java
index 8143561..5104777 100644
--- a/consum-base/src/main/java/com/consum/base/service/FinSysTenantUserService.java
+++ b/consum-base/src/main/java/com/consum/base/service/FinSysTenantUserService.java
@@ -1,12 +1,13 @@
package com.consum.base.service;
+import com.consum.base.pojo.response.FinSysTenantUserVO;
import java.util.List;
+import com.consum.base.core.utils.PageUtil;
import com.consum.base.pojo.FinSysTenantUserSearchParam;
import com.consum.model.po.FinSysTenantUser;
import com.iplatform.model.po.S_dept;
import com.iplatform.model.po.S_role;
-import com.walker.db.page.GenericPager;
import com.walker.jdbc.service.BaseService;
/**
@@ -17,7 +18,7 @@
**/
public interface FinSysTenantUserService extends BaseService {
- GenericPager<FinSysTenantUser> queryAllPageUser(FinSysTenantUserSearchParam param);
+ PageUtil<FinSysTenantUserVO> queryAllPageUser(FinSysTenantUserSearchParam param);
FinSysTenantUser queryOneById(String id);
@@ -33,7 +34,7 @@
FinSysTenantUser getByUserCode(String userCode);
- List<S_role> getByUserId(Long userId);
+ List<S_role> getRoleBySysUserId(Long userId);
List<S_role> getRoleAll();
diff --git a/consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantUserServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantUserServiceImpl.java
index eaf3dad..5a6a9fe 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantUserServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/FinSysTenantUserServiceImpl.java
@@ -5,9 +5,14 @@
import java.util.List;
import java.util.Map;
+import org.apache.commons.compress.utils.Lists;
import org.springframework.stereotype.Service;
+import com.consum.base.core.utils.MapUtils;
+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.response.FinSysTenantUserVO;
import com.consum.base.service.FinSysTenantUserService;
import com.consum.model.po.FinSysTenantUser;
import com.iplatform.base.util.PlatformRSAUtils;
@@ -24,7 +29,9 @@
private static final String SQL_GET_USER =
"SELECT * FROM fin_sys_tenant_user WHERE IS_DELETE = 0 AND `STATUS` = 1 AND TENANT_ID = ?";
private static final String SQL_QH_PAGE_USER_PREFIX =
- "select fstu.* from FIN_SYS_TENANT_USER fstu where fstu.IS_DELETE = 0 ";
+ "select fstu.id,fstu.USER_CODE,fstu.USER_NAME,fstu.USER_PHONE,fst.name tenantName,fstd.name sysDeptName,fst.STATUS from FIN_SYS_TENANT_USER fstu "
+ + "left join fin_sys_tenant fst on fst.id =fstu.TENANT_ID "
+ + "left join fin_sys_tenant_department fstd on fstd.id = fstu.SYS_DEPT_ID where fstu.IS_DELETE = 0 ";
private static final String SQL_TENANT_USER =
"select fstu.*, fst.TENANT_NAME, fst.LV from FIN_SYS_TENANT_USER fstu\n"
@@ -47,8 +54,8 @@
* @Date 2023/7/17 14:26
*/
@Override
- public GenericPager<FinSysTenantUser> queryAllPageUser(FinSysTenantUserSearchParam param) {
- Map<String, Object> parameter = new HashMap<>(5);
+ public PageUtil<FinSysTenantUserVO> queryAllPageUser(FinSysTenantUserSearchParam param) {
+ Map<String, Object> parameter = new HashMap<>(10);
StringBuilder sql = new StringBuilder(SQL_QH_PAGE_USER_PREFIX);
if (param.getTenantCode() > 0) {
sql.append(" and fstu.TENANT_CODE =:tenantCode");
@@ -66,19 +73,11 @@
sql.append(" and USER_CODE like :USER_CODE");
parameter.put("USER_CODE", StringUtils.CHAR_PERCENT + param.getUserCode() + StringUtils.CHAR_PERCENT);
}
- // if(StringUtils.isNotEmpty(param.getUserCode())){
- // sql.append(" and user_code like :user_code");
- // parameter.put("user_code", StringUtils.CHAR_PERCENT + param.getUserCode() + StringUtils.CHAR_PERCENT);
- // }
+
if (param.getStatus() != null) {
- sql.append(" and status =:status");
+ sql.append(" and fstu.status =:status");
parameter.put("status", param.getStatus());
}
-
- // if(param.getRoleId()!=null &&!param.getRoleId().equals("")){
- // sql.append(" and fstu.SYS_USER_ID in (select user_id from s_role_user where role_id = :role_id)");
- // parameter.put("role_id", param.getRoleId());
- // }
if (StringUtils.isNotEmpty(param.getUserPhone())) {
sql.append(" and USER_PHONE =:userPhone");
@@ -111,8 +110,19 @@
sql.append(" and fstu.AGENT_JID is null ");
}
}
- sql.append(" ORDER BY SEQ asc ,CREATE_TIME desc");
- return this.selectSplit(sql.toString(), parameter, new FinSysTenantUser());
+ sql.append(" ORDER BY SEQ asc ,fstu.CREATE_TIME desc");
+
+ GenericPager<Map<String, Object>> mapGenericPager =
+ this.selectSplit(sql.toString(), parameter, param.getPageNum(), param.getPageSize(), new MapperUtil());
+ PageUtil pageUtil = new PageUtil(mapGenericPager);
+
+ List<FinSysTenantUserVO> result = Lists.newArrayList();
+ mapGenericPager.getDatas().forEach(map -> {
+ FinSysTenantUserVO finSysTenantUserVO = MapUtils.convertMapToObj(map, FinSysTenantUserVO.class);
+ result.add(finSysTenantUserVO);
+ });
+ pageUtil.setDatas(result);
+ return pageUtil;
}
@Override
@@ -218,10 +228,10 @@
* @return
*/
@Override
- public List<S_role> getByUserId(Long userId) {
+ public List<S_role> getRoleBySysUserId(Long userId) {
Map<String, Object> parameter = new HashMap<>();
- StringBuilder sql = new StringBuilder(SQL_SELECT_USER_ID);
- sql.append("and ROLE_ID IN (SELECT DISTINCT(ROLE_ID) FROM S_ROLE_USER WHERE USER_ID= :userId )");
+ StringBuilder sql = new StringBuilder("SELECT * FROM S_ROLE where ");
+ sql.append("ROLE_ID IN (SELECT DISTINCT(ROLE_ID) FROM S_ROLE_USER WHERE USER_ID= :userId )");
parameter.put("userId", userId);
List<S_role> select = this.select(sql.toString(), parameter, new S_role());
return select;
--
Gitblit v1.9.1