diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/CustomerStaffInfoCacheResult.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/CustomerStaffInfoCacheResult.java index 81c74a4c38..6e9944c316 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/CustomerStaffInfoCacheResult.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/result/CustomerStaffInfoCacheResult.java @@ -22,6 +22,15 @@ public class CustomerStaffInfoCacheResult implements Serializable { */ private String agencyId; + /** + * agencyId的上级 + */ + private String pid; + /** + * 工作人员所属组织的org_id_path + */ + private String orgIdPath; + /** * 工作人员所属组织ID的pids */ diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/CustomerStaffInfoCache.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/CustomerStaffInfoCache.java index bb5526afe6..a80ba6e727 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/CustomerStaffInfoCache.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/redis/common/bean/CustomerStaffInfoCache.java @@ -21,7 +21,14 @@ public class CustomerStaffInfoCache implements Serializable { * 工作人员所属组织ID */ private String agencyId; - + /** + * agencyId的上级 + */ + private String pid; + /** + * 工作人员所属组织的org_id_path + */ + private String orgIdPath; /** * 工作人员所属组织ID的pids */ diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java index 8ddbea5066..f13ecd1297 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/DateUtils.java @@ -22,6 +22,8 @@ import org.joda.time.format.DateTimeFormatter; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.Instant; +import java.time.LocalDateTime; import java.time.ZoneId; import java.util.*; @@ -1112,4 +1114,39 @@ public class DateUtils { cal.setTime(date); return str.contains(String.valueOf(cal.get(Calendar.DAY_OF_WEEK))); } + + /** + * @description: java.time.LocalDate转Date + * @param localDate: + * @return + * @author: WangXianZhang + * @date: 2023/5/4 3:00 PM + */ + public static Date localDate2Date(java.time.LocalDate localDate) { + Instant instant = localDate.atStartOfDay().atZone(ZoneId.systemDefault()).toInstant(); + return Date.from(instant); + } + + /** + * @description: java.time.LocalDateTime转Date + * @param localDate: + * @return + * @author: WangXianZhang + * @date: 2023/5/4 3:00 PM + */ + public static Date localDateTime2Date(java.time.LocalDateTime localDate) { + Instant instant = localDate.atZone(ZoneId.systemDefault()).toInstant(); + return Date.from(instant); + } + + /** + * @description: date转化为DateTime + * @param date: + * @return + * @author: WangXianZhang + * @date: 2023/5/4 3:04 PM + */ + public static java.time.LocalDateTime date2LocalDateTime(Date date) { + return LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault()); + } } diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/IdCardRegexUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/IdCardRegexUtils.java index ff1f0b0549..78c061b395 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/IdCardRegexUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/utils/IdCardRegexUtils.java @@ -10,6 +10,7 @@ import lombok.NoArgsConstructor; import java.time.DateTimeException; import java.time.LocalDate; import java.time.Period; +import java.util.Date; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -56,6 +57,7 @@ public class IdCardRegexUtils { private String birthdayDay; private String sex; private Integer age; + private LocalDate birthday; } /** @@ -122,17 +124,18 @@ public class IdCardRegexUtils { String month = matcher.group("month"); String day = matcher.group("day"); String sex = matcher.group("sex"); + LocalDate birthday; // ------- 年龄Start---------- Integer age; try { - LocalDate birthday = LocalDate.of(Integer.parseInt(year), Integer.parseInt(month), Integer.parseInt(day)); + birthday = LocalDate.of(Integer.parseInt(year), Integer.parseInt(month), Integer.parseInt(day)); age = Period.between(birthday, LocalDate.now()).getYears(); } catch (DateTimeException e) { throw new EpmetException("身份证号解析年龄失败:" + ExceptionUtils.getErrorStackTrace(e)); } // ------- 年龄End---------- - return new ParsedContent(year, month, day, sex, age); + return new ParsedContent(year, month, day, sex, age, birthday); } // 其他类型暂时不可解析 diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/CustomerStaffResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/CustomerStaffResultDTO.java index 3269ebcb26..0bc9203d45 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/CustomerStaffResultDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/CustomerStaffResultDTO.java @@ -20,7 +20,14 @@ public class CustomerStaffResultDTO implements Serializable { * 工作人员所属组织ID */ private String agencyId; - + /** + * agencyId的上级 + */ + private String pid; + /** + * 工作人员所属组织的org_id_path + */ + private String orgIdPath; /** * 工作人员所属组织ID的pids */ 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 24d9c5a738..2498606f80 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 @@ -268,7 +268,7 @@ public class EpmetUserController { * remark: */ @PostMapping("getStaffInfo/{staffId}") - public Result getStaffInfo(@PathVariable(name = "staffId") String staffId){ + public Result getStaffInfo(@PathVariable(name = "staffId") String staffId){ return new Result().ok(epmetUserService.getStaffInfo(staffId)); } 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 75f863dd58..ea9980e7af 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 @@ -18,10 +18,7 @@ import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.redis.common.bean.HouseInfoCache; import com.epmet.commons.tools.redis.common.bean.IcResiUserInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.utils.DateUtils; -import com.epmet.commons.tools.utils.IpUtils; -import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.utils.*; import com.epmet.constant.BadgeConstant; import com.epmet.constant.NeighborhoodConstant; import com.epmet.constant.OrgInfoConstant; @@ -650,6 +647,9 @@ public class EpmetUserServiceImpl implements EpmetUserService { } result.setStaffId(staffEntity.getUserId()); result.setAgencyId(agencyDTO.getId()); + //新增pid,orgIdPath + result.setPid(agencyDTO.getPid()); + result.setOrgIdPath(PidUtils.convertPid2OrgIdPath(agencyDTO.getId(),agencyDTO.getPids())); result.setAgencyName(agencyDTO.getOrganizationName()); result.setAgencyPIds(agencyDTO.getPids()); result.setLevel(agencyDTO.getLevel()); diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/OrganizationMessageFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/OrganizationMessageFormDTO.java new file mode 100644 index 0000000000..cc42aa46ba --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/OrganizationMessageFormDTO.java @@ -0,0 +1,52 @@ +package com.epmet.dto; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import java.io.Serializable; +import java.util.List; + + +/** + * 组织发布消息(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +@Data +public class OrganizationMessageFormDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + public interface AddShowGroup extends CustomerClientShowGroup { + } + /** + * 发布渠道:0:专属app + */ + @NotBlank(message = "发布渠道不能为空", groups = {AddShowGroup.class}) + private String publishDitch; + + /** + * 消息内容;最多输入500 + */ + @NotBlank(message = "内容不能为空", groups = {AddShowGroup.class}) + @Length(max = 500, message = "内容输入500字", groups = {AddShowGroup.class}) + private String content; + + @Valid + @NotEmpty(message = "发布范围不能为空", groups = {AddShowGroup.class}) + private List rangeList; + + /** + * 客户Id + */ + private String customerId; + /** + * 发布人staffId + */ + private String publishStaffId; +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/OrganizationMessagePublishRangeDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/OrganizationMessagePublishRangeDTO.java new file mode 100644 index 0000000000..2b51910c48 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/OrganizationMessagePublishRangeDTO.java @@ -0,0 +1,63 @@ +package com.epmet.dto; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + + +/** + * 消息发布范围(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +@Data +public class OrganizationMessagePublishRangeDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 客户Id + */ + private String customerId; + + /** + * 消息id:organization_message.id + */ + private String messageId; + + /** + * 组织或者网格id + */ + @NotBlank(message = "orgId不能为空",groups = {OrganizationMessageFormDTO.AddShowGroup.class}) + private String orgId; + + /** + * 组织:agency;网格:grid + */ + @NotBlank(message = "orgType不能为空",groups = {OrganizationMessageFormDTO.AddShowGroup.class}) + private String orgType; + + /** + * org_id的父级 + */ + private String pid; + + /** + * org_id的全路径,包含org_id + */ + private String orgIdPath; + + /** + * 组织名称或者网格名称;如果是网格名称,存储的是XXX社区-XX网格 + */ + private String orgName; + + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/OrganizationMessagePageFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/OrganizationMessagePageFormDTO.java new file mode 100644 index 0000000000..1e5b23d884 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/OrganizationMessagePageFormDTO.java @@ -0,0 +1,30 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.dto.form.PageFormDTO; +import lombok.Data; + +/** + * @Description 烟台消息管理,列表查询入参 + * @Author yzm + * @Date 2023/5/4 16:05 + */ +@Data +public class OrganizationMessagePageFormDTO extends PageFormDTO { + /** + * 发布渠道:0:专属app + */ + private String publishDitch; + /** + * 发布范围,组织id或者网格id + */ + private String orgId; + /** + * yyyy-MM-dd + */ + private String startDate; + /** + * yyyy-MM-dd + */ + private String endDate; +} + diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/result/OrganizationMessageResultDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/result/OrganizationMessageResultDTO.java new file mode 100644 index 0000000000..94b89ded76 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/result/OrganizationMessageResultDTO.java @@ -0,0 +1,84 @@ +package com.epmet.dto.result; + +import com.epmet.dto.OrganizationMessagePublishRangeDTO; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +/** + * @Description 烟台消息管理,列表查询 + * @Author yzm + * @Date 2023/5/4 16:06 + */ +@Data +public class OrganizationMessageResultDTO { + /** + * 消息id + */ + private String messageId; + + /** + * 发布渠道:0:专属app + */ + private String publishDitch; + + /** + * 消息内容;最多输入500 + */ + private String content; + /** + * 发布范围 + */ + private String publishRangeName; + + /** + * 发布时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date publishTime; + + /** + * 发布人staffId + */ + private String publishStaffId; + + /** + * 发布人姓名 + */ + private String publishStaffName; + + /** + * 发布人所属组织id + */ + private String publishOrgId; + + /** + * org_id_path + */ + private String publishOrgIdPath; + + /** + * 发布人所属组织名称 + */ + private String publishOrgName; + + /** + * 发送结果 + */ + private String sendMsgRes; + /** + * 共发送出多少条消息 + */ + private Integer totalReceiver; + + /** + * 发送完成时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date finishSendTime; + + private List rangeList; +} + diff --git a/epmet-module/epmet-message/epmet-message-server/pom.xml b/epmet-module/epmet-message/epmet-message-server/pom.xml index 53336db181..e900c8ba1a 100644 --- a/epmet-module/epmet-message/epmet-message-server/pom.xml +++ b/epmet-module/epmet-message/epmet-message-server/pom.xml @@ -101,11 +101,6 @@ flyway-core - - com.epmet - epmet-user-client - 2.0.0 - com.epmet epmet-third-client diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/OrganizationMessageController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/OrganizationMessageController.java new file mode 100644 index 0000000000..fac7d6d6d2 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/OrganizationMessageController.java @@ -0,0 +1,76 @@ +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.ValidatorUtils; +import com.epmet.dto.OrganizationMessageFormDTO; +import com.epmet.dto.form.OrganizationMessagePageFormDTO; +import com.epmet.dto.result.OrganizationMessageResultDTO; +import com.epmet.service.OrganizationMessageService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + + +/** + * 组织发布消息(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +@RestController +@RequestMapping("organization/message") +public class OrganizationMessageController { + + @Autowired + private OrganizationMessageService organizationMessageService; + + /** + * 列表查询 + * + * @param formDTO + * @return + */ + @PostMapping("list") + public Result> pageList(@RequestBody OrganizationMessagePageFormDTO formDTO) { + return new Result>().ok(organizationMessageService.pageList(formDTO.getPageNo(), formDTO.getPageSize(), + formDTO.getPublishDitch(), + formDTO.getOrgId(), + formDTO.getStartDate(), + formDTO.getEndDate())); + } + + /** + * 查询消息详情 + * + * @param messageId + * @return + */ + @PostMapping("detail/{messageId}") + public Result getDetail(@PathVariable("messageId") String messageId) { + if (StringUtils.isBlank(messageId)) { + return new Result<>(); + } + return new Result().ok(organizationMessageService.getDetail(messageId)); + } + + /** + * 发布消息 + * + * @param formDTO + * @return 返回消息id + */ + @PostMapping("publish") + public Result publish(@LoginUser TokenDto tokenDto, @RequestBody OrganizationMessageFormDTO formDTO) { + formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setPublishStaffId(tokenDto.getUserId()); + ValidatorUtils.validateEntity(formDTO, OrganizationMessageFormDTO.AddShowGroup.class); + String messageId=organizationMessageService.publish(formDTO); + // 发送消息 发布范围下有哪些网格,网格下所有的注册居民,每人发送一条消息 + organizationMessageService.sendUserMsg(messageId,formDTO.getContent(),formDTO.getPublishStaffId(),formDTO.getRangeList(),formDTO.getCustomerId()); + return new Result().ok(messageId); + } + +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/OrganizationMessageDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/OrganizationMessageDao.java new file mode 100644 index 0000000000..f13e230f0c --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/OrganizationMessageDao.java @@ -0,0 +1,36 @@ +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.OrganizationMessageResultDTO; +import com.epmet.entity.OrganizationMessageEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 组织发布消息(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +@Mapper +public interface OrganizationMessageDao extends BaseDao { + + /** + * + * @param staffOrgIdPath 工作人员所属组织的orgIdPath + * @param publishDitch 发布渠道;0:专属app + * @param orgId 发布范围,组织id或者网格id + * @param startDate yyyy-MM-dd + * @param endDate yyyy-MM-dd + * @return + */ + List pageList(@Param("customerId")String customerId, + @Param("staffOrgIdPath") String staffOrgIdPath, + @Param("publishDitch")String publishDitch, + @Param("orgId")String orgId, + @Param("startDate")String startDate, + @Param("endDate")String endDate, + @Param("messageId")String messageId); +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/OrganizationMessagePublishRangeDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/OrganizationMessagePublishRangeDao.java new file mode 100644 index 0000000000..94a9a65100 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/OrganizationMessagePublishRangeDao.java @@ -0,0 +1,16 @@ +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.OrganizationMessagePublishRangeEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 消息发布范围(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +@Mapper +public interface OrganizationMessagePublishRangeDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/OrganizationMessageEntity.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/OrganizationMessageEntity.java new file mode 100644 index 0000000000..15c07c0851 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/OrganizationMessageEntity.java @@ -0,0 +1,82 @@ +package com.epmet.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * 组织发布消息(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("organization_message") +public class OrganizationMessageEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户Id + */ + private String customerId; + + /** + * 发布渠道:0:专属app + */ + private String publishDitch; + + /** + * 消息内容;最多输入500 + */ + private String content; + + /** + * 发布人staffId + */ + private String publishStaffId; + + /** + * 发布人姓名 + */ + private String publishStaffName; + + /** + * 发布人所属组织id + */ + private String publishOrgId; + + /** + * org_id_path + */ + private String publishOrgIdPath; + + /** + * 发布人所属组织名称 + */ + private String publishOrgName; + + /** + * 发布时间 + */ + private Date publishTime; + /** + * 发送结果 + * sending发送中;failed失败;success成功 + */ + private String sendMsgRes; + /** + * 共发送出多少条消息 + */ + private Integer totalReceiver; + + /** + * 发送完成时间 + */ + private Date finishSendTime; +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/OrganizationMessagePublishRangeEntity.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/OrganizationMessagePublishRangeEntity.java new file mode 100644 index 0000000000..5080cfe16f --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/OrganizationMessagePublishRangeEntity.java @@ -0,0 +1,56 @@ +package com.epmet.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.epmet.commons.mybatis.entity.BaseEpmetEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 消息发布范围(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("organization_message_publish_range") +public class OrganizationMessagePublishRangeEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户Id + */ + private String customerId; + + /** + * 消息id:organization_message.id + */ + private String messageId; + + /** + * 组织或者网格id + */ + private String orgId; + + /** + * 组织:agency;网格:grid + */ + private String orgType; + + /** + * org_id的父级 + */ + private String pid; + + /** + * org_id的全路径,包含org_id + */ + private String orgIdPath; + + /** + * 组织名称或者网格名称;如果是网格名称,存储的是XXX社区-XX网格 + */ + private String orgName; + +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/OrganizationMessageService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/OrganizationMessageService.java new file mode 100644 index 0000000000..8932b557b4 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/OrganizationMessageService.java @@ -0,0 +1,47 @@ +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.OrganizationMessageFormDTO; +import com.epmet.dto.OrganizationMessagePublishRangeDTO; +import com.epmet.dto.result.OrganizationMessageResultDTO; +import com.epmet.entity.OrganizationMessageEntity; + +import java.util.List; + +/** + * 组织发布消息(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +public interface OrganizationMessageService extends BaseService { + + /** + * 分页列表 + * @param pageNo + * @param pageSize + * @param publishDitch 发布渠道;0:专属app + * @param orgId 发布范围,组织id或者网格id + * @param startDate yyyy-MM-dd + * @param endDate yyyy-MM-dd + * @return + */ + PageData pageList(Integer pageNo, Integer pageSize, String publishDitch, String orgId, String startDate, String endDate); + + /** + * 查询详情 + * @param messageId + * @return + */ + OrganizationMessageResultDTO getDetail(String messageId); + + /** + * 发布消息 + * @param formDTO + * @return 返回消息id + */ + String publish(OrganizationMessageFormDTO formDTO); + + void sendUserMsg(String messageId, String content, String publishStaffId, List rangeList, String customerId); +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/OrganizationMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/OrganizationMessageServiceImpl.java new file mode 100644 index 0000000000..65580da84c --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/OrganizationMessageServiceImpl.java @@ -0,0 +1,219 @@ +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.AppClientConstant; +import com.epmet.commons.tools.constant.Constant; +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.enums.OrgTypeEnum; +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.page.PageData; +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; +import com.epmet.commons.tools.redis.common.bean.GridInfoCache; +import com.epmet.commons.tools.utils.*; +import com.epmet.dao.OrganizationMessageDao; +import com.epmet.dao.OrganizationMessagePublishRangeDao; +import com.epmet.dao.UserMessageDao; +import com.epmet.dto.OrganizationMessageFormDTO; +import com.epmet.dto.OrganizationMessagePublishRangeDTO; +import com.epmet.dto.RegisterRelationDTO; +import com.epmet.dto.form.RegisterRelationPageFormDTO; +import com.epmet.dto.result.OrganizationMessageResultDTO; +import com.epmet.entity.OrganizationMessageEntity; +import com.epmet.entity.OrganizationMessagePublishRangeEntity; +import com.epmet.entity.UserMessageEntity; +import com.epmet.feign.EpmetUserOpenFeignClient; +import com.epmet.service.OrganizationMessageService; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; + +/** + * 组织发布消息(烟台) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2023-05-04 + */ +@Slf4j +@Service +public class OrganizationMessageServiceImpl extends BaseServiceImpl implements OrganizationMessageService { + @Autowired + private OrganizationMessagePublishRangeDao organizationMessagePublishRangeDao; + @Autowired + private UserMessageDao userMessageDao; + @Autowired + private EpmetUserOpenFeignClient epmetUserOpenFeignClient; + + + /** + * 分页列表 + * + * @param pageNo + * @param pageSize + * @param publishDitch 发布渠道;0:专属app + * @param orgId 发布范围,组织id或者网格id + * @param startDate yyyy-MM-dd + * @param endDate yyyy-MM-dd + * @return + */ + @Override + public PageData pageList(Integer pageNo, Integer pageSize, String publishDitch, String orgId, String startDate, String endDate) { + CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(EpmetRequestHolder.getLoginUserCustomerId(), EpmetRequestHolder.getLoginUserId()); + if (null == staffInfoCacheResult) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "customerId:" + EpmetRequestHolder.getLoginUserCustomerId() + "staffId:" + EpmetRequestHolder.getLoginUserId(), "获取工作人员信息异常"); + } + String staffOrgIdPath = PidUtils.convertPid2OrgIdPath(staffInfoCacheResult.getAgencyId(), staffInfoCacheResult.getAgencyPIds()); + PageHelper.startPage(pageNo, pageSize); + List list = baseDao.pageList(EpmetRequestHolder.getLoginUserCustomerId(),staffOrgIdPath, publishDitch, orgId, startDate, endDate,null); + PageInfo pageInfo = new PageInfo<>(list); + return new PageData<>(list, pageInfo.getTotal(),pageSize); + } + + /** + * 查询详情 + * + * @param messageId + * @return + */ + @Override + public OrganizationMessageResultDTO getDetail(String messageId) { + List list = baseDao.pageList(EpmetRequestHolder.getLoginUserCustomerId(),null, null, null, null, null,messageId); + if(CollectionUtils.isNotEmpty(list)){ + OrganizationMessageResultDTO resultDTO=list.get(NumConstant.ZERO); + LambdaQueryWrapper queryWrapper=new LambdaQueryWrapper<>(); + queryWrapper.eq(OrganizationMessagePublishRangeEntity::getMessageId,messageId) + .orderByAsc(OrganizationMessagePublishRangeEntity::getCreatedTime); + List rangeList=organizationMessagePublishRangeDao.selectList(queryWrapper); + resultDTO.setRangeList(ConvertUtils.sourceToTarget(rangeList,OrganizationMessagePublishRangeDTO.class)); + return resultDTO; + } + return null; + } + + /** + * 发布消息 + * + * @param formDTO + * @return 返回消息id + */ + @Transactional(rollbackFor = Exception.class) + @Override + public String publish(OrganizationMessageFormDTO formDTO) { + OrganizationMessageEntity messageEntity = ConvertUtils.sourceToTarget(formDTO, OrganizationMessageEntity.class); + CustomerStaffInfoCacheResult staffInfoCacheResult = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getPublishStaffId()); + messageEntity.setPublishStaffName(staffInfoCacheResult.getRealName()); + messageEntity.setPublishOrgId(staffInfoCacheResult.getAgencyId()); + messageEntity.setPublishOrgIdPath(PidUtils.convertPid2OrgIdPath(staffInfoCacheResult.getAgencyId(), staffInfoCacheResult.getAgencyPIds())); + messageEntity.setPublishOrgName(staffInfoCacheResult.getAgencyName()); + messageEntity.setPublishTime(new Date()); + messageEntity.setSendMsgRes("sending"); + baseDao.insert(messageEntity); + for (OrganizationMessagePublishRangeDTO dto : formDTO.getRangeList()) { + OrganizationMessagePublishRangeEntity rangeEntity = new OrganizationMessagePublishRangeEntity(); + rangeEntity.setCustomerId(messageEntity.getCustomerId()); + rangeEntity.setMessageId(messageEntity.getId()); + rangeEntity.setOrgId(dto.getOrgId()); + rangeEntity.setOrgType(dto.getOrgType()); + if (OrgTypeEnum.GRID.getCode().equals(dto.getOrgType())) { + GridInfoCache gridInfoCache = CustomerOrgRedis.getGridInfo(dto.getOrgId()); + rangeEntity.setPid(gridInfoCache.getPid()); + rangeEntity.setOrgIdPath(PidUtils.convertPid2OrgIdPath(dto.getOrgId(), gridInfoCache.getPids())); + rangeEntity.setOrgName(gridInfoCache.getGridNamePath()); + } else { + //if (OrgTypeEnum.AGENCY.getCode().equals(dto.getOrgType())) + AgencyInfoCache agencyInfoCache = CustomerOrgRedis.getAgencyInfo(dto.getOrgId()); + rangeEntity.setPid(agencyInfoCache.getPid()); + rangeEntity.setOrgIdPath(PidUtils.convertPid2OrgIdPath(dto.getOrgId(), agencyInfoCache.getPids())); + rangeEntity.setOrgName(agencyInfoCache.getOrganizationName()); + } + dto.setPid(rangeEntity.getPid()); + dto.setOrgIdPath(rangeEntity.getOrgIdPath()); + organizationMessagePublishRangeDao.insert(rangeEntity); + } + String messageId = messageEntity.getId(); + return messageId; + } + + + @Async + @Override + public void sendUserMsg(String messageId, String content, String publishStaffId,List rangeList, String customerId) { + String result = "success"; + int totalMsg = NumConstant.ZERO; + try { + for (OrganizationMessagePublishRangeDTO rangeDto : rangeList) { + RegisterRelationPageFormDTO pageFormDTO=new RegisterRelationPageFormDTO(); + pageFormDTO.setCustomerId(customerId); + pageFormDTO.setFirstRegister(NumConstant.ONE_STR); + pageFormDTO.setPageNo(NumConstant.ONE); + pageFormDTO.setPageSize(NumConstant.TWO); + // pageFormDTO.setPageSize(NumConstant.ONE_THOUSAND); + if (OrgTypeEnum.GRID.getCode().equals(rangeDto.getOrgType())) { + // 查询该网格下的注册居民 + pageFormDTO.setGridId(rangeDto.getOrgId()); + } else { + // 查询该组织下的注册居民 + pageFormDTO.setAgencyIdPath(rangeDto.getOrgIdPath()); + } + List list=null; + do { + Result> regRes = epmetUserOpenFeignClient.pageQueryRegisterUser(pageFormDTO); + list = regRes.getData().getList(); + for (RegisterRelationDTO regUser : list) { + LambdaQueryWrapper queryWrapper=new LambdaQueryWrapper(); + queryWrapper.eq(UserMessageEntity::getCustomerId,customerId) + .eq(UserMessageEntity::getTargetId,messageId) + .eq(UserMessageEntity::getUserId,regUser.getUserId()); + UserMessageEntity origin=userMessageDao.selectOne(queryWrapper); + if(null==origin){ + UserMessageEntity userMessageEntity = new UserMessageEntity(); + userMessageEntity.setCustomerId(customerId); + userMessageEntity.setGridId(regUser.getGridId()); + userMessageEntity.setUserId(regUser.getUserId()); + userMessageEntity.setApp(AppClientConstant.APP_RESI); + userMessageEntity.setTitle("您有一条社区消息!"); + userMessageEntity.setMessageContent(content); + userMessageEntity.setReadFlag(Constant.UNREAD); + userMessageEntity.setReferer(StrConstant.EPMETY_STR); + userMessageEntity.setMessageType("organization_message"); + userMessageEntity.setTargetId(messageId); + userMessageEntity.setCreatedBy(publishStaffId); + userMessageEntity.setUpdatedBy(publishStaffId); + userMessageDao.insert(userMessageEntity); + totalMsg += 1; + } + } + pageFormDTO.setPageNo(pageFormDTO.getPageNo() + NumConstant.ONE); + } while (CollectionUtils.isNotEmpty(list) && list.size() == pageFormDTO.getPageSize()); + } + } catch (Exception e) { + log.error(String.format("messageId:%s,发送消息异常:%s", messageId, ExceptionUtils.getErrorStackTrace(e))); + result = "failed"; + } finally { + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(OrganizationMessageEntity::getId, messageId) + .set(OrganizationMessageEntity::getSendMsgRes, result) + .set(OrganizationMessageEntity::getTotalReceiver, totalMsg) + .set(OrganizationMessageEntity::getFinishSendTime,new Date()) + .set(OrganizationMessageEntity::getUpdatedTime,new Date()); + baseDao.update(null, updateWrapper); + } + } + + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/OrganizationMessageDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/OrganizationMessageDao.xml new file mode 100644 index 0000000000..4c7b8d1140 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/OrganizationMessageDao.xml @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/OrganizationMessagePublishRangeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/OrganizationMessagePublishRangeDao.xml new file mode 100644 index 0000000000..18e02ac73f --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/OrganizationMessagePublishRangeDao.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/excel/yantai/yantai_dept_import_tem.xlsx b/epmet-module/gov-org/gov-org-server/src/main/resources/excel/yantai/yantai_dept_import_tem.xlsx index a3e51d0f54..4bc5ef807b 100644 Binary files a/epmet-module/gov-org/gov-org-server/src/main/resources/excel/yantai/yantai_dept_import_tem.xlsx and b/epmet-module/gov-org/gov-org-server/src/main/resources/excel/yantai/yantai_dept_import_tem.xlsx differ diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/entity/ResiGroupEntity.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/entity/ResiGroupEntity.java index cc35c91b5b..23279882cb 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/entity/ResiGroupEntity.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/entity/ResiGroupEntity.java @@ -98,4 +98,7 @@ Ps: 如果一个小组被拒绝,当前小组的状态将永久停留在“审 * 小组等级 */ private Integer level; + private String agencyId; + + private String orgIdPath; } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java index 8c2d43f75f..63065ee322 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java @@ -30,6 +30,8 @@ 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.page.PageData; +import com.epmet.commons.tools.redis.common.CustomerOrgRedis; +import com.epmet.commons.tools.redis.common.bean.GridInfoCache; import com.epmet.commons.tools.scan.param.ImgScanParamDTO; import com.epmet.commons.tools.scan.param.ImgTaskDTO; import com.epmet.commons.tools.scan.param.TextScanParamDTO; @@ -37,10 +39,7 @@ import com.epmet.commons.tools.scan.param.TextTaskDTO; import com.epmet.commons.tools.scan.result.SyncScanResult; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.security.user.LoginUserUtil; -import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.utils.DateUtils; -import com.epmet.commons.tools.utils.Result; -import com.epmet.commons.tools.utils.ScanContentUtils; +import com.epmet.commons.tools.utils.*; import com.epmet.constant.ReadFlagConstant; import com.epmet.constant.UserMessageTypeConstant; import com.epmet.dto.form.*; @@ -609,6 +608,10 @@ public class ResiGroupServiceImpl extends BaseServiceImpl map); + + /** + * 分页查询注册居民 + * @param pageFormDTO + * @return + */ + @PostMapping("/epmetuser/registerrelation/pageQueryRegisterUser") + Result> pageQueryRegisterUser(@RequestBody RegisterRelationPageFormDTO pageFormDTO); } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java index 4d3d56b76c..3bba7ced02 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java @@ -756,4 +756,15 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien public Result clearNatRecords(Map map) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "clearNatRecords", map); } + + /** + * 分页查询注册居民 + * + * @param pageFormDTO + * @return + */ + @Override + public Result> pageQueryRegisterUser(RegisterRelationPageFormDTO pageFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "pageQueryRegisterUser", pageFormDTO); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/RegisterRelationController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/RegisterRelationController.java index d801a5e6e9..77dd78bf9d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/RegisterRelationController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/RegisterRelationController.java @@ -28,6 +28,7 @@ import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.dto.RegisterRelationDTO; import com.epmet.dto.form.AllResiByGridFormDTO; import com.epmet.dto.form.EnterGridFormDTO; +import com.epmet.dto.form.RegisterRelationPageFormDTO; import com.epmet.dto.result.UserInfoOnEnterGridResultDTO; import com.epmet.excel.RegisterRelationExcel; import com.epmet.service.RegisterRelationService; @@ -120,4 +121,21 @@ public class RegisterRelationController { ValidatorUtils.validateEntity(formDTO, AllResiByGridFormDTO.AllResiByGridForm.class); return new Result().ok(registerRelationService.getAllResiByGrid(formDTO)); } + + /** + * 分页查询注册居民信息 + * @param pageFormDTO + * @return + */ + @PostMapping("pageQueryRegisterUser") + public Result> pageQueryRegisterUser(@RequestBody RegisterRelationPageFormDTO pageFormDTO){ + return new Result>().ok(registerRelationService.pageQueryRegisterUser(pageFormDTO.getPageNo(), + pageFormDTO.getPageSize(), + pageFormDTO.getCustomerId(), + pageFormDTO.getGridId(), + pageFormDTO.getAgencyIdPath(), + pageFormDTO.getFirstRegister())); + } + + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java index 4ea378aaaf..935df32987 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/IcResiUserDao.java @@ -497,4 +497,10 @@ public interface IcResiUserDao extends BaseDao { @Param("orgIdPath") String orgIdPath, @Param("codeType")String codeType, @Param("code") String code); + /** + * 根据ic_resi_user.id查询,不限制任何状态 + * @param icResiUserId + * @return + */ + IcResiUserEntity getById(String icResiUserId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/RegisterRelationDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/RegisterRelationDao.java index f5f4cdfd35..83ac08f940 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/RegisterRelationDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/RegisterRelationDao.java @@ -71,4 +71,9 @@ public interface RegisterRelationDao extends BaseDao { * @date 2022/10/8 10:48 */ Integer getAllResiByGrid(@Param("gridId")String gridId); + + List pageQueryRegisterUser(@Param("customerId") String customerId, + @Param("gridId") String gridId, + @Param("agencyIdPath") String agencyIdPath, + @Param("firstRegister") String firstRegister); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RegisterRelationService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RegisterRelationService.java index 7179b78530..ed39bd6441 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RegisterRelationService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/RegisterRelationService.java @@ -123,4 +123,16 @@ public interface RegisterRelationService extends BaseService pageQueryRegisterUser(Integer pageNo, Integer pageSize, String customerId, String gridId, String agencyIdPath, String firstRegister); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index 13d5a1bc4f..abb96a5558 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -1720,7 +1720,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl pageQueryRegisterUser(Integer pageNo, Integer pageSize, String customerId, String gridId, String agencyIdPath, String firstRegister) { + PageHelper.startPage(pageNo,pageSize); + List resList=baseDao.pageQueryRegisterUser(customerId,gridId,agencyIdPath,firstRegister); + PageInfo pageInfo = new PageInfo<>(resList); + return new PageData<>(resList, pageInfo.getTotal()); + } } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml index d4160e7e90..d2df1efa5d 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/IcResiUserDao.xml @@ -335,7 +335,7 @@ ORDER BY - IC_RESI_USER.GRID_ID desc, + IC_RESI_USER.GRID_ID asc, IC_RESI_USER.VILLAGE_ID ASC, IC_RESI_USER.BUILD_ID ASC, IC_RESI_USER.UNIT_ID ASC, @@ -1737,4 +1737,8 @@ order by u.ID asc + + diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/RegisterRelationDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/RegisterRelationDao.xml index c43cea28cc..f2e0506de3 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/RegisterRelationDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/RegisterRelationDao.xml @@ -97,5 +97,20 @@ AND grid_id = #{gridId} - +