Browse Source

Merge branch 'dev1.0' of http://git.elinkit.com.cn:7070/r/epmet-cloud into dev1.0

dev
wangchao 5 years ago
parent
commit
be483a46f4
  1. 3
      epmet-auth/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
  2. 5
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java
  3. 7
      epmet-module/oper-access/oper-access-client/src/main/java/com/epmet/dto/OperRoleDTO.java
  4. 14
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperMenuController.java
  5. 8
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperRoleController.java
  6. 46
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperRoleUserController.java
  7. 7
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/dao/OperRoleMenuDao.java
  8. 12
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/dao/OperRoleUserDao.java
  9. 2
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperLanguageEntity.java
  10. 2
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperMenuEntity.java
  11. 2
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperResourceEntity.java
  12. 2
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperRoleEntity.java
  13. 2
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperRoleMenuEntity.java
  14. 2
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperRoleUserEntity.java
  15. 24
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/OperRoleMenuService.java
  16. 38
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/OperRoleUserService.java
  17. 41
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperRoleMenuServiceImpl.java
  18. 14
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperRoleServiceImpl.java
  19. 52
      epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperRoleUserServiceImpl.java
  20. 21
      epmet-module/oper-access/oper-access-server/src/main/resources/mapper/OperRoleMenuDao.xml
  21. 25
      epmet-module/oper-access/oper-access-server/src/main/resources/mapper/OperRoleUserDao.xml
  22. 2
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDetailDao.xml
  23. 7
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/OperUserDTO.java
  24. 65
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/QueryOperUserResultDto.java
  25. 13
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/OperUserController.java
  26. 44
      epmet-user/epmet-user-server/src/main/java/com/epmet/feign/OperRoleUserFeignClient.java
  27. 33
      epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/OperRoleUserFeignClientFallBack.java
  28. 28
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/OperUserServiceImpl.java

3
epmet-auth/src/main/java/com/epmet/feign/EpmetUserFeignClient.java

@ -10,6 +10,7 @@ import com.epmet.feign.fallback.EpmetUserFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @Description
@ -49,5 +50,5 @@ public interface EpmetUserFeignClient {
* @Date 2020/3/16 16:14
**/
@PostMapping(value = "epmetuser/customeruser/selectLoginUserInfoByPassword", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<PasswordLoginUserInfoResultDTO> selectLoginUserInfoByPassword(PasswordLoginUserInfoFormDTO passwordLoginUserInfoFormDTO);
Result<PasswordLoginUserInfoResultDTO> selectLoginUserInfoByPassword(@RequestBody PasswordLoginUserInfoFormDTO passwordLoginUserInfoFormDTO);
}

5
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/ServiceConstant.java

@ -53,4 +53,9 @@ public interface ServiceConstant {
* 政府端组织架构
*/
String GOV_ORG_SERVER = "gov-org-server";
/**
* 运营端访问权限控制
*/
String OPER_ACCESS_SERVER = "oper-access-server";
}

7
epmet-module/oper-access/oper-access-client/src/main/java/com/epmet/dto/OperRoleDTO.java

@ -19,6 +19,8 @@ package com.epmet.dto;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import lombok.Data;
@ -83,4 +85,9 @@ public class OperRoleDTO implements Serializable {
*/
private Date updatedTime;
/**
* 菜单ID列表
*/
private List<String> menuIdList;
}

14
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperMenuController.java

@ -11,14 +11,12 @@ import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.OperMenuDTO;
import com.epmet.dto.form.UserInfoDto;
import com.epmet.excel.OperMenuExcel;
import com.epmet.service.OperMenuService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
@ -101,4 +99,16 @@ public class OperMenuController {
return new Result<Set<String>>().ok(set);
}
/**
* 角色菜单权限
* @param tokenDto token
* @return
*/
@GetMapping("select")
public Result<List<OperMenuDTO>> select(@LoginUser TokenDto tokenDto){
List<OperMenuDTO> list = operMenuService.getUserMenuList(tokenDto, null);
return new Result<List<OperMenuDTO>>().ok(list);
}
}

8
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperRoleController.java

@ -27,6 +27,7 @@ import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.OperRoleDTO;
import com.epmet.excel.OperRoleExcel;
import com.epmet.service.OperRoleMenuService;
import com.epmet.service.OperRoleService;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@ -50,6 +51,8 @@ public class OperRoleController {
@Autowired
private OperRoleService operRoleService;
@Autowired
private OperRoleMenuService operRoleMenuService;
@GetMapping("page")
public Result<PageData<OperRoleDTO>> page(@RequestParam Map<String, Object> params){
@ -60,6 +63,11 @@ public class OperRoleController {
@GetMapping("{id}")
public Result<OperRoleDTO> get(@PathVariable("id") String id){
OperRoleDTO data = operRoleService.get(id);
//查询角色对应的菜单
List<String> menuIdList = operRoleMenuService.getMenuIdList(id);
data.setMenuIdList(menuIdList);
return new Result<OperRoleDTO>().ok(data);
}

46
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/controller/OperRoleUserController.java

@ -91,4 +91,50 @@ public class OperRoleUserController {
ExcelUtils.exportExcelToTarget(response, null, list, OperRoleUserExcel.class);
}
/**
* 获取权限id列表
* @param id 用户id
* @return List<String>
* @author zhaoqifeng
*/
@GetMapping("getRoleIdList/{id}")
public Result<List<String>>getRoleIdList(@PathVariable("id") String id) {
List<String> list = operRoleUserService.getRoleIdList(id);
return new Result<List<String>>().ok(list);
}
/**
* 保存更新权限
* @param userId 用户id
* @param roleIdList 权限列表
* @author zhaoqifeng
*/
@PostMapping("saveOrUpdateRole")
public Result saveOrUpdate(@RequestParam("userId") String userId, @RequestBody List<String> roleIdList) {
operRoleUserService.saveOrUpdate(userId, roleIdList);
return new Result();
}
/**
* 根据用户id删除角色用户关系
* @param id 用户id
* @return Result
*/
@PostMapping("deleteByUserId")
public Result deleteByUserId(String id) {
operRoleUserService.deleteByUserId(id);
return new Result();
}
/**
* 根据用户ids删除角色用户关系
* @param ids 用户ids
* @return Result
*/
@PostMapping("deleteByUserIds")
public Result deleteByUserIds(@RequestBody String[] ids) {
operRoleUserService.deleteByUserIds(ids);
return new Result();
}
}

7
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/dao/OperRoleMenuDao.java

@ -39,4 +39,11 @@ public interface OperRoleMenuDao extends BaseDao<OperRoleMenuEntity> {
* @param menuId 菜单id
*/
void deleteByMenuId(String menuId);
/**
* 根据角色ids删除角色菜单关系
* @param roleIds 角色ids
*/
void deleteByRoleIds(String[] roleIds);
}

12
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/dao/OperRoleUserDao.java

@ -29,6 +29,18 @@ public interface OperRoleUserDao extends BaseDao<OperRoleUserEntity> {
*/
void deleteByRoleIds(String[] roleIds);
/**
* 根据用户ids删除角色用户关系
* @param userIds 用户ids
*/
void deleteByUserIds(String[] userIds);
/**
* 根据角色id删除角色用户关系
* @param roleId 角色id
*/
void deleteByRoleId(String roleId);
/**
* 根据用户id删除角色用户关系
* @param userId 用户id

2
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperLanguageEntity.java

@ -21,7 +21,7 @@ import java.io.Serializable;
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("sys_language")
@TableName("oper_language")
public class OperLanguageEntity implements Serializable {
private static final long serialVersionUID = 1L;

2
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperMenuEntity.java

@ -25,7 +25,7 @@ import java.util.Date;
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("sys_menu")
@TableName("oper_menu")
public class OperMenuEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;

2
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperResourceEntity.java

@ -25,7 +25,7 @@ import java.util.Date;
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("sys_resource")
@TableName("oper_resource")
public class OperResourceEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;

2
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperRoleEntity.java

@ -25,7 +25,7 @@ import java.util.Date;
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("sys_role")
@TableName("oper_role")
public class OperRoleEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;

2
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperRoleMenuEntity.java

@ -22,7 +22,7 @@ import lombok.EqualsAndHashCode;
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("sys_role_menu")
@TableName("oper_role_menu")
public class OperRoleMenuEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**

2
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/entity/OperRoleUserEntity.java

@ -21,7 +21,7 @@ import lombok.EqualsAndHashCode;
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("sys_role_user")
@TableName("oper_role_user")
public class OperRoleUserEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;

24
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/OperRoleMenuService.java

@ -92,4 +92,28 @@ public interface OperRoleMenuService extends BaseService<OperRoleMenuEntity> {
* @date 2020-03-18
*/
void delete(String[] ids);
/**
* 根据角色ID获取菜单ID列表
*/
List<String> getMenuIdList(String roleId);
/**
* 保存或修改
* @param roleId 角色ID
* @param menuIdList 菜单ID列表
*/
void saveOrUpdate(String roleId, List<String> menuIdList);
/**
* 根据角色id删除角色菜单关系
* @param roleId 角色id
*/
void deleteByRoleId(String roleId);
/**
* 根据角色ids删除角色菜单关系
* @param roleIds
*/
void deleteByRoleIds(String[] roleIds);
}

38
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/OperRoleUserService.java

@ -92,4 +92,42 @@ public interface OperRoleUserService extends BaseService<OperRoleUserEntity> {
* @date 2020-03-18
*/
void delete(String[] ids);
/**
* 保存或修改
* @param userId 用户ID
* @param roleIdList 角色ID列表
*/
void saveOrUpdate(String userId, List<String> roleIdList);
/**
* 根据角色id删除角色用户关系
* @param roleId 角色id
*/
void deleteByRoleId(String roleId);
/**
* 根据用户id删除角色用户关系
* @param userId 用户id
*/
void deleteByUserId(String userId);
/**
* 角色ID列表
* @param userId 用户ID
* @return List<String>
*/
List<String> getRoleIdList(String userId);
/**
* 根据角色ids删除角色用户关系
* @param roleIds 角色ids
*/
void deleteByRoleIds(String[] roleIds);
/**
* 根据用户ids删除角色用户关系
* @param userIds 用户ids
*/
void deleteByUserIds(String[] userIds);
}

41
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperRoleMenuServiceImpl.java

@ -17,6 +17,7 @@
package com.epmet.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
@ -48,6 +49,8 @@ public class OperRoleMenuServiceImpl extends BaseServiceImpl<OperRoleMenuDao, Op
@Autowired
private OperRoleMenuRedis operRoleMenuRedis;
@Autowired
private OperRoleMenuDao operRoleMenuDao;
@Override
public PageData<OperRoleMenuDTO> page(Map<String, Object> params) {
@ -101,4 +104,42 @@ public class OperRoleMenuServiceImpl extends BaseServiceImpl<OperRoleMenuDao, Op
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public List<String> getMenuIdList(String roleId){
return baseDao.getMenuIdList(roleId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void saveOrUpdate(String roleId, List<String> menuIdList) {
//先删除角色菜单关系
deleteByRoleId(roleId);
//角色没有一个菜单权限的情况
if(CollUtil.isEmpty(menuIdList)){
return ;
}
//保存角色菜单关系
for(String menuId : menuIdList){
OperRoleMenuEntity operRoleMenuEntity = new OperRoleMenuEntity();
operRoleMenuEntity.setMenuId(menuId);
operRoleMenuEntity.setRoleId(roleId);
//保存
insert(operRoleMenuEntity);
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteByRoleId(String roleId) {
baseDao.deleteByRoleId(roleId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteByRoleIds(String[] roleIds) {
operRoleMenuDao.deleteByRoleIds(roleIds);
}
}

14
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperRoleServiceImpl.java

@ -27,7 +27,9 @@ import com.epmet.dao.OperRoleDao;
import com.epmet.dto.OperRoleDTO;
import com.epmet.entity.OperRoleEntity;
import com.epmet.redis.OperRoleRedis;
import com.epmet.service.OperRoleMenuService;
import com.epmet.service.OperRoleService;
import com.epmet.service.OperRoleUserService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -48,6 +50,10 @@ public class OperRoleServiceImpl extends BaseServiceImpl<OperRoleDao, OperRoleEn
@Autowired
private OperRoleRedis operRoleRedis;
@Autowired
private OperRoleMenuService OperRoleMenuService;
@Autowired
private OperRoleUserService operRoleUserService;
@Override
public PageData<OperRoleDTO> page(Map<String, Object> params) {
@ -85,6 +91,8 @@ public class OperRoleServiceImpl extends BaseServiceImpl<OperRoleDao, OperRoleEn
public void save(OperRoleDTO dto) {
OperRoleEntity entity = ConvertUtils.sourceToTarget(dto, OperRoleEntity.class);
insert(entity);
//保存角色菜单关系
OperRoleMenuService.saveOrUpdate(entity.getId(), dto.getMenuIdList());
}
@Override
@ -92,6 +100,8 @@ public class OperRoleServiceImpl extends BaseServiceImpl<OperRoleDao, OperRoleEn
public void update(OperRoleDTO dto) {
OperRoleEntity entity = ConvertUtils.sourceToTarget(dto, OperRoleEntity.class);
updateById(entity);
//保存角色菜单关系
OperRoleMenuService.saveOrUpdate(entity.getId(), dto.getMenuIdList());
}
@Override
@ -99,6 +109,10 @@ public class OperRoleServiceImpl extends BaseServiceImpl<OperRoleDao, OperRoleEn
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
OperRoleMenuService.deleteByRoleIds(ids);
operRoleUserService.deleteByRoleIds(ids);
}
}

52
epmet-module/oper-access/oper-access-server/src/main/java/com/epmet/service/impl/OperRoleUserServiceImpl.java

@ -17,6 +17,7 @@
package com.epmet.service.impl;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
@ -48,6 +49,8 @@ public class OperRoleUserServiceImpl extends BaseServiceImpl<OperRoleUserDao, Op
@Autowired
private OperRoleUserRedis operRoleUserRedis;
@Autowired
private OperRoleUserDao operRoleUserDao;
@Override
public PageData<OperRoleUserDTO> page(Map<String, Object> params) {
@ -101,4 +104,53 @@ public class OperRoleUserServiceImpl extends BaseServiceImpl<OperRoleUserDao, Op
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
@Transactional(rollbackFor = Exception.class)
public void saveOrUpdate(String userId, List<String> roleIdList) {
//先删除角色用户关系
deleteByUserId(userId);
//用户没有一个角色权限的情况
if(CollUtil.isEmpty(roleIdList)){
return ;
}
//保存角色用户关系
for(String roleId : roleIdList){
OperRoleUserEntity operRoleUserEntity = new OperRoleUserEntity();
operRoleUserEntity.setUserId(userId);
operRoleUserEntity.setRoleId(roleId);
//保存
insert(operRoleUserEntity);
}
}
@Override
public void deleteByRoleId(String roleId) {
operRoleUserDao.deleteByRoleId(roleId);
}
@Override
public void deleteByUserId(String userId) {
operRoleUserDao.deleteByUserId(userId);
}
@Override
public List<String> getRoleIdList(String userId) {
return baseDao.getRoleIdList(userId);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteByRoleIds(String[] roleIds) {
operRoleUserDao.deleteByRoleIds(roleIds);
}
@Override
public void deleteByUserIds(String[] userIds) {
operRoleUserDao.deleteByUserIds(userIds);
}
}

21
epmet-module/oper-access/oper-access-server/src/main/resources/mapper/OperRoleMenuDao.xml

@ -3,16 +3,23 @@
<mapper namespace="com.epmet.dao.OperRoleMenuDao">
<select id="getMenuIdList" resultType="long">
<select id="getMenuIdList" resultType="java.lang.String">
select menu_id from oper_role_menu where role_id = #{value}
</select>
<delete id="deleteByRoleId">
delete from oper_role_menu where role_id = #{value}
</delete>
<update id="deleteByRoleIds">
update oper_role_menu set del_flag = 1 where del_flag = 0 and role_id in
<foreach item="roleId" collection="array" open="(" separator="," close=")">
#{roleId}
</foreach>
</update>
<delete id="deleteByMenuId">
delete from oper_role_menu where menu_id = #{value}
</delete>
<update id="deleteByRoleId">
update oper_role_menu set del_flag = 1 where role_id = #{value} and del_flag = 0
</update>
<update id="deleteByMenuId">
update oper_role_menu set del_flag = 1 where menu_id = #{value} and del_flag = 0
</update>
</mapper>

25
epmet-module/oper-access/oper-access-server/src/main/resources/mapper/OperRoleUserDao.xml

@ -3,18 +3,29 @@
<mapper namespace="com.epmet.dao.OperRoleUserDao">
<delete id="deleteByRoleIds">
delete from oper_role_user where role_id in
<update id="deleteByRoleIds">
update oper_role_user set del_flag = 1 where del_flag = 0 and role_id in
<foreach item="roleId" collection="array" open="(" separator="," close=")">
#{roleId}
</foreach>
</delete>
</update>
<delete id="deleteByUserId">
delete from oper_role_user where user_id = #{value}
</delete>
<update id="deleteByUserIds">
update oper_role_user set del_flag = 1 where del_flag = 0 and user_id in
<foreach item="userId" collection="array" open="(" separator="," close=")">
#{userId}
</foreach>
</update>
<update id="deleteByRoleId">
update oper_role_user set del_flag = 1 where role_id = #{value} and del_flag = 0
</update>
<update id="deleteByUserId">
update oper_role_user set del_flag = 1 where user_id = #{value} and del_flag = 0
</update>
<select id="getRoleIdList" resultType="long">
<select id="getRoleIdList" resultType="java.lang.String">
select role_id from oper_role_user where user_id = #{value}
</select>

2
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDetailDao.xml

@ -49,6 +49,7 @@
a.DEL_FLAG = 0
AND a.CUSTOMER_ID = #{customerId}
AND a.CLIENT_TYPE = #{clientType}
and a.`STATUS`=1
ORDER BY
a.CREATED_TIME DESC
LIMIT 1
@ -65,6 +66,7 @@
SELECT
b.COMPONENT_ID,
c.COMPONENT_NAME,
c.COMPONENT_FRONT_ID,
b.REGION,
b.CONFIGURATION,
b.DEMO_DATA,

7
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/OperUserDTO.java

@ -19,6 +19,8 @@ package com.epmet.dto;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
import lombok.Data;
@ -123,4 +125,9 @@ public class OperUserDTO implements Serializable {
*/
private Date updatedTime;
/**
* 角色ID列表
*/
private List<String> roleIdList;
}

65
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/QueryOperUserResultDto.java

@ -0,0 +1,65 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/3/21 9:53
*/
@Data
public class QueryOperUserResultDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
private String id;
/**
* 姓名
*/
private String realName;
/**
* 头像
*/
private String headUrl;
/**
* 性别 0 1 2保密
*/
private Integer gender;
/**
* 邮箱
*/
private String email;
/**
* 手机号
*/
private String phone;
/**
* 微信openId
*/
private String wxOpenId;
/**
* 超级管理员 0 1
*/
private Integer superAdmin;
/**
* 状态 0停用 1正常
*/
private Integer status;
}

13
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/OperUserController.java

@ -29,11 +29,12 @@ import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.OperUserDTO;
import com.epmet.dto.result.QueryOperUserResultDto;
import com.epmet.excel.OperUserExcel;
import com.epmet.feign.OperRoleUserFeignClient;
import com.epmet.service.OperUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@ -52,6 +53,8 @@ public class OperUserController {
@Autowired
private OperUserService operUserService;
@Autowired
private OperRoleUserFeignClient operRoleUserFeignClient;
@GetMapping("page")
public Result<PageData<OperUserDTO>> page(@RequestParam Map<String, Object> params) {
@ -62,6 +65,9 @@ public class OperUserController {
@GetMapping("{id}")
public Result<OperUserDTO> get(@PathVariable("id") String id) {
OperUserDTO data = operUserService.get(id);
//用户角色列表
Result<List<String>> roleIdList = operRoleUserFeignClient.getRoleIdList(id);
data.setRoleIdList(roleIdList.getData());
return new Result<OperUserDTO>().ok(data);
}
@ -103,9 +109,10 @@ public class OperUserController {
* @author zhaoqifeng
*/
@GetMapping("queryOperUserDto")
public Result<OperUserDTO> queryOperUserDto(@LoginUser TokenDto tokenDto) {
public Result<QueryOperUserResultDto> queryOperUserDto(@LoginUser TokenDto tokenDto) {
OperUserDTO data = operUserService.getOperUserInfoById(tokenDto.getUserId());
return new Result<OperUserDTO>().ok(data);
QueryOperUserResultDto dto = ConvertUtils.sourceToTarget(data, QueryOperUserResultDto.class);
return new Result<QueryOperUserResultDto>().ok(dto);
}
/**

44
epmet-user/epmet-user-server/src/main/java/com/epmet/feign/OperRoleUserFeignClient.java

@ -0,0 +1,44 @@
package com.epmet.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.feign.fallback.OperRoleUserFeignClientFallBack;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/3/20 17:19
*/
@FeignClient(name = ServiceConstant.OPER_ACCESS_SERVER, fallback = OperRoleUserFeignClientFallBack.class)
public interface OperRoleUserFeignClient {
/**
* 获取权限id列表
* @param id 用户id
* @return List<String>
* @author zhaoqifeng
*/
@GetMapping("/oper/access/operroleuser/getRoleIdList/{id}")
Result<List<String>> getRoleIdList(@PathVariable("id") String id);
/**
* 保存更新权限
* @param userId 用户id
* @param roleIdList 权限列表
* @author zhaoqifeng
*/
@PostMapping("/oper/access/operroleuser/saveOrUpdateRole")
Result saveOrUpdate(@RequestParam("userId") String userId, @RequestBody List<String> roleIdList);
/**
* 根据用户ids删除角色用户关系
* @param ids 户ids
* @return Result
*/
@PostMapping("/oper/access/operroleuser/deleteByUserIds")
Result deleteByUserIds(@RequestBody String[] ids);
}

33
epmet-user/epmet-user-server/src/main/java/com/epmet/feign/fallback/OperRoleUserFeignClientFallBack.java

@ -0,0 +1,33 @@
package com.epmet.feign.fallback;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.feign.OperRoleUserFeignClient;
import org.springframework.stereotype.Component;
import sun.misc.Contended;
import java.util.List;
/**
* @author zhaoqifeng
* @dscription
* @date 2020/3/20 17:27
*/
@Component
public class OperRoleUserFeignClientFallBack implements OperRoleUserFeignClient {
@Override
public Result<List<String>> getRoleIdList(String id) {
return ModuleUtils.feignConError(ServiceConstant.OPER_ACCESS_SERVER, "getRoleIdList",id);
}
@Override
public Result saveOrUpdate(String userId, List<String> roleIdList) {
return ModuleUtils.feignConError(ServiceConstant.OPER_ACCESS_SERVER, "saveOrUpdate",userId);
}
@Override
public Result deleteByUserIds(String[] ids) {
return ModuleUtils.feignConError(ServiceConstant.OPER_ACCESS_SERVER, "deleteByUserId",ids);
}
}

28
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/OperUserServiceImpl.java

@ -20,12 +20,15 @@ package com.epmet.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.enums.SuperAdminEnum;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.password.PasswordUtils;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.dao.OperUserDao;
import com.epmet.dto.OperUserDTO;
import com.epmet.entity.OperUserEntity;
import com.epmet.feign.OperRoleUserFeignClient;
import com.epmet.redis.OperUserRedis;
import com.epmet.service.OperUserService;
import org.apache.commons.lang3.StringUtils;
@ -50,6 +53,8 @@ public class OperUserServiceImpl extends BaseServiceImpl<OperUserDao, OperUserEn
private OperUserRedis operUserRedis;
@Autowired
private OperUserDao operUserDao;
@Autowired
private OperRoleUserFeignClient operRoleUserFeignClient;
@Override
public PageData<OperUserDTO> page(Map<String, Object> params) {
@ -87,14 +92,35 @@ public class OperUserServiceImpl extends BaseServiceImpl<OperUserDao, OperUserEn
@Transactional(rollbackFor = Exception.class)
public void save(OperUserDTO dto) {
OperUserEntity entity = ConvertUtils.sourceToTarget(dto, OperUserEntity.class);
//密码加密
String password = PasswordUtils.encode(entity.getPassword());
entity.setPassword(password);
entity.setSuperAdmin(SuperAdminEnum.NO.value());
insert(entity);
//更新角色用户关系
operRoleUserFeignClient.saveOrUpdate(entity.getId(),dto.getRoleIdList());
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(OperUserDTO dto) {
OperUserEntity entity = ConvertUtils.sourceToTarget(dto, OperUserEntity.class);
//密码加密
if(StringUtils.isBlank(dto.getPassword())){
entity.setPassword(null);
}else{
String password = PasswordUtils.encode(entity.getPassword());
entity.setPassword(password);
}
updateById(entity);
//更新角色用户关系
operRoleUserFeignClient.saveOrUpdate(entity.getId(),dto.getRoleIdList());
}
@Override
@ -102,6 +128,8 @@ public class OperUserServiceImpl extends BaseServiceImpl<OperUserDao, OperUserEn
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
operRoleUserFeignClient.deleteByUserIds(ids);
}
@Override

Loading…
Cancel
Save