Browse Source

Merge remote-tracking branch 'origin/dev_new_menu'

# Conflicts:
#	epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java
#	epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java
master
yinzuomei 3 years ago
parent
commit
773bd48cc1
  1. 14
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java
  2. 11
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java
  3. 2
      epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java
  4. 5
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/GovRoleDTO.java
  5. 5
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/GovRoleMenuDTO.java
  6. 5
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/GovRoleUserDTO.java
  7. 19
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/form/GetStaffExistRoleFormDTO.java
  8. 26
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/form/RoleUserFormDTO.java
  9. 40
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/result/NewUserRoleResultDTO.java
  10. 23
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/feign/GovAccessFeignClient.java
  11. 14
      epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/feign/fallback/GovAccessFeignClientFallBack.java
  12. 6
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/controller/GovMenuController.java
  13. 11
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/controller/GovRoleController.java
  14. 6
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/controller/GovRoleMenuController.java
  15. 26
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/controller/GovRoleUserController.java
  16. 12
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/dao/GovRoleDao.java
  17. 9
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/dao/GovRoleMenuDao.java
  18. 6
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/entity/GovMenuEntity.java
  19. 5
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/entity/GovRoleEntity.java
  20. 5
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/entity/GovRoleMenuEntity.java
  21. 5
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/entity/GovRoleUserEntity.java
  22. 1
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/GovMenuService.java
  23. 19
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/GovRoleUserService.java
  24. 58
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovMenuServiceImpl.java
  25. 5
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovRoleMenuServiceImpl.java
  26. 11
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovRoleServiceImpl.java
  27. 58
      epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovRoleUserServiceImpl.java
  28. 16
      epmet-module/gov-access/gov-access-server/src/main/resources/db/migration/V0.0.7__alter_gov_role.sql
  29. 9
      epmet-module/gov-access/gov-access-server/src/main/resources/mapper/GovRoleDao.xml
  30. 12
      epmet-module/gov-access/gov-access-server/src/main/resources/mapper/GovRoleMenuDao.xml
  31. 2
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AddStaffV2FromDTO.java
  32. 2
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/StaffSubmitFromDTO.java
  33. 1
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/StaffInitResultDTO.java
  34. 2
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/StaffRoleResultDTO.java
  35. 5
      epmet-module/gov-org/gov-org-server/pom.xml
  36. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java
  37. 1
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java
  38. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/ServiceProjectController.java
  39. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/UserHouseScopeController.java
  40. 3
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/CustomerAgencyRedis.java
  41. 3
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java
  42. 4
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/ServiceProjectService.java
  43. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/UserHouseScopeService.java
  44. 5
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java
  45. 6
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java
  46. 4
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java
  47. 8
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/ServiceProjectServiceImpl.java
  48. 14
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/StaffServiceImpl.java
  49. 4
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/UserHouseScopeServiceImpl.java
  50. 9
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java
  51. 5
      epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java
  52. 11
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java
  53. 5
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserRoleController.java
  54. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java
  55. 5
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserRoleDao.java
  56. 8
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java
  57. 5
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserRoleService.java
  58. 16
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java
  59. 6
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java
  60. 22
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java
  61. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java
  62. 11
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserRoleServiceImpl.java
  63. 8
      epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml
  64. 4
      epmet-user/epmet-user-server/src/main/resources/mapper/UserRoleDao.xml

14
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisKeys.java

@ -644,8 +644,18 @@ public class RedisKeys {
* @param agencyId
* @return
*/
public static String getOrgTreeCacheKey(String agencyId) {
return rootPrefix.concat("org:temp:orgtree").concat(agencyId);
public static String getOrgTreeCacheKey(String agencyId,String customerId) {
return rootPrefix.concat("org:temp:orgtree:").concat(customerId).concat(StrConstant.COLON).concat(agencyId);
}
/**
* 与getOrgTreeCacheKey一致用于模糊删除
* @param customerId
* @return
*/
public static String getOrgTreeCachePrexKey(String customerId) {
// return "epmet:org:temp:orgtree".concat(StrConstant.STAR);
return rootPrefix.concat("org:temp:orgtree:").concat(customerId).concat(StrConstant.STAR);
}
public static String getHouseInfoCacheKey(String houseId,String customerId){

11
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/RedisUtils.java

@ -462,4 +462,15 @@ public class RedisUtils {
public Long getTTL(String treeCacheKey) {
return redisTemplate.getExpire(treeCacheKey);
}
/**
* 根据前缀模糊删除
* @param prex
*/
public void deleteByPrex(String prex) {
Set<String> keys = redisTemplate.keys(prex);
if (!CollectionUtils.isEmpty(keys)) {
redisTemplate.delete(keys);
}
}
}

2
epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java

@ -566,7 +566,7 @@ public class GovOrgServiceImpl implements GovOrgService {
String agencyId = staffInfo.getAgencyId();
String client = formDTO.getClient();
//组织缓存key
String treeCacheKey = RedisKeys.getOrgTreeCacheKey(agencyId).concat(StrConstant.COLON).concat(client);
String treeCacheKey = RedisKeys.getOrgTreeCacheKey(agencyId,tokenDto.getCustomerId()).concat(StrConstant.COLON).concat(client);
Long expiryTime = redisUtils.getTTL(treeCacheKey);
List<OrgTreeResultDTO> orgTreeResultDTOS = (List<OrgTreeResultDTO>) redisUtils.get(treeCacheKey);
//如果接近过期或已经过期且缓存数据不为空 则异步查询

5
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/GovRoleDTO.java

@ -40,6 +40,11 @@ public class GovRoleDTO implements Serializable {
*/
private String id;
/**
* 客户id
*/
private String customerId;
/**
* 角色名称
*/

5
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/GovRoleMenuDTO.java

@ -39,6 +39,11 @@ public class GovRoleMenuDTO implements Serializable {
*/
private String id;
/**
* 客户id
*/
private String customerId;
/**
* 角色ID
*/

5
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/GovRoleUserDTO.java

@ -39,6 +39,11 @@ public class GovRoleUserDTO implements Serializable {
*/
private String id;
/**
* 客户id
*/
private String customerId;
/**
* 角色ID
*/

19
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/form/GetStaffExistRoleFormDTO.java

@ -0,0 +1,19 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2022/7/13 09:58
* @DESC
*/
@Data
public class GetStaffExistRoleFormDTO implements Serializable {
private static final long serialVersionUID = 8877632229886141531L;
private String customerId;
private String staffId;
}

26
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/form/RoleUserFormDTO.java

@ -0,0 +1,26 @@
package com.epmet.dto.form;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
/**
* @Author zxc
* @DateTime 2022/7/12 16:11
* @DESC
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class RoleUserFormDTO implements Serializable {
private static final long serialVersionUID = 7503477804419017109L;
private List<String> roleIds;
private String userId;
private String customerId;
}

40
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/dto/result/NewUserRoleResultDTO.java

@ -0,0 +1,40 @@
package com.epmet.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2022/7/13 09:56
* @DESC
*/
@Data
public class NewUserRoleResultDTO implements Serializable {
private static final long serialVersionUID = -7761042062413503637L;
private String roleId;
/**
* 角色key
*/
private String roleKey;
/**
* 角色名称
*/
private String roleName;
private Integer isDefault;
/**
* 是否选中(选中的是true)
*/
private Boolean selected;
public NewUserRoleResultDTO() {
this.roleId = "";
this.roleKey = "";
this.roleName = "";
this.selected = false;
}
}

23
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/feign/GovAccessFeignClient.java

@ -2,13 +2,17 @@ package com.epmet.feign;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.GetStaffExistRoleFormDTO;
import com.epmet.dto.form.InitDefaultOperationsFormDTO;
import com.epmet.dto.form.ListOpePermsFormDTO;
import com.epmet.dto.form.RoleUserFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.feign.fallback.GovAccessFeignClientFallBackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import java.util.Set;
//@FeignClient(name = ServiceConstant.GOV_ACCESS_SERVER, fallbackFactory = GovAccessFeignClientFallBackFactory.class, url = "http://localhost:8099")
@ -29,4 +33,23 @@ public interface GovAccessFeignClient {
*/
@PostMapping("/gov/access/access/listoperationpermissions")
Result<Set<String>> listOperationPermissions(@RequestBody ListOpePermsFormDTO listOpePermsFormDTO);
/**
* Desc: 保存角色
* @param formDTO
* @author zxc
* @date 2022/7/12 16:14
*/
@PostMapping("/gov/access/govroleuser/roleUser")
Result roleUser(@RequestBody RoleUserFormDTO formDTO);
/**
* Desc: 获取工作人员已经存在的新角色
* @param formDTO
* @author zxc
* @date 2022/7/13 09:59
*/
@PostMapping("/gov/access/govroleuser/getStaffExistRole")
Result<List<NewUserRoleResultDTO>> getStaffExistRole(@RequestBody GetStaffExistRoleFormDTO formDTO);
}

14
epmet-module/gov-access/gov-access-client/src/main/java/com/epmet/feign/fallback/GovAccessFeignClientFallBack.java

@ -3,10 +3,14 @@ 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.dto.form.GetStaffExistRoleFormDTO;
import com.epmet.dto.form.InitDefaultOperationsFormDTO;
import com.epmet.dto.form.ListOpePermsFormDTO;
import com.epmet.dto.form.RoleUserFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.feign.GovAccessFeignClient;
import java.util.List;
import java.util.Set;
/**
@ -26,4 +30,14 @@ public class GovAccessFeignClientFallBack implements GovAccessFeignClient {
public Result<Set<String>> listOperationPermissions(ListOpePermsFormDTO listOpePermsFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ACCESS_SERVER, "listOperationPermissions", listOpePermsFormDTO);
}
@Override
public Result roleUser(RoleUserFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ACCESS_SERVER, "roleUser", formDTO);
}
@Override
public Result<List<NewUserRoleResultDTO>> getStaffExistRole(GetStaffExistRoleFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ACCESS_SERVER, "getStaffExistRole", formDTO);
}
}

6
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/controller/GovMenuController.java

@ -114,6 +114,12 @@ public class GovMenuController {
return new Result<List<GovMenuDTO>>().ok(list);
}
@GetMapping("navDigitalCommunity")
public Result<List<GovMenuDTO>> navDigitalCommunity(@LoginUser TokenDto tokenDto, String tableName){
List<GovMenuDTO> list = govMenuService.navDigitalCommunity(tokenDto,tableName);
return new Result<List<GovMenuDTO>>().ok(list);
}
/**
* 权限标识
* @param tokenDto token

11
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/controller/GovRoleController.java

@ -17,7 +17,9 @@
package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
@ -51,7 +53,8 @@ public class GovRoleController {
private GovRoleMenuService govRoleMenuService;
@GetMapping("page")
public Result<PageData<GovRoleDTO>> page(@RequestParam Map<String, Object> params){
public Result<PageData<GovRoleDTO>> page(@LoginUser TokenDto tokenDto, @RequestParam Map<String, Object> params){
params.put("customerId", tokenDto.getCustomerId());
PageData<GovRoleDTO> page = govRoleService.page(params);
return new Result<PageData<GovRoleDTO>>().ok(page);
}
@ -67,7 +70,7 @@ public class GovRoleController {
return new Result<GovRoleDTO>().ok(data);
}
@PostMapping
@PostMapping("save")
public Result save(@RequestBody GovRoleDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
@ -75,7 +78,7 @@ public class GovRoleController {
return new Result();
}
@PutMapping
@PostMapping("edit")
public Result update(@RequestBody GovRoleDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
@ -83,7 +86,7 @@ public class GovRoleController {
return new Result();
}
@DeleteMapping
@PostMapping("del")
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");

6
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/controller/GovRoleMenuController.java

@ -57,7 +57,7 @@ public class GovRoleMenuController {
return new Result<GovRoleMenuDTO>().ok(data);
}
@PostMapping
@PostMapping("save")
public Result save(@RequestBody GovRoleMenuDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
@ -65,7 +65,7 @@ public class GovRoleMenuController {
return new Result();
}
@PutMapping
@PostMapping("edit")
public Result update(@RequestBody GovRoleMenuDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
@ -73,7 +73,7 @@ public class GovRoleMenuController {
return new Result();
}
@DeleteMapping
@PostMapping("del")
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");

26
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/controller/GovRoleUserController.java

@ -25,6 +25,9 @@ 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.GovRoleUserDTO;
import com.epmet.dto.form.GetStaffExistRoleFormDTO;
import com.epmet.dto.form.RoleUserFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.service.GovRoleUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -129,4 +132,27 @@ public class GovRoleUserController {
return new Result();
}
/**
* Desc: 保存角色
* @param formDTO
* @author zxc
* @date 2022/7/12 16:14
*/
@PostMapping("roleUser")
public Result roleUser(@RequestBody RoleUserFormDTO formDTO){
govRoleUserService.roleUser(formDTO);
return new Result();
}
/**
* Desc: 获取工作人员已经存在的新角色
* @param formDTO
* @author zxc
* @date 2022/7/13 09:59
*/
@PostMapping("getStaffExistRole")
public Result<List<NewUserRoleResultDTO>> getStaffExistRole(@RequestBody GetStaffExistRoleFormDTO formDTO){
return new Result<List<NewUserRoleResultDTO>>().ok(govRoleUserService.getStaffExistRole(formDTO));
}
}

12
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/dao/GovRoleDao.java

@ -9,8 +9,12 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.entity.GovRoleEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 角色管理
@ -21,4 +25,12 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface GovRoleDao extends BaseDao<GovRoleEntity> {
/**
* Desc: 获取客户下所有角色
* @param customerId
* @author zxc
* @date 2022/7/13 10:09
*/
List<NewUserRoleResultDTO> getCustomerRoles(@Param("customerId")String customerId);
}

9
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/dao/GovRoleMenuDao.java

@ -11,6 +11,7 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.GovRoleMenuEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -28,6 +29,14 @@ public interface GovRoleMenuDao extends BaseDao<GovRoleMenuEntity> {
*/
List<String> getMenuIdList(String roleId);
/**
* Desc: 根据角色IDs获取菜单IDs列表
* @param roleIds
* @author zxc
* @date 2022/7/12 14:45
*/
List<String> getMenuIdsList(@Param("ids") List<String> roleIds);
/**
* 根据角色id删除角色菜单关系
* @param roleId 角色id

6
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/entity/GovMenuEntity.java

@ -66,4 +66,10 @@ public class GovMenuEntity extends BaseEpmetEntity {
*/
private Integer showFlag;
/**
* 筛选使用跟角色菜单匹配上为true
*/
@TableField(exist = false)
private Boolean roleStatus = false;
}

5
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/entity/GovRoleEntity.java

@ -41,4 +41,9 @@ public class GovRoleEntity extends BaseEpmetEntity {
@TableField(fill = FieldFill.INSERT)
private Long deptId;
/**
* 客户id
*/
private String customerId;
}

5
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/entity/GovRoleMenuEntity.java

@ -33,4 +33,9 @@ public class GovRoleMenuEntity extends BaseEpmetEntity {
*/
private String menuId;
/**
* 客户id
*/
private String customerId;
}

5
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/entity/GovRoleUserEntity.java

@ -34,4 +34,9 @@ public class GovRoleUserEntity extends BaseEpmetEntity {
*/
private String userId;
/**
* 客户id
*/
private String customerId;
}

1
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/GovMenuService.java

@ -129,6 +129,7 @@ public interface GovMenuService extends BaseService<GovMenuEntity> {
* @return java.util.List<GovMenuDTO>
*/
List<GovMenuDTO> getUserMenuNavList(TokenDto tokenDto, String tableName);
List<GovMenuDTO> navDigitalCommunity(TokenDto tokenDto, String tableName);
/**
* 获取用户权限标识

19
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/GovRoleUserService.java

@ -20,6 +20,9 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.GovRoleUserDTO;
import com.epmet.dto.form.GetStaffExistRoleFormDTO;
import com.epmet.dto.form.RoleUserFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.entity.GovRoleUserEntity;
import java.util.List;
@ -130,4 +133,20 @@ public interface GovRoleUserService extends BaseService<GovRoleUserEntity> {
* @param userIds 用户ids
*/
void deleteByUserIds(String[] userIds);
/**
* Desc: 保存角色
* @param formDTO
* @author zxc
* @date 2022/7/12 16:14
*/
void roleUser(RoleUserFormDTO formDTO);
/**
* Desc: 获取工作人员已经存在的新角色
* @param formDTO
* @author zxc
* @date 2022/7/13 09:59
*/
List<NewUserRoleResultDTO> getStaffExistRole(GetStaffExistRoleFormDTO formDTO);
}

58
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovMenuServiceImpl.java

@ -22,17 +22,23 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.Constant;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.ErrorCode;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.HttpContextUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.TreeUtils;
import com.epmet.dao.GovMenuDao;
import com.epmet.dao.GovRoleDao;
import com.epmet.dao.GovRoleMenuDao;
import com.epmet.dao.GovRoleUserDao;
import com.epmet.dto.GovMenuDTO;
import com.epmet.entity.GovMenuEntity;
import com.epmet.enums.MenuTypeEnum;
import com.epmet.feign.EpmetUserOpenFeignClient;
import com.epmet.redis.GovCustomerMenuRedis;
import com.epmet.redis.GovMenuRedis;
import com.epmet.service.*;
@ -45,6 +51,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.*;
import java.util.stream.Collectors;
/**
* 菜单管理
@ -67,6 +74,14 @@ public class GovMenuServiceImpl extends BaseServiceImpl<GovMenuDao, GovMenuEntit
private GovLanguageService govLanguageService;
@Autowired
private GovCustomerMenuService govCustomerMenuService;
@Autowired
private GovRoleDao govRoleDao;
@Autowired
private GovRoleMenuDao govRoleMenuDao;
@Autowired
private GovRoleUserDao govRoleUserDao;
@Autowired
private EpmetUserOpenFeignClient epmetUserOpenFeignClient;
@Override
public PageData<GovMenuDTO> page(Map<String, Object> params) {
@ -218,7 +233,26 @@ public class GovMenuServiceImpl extends BaseServiceImpl<GovMenuDao, GovMenuEntit
// PC端 每个客户的菜单信息,不放入缓存,每次登陆重新查询。
// 或者 你可以选择,在给每个客户 配置可见菜单的时候, 在saveCustomerMenu方法中,增加更新缓存的逻辑
tableName = getTableName(tableName);
return getCustomerMenuList(tokenDto.getCustomerId(), MenuTypeEnum.MENU.value(),tableName);
return getCustomerMenuList(tokenDto.getCustomerId(), MenuTypeEnum.MENU.value(),tableName,tokenDto.getUserId());
}
@Override
public List<GovMenuDTO> navDigitalCommunity(TokenDto tokenDto, String tableName) {
tableName = getTableName(tableName);
List<GovMenuEntity> menuList = baseDao.getCustomerMenuList(tokenDto.getCustomerId(), MenuTypeEnum.MENU.value(), HttpContextUtils.getLanguage(),tableName);
Result<Boolean> isRootManager = epmetUserOpenFeignClient.getIsRootManager(tokenDto.getUserId());
if (!isRootManager.success()){
throw new EpmetException("getIsRootManager method is failure");
}
if (isRootManager.getData()){
List<GovMenuDTO> govMenuDTOS = ConvertUtils.sourceToTarget(menuList, GovMenuDTO.class);
return TreeUtils.buildTree(govMenuDTOS);
}
disposeGovMenu(menuList,tokenDto.getUserId());
Map<Boolean, List<GovMenuEntity>> groupByStatus = menuList.stream().collect(Collectors.groupingBy(GovMenuEntity::getRoleStatus));
List<GovMenuDTO> dtoList = ConvertUtils.sourceToTarget(CollectionUtils.isEmpty(groupByStatus.get(true)) ? new ArrayList<>() : groupByStatus.get(true), GovMenuDTO.class);
List<GovMenuDTO> govMenuDTOS = TreeUtils.buildTree(dtoList);
return govMenuDTOS;
}
/**
@ -231,7 +265,7 @@ public class GovMenuServiceImpl extends BaseServiceImpl<GovMenuDao, GovMenuEntit
* @Author zhangyong
* @Date 15:51 2021-03-16
**/
private List<GovMenuDTO> getCustomerMenuList(String customerId, Integer type, String tableName) {
private List<GovMenuDTO> getCustomerMenuList(String customerId, Integer type, String tableName,String userId) {
List<GovMenuDTO> govMenuDTOS = govCustomerMenuRedis.getCustomerMenuList(customerId,type,tableName);
if (!CollectionUtils.isEmpty(govMenuDTOS)){
return govMenuDTOS;
@ -243,6 +277,26 @@ public class GovMenuServiceImpl extends BaseServiceImpl<GovMenuDao, GovMenuEntit
return govMenuDTOS;
}
public void disposeGovMenu(List<GovMenuEntity> menuList,String userId){
List<String> roleIdList = govRoleUserDao.getRoleIdList(userId);
if (CollectionUtils.isEmpty(roleIdList)){
menuList = new ArrayList<>();
return;
}
List<String> menuIdsList = govRoleMenuDao.getMenuIdsList(roleIdList);
if (CollectionUtils.isEmpty(menuIdsList)){
menuList = new ArrayList<>();
return;
}
for (String id : menuIdsList) {
for (GovMenuEntity m : menuList) {
if (m.getId().equals(id)){
m.setRoleStatus(true);
}
}
}
}
@Override
public Set<String> getUserPermissions(TokenDto tokenDto) {
//用户权限列表

5
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovRoleMenuServiceImpl.java

@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.GovRoleMenuDao;
import com.epmet.dto.GovRoleMenuDTO;
@ -51,6 +52,9 @@ public class GovRoleMenuServiceImpl extends BaseServiceImpl<GovRoleMenuDao, GovR
private GovRoleMenuRedis govRoleMenuRedis;
@Autowired
private GovRoleMenuDao govRoleMenuDao;
@Autowired
private LoginUserUtil loginUserUtil;
@Override
public PageData<GovRoleMenuDTO> page(Map<String, Object> params) {
@ -125,6 +129,7 @@ public class GovRoleMenuServiceImpl extends BaseServiceImpl<GovRoleMenuDao, GovR
GovRoleMenuEntity govRoleMenuEntity = new GovRoleMenuEntity();
govRoleMenuEntity.setMenuId(menuId);
govRoleMenuEntity.setRoleId(roleId);
govRoleMenuEntity.setCustomerId(loginUserUtil.getLoginUserCustomerId());
//保存
insert(govRoleMenuEntity);

11
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovRoleServiceImpl.java

@ -21,7 +21,10 @@ 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.constant.FieldConstant;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.GovRoleDao;
import com.epmet.dto.GovRoleDTO;
@ -54,6 +57,8 @@ public class GovRoleServiceImpl extends BaseServiceImpl<GovRoleDao, GovRoleEntit
private GovRoleMenuService govRoleMenuService;
@Autowired
private GovRoleUserService govRoleUserService;
@Autowired
private LoginUserUtil loginUserUtil;
@Override
public PageData<GovRoleDTO> page(Map<String, Object> params) {
@ -66,6 +71,7 @@ public class GovRoleServiceImpl extends BaseServiceImpl<GovRoleDao, GovRoleEntit
@Override
public List<GovRoleDTO> list(Map<String, Object> params) {
params.put("customerId", loginUserUtil.getLoginUserCustomerId());
List<GovRoleEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, GovRoleDTO.class);
@ -74,8 +80,10 @@ public class GovRoleServiceImpl extends BaseServiceImpl<GovRoleDao, GovRoleEntit
private QueryWrapper<GovRoleEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
String name = (String)params.get(FieldConstant.NAME_HUMP);
String customerId = (String)params.get(FieldConstant.CUSTOMER_ID_HUMP);
QueryWrapper<GovRoleEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id).like(StringUtils.isNotBlank(name), FieldConstant.NAME, name);
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id).like(StringUtils.isNotBlank(name), FieldConstant.NAME, name)
.eq(StringUtils.isNotBlank(customerId), FieldConstant.CUSTOMER_ID, customerId);
return wrapper;
}
@ -107,7 +115,6 @@ public class GovRoleServiceImpl extends BaseServiceImpl<GovRoleDao, GovRoleEntit
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
govRoleMenuService.deleteByRoleIds(ids);

58
epmet-module/gov-access/gov-access-server/src/main/java/com/epmet/service/impl/GovRoleUserServiceImpl.java

@ -24,8 +24,12 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.FieldConstant;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.dao.GovRoleDao;
import com.epmet.dao.GovRoleUserDao;
import com.epmet.dto.GovRoleUserDTO;
import com.epmet.dto.form.GetStaffExistRoleFormDTO;
import com.epmet.dto.form.RoleUserFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.entity.GovRoleUserEntity;
import com.epmet.redis.GovRoleUserRedis;
import com.epmet.service.GovRoleUserService;
@ -33,7 +37,9 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@ -51,6 +57,8 @@ public class GovRoleUserServiceImpl extends BaseServiceImpl<GovRoleUserDao, GovR
private GovRoleUserRedis govRoleUserRedis;
@Autowired
private GovRoleUserDao govRoleUserDao;
@Autowired
private GovRoleDao govRoleDao;
@Override
public PageData<GovRoleUserDTO> page(Map<String, Object> params) {
@ -153,4 +161,54 @@ public class GovRoleUserServiceImpl extends BaseServiceImpl<GovRoleUserDao, GovR
govRoleUserDao.deleteByUserIds(userIds);
}
/**
* Desc: 保存角色
* @param formDTO
* @author zxc
* @date 2022/7/12 16:14
*/
@Transactional(rollbackFor = Exception.class)
@Override
public void roleUser(RoleUserFormDTO formDTO) {
baseDao.deleteByUserId(formDTO.getUserId());
if (!CollectionUtils.isEmpty(formDTO.getRoleIds())){
List<GovRoleUserEntity> entityList = new ArrayList<>();
formDTO.getRoleIds().forEach(r -> {
GovRoleUserEntity entity = new GovRoleUserEntity();
entity.setUserId(formDTO.getUserId());
entity.setCustomerId(formDTO.getCustomerId());
entity.setRoleId(r);
entityList.add(entity);
});
insertBatch(entityList);
}
}
/**
* Desc: 获取工作人员已经存在的新角色
* @param formDTO
* @author zxc
* @date 2022/7/13 09:59
*/
@Override
public List<NewUserRoleResultDTO> getStaffExistRole(GetStaffExistRoleFormDTO formDTO) {
List<NewUserRoleResultDTO> result = new ArrayList<>();
result = govRoleDao.getCustomerRoles(formDTO.getCustomerId());
if (CollectionUtils.isEmpty(result)){
return result;
}
List<String> roleIdList = govRoleUserDao.getRoleIdList(formDTO.getStaffId());
if (roleIdList.isEmpty()){
return result;
}
for (String id : roleIdList) {
for (NewUserRoleResultDTO r : result) {
if (id.equals(r.getRoleId())){
r.setSelected(true);
}
}
}
return result;
}
}

16
epmet-module/gov-access/gov-access-server/src/main/resources/db/migration/V0.0.7__alter_gov_role.sql

@ -0,0 +1,16 @@
ALTER TABLE `gov_role`
ADD COLUMN `CUSTOMER_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户ID' AFTER `id`;
ALTER TABLE `gov_role_menu`
ADD COLUMN `CUSTOMER_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户ID' AFTER `id`;
ALTER TABLE `gov_role_user`
ADD COLUMN `CUSTOMER_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '客户ID' AFTER `id`;

9
epmet-module/gov-access/gov-access-server/src/main/resources/mapper/GovRoleDao.xml

@ -3,4 +3,13 @@
<mapper namespace="com.epmet.dao.GovRoleDao">
<!-- 获取客户下所有角色 -->
<select id="getCustomerRoles" resultType="com.epmet.dto.result.NewUserRoleResultDTO">
SELECT
ID AS roleId,
`name` AS roleName
FROM gov_role
WHERE DEL_FLAG = 0
AND CUSTOMER_ID = #{customerId}
</select>
</mapper>

12
epmet-module/gov-access/gov-access-server/src/main/resources/mapper/GovRoleMenuDao.xml

@ -4,7 +4,17 @@
<mapper namespace="com.epmet.dao.GovRoleMenuDao">
<select id="getMenuIdList" resultType="java.lang.String">
select menu_id from gov_role_menu where role_id = #{value}
select menu_id from gov_role_menu where del_flag = 0 and role_id = #{value}
</select>
<select id="getMenuIdsList" resultType="java.lang.String">
select menu_id from gov_role_menu
where del_flag = 0
and role_id in (
<foreach collection="ids" item="id" separator=",">
#{id}
</foreach>
)
</select>
<update id="deleteByRoleIds">

2
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AddStaffV2FromDTO.java

@ -71,4 +71,6 @@ public class AddStaffV2FromDTO implements Serializable {
* 来源client(PC端:web微信小程序:wxmp)
*/
private String client;
private List<String> newRoles;
}

2
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/StaffSubmitFromDTO.java

@ -66,4 +66,6 @@ public class StaffSubmitFromDTO implements Serializable {
* 来源client(PC端:web微信小程序:wxmp)
*/
private String client;
private List<String> newRoles;
}

1
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/StaffInitResultDTO.java

@ -37,4 +37,5 @@ public class StaffInitResultDTO implements Serializable {
* 职责列表
*/
private List<StaffRoleResultDTO> roleList;
private List<StaffRoleResultDTO> newRoleList;
}

2
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/StaffRoleResultDTO.java

@ -36,4 +36,6 @@ public class StaffRoleResultDTO implements Serializable {
private Boolean selected;
private String description;
private Integer isDefault;
}

5
epmet-module/gov-org/gov-org-server/pom.xml

@ -18,6 +18,11 @@
<artifactId>gov-org-client</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>gov-access-client</artifactId>
<version>2.0.0</version>
</dependency>
<dependency>
<groupId>com.epmet</groupId>
<artifactId>oper-crm-client</artifactId>

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerAgencyController.java

@ -396,7 +396,7 @@ public class CustomerAgencyController {
@PostMapping("agencygridtree")
public Result<AgencyTreeResultDTO> getOrgTreeData(@LoginUser TokenDto tokenDTO) {
//tokenDTO.setUserId("dffe71e021a61b900f9025f4f07f6955");
return new Result<AgencyTreeResultDTO>().ok(customerAgencyService.getOrgTreeData(tokenDTO.getUserId()));
return new Result<AgencyTreeResultDTO>().ok(customerAgencyService.getOrgTreeData(tokenDTO.getUserId(),tokenDTO.getCustomerId()));
}
/**

1
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/GridController.java

@ -92,7 +92,6 @@ public class GridController {
return result;
}
/**
* 删除网格
*/

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/ServiceProjectController.java

@ -29,7 +29,7 @@ public class ServiceProjectController {
*/
@RequestMapping("service/serviceScopeTree")
public Result<ServiceProjectScopeResultDTO> getServiceScopeTree(@LoginUser TokenDto loginInfo) {
ServiceProjectScopeResultDTO r = serviceProjectService.getServiceScopeTree(loginInfo.getUserId());
ServiceProjectScopeResultDTO r = serviceProjectService.getServiceScopeTree(loginInfo.getUserId(),loginInfo.getCustomerId());
return new Result<ServiceProjectScopeResultDTO>().ok(r);
}
}

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/UserHouseScopeController.java

@ -26,7 +26,7 @@ public class UserHouseScopeController {
*/
@RequestMapping("service/serviceScopeTree")
public Result<UserHouseScopeResultDTO> getServiceScopeTree(@LoginUser TokenDto loginInfo) {
UserHouseScopeResultDTO r = userHouseScopeService.getServiceScopeTree(loginInfo.getUserId());
UserHouseScopeResultDTO r = userHouseScopeService.getServiceScopeTree(loginInfo.getUserId(),loginInfo.getCustomerId());
return new Result<UserHouseScopeResultDTO>().ok(r);
}
}

3
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/redis/CustomerAgencyRedis.java

@ -59,4 +59,7 @@ public class CustomerAgencyRedis {
return BeanUtil.mapToBean(resultMap, AgencyInfoCache.class, true);
}
public void deleteByPrex(String orgTreeCachePrexKey) {
redisUtils.deleteByPrex(orgTreeCachePrexKey);
}
}

3
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerAgencyService.java

@ -24,7 +24,6 @@ import com.epmet.dto.CustomerAgencyDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.entity.CustomerAgencyEntity;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
import java.util.Map;
@ -270,7 +269,7 @@ public interface CustomerAgencyService extends BaseService<CustomerAgencyEntity>
* @param staffId
* @return
*/
AgencyTreeResultDTO getOrgTreeData(String staffId);
AgencyTreeResultDTO getOrgTreeData(String staffId,String customerId);
/**
* @Description 事件社区服务热线

4
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/ServiceProjectService.java

@ -1,9 +1,7 @@
package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dto.result.ServiceProjectScopeResultDTO;
import com.epmet.entity.IcPlaceOrgEntity;
public interface ServiceProjectService {
ServiceProjectScopeResultDTO getServiceScopeTree(String staffId);
ServiceProjectScopeResultDTO getServiceScopeTree(String staffId,String customerId);
}

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/UserHouseScopeService.java

@ -3,5 +3,5 @@ package com.epmet.service;
import com.epmet.dto.result.UserHouseScopeResultDTO;
public interface UserHouseScopeService {
UserHouseScopeResultDTO getServiceScopeTree(String staffId);
UserHouseScopeResultDTO getServiceScopeTree(String staffId,String customerId);
}

5
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/AgencyServiceImpl.java

@ -27,6 +27,7 @@ import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.redis.RedisKeys;
import com.epmet.commons.tools.redis.common.CustomerOrgRedis;
import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache;
@ -239,7 +240,9 @@ public class AgencyServiceImpl implements AgencyService {
//5.redis缓存
customerAgencyRedis.delete(formDTO.getAgencyId());
//6.一些下拉组织树的缓存要清除掉
String orgTreeCachePrexKey = RedisKeys.getOrgTreeCachePrexKey(formDTO.getCustomerId());
customerAgencyRedis.deleteByPrex(orgTreeCachePrexKey);
return result;
}

6
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerAgencyServiceImpl.java

@ -1175,7 +1175,7 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao
@Override
public AgencyTreeResultDTO getOrgTreeData(String staffId) {
public AgencyTreeResultDTO getOrgTreeData(String staffId,String customerId) {
AgencyTreeResultDTO result = new AgencyTreeResultDTO();
//1.查询工作人员所属组织信息
AgencyResultDTO rootAgency = baseDao.selectAgencyByStaffId(staffId);
@ -1191,7 +1191,7 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao
result.setLongitude(rootAgency.getLongitude());
result.setLatitude(rootAgency.getLatitude());
String orgTreeCacheKey = RedisKeys.getOrgTreeCacheKey(rootAgency.getAgencyId());
String orgTreeCacheKey = RedisKeys.getOrgTreeCacheKey(rootAgency.getAgencyId(),customerId);
Object o = redisUtils.get(orgTreeCacheKey);
if (o == null){
ExtStaffPermissionResultDTO res = baseDao.selectAgencyAndGridById(rootAgency.getAgencyId());
@ -1460,7 +1460,7 @@ public class CustomerAgencyServiceImpl extends BaseServiceImpl<CustomerAgencyDao
result.setLongitude(rootAgency.getLongitude());
result.setLatitude(rootAgency.getLatitude());
String orgTreeCacheKey = RedisKeys.getOrgTreeCacheKey(rootAgency.getId());
String orgTreeCacheKey = RedisKeys.getOrgTreeCacheKey(rootAgency.getId(),rootAgency.getCustomerId());
Object o = redisUtils.get(orgTreeCacheKey);
if (o == null) {
ExtStaffPermissionResultDTO res = baseDao.selectAgencyAndGridById(rootAgency.getId());

4
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java

@ -348,7 +348,9 @@ public class CustomerGridServiceImpl extends BaseServiceImpl<CustomerGridDao, Cu
}
customerGridDTO.setCenterAddress(editGridFormDTO.getCenterAddress());
baseDao.editGrid(customerGridDTO);
//一些下拉组织树的缓存要清除掉
String orgTreeCachePrexKey = RedisKeys.getOrgTreeCachePrexKey(tokenDto.getCustomerId());
redisUtils.deleteByPrex(orgTreeCachePrexKey);
return new Result();
}

8
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/ServiceProjectServiceImpl.java

@ -1,16 +1,12 @@
package com.epmet.service.impl;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dao.CustomerAgencyDao;
import com.epmet.dao.CustomerGridDao;
import com.epmet.dao.IcNeighborHoodDao;
import com.epmet.dto.IcNeighborHoodDTO;
import com.epmet.dto.result.AgencyTreeResultDTO;
import com.epmet.dto.result.ServiceProjectScopeResultDTO;
import com.epmet.entity.CustomerAgencyEntity;
import com.epmet.entity.IcPlaceOrgEntity;
import com.epmet.service.CustomerAgencyService;
import com.epmet.service.NeighborHoodService;
import com.epmet.service.ServiceProjectService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -42,8 +38,8 @@ public class ServiceProjectServiceImpl implements ServiceProjectService {
}
@Override
public ServiceProjectScopeResultDTO getServiceScopeTree(String staffId) {
AgencyTreeResultDTO orgTreeData = customerAgencyService.getOrgTreeData(staffId);
public ServiceProjectScopeResultDTO getServiceScopeTree(String staffId,String customerId) {
AgencyTreeResultDTO orgTreeData = customerAgencyService.getOrgTreeData(staffId,customerId);
ServiceProjectScopeResultDTO rootScope = new ServiceProjectScopeResultDTO();
rootScope.setObjectId(orgTreeData.getAgencyId());

14
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/StaffServiceImpl.java

@ -4,6 +4,7 @@ import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.redis.RedisKeys;
import com.epmet.commons.tools.redis.RedisUtils;
@ -78,6 +79,8 @@ public class StaffServiceImpl implements StaffService {
private CustomerStaffRedis customerStaffRedis;
@Resource
private StaffOrgRelationDao staffOrgRelationDao;
@Autowired
private GovAccessFeignClient govAccessFeignClient;
@Override
public Result<StaffsInAgencyResultDTO> getStaffInfoForHome(StaffsInAgencyFromDTO fromDTO) {
@ -190,6 +193,10 @@ public class StaffServiceImpl implements StaffService {
}
return new Result().error(EpmetErrorCode.STAFF_EDIT_FAILED.getCode(), EpmetErrorCode.STAFF_EDIT_FAILED.getMsg());
}
Result roleUserAccess = govAccessFeignClient.roleUser(new RoleUserFormDTO(fromDTO.getNewRoles(), fromDTO.getStaffId(),fromDTO.getCustomerId()));
if (!roleUserAccess.success()){
throw new EpmetException("save data to gov-role-user failure");
}
//2021.8.24 sun 人员信息编辑时删除工作人员的缓存信息
CustomerStaffRedis.delStaffInfoFormCache(fromDTO.getCustomerId(), fromDTO.getStaffId());
return result;
@ -578,6 +585,13 @@ public class StaffServiceImpl implements StaffService {
staffOrgRelationEntity.setOrgType(fromDTO.getOrgType());
staffOrgRelationService.insert(staffOrgRelationEntity);
if (CollectionUtils.isNotEmpty(fromDTO.getNewRoles())){
Result roleUserAccess = govAccessFeignClient.roleUser(new RoleUserFormDTO(fromDTO.getNewRoles(), customerStaffAgencyEntity.getUserId(),fromDTO.getCustomerId()));
if (!roleUserAccess.success()){
throw new EpmetException("save data to gov-role-user failure");
}
}
return new Result();
}

4
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/UserHouseScopeServiceImpl.java

@ -30,8 +30,8 @@ public class UserHouseScopeServiceImpl implements UserHouseScopeService {
}
@Override
public UserHouseScopeResultDTO getServiceScopeTree(String staffId) {
AgencyTreeResultDTO orgTreeData = customerAgencyService.getOrgTreeData(staffId);
public UserHouseScopeResultDTO getServiceScopeTree(String staffId,String customerId) {
AgencyTreeResultDTO orgTreeData = customerAgencyService.getOrgTreeData(staffId,customerId);
UserHouseScopeResultDTO rootScope = new UserHouseScopeResultDTO();
rootScope.setObjectId(orgTreeData.getAgencyId());

9
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java

@ -846,4 +846,13 @@ public interface EpmetUserOpenFeignClient {
*/
@PostMapping("/epmetuser/icResiUserDataSync/icDataSyncTask")
Result<Boolean> icDataSyncTask(String customerId);
/**
* Desc: 查询是否是超级管理员
* @param userId
* @author zxc
* @date 2022/7/13 11:03
*/
@PostMapping("/epmetuser/staffrole/getIsRootManager")
Result<Boolean> getIsRootManager(@RequestParam("userId") String userId);
}

5
epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java

@ -641,4 +641,9 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "icDataSyncTask", customerId);
}
@Override
public Result<Boolean> getIsRootManager(String userId) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getIsRootManager", userId);
}
}

11
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java

@ -217,4 +217,15 @@ public class StaffRoleController {
return new Result<PageData<CustomerGridStaffResultDTO>>().ok(staffRoleService.getGridStaffList(formDTO));
}
/**
* Desc: 查询是否是超级管理员
* @param userId
* @author zxc
* @date 2022/7/13 11:03
*/
@PostMapping("getIsRootManager")
public Result<Boolean> getIsRootManager(@RequestParam("userId") String userId){
return new Result<Boolean>().ok(staffRoleService.getIsRootManager(userId));
}
}

5
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserRoleController.java

@ -28,6 +28,7 @@ import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.UserRoleDTO;
import com.epmet.dto.form.UserResiInfoFormDTO;
import com.epmet.dto.form.UserRoleFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.dto.result.UserRoleResultDTO;
import com.epmet.excel.UserRoleExcel;
import com.epmet.service.UserRoleService;
@ -102,7 +103,7 @@ public class UserRoleController {
* @Date 2020.03.30 15:35
**/
@PostMapping("getuserroleinfo")
public Result<List<UserRoleResultDTO>> getUserRoleInfo(@RequestBody UserRoleFormDTO userRoleFormDTO) {
public Result<List<NewUserRoleResultDTO>> getUserRoleInfo(@RequestBody UserRoleFormDTO userRoleFormDTO) {
ValidatorUtils.validateEntity(userRoleFormDTO);
@ -130,7 +131,7 @@ public class UserRoleController {
* @Date 14:24 2020-07-23
**/
@GetMapping(value = "getuserroleinfobyuserid/{userId}")
public Result<List<UserRoleResultDTO>> getUserRoleInfoByUserId(@PathVariable("userId") String userId) {
public Result<List<NewUserRoleResultDTO>> getUserRoleInfoByUserId(@PathVariable("userId") String userId) {
return userRoleService.getUserRoleInfoByUserId(userId);
}

2
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java

@ -182,4 +182,6 @@ public interface StaffRoleDao extends BaseDao<StaffRoleEntity> {
* @date 2022/1/17 2:45 下午
*/
List<CustomerGridStaffResultDTO> getStaffList(GridStaffFormDTO formDTO);
List<String> getRoleKeys(@Param("staffId")String staffId);
}

5
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserRoleDao.java

@ -20,6 +20,7 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.form.GetRoleKeyListFormDTO;
import com.epmet.dto.form.UserRoleFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.dto.result.PartyMemberUserIdsResultDTO;
import com.epmet.dto.result.UserRoleResultDTO;
import com.epmet.entity.UserRoleEntity;
@ -43,7 +44,7 @@ public interface UserRoleDao extends BaseDao<UserRoleEntity> {
* @Author wangc
* @Date 2020.03.30 15:35
**/
List<UserRoleResultDTO> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO);
List<NewUserRoleResultDTO> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO);
/**
* @Description 根据用户Id网格Id客户Id查询用户角色key列表
@ -62,7 +63,7 @@ public interface UserRoleDao extends BaseDao<UserRoleEntity> {
* @Author zhangyong
* @Date 14:24 2020-07-23
**/
List<UserRoleResultDTO> getUserRoleInfoByUserId(@Param("userId") String userId);
List<NewUserRoleResultDTO> getUserRoleInfoByUserId(@Param("userId") String userId);
/**
* @param formDTO

8
epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java

@ -122,4 +122,12 @@ public interface StaffRoleService extends BaseService<StaffRoleEntity> {
* @date 2022/1/17 2:37 下午
*/
PageData<CustomerGridStaffResultDTO> getGridStaffList(GridStaffFormDTO formDTO);
/**
* Desc: 查询是否是超级管理员
* @param userId
* @author zxc
* @date 2022/7/13 11:03
*/
Boolean getIsRootManager(String userId);
}

5
epmet-user/epmet-user-server/src/main/java/com/epmet/service/UserRoleService.java

@ -22,6 +22,7 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.UserRoleDTO;
import com.epmet.dto.form.UserRoleFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.dto.result.UserRoleResultDTO;
import com.epmet.entity.UserRoleEntity;
@ -103,7 +104,7 @@ public interface UserRoleService extends BaseService<UserRoleEntity> {
* @Author wangc
* @Date 2020.03.30 15:35
**/
Result<List<UserRoleResultDTO>> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO);
Result<List<NewUserRoleResultDTO>> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO);
/**
* 添加用户角色关系
@ -121,7 +122,7 @@ public interface UserRoleService extends BaseService<UserRoleEntity> {
* @Author zhangyong
* @Date 14:24 2020-07-23
**/
Result<List<UserRoleResultDTO>> getUserRoleInfoByUserId(String userId);
Result<List<NewUserRoleResultDTO>> getUserRoleInfoByUserId(String userId);
/**
* @Description 查询此人是不是党员true是党员false不是党员

16
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java

@ -25,6 +25,7 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.constant.*;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.ExceptionUtils;
import com.epmet.commons.tools.exception.RenException;
import com.epmet.commons.tools.page.PageData;
@ -44,11 +45,13 @@ import com.epmet.dao.StaffRoleDao;
import com.epmet.dto.*;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.entity.CustomerStaffEntity;
import com.epmet.entity.GovStaffRoleEntity;
import com.epmet.entity.StaffRoleEntity;
import com.epmet.entity.UserEntity;
import com.epmet.feign.AuthFeignClient;
import com.epmet.feign.GovAccessFeignClient;
import com.epmet.feign.GovOrgOpenFeignClient;
import com.epmet.feign.OperCrmOpenFeignClient;
import com.epmet.service.CustomerStaffService;
@ -94,6 +97,8 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl<CustomerStaffDao,
private GovStaffRoleDao govStaffRoleDao;
@Autowired
private OperCrmOpenFeignClient operCrmOpenFeignClient;
@Autowired
private GovAccessFeignClient govAccessFeignClient;
@Override
public PageData<CustomerStaffDTO> page(Map<String, Object> params) {
@ -283,7 +288,16 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl<CustomerStaffDao,
}
}));
resultDTO.setRoleList(staffRoleList);
// 获取新角色
GetStaffExistRoleFormDTO getStaffExistRoleFormDTO = ConvertUtils.sourceToTarget(fromDTO, GetStaffExistRoleFormDTO.class);
Result<List<NewUserRoleResultDTO>> staffExistRole = govAccessFeignClient.getStaffExistRole(getStaffExistRoleFormDTO);
if (!staffExistRole.success()){
throw new EpmetException("getStaffExistRole method is failure");
}
if (!CollectionUtils.isEmpty(staffExistRole.getData())){
List<StaffRoleResultDTO> staffRoleResultDTOS = ConvertUtils.sourceToTarget(staffExistRole.getData(), StaffRoleResultDTO.class);
resultDTO.setNewRoleList(staffRoleResultDTOS);
}
return new Result<StaffInitResultDTO>().ok(resultDTO);
}

6
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/RegisterRelationServiceImpl.java

@ -36,7 +36,7 @@ import com.epmet.dto.form.*;
import com.epmet.dto.result.UserBaseInfoResultDTO;
import com.epmet.dto.result.UserInfoOnEnterGridResultDTO;
import com.epmet.dto.result.UserResiInfoResultDTO;
import com.epmet.dto.result.UserRoleResultDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.entity.RegisterRelationEntity;
import com.epmet.entity.UserCustomerEntity;
import com.epmet.feign.GovOrgFeignClient;
@ -324,9 +324,9 @@ public class RegisterRelationServiceImpl extends BaseServiceImpl<RegisterRelatio
userRoleFormDTO.setUserId(enterGridFormDTO.getUserId());
userRoleFormDTO.setCustomerId(enterGridFormDTO.getCustomerId());
userRoleFormDTO.setGridId(enterGridFormDTO.getGridId());
List<UserRoleResultDTO> roleList = userRoleDao.getUserRoleInfo(userRoleFormDTO);
List<NewUserRoleResultDTO> roleList = userRoleDao.getUserRoleInfo(userRoleFormDTO);
List<String> roleListString = new ArrayList<>();
for(UserRoleResultDTO role : roleList){
for(NewUserRoleResultDTO role : roleList){
roleListString.add(role.getRoleKey());
}
resultObj.setUserRoleList(roleListString);

22
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java

@ -204,4 +204,26 @@ public class StaffRoleServiceImpl extends BaseServiceImpl<StaffRoleDao, StaffRol
return new PageData<>(result,count.get());
}
/**
* Desc: 查询是否是超级管理员
* @param userId
* @author zxc
* @date 2022/7/13 11:03
*/
@Override
public Boolean getIsRootManager(String userId) {
Boolean result = false;
List<String> roleKeys = baseDao.getRoleKeys(userId);
if (roleKeys.isEmpty()){
return result;
}
for (String roleKey : roleKeys) {
if (roleKey.equals("root_manager")){
result = true;
break;
}
}
return result;
}
}

2
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserBaseInfoServiceImpl.java

@ -464,7 +464,7 @@ public class UserBaseInfoServiceImpl extends BaseServiceImpl<UserBaseInfoDao, Us
UserRoleFormDTO roleParam = new UserRoleFormDTO();
roleParam.setGridId(currentGrid.getGridId());
roleParam.setUserId(param.getUserId());
List<UserRoleResultDTO> roleList = userRoleDao.getUserRoleInfo(roleParam);
List<NewUserRoleResultDTO> roleList = userRoleDao.getUserRoleInfo(roleParam);
List<ExtRoleMapResultDTO> roleListFormat = new LinkedList<>();
if(null != roleList && !roleList.isEmpty()){
roleList.forEach(role -> {

11
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/UserRoleServiceImpl.java

@ -29,6 +29,7 @@ import com.epmet.dao.UserRoleDao;
import com.epmet.dto.RoleDTO;
import com.epmet.dto.UserRoleDTO;
import com.epmet.dto.form.UserRoleFormDTO;
import com.epmet.dto.result.NewUserRoleResultDTO;
import com.epmet.dto.result.UserRoleResultDTO;
import com.epmet.entity.UserRoleEntity;
import com.epmet.service.RoleService;
@ -114,8 +115,8 @@ public class UserRoleServiceImpl extends BaseServiceImpl<UserRoleDao, UserRoleEn
* @Date 2020.03.30 15:35
**/
@Override
public Result<List<UserRoleResultDTO>> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO) {
return new Result<List<UserRoleResultDTO>>().ok(baseDao.getUserRoleInfo(userRoleFormDTO));
public Result<List<NewUserRoleResultDTO>> getUserRoleInfo(UserRoleFormDTO userRoleFormDTO) {
return new Result<List<NewUserRoleResultDTO>>().ok(baseDao.getUserRoleInfo(userRoleFormDTO));
}
@Override
@ -131,9 +132,9 @@ public class UserRoleServiceImpl extends BaseServiceImpl<UserRoleDao, UserRoleEn
}
@Override
public Result<List<UserRoleResultDTO>> getUserRoleInfoByUserId(String userId) {
List<UserRoleResultDTO> list = baseDao.getUserRoleInfoByUserId(userId);
return new Result<List<UserRoleResultDTO>>().ok(list);
public Result<List<NewUserRoleResultDTO>> getUserRoleInfoByUserId(String userId) {
List<NewUserRoleResultDTO> list = baseDao.getUserRoleInfoByUserId(userId);
return new Result<List<NewUserRoleResultDTO>>().ok(list);
}
/**

8
epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml

@ -319,5 +319,13 @@
AND gsr.del_flag = '0'
ORDER BY cs.CREATED_TIME DESC
</select>
<select id="getRoleKeys" resultType="java.lang.String">
SELECT
gs.ROLE_KEY
FROM staff_role sr
INNER JOIN gov_staff_role gs ON gs.ID = sr.ROLE_ID AND gs.DEL_FLAG = 0
WHERE sr.DEL_FLAG = 0
AND sr.STAFF_ID = #{staffId}
</select>
</mapper>

4
epmet-user/epmet-user-server/src/main/resources/mapper/UserRoleDao.xml

@ -19,7 +19,7 @@
<!-- 如果没有传gridId只查用户的非网格级别的身份 -->
<select id="getUserRoleInfo" parameterType="com.epmet.dto.form.UserRoleFormDTO"
resultType="com.epmet.dto.result.UserRoleResultDTO">
resultType="com.epmet.dto.result.NewUserRoleResultDTO">
SELECT
DISTINCT
@ -72,7 +72,7 @@
</select>
<select id="getUserRoleInfoByUserId" parameterType="java.lang.String"
resultType="com.epmet.dto.result.UserRoleResultDTO">
resultType="com.epmet.dto.result.NewUserRoleResultDTO">
SELECT
DISTINCT
er.ROLE_NAME,

Loading…
Cancel
Save