diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/aop/NoRepeatSubmitAop.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/aop/NoRepeatSubmitAop.java index ff41a7747c..2c391d6b81 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/aop/NoRepeatSubmitAop.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/aop/NoRepeatSubmitAop.java @@ -35,41 +35,35 @@ public class NoRepeatSubmitAop { private DistributedLock distributedLock; @Around("@annotation(noRepeatSubmit)") - public Object around(ProceedingJoinPoint pjp, NoRepeatSubmit noRepeatSubmit) { + public Object around(ProceedingJoinPoint pjp, NoRepeatSubmit noRepeatSubmit) throws Throwable { + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + assert attributes != null; + HttpServletRequest request = attributes.getRequest(); + String internalToken = request.getHeader(AUTHORIZATION_TOKEN_HEADER_KEY); + String key = getKey(request.getRequestURI(), internalToken); + // 如果缓存中有这个url视为重复提交 + Object result = null; + RLock lock = null; try { - ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); - assert attributes != null; - HttpServletRequest request = attributes.getRequest(); - String internalToken = request.getHeader(AUTHORIZATION_TOKEN_HEADER_KEY); - String key = getKey(request.getRequestURI(), internalToken); - // 如果缓存中有这个url视为重复提交 - Object result = null; - RLock lock = null; - try { - long leaseTime = noRepeatSubmit.leaseTime(); - //如果获取不到锁等待0秒直接返回 持锁时间为leaseTime - lock = distributedLock.getLock(RedisKeys.getNoRepeatSubmitKey(key), leaseTime, NumConstant.ZERO_L, TimeUnit.MILLISECONDS); - } catch (Exception e) { - log.warn("noRepeatSubmit key:{},msg:{}", key, e.getMessage()); - //"未获取到锁,重复提交了 - throw new RenException(EpmetErrorCode.REPEAT_SUBMIT.getCode()); - } - try { - //因为getLock如果获取失败抛异常 所以不做锁状态的判断 - result = pjp.proceed(); - } finally { - distributedLock.unLock(lock); - } + long leaseTime = noRepeatSubmit.leaseTime(); + //如果获取不到锁等待0秒直接返回 持锁时间为leaseTime + lock = distributedLock.getLock(RedisKeys.getNoRepeatSubmitKey(key), leaseTime, NumConstant.ZERO_L, TimeUnit.MILLISECONDS); + } catch (Exception e) { + log.warn("noRepeatSubmit key:{},msg:{}", key, e.getMessage()); + //"未获取到锁,重复提交了 + throw new RenException(EpmetErrorCode.REPEAT_SUBMIT.getCode()); + } + try { + //因为getLock如果获取失败抛异常 所以不做锁状态的判断 + result = pjp.proceed(); + } finally { + distributedLock.unLock(lock); + } - return result; - } catch (RenException e) { - throw e; - } catch (Throwable e) { - log.error("验证重复提交时出现未知异常!"); - throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode()); - } + return result; + } private String getKey(String keyExpress, String token) { diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/RoleListFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/RoleListFormDTO.java new file mode 100644 index 0000000000..28e192112b --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/RoleListFormDTO.java @@ -0,0 +1,28 @@ +package com.epmet.dataaggre.dto.epmetuser.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description + * @Author zhaoqifeng + * @Date 2021/8/27 10:40 + */ +@Data +public class RoleListFormDTO implements Serializable { + private static final long serialVersionUID = -3331980620366027460L; + /** + * 客户ID + */ + private String customerId; + /** + * 是否包括我(1 是,0 否) + */ + private String includeMe; + /** + * 用户ID + */ + private String userId; +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/RoleUsersFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/RoleUsersFormDTO.java index 5978cd7c2c..c3c5c0b3d6 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/RoleUsersFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/form/RoleUsersFormDTO.java @@ -16,4 +16,12 @@ public class RoleUsersFormDTO implements Serializable { @NotBlank(message = "角色ID不能为空") private String roleId; private String customerId; + /** + * 是否包括我(1 是,0 否) + */ + private String includeMe; + /** + * 用户ID + */ + private String userId; } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/OrgStaffListFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/OrgStaffListFormDTO.java index add6167998..7d0ed2f595 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/OrgStaffListFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/OrgStaffListFormDTO.java @@ -35,10 +35,16 @@ public class OrgStaffListFormDTO implements Serializable { */ @Min(value = 1, message = "每页条数必须大于0", groups = OrgStaffListFormDTO.OrgStaff.class) private Integer pageSize = 10; + /** + * 是否包括我(1 是,0 否)默认值1 + */ + private String includeMe = "1"; //客户Id private String customerId; //工作人员id集合 private List staffIds; + //token中用户Id + private String staffId; public interface OrgStaff extends CustomerClientShowGroup {} } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/ReceiversFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/ReceiversFormDTO.java index 775086e16d..24c3ebb984 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/ReceiversFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/ReceiversFormDTO.java @@ -16,7 +16,9 @@ public class ReceiversFormDTO implements Serializable { private String infoId; private Integer pageNo = 1; private Integer pageSize = 10; + /** + * 1: 已读,0: 未读 + */ private String readFlag; - } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/SubOrgFormDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/SubOrgFormDTO.java index 1bc7ccddef..effc43d25c 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/SubOrgFormDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/form/SubOrgFormDTO.java @@ -15,4 +15,12 @@ public class SubOrgFormDTO implements Serializable { private static final long serialVersionUID = -3651225675593357002L; @NotBlank(message = "组织ID不能为空") private String agencyId; + /** + * 是否包括我(1 是,0 否) + */ + private String includeMe; + /** + * 用户ID + */ + private String userId; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java index bc35b155ab..74d4346378 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/EpmetUserController.java @@ -238,6 +238,7 @@ public class EpmetUserController { public Result> roleUsers(@LoginUser TokenDto tokenDto, @RequestBody RoleUsersFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setUserId(tokenDto.getUserId()); return new Result>().ok(epmetUserService.getRoleUsers(formDTO)); } @@ -250,8 +251,11 @@ public class EpmetUserController { * @Date 2021/8/19 15:10 */ @PostMapping("rolelist") - public Result> roleList(@LoginUser TokenDto tokenDto) { - return new Result>().ok(epmetUserService.getRoleList(tokenDto.getCustomerId())); + public Result> roleList(@LoginUser TokenDto tokenDto, @RequestBody RoleListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setUserId(tokenDto.getUserId()); + return new Result>().ok(epmetUserService.getRoleList(formDTO)); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java index 3f3020c147..561dff2acc 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java @@ -136,6 +136,7 @@ public class GovOrgController { throw new RenException("参数类型错误"); } formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setStaffId(tokenDto.getUserId()); return new Result().ok(govOrgService.staffList(formDTO)); } @@ -158,8 +159,9 @@ public class GovOrgController { * @Date 2021/8/19 15:13 */ @PostMapping("suborg") - public Result subOrg(@RequestBody SubOrgFormDTO formDTO) { + public Result subOrg(@LoginUser TokenDto tokenDto, @RequestBody SubOrgFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); + formDTO.setUserId(tokenDto.getUserId()); return new Result().ok(govOrgService.getSubOrg(formDTO)); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java index 52b425be78..e508cb2666 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java @@ -62,7 +62,7 @@ public interface StaffRoleDao extends BaseDao { * @Author zhaoqifeng * @Date 2021/8/19 17:16 */ - List getRoleCountList(@Param("customerId") String customerId); + List getRoleCountList(@Param("customerId") String customerId, @Param("userId") String userId); /** * @Description 根据角色查询人员列表 @@ -72,6 +72,6 @@ public interface StaffRoleDao extends BaseDao { * @Author zhaoqifeng * @Date 2021/8/26 16:48 */ - List selectStaffByRole(@Param("customerId") String customerId, @Param("roleId") String roleId); + List selectStaffByRole(@Param("customerId") String customerId, @Param("roleId") String roleId, @Param("userId") String userId); } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java index 06869bcfdb..043d5c245d 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffAgencyDao.java @@ -69,6 +69,6 @@ public interface CustomerStaffAgencyDao extends BaseDao selectSubAgency(@Param("agencyId") String agencyId); + List selectSubAgency(@Param("agencyId") String agencyId, @Param("userId") String userId); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffDepartmentDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffDepartmentDao.java index 014c374aca..866d3239bf 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffDepartmentDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffDepartmentDao.java @@ -50,5 +50,5 @@ public interface CustomerStaffDepartmentDao extends BaseDao selectDepartmentList(@Param("agencyId") String agencyId); + List selectDepartmentList(@Param("agencyId") String agencyId, @Param("userId") String userId); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java index 9a4c01d8b6..2fcba2cdc4 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java @@ -55,5 +55,5 @@ public interface CustomerStaffGridDao extends BaseDao { * @Author zhaoqifeng * @Date 2021/8/20 14:37 */ - List selectGridList(@Param("agencyId") String agencyId); + List selectGridList(@Param("agencyId") String agencyId, @Param("userId") String userId); } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetmessage/impl/EpmetMessageServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetmessage/impl/EpmetMessageServiceImpl.java index 4f7c8b3117..43f9db3b22 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetmessage/impl/EpmetMessageServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetmessage/impl/EpmetMessageServiceImpl.java @@ -63,7 +63,7 @@ public class EpmetMessageServiceImpl implements EpmetMessageService { //检索已读/未读人员列表,并分页 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); wrapper.eq(InfoReceiversEntity :: getInfoId, formDTO.getInfoId()); - wrapper.eq(StringUtils.isNotBlank(formDTO.getReadFlag()), InfoReceiversEntity :: getReadFlag, NumConstant.ONE_STR.equals(formDTO.getReadFlag())); + wrapper.eq(StringUtils.isNotBlank(formDTO.getReadFlag()), InfoReceiversEntity :: getReadFlag, Integer.valueOf(formDTO.getReadFlag())); Page page = new Page<>(formDTO.getPageNo(), formDTO.getPageSize()); IPage iPage = infoReceiversDao.selectPage(page, wrapper); List list = iPage.getRecords(); diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java index 728b24f88a..457a99f2d8 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java @@ -116,12 +116,12 @@ public interface EpmetUserService { /** * @Description 获取角色列表 - * @Param customerId + * @Param formDTO * @Return {@link List} * @Author zhaoqifeng * @Date 2021/8/19 15:09 */ - List getRoleList(String customerId); + List getRoleList(RoleListFormDTO formDTO); /** * desc:根据工作人员Id 获取工作人员全部信息 diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java index c11c96622f..14bbf346ba 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java @@ -477,7 +477,11 @@ public class EpmetUserServiceImpl implements EpmetUserService { */ @Override public List getRoleUsers(RoleUsersFormDTO formDTO) { - List staffRoleList = staffRoleDao.selectStaffByRole(formDTO.getCustomerId(), formDTO.getRoleId()); + String userId = null; + if (NumConstant.ZERO_STR.equals(formDTO.getIncludeMe())) { + userId = formDTO.getUserId(); + } + List staffRoleList = staffRoleDao.selectStaffByRole(formDTO.getCustomerId(), formDTO.getRoleId(), userId); if (CollectionUtils.isEmpty(staffRoleList)) { return Collections.emptyList(); } @@ -499,7 +503,7 @@ public class EpmetUserServiceImpl implements EpmetUserService { } /** - * @param customerId + * @param formDTO * @Description 获取角色列表 * @Param customerId * @Return {@link List} @@ -507,14 +511,18 @@ public class EpmetUserServiceImpl implements EpmetUserService { * @Date 2021/8/19 15:09 */ @Override - public List getRoleList(String customerId) { + public List getRoleList(RoleListFormDTO formDTO) { //获取角色列表 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(GovStaffRoleEntity :: getCustomerId, customerId); + wrapper.eq(GovStaffRoleEntity :: getCustomerId, formDTO.getCustomerId()); wrapper.orderByAsc(GovStaffRoleEntity ::getSort); List list = govStaffRoleDao.selectList(wrapper); //获取角色人数 - List countList = staffRoleDao.getRoleCountList(customerId); + String userId = null; + if (NumConstant.ZERO_STR.equals(formDTO.getIncludeMe())) { + userId = formDTO.getUserId(); + } + List countList = staffRoleDao.getRoleCountList(formDTO.getCustomerId(), userId); Map map = new HashMap<>(); if (CollectionUtils.isNotEmpty(countList)) { map = countList.stream().collect(Collectors.toMap(RoleListResultDTO :: getRoleId, RoleListResultDTO :: getStaffNum)); diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java index 3eb77fe2dd..745e68e804 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java @@ -393,6 +393,10 @@ public class GovOrgServiceImpl implements GovOrgService { return resultDTO; } formDTO.setStaffIds(staffIds); + //是否包含自己 + if("0".equals(formDTO.getIncludeMe())){ + staffIds.removeIf(s->s.equals(formDTO.getStaffId())); + } //2.分页查询工作人员基础信息、角色信息【组织人员单位领导角色人员在前;部门人员部门领导角色人员在前;网格人员网格长角色人员在前】 List staffList = epmetUserService.getStaffInfoList(formDTO); @@ -442,12 +446,16 @@ public class GovOrgServiceImpl implements GovOrgService { */ @Override public SubOrgResultDTO getSubOrg(SubOrgFormDTO formDTO) { + String userId = null; + if (NumConstant.ZERO_STR.equals(formDTO.getIncludeMe())) { + userId = formDTO.getUserId(); + } //下级组织列表 - List subAgencyList = customerStaffAgencyDao.selectSubAgency(formDTO.getAgencyId()); + List subAgencyList = customerStaffAgencyDao.selectSubAgency(formDTO.getAgencyId(), userId); //下级部门列表 - List departmentList = customerStaffDepartmentDao.selectDepartmentList(formDTO.getAgencyId()); + List departmentList = customerStaffDepartmentDao.selectDepartmentList(formDTO.getAgencyId(), userId); //下级网格列表 - List gridList = customerStaffGridDao.selectGridList(formDTO.getAgencyId()); + List gridList = customerStaffGridDao.selectGridList(formDTO.getAgencyId(), userId); SubOrgResultDTO result = new SubOrgResultDTO(); result.setSubAgencyList(subAgencyList); result.setDepartmentList(departmentList); diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffPatrolRecordDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffPatrolRecordDao.xml index fb4ad95459..9dc97b4c5a 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffPatrolRecordDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffPatrolRecordDao.xml @@ -99,6 +99,7 @@ ORDER BY SUM(ssp.total_time) DESC + , ssp.staff_id DESC LIMIT #{pageNo}, #{pageSize} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffRoleDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffRoleDao.xml index 8d1ac0c2d2..cbe39ede21 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffRoleDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffRoleDao.xml @@ -66,7 +66,11 @@ FROM staff_role WHERE - CUSTOMER_ID = #{customerId} + DEL_FLAG = '0' + AND CUSTOMER_ID = #{customerId} + + AND STAFF_ID != #{userId} + GROUP BY ROLE_ID @@ -85,5 +89,8 @@ AND a.CUSTOMER_ID = #{customerId} AND b.CUSTOMER_ID = #{customerId} AND b.ROLE_ID = #{roleId} + + AND b.STAFF_ID != #{userId} + \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml index e41789ecf6..65afdbabdd 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml @@ -108,6 +108,9 @@ AND b.DEL_FLAG = '0' WHERE a.DEL_FLAG = '0' + + AND b.USER_ID != #{userId} + ) csa ON csa.PIDS LIKE CONCAT( '%', ca.ID, '%' ) WHERE ca.DEL_FLAG = '0' diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffDepartmentDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffDepartmentDao.xml index 3d217ce65e..d2fdcb467c 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffDepartmentDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffDepartmentDao.xml @@ -25,6 +25,9 @@ customer_department cd LEFT JOIN customer_staff_department csd ON cd.ID = csd.DEPARTMENT_ID AND csd.DEL_FLAG = '0' + + AND csd.USER_ID != #{userId} + WHERE cd.DEL_FLAG = '0' AND cd.AGENCY_ID = #{agencyId} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffGridDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffGridDao.xml index 1534bf1fab..d7bfb5ff40 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffGridDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffGridDao.xml @@ -45,6 +45,9 @@ customer_grid cg LEFT JOIN customer_staff_grid csg ON cg.ID = csg.GRID_ID AND csg.DEL_FLAG = '0' + + AND csg.USER_ID != #{userId} + WHERE cg.DEL_FLAG = 0 AND cg.PID = #{agencyId} diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/PartyBranchDataFormDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/PartyBranchDataFormDTO.java index 21144c89ab..b1f01ed63b 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/PartyBranchDataFormDTO.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/PartyBranchDataFormDTO.java @@ -1,7 +1,9 @@ package com.epmet.dto.screencoll.form; import lombok.Data; +import org.hibernate.validator.constraints.Length; +import javax.validation.constraints.NotBlank; import java.io.Serializable; /** @@ -17,46 +19,57 @@ public class PartyBranchDataFormDTO implements Serializable { /** * 年Id :yyyy */ + @NotBlank(message = "yearId不能为空") + @Length(max = 4,message = "yyyy") private String yearId; /** * 月份Id :yyyyMM */ + @NotBlank(message = "monthId不能为空") + @Length(max = 6,message = "格式:yyyyMM") private String monthId; /** * 数据类别 party:支部建设;union:联合建设党员志愿服务:voluntaryservice */ + @NotBlank(message = "type不能为空") private String type; /** * 组织类别 agency:组织;部门:department;网格:grid */ + @NotBlank(message = "orgType不能为空") private String orgType; /** * 组织Id 可以为网格,机关id */ + @NotBlank(message = "orgId不能为空") private String orgId; /** * 上级组织Id */ + @NotBlank(message = "parentId不能为空") private String parentId; /** * 组织名称 */ + @NotBlank(message = "orgName不能为空") private String orgName; /** * 会议分类名称 */ + @NotBlank(message = "meetCategoryName不能为空") private String meetCategoryName; /** * 会议分类id */ + @NotBlank(message = "meetCategoryId不能为空") private String meetCategoryId; /** diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/PartyBranchDataListFormDTO.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/PartyBranchDataListFormDTO.java index 8c6a92e7b6..cfda49c5e0 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/PartyBranchDataListFormDTO.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/PartyBranchDataListFormDTO.java @@ -1,7 +1,12 @@ package com.epmet.dto.screencoll.form; import lombok.Data; +import org.hibernate.validator.constraints.Length; +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; import java.io.Serializable; import java.util.List; @@ -18,12 +23,17 @@ public class PartyBranchDataListFormDTO implements Serializable { /** * 当为true时后台将删除本月数据 */ + @NotNull(message = "isFirst不能为空") private Boolean isFirst; /** * yyyyMM */ + @NotBlank(message = "monthId不能为空") + @Length(max = 6,message = "格式:yyyyMM") private String monthId; + @Valid + @NotEmpty(message = "数据集合不能为空") private List dataList; } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/external/ShiBeiScreenCollController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/external/ShiBeiScreenCollController.java index f142adbf6d..d99bece157 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/external/ShiBeiScreenCollController.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/external/ShiBeiScreenCollController.java @@ -1,6 +1,7 @@ package com.epmet.controller.external; import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dto.indexcollect.form.CustomerBizOrgFormDTO; import com.epmet.dto.screencoll.form.*; import com.epmet.service.evaluationindex.screen.ShiBeiScreenCollService; @@ -59,6 +60,7 @@ public class ShiBeiScreenCollController { **/ @PostMapping("meetdata") public Result meetData(@RequestHeader("CustomerId") String customerId, @RequestBody PartyBranchDataListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); shiBeiScreenCollService.insertPartyBranchData(formDTO, customerId); return new Result(); } diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java new file mode 100644 index 0000000000..1dcdce9821 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java @@ -0,0 +1,24 @@ +package com.epmet.constant; + + +/** + * @author yinzuomei + * @dscription + * @date 2021/08/27 14:22 + */ +public interface UserMessageTypeConstant { + + //上传下达 + /** + * 工作端发送消息,通知接收人 + */ + String INFO="info"; + + /** + * 居民端提交热心居民申请,通知网格长 + */ + String WARMHEARTED_APPLY="warmhearted_apply"; + + + +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/UserMessageConstans.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/UserMessageConstans.java index 7c20b668a6..6b4fa8c2ed 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/UserMessageConstans.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/UserMessageConstans.java @@ -20,6 +20,5 @@ public interface UserMessageConstans { String INFO_TITLE="您有一条新消息"; - String MESSAGE_TYPE_INFO="info"; String INFO_CONTENT_TEMP="您有一条【%s】的新消息,请您查看"; } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/InfoGroupReceiversDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/InfoGroupReceiversDao.java index 5ddcf73e9c..e2b275a750 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/InfoGroupReceiversDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/InfoGroupReceiversDao.java @@ -20,6 +20,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.entity.InfoGroupReceiversEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; import java.util.Set; @@ -40,5 +41,5 @@ public interface InfoGroupReceiversDao extends BaseDao * @author yinzuomei * @date 2021/8/19 10:51 上午 */ - Set selectStaffIds(Set groupIdList); + Set selectStaffIds(@Param("groupIdList") Set groupIdList); } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/InfoServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/InfoServiceImpl.java index ba3712ccca..1dbb43ad80 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/InfoServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/InfoServiceImpl.java @@ -27,6 +27,7 @@ import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.utils.Result; import com.epmet.constant.UserMessageConstans; +import com.epmet.constant.UserMessageTypeConstant; import com.epmet.dao.*; import com.epmet.dto.form.*; import com.epmet.dto.result.AddReceiverGroupResultDTO; @@ -159,7 +160,7 @@ public class InfoServiceImpl extends BaseServiceImpl implem infoEntity.getContent().length() > NumConstant.FIFTY ? StringUtils.substring(infoEntity.getContent(), NumConstant.ZERO,NumConstant.FORTY_NINE) : infoEntity.getContent())); userMessageEntity.setReadFlag(UserMessageConstans.UNREAD); - userMessageEntity.setMessageType(UserMessageConstans.MESSAGE_TYPE_INFO); + userMessageEntity.setMessageType(UserMessageTypeConstant.INFO); userMessageEntity.setTargetId(infoEntity.getId()); userMessageEntity.setCreatedBy(formDTO.getUserId()); userMessageEntity.setUpdatedBy(formDTO.getUserId()); diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/InfoGroupReceiversDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/InfoGroupReceiversDao.xml index d8aefa0520..e57f5bbaf8 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/InfoGroupReceiversDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/InfoGroupReceiversDao.xml @@ -11,9 +11,13 @@ info_group_receivers igr WHERE igr.DEL_FLAG = '0' - AND igr.info_receiver_group_id IN ( - '1','2' + + AND igr.info_receiver_group_id IN + + #{groupId} + ) + diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/MineResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/MineResultDTO.java index de4bf27a47..69e4ff630d 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/MineResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/MineResultDTO.java @@ -55,4 +55,8 @@ public class MineResultDTO implements Serializable { * 手机号 */ private String mobile; + /** + * 根组织 + */ + private String rootAgencyId; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/StaffServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/StaffServiceImpl.java index 00b787aca5..ceab225169 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/StaffServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/StaffServiceImpl.java @@ -1,6 +1,7 @@ package com.epmet.service.impl; 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.RenException; @@ -229,6 +230,15 @@ public class StaffServiceImpl implements StaffService { //用户所属机关名称 result.setMyAgencyName(customerAgencyDTO.getOrganizationName()); } + //2021.08.27 zhaoqf start + //获取根组织 + CustomerAgencyDTO agency = customerAgencyService.get(customerStaffAgency.getAgencyId()); + if (StringUtils.isNotBlank(agency.getPids())) { + result.setRootAgencyId(agency.getPids().split(StrConstant.COLON)[0]); + } else { + result.setRootAgencyId(customerStaffAgency.getAgencyId()); + } + //2021.08.27 zhaoqf end return result; } diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml index 5883c4ccec..3284be99e6 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml @@ -47,9 +47,9 @@ )t LEFT JOIN resi_event_attachment rea - ON (rea.RESI_EVENT_ID = t.eventId) - where rea.DEL_FLAG = '0' - AND rea.ATTACHMENT_TYPE = 'image' + ON (rea.RESI_EVENT_ID = t.eventId + and rea.DEL_FLAG = '0' + AND rea.ATTACHMENT_TYPE = 'image') ORDER BY t.eventTime,rea.sort asc