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', 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 临时解决 将来放配置文件中 // 查询 用户角色 // 已有的权限 List<S_role> list = finSysTenantUserService.getByUserId(sysInfo.getSysUserId()); List<S_role> list = finSysTenantUserService.getRoleBySysUserId(sysInfo.getSysUserId()); for (S_role s_role : list) { // TODO 临时解决 将来放配置文件中 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(); // 先删除再添加 consum-base/src/main/java/com/consum/base/pojo/FinSysTenantUserSearchParam.java
@@ -39,4 +39,7 @@ private Long sysUserId; private Integer pageNum; private Integer pageSize; } 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; } 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(); 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;