From a72da17734ff2f2730e54909b1de720a98633ebe Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 21 Oct 2020 14:31:06 +0800 Subject: [PATCH 01/42] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E6=B6=88=E6=81=AF?= =?UTF-8?q?=E8=AE=A2=E9=98=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxmpMessageController.java | 39 +++++++++++++++++++ .../com/epmet/service/WxmpMessageService.java | 28 +++++++++++++ .../service/impl/WxmpMessageServiceImpl.java | 35 +++++++++++++++++ 3 files changed, 102 insertions(+) create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java new file mode 100644 index 0000000000..294f0f5d36 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java @@ -0,0 +1,39 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.controller; + +import com.epmet.service.WxmpMessageService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +/** + * 微信消息订阅controller + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@RestController +@RequestMapping("wxmpmessage") +public class WxmpMessageController { + + @Autowired + private WxmpMessageService wxmpMessageService; + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java new file mode 100644 index 0000000000..ab96dd6f0d --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java @@ -0,0 +1,28 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service; + +/** + * 微信消息订阅Service + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +public interface WxmpMessageService { + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java new file mode 100644 index 0000000000..75b784b5e6 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -0,0 +1,35 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service.impl; + +import com.epmet.service.WxmpMessageService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +/** + * 微信消息订阅Service + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Service +public class WxmpMessageServiceImpl implements WxmpMessageService { + private Logger logger = LoggerFactory.getLogger(getClass()); + +} \ No newline at end of file From 2ee535ddeb9f30c1fd307a60ba5b060d5dbf7bb3 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 21 Oct 2020 15:37:24 +0800 Subject: [PATCH 02/42] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/WxmpMsgSendRecordDTO.java | 116 ++++++++++++++++++ .../epmet/dto/WxmpResiUserSubscribeDTO.java | 101 +++++++++++++++ .../WxmpTemplateMsgSubscribeStatusDTO.java | 106 ++++++++++++++++ .../epmet/dto/WxmpUserSubscribeRecordDTO.java | 106 ++++++++++++++++ .../epmet/dto/WxmpWorkUserSubscribeDTO.java | 101 +++++++++++++++ .../WxmpMsgSendRecordController.java | 94 ++++++++++++++ .../WxmpResiUserSubscribeController.java | 94 ++++++++++++++ ...pTemplateMsgSubscribeStatusController.java | 94 ++++++++++++++ .../WxmpUserSubscribeRecordController.java | 94 ++++++++++++++ .../WxmpWorkUserSubscribeController.java | 94 ++++++++++++++ .../com/epmet/dao/WxmpMsgSendRecordDao.java | 33 +++++ .../epmet/dao/WxmpResiUserSubscribeDao.java | 33 +++++ .../WxmpTemplateMsgSubscribeStatusDao.java | 33 +++++ .../epmet/dao/WxmpUserSubscribeRecordDao.java | 33 +++++ .../epmet/dao/WxmpWorkUserSubscribeDao.java | 33 +++++ .../epmet/entity/WxmpMsgSendRecordEntity.java | 86 +++++++++++++ .../entity/WxmpResiUserSubscribeEntity.java | 71 +++++++++++ .../WxmpTemplateMsgSubscribeStatusEntity.java | 76 ++++++++++++ .../entity/WxmpUserSubscribeRecordEntity.java | 76 ++++++++++++ .../entity/WxmpWorkUserSubscribeEntity.java | 71 +++++++++++ .../epmet/excel/WxmpMsgSendRecordExcel.java | 83 +++++++++++++ .../excel/WxmpResiUserSubscribeExcel.java | 74 +++++++++++ .../WxmpTemplateMsgSubscribeStatusExcel.java | 77 ++++++++++++ .../excel/WxmpUserSubscribeRecordExcel.java | 77 ++++++++++++ .../excel/WxmpWorkUserSubscribeExcel.java | 74 +++++++++++ .../epmet/redis/WxmpMsgSendRecordRedis.java | 47 +++++++ .../redis/WxmpResiUserSubscribeRedis.java | 47 +++++++ .../WxmpTemplateMsgSubscribeStatusRedis.java | 47 +++++++ .../redis/WxmpUserSubscribeRecordRedis.java | 47 +++++++ .../redis/WxmpWorkUserSubscribeRedis.java | 47 +++++++ .../service/WxmpMsgSendRecordService.java | 95 ++++++++++++++ .../service/WxmpResiUserSubscribeService.java | 95 ++++++++++++++ ...WxmpTemplateMsgSubscribeStatusService.java | 95 ++++++++++++++ .../WxmpUserSubscribeRecordService.java | 95 ++++++++++++++ .../service/WxmpWorkUserSubscribeService.java | 95 ++++++++++++++ .../impl/WxmpMsgSendRecordServiceImpl.java | 104 ++++++++++++++++ .../WxmpResiUserSubscribeServiceImpl.java | 104 ++++++++++++++++ ...TemplateMsgSubscribeStatusServiceImpl.java | 104 ++++++++++++++++ .../WxmpUserSubscribeRecordServiceImpl.java | 104 ++++++++++++++++ .../WxmpWorkUserSubscribeServiceImpl.java | 104 ++++++++++++++++ .../resources/mapper/WxmpMsgSendRecordDao.xml | 8 ++ .../mapper/WxmpResiUserSubscribeDao.xml | 8 ++ .../WxmpTemplateMsgSubscribeStatusDao.xml | 8 ++ .../mapper/WxmpUserSubscribeRecordDao.xml | 8 ++ .../mapper/WxmpWorkUserSubscribeDao.xml | 8 ++ 45 files changed, 3200 insertions(+) create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpResiUserSubscribeDTO.java create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpTemplateMsgSubscribeStatusDTO.java create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpUserSubscribeRecordDTO.java create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpWorkUserSubscribeDTO.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMsgSendRecordController.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpResiUserSubscribeController.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpTemplateMsgSubscribeStatusController.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpUserSubscribeRecordController.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpWorkUserSubscribeController.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpMsgSendRecordDao.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpUserSubscribeRecordDao.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpWorkUserSubscribeDao.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpMsgSendRecordEntity.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpResiUserSubscribeEntity.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpTemplateMsgSubscribeStatusEntity.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpUserSubscribeRecordEntity.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpWorkUserSubscribeEntity.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpResiUserSubscribeExcel.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpTemplateMsgSubscribeStatusExcel.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpUserSubscribeRecordExcel.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpWorkUserSubscribeExcel.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpMsgSendRecordRedis.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpResiUserSubscribeRedis.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpTemplateMsgSubscribeStatusRedis.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpUserSubscribeRecordRedis.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpWorkUserSubscribeRedis.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMsgSendRecordService.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpResiUserSubscribeService.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpTemplateMsgSubscribeStatusService.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpUserSubscribeRecordService.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpWorkUserSubscribeService.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMsgSendRecordServiceImpl.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpResiUserSubscribeServiceImpl.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpTemplateMsgSubscribeStatusServiceImpl.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpUserSubscribeRecordServiceImpl.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpWorkUserSubscribeServiceImpl.java create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpMsgSendRecordDao.xml create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpUserSubscribeRecordDao.xml create mode 100644 epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java new file mode 100644 index 0000000000..875e687b63 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java @@ -0,0 +1,116 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 消息发送记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpMsgSendRecordDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 所属端类型 居民端:resi 工作端:work + */ + private String clientType; + + /** + * 消息模板Id 消息模板Id + */ + private String templateId; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * openId openId + */ + private String wxOpenId; + + /** + * 行为类型(存title字段的中间值) 入组申请、党员认证等 + */ + private String behaviorType; + + /** + * 消息标题 消息标题 + */ + private String title; + + /** + * 消息内容 消息内容 + */ + private String messageContent; + + /** + * 消息时间 消息时间 + */ + private Date messageTitme; + + /** + * 删除标识 + */ + private Integer delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpResiUserSubscribeDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpResiUserSubscribeDTO.java new file mode 100644 index 0000000000..e8b2f2a1fb --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpResiUserSubscribeDTO.java @@ -0,0 +1,101 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 居民端用户订阅模板消息次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpResiUserSubscribeDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 消息模板Id 消息模板Id + */ + private String templateId; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * openId openId + */ + private String wxOpenId; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; + + /** + * 可用推送次数 可用推送次数 + */ + private Integer count; + + /** + * 删除标识 + */ + private Integer delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpTemplateMsgSubscribeStatusDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpTemplateMsgSubscribeStatusDTO.java new file mode 100644 index 0000000000..00dc07a199 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpTemplateMsgSubscribeStatusDTO.java @@ -0,0 +1,106 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpTemplateMsgSubscribeStatusDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 所属端类型 居民端:resi 工作端:work + */ + private String clientType; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * 是否总是访问 是:yes 否:no + */ + private String alwaysVisit; + + /** + * 订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String subscribeStatus; + + /** + * wx是否总是访问 是:yes 否:no + */ + private String wxAlwaysVisit; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; + + /** + * 删除标识 + */ + private Integer delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpUserSubscribeRecordDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpUserSubscribeRecordDTO.java new file mode 100644 index 0000000000..901023e9ea --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpUserSubscribeRecordDTO.java @@ -0,0 +1,106 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 用户触发订阅的行为记录表(同时记录微信授权页每次勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpUserSubscribeRecordDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 消息模板Id 消息模板Id + */ + private String templateId; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * openId openId + */ + private String wxOpenId; + + /** + * 行为类型(存title字段的中间值) 入组申请、党员认证等 + */ + private String behaviorType; + + /** + * wx是否总是访问 是:yes 否:no + */ + private String wxAlwaysVisit; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; + + /** + * 删除标识 + */ + private Integer delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpWorkUserSubscribeDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpWorkUserSubscribeDTO.java new file mode 100644 index 0000000000..632c9ecf84 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpWorkUserSubscribeDTO.java @@ -0,0 +1,101 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 工作端用户订阅模板消息有效次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpWorkUserSubscribeDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 消息模板Id 消息模板Id + */ + private String templateId; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * openId openId + */ + private String wxOpenId; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; + + /** + * 可用推送次数 可用推送次数 + */ + private Integer count; + + /** + * 删除标识 + */ + private Integer delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMsgSendRecordController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMsgSendRecordController.java new file mode 100644 index 0000000000..ad71a5db81 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMsgSendRecordController.java @@ -0,0 +1,94 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.controller; + +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.dto.WxmpMsgSendRecordDTO; +import com.epmet.excel.WxmpMsgSendRecordExcel; +import com.epmet.service.WxmpMsgSendRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 消息发送记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@RestController +@RequestMapping("wxmpmsgsendrecord") +public class WxmpMsgSendRecordController { + + @Autowired + private WxmpMsgSendRecordService wxmpMsgSendRecordService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = wxmpMsgSendRecordService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + WxmpMsgSendRecordDTO data = wxmpMsgSendRecordService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody WxmpMsgSendRecordDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + wxmpMsgSendRecordService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody WxmpMsgSendRecordDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + wxmpMsgSendRecordService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + wxmpMsgSendRecordService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = wxmpMsgSendRecordService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, WxmpMsgSendRecordExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpResiUserSubscribeController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpResiUserSubscribeController.java new file mode 100644 index 0000000000..e4c38f9478 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpResiUserSubscribeController.java @@ -0,0 +1,94 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.controller; + +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.dto.WxmpResiUserSubscribeDTO; +import com.epmet.excel.WxmpResiUserSubscribeExcel; +import com.epmet.service.WxmpResiUserSubscribeService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 居民端用户订阅模板消息次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@RestController +@RequestMapping("wxmpresiusersubscribe") +public class WxmpResiUserSubscribeController { + + @Autowired + private WxmpResiUserSubscribeService wxmpResiUserSubscribeService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = wxmpResiUserSubscribeService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + WxmpResiUserSubscribeDTO data = wxmpResiUserSubscribeService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody WxmpResiUserSubscribeDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + wxmpResiUserSubscribeService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody WxmpResiUserSubscribeDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + wxmpResiUserSubscribeService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + wxmpResiUserSubscribeService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = wxmpResiUserSubscribeService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, WxmpResiUserSubscribeExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpTemplateMsgSubscribeStatusController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpTemplateMsgSubscribeStatusController.java new file mode 100644 index 0000000000..a80fd35b58 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpTemplateMsgSubscribeStatusController.java @@ -0,0 +1,94 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.controller; + +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.dto.WxmpTemplateMsgSubscribeStatusDTO; +import com.epmet.excel.WxmpTemplateMsgSubscribeStatusExcel; +import com.epmet.service.WxmpTemplateMsgSubscribeStatusService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@RestController +@RequestMapping("wxmptemplatemsgsubscribestatus") +public class WxmpTemplateMsgSubscribeStatusController { + + @Autowired + private WxmpTemplateMsgSubscribeStatusService wxmpTemplateMsgSubscribeStatusService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = wxmpTemplateMsgSubscribeStatusService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + WxmpTemplateMsgSubscribeStatusDTO data = wxmpTemplateMsgSubscribeStatusService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody WxmpTemplateMsgSubscribeStatusDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + wxmpTemplateMsgSubscribeStatusService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody WxmpTemplateMsgSubscribeStatusDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + wxmpTemplateMsgSubscribeStatusService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + wxmpTemplateMsgSubscribeStatusService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = wxmpTemplateMsgSubscribeStatusService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, WxmpTemplateMsgSubscribeStatusExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpUserSubscribeRecordController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpUserSubscribeRecordController.java new file mode 100644 index 0000000000..e30eace2f5 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpUserSubscribeRecordController.java @@ -0,0 +1,94 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.controller; + +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.dto.WxmpUserSubscribeRecordDTO; +import com.epmet.excel.WxmpUserSubscribeRecordExcel; +import com.epmet.service.WxmpUserSubscribeRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 用户触发订阅的行为记录表(同时记录微信授权页每次勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@RestController +@RequestMapping("wxmpusersubscriberecord") +public class WxmpUserSubscribeRecordController { + + @Autowired + private WxmpUserSubscribeRecordService wxmpUserSubscribeRecordService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = wxmpUserSubscribeRecordService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + WxmpUserSubscribeRecordDTO data = wxmpUserSubscribeRecordService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody WxmpUserSubscribeRecordDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + wxmpUserSubscribeRecordService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody WxmpUserSubscribeRecordDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + wxmpUserSubscribeRecordService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + wxmpUserSubscribeRecordService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = wxmpUserSubscribeRecordService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, WxmpUserSubscribeRecordExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpWorkUserSubscribeController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpWorkUserSubscribeController.java new file mode 100644 index 0000000000..be838ea49d --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpWorkUserSubscribeController.java @@ -0,0 +1,94 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.controller; + +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ExcelUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.AssertUtils; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.commons.tools.validator.group.AddGroup; +import com.epmet.commons.tools.validator.group.UpdateGroup; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import com.epmet.dto.WxmpWorkUserSubscribeDTO; +import com.epmet.excel.WxmpWorkUserSubscribeExcel; +import com.epmet.service.WxmpWorkUserSubscribeService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + + +/** + * 工作端用户订阅模板消息有效次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@RestController +@RequestMapping("wxmpworkusersubscribe") +public class WxmpWorkUserSubscribeController { + + @Autowired + private WxmpWorkUserSubscribeService wxmpWorkUserSubscribeService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = wxmpWorkUserSubscribeService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + WxmpWorkUserSubscribeDTO data = wxmpWorkUserSubscribeService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody WxmpWorkUserSubscribeDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + wxmpWorkUserSubscribeService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody WxmpWorkUserSubscribeDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + wxmpWorkUserSubscribeService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + wxmpWorkUserSubscribeService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = wxmpWorkUserSubscribeService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, WxmpWorkUserSubscribeExcel.class); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpMsgSendRecordDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpMsgSendRecordDao.java new file mode 100644 index 0000000000..e20aa97fd6 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpMsgSendRecordDao.java @@ -0,0 +1,33 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.WxmpMsgSendRecordEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 消息发送记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Mapper +public interface WxmpMsgSendRecordDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java new file mode 100644 index 0000000000..5a26cc19f7 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java @@ -0,0 +1,33 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.WxmpResiUserSubscribeEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 居民端用户订阅模板消息次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Mapper +public interface WxmpResiUserSubscribeDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java new file mode 100644 index 0000000000..9f99225746 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java @@ -0,0 +1,33 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Mapper +public interface WxmpTemplateMsgSubscribeStatusDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpUserSubscribeRecordDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpUserSubscribeRecordDao.java new file mode 100644 index 0000000000..75a67bf727 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpUserSubscribeRecordDao.java @@ -0,0 +1,33 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.WxmpUserSubscribeRecordEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 用户触发订阅的行为记录表(同时记录微信授权页每次勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Mapper +public interface WxmpUserSubscribeRecordDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpWorkUserSubscribeDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpWorkUserSubscribeDao.java new file mode 100644 index 0000000000..81a2659e04 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpWorkUserSubscribeDao.java @@ -0,0 +1,33 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.dao; + +import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.entity.WxmpWorkUserSubscribeEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 工作端用户订阅模板消息有效次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Mapper +public interface WxmpWorkUserSubscribeDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpMsgSendRecordEntity.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpMsgSendRecordEntity.java new file mode 100644 index 0000000000..e802097c68 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpMsgSendRecordEntity.java @@ -0,0 +1,86 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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 2020-10-21 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("wxmp_msg_send_record") +public class WxmpMsgSendRecordEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 所属端类型 居民端:resi 工作端:work + */ + private String clientType; + + /** + * 消息模板Id 消息模板Id + */ + private String templateId; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * openId openId + */ + private String wxOpenId; + + /** + * 行为类型(存title字段的中间值) 入组申请、党员认证等 + */ + private String behaviorType; + + /** + * 消息标题 消息标题 + */ + private String title; + + /** + * 消息内容 消息内容 + */ + private String messageContent; + + /** + * 消息时间 消息时间 + */ + private Date messageTitme; + +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpResiUserSubscribeEntity.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpResiUserSubscribeEntity.java new file mode 100644 index 0000000000..cff96c779d --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpResiUserSubscribeEntity.java @@ -0,0 +1,71 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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 2020-10-21 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("wxmp_resi_user_subscribe") +public class WxmpResiUserSubscribeEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 消息模板Id 消息模板Id + */ + private String templateId; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * openId openId + */ + private String wxOpenId; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; + + /** + * 可用推送次数 可用推送次数 + */ + private Integer count; + +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpTemplateMsgSubscribeStatusEntity.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpTemplateMsgSubscribeStatusEntity.java new file mode 100644 index 0000000000..991ed157f1 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpTemplateMsgSubscribeStatusEntity.java @@ -0,0 +1,76 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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 2020-10-21 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("wxmp_template_msg_subscribe_status") +public class WxmpTemplateMsgSubscribeStatusEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 所属端类型 居民端:resi 工作端:work + */ + private String clientType; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * 是否总是访问 是:yes 否:no + */ + private String alwaysVisit; + + /** + * 订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String subscribeStatus; + + /** + * wx是否总是访问 是:yes 否:no + */ + private String wxAlwaysVisit; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; + +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpUserSubscribeRecordEntity.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpUserSubscribeRecordEntity.java new file mode 100644 index 0000000000..8d40463334 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpUserSubscribeRecordEntity.java @@ -0,0 +1,76 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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 2020-10-21 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("wxmp_user_subscribe_record") +public class WxmpUserSubscribeRecordEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 消息模板Id 消息模板Id + */ + private String templateId; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * openId openId + */ + private String wxOpenId; + + /** + * 行为类型(存title字段的中间值) 入组申请、党员认证等 + */ + private String behaviorType; + + /** + * wx是否总是访问 是:yes 否:no + */ + private String wxAlwaysVisit; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; + +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpWorkUserSubscribeEntity.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpWorkUserSubscribeEntity.java new file mode 100644 index 0000000000..124a450386 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpWorkUserSubscribeEntity.java @@ -0,0 +1,71 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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 2020-10-21 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("wxmp_work_user_subscribe") +public class WxmpWorkUserSubscribeEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 消息模板Id 消息模板Id + */ + private String templateId; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * openId openId + */ + private String wxOpenId; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; + + /** + * 可用推送次数 可用推送次数 + */ + private Integer count; + +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java new file mode 100644 index 0000000000..10d4a9c837 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java @@ -0,0 +1,83 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 消息发送记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpMsgSendRecordExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "客户Id 客户Id") + private String customerId; + + @Excel(name = "所属端类型 居民端:resi 工作端:work") + private String clientType; + + @Excel(name = "消息模板Id 消息模板Id") + private String templateId; + + @Excel(name = "用户Id 用户Id") + private String userId; + + @Excel(name = "openId openId") + private String wxOpenId; + + @Excel(name = "行为类型(存title字段的中间值) 入组申请、党员认证等") + private String behaviorType; + + @Excel(name = "消息标题 消息标题") + private String title; + + @Excel(name = "消息内容 消息内容") + private String messageContent; + + @Excel(name = "消息时间 消息时间") + private Date messageTitme; + + @Excel(name = "删除标识") + private Integer delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpResiUserSubscribeExcel.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpResiUserSubscribeExcel.java new file mode 100644 index 0000000000..b72c75dd7f --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpResiUserSubscribeExcel.java @@ -0,0 +1,74 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 居民端用户订阅模板消息次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpResiUserSubscribeExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "客户Id 客户Id") + private String customerId; + + @Excel(name = "消息模板Id 消息模板Id") + private String templateId; + + @Excel(name = "用户Id 用户Id") + private String userId; + + @Excel(name = "openId openId") + private String wxOpenId; + + @Excel(name = "wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe)") + private String wxSubscribeStatus; + + @Excel(name = "可用推送次数 可用推送次数") + private Integer count; + + @Excel(name = "删除标识") + private Integer delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpTemplateMsgSubscribeStatusExcel.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpTemplateMsgSubscribeStatusExcel.java new file mode 100644 index 0000000000..7c39312da3 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpTemplateMsgSubscribeStatusExcel.java @@ -0,0 +1,77 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpTemplateMsgSubscribeStatusExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "客户Id 客户Id") + private String customerId; + + @Excel(name = "所属端类型 居民端:resi 工作端:work") + private String clientType; + + @Excel(name = "用户Id 用户Id") + private String userId; + + @Excel(name = "是否总是访问 是:yes 否:no") + private String alwaysVisit; + + @Excel(name = "订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe)") + private String subscribeStatus; + + @Excel(name = "wx是否总是访问 是:yes 否:no") + private String wxAlwaysVisit; + + @Excel(name = "wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe)") + private String wxSubscribeStatus; + + @Excel(name = "删除标识") + private Integer delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpUserSubscribeRecordExcel.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpUserSubscribeRecordExcel.java new file mode 100644 index 0000000000..b52a82b5cf --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpUserSubscribeRecordExcel.java @@ -0,0 +1,77 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 用户触发订阅的行为记录表(同时记录微信授权页每次勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpUserSubscribeRecordExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "客户Id 客户Id") + private String customerId; + + @Excel(name = "消息模板Id 消息模板Id") + private String templateId; + + @Excel(name = "用户Id 用户Id") + private String userId; + + @Excel(name = "openId openId") + private String wxOpenId; + + @Excel(name = "行为类型(存title字段的中间值) 入组申请、党员认证等") + private String behaviorType; + + @Excel(name = "wx是否总是访问 是:yes 否:no") + private String wxAlwaysVisit; + + @Excel(name = "wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe)") + private String wxSubscribeStatus; + + @Excel(name = "删除标识") + private Integer delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpWorkUserSubscribeExcel.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpWorkUserSubscribeExcel.java new file mode 100644 index 0000000000..7397f5dfa3 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpWorkUserSubscribeExcel.java @@ -0,0 +1,74 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 工作端用户订阅模板消息有效次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Data +public class WxmpWorkUserSubscribeExcel { + + @Excel(name = "主键") + private String id; + + @Excel(name = "客户Id 客户Id") + private String customerId; + + @Excel(name = "消息模板Id 消息模板Id") + private String templateId; + + @Excel(name = "用户Id 用户Id") + private String userId; + + @Excel(name = "openId openId") + private String wxOpenId; + + @Excel(name = "wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe)") + private String wxSubscribeStatus; + + @Excel(name = "可用推送次数 可用推送次数") + private Integer count; + + @Excel(name = "删除标识") + private Integer delFlag; + + @Excel(name = "乐观锁") + private Integer revision; + + @Excel(name = "创建人") + private String createdBy; + + @Excel(name = "创建时间") + private Date createdTime; + + @Excel(name = "更新人") + private String updatedBy; + + @Excel(name = "更新时间") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpMsgSendRecordRedis.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpMsgSendRecordRedis.java new file mode 100644 index 0000000000..68ba610368 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpMsgSendRecordRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 消息发送记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Component +public class WxmpMsgSendRecordRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpResiUserSubscribeRedis.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpResiUserSubscribeRedis.java new file mode 100644 index 0000000000..ee0081e5db --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpResiUserSubscribeRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 居民端用户订阅模板消息次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Component +public class WxmpResiUserSubscribeRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpTemplateMsgSubscribeStatusRedis.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpTemplateMsgSubscribeStatusRedis.java new file mode 100644 index 0000000000..67de7a368b --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpTemplateMsgSubscribeStatusRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Component +public class WxmpTemplateMsgSubscribeStatusRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpUserSubscribeRecordRedis.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpUserSubscribeRecordRedis.java new file mode 100644 index 0000000000..6cf0c8eb72 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpUserSubscribeRecordRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 用户触发订阅的行为记录表(同时记录微信授权页每次勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Component +public class WxmpUserSubscribeRecordRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpWorkUserSubscribeRedis.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpWorkUserSubscribeRedis.java new file mode 100644 index 0000000000..f6cfcea0c2 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/redis/WxmpWorkUserSubscribeRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.redis; + +import com.epmet.commons.tools.redis.RedisUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * 工作端用户订阅模板消息有效次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Component +public class WxmpWorkUserSubscribeRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMsgSendRecordService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMsgSendRecordService.java new file mode 100644 index 0000000000..54dead18cc --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMsgSendRecordService.java @@ -0,0 +1,95 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.WxmpMsgSendRecordDTO; +import com.epmet.entity.WxmpMsgSendRecordEntity; + +import java.util.List; +import java.util.Map; + +/** + * 消息发送记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +public interface WxmpMsgSendRecordService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-10-21 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-10-21 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return WxmpMsgSendRecordDTO + * @author generator + * @date 2020-10-21 + */ + WxmpMsgSendRecordDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void save(WxmpMsgSendRecordDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void update(WxmpMsgSendRecordDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-10-21 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpResiUserSubscribeService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpResiUserSubscribeService.java new file mode 100644 index 0000000000..b1eb19fc27 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpResiUserSubscribeService.java @@ -0,0 +1,95 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.WxmpResiUserSubscribeDTO; +import com.epmet.entity.WxmpResiUserSubscribeEntity; + +import java.util.List; +import java.util.Map; + +/** + * 居民端用户订阅模板消息次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +public interface WxmpResiUserSubscribeService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-10-21 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-10-21 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return WxmpResiUserSubscribeDTO + * @author generator + * @date 2020-10-21 + */ + WxmpResiUserSubscribeDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void save(WxmpResiUserSubscribeDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void update(WxmpResiUserSubscribeDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-10-21 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpTemplateMsgSubscribeStatusService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpTemplateMsgSubscribeStatusService.java new file mode 100644 index 0000000000..c719aa0c9b --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpTemplateMsgSubscribeStatusService.java @@ -0,0 +1,95 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.WxmpTemplateMsgSubscribeStatusDTO; +import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity; + +import java.util.List; +import java.util.Map; + +/** + * 用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +public interface WxmpTemplateMsgSubscribeStatusService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-10-21 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-10-21 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return WxmpTemplateMsgSubscribeStatusDTO + * @author generator + * @date 2020-10-21 + */ + WxmpTemplateMsgSubscribeStatusDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void save(WxmpTemplateMsgSubscribeStatusDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void update(WxmpTemplateMsgSubscribeStatusDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-10-21 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpUserSubscribeRecordService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpUserSubscribeRecordService.java new file mode 100644 index 0000000000..eda8ee4a3f --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpUserSubscribeRecordService.java @@ -0,0 +1,95 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.WxmpUserSubscribeRecordDTO; +import com.epmet.entity.WxmpUserSubscribeRecordEntity; + +import java.util.List; +import java.util.Map; + +/** + * 用户触发订阅的行为记录表(同时记录微信授权页每次勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +public interface WxmpUserSubscribeRecordService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-10-21 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-10-21 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return WxmpUserSubscribeRecordDTO + * @author generator + * @date 2020-10-21 + */ + WxmpUserSubscribeRecordDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void save(WxmpUserSubscribeRecordDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void update(WxmpUserSubscribeRecordDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-10-21 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpWorkUserSubscribeService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpWorkUserSubscribeService.java new file mode 100644 index 0000000000..60c482cd2e --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpWorkUserSubscribeService.java @@ -0,0 +1,95 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service; + +import com.epmet.commons.mybatis.service.BaseService; +import com.epmet.commons.tools.page.PageData; +import com.epmet.dto.WxmpWorkUserSubscribeDTO; +import com.epmet.entity.WxmpWorkUserSubscribeEntity; + +import java.util.List; +import java.util.Map; + +/** + * 工作端用户订阅模板消息有效次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +public interface WxmpWorkUserSubscribeService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-10-21 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-10-21 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return WxmpWorkUserSubscribeDTO + * @author generator + * @date 2020-10-21 + */ + WxmpWorkUserSubscribeDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void save(WxmpWorkUserSubscribeDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-10-21 + */ + void update(WxmpWorkUserSubscribeDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-10-21 + */ + void delete(String[] ids); +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMsgSendRecordServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMsgSendRecordServiceImpl.java new file mode 100644 index 0000000000..5bd33aa047 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMsgSendRecordServiceImpl.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.dao.WxmpMsgSendRecordDao; +import com.epmet.dto.WxmpMsgSendRecordDTO; +import com.epmet.entity.WxmpMsgSendRecordEntity; +import com.epmet.redis.WxmpMsgSendRecordRedis; +import com.epmet.service.WxmpMsgSendRecordService; +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 java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 消息发送记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Service +public class WxmpMsgSendRecordServiceImpl extends BaseServiceImpl implements WxmpMsgSendRecordService { + + @Autowired + private WxmpMsgSendRecordRedis wxmpMsgSendRecordRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, WxmpMsgSendRecordDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, WxmpMsgSendRecordDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public WxmpMsgSendRecordDTO get(String id) { + WxmpMsgSendRecordEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, WxmpMsgSendRecordDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(WxmpMsgSendRecordDTO dto) { + WxmpMsgSendRecordEntity entity = ConvertUtils.sourceToTarget(dto, WxmpMsgSendRecordEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(WxmpMsgSendRecordDTO dto) { + WxmpMsgSendRecordEntity entity = ConvertUtils.sourceToTarget(dto, WxmpMsgSendRecordEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpResiUserSubscribeServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpResiUserSubscribeServiceImpl.java new file mode 100644 index 0000000000..2c317e037b --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpResiUserSubscribeServiceImpl.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.dao.WxmpResiUserSubscribeDao; +import com.epmet.dto.WxmpResiUserSubscribeDTO; +import com.epmet.entity.WxmpResiUserSubscribeEntity; +import com.epmet.redis.WxmpResiUserSubscribeRedis; +import com.epmet.service.WxmpResiUserSubscribeService; +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 java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 居民端用户订阅模板消息次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Service +public class WxmpResiUserSubscribeServiceImpl extends BaseServiceImpl implements WxmpResiUserSubscribeService { + + @Autowired + private WxmpResiUserSubscribeRedis wxmpResiUserSubscribeRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, WxmpResiUserSubscribeDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, WxmpResiUserSubscribeDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public WxmpResiUserSubscribeDTO get(String id) { + WxmpResiUserSubscribeEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, WxmpResiUserSubscribeDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(WxmpResiUserSubscribeDTO dto) { + WxmpResiUserSubscribeEntity entity = ConvertUtils.sourceToTarget(dto, WxmpResiUserSubscribeEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(WxmpResiUserSubscribeDTO dto) { + WxmpResiUserSubscribeEntity entity = ConvertUtils.sourceToTarget(dto, WxmpResiUserSubscribeEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpTemplateMsgSubscribeStatusServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpTemplateMsgSubscribeStatusServiceImpl.java new file mode 100644 index 0000000000..5ea81bdd63 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpTemplateMsgSubscribeStatusServiceImpl.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.dao.WxmpTemplateMsgSubscribeStatusDao; +import com.epmet.dto.WxmpTemplateMsgSubscribeStatusDTO; +import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity; +import com.epmet.redis.WxmpTemplateMsgSubscribeStatusRedis; +import com.epmet.service.WxmpTemplateMsgSubscribeStatusService; +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 java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Service +public class WxmpTemplateMsgSubscribeStatusServiceImpl extends BaseServiceImpl implements WxmpTemplateMsgSubscribeStatusService { + + @Autowired + private WxmpTemplateMsgSubscribeStatusRedis wxmpTemplateMsgSubscribeStatusRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, WxmpTemplateMsgSubscribeStatusDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, WxmpTemplateMsgSubscribeStatusDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public WxmpTemplateMsgSubscribeStatusDTO get(String id) { + WxmpTemplateMsgSubscribeStatusEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, WxmpTemplateMsgSubscribeStatusDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(WxmpTemplateMsgSubscribeStatusDTO dto) { + WxmpTemplateMsgSubscribeStatusEntity entity = ConvertUtils.sourceToTarget(dto, WxmpTemplateMsgSubscribeStatusEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(WxmpTemplateMsgSubscribeStatusDTO dto) { + WxmpTemplateMsgSubscribeStatusEntity entity = ConvertUtils.sourceToTarget(dto, WxmpTemplateMsgSubscribeStatusEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpUserSubscribeRecordServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpUserSubscribeRecordServiceImpl.java new file mode 100644 index 0000000000..9326681fe4 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpUserSubscribeRecordServiceImpl.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.dao.WxmpUserSubscribeRecordDao; +import com.epmet.dto.WxmpUserSubscribeRecordDTO; +import com.epmet.entity.WxmpUserSubscribeRecordEntity; +import com.epmet.redis.WxmpUserSubscribeRecordRedis; +import com.epmet.service.WxmpUserSubscribeRecordService; +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 java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 用户触发订阅的行为记录表(同时记录微信授权页每次勾选的状态) + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Service +public class WxmpUserSubscribeRecordServiceImpl extends BaseServiceImpl implements WxmpUserSubscribeRecordService { + + @Autowired + private WxmpUserSubscribeRecordRedis wxmpUserSubscribeRecordRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, WxmpUserSubscribeRecordDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, WxmpUserSubscribeRecordDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public WxmpUserSubscribeRecordDTO get(String id) { + WxmpUserSubscribeRecordEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, WxmpUserSubscribeRecordDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(WxmpUserSubscribeRecordDTO dto) { + WxmpUserSubscribeRecordEntity entity = ConvertUtils.sourceToTarget(dto, WxmpUserSubscribeRecordEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(WxmpUserSubscribeRecordDTO dto) { + WxmpUserSubscribeRecordEntity entity = ConvertUtils.sourceToTarget(dto, WxmpUserSubscribeRecordEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpWorkUserSubscribeServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpWorkUserSubscribeServiceImpl.java new file mode 100644 index 0000000000..93a3ad4147 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpWorkUserSubscribeServiceImpl.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + *

+ * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.epmet.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.utils.ConvertUtils; +import com.epmet.commons.tools.constant.FieldConstant; +import com.epmet.dao.WxmpWorkUserSubscribeDao; +import com.epmet.dto.WxmpWorkUserSubscribeDTO; +import com.epmet.entity.WxmpWorkUserSubscribeEntity; +import com.epmet.redis.WxmpWorkUserSubscribeRedis; +import com.epmet.service.WxmpWorkUserSubscribeService; +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 java.util.Arrays; +import java.util.List; +import java.util.Map; + +/** + * 工作端用户订阅模板消息有效次数记录表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-10-21 + */ +@Service +public class WxmpWorkUserSubscribeServiceImpl extends BaseServiceImpl implements WxmpWorkUserSubscribeService { + + @Autowired + private WxmpWorkUserSubscribeRedis wxmpWorkUserSubscribeRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, WxmpWorkUserSubscribeDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, WxmpWorkUserSubscribeDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public WxmpWorkUserSubscribeDTO get(String id) { + WxmpWorkUserSubscribeEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, WxmpWorkUserSubscribeDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(WxmpWorkUserSubscribeDTO dto) { + WxmpWorkUserSubscribeEntity entity = ConvertUtils.sourceToTarget(dto, WxmpWorkUserSubscribeEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(WxmpWorkUserSubscribeDTO dto) { + WxmpWorkUserSubscribeEntity entity = ConvertUtils.sourceToTarget(dto, WxmpWorkUserSubscribeEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpMsgSendRecordDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpMsgSendRecordDao.xml new file mode 100644 index 0000000000..545ee0dba3 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpMsgSendRecordDao.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml new file mode 100644 index 0000000000..83ba28d09d --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml new file mode 100644 index 0000000000..b226ddb20a --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpUserSubscribeRecordDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpUserSubscribeRecordDao.xml new file mode 100644 index 0000000000..042c8f94a0 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpUserSubscribeRecordDao.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml new file mode 100644 index 0000000000..608e32e0c5 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file From 20e06e71769ac8aabc81159a32de693e1d6d32fd Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 21 Oct 2020 16:51:38 +0800 Subject: [PATCH 03/42] =?UTF-8?q?=E6=B6=88=E6=81=AF=E5=8F=91=E9=80=81?= =?UTF-8?q?=E7=BB=93=E6=9E=9C=E8=A1=A8=E6=96=B0=E5=A2=9E=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java | 10 ++++++++++ .../java/com/epmet/entity/WxmpMsgSendRecordEntity.java | 10 ++++++++++ .../java/com/epmet/excel/WxmpMsgSendRecordExcel.java | 6 ++++++ 3 files changed, 26 insertions(+) diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java index 875e687b63..20d23aab47 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpMsgSendRecordDTO.java @@ -83,6 +83,16 @@ public class WxmpMsgSendRecordDTO implements Serializable { */ private Date messageTitme; + /** + * 发送结果(成功:success 失败:error) + */ + private String result; + + /** + * 发送失败的原因,成功可以不记录 + */ + private String reason; + /** * 删除标识 */ diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpMsgSendRecordEntity.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpMsgSendRecordEntity.java index e802097c68..d7242fb4b8 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpMsgSendRecordEntity.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/entity/WxmpMsgSendRecordEntity.java @@ -83,4 +83,14 @@ public class WxmpMsgSendRecordEntity extends BaseEpmetEntity { */ private Date messageTitme; + /** + * 发送结果(成功:success 失败:error) + */ + private String result; + + /** + * 发送失败的原因,成功可以不记录 + */ + private String reason; + } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java index 10d4a9c837..cbe9ad4435 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java @@ -61,6 +61,12 @@ public class WxmpMsgSendRecordExcel { @Excel(name = "消息时间 消息时间") private Date messageTitme; + @Excel(name = "发送结果") + private String result; + + @Excel(name = "发送失败的原因") + private String reason; + @Excel(name = "删除标识") private Integer delFlag; From 8f1161ed193f6e799cca785843329739925ae197 Mon Sep 17 00:00:00 2001 From: wxz Date: Wed, 21 Oct 2020 18:05:20 +0800 Subject: [PATCH 04/42] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=E4=BF=9D?= =?UTF-8?q?=E5=AD=98=E7=B3=BB=E7=BB=9F=E6=8E=88=E6=9D=83=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E7=9A=84=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/bootstrap.yml | 1 + .../epmet/dto/form/WxMsgAuthInfoFormDTO.java | 24 +++++++++++ .../dto/result/WxMsgAuthInfoResultDTO.java | 41 +++++++++++++++++++ .../controller/WxmpMessageController.java | 30 +++++++++++++- .../WxmpTemplateMsgSubscribeStatusDao.java | 11 ++++- .../com/epmet/service/WxmpMessageService.java | 1 + .../service/impl/WxmpMessageServiceImpl.java | 30 ++++++++++++++ .../WxmpTemplateMsgSubscribeStatusDao.xml | 41 ++++++++++++++++++- 8 files changed, 175 insertions(+), 4 deletions(-) create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxMsgAuthInfoFormDTO.java create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/result/WxMsgAuthInfoResultDTO.java diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index b6e2b73907..d78c96140e 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -61,6 +61,7 @@ spring: - Path=${server.servlet.context-path}/message/** filters: - StripPrefix=1 + - CpAuth=true #工作流服务 - id: epmet-activiti-server uri: @gateway.routes.epmet-activiti-server.uri@ diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxMsgAuthInfoFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxMsgAuthInfoFormDTO.java new file mode 100644 index 0000000000..11d70e506d --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxMsgAuthInfoFormDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +@Data +public class WxMsgAuthInfoFormDTO { + + public interface SaveSysAuthInfoGroup {} + + @NotBlank(message = "客户id不能为空", groups = { SaveSysAuthInfoGroup.class }) + private String customerId; + + @NotBlank(message = "客户端类型不能为空", groups = { SaveSysAuthInfoGroup.class }) + private String clientType; + + @NotBlank(message = "是否总是字段不能为空", groups = { SaveSysAuthInfoGroup.class }) + private String alwaysVisit; + + @NotBlank(message = "是否去订阅字段不能为空", groups = { SaveSysAuthInfoGroup.class }) + private String subscribeStatus; + +} diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/result/WxMsgAuthInfoResultDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/result/WxMsgAuthInfoResultDTO.java new file mode 100644 index 0000000000..13988b5411 --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/result/WxMsgAuthInfoResultDTO.java @@ -0,0 +1,41 @@ +package com.epmet.dto.result; + +import lombok.Data; + +@Data +public class WxMsgAuthInfoResultDTO { + /** + * 客户Id 客户Id + */ + private String customerId; + + /** + * 所属端类型 居民端:resi 工作端:work + */ + private String clientType; + + /** + * 用户Id 用户Id + */ + private String userId; + + /** + * 是否总是访问 是:yes 否:no + */ + private String alwaysVisit; + + /** + * 订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String subscribeStatus; + + /** + * wx是否总是访问 是:yes 否:no + */ + private String wxAlwaysVisit; + + /** + * wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + */ + private String wxSubscribeStatus; +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java index 294f0f5d36..57441016b3 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java @@ -17,10 +17,13 @@ package com.epmet.controller; +import com.epmet.commons.tools.security.user.LoginUserUtil; +import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dto.form.WxMsgAuthInfoFormDTO; import com.epmet.service.WxmpMessageService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; /** @@ -36,4 +39,27 @@ public class WxmpMessageController { @Autowired private WxmpMessageService wxmpMessageService; + @Autowired + private LoginUserUtil loginUserUtil; + + /** + * @Description 保存系统自身的弹框授权信息 + * @return com.epmet.commons.tools.utils.Result + * @author wxz + * @date 2020.10.21 17:32 + */ + @PostMapping("save-sys-authorizeinfo") + public Result saveSysAuthorizationInfo(@RequestBody WxMsgAuthInfoFormDTO form) { + ValidatorUtils.validateEntity(form, WxMsgAuthInfoFormDTO.SaveSysAuthInfoGroup.class); + + String alwaysVisit = form.getAlwaysVisit(); + String clientType = form.getClientType(); + String customerId = form.getCustomerId(); + String subscribeStatus = form.getSubscribeStatus(); + + wxmpMessageService.saveSysAuthorizeInfo(customerId, clientType, alwaysVisit, subscribeStatus, loginUserUtil.getLoginUserId()); + + return new Result(); + } + } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java index 9f99225746..df2764868c 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpTemplateMsgSubscribeStatusDao.java @@ -18,8 +18,10 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.WxMsgAuthInfoResultDTO; import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 用户模板消息订阅授权状态表(记录我们自己和微信的授权页用户勾选的状态) @@ -29,5 +31,12 @@ import org.apache.ibatis.annotations.Mapper; */ @Mapper public interface WxmpTemplateMsgSubscribeStatusDao extends BaseDao { - + + WxMsgAuthInfoResultDTO getUserSubscribeStatusDTO(@Param("userId") String userId, + @Param("customerId") String customerId, + @Param("clientType") String clientType); + + WxmpTemplateMsgSubscribeStatusEntity getUserSubscribeStatusEntity(@Param("userId") String userId, + @Param("customerId") String customerId, + @Param("clientType") String clientType); } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java index ab96dd6f0d..25d631e1c9 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java @@ -25,4 +25,5 @@ package com.epmet.service; */ public interface WxmpMessageService { + void saveSysAuthorizeInfo(String customerId, String clientType, String alwaysVisit, String subscribeStatus, String userId); } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index 75b784b5e6..7192a0e1bf 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -17,9 +17,12 @@ package com.epmet.service.impl; +import com.epmet.dao.WxmpTemplateMsgSubscribeStatusDao; +import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity; import com.epmet.service.WxmpMessageService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** @@ -32,4 +35,31 @@ import org.springframework.stereotype.Service; public class WxmpMessageServiceImpl implements WxmpMessageService { private Logger logger = LoggerFactory.getLogger(getClass()); + @Autowired + private WxmpTemplateMsgSubscribeStatusDao msgSubscribeStatusDao; + + /** + * @Description 保存系统授权信息 + * @return void + * @author wxz + * @date 2020.10.21 17:29 + */ + @Override + public void saveSysAuthorizeInfo(String customerId, String clientType, String alwaysVisit, String subscribeStatus, String userId) { + WxmpTemplateMsgSubscribeStatusEntity userSubscribeStatusEntity = msgSubscribeStatusDao.getUserSubscribeStatusEntity(userId, customerId, clientType); + if (userSubscribeStatusEntity != null) { + userSubscribeStatusEntity.setAlwaysVisit(alwaysVisit); + userSubscribeStatusEntity.setSubscribeStatus(subscribeStatus); + msgSubscribeStatusDao.updateById(userSubscribeStatusEntity); + return; + } + + userSubscribeStatusEntity = new WxmpTemplateMsgSubscribeStatusEntity(); + userSubscribeStatusEntity.setCustomerId(customerId); + userSubscribeStatusEntity.setClientType(clientType); + userSubscribeStatusEntity.setAlwaysVisit(alwaysVisit); + userSubscribeStatusEntity.setSubscribeStatus(subscribeStatus); + userSubscribeStatusEntity.setUserId(userId); + msgSubscribeStatusDao.insert(userSubscribeStatusEntity); + } } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml index b226ddb20a..d1fde2360a 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml @@ -3,6 +3,45 @@ + - + \ No newline at end of file From 51161d3fb116940671e87ebba42320dd0f9e27c1 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Thu, 22 Oct 2020 11:12:32 +0800 Subject: [PATCH 05/42] =?UTF-8?q?user=E6=9C=8D=E5=8A=A1=E6=8F=90=E4=BE=9B?= =?UTF-8?q?=E4=B8=A4=E4=B8=AA=E5=AF=B9=E5=A4=96=E6=8E=A5=E5=8F=A3=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E7=94=A8=E6=88=B7=E5=9F=BA=E7=A1=80=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/form/StaffBasicInfoFormDTO.java | 23 +++++++++++ .../epmet/dto/form/UserBasicInfoFormDTO.java | 22 +++++++++++ .../com/epmet/dto/result/StaffBasicInfo.java | 39 +++++++++++++++++++ .../com/epmet/dto/result/UserBasicInfo.java | 24 ++++++++++++ .../epmet/feign/EpmetUserOpenFeignClient.java | 14 +++++++ .../EpmetUserOpenFeignClientFallback.java | 10 +++++ .../StaffAgencyVisitedController.java | 11 ++++++ .../com/epmet/controller/UserController.java | 10 +++++ .../com/epmet/dao/StaffAgencyVisitedDao.java | 8 +++- .../src/main/java/com/epmet/dao/UserDao.java | 8 ++++ .../service/StaffAgencyVisitedService.java | 8 +++- .../java/com/epmet/service/UserService.java | 11 ++++-- .../impl/StaffAgencyVisitedServiceImpl.java | 10 +++++ .../epmet/service/impl/UserServiceImpl.java | 9 +++++ .../mapper/StaffAgencyVisitedDao.xml | 22 +++++++++++ .../src/main/resources/mapper/UserDao.xml | 15 +++++++ 16 files changed, 238 insertions(+), 6 deletions(-) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/StaffBasicInfoFormDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/UserBasicInfoFormDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/StaffBasicInfo.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserBasicInfo.java diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/StaffBasicInfoFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/StaffBasicInfoFormDTO.java new file mode 100644 index 0000000000..5548431919 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/StaffBasicInfoFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Author sun + * @Description 工作端-查询用户基础信息-接口入参 + **/ +@Data +public class StaffBasicInfoFormDTO implements Serializable{ + private static final long serialVersionUID = -7994579456530273809L; + /** + * 用户Id + * */ + @NotBlank(message = "用户Id不能为空" , groups = { StaffBasicInfoGroup.class }) + private String staffId; + public interface StaffBasicInfoGroup {} + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/UserBasicInfoFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/UserBasicInfoFormDTO.java new file mode 100644 index 0000000000..cfe7f721c8 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/UserBasicInfoFormDTO.java @@ -0,0 +1,22 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Author sun + * @Description 居民端-查询用户基础信息-接口入参 + **/ +@Data +public class UserBasicInfoFormDTO implements Serializable{ + private static final long serialVersionUID = -7994579456530273809L; + /** + * 用户Id + * */ + @NotBlank(message = "用户Id不能为空" , groups = { UserBasicInfoGroup.class }) + private String userId; + public interface UserBasicInfoGroup {} +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/StaffBasicInfo.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/StaffBasicInfo.java new file mode 100644 index 0000000000..89e3e3f5ca --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/StaffBasicInfo.java @@ -0,0 +1,39 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author sun + * @Description 工作端-查询用户基础信息-接口返参 + **/ +@Data +public class StaffBasicInfo implements Serializable { + + /** + * 客户Id + */ + private String customerId; + + /** + * 用户Id + */ + private String staffId; + + /** + * wx_open_id + */ + private String openId; + + /** + * 是否禁用(未禁用enable,已禁用disabled) + */ + private String enableFlag; + + /** + * 手机号 + */ + private String mobile; + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserBasicInfo.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserBasicInfo.java new file mode 100644 index 0000000000..955848ee20 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/UserBasicInfo.java @@ -0,0 +1,24 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author sun + * @Description 居民端-查询用户基础信息-接口返参 + **/ +@Data +public class UserBasicInfo implements Serializable { + + /** + * 用户Id + */ + private String userId; + + /** + * wx_open_id + */ + private String openId; + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java index c5a50bc818..5f7c301ad0 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java @@ -313,4 +313,18 @@ public interface EpmetUserOpenFeignClient { **/ @PostMapping("epmetuser/role/getuserrolekeylist") Result> getUserRoleKeyList(@RequestBody GetRoleKeyListFormDTO dto); + + /** + * @Author sun + * @Description 居民端-查询用户基础信息 + **/ + @PostMapping(value = "epmetuser/user/getuserbasicinfo") + Result getUserBasicInfo(@RequestBody UserBasicInfoFormDTO formDTO); + + /** + * @Author sun + * @Description 工作端-查询用户基础信息 + **/ + @PostMapping(value = "epmetuser/staffagencyvisited/getstaffbasicinfo") + Result getStaffBasicInfo(@RequestBody StaffBasicInfoFormDTO formDTO); } 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 2a6db644e7..64985eab15 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 @@ -210,4 +210,14 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien public Result> getUserRoleKeyList(GetRoleKeyListFormDTO dto) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getUserRoleKeyList", dto); } + + @Override + public Result getUserBasicInfo(UserBasicInfoFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getUserBasicInfo", formDTO); + } + + @Override + public Result getStaffBasicInfo(StaffBasicInfoFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getStaffBasicInfo", formDTO); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffAgencyVisitedController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffAgencyVisitedController.java index 71ad8f1962..ce9b6bb4d8 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffAgencyVisitedController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffAgencyVisitedController.java @@ -18,8 +18,11 @@ package com.epmet.controller; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.StaffBasicInfoFormDTO; import com.epmet.dto.form.StaffLoginAgencyRecordFormDTO; +import com.epmet.dto.result.StaffBasicInfo; import com.epmet.dto.result.StaffLatestAgencyResultDTO; +import com.epmet.dto.result.UserBasicInfo; import com.epmet.service.StaffAgencyVisitedService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -62,5 +65,13 @@ public class StaffAgencyVisitedController { return staffAgencyVisitedService.saveStaffLoginRecord(formDTO); } + /** + * @Author sun + * @Description 工作端-查询用户基础信息 + **/ + @PostMapping(value = "getstaffbasicinfo") + public Result getStaffBasicInfo(@RequestBody StaffBasicInfoFormDTO formDTO){ + return new Result().ok(staffAgencyVisitedService.getStaffBasicInfo(formDTO)); + } } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java index d607eba501..2d800dcdcb 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java @@ -143,4 +143,14 @@ public class UserController { ValidatorUtils.validateEntity(wxUserInfoFormDTO); return userService.updateWxUserInfo(wxUserInfoFormDTO); } + + /** + * @Author sun + * @Description 居民端-查询用户基础信息 + **/ + @PostMapping("getuserbasicinfo") + public Result getUserBasicInfo(@RequestBody UserBasicInfoFormDTO formDTO){ + return new Result().ok(userService.getUserBasicInfo(formDTO)); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffAgencyVisitedDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffAgencyVisitedDao.java index 4358e4910e..99d95420ae 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffAgencyVisitedDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffAgencyVisitedDao.java @@ -18,6 +18,8 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.form.StaffBasicInfoFormDTO; +import com.epmet.dto.result.StaffBasicInfo; import com.epmet.dto.result.StaffLatestAgencyResultDTO; import com.epmet.entity.StaffAgencyVisitedEntity; import org.apache.ibatis.annotations.Mapper; @@ -39,5 +41,9 @@ public interface StaffAgencyVisitedDao extends BaseDao **/ StaffLatestAgencyResultDTO selectLatestStaffWechatLoginRecord(String openId); - + /** + * @Author sun + * @Description 工作端-查询用户基础信息 + **/ + StaffBasicInfo selectStaffBasicInfo(StaffBasicInfoFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserDao.java index 64f5d8fd8b..7dc2a768d8 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/UserDao.java @@ -2,9 +2,11 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.form.CreatedTimeByUserIdFormDTO; +import com.epmet.dto.form.UserBasicInfoFormDTO; import com.epmet.dto.result.CreatedTimeByUserIdResultDTO; import com.epmet.dto.result.MyselfMsgResultDTO; import com.epmet.dto.result.PasswordLoginUserInfoResultDTO; +import com.epmet.dto.result.UserBasicInfo; import com.epmet.entity.UserEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -44,4 +46,10 @@ public interface UserDao extends BaseDao { * @date 2020.05.22 19:19 **/ MyselfMsgResultDTO getMyselfMsg(@Param("userId")String userId); + + /** + * @Author sun + * @Description 居民端-查询用户基础信息 + **/ + UserBasicInfo selectUserBasicInfo(UserBasicInfoFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffAgencyVisitedService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffAgencyVisitedService.java index 9d584aa2e6..2789052963 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffAgencyVisitedService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffAgencyVisitedService.java @@ -21,7 +21,9 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.StaffAgencyVisitedDTO; +import com.epmet.dto.form.StaffBasicInfoFormDTO; import com.epmet.dto.form.StaffLoginAgencyRecordFormDTO; +import com.epmet.dto.result.StaffBasicInfo; import com.epmet.dto.result.StaffLatestAgencyResultDTO; import com.epmet.entity.StaffAgencyVisitedEntity; @@ -114,5 +116,9 @@ public interface StaffAgencyVisitedService extends BaseService { * @Description 小程序微信用户登陆,新增或更新用户信息 **/ UserDTO saveWxUser(WxUserFormDTO formDTO); + + /** + * @Author sun + * @Description 居民端-查询用户基础信息 + **/ + UserBasicInfo getUserBasicInfo(UserBasicInfoFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffAgencyVisitedServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffAgencyVisitedServiceImpl.java index 8118bbe6f6..a8ea0e718e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffAgencyVisitedServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffAgencyVisitedServiceImpl.java @@ -26,7 +26,9 @@ import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dao.StaffAgencyVisitedDao; import com.epmet.dto.StaffAgencyVisitedDTO; +import com.epmet.dto.form.StaffBasicInfoFormDTO; import com.epmet.dto.form.StaffLoginAgencyRecordFormDTO; +import com.epmet.dto.result.StaffBasicInfo; import com.epmet.dto.result.StaffLatestAgencyResultDTO; import com.epmet.entity.StaffAgencyVisitedEntity; import com.epmet.feign.OperCrmFeignClient; @@ -127,6 +129,14 @@ public class StaffAgencyVisitedServiceImpl extends BaseServiceImpl implem return resultDTO; } + /** + * @Author sun + * @Description 居民端-查询用户基础信息 + **/ + @Override + public UserBasicInfo getUserBasicInfo(UserBasicInfoFormDTO formDTO) { + return baseDao.selectUserBasicInfo(formDTO); + } + } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffAgencyVisitedDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffAgencyVisitedDao.xml index faaa5757e9..fde53be79d 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffAgencyVisitedDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffAgencyVisitedDao.xml @@ -36,4 +36,26 @@ LIMIT 1 + + \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/UserDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/UserDao.xml index 6822515ed6..c1f8791e16 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/UserDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/UserDao.xml @@ -52,4 +52,19 @@ AND user.FROM_APP = 'resi' + + From a70665d97fd2317c20daebaa89b006e6368de969 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Thu, 22 Oct 2020 13:37:41 +0800 Subject: [PATCH 06/42] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/controller/StaffAgencyVisitedController.java | 3 +++ .../src/main/java/com/epmet/controller/UserController.java | 1 + .../src/main/resources/mapper/StaffAgencyVisitedDao.xml | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffAgencyVisitedController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffAgencyVisitedController.java index ce9b6bb4d8..40f45a45ba 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffAgencyVisitedController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffAgencyVisitedController.java @@ -18,8 +18,10 @@ package com.epmet.controller; import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dto.form.StaffBasicInfoFormDTO; import com.epmet.dto.form.StaffLoginAgencyRecordFormDTO; +import com.epmet.dto.form.WxMsgAuthInfoFormDTO; import com.epmet.dto.result.StaffBasicInfo; import com.epmet.dto.result.StaffLatestAgencyResultDTO; import com.epmet.dto.result.UserBasicInfo; @@ -71,6 +73,7 @@ public class StaffAgencyVisitedController { **/ @PostMapping(value = "getstaffbasicinfo") public Result getStaffBasicInfo(@RequestBody StaffBasicInfoFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO, StaffBasicInfoFormDTO.StaffBasicInfoGroup.class); return new Result().ok(staffAgencyVisitedService.getStaffBasicInfo(formDTO)); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java index 2d800dcdcb..a524f9f0c9 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/UserController.java @@ -150,6 +150,7 @@ public class UserController { **/ @PostMapping("getuserbasicinfo") public Result getUserBasicInfo(@RequestBody UserBasicInfoFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO, UserBasicInfoFormDTO.UserBasicInfoGroup.class); return new Result().ok(userService.getUserBasicInfo(formDTO)); } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffAgencyVisitedDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffAgencyVisitedDao.xml index fde53be79d..d287af8fcd 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffAgencyVisitedDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffAgencyVisitedDao.xml @@ -39,7 +39,7 @@ + select + `count` + from WxmpResiUserSubscribe + where + del_flag =0 + and customer_id = #{customerId} + and template_id = #{templateId} + and wx_open_id = #{openId} + and wx_subscribe_status = 'subscribe' + + + update WxmpResiUserSubscribe + set count = if(count < 1, 0, count - ${num} ) + where + del_flag =0 + and customer_id = #{customerId} + and template_id = #{templateId} + and wx_open_id = #{openId} + and wx_subscribe_status = 'subscribe' + - \ No newline at end of file + + update WxmpResiUserSubscribe + set count = 0, + wx_subscribe_status = 'unsubscribe' + where + del_flag =0 + and customer_id = #{customerId} + and template_id = #{templateId} + and wx_open_id = #{openId} + + + diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml index 608e32e0c5..6f368f8a6e 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml @@ -3,6 +3,35 @@ + - - \ No newline at end of file + + update WxmpWorkUserSubscribe + set count = if(count < 1, 0, count - ${num} ) + where + del_flag =0 + and customer_id = #{customerId} + and template_id = #{templateId} + and wx_open_id = #{openId} + and wx_subscribe_status = 'subscribe' + + + update WxmpWorkUserSubscribe + set count = 0, + wx_subscribe_status = 'unsubscribe' + where + del_flag =0 + and customer_id = #{customerId} + and template_id = #{templateId} + and wx_open_id = #{openId} + + From e46c6e41bcc1f6d3d1736b3ceb7118bf941b41b4 Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Thu, 22 Oct 2020 15:02:10 +0800 Subject: [PATCH 08/42] =?UTF-8?q?=E8=AE=A2=E9=98=85=E6=B6=88=E6=81=AF=20?= =?UTF-8?q?=E5=88=9D=E7=89=882?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/form/WxSubscribeMessageFormDTO.java | 6 ++---- epmet-module/epmet-message/epmet-message-server/pom.xml | 5 +++++ .../java/com/epmet/constant/WxmpMessageConstant.java | 2 +- .../java/com/epmet/controller/UserMessageController.java | 2 +- .../com/epmet/service/impl/WxmpMessageServiceImpl.java | 9 ++++++++- .../main/resources/mapper/WxmpResiUserSubscribeDao.xml | 6 +++--- .../main/resources/mapper/WxmpWorkUserSubscribeDao.xml | 6 +++--- 7 files changed, 23 insertions(+), 13 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java index 26f718715f..45ebde28b1 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java @@ -51,10 +51,8 @@ public class WxSubscribeMessageFormDTO implements Serializable { /** * 消息时间 */ - @NotNull(message = "消息时间不能为空") - @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") - @JSONField(format = "yyyy-MM-dd HH:mm:ss") - private Date messageTime; + @NotBlank(message = "消息时间不能为空") + private String messageTime; /** * 所需下发的订阅模板id diff --git a/epmet-module/epmet-message/epmet-message-server/pom.xml b/epmet-module/epmet-message/epmet-message-server/pom.xml index 1322ad2243..5b62284845 100644 --- a/epmet-module/epmet-message/epmet-message-server/pom.xml +++ b/epmet-module/epmet-message/epmet-message-server/pom.xml @@ -96,6 +96,11 @@ flyway-core + + com.epmet + epmet-user-client + 2.0.0 + diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java index ea44ee4861..ba61eea035 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java @@ -18,7 +18,7 @@ public interface WxmpMessageConstant { int USER_REFUSED = 43101; - String AUTHORIZER_ACCESS_TOKEN = "authorizer_access_token"; + String AUTHORIZER_ACCESS_TOKEN = "authorizerRefreshToken"; String RESI = "resi"; diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/UserMessageController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/UserMessageController.java index 82cc047ea8..a176b3f2ca 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/UserMessageController.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/UserMessageController.java @@ -162,4 +162,4 @@ public class UserMessageController { List list = userMessageService.queryStaffMessage(formDTO); return new Result>().ok(list); } -} \ No newline at end of file +} diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index 009c6d7f5d..c32963ea07 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -44,6 +44,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -264,7 +267,11 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { wxmpMsgSendRecordEntity.setBehaviorType(msg.getBehaviorType()); wxmpMsgSendRecordEntity.setTitle("您有一条" + msg.getBehaviorType()); wxmpMsgSendRecordEntity.setMessageContent(msg.getMessageContent()); - wxmpMsgSendRecordEntity.setMessageTime(msg.getMessageTime()); + try { + wxmpMsgSendRecordEntity.setMessageTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(msg.getMessageTime())); + } catch (ParseException e) { + wxmpMsgSendRecordEntity.setMessageTime(new Date()); + } wxmpMsgSendRecordEntity.setResult(status); return wxmpMsgSendRecordEntity; } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml index f47cbdf0a0..4a07a9475b 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml @@ -6,7 +6,7 @@ - update WxmpResiUserSubscribe + update Wxmp_Resi_User_Subscribe set count = if(count < 1, 0, count - ${num} ) where del_flag =0 @@ -27,7 +27,7 @@ - update WxmpResiUserSubscribe + update Wxmp_Resi_User_Subscribe set count = 0, wx_subscribe_status = 'unsubscribe' where diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml index 6f368f8a6e..4673179dee 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml @@ -6,7 +6,7 @@ - update WxmpWorkUserSubscribe + update Wxmp_Work_User_Subscribe set count = if(count < 1, 0, count - ${num} ) where del_flag =0 @@ -25,7 +25,7 @@ and wx_subscribe_status = 'subscribe' - update WxmpWorkUserSubscribe + update Wxmp_Work_User_Subscribe set count = 0, wx_subscribe_status = 'unsubscribe' where From 16b2d07c8ca311e185c4a51e6f3a96fb0caf31a8 Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Thu, 22 Oct 2020 15:59:25 +0800 Subject: [PATCH 09/42] =?UTF-8?q?=E5=8F=91=E9=80=81=E8=AE=A2=E9=98=85?= =?UTF-8?q?=E6=B6=88=E6=81=AF=203?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/constant/WxmpMessageConstant.java | 2 +- .../java/com/epmet/dao/WxmpResiUserSubscribeDao.java | 1 - .../epmet/service/impl/WxmpMessageServiceImpl.java | 12 ++++++------ .../resources/mapper/WxmpResiUserSubscribeDao.xml | 12 ++++++------ 4 files changed, 13 insertions(+), 14 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java index ba61eea035..a8f8f2ea7e 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java @@ -18,7 +18,7 @@ public interface WxmpMessageConstant { int USER_REFUSED = 43101; - String AUTHORIZER_ACCESS_TOKEN = "authorizerRefreshToken"; + String AUTHORIZER_ACCESS_TOKEN = "authorizerAccessToken"; String RESI = "resi"; diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java index d9ae74e313..d2ec0c8443 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java @@ -18,7 +18,6 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; -import com.epmet.dto.WxmpResiUserSubscribeDTO; import com.epmet.entity.WxmpResiUserSubscribeEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index c32963ea07..328cdd9aeb 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -161,9 +161,9 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { //判断用户是否有次数 Integer count = null; if (WxmpMessageConstant.RESI.equals(clientType)) { - count = wxmpResiUserSubscribeDao.getResiSubscribeInfo(openId, customerId, templateId); + count = wxmpResiUserSubscribeDao.getResiSubscribeInfo(openId, templateId, customerId); } else if (WxmpMessageConstant.WORK.equals(clientType)) { - count = wxmpWorkUserSubscribeDao.getWorkSubscribeInfo(openId, customerId, templateId); + count = wxmpWorkUserSubscribeDao.getWorkSubscribeInfo(openId, templateId, customerId); } if (count == null) { //用户未订阅 @@ -203,9 +203,9 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { //订阅条数-1 int decrease = 0; if (WxmpMessageConstant.RESI.equals(clientType)) { - decrease = wxmpResiUserSubscribeDao.decreaseResiSubscribeCount(openId, customerId, templateId, 1); + decrease = wxmpResiUserSubscribeDao.decreaseResiSubscribeCount(openId, templateId, customerId, 1); } else if (WxmpMessageConstant.WORK.equals(clientType)) { - decrease = wxmpWorkUserSubscribeDao.decreaseWorkSubscribeCount(openId, customerId, templateId, 1); + decrease = wxmpWorkUserSubscribeDao.decreaseWorkSubscribeCount(openId, templateId, customerId, 1); } if (decrease == 0) { logger.error("消息{}发送成功但订阅条数-1失败", JSON.toJSONString(msg)); @@ -221,9 +221,9 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { if (errcode.equals(WxmpMessageConstant.USER_REFUSED)) { int clear = 0; if (WxmpMessageConstant.RESI.equals(clientType)) { - clear = wxmpResiUserSubscribeDao.clearResiSubscribeCount(openId, customerId, templateId); + clear = wxmpResiUserSubscribeDao.clearResiSubscribeCount(openId, templateId, customerId); } else if (WxmpMessageConstant.WORK.equals(clientType)) { - clear = wxmpWorkUserSubscribeDao.clearWorkSubscribeCount(openId, customerId, templateId); + clear = wxmpWorkUserSubscribeDao.clearWorkSubscribeCount(openId, templateId, customerId); } if (clear == 0) { logger.error("消息{}发送失败且清空订阅条数失败", JSON.toJSONString(msg)); diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml index 4a07a9475b..2b97a22eec 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml @@ -3,12 +3,12 @@ - select - `count` + count from Wxmp_Resi_User_Subscribe where - del_flag =0 + del_flag = 0 and customer_id = #{customerId} and template_id = #{templateId} and wx_open_id = #{openId} @@ -17,9 +17,9 @@ update Wxmp_Resi_User_Subscribe - set count = if(count < 1, 0, count - ${num} ) + set count = if(count 1, 0, count - ${num} ) where - del_flag =0 + del_flag = 0 and customer_id = #{customerId} and template_id = #{templateId} and wx_open_id = #{openId} @@ -31,7 +31,7 @@ set count = 0, wx_subscribe_status = 'unsubscribe' where - del_flag =0 + del_flag = 0 and customer_id = #{customerId} and template_id = #{templateId} and wx_open_id = #{openId} From 1a89da20c94e106d469e42b90afd5c6bef86f7f9 Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Thu, 22 Oct 2020 16:08:51 +0800 Subject: [PATCH 10/42] =?UTF-8?q?=E5=8F=91=E9=80=81=E5=BE=AE=E4=BF=A1?= =?UTF-8?q?=E8=AE=A2=E9=98=85=204?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/controller/WxmpMessageController.java | 3 +++ .../com/epmet/service/impl/WxmpMessageServiceImpl.java | 9 ++++----- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java index 05887e3e54..23e854f9de 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java @@ -66,6 +66,9 @@ public class WxmpMessageController { } @PostMapping("sendwxsubscribemessage") public Result sendWxSubscribeMessage(@RequestBody List msgList){ + for (WxSubscribeMessageFormDTO wxSubscribeMessageFormDTO : msgList) { + ValidatorUtils.validateEntity(wxSubscribeMessageFormDTO); + } wxmpMessageService.sendWxSubscribeMessage(msgList); return new Result(); } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index 328cdd9aeb..377fad7f0a 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -117,8 +117,6 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { int succecssCount = 0; for (WxSubscribeMessageFormDTO msg : msgList) { try { - ValidatorUtils.validateEntity(msg); - String userId = msg.getUserId(); String clientType = msg.getClientType(); String customerId = msg.getCustomerId(); @@ -238,9 +236,9 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { } catch (Exception e) { String errMsg = e.getMessage(); //ValidateException错误信息为getMsg - if (StringUtils.isBlank(errMsg) && e instanceof ValidateException) { - errMsg = ((ValidateException) e).getMsg(); - } +// if (StringUtils.isBlank(errMsg) && e instanceof ValidateException) { +// errMsg = ((ValidateException) e).getMsg(); +// } if (e instanceof WxSubscribeException){ //存表 WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = initRecord(msg, ((WxSubscribeException) e).getOpenId(), WxmpMessageConstant.ERROR); @@ -257,6 +255,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { } logger.info("{}条消息中的{}条发送成功", msgList.size(), succecssCount); } + //初始化记录对象 private WxmpMsgSendRecordEntity initRecord(WxSubscribeMessageFormDTO msg, String openId, String status){ WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = new WxmpMsgSendRecordEntity(); wxmpMsgSendRecordEntity.setCustomerId(msg.getCustomerId()); From c7445174687034325a9bc7c03e942d32b3cb1be1 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Thu, 22 Oct 2020 16:33:17 +0800 Subject: [PATCH 11/42] 1 --- .../src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java index cbe9ad4435..a0d474ba82 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/excel/WxmpMsgSendRecordExcel.java @@ -59,7 +59,7 @@ public class WxmpMsgSendRecordExcel { private String messageContent; @Excel(name = "消息时间 消息时间") - private Date messageTitme; + private Date messageTime; @Excel(name = "发送结果") private String result; From c7e8cc5d5f8f965e75a90330a124d0362b82da73 Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Thu, 22 Oct 2020 16:42:56 +0800 Subject: [PATCH 12/42] =?UTF-8?q?=E5=8F=91=E9=80=81=E8=AE=A2=E9=98=855?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/WxSubscribeMessageFormDTO.java | 16 ---------------- .../epmet/constant/WxmpMessageConstant.java | 11 +++++++++-- .../service/impl/WxmpMessageServiceImpl.java | 19 +++++++++++++------ 3 files changed, 22 insertions(+), 24 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java index 45ebde28b1..9a55b17386 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java @@ -59,20 +59,4 @@ public class WxSubscribeMessageFormDTO implements Serializable { */ @NotBlank(message = "模板id不能为空") private String templateId; - - /** - * 点击模板卡片后的跳转页面,仅限本小程序内的页面。支持带参数,(示例index?foo=bar)。该字段不填则模板无跳转。 - */ - private String page; - - /** - * 跳转小程序类型:developer为开发版;trial为体验版;formal为正式版;默认为正式版 - */ - private String miniprogramState; - - /** - * 进入小程序查看”的语言类型,支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文),默认为zh_CN - */ - private String lang; - } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java index a8f8f2ea7e..992146e6ab 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java @@ -42,9 +42,16 @@ public interface WxmpMessageConstant { String MINIPROGRAM_STATE = "miniprogram_state"; - String LANG = "lang"; - String SUCCESS = "success"; String ERROR = "error"; + + String PAGE_RESI = ""; + + String PAGE_WORK = ""; + + String STATE_DEV = "developer"; + + String STATE_TEST = "trial"; + } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index 377fad7f0a..1a17894174 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -20,6 +20,7 @@ package com.epmet.service.impl; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.enums.EnvEnum; import com.epmet.commons.tools.exception.ValidateException; import com.epmet.commons.tools.utils.HttpClientManager; import com.epmet.commons.tools.validator.ValidatorUtils; @@ -182,16 +183,22 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent())); data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", msg.getMessageTime())); jsonObject.put(WxmpMessageConstant.DATA, data); + EnvEnum envEnum = EnvEnum.getCurrentEnv(); //选填项 - if (StringUtils.isNotBlank(msg.getPage())) { - jsonObject.put(WxmpMessageConstant.PAGE, msg.getPage()); + if (WxmpMessageConstant.RESI.equals(clientType)) { + jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_RESI); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_WORK); } - if (StringUtils.isNotBlank(msg.getMiniprogramState())) { - jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, msg.getMiniprogramState()); + //开发环境 + if ("dev".equals(envEnum.getCode())){ + jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_DEV); } - if (StringUtils.isNotBlank(msg.getLang())) { - jsonObject.put(WxmpMessageConstant.LANG, msg.getLang()); + //测试环境 + if ("test".equals(envEnum.getCode())){ + jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_TEST); } + String resultStr = HttpClientManager.getInstance().sendPostByJSON(WxmpMessageConstant.SEND_MESSAGE + accessToken, JSON.toJSONString(jsonObject)).getData(); Map resultMap = JSON.parseObject(resultStr, Map.class); Object errcode = resultMap.get(WxmpMessageConstant.ERR_CODE); From 1538f9af906a13acc6c4354d5e892f8c9dd0aada Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 09:34:38 +0800 Subject: [PATCH 13/42] =?UTF-8?q?=E7=BB=84=E7=BB=87=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E3=80=90=E6=99=BA=E6=85=A7=E7=A4=BE=E5=8C=BA?= =?UTF-8?q?=E3=80=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/CompartmentByBizTypeFormDTO.java | 31 +++++++++++++++++ .../result/AgencyDistributionResultDTO.java | 5 +++ .../controller/screen/AgencyController.java | 7 ++++ .../screen/ScreenCustomerAgencyDao.java | 3 ++ .../evaluationindex/screen/AgencyService.java | 3 ++ .../screen/impl/AgencyServiceImpl.java | 19 +++++++++++ .../mapper/screen/ScreenCustomerAgencyDao.xml | 33 +++++++++++++++++++ 7 files changed, 101 insertions(+) create mode 100644 epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/form/CompartmentByBizTypeFormDTO.java diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/form/CompartmentByBizTypeFormDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/form/CompartmentByBizTypeFormDTO.java new file mode 100644 index 0000000000..695255bccc --- /dev/null +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/form/CompartmentByBizTypeFormDTO.java @@ -0,0 +1,31 @@ +package com.epmet.evaluationindex.screen.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2020/10/22 + */ +@Data +public class CompartmentByBizTypeFormDTO implements Serializable { + + private static final long serialVersionUID = -3354778434424878413L; + + public interface CompartmentByBizType extends CustomerClientShowGroup {} + + /** + * 机关ID + */ + @NotBlank(message = "机关ID不能为空",groups = {CompartmentByBizType.class}) + private String agencyId; + + /** + * 业务类型 + */ + @NotBlank(message = "bizType不能为空", groups = {CompartmentByBizType.class}) + private String bizType; +} diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/AgencyDistributionResultDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/AgencyDistributionResultDTO.java index 753cf368dd..3a91fdfbf7 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/AgencyDistributionResultDTO.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/AgencyDistributionResultDTO.java @@ -37,4 +37,9 @@ public class AgencyDistributionResultDTO implements Serializable { * 组织:agency; 网格:grid ; 部门:dept */ private String type; + + public AgencyDistributionResultDTO() { + this.subAreaMarks = ""; + this.subCenterMark = ""; + } } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/AgencyController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/AgencyController.java index 1fb253ac62..86a6f3213e 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/AgencyController.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/AgencyController.java @@ -3,6 +3,7 @@ package com.epmet.datareport.controller.screen; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.datareport.service.evaluationindex.screen.AgencyService; +import com.epmet.evaluationindex.screen.dto.form.CompartmentByBizTypeFormDTO; import com.epmet.evaluationindex.screen.dto.form.CompartmentFormDTO; import com.epmet.evaluationindex.screen.dto.form.TreeByTypeFormDTO; import com.epmet.evaluationindex.screen.dto.result.CompartmentResultDTO; @@ -59,4 +60,10 @@ public class AgencyController { return new Result().ok(agencyService.compartment(compartmentFormDTO)); } + @PostMapping("compartmentbybiztype") + public Result compartmentByBizType(@RequestBody CompartmentByBizTypeFormDTO compartmentFormDTO){ + ValidatorUtils.validateEntity(compartmentFormDTO, CompartmentByBizTypeFormDTO.CompartmentByBizType.class); + return new Result().ok(agencyService.compartmentByBizType(compartmentFormDTO)); + } + } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java index c49b83e304..ebcd6ece9f 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java @@ -60,6 +60,8 @@ public interface ScreenCustomerAgencyDao { */ CompartmentResultDTO getAgencyAreaInfo(@Param("agencyId")String agencyId); + CompartmentResultDTO getAgencyAreaInfoByBizType(@Param("agencyId")String agencyId,@Param("bizType")String bizType); + /** * @Description 查询子级区域分布信息【机关级别】 * @param agencyId @@ -67,6 +69,7 @@ public interface ScreenCustomerAgencyDao { * @date 2020/8/18 5:12 下午 */ List selectSubDistribution(@Param("agencyId")String agencyId); + List selectSubDistributionByType(@Param("agencyId")String agencyId,@Param("bizType")String bizType); /** * @Description 查询子级用户分布【机关级别】 diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/AgencyService.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/AgencyService.java index c9517701a3..046eaccbef 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/AgencyService.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/AgencyService.java @@ -1,5 +1,6 @@ package com.epmet.datareport.service.evaluationindex.screen; +import com.epmet.evaluationindex.screen.dto.form.CompartmentByBizTypeFormDTO; import com.epmet.evaluationindex.screen.dto.form.CompartmentFormDTO; import com.epmet.evaluationindex.screen.dto.form.TreeByTypeFormDTO; import com.epmet.evaluationindex.screen.dto.result.CompartmentResultDTO; @@ -32,4 +33,6 @@ public interface AgencyService { */ CompartmentResultDTO compartment(CompartmentFormDTO compartmentFormDTO); + CompartmentResultDTO compartmentByBizType(CompartmentByBizTypeFormDTO compartmentFormDTO); + } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java index 880036439e..24a5367d87 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java @@ -8,6 +8,7 @@ import com.epmet.datareport.dao.evaluationindex.screen.ScreenCustomerAgencyDao; import com.epmet.datareport.dao.evaluationindex.screen.ScreenCustomerGridDao; import com.epmet.datareport.service.evaluationindex.screen.AgencyService; import com.epmet.evaluationindex.screen.constant.ScreenConstant; +import com.epmet.evaluationindex.screen.dto.form.CompartmentByBizTypeFormDTO; import com.epmet.evaluationindex.screen.dto.form.CompartmentFormDTO; import com.epmet.evaluationindex.screen.dto.form.TreeByTypeFormDTO; import com.epmet.evaluationindex.screen.dto.result.AgencyDistributionResultDTO; @@ -206,4 +207,22 @@ public class AgencyServiceImpl implements AgencyService { } return agencyAreaInfo; } + + @DataSource(value = DataSourceConstant.EVALUATION_INDEX,datasourceNameFromArg = true) + @Override + public CompartmentResultDTO compartmentByBizType(CompartmentByBizTypeFormDTO compartmentFormDTO) { + CompartmentResultDTO agencyAreaInfo = screenCustomerAgencyDao.getAgencyAreaInfoByBizType(compartmentFormDTO.getAgencyId(),compartmentFormDTO.getBizType()); + if (null == agencyAreaInfo){ + return new CompartmentResultDTO(); + } + if (agencyAreaInfo.getLevel().equals(ScreenConstant.COMMUNITY)){ + // 当level为"community"时,查询screen_customer_grid表 + List agencyDistributionResultDTOS = screenCustomerGridDao.selectSubDistribution(compartmentFormDTO.getAgencyId()); + agencyAreaInfo.setAgencyDistribution(agencyDistributionResultDTOS); + }else { + List agencyDistributionResultDTOS = screenCustomerAgencyDao.selectSubDistributionByType(compartmentFormDTO.getAgencyId(),compartmentFormDTO.getBizType()); + agencyAreaInfo.setAgencyDistribution(agencyDistributionResultDTOS); + } + return agencyAreaInfo; + } } diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenCustomerAgencyDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenCustomerAgencyDao.xml index ca4cb2c6a8..3dcb1871c3 100644 --- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenCustomerAgencyDao.xml +++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenCustomerAgencyDao.xml @@ -151,4 +151,37 @@ ca.created_time DESC + + + + \ No newline at end of file From 32bb21650423d60fe6252a40137f86052e98881e Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 09:42:59 +0800 Subject: [PATCH 14/42] =?UTF-8?q?report=E6=9C=8D=E5=8A=A1=E5=8D=87?= =?UTF-8?q?=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-report-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/data-report/data-report-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml index 5b95c762d4..f7428425f9 100644 --- a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-report-server: container_name: data-report-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.118 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.119 ports: - "8109:8109" diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml index d833a1473f..2188751311 100644 --- a/epmet-module/data-report/data-report-server/pom.xml +++ b/epmet-module/data-report/data-report-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.118 + 0.3.119 data-report-server From 61a175c9f945f6bb92c775743c41792dd9f4105f Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 09:52:21 +0800 Subject: [PATCH 15/42] =?UTF-8?q?report=E6=9C=8D=E5=8A=A1=E5=8D=87?= =?UTF-8?q?=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common-service-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/epmet-common-service/common-service-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-dev.yml b/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-dev.yml index da8b6a8229..720f60d745 100644 --- a/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-dev.yml +++ b/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: common-service-server: container_name: common-service-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/common-service-server:0.3.26 + image: 192.168.1.130:10080/epmet-cloud-dev/common-service-server:0.3.27 ports: - "8103:8103" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-common-service/common-service-server/pom.xml b/epmet-module/epmet-common-service/common-service-server/pom.xml index 42682b64db..e88c490864 100644 --- a/epmet-module/epmet-common-service/common-service-server/pom.xml +++ b/epmet-module/epmet-common-service/common-service-server/pom.xml @@ -2,7 +2,7 @@ 4.0.0 - 0.3.26 + 0.3.27 com.epmet epmet-common-service From d529ed613111bf25c64ceb985976960914d9a599 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Fri, 23 Oct 2020 10:03:26 +0800 Subject: [PATCH 16/42] =?UTF-8?q?user=E6=9C=8D=E5=8A=A1=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-user/epmet-user-server/deploy/docker-compose-dev.yml | 2 +- epmet-user/epmet-user-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-user/epmet-user-server/deploy/docker-compose-dev.yml b/epmet-user/epmet-user-server/deploy/docker-compose-dev.yml index 0bfb0974ae..bbcb9e2417 100644 --- a/epmet-user/epmet-user-server/deploy/docker-compose-dev.yml +++ b/epmet-user/epmet-user-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-user-server: container_name: epmet-user-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/epmet-user-server:0.3.138 + image: 192.168.1.130:10080/epmet-cloud-dev/epmet-user-server:0.3.139 ports: - "8087:8087" network_mode: host # 不会创建新的网络 diff --git a/epmet-user/epmet-user-server/pom.xml b/epmet-user/epmet-user-server/pom.xml index fa28cdebaf..d2a0cab2cb 100644 --- a/epmet-user/epmet-user-server/pom.xml +++ b/epmet-user/epmet-user-server/pom.xml @@ -2,7 +2,7 @@ 4.0.0 - 0.3.138 + 0.3.139 com.epmet epmet-user From 5a9cd46b25167795d880bc8901f67a933b1145db Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Fri, 23 Oct 2020 10:06:38 +0800 Subject: [PATCH 17/42] =?UTF-8?q?=E5=8F=91=E9=80=81=E8=AE=A2=E9=98=85?= =?UTF-8?q?=E6=B6=88=E6=81=AF=EF=BC=8C=E5=A2=9E=E5=8A=A0=E5=AD=97=E6=95=B0?= =?UTF-8?q?=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/constant/WxmpMessageConstant.java | 4 ++++ .../java/com/epmet/service/impl/WxmpMessageServiceImpl.java | 6 +++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java index 992146e6ab..667a8b3bfc 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/constant/WxmpMessageConstant.java @@ -34,8 +34,12 @@ public interface WxmpMessageConstant { String TITLE = "title"; + int TITLE_LIMIT = 20; + String MESSAGE_CONTENT = "message_content"; + int MESSAGE_CONTENT_LIMIT = 20; + String MESSAGE_TIME = "message_time"; String DATA = "data"; diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index 1a17894174..b31a14ac61 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -179,8 +179,8 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { jsonObject.put(WxmpMessageConstant.ACCESS_TOKEN, accessToken); jsonObject.put(WxmpMessageConstant.TOUSER, openId); jsonObject.put(WxmpMessageConstant.TEMPLATE_ID, templateId); - data.put(WxmpMessageConstant.TITLE, new JSONObject().put("value", "您有一条" + msg.getBehaviorType())); - data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent())); + data.put(WxmpMessageConstant.TITLE, new JSONObject().put("value", ("您有一条" + msg.getBehaviorType()).substring(0,WxmpMessageConstant.TITLE_LIMIT))); + data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent().substring(0,WxmpMessageConstant.MESSAGE_CONTENT_LIMIT))); data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", msg.getMessageTime())); jsonObject.put(WxmpMessageConstant.DATA, data); EnvEnum envEnum = EnvEnum.getCurrentEnv(); @@ -274,7 +274,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { wxmpMsgSendRecordEntity.setTitle("您有一条" + msg.getBehaviorType()); wxmpMsgSendRecordEntity.setMessageContent(msg.getMessageContent()); try { - wxmpMsgSendRecordEntity.setMessageTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(msg.getMessageTime())); + wxmpMsgSendRecordEntity.setMessageTime(new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(msg.getMessageTime())); } catch (ParseException e) { wxmpMsgSendRecordEntity.setMessageTime(new Date()); } From 23ac9fcea79c39b018e29c5d4a27cb7805906c7f Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Fri, 23 Oct 2020 10:39:52 +0800 Subject: [PATCH 18/42] =?UTF-8?q?=E5=8F=91=E9=80=81=E8=AE=A2=E9=98=85?= =?UTF-8?q?=E6=B6=88=E6=81=AF=EF=BC=8C=E5=88=A0=E9=99=A4messageTime?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/form/WxSubscribeMessageFormDTO.java | 6 ------ .../com/epmet/service/impl/WxmpMessageServiceImpl.java | 8 ++------ 2 files changed, 2 insertions(+), 12 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java index 9a55b17386..f712c2106f 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java @@ -48,12 +48,6 @@ public class WxSubscribeMessageFormDTO implements Serializable { @NotBlank(message = "消息内容不能为空") private String messageContent; - /** - * 消息时间 - */ - @NotBlank(message = "消息时间不能为空") - private String messageTime; - /** * 所需下发的订阅模板id */ diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index b31a14ac61..4a69f3e68a 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -181,7 +181,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { jsonObject.put(WxmpMessageConstant.TEMPLATE_ID, templateId); data.put(WxmpMessageConstant.TITLE, new JSONObject().put("value", ("您有一条" + msg.getBehaviorType()).substring(0,WxmpMessageConstant.TITLE_LIMIT))); data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent().substring(0,WxmpMessageConstant.MESSAGE_CONTENT_LIMIT))); - data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", msg.getMessageTime())); + data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()))); jsonObject.put(WxmpMessageConstant.DATA, data); EnvEnum envEnum = EnvEnum.getCurrentEnv(); //选填项 @@ -273,11 +273,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { wxmpMsgSendRecordEntity.setBehaviorType(msg.getBehaviorType()); wxmpMsgSendRecordEntity.setTitle("您有一条" + msg.getBehaviorType()); wxmpMsgSendRecordEntity.setMessageContent(msg.getMessageContent()); - try { - wxmpMsgSendRecordEntity.setMessageTime(new SimpleDateFormat("yyyy-MM-dd HH:mm").parse(msg.getMessageTime())); - } catch (ParseException e) { - wxmpMsgSendRecordEntity.setMessageTime(new Date()); - } + wxmpMsgSendRecordEntity.setMessageTime(new Date()); wxmpMsgSendRecordEntity.setResult(status); return wxmpMsgSendRecordEntity; } From db380a1ef48fd0a9eabd1615581304bd712c29dc Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Fri, 23 Oct 2020 11:01:35 +0800 Subject: [PATCH 19/42] =?UTF-8?q?=E5=8F=91=E9=80=81=E8=AE=A2=E9=98=85=20?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E8=8E=B7=E5=8F=96templateId?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/WxSubscribeMessageFormDTO.java | 5 - .../epmet/dao/WxmpResiUserSubscribeDao.java | 10 + .../epmet/dao/WxmpWorkUserSubscribeDao.java | 11 + .../epmet/exception/WxSubscribeException.java | 13 +- .../service/impl/WxmpMessageServiceImpl.java | 399 +++++++++--------- .../mapper/WxmpResiUserSubscribeDao.xml | 13 + .../mapper/WxmpWorkUserSubscribeDao.xml | 12 + 7 files changed, 263 insertions(+), 200 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java index f712c2106f..1dc30e2f8c 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java @@ -48,9 +48,4 @@ public class WxSubscribeMessageFormDTO implements Serializable { @NotBlank(message = "消息内容不能为空") private String messageContent; - /** - * 所需下发的订阅模板id - */ - @NotBlank(message = "模板id不能为空") - private String templateId; } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java index d2ec0c8443..c1a6e83d2f 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java @@ -64,4 +64,14 @@ public interface WxmpResiUserSubscribeDao extends BaseDao msgList) { - logger.info("待发送订阅消息数量:{}", msgList.size()); - int succecssCount = 0; - for (WxSubscribeMessageFormDTO msg : msgList) { - try { - String userId = msg.getUserId(); - String clientType = msg.getClientType(); - String customerId = msg.getCustomerId(); - String templateId = msg.getTemplateId(); - String openId = null; - //通过userId获取openId - try { - if (WxmpMessageConstant.RESI.equals(clientType)) { - UserBasicInfoFormDTO userBasicInfoFormDTO = new UserBasicInfoFormDTO(); - userBasicInfoFormDTO.setUserId(userId); - openId = epmetUserOpenFeignClient.getUserBasicInfo(userBasicInfoFormDTO).getData().getOpenId(); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - StaffBasicInfoFormDTO staffBasicInfoFormDTO = new StaffBasicInfoFormDTO(); - staffBasicInfoFormDTO.setStaffId(userId); - openId = epmetUserOpenFeignClient.getStaffBasicInfo(staffBasicInfoFormDTO).getData().getOpenId(); - } else { - throw new WxSubscribeException("clientType有误",openId); - } - }catch (Exception e){ - throw new WxSubscribeException("连接User服务失败",""); - } + /** + * @param msgList + * @return void + * @Description 发送订阅消息 + * @Author liushaowen + * @Date 2020/10/21 15:34 + */ + @Override + public void sendWxSubscribeMessage(List msgList) { + logger.info("待发送订阅消息数量:{}", msgList.size()); + int succecssCount = 0; + for (WxSubscribeMessageFormDTO msg : msgList) { + try { + String userId = msg.getUserId(); + String clientType = msg.getClientType(); + String customerId = msg.getCustomerId(); + String templateId = null; + String openId = null; + //通过userId获取openId + try { + if (WxmpMessageConstant.RESI.equals(clientType)) { + UserBasicInfoFormDTO userBasicInfoFormDTO = new UserBasicInfoFormDTO(); + userBasicInfoFormDTO.setUserId(userId); + openId = epmetUserOpenFeignClient.getUserBasicInfo(userBasicInfoFormDTO).getData().getOpenId(); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + StaffBasicInfoFormDTO staffBasicInfoFormDTO = new StaffBasicInfoFormDTO(); + staffBasicInfoFormDTO.setStaffId(userId); + openId = epmetUserOpenFeignClient.getStaffBasicInfo(staffBasicInfoFormDTO).getData().getOpenId(); + } else { + throw new WxSubscribeException("clientType有误", "", openId); + } + } catch (Exception e) { + throw new WxSubscribeException("连接User服务失败", "", ""); + } - if (StringUtils.isBlank(openId)){ - throw new WxSubscribeException("openId获取失败",""); + if (StringUtils.isBlank(openId)) { + throw new WxSubscribeException("openId获取失败", "", ""); } - //获取accessToken - StringBuilder key = new StringBuilder(msg.getCustomerId()).append(":").append(msg.getClientType()); - Map authorizerRefreshToken = new HashMap<>(); + //获取accessToken + StringBuilder key = new StringBuilder(msg.getCustomerId()).append(":").append(msg.getClientType()); + Map authorizerRefreshToken = new HashMap<>(); try { - authorizerRefreshToken = wxmpMessageRedis.getAuthorizerRefreshToken(key.toString()); - }catch (Exception e){ - throw new WxSubscribeException("连接缓存服务器失败",openId); - } - String accessToken = (String) authorizerRefreshToken.get(WxmpMessageConstant.AUTHORIZER_ACCESS_TOKEN); - if (StringUtils.isBlank(accessToken)) { - throw new WxSubscribeException("accessToken获取失败",openId); - } + authorizerRefreshToken = wxmpMessageRedis.getAuthorizerRefreshToken(key.toString()); + } catch (Exception e) { + throw new WxSubscribeException("连接缓存服务器失败", "", openId); + } + String accessToken = (String) authorizerRefreshToken.get(WxmpMessageConstant.AUTHORIZER_ACCESS_TOKEN); + if (StringUtils.isBlank(accessToken)) { + throw new WxSubscribeException("accessToken获取失败", "", openId); + } - //判断用户是否有次数 - Integer count = null; - if (WxmpMessageConstant.RESI.equals(clientType)) { - count = wxmpResiUserSubscribeDao.getResiSubscribeInfo(openId, templateId, customerId); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - count = wxmpWorkUserSubscribeDao.getWorkSubscribeInfo(openId, templateId, customerId); - } - if (count == null) { - //用户未订阅 - throw new WxSubscribeException("用户未订阅",openId); - } - if (count == 0) { - throw new WxSubscribeException("用户可用额度不足",openId); - } + //获取模板id + if (WxmpMessageConstant.RESI.equals(clientType)) { + templateId = wxmpResiUserSubscribeDao.getResiSubscribeTemplateId(openId, templateId, customerId); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + templateId = wxmpWorkUserSubscribeDao.getWorkSubscribeTemplateId(openId, templateId, customerId); + } + if (StringUtils.isBlank(templateId)) { + throw new WxSubscribeException("获取模板id失败", "", openId); + } + + //判断用户是否有次数 + Integer count = null; + if (WxmpMessageConstant.RESI.equals(clientType)) { + count = wxmpResiUserSubscribeDao.getResiSubscribeInfo(openId, templateId, customerId); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + count = wxmpWorkUserSubscribeDao.getWorkSubscribeInfo(openId, templateId, customerId); + } + if (count == null) { + //用户未订阅 + throw new WxSubscribeException("用户未订阅", templateId, openId); + } + if (count == 0) { + throw new WxSubscribeException("用户可用额度不足", templateId, openId); + } - //发送消息 - JSONObject jsonObject = new JSONObject(); - JSONObject data = new JSONObject(); - //必填项 - jsonObject.put(WxmpMessageConstant.ACCESS_TOKEN, accessToken); - jsonObject.put(WxmpMessageConstant.TOUSER, openId); - jsonObject.put(WxmpMessageConstant.TEMPLATE_ID, templateId); - data.put(WxmpMessageConstant.TITLE, new JSONObject().put("value", ("您有一条" + msg.getBehaviorType()).substring(0,WxmpMessageConstant.TITLE_LIMIT))); - data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent().substring(0,WxmpMessageConstant.MESSAGE_CONTENT_LIMIT))); - data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()))); - jsonObject.put(WxmpMessageConstant.DATA, data); - EnvEnum envEnum = EnvEnum.getCurrentEnv(); - //选填项 - if (WxmpMessageConstant.RESI.equals(clientType)) { - jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_RESI); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_WORK); - } - //开发环境 - if ("dev".equals(envEnum.getCode())){ - jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_DEV); - } - //测试环境 - if ("test".equals(envEnum.getCode())){ - jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_TEST); - } + //发送消息 + JSONObject jsonObject = new JSONObject(); + JSONObject data = new JSONObject(); + //必填项 + jsonObject.put(WxmpMessageConstant.ACCESS_TOKEN, accessToken); + jsonObject.put(WxmpMessageConstant.TOUSER, openId); + jsonObject.put(WxmpMessageConstant.TEMPLATE_ID, templateId); + data.put(WxmpMessageConstant.TITLE, new JSONObject().put("value", ("您有一条" + msg.getBehaviorType()).substring(0, WxmpMessageConstant.TITLE_LIMIT))); + data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent().substring(0, WxmpMessageConstant.MESSAGE_CONTENT_LIMIT))); + data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()))); + jsonObject.put(WxmpMessageConstant.DATA, data); + EnvEnum envEnum = EnvEnum.getCurrentEnv(); + //选填项 + if (WxmpMessageConstant.RESI.equals(clientType)) { + jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_RESI); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_WORK); + } + //开发环境 + if ("dev".equals(envEnum.getCode())) { + jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_DEV); + } + //测试环境 + if ("test".equals(envEnum.getCode())) { + jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_TEST); + } - String resultStr = HttpClientManager.getInstance().sendPostByJSON(WxmpMessageConstant.SEND_MESSAGE + accessToken, JSON.toJSONString(jsonObject)).getData(); - Map resultMap = JSON.parseObject(resultStr, Map.class); - Object errcode = resultMap.get(WxmpMessageConstant.ERR_CODE); - if (errcode.equals(NumConstant.ZERO)) { - //发送成功 + String resultStr = HttpClientManager.getInstance().sendPostByJSON(WxmpMessageConstant.SEND_MESSAGE + accessToken, JSON.toJSONString(jsonObject)).getData(); + Map resultMap = JSON.parseObject(resultStr, Map.class); + Object errcode = resultMap.get(WxmpMessageConstant.ERR_CODE); + if (errcode.equals(NumConstant.ZERO)) { + //发送成功 - //订阅条数-1 - int decrease = 0; - if (WxmpMessageConstant.RESI.equals(clientType)) { - decrease = wxmpResiUserSubscribeDao.decreaseResiSubscribeCount(openId, templateId, customerId, 1); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - decrease = wxmpWorkUserSubscribeDao.decreaseWorkSubscribeCount(openId, templateId, customerId, 1); - } - if (decrease == 0) { - logger.error("消息{}发送成功但订阅条数-1失败", JSON.toJSONString(msg)); - } - //存表 - int saveRes = wxmpMsgSendRecordService.saveRecord(initRecord(msg,openId,WxmpMessageConstant.SUCCESS)); - if (saveRes == 0) { - logger.error("消息{}发送成功但存入记录表失败", JSON.toJSONString(msg)); - } - } else { - //发送失败 - //用户拒绝,需清空订阅表条数,修改订阅状态 - if (errcode.equals(WxmpMessageConstant.USER_REFUSED)) { - int clear = 0; - if (WxmpMessageConstant.RESI.equals(clientType)) { - clear = wxmpResiUserSubscribeDao.clearResiSubscribeCount(openId, templateId, customerId); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - clear = wxmpWorkUserSubscribeDao.clearWorkSubscribeCount(openId, templateId, customerId); - } - if (clear == 0) { - logger.error("消息{}发送失败且清空订阅条数失败", JSON.toJSONString(msg)); - } - } + //订阅条数-1 + int decrease = 0; + if (WxmpMessageConstant.RESI.equals(clientType)) { + decrease = wxmpResiUserSubscribeDao.decreaseResiSubscribeCount(openId, templateId, customerId, 1); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + decrease = wxmpWorkUserSubscribeDao.decreaseWorkSubscribeCount(openId, templateId, customerId, 1); + } + if (decrease == 0) { + logger.error("消息{}发送成功但订阅条数-1失败", JSON.toJSONString(msg)); + } + //存表 + int saveRes = wxmpMsgSendRecordService.saveRecord(initRecord(msg, templateId, openId, WxmpMessageConstant.SUCCESS)); + if (saveRes == 0) { + logger.error("消息{}发送成功但存入记录表失败", JSON.toJSONString(msg)); + } + } else { + //发送失败 + //用户拒绝,需清空订阅表条数,修改订阅状态 + if (errcode.equals(WxmpMessageConstant.USER_REFUSED)) { + int clear = 0; + if (WxmpMessageConstant.RESI.equals(clientType)) { + clear = wxmpResiUserSubscribeDao.clearResiSubscribeCount(openId, templateId, customerId); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + clear = wxmpWorkUserSubscribeDao.clearWorkSubscribeCount(openId, templateId, customerId); + } + if (clear == 0) { + logger.error("消息{}发送失败且清空订阅条数失败", JSON.toJSONString(msg)); + } + } - //抛出错误 - throw new WxSubscribeException(String.valueOf(resultMap.get(WxmpMessageConstant.ERR_MSG)),openId); - } + //抛出错误 + throw new WxSubscribeException(String.valueOf(resultMap.get(WxmpMessageConstant.ERR_MSG)),templateId, openId); + } - succecssCount++; - } catch (Exception e) { - String errMsg = e.getMessage(); - //ValidateException错误信息为getMsg + succecssCount++; + } catch (Exception e) { + String errMsg = e.getMessage(); + //ValidateException错误信息为getMsg // if (StringUtils.isBlank(errMsg) && e instanceof ValidateException) { // errMsg = ((ValidateException) e).getMsg(); // } - if (e instanceof WxSubscribeException){ - //存表 - WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = initRecord(msg, ((WxSubscribeException) e).getOpenId(), WxmpMessageConstant.ERROR); - wxmpMsgSendRecordEntity.setReason(errMsg); - int saveRes = wxmpMsgSendRecordService.saveRecord(wxmpMsgSendRecordEntity); - if (saveRes == 0) { - logger.error("消息{}发送失败且存入记录表失败", JSON.toJSONString(msg)); - } - } + if (e instanceof WxSubscribeException) { + //存表 + WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = initRecord(msg, ((WxSubscribeException) e).getTemplateId(), ((WxSubscribeException) e).getOpenId(), WxmpMessageConstant.ERROR); + wxmpMsgSendRecordEntity.setReason(errMsg); + int saveRes = wxmpMsgSendRecordService.saveRecord(wxmpMsgSendRecordEntity); + if (saveRes == 0) { + logger.error("消息{}发送失败且存入记录表失败", JSON.toJSONString(msg)); + } + } + + logger.error("消息:{}发送失败,原因是:{}", JSON.toJSONString(msg), errMsg); + continue; + } + } + logger.info("{}条消息中的{}条发送成功", msgList.size(), succecssCount); + } - logger.error("消息:{}发送失败,原因是:{}", JSON.toJSONString(msg), errMsg); - continue; - } - } - logger.info("{}条消息中的{}条发送成功", msgList.size(), succecssCount); - } - //初始化记录对象 - private WxmpMsgSendRecordEntity initRecord(WxSubscribeMessageFormDTO msg, String openId, String status){ - WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = new WxmpMsgSendRecordEntity(); - wxmpMsgSendRecordEntity.setCustomerId(msg.getCustomerId()); - wxmpMsgSendRecordEntity.setClientType(msg.getClientType()); - wxmpMsgSendRecordEntity.setTemplateId(msg.getTemplateId()); - wxmpMsgSendRecordEntity.setUserId(msg.getUserId()); - wxmpMsgSendRecordEntity.setWxOpenId(openId); - wxmpMsgSendRecordEntity.setBehaviorType(msg.getBehaviorType()); - wxmpMsgSendRecordEntity.setTitle("您有一条" + msg.getBehaviorType()); - wxmpMsgSendRecordEntity.setMessageContent(msg.getMessageContent()); - wxmpMsgSendRecordEntity.setMessageTime(new Date()); - wxmpMsgSendRecordEntity.setResult(status); - return wxmpMsgSendRecordEntity; - } + //初始化记录对象 + private WxmpMsgSendRecordEntity initRecord(WxSubscribeMessageFormDTO msg, String templateId, String openId, String status) { + WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = new WxmpMsgSendRecordEntity(); + wxmpMsgSendRecordEntity.setCustomerId(msg.getCustomerId()); + wxmpMsgSendRecordEntity.setClientType(msg.getClientType()); + wxmpMsgSendRecordEntity.setTemplateId(templateId); + wxmpMsgSendRecordEntity.setUserId(msg.getUserId()); + wxmpMsgSendRecordEntity.setWxOpenId(openId); + wxmpMsgSendRecordEntity.setBehaviorType(msg.getBehaviorType()); + wxmpMsgSendRecordEntity.setTitle("您有一条" + msg.getBehaviorType()); + wxmpMsgSendRecordEntity.setMessageContent(msg.getMessageContent()); + wxmpMsgSendRecordEntity.setMessageTime(new Date()); + wxmpMsgSendRecordEntity.setResult(status); + return wxmpMsgSendRecordEntity; + } } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml index 2b97a22eec..2a1df8a057 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml @@ -37,4 +37,17 @@ and wx_open_id = #{openId} + + diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml index 4673179dee..efa31174f9 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml @@ -34,4 +34,16 @@ and template_id = #{templateId} and wx_open_id = #{openId} + From 8be82b93465d5ef8996119f13a7ef732679247e0 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 11:03:40 +0800 Subject: [PATCH 20/42] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-report/data-report-client/pom.xml | 5 ++ .../project/constant/ProjectConstant.java | 2 + .../dto/result/ProjectDetailResultDTO.java | 51 +++++++++++++++++++ .../controller/project/ProjectController.java | 13 +++++ .../screen/ScreenDifficultyDataDao.java | 3 ++ .../service/project/ProjectService.java | 9 ++++ .../project/impl/ProjectServiceImpl.java | 29 +++++++++++ .../mapper/screen/ScreenDifficultyDataDao.xml | 16 ++++++ .../feign/GovProjectOpenFeignClient.java | 5 ++ .../GovProjectOpenFeignClientFallback.java | 7 +++ .../controller/ProjectTraceController.java | 13 +++++ 11 files changed, 153 insertions(+) create mode 100644 epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/ProjectDetailResultDTO.java diff --git a/epmet-module/data-report/data-report-client/pom.xml b/epmet-module/data-report/data-report-client/pom.xml index 5bba5f2cb4..8700a85f3b 100644 --- a/epmet-module/data-report/data-report-client/pom.xml +++ b/epmet-module/data-report/data-report-client/pom.xml @@ -17,6 +17,11 @@ epmet-commons-tools 2.0.0 + + com.epmet + gov-project-client + 2.0.0 + diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/constant/ProjectConstant.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/constant/ProjectConstant.java index 27d195e832..7b07db5c72 100644 --- a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/constant/ProjectConstant.java +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/constant/ProjectConstant.java @@ -20,4 +20,6 @@ public interface ProjectConstant { */ String TYPE_EXCEPTION = "必要参数为空或参数格式错误"; + String PROCESS_FAILURE = "查询项目进展失败......"; + } diff --git a/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/ProjectDetailResultDTO.java b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/ProjectDetailResultDTO.java new file mode 100644 index 0000000000..05c4577742 --- /dev/null +++ b/epmet-module/data-report/data-report-client/src/main/java/com/epmet/project/dto/result/ProjectDetailResultDTO.java @@ -0,0 +1,51 @@ +package com.epmet.project.dto.result; + +import com.epmet.dto.result.ProcesslistResultDTO; +import lombok.Data; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * @Author zxc + * @DateTime 2020/10/23 10:13 上午 + */ +@Data +public class ProjectDetailResultDTO implements Serializable { + + private static final long serialVersionUID = 2450826789942547426L; + + /** 【事件 = 项目】 + * 事件标题 + */ + private String eventTitle; + + /** + * 事件内容 + */ + private String eventContent; + + /** + * 事件来源 + */ + private String eventSource; + + /** + * 事件图片集合 + */ + private List imgUrlList; + + /** + * 项目进展 + */ + private List processList; + + public ProjectDetailResultDTO() { + this.eventTitle = ""; + this.eventContent = ""; + this.eventSource = ""; + this.imgUrlList = new ArrayList<>(); + this.processList = new ArrayList<>(); + } +} diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java index 47a4765288..9966047056 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/project/ProjectController.java @@ -5,6 +5,7 @@ import com.epmet.commons.tools.exception.RenException; 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.form.ProcessListFormDTO; import com.epmet.module.project.service.ProjectService; import com.epmet.project.constant.ProjectConstant; import com.epmet.project.dto.form.ProjectIncrTrendFormDTO; @@ -78,4 +79,16 @@ public class ProjectController { return new Result>().ok(projectService.getProjectIncrTrend(tokenDto, formDTO)); } + /** + * @Description 项目详情 + * @Param processListFormDTO + * @author zxc + * @date 2020/10/23 10:31 上午 + */ + @PostMapping("projectdetail") + public Result projectDetail(@RequestBody ProcessListFormDTO processListFormDTO){ + ValidatorUtils.validateEntity(processListFormDTO); + return new Result().ok(projectService.projectDetail(processListFormDTO)); + } + } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenDifficultyDataDao.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenDifficultyDataDao.java index 8697ba9adf..81293d999e 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenDifficultyDataDao.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenDifficultyDataDao.java @@ -18,6 +18,7 @@ package com.epmet.datareport.dao.evaluationindex.screen; import com.epmet.evaluationindex.screen.dto.result.DifficultProjectResultDTO; +import com.epmet.project.dto.result.ProjectDetailResultDTO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -41,4 +42,6 @@ public interface ScreenDifficultyDataDao { **/ List selectDifficulty(@Param("agencyId")String agencyId,@Param("type")String type); + ProjectDetailResultDTO projectDetail(@Param("projectId")String projectId); + } \ No newline at end of file diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java index baa6e664e0..f4c4afa4d0 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/ProjectService.java @@ -1,6 +1,7 @@ package com.epmet.module.project.service; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.dto.form.ProcessListFormDTO; import com.epmet.project.dto.form.ProjectIncrTrendFormDTO; import com.epmet.project.dto.result.*; @@ -41,4 +42,12 @@ public interface ProjectService { * @Description 数据-项目-日/月数据查询 **/ List getProjectIncrTrend(TokenDto tokenDto, ProjectIncrTrendFormDTO formDTO); + + /** + * @Description 项目详情 + * @Param processListFormDTO + * @author zxc + * @date 2020/10/23 10:33 上午 + */ + ProjectDetailResultDTO projectDetail( ProcessListFormDTO processListFormDTO); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java index 41af9351ac..eb78f8978e 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java @@ -4,10 +4,15 @@ import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.DateUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.datareport.dao.evaluationindex.screen.ScreenDifficultyDataDao; import com.epmet.datareport.dao.project.ProjectDao; import com.epmet.dto.form.LoginUserDetailsFormDTO; +import com.epmet.dto.form.ProcessListFormDTO; import com.epmet.dto.result.LoginUserDetailsResultDTO; +import com.epmet.dto.result.ProcesslistResultDTO; import com.epmet.feign.EpmetUserOpenFeignClient; +import com.epmet.feign.GovProjectOpenFeignClient; import com.epmet.module.project.service.ProjectService; import com.epmet.project.constant.ProjectConstant; import com.epmet.project.dto.FactAgencyProjectDailyDTO; @@ -35,6 +40,10 @@ public class ProjectServiceImpl implements ProjectService { private ProjectDao projectDao; @Autowired private EpmetUserOpenFeignClient epmetUserOpenFeignClient; + @Autowired + private ScreenDifficultyDataDao screenDifficultyDataDao; + @Autowired + private GovProjectOpenFeignClient govProjectOpenFeignClient; /** * @Author sun @@ -168,6 +177,26 @@ public class ProjectServiceImpl implements ProjectService { return resultList; } + /** + * @Description 项目详情 + * @Param processListFormDTO + * @author zxc + * @date 2020/10/23 10:33 上午 + */ + @Override + public ProjectDetailResultDTO projectDetail(ProcessListFormDTO processListFormDTO) { + ProjectDetailResultDTO projectDetailResultDTO = screenDifficultyDataDao.projectDetail(processListFormDTO.getProjectId()); + if (null == projectDetailResultDTO){ + return new ProjectDetailResultDTO(); + } + Result> processList = govProjectOpenFeignClient.getProcessList(processListFormDTO); + if (!processList.success()){ + throw new RenException(ProjectConstant.PROCESS_FAILURE); + } + projectDetailResultDTO.setProcessList(processList.getData()); + return projectDetailResultDTO; + } + /** * @author sun * @Description 获取机关ID diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenDifficultyDataDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenDifficultyDataDao.xml index 0bb479ed65..dfdc3c2f26 100644 --- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenDifficultyDataDao.xml +++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenDifficultyDataDao.xml @@ -30,4 +30,20 @@ DESC + + + \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java index c16b8da399..ea9d169a57 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java @@ -1,8 +1,10 @@ package com.epmet.feign; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.ProcessListFormDTO; import com.epmet.dto.form.ProjectListFromDTO; import com.epmet.dto.result.PendProjectListResultDTO; +import com.epmet.dto.result.ProcesslistResultDTO; import org.springframework.cloud.openfeign.FeignClient; import com.epmet.commons.tools.constant.ServiceConstant; @@ -29,4 +31,7 @@ public interface GovProjectOpenFeignClient { */ @PostMapping("gov/project/project/pendprojectlist") Result> getPendProjectList(@RequestBody ProjectListFromDTO fromDTO); + + @PostMapping("gov/project/trace/processlistnotrule") + Result> getProcessList(@RequestBody ProcessListFormDTO fromDTO); } diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/fallback/GovProjectOpenFeignClientFallback.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/fallback/GovProjectOpenFeignClientFallback.java index aa84f509c5..5ae4f94533 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/fallback/GovProjectOpenFeignClientFallback.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/fallback/GovProjectOpenFeignClientFallback.java @@ -3,8 +3,10 @@ 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.ProcessListFormDTO; import com.epmet.dto.form.ProjectListFromDTO; import com.epmet.dto.result.PendProjectListResultDTO; +import com.epmet.dto.result.ProcesslistResultDTO; import com.epmet.feign.GovProjectOpenFeignClient; import org.springframework.stereotype.Component; @@ -22,4 +24,9 @@ public class GovProjectOpenFeignClientFallback implements GovProjectOpenFeignCli public Result> getPendProjectList(ProjectListFromDTO fromDTO) { return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "getPendProjectList", fromDTO); } + + @Override + public Result> getProcessList(ProcessListFormDTO fromDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "getProcessList", fromDTO); + } } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java index d32f28f8de..9ca5fdc0db 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java @@ -179,6 +179,19 @@ public class ProjectTraceController { return new Result>().ok(projectProcessService.progressList(formDTO)); } + /** + * @param formDTO + * @return + * @Author zxc + * @Description 项目跟踪-项目处理进展列表 + **/ + @PostMapping("processlistnotrule") + @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PROJECT_TRACE_DETAIL) + public Result> processListNotRule(@RequestBody ProcessListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO); + return new Result>().ok(projectProcessService.progressList(formDTO)); + } + /** * @param formDTO * @return From c24c9189efbb8fadf7ecfad14d3282504c680e71 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 11:05:23 +0800 Subject: [PATCH 21/42] =?UTF-8?q?report,project=E6=9C=8D=E5=8A=A1=E5=8D=87?= =?UTF-8?q?=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-report-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/data-report/data-report-server/pom.xml | 2 +- .../gov-project-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/gov-project/gov-project-server/pom.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml index f7428425f9..e12d13823f 100644 --- a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-report-server: container_name: data-report-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.119 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.120 ports: - "8109:8109" diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml index 2188751311..b88ee24263 100644 --- a/epmet-module/data-report/data-report-server/pom.xml +++ b/epmet-module/data-report/data-report-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.119 + 0.3.120 data-report-server diff --git a/epmet-module/gov-project/gov-project-server/deploy/docker-compose-dev.yml b/epmet-module/gov-project/gov-project-server/deploy/docker-compose-dev.yml index d424658532..f6b9f0b394 100644 --- a/epmet-module/gov-project/gov-project-server/deploy/docker-compose-dev.yml +++ b/epmet-module/gov-project/gov-project-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: gov-project-server: container_name: gov-project-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/gov-project-server:0.3.50 + image: 192.168.1.130:10080/epmet-cloud-dev/gov-project-server:0.3.51 ports: - "8102:8102" network_mode: host # 使用现有网络 diff --git a/epmet-module/gov-project/gov-project-server/pom.xml b/epmet-module/gov-project/gov-project-server/pom.xml index 37a8b716c3..1f6fab724e 100644 --- a/epmet-module/gov-project/gov-project-server/pom.xml +++ b/epmet-module/gov-project/gov-project-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.50 + 0.3.51 gov-project com.epmet From d588d209de8b82af827004347c3654748579f216 Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Fri, 23 Oct 2020 11:10:10 +0800 Subject: [PATCH 22/42] =?UTF-8?q?=E5=B1=85=E6=B0=91=E7=AB=AF=E7=BB=84?= =?UTF-8?q?=E9=95=BF=E5=AE=A1=E6=A0=B8=E7=94=A8=E6=88=B7=E7=9A=84=E5=85=A5?= =?UTF-8?q?=E7=BB=84=E7=94=B3=E8=AF=B7=E6=97=B6=EF=BC=8C=E5=A6=82=E6=9E=9C?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E8=AE=A2=E9=98=85=E4=BA=86=E6=B6=88=E6=81=AF?= =?UTF-8?q?=EF=BC=88=E4=B8=8B=E5=90=8C=EF=BC=89=EF=BC=8C=E7=BB=99=E7=94=B3?= =?UTF-8?q?=E8=AF=B7=E5=85=A5=E7=BB=84=E7=9A=84=E7=94=A8=E6=88=B7=E6=8E=A8?= =?UTF-8?q?=E9=80=81=E4=B8=80=E6=9D=A1=E8=AE=A2=E9=98=85=E6=B6=88=E6=81=AF?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/constant/UserMessageConstant.java | 5 ++++ .../impl/ResiGroupMemberServiceImpl.java | 25 +++++++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java index 71bef9e2d4..f9b97bfb9f 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java @@ -59,4 +59,9 @@ public interface UserMessageConstant { */ String CREATION_OF_GROUP_MESSAGE_TEMPLATE = "%s%s申请创建小组【%s】,请审核。"; + /** + * 组长审核入组申请时的微信订阅behavior + */ + String WX_APPLY_GROUP_BEHAVIOR = "小组消息"; + } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java index 803ea51d94..db6422eee4 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java @@ -34,6 +34,7 @@ import com.epmet.constant.ReadFlagConstant; import com.epmet.dto.form.UserMessageFormDTO; import com.epmet.dto.form.UserResiInfoFormDTO; import com.epmet.dto.form.UserResiInfoListFormDTO; +import com.epmet.dto.form.WxSubscribeMessageFormDTO; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.modules.constant.GroupMemberConstant; @@ -435,7 +436,7 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl msgList = new ArrayList<>(); + msgList.add(wxSubscribeMessageFormDTO); + epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList); } /** @@ -500,7 +511,7 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl msgList = new ArrayList<>(); + msgList.add(wxSubscribeMessageFormDTO); + epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList); } /** From 986cdedb303ab2e241898b63cb34ba99758a1502 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 11:12:23 +0800 Subject: [PATCH 23/42] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dao/evaluationindex/screen/ScreenDifficultyDataDao.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenDifficultyDataDao.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenDifficultyDataDao.java index 81293d999e..5a0a566342 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenDifficultyDataDao.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenDifficultyDataDao.java @@ -42,6 +42,6 @@ public interface ScreenDifficultyDataDao { **/ List selectDifficulty(@Param("agencyId")String agencyId,@Param("type")String type); - ProjectDetailResultDTO projectDetail(@Param("projectId")String projectId); + ProjectDetailResultDTO projectDetail(@Param("eventId")String projectId); } \ No newline at end of file From 94732b15961774af9c3d4357bf6827e31f8d4445 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 11:13:13 +0800 Subject: [PATCH 24/42] =?UTF-8?q?report=E6=9C=8D=E5=8A=A1=E5=8D=87?= =?UTF-8?q?=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-report-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/data-report/data-report-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml index e12d13823f..37c0cd8758 100644 --- a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-report-server: container_name: data-report-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.120 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.121 ports: - "8109:8109" diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml index b88ee24263..0d64e0472e 100644 --- a/epmet-module/data-report/data-report-server/pom.xml +++ b/epmet-module/data-report/data-report-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.120 + 0.3.121 data-report-server From 190b91969eff737b06166e19a64639fa11592383 Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Fri, 23 Oct 2020 13:13:23 +0800 Subject: [PATCH 25/42] =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E7=AB=AF=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E7=83=AD=E5=BF=83=E5=B1=85=E6=B0=91=E7=94=B3=E8=AF=B7?= =?UTF-8?q?=E6=97=B6=E5=B0=86=E5=AE=A1=E6=A0=B8=E7=BB=93=E6=9E=9C=E5=8F=91?= =?UTF-8?q?=E8=B5=B7=E6=8E=A8=E9=80=81=EF=BC=8C=E7=BB=99=E7=94=B3=E8=AF=B7?= =?UTF-8?q?=E7=83=AD=E5=BF=83=E5=B1=85=E6=B0=91=E7=9A=84=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E4=B8=80=E6=9D=A1=E8=AE=A2=E9=98=85=E6=B6=88?= =?UTF-8?q?=E6=81=AF=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../constant/ResiWarmUserMessageConstant.java | 5 +++++ .../impl/ResiWarmheartedApplyServiceImpl.java | 15 +++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/constant/ResiWarmUserMessageConstant.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/constant/ResiWarmUserMessageConstant.java index 15cb42bd63..13e1231a2a 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/constant/ResiWarmUserMessageConstant.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/constant/ResiWarmUserMessageConstant.java @@ -26,4 +26,9 @@ public interface ResiWarmUserMessageConstant { */ String AUDIT_REJECT_MSG = "您好,您申请的%s热心居民,已被驳回,原因:%s"; + /** + * 热心居民申请-微信订阅behavior + */ + String WX_WARMHEARTED_BEHAVIOR = "热心居民申请消息"; + } diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java index c00077dd1f..26beee052c 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java @@ -39,6 +39,7 @@ import com.epmet.dto.form.*; import com.epmet.dto.result.AgencyAndStaffsResultDTO; import com.epmet.dto.result.GovStaffRoleResultDTO; import com.epmet.dto.result.UserResiInfoResultDTO; +import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.modules.feign.EpmetMessageFeignClient; import com.epmet.modules.feign.EpmetUserFeignClient; import com.epmet.modules.feign.GovOrgFeignClient; @@ -90,6 +91,8 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl msgList = new ArrayList<>(); + msgList.add(wxSubscribeMessageFormDTO); + epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList); + //保存消息 return epmetMessageFeignClient.saveUserMessage(userMessageFormDTO); } From b69dc2218b7e3c10fdee0e88d748cf9ed364c54d Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Fri, 23 Oct 2020 13:32:18 +0800 Subject: [PATCH 26/42] =?UTF-8?q?=E6=B3=A8=E5=86=8C=E5=85=9A=E5=91=98?= =?UTF-8?q?=E6=89=8B=E5=8A=A8=E8=AE=A4=E8=AF=81=E6=97=B6=E5=B0=86=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E5=8F=91=E8=B5=B7=E6=8E=A8=E9=80=81=EF=BC=8C=E7=BB=99?= =?UTF-8?q?=E7=94=B3=E8=AF=B7=E6=B3=A8=E5=86=8C=E5=85=9A=E5=91=98=E7=9A=84?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E6=8E=A8=E9=80=81=E4=B8=80=E6=9D=A1=E8=AE=A2?= =?UTF-8?q?=E9=98=85=E6=B6=88=E6=81=AF=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/PartyMemberConfirmServiceImpl.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java index 7713b97928..72dd1e18ed 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java @@ -23,6 +23,7 @@ import com.epmet.modules.feign.ResiGroupFeignClient; import com.epmet.modules.partymember.entity.*; import com.epmet.modules.partymember.redis.PartymemberInfoRedis; import com.epmet.modules.partymember.service.*; +import com.epmet.modules.warmhearted.constant.ResiWarmUserMessageConstant; import com.epmet.modules.warmhearted.constant.ResiWarmheartedConstant; import com.epmet.modules.warmhearted.constant.ResiWarmheartedVisitConstant; import com.epmet.redis.ResiPartyMemberRedis; @@ -644,6 +645,17 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService String messageContent = String.format(userMsg, gridName); userMessageFormDTO.setMessageContent(messageContent); userMessageFormDTO.setReadFlag(ReadFlagConstant.UN_READ); + + //发送微信订阅消息 + WxSubscribeMessageFormDTO wxSubscribeMessageFormDTO = new WxSubscribeMessageFormDTO(); + wxSubscribeMessageFormDTO.setCustomerId(formDTO.getCustomerId()); + wxSubscribeMessageFormDTO.setUserId(formDTO.getUserId()); + wxSubscribeMessageFormDTO.setClientType(AppClientConstant.APP_RESI); + wxSubscribeMessageFormDTO.setBehaviorType(ResiWarmUserMessageConstant.WX_WARMHEARTED_BEHAVIOR); + wxSubscribeMessageFormDTO.setMessageContent(messageContent); + List msgList = new ArrayList<>(); + msgList.add(wxSubscribeMessageFormDTO); + epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList); //保存消息 return epmetMessageOpenFeignClient.saveUserMessage(userMessageFormDTO); } From 9459b5517e85d9f1be794959b34f5ebd49b956a3 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Fri, 23 Oct 2020 13:47:57 +0800 Subject: [PATCH 27/42] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E6=B6=88=E6=81=AF=E6=A8=A1=E6=9D=BF=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/form/TemplateListFormDTO.java | 31 ++++++++++++++++ .../epmet-message-server/pom.xml | 6 +++ .../controller/WxmpMessageController.java | 19 +++++++++- .../com/epmet/service/WxmpMessageService.java | 9 +++++ .../service/impl/WxmpMessageServiceImpl.java | 31 ++++++++++++++++ .../dto/form/GetTemplateListFormDTO.java | 31 ++++++++++++++++ .../dto/result/GetTemplateListResultDTO.java | 25 +++++++++++++ .../PersonalTemplateController.java | 37 +++++++++++++++++++ .../com/epmet/dao/PersonalTemplateDao.java | 9 +++++ .../service/PersonalTemplateService.java | 9 +++++ .../impl/PersonalTemplateServiceImpl.java | 13 +++++++ .../resources/mapper/PersonalTemplateDao.xml | 13 +++++++ 12 files changed, 232 insertions(+), 1 deletion(-) create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/TemplateListFormDTO.java create mode 100644 epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/GetTemplateListFormDTO.java create mode 100644 epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/GetTemplateListResultDTO.java create mode 100644 epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PersonalTemplateController.java diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/TemplateListFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/TemplateListFormDTO.java new file mode 100644 index 0000000000..87b3ff0cad --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/TemplateListFormDTO.java @@ -0,0 +1,31 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 获取客户小程序模板列表-接口入参 + * @Author sun + */ +@Data +public class TemplateListFormDTO implements Serializable { + + /** + * 客户Id + */ + @NotBlank(message="客户Id不能为空", groups = {TemplateListFormDTO.AddUserInternalGroup.class}) + private String customerId; + /** + * 小程序Id + */ + @NotBlank(message="小程序appId不能为空", groups = {TemplateListFormDTO.AddUserInternalGroup.class}) + private String appId; + /** + * 模板类型(站内信提醒) + */ + private String templateType; + public interface AddUserInternalGroup {} +} + diff --git a/epmet-module/epmet-message/epmet-message-server/pom.xml b/epmet-module/epmet-message/epmet-message-server/pom.xml index 5b62284845..28f44f4962 100644 --- a/epmet-module/epmet-message/epmet-message-server/pom.xml +++ b/epmet-module/epmet-message/epmet-message-server/pom.xml @@ -101,6 +101,12 @@ epmet-user-client 2.0.0 + + com.epmet + epmet-third-client + 2.0.0 + compile + diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java index 23e854f9de..7e06c80b0a 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java @@ -20,11 +20,16 @@ package com.epmet.controller; import com.epmet.commons.tools.security.user.LoginUserUtil; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.dto.form.GetTemplateListFormDTO; import com.epmet.dto.form.WxMsgAuthInfoFormDTO; import com.epmet.dto.form.WxSubscribeMessageFormDTO; +import com.epmet.dto.result.GetTemplateListResultDTO; import com.epmet.service.WxmpMessageService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; import java.util.List; @@ -72,4 +77,16 @@ public class WxmpMessageController { wxmpMessageService.sendWxSubscribeMessage(msgList); return new Result(); } + + /** + * @return + * @Description 居民端、工作端-获取客户小程序模板列表 + * @author sun + */ + @PostMapping("templatelist") + public Result> templateList(@RequestBody GetTemplateListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, GetTemplateListFormDTO.AddUserInternalGroup.class); + return new Result>().ok(wxmpMessageService.templateList(formDTO)); + } + } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java index ec571d4867..fdde63f2a5 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/WxmpMessageService.java @@ -17,7 +17,9 @@ package com.epmet.service; +import com.epmet.dto.form.GetTemplateListFormDTO; import com.epmet.dto.form.WxSubscribeMessageFormDTO; +import com.epmet.dto.result.GetTemplateListResultDTO; import java.util.List; @@ -39,4 +41,11 @@ public interface WxmpMessageService { * @Date 2020/10/21 15:34 */ void sendWxSubscribeMessage(List msgList); + + /** + * @return + * @Description 居民端、工作端-获取客户小程序模板列表 + * @author sun + */ + List templateList(GetTemplateListFormDTO formDTO); } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index ae338ffab1..bf9d8ed39c 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -21,16 +21,21 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.enums.EnvEnum; +import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.exception.ValidateException; +import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.HttpClientManager; +import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.constant.WxmpMessageConstant; import com.epmet.dao.WxmpResiUserSubscribeDao; import com.epmet.dao.WxmpTemplateMsgSubscribeStatusDao; import com.epmet.dao.WxmpWorkUserSubscribeDao; +import com.epmet.dto.form.GetTemplateListFormDTO; import com.epmet.dto.form.StaffBasicInfoFormDTO; import com.epmet.dto.form.UserBasicInfoFormDTO; import com.epmet.dto.form.WxSubscribeMessageFormDTO; +import com.epmet.dto.result.GetTemplateListResultDTO; import com.epmet.entity.WxmpMsgSendRecordEntity; import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity; import com.epmet.exception.WxSubscribeException; @@ -288,4 +293,30 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { wxmpMsgSendRecordEntity.setResult(status); return wxmpMsgSendRecordEntity; } + + /** + * @return + * @Description 居民端、工作端-获取客户小程序模板列表 + * @author sun + */ + @Override + public List templateList(GetTemplateListFormDTO formDTO) { + GetTemplateListFormDTO dto = ConvertUtils.sourceToTarget(formDTO, GetTemplateListFormDTO.class); + String url = "https://epmet-cloud.elinkservice.cn/api/third/personaltemplate/templatelist"; + //String url = "http://localhost:8080/api/third/personaltemplate/templatelist"; + String data = HttpClientManager.getInstance().sendPostByJSON(url, JSON.toJSONString(dto)).getData(); + logger.info("ThirdLoginServiceImpl.getUserWeChat:httpclient->url:"+url+",结果->"+data); + JSONObject toResult = JSON.parseObject(data); + Result mapToResult = ConvertUtils.mapToEntity(toResult, Result.class); + if (null != toResult.get("code")) { + mapToResult.setCode(((Integer) toResult.get("code")).intValue()); + } + if (!mapToResult.success()) { + logger.error("调用epmet_third服务获取小程序消息订阅模板数据失败"); + throw new RenException(mapToResult.getCode()); + } + List resultList = (List) mapToResult.getData(); + return resultList; + } + } diff --git a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/GetTemplateListFormDTO.java b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/GetTemplateListFormDTO.java new file mode 100644 index 0000000000..09fb259376 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/form/GetTemplateListFormDTO.java @@ -0,0 +1,31 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Description 获取客户小程序模板列表-接口入参 + * @Author sun + */ +@Data +public class GetTemplateListFormDTO implements Serializable { + + /** + * 客户Id + */ + @NotBlank(message="客户Id不能为空", groups = {AddUserInternalGroup.class}) + private String customerId; + /** + * 小程序Id + */ + @NotBlank(message="小程序appId不能为空", groups = {AddUserInternalGroup.class}) + private String appId; + /** + * 模板类型(站内信提醒) + */ + private String templateType; + public interface AddUserInternalGroup {} +} + diff --git a/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/GetTemplateListResultDTO.java b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/GetTemplateListResultDTO.java new file mode 100644 index 0000000000..d95e482c6f --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-client/src/main/java/com/epmet/dto/result/GetTemplateListResultDTO.java @@ -0,0 +1,25 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 获取客户小程序模板列表-接口返参 + * @Author sun + */ +@Data +public class GetTemplateListResultDTO implements Serializable { + private static final long serialVersionUID = 6856602932571839314L; + + /** + * 模板Id + */ + private String templateId; + + /** + * 模板类型(站内信提醒) + */ + private String templateType; + +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PersonalTemplateController.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PersonalTemplateController.java new file mode 100644 index 0000000000..bec7a2d3a8 --- /dev/null +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/controller/PersonalTemplateController.java @@ -0,0 +1,37 @@ +package com.epmet.controller; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.GetTemplateListFormDTO; +import com.epmet.dto.result.GetTemplateListResultDTO; +import com.epmet.service.PersonalTemplateService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @author generator generator@elink-cn.com + * @since v1.0.0 2020-09-09 + */ +@RestController +@RequestMapping("personaltemplate") +public class PersonalTemplateController { + + @Autowired + private PersonalTemplateService personalTemplateService; + + /** + * @return + * @Description 居民端、工作端-获取客户小程序模板列表 + * @author sun + */ + @PostMapping("templatelist") + public Result> templateList(@RequestBody GetTemplateListFormDTO formDTO) { + return new Result>().ok(personalTemplateService.templateList(formDTO)); + } + + +} diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/PersonalTemplateDao.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/PersonalTemplateDao.java index bd77f6ffea..a92981e0d4 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/PersonalTemplateDao.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/dao/PersonalTemplateDao.java @@ -19,7 +19,9 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.PersonalTemplateDTO; +import com.epmet.dto.form.GetTemplateListFormDTO; import com.epmet.dto.result.CustomerTempResultDTO; +import com.epmet.dto.result.GetTemplateListResultDTO; import com.epmet.dto.result.TemplateDTO; import com.epmet.entity.PersonalTemplateEntity; import org.apache.ibatis.annotations.Mapper; @@ -76,4 +78,11 @@ public interface PersonalTemplateDao extends BaseDao { */ List selectListByCustomerId(@Param("appId") String appId, @Param("customerId") String customerId, @Param("clientType") String clientType); + + /** + * @return + * @Description 居民端、工作端-获取客户小程序模板列表 + * @author sun + */ + List selectTemplateList(GetTemplateListFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PersonalTemplateService.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PersonalTemplateService.java index 447e6dd388..9f79ece63c 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PersonalTemplateService.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/PersonalTemplateService.java @@ -20,6 +20,8 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.dto.PersonalTemplateDTO; +import com.epmet.dto.form.GetTemplateListFormDTO; +import com.epmet.dto.result.GetTemplateListResultDTO; import com.epmet.dto.result.TemplateDTO; import com.epmet.entity.PersonalTemplateEntity; @@ -123,4 +125,11 @@ public interface PersonalTemplateService extends BaseService getListByCustomer(String appId, String customerId, String clientType); + + /** + * @return + * @Description 居民端、工作端-获取客户小程序模板列表 + * @author sun + */ + List templateList(GetTemplateListFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PersonalTemplateServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PersonalTemplateServiceImpl.java index f7b5589f43..8a5764427a 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PersonalTemplateServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/PersonalTemplateServiceImpl.java @@ -25,6 +25,8 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.dao.PersonalTemplateDao; import com.epmet.dto.PersonalTemplateDTO; +import com.epmet.dto.form.GetTemplateListFormDTO; +import com.epmet.dto.result.GetTemplateListResultDTO; import com.epmet.dto.result.TemplateDTO; import com.epmet.entity.PersonalTemplateEntity; import com.epmet.service.PersonalTemplateService; @@ -116,4 +118,15 @@ public class PersonalTemplateServiceImpl extends BaseServiceImpl templateList(GetTemplateListFormDTO formDTO) { + //根据客户Id、appId、模板类型查询小程序订阅消息模板列表 + return baseDao.selectTemplateList(formDTO); + } + } \ No newline at end of file diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/PersonalTemplateDao.xml b/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/PersonalTemplateDao.xml index f3b46b3c42..0b3f7ace51 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/PersonalTemplateDao.xml +++ b/epmet-module/epmet-third/epmet-third-server/src/main/resources/mapper/PersonalTemplateDao.xml @@ -75,5 +75,18 @@ ON t1.PRI_TMPL_ID = t2.PID + \ No newline at end of file From 40b8c2a77fb4cca7bad68cdcd2c388e31c50d258 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 13:50:23 +0800 Subject: [PATCH 28/42] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../screen/ScreenDifficultyDataService.java | 14 +++++++++ .../impl/ScreenDifficultyDataServiceImpl.java | 30 +++++++++++++++++++ .../project/impl/ProjectServiceImpl.java | 8 ++--- .../EpmetCommonServiceOpenFeignClient.java | 4 +-- 4 files changed, 50 insertions(+), 6 deletions(-) create mode 100644 epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/ScreenDifficultyDataService.java create mode 100644 epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/ScreenDifficultyDataService.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/ScreenDifficultyDataService.java new file mode 100644 index 0000000000..d40e84cb11 --- /dev/null +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/ScreenDifficultyDataService.java @@ -0,0 +1,14 @@ +package com.epmet.datareport.service.evaluationindex.screen; + +import com.epmet.dto.form.ProcessListFormDTO; +import com.epmet.project.dto.result.ProjectDetailResultDTO; + +/** + * @Author zxc + * @DateTime 2020/10/23 1:26 下午 + */ +public interface ScreenDifficultyDataService { + + ProjectDetailResultDTO projectDetail(ProcessListFormDTO processListFormDTO); + +} diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java new file mode 100644 index 0000000000..1b5b65cbb5 --- /dev/null +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/ScreenDifficultyDataServiceImpl.java @@ -0,0 +1,30 @@ +package com.epmet.datareport.service.evaluationindex.screen.impl; + +import com.epmet.commons.dynamic.datasource.annotation.DataSource; +import com.epmet.constant.DataSourceConstant; +import com.epmet.datareport.dao.evaluationindex.screen.ScreenDifficultyDataDao; +import com.epmet.datareport.service.evaluationindex.screen.ScreenDifficultyDataService; +import com.epmet.dto.form.ProcessListFormDTO; +import com.epmet.project.dto.result.ProjectDetailResultDTO; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * @Author zxc + * @DateTime 2020/10/23 1:26 下午 + */ +@Service +@Slf4j +@DataSource(DataSourceConstant.EVALUATION_INDEX) +public class ScreenDifficultyDataServiceImpl implements ScreenDifficultyDataService { + + @Autowired + private ScreenDifficultyDataDao screenDifficultyDataDao; + + @Override + public ProjectDetailResultDTO projectDetail(ProcessListFormDTO processListFormDTO) { + ProjectDetailResultDTO projectDetailResultDTO = screenDifficultyDataDao.projectDetail(processListFormDTO.getProjectId()); + return projectDetailResultDTO; + } +} diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java index eb78f8978e..4e4d965dee 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/project/impl/ProjectServiceImpl.java @@ -5,8 +5,8 @@ import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.Result; -import com.epmet.datareport.dao.evaluationindex.screen.ScreenDifficultyDataDao; import com.epmet.datareport.dao.project.ProjectDao; +import com.epmet.datareport.service.evaluationindex.screen.ScreenDifficultyDataService; import com.epmet.dto.form.LoginUserDetailsFormDTO; import com.epmet.dto.form.ProcessListFormDTO; import com.epmet.dto.result.LoginUserDetailsResultDTO; @@ -41,9 +41,9 @@ public class ProjectServiceImpl implements ProjectService { @Autowired private EpmetUserOpenFeignClient epmetUserOpenFeignClient; @Autowired - private ScreenDifficultyDataDao screenDifficultyDataDao; - @Autowired private GovProjectOpenFeignClient govProjectOpenFeignClient; + @Autowired + private ScreenDifficultyDataService screenDifficultyDataService; /** * @Author sun @@ -185,7 +185,7 @@ public class ProjectServiceImpl implements ProjectService { */ @Override public ProjectDetailResultDTO projectDetail(ProcessListFormDTO processListFormDTO) { - ProjectDetailResultDTO projectDetailResultDTO = screenDifficultyDataDao.projectDetail(processListFormDTO.getProjectId()); + ProjectDetailResultDTO projectDetailResultDTO = screenDifficultyDataService.projectDetail(processListFormDTO); if (null == projectDetailResultDTO){ return new ProjectDetailResultDTO(); } diff --git a/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java index 6dceb26d74..c2471c0255 100644 --- a/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java +++ b/epmet-module/epmet-common-service/common-service-client/src/main/java/com/epmet/feign/EpmetCommonServiceOpenFeignClient.java @@ -21,8 +21,8 @@ import java.util.List; * @author yinzuomei@elink-cn.com * @date 2020/6/4 10:28 */ -//@FeignClient(name = ServiceConstant.EPMET_COMMON_SERVICE, fallback = EpmetCommonServiceOpenFeignClientFallback.class) -@FeignClient(name = ServiceConstant.EPMET_COMMON_SERVICE, fallback = EpmetCommonServiceOpenFeignClientFallback.class, url = "localhost:8103") +@FeignClient(name = ServiceConstant.EPMET_COMMON_SERVICE, fallback = EpmetCommonServiceOpenFeignClientFallback.class) +//@FeignClient(name = ServiceConstant.EPMET_COMMON_SERVICE, fallback = EpmetCommonServiceOpenFeignClientFallback.class, url = "localhost:8103") public interface EpmetCommonServiceOpenFeignClient { /** * @param formDTO From 061140eb378daf9279d8bc19dfb6d67790ebe728 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Fri, 23 Oct 2020 13:51:15 +0800 Subject: [PATCH 29/42] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=B0=8F=E7=A8=8B?= =?UTF-8?q?=E5=BA=8F=E6=B6=88=E6=81=AF=E6=A8=A1=E6=9D=BF=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=20=E6=9C=8D=E5=8A=A1=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet-message-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/epmet-message/epmet-message-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-dev.yml b/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-dev.yml index be9f9a74b2..fca864f866 100644 --- a/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-dev.yml +++ b/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-message-server: container_name: epmet-message-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/epmet-message-server:0.3.29 + image: 192.168.1.130:10080/epmet-cloud-dev/epmet-message-server:0.3.30 ports: - "8085:8085" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-message/epmet-message-server/pom.xml b/epmet-module/epmet-message/epmet-message-server/pom.xml index 394ad79511..2742c226fa 100644 --- a/epmet-module/epmet-message/epmet-message-server/pom.xml +++ b/epmet-module/epmet-message/epmet-message-server/pom.xml @@ -2,7 +2,7 @@ 4.0.0 - 0.3.29 + 0.3.30 com.epmet epmet-message From a94a80731946332e739c60c0c294790b3da18ea7 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 13:52:01 +0800 Subject: [PATCH 30/42] =?UTF-8?q?report,common-service=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-report-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/data-report/data-report-server/pom.xml | 2 +- .../common-service-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/epmet-common-service/common-service-server/pom.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml index 37c0cd8758..f1cf6f17b3 100644 --- a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-report-server: container_name: data-report-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.121 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.122 ports: - "8109:8109" diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml index 0d64e0472e..f8cc976926 100644 --- a/epmet-module/data-report/data-report-server/pom.xml +++ b/epmet-module/data-report/data-report-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.121 + 0.3.122 data-report-server diff --git a/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-dev.yml b/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-dev.yml index 720f60d745..216a711e9f 100644 --- a/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-dev.yml +++ b/epmet-module/epmet-common-service/common-service-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: common-service-server: container_name: common-service-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/common-service-server:0.3.27 + image: 192.168.1.130:10080/epmet-cloud-dev/common-service-server:0.3.28 ports: - "8103:8103" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-common-service/common-service-server/pom.xml b/epmet-module/epmet-common-service/common-service-server/pom.xml index e88c490864..2990d3bd5f 100644 --- a/epmet-module/epmet-common-service/common-service-server/pom.xml +++ b/epmet-module/epmet-common-service/common-service-server/pom.xml @@ -2,7 +2,7 @@ 4.0.0 - 0.3.27 + 0.3.28 com.epmet epmet-common-service From a94a22dc486386011e14ca9d46f7689e3b2652cb Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 23 Oct 2020 13:57:11 +0800 Subject: [PATCH 31/42] =?UTF-8?q?=E5=BE=AE=E8=B0=83=E5=90=8E=E9=97=A8?= =?UTF-8?q?=E5=A4=96=E9=83=A8=E8=B0=83=E7=94=A8=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backdoor/BackDoorController.java | 20 +++++++++++++++---- .../service/backdoor/BackDoorService.java | 4 +--- .../backdoor/impl/BackDoorServiceImpl.java | 20 +++++++++---------- 3 files changed, 26 insertions(+), 18 deletions(-) diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java index 883f904a8f..5da98ec9c7 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java @@ -1,6 +1,5 @@ package com.epmet.datareport.controller.backdoor; -import com.epmet.commons.tools.utils.Result; import com.epmet.datareport.service.backdoor.BackDoorService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -16,9 +15,22 @@ public class BackDoorController { @Autowired private BackDoorService backDoorService; - @PostMapping("backdoor") - public Object backDoor(@RequestHeader("Data-Type")String dataType, @RequestHeader("AppId")String appId, @RequestHeader("target")String target, @RequestBody(required = false) Object o){ - return backDoorService.backDoor(dataType,appId,target,o); + /** + * desc: 重定向到target 方法,适用于外部鉴权接口的查询 比如大屏的查询接口 + * + * @param dataType + * @param appId + * @param target + * @param targetParam + * @return java.lang.String + * @author LiuJanJun + * @date 2020/10/23 1:44 下午 + */ + @PostMapping("redirect/external") + public String backDoor(@RequestHeader(value = "Data-Type", defaultValue = "real", required = false) String dataType, + @RequestHeader("AppId") String appId, @RequestHeader("target") String target, + @RequestBody(required = false) String targetParam) { + return backDoorService.redirect(dataType, appId, target, targetParam); } } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java index 6fba40f564..ecb40a843e 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java @@ -1,13 +1,11 @@ package com.epmet.datareport.service.backdoor; -import com.epmet.commons.tools.utils.Result; - /** * @Author zxc * @DateTime 2020/10/21 5:17 下午 */ public interface BackDoorService { - Object backDoor(String dataType, String appId, String target, Object o); + String redirect(String dataType, String appId, String target, String o); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java index eed2603ede..9a10e683c8 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java @@ -1,11 +1,10 @@ package com.epmet.datareport.service.backdoor.impl; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.utils.HttpClientManager; import com.epmet.commons.tools.utils.Result; -import com.epmet.datareport.constant.*; +import com.epmet.datareport.constant.FactConstant; import com.epmet.datareport.service.backdoor.BackDoorService; import com.epmet.dto.result.AppIdInfoResultDTO; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; @@ -28,24 +27,23 @@ public class BackDoorServiceImpl implements BackDoorService { private EpmetCommonServiceOpenFeignClient commonServiceOpenFeignClient; @Override - public Object backDoor(String dataType, String appId, String target, Object o) { + public String redirect(String dataType, String appId, String target, String targetParam) { Result appIdInfoResultDTOResult = commonServiceOpenFeignClient.appIdInfo(appId); - if (!appIdInfoResultDTOResult.success()){ + if (!appIdInfoResultDTOResult.success()) { throw new RenException("获取accessToken失败......"); } AppIdInfoResultDTO data = appIdInfoResultDTOResult.getData(); String url = FactConstant.URL.concat(target); - Map headerMap = new HashMap<>(16); - headerMap.put("AccessToken",data.getAccessToken()); - headerMap.put("AppId",data.getAppId()); - headerMap.put("AuthType","jwt"); + Map headerMap = new HashMap<>(16); + headerMap.put("AccessToken", data.getAccessToken()); + headerMap.put("AppId", data.getAppId()); + headerMap.put("AuthType", "jwt"); headerMap.put("Data-Type",dataType); - Result stringResult = HttpClientManager.getInstance().sendPostByJSONAndHeader(url, JSON.toJSONString(o),headerMap); + Result stringResult = HttpClientManager.getInstance().sendPostByJSONAndHeader(url, targetParam, headerMap); log.info(JSON.toJSONString(stringResult)); if (!stringResult.success()){ throw new RenException("请求【"+url+"】失败......"+stringResult.error()); } - JSONObject jsonObject = JSON.parseObject(stringResult.getData()); - return jsonObject; + return stringResult.getData(); } } From dfc095ba02ffc6ad1fb10d69d06ac6c15a333262 Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Fri, 23 Oct 2020 14:22:49 +0800 Subject: [PATCH 32/42] =?UTF-8?q?=E5=8F=91=E9=80=81=E8=AE=A2=E9=98=85?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E6=B7=BB=E5=8A=A0messageTime=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java | 6 ++++++ .../java/com/epmet/service/impl/WxmpMessageServiceImpl.java | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java index 1dc30e2f8c..84ec028cc5 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxSubscribeMessageFormDTO.java @@ -48,4 +48,10 @@ public class WxSubscribeMessageFormDTO implements Serializable { @NotBlank(message = "消息内容不能为空") private String messageContent; + /** + * 消息时间 + */ + @NotNull(message = "消息时间不能为空") + private Date messageTime; + } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index bf9d8ed39c..b83429496b 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -196,7 +196,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { jsonObject.put(WxmpMessageConstant.TEMPLATE_ID, templateId); data.put(WxmpMessageConstant.TITLE, new JSONObject().put("value", ("您有一条" + msg.getBehaviorType()).substring(0, WxmpMessageConstant.TITLE_LIMIT))); data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent().substring(0, WxmpMessageConstant.MESSAGE_CONTENT_LIMIT))); - data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()))); + data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(msg.getMessageTime()))); jsonObject.put(WxmpMessageConstant.DATA, data); EnvEnum envEnum = EnvEnum.getCurrentEnv(); //选填项 @@ -289,7 +289,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { wxmpMsgSendRecordEntity.setBehaviorType(msg.getBehaviorType()); wxmpMsgSendRecordEntity.setTitle("您有一条" + msg.getBehaviorType()); wxmpMsgSendRecordEntity.setMessageContent(msg.getMessageContent()); - wxmpMsgSendRecordEntity.setMessageTime(new Date()); + wxmpMsgSendRecordEntity.setMessageTime(msg.getMessageTime()); wxmpMsgSendRecordEntity.setResult(status); return wxmpMsgSendRecordEntity; } From 338c631a8f2b1676cc5a88e8544dab48ba38084a Mon Sep 17 00:00:00 2001 From: liushaowen <565850092@qq.com> Date: Fri, 23 Oct 2020 14:30:28 +0800 Subject: [PATCH 33/42] =?UTF-8?q?=E8=B0=83=E7=94=A8=E5=8F=91=E9=80=81?= =?UTF-8?q?=E8=AE=A2=E9=98=85=20=20=E6=B7=BB=E5=8A=A0messageTime=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/service/impl/ResiGroupMemberServiceImpl.java | 1 + .../service/impl/PartyMemberConfirmServiceImpl.java | 1 + .../service/impl/ResiWarmheartedApplyServiceImpl.java | 6 ++---- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java index db6422eee4..bd92d6b14a 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/member/service/impl/ResiGroupMemberServiceImpl.java @@ -460,6 +460,7 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl msgList = new ArrayList<>(); msgList.add(wxSubscribeMessageFormDTO); epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList); diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java index 72dd1e18ed..ea761610fc 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/partymember/service/impl/PartyMemberConfirmServiceImpl.java @@ -653,6 +653,7 @@ public class PartyMemberConfirmServiceImpl implements PartyMemberConfirmService wxSubscribeMessageFormDTO.setClientType(AppClientConstant.APP_RESI); wxSubscribeMessageFormDTO.setBehaviorType(ResiWarmUserMessageConstant.WX_WARMHEARTED_BEHAVIOR); wxSubscribeMessageFormDTO.setMessageContent(messageContent); + wxSubscribeMessageFormDTO.setMessageTime(new Date()); List msgList = new ArrayList<>(); msgList.add(wxSubscribeMessageFormDTO); epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList); diff --git a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java index 26beee052c..901bf4e1cc 100644 --- a/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java +++ b/epmet-module/resi-partymember/resi-partymember-server/src/main/java/com/epmet/modules/warmhearted/service/impl/ResiWarmheartedApplyServiceImpl.java @@ -66,10 +66,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -449,6 +446,7 @@ public class ResiWarmheartedApplyServiceImpl extends BaseServiceImpl msgList = new ArrayList<>(); msgList.add(wxSubscribeMessageFormDTO); epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList); From a9ca56ff54880a5310b94f5b37c031ecd08f95e1 Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 23 Oct 2020 14:30:43 +0800 Subject: [PATCH 34/42] =?UTF-8?q?=E6=96=B0=E5=A2=9E=EF=BC=9A=E5=BE=AE?= =?UTF-8?q?=E4=BF=A1=E8=AE=A2=E9=98=85=E6=B6=88=E6=81=AF-=E6=8E=88?= =?UTF-8?q?=E6=9D=83=E9=85=8D=E7=BD=AE=E4=BF=9D=E5=AD=98=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WxMsgTemplateSubscribeStatus.java | 7 + .../WxmpTemplateMsgSubscribeStatusDTO.java | 2 + .../epmet/dto/form/WxMsgAuthInfoFormDTO.java | 24 +- .../epmet-message-server/pom.xml | 5 + .../controller/WxmpMessageController.java | 47 +- .../epmet/dao/WxmpResiUserSubscribeDao.java | 11 + .../WxmpTemplateMsgSubscribeStatusDao.java | 10 +- .../epmet/dao/WxmpWorkUserSubscribeDao.java | 14 +- .../WxmpTemplateMsgSubscribeStatusEntity.java | 3 + .../com/epmet/service/WxmpMessageService.java | 8 +- .../service/impl/WxmpMessageServiceImpl.java | 621 +++++++++++------- .../mapper/WxmpResiUserSubscribeDao.xml | 42 ++ .../WxmpTemplateMsgSubscribeStatusDao.xml | 2 + .../mapper/WxmpWorkUserSubscribeDao.xml | 39 ++ 14 files changed, 589 insertions(+), 246 deletions(-) create mode 100644 epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/WxMsgTemplateSubscribeStatus.java diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/WxMsgTemplateSubscribeStatus.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/WxMsgTemplateSubscribeStatus.java new file mode 100644 index 0000000000..9ea7e585ae --- /dev/null +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/WxMsgTemplateSubscribeStatus.java @@ -0,0 +1,7 @@ +package com.epmet.constant; + +public interface WxMsgTemplateSubscribeStatus { + //wx订阅状态 订阅状态(订阅:subscribe 取消订阅:unsubscribe) + String SUBSCRIBE = "subscribe"; + String UNSUBSCRIBE = "unsubscribe"; +} diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpTemplateMsgSubscribeStatusDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpTemplateMsgSubscribeStatusDTO.java index 00dc07a199..59ad254400 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpTemplateMsgSubscribeStatusDTO.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/WxmpTemplateMsgSubscribeStatusDTO.java @@ -103,4 +103,6 @@ public class WxmpTemplateMsgSubscribeStatusDTO implements Serializable { */ private Date updatedTime; + private Date templateId; + } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxMsgAuthInfoFormDTO.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxMsgAuthInfoFormDTO.java index 11d70e506d..c8dde831d2 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxMsgAuthInfoFormDTO.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/dto/form/WxMsgAuthInfoFormDTO.java @@ -8,17 +8,35 @@ import javax.validation.constraints.NotBlank; public class WxMsgAuthInfoFormDTO { public interface SaveSysAuthInfoGroup {} + public interface GetAuthInfoGroup {} + public interface SaveWxSubscribeInfoGroup {} - @NotBlank(message = "客户id不能为空", groups = { SaveSysAuthInfoGroup.class }) + @NotBlank(message = "客户id不能为空", groups = { SaveSysAuthInfoGroup.class, GetAuthInfoGroup.class, SaveWxSubscribeInfoGroup.class }) private String customerId; - @NotBlank(message = "客户端类型不能为空", groups = { SaveSysAuthInfoGroup.class }) + @NotBlank(message = "客户端类型不能为空", groups = { SaveSysAuthInfoGroup.class, GetAuthInfoGroup.class, SaveWxSubscribeInfoGroup.class }) private String clientType; - @NotBlank(message = "是否总是字段不能为空", groups = { SaveSysAuthInfoGroup.class }) + @NotBlank(message = "'是否总是允许'选项不能为空", groups = { SaveSysAuthInfoGroup.class }) private String alwaysVisit; @NotBlank(message = "是否去订阅字段不能为空", groups = { SaveSysAuthInfoGroup.class }) private String subscribeStatus; + @NotBlank(message = "模板ID不能为空", groups = { SaveWxSubscribeInfoGroup.class, GetAuthInfoGroup.class, SaveSysAuthInfoGroup.class }) + private String templateId; + + @NotBlank(message = "微信'是否总是允许'选项不能为空", groups = { SaveWxSubscribeInfoGroup.class }) + private String wxAlwaysVisit; + + @NotBlank(message = "微信'是否订阅字段不能为空'", groups = { SaveWxSubscribeInfoGroup.class }) + private String wxSubscribeStatus; + + @NotBlank(message = "动作类型不能为空", groups = { SaveWxSubscribeInfoGroup.class }) + private String behaviorType; + + + + + } diff --git a/epmet-module/epmet-message/epmet-message-server/pom.xml b/epmet-module/epmet-message/epmet-message-server/pom.xml index 28f44f4962..6a8d05d9de 100644 --- a/epmet-module/epmet-message/epmet-message-server/pom.xml +++ b/epmet-module/epmet-message/epmet-message-server/pom.xml @@ -25,6 +25,11 @@ epmet-message-client 2.0.0 + + com.epmet + epmet-user-client + 2.0.0 + com.epmet epmet-admin-client diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java index 7e06c80b0a..15e8e81d0e 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/controller/WxmpMessageController.java @@ -24,12 +24,10 @@ import com.epmet.dto.form.GetTemplateListFormDTO; import com.epmet.dto.form.WxMsgAuthInfoFormDTO; import com.epmet.dto.form.WxSubscribeMessageFormDTO; import com.epmet.dto.result.GetTemplateListResultDTO; +import com.epmet.dto.result.WxMsgAuthInfoResultDTO; import com.epmet.service.WxmpMessageService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -64,11 +62,13 @@ public class WxmpMessageController { String clientType = form.getClientType(); String customerId = form.getCustomerId(); String subscribeStatus = form.getSubscribeStatus(); + String templateId = form.getTemplateId(); - wxmpMessageService.saveSysAuthorizeInfo(customerId, clientType, alwaysVisit, subscribeStatus, loginUserUtil.getLoginUserId()); + wxmpMessageService.saveSysAuthorizeInfo(customerId, clientType, alwaysVisit, subscribeStatus, loginUserUtil.getLoginUserId(), templateId); return new Result(); } + @PostMapping("sendwxsubscribemessage") public Result sendWxSubscribeMessage(@RequestBody List msgList){ for (WxSubscribeMessageFormDTO wxSubscribeMessageFormDTO : msgList) { @@ -89,4 +89,39 @@ public class WxmpMessageController { return new Result>().ok(wxmpMessageService.templateList(formDTO)); } -} + /** + * @Description 查询用户授权信息 + * @return + * @author wxz + * @date 2020.10.21 18:15 + */ + @PostMapping("get-authorizeinfo") + public Result getAuthorizationInfo(@RequestBody WxMsgAuthInfoFormDTO form) { + ValidatorUtils.validateEntity(form, WxMsgAuthInfoFormDTO.GetAuthInfoGroup.class); + WxMsgAuthInfoResultDTO authorizationInfo = wxmpMessageService.getAuthorizationInfo( + form.getCustomerId(), form.getClientType(), + loginUserUtil.getLoginUserId(), form.getTemplateId()); + return new Result().ok(authorizationInfo); + } + + /** + * 保存微信订阅的授权信息 + * @param form + * @return + */ + @PostMapping("save-wxsubscribe") + public Result saveWxSubscribe(@RequestBody WxMsgAuthInfoFormDTO form) { + ValidatorUtils.validateEntity(form, WxMsgAuthInfoFormDTO.SaveWxSubscribeInfoGroup.class); + String customerId = form.getCustomerId(); + String clientType = form.getClientType(); + String templateId = form.getTemplateId(); + String wxAlwaysVisit = form.getWxAlwaysVisit(); + String wxSubscribeStatus = form.getWxSubscribeStatus(); + String behaviorType = form.getBehaviorType(); + + wxmpMessageService.saveWxSubscribe(customerId, clientType, templateId, wxAlwaysVisit, wxSubscribeStatus, behaviorType, loginUserUtil.getLoginUserId()); + + return new Result(); + } + +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java index c1a6e83d2f..28080d66e7 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpResiUserSubscribeDao.java @@ -74,4 +74,15 @@ public interface WxmpResiUserSubscribeDao extends BaseDao { WxMsgAuthInfoResultDTO getUserSubscribeStatusDTO(@Param("userId") String userId, - @Param("customerId") String customerId, - @Param("clientType") String clientType); + @Param("customerId") String customerId, + @Param("clientType") String clientType, + @Param("templateId") String templateId); WxmpTemplateMsgSubscribeStatusEntity getUserSubscribeStatusEntity(@Param("userId") String userId, - @Param("customerId") String customerId, - @Param("clientType") String clientType); + @Param("customerId") String customerId, + @Param("clientType") String clientType, + @Param("templateId") String templateId); } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpWorkUserSubscribeDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpWorkUserSubscribeDao.java index 0638e2bfc4..eb33773c8f 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpWorkUserSubscribeDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/WxmpWorkUserSubscribeDao.java @@ -23,7 +23,7 @@ import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; /** - * 工作端用户订阅模板消息有效次数记录表 + * 工作端用户订阅模板消息有效次数记录表 * * @author generator generator@elink-cn.com * @since v1.0.0 2020-10-21 @@ -75,4 +75,16 @@ public interface WxmpWorkUserSubscribeDao extends BaseDao msgList) { - logger.info("待发送订阅消息数量:{}", msgList.size()); - int succecssCount = 0; - for (WxSubscribeMessageFormDTO msg : msgList) { - try { - String userId = msg.getUserId(); - String clientType = msg.getClientType(); - String customerId = msg.getCustomerId(); - String templateId = null; - String openId = null; - //通过userId获取openId - try { - if (WxmpMessageConstant.RESI.equals(clientType)) { - UserBasicInfoFormDTO userBasicInfoFormDTO = new UserBasicInfoFormDTO(); - userBasicInfoFormDTO.setUserId(userId); - openId = epmetUserOpenFeignClient.getUserBasicInfo(userBasicInfoFormDTO).getData().getOpenId(); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - StaffBasicInfoFormDTO staffBasicInfoFormDTO = new StaffBasicInfoFormDTO(); - staffBasicInfoFormDTO.setStaffId(userId); - openId = epmetUserOpenFeignClient.getStaffBasicInfo(staffBasicInfoFormDTO).getData().getOpenId(); - } else { - throw new WxSubscribeException("clientType有误", "", openId); - } - } catch (Exception e) { - throw new WxSubscribeException("连接User服务失败", "", ""); - } - - if (StringUtils.isBlank(openId)) { - throw new WxSubscribeException("openId获取失败", "", ""); - } - - //获取accessToken - StringBuilder key = new StringBuilder(msg.getCustomerId()).append(":").append(msg.getClientType()); - Map authorizerRefreshToken = new HashMap<>(); - try { - authorizerRefreshToken = wxmpMessageRedis.getAuthorizerRefreshToken(key.toString()); - } catch (Exception e) { - throw new WxSubscribeException("连接缓存服务器失败", "", openId); - } - String accessToken = (String) authorizerRefreshToken.get(WxmpMessageConstant.AUTHORIZER_ACCESS_TOKEN); - if (StringUtils.isBlank(accessToken)) { - throw new WxSubscribeException("accessToken获取失败", "", openId); - } - - //获取模板id - if (WxmpMessageConstant.RESI.equals(clientType)) { - templateId = wxmpResiUserSubscribeDao.getResiSubscribeTemplateId(openId, templateId, customerId); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - templateId = wxmpWorkUserSubscribeDao.getWorkSubscribeTemplateId(openId, templateId, customerId); - } - if (StringUtils.isBlank(templateId)) { - throw new WxSubscribeException("获取模板id失败", "", openId); - } - - //判断用户是否有次数 - Integer count = null; - if (WxmpMessageConstant.RESI.equals(clientType)) { - count = wxmpResiUserSubscribeDao.getResiSubscribeInfo(openId, templateId, customerId); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - count = wxmpWorkUserSubscribeDao.getWorkSubscribeInfo(openId, templateId, customerId); - } - if (count == null) { - //用户未订阅 - throw new WxSubscribeException("用户未订阅", templateId, openId); - } - if (count == 0) { - throw new WxSubscribeException("用户可用额度不足", templateId, openId); - } - - //发送消息 - JSONObject jsonObject = new JSONObject(); - JSONObject data = new JSONObject(); - //必填项 - jsonObject.put(WxmpMessageConstant.ACCESS_TOKEN, accessToken); - jsonObject.put(WxmpMessageConstant.TOUSER, openId); - jsonObject.put(WxmpMessageConstant.TEMPLATE_ID, templateId); - data.put(WxmpMessageConstant.TITLE, new JSONObject().put("value", ("您有一条" + msg.getBehaviorType()).substring(0, WxmpMessageConstant.TITLE_LIMIT))); - data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent().substring(0, WxmpMessageConstant.MESSAGE_CONTENT_LIMIT))); - data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()))); - jsonObject.put(WxmpMessageConstant.DATA, data); - EnvEnum envEnum = EnvEnum.getCurrentEnv(); - //选填项 - if (WxmpMessageConstant.RESI.equals(clientType)) { - jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_RESI); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_WORK); - } - //开发环境 - if ("dev".equals(envEnum.getCode())) { - jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_DEV); - } - //测试环境 - if ("test".equals(envEnum.getCode())) { - jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_TEST); - } - - String resultStr = HttpClientManager.getInstance().sendPostByJSON(WxmpMessageConstant.SEND_MESSAGE + accessToken, JSON.toJSONString(jsonObject)).getData(); - Map resultMap = JSON.parseObject(resultStr, Map.class); - Object errcode = resultMap.get(WxmpMessageConstant.ERR_CODE); - if (errcode.equals(NumConstant.ZERO)) { - //发送成功 - - //订阅条数-1 - int decrease = 0; - if (WxmpMessageConstant.RESI.equals(clientType)) { - decrease = wxmpResiUserSubscribeDao.decreaseResiSubscribeCount(openId, templateId, customerId, 1); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - decrease = wxmpWorkUserSubscribeDao.decreaseWorkSubscribeCount(openId, templateId, customerId, 1); - } - if (decrease == 0) { - logger.error("消息{}发送成功但订阅条数-1失败", JSON.toJSONString(msg)); - } - //存表 - int saveRes = wxmpMsgSendRecordService.saveRecord(initRecord(msg, templateId, openId, WxmpMessageConstant.SUCCESS)); - if (saveRes == 0) { - logger.error("消息{}发送成功但存入记录表失败", JSON.toJSONString(msg)); - } - } else { - //发送失败 - //用户拒绝,需清空订阅表条数,修改订阅状态 - if (errcode.equals(WxmpMessageConstant.USER_REFUSED)) { - int clear = 0; - if (WxmpMessageConstant.RESI.equals(clientType)) { - clear = wxmpResiUserSubscribeDao.clearResiSubscribeCount(openId, templateId, customerId); - } else if (WxmpMessageConstant.WORK.equals(clientType)) { - clear = wxmpWorkUserSubscribeDao.clearWorkSubscribeCount(openId, templateId, customerId); - } - if (clear == 0) { - logger.error("消息{}发送失败且清空订阅条数失败", JSON.toJSONString(msg)); - } - } - - //抛出错误 - throw new WxSubscribeException(String.valueOf(resultMap.get(WxmpMessageConstant.ERR_MSG)),templateId, openId); - } - - succecssCount++; - } catch (Exception e) { - String errMsg = e.getMessage(); - //ValidateException错误信息为getMsg + private Logger logger = LoggerFactory.getLogger(getClass()); + + @Autowired + private WxmpTemplateMsgSubscribeStatusDao msgSubscribeStatusDao; + + @Autowired + private EpmetUserOpenFeignClient epmetUserOpenFeignClient; + + @Autowired + private WxmpMessageRedis wxmpMessageRedis; + + @Resource + private WxmpResiUserSubscribeDao wxmpResiUserSubscribeDao; + + @Resource + private WxmpWorkUserSubscribeDao wxmpWorkUserSubscribeDao; + + @Autowired + private WxmpMsgSendRecordService wxmpMsgSendRecordService; + + @Autowired + private WxmpUserSubscribeRecordDao subscribeRecordDao; + + @Autowired + private WxmpResiUserSubscribeDao resiUserSubscribeDao; + + @Autowired + private EpmetUserOpenFeignClient userOpenFeignClient; + + /** + * @Description 保存系统授权信息 + * @return void + * @author wxz + * @date 2020.10.21 17:29 + */ + @Override + public void saveSysAuthorizeInfo(String customerId, String clientType, String alwaysVisit, String subscribeStatus, String userId, String templateId) { + WxmpTemplateMsgSubscribeStatusEntity userSubscribeStatusEntity = msgSubscribeStatusDao.getUserSubscribeStatusEntity(userId, customerId, clientType, templateId); + if (userSubscribeStatusEntity != null) { + userSubscribeStatusEntity.setAlwaysVisit(alwaysVisit); + userSubscribeStatusEntity.setSubscribeStatus(subscribeStatus); + msgSubscribeStatusDao.updateById(userSubscribeStatusEntity); + return; + } + + userSubscribeStatusEntity = new WxmpTemplateMsgSubscribeStatusEntity(); + userSubscribeStatusEntity.setCustomerId(customerId); + userSubscribeStatusEntity.setClientType(clientType); + userSubscribeStatusEntity.setTemplateId(templateId); + userSubscribeStatusEntity.setAlwaysVisit(alwaysVisit); + userSubscribeStatusEntity.setSubscribeStatus(subscribeStatus); + userSubscribeStatusEntity.setUserId(userId); + msgSubscribeStatusDao.insert(userSubscribeStatusEntity); + } + + /** + * @param msgList + * @return void + * @Description 发送订阅消息 + * @Author liushaowen + * @Date 2020/10/21 15:34 + */ + @Override + public void sendWxSubscribeMessage(List msgList) { + logger.info("待发送订阅消息数量:{}", msgList.size()); + int succecssCount = 0; + for (WxSubscribeMessageFormDTO msg : msgList) { + try { + String userId = msg.getUserId(); + String clientType = msg.getClientType(); + String customerId = msg.getCustomerId(); + String templateId = null; + String openId = null; + //通过userId获取openId + try { + if (WxmpMessageConstant.RESI.equals(clientType)) { + UserBasicInfoFormDTO userBasicInfoFormDTO = new UserBasicInfoFormDTO(); + userBasicInfoFormDTO.setUserId(userId); + openId = epmetUserOpenFeignClient.getUserBasicInfo(userBasicInfoFormDTO).getData().getOpenId(); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + StaffBasicInfoFormDTO staffBasicInfoFormDTO = new StaffBasicInfoFormDTO(); + staffBasicInfoFormDTO.setStaffId(userId); + openId = epmetUserOpenFeignClient.getStaffBasicInfo(staffBasicInfoFormDTO).getData().getOpenId(); + } else { + throw new WxSubscribeException("clientType有误", "", openId); + } + } catch (Exception e) { + throw new WxSubscribeException("连接User服务失败", "", ""); + } + + if (StringUtils.isBlank(openId)) { + throw new WxSubscribeException("openId获取失败", "", ""); + } + + //获取accessToken + StringBuilder key = new StringBuilder(msg.getCustomerId()).append(":").append(msg.getClientType()); + Map authorizerRefreshToken = new HashMap<>(); + try { + authorizerRefreshToken = wxmpMessageRedis.getAuthorizerRefreshToken(key.toString()); + } catch (Exception e) { + throw new WxSubscribeException("连接缓存服务器失败", "", openId); + } + String accessToken = (String) authorizerRefreshToken.get(WxmpMessageConstant.AUTHORIZER_ACCESS_TOKEN); + if (StringUtils.isBlank(accessToken)) { + throw new WxSubscribeException("accessToken获取失败", "", openId); + } + + //获取模板id + if (WxmpMessageConstant.RESI.equals(clientType)) { + templateId = wxmpResiUserSubscribeDao.getResiSubscribeTemplateId(openId, templateId, customerId); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + templateId = wxmpWorkUserSubscribeDao.getWorkSubscribeTemplateId(openId, templateId, customerId); + } + if (StringUtils.isBlank(templateId)) { + throw new WxSubscribeException("获取模板id失败", "", openId); + } + + //判断用户是否有次数 + Integer count = null; + if (WxmpMessageConstant.RESI.equals(clientType)) { + count = wxmpResiUserSubscribeDao.getResiSubscribeInfo(openId, templateId, customerId); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + count = wxmpWorkUserSubscribeDao.getWorkSubscribeInfo(openId, templateId, customerId); + } + if (count == null) { + //用户未订阅 + throw new WxSubscribeException("用户未订阅", templateId, openId); + } + if (count == 0) { + throw new WxSubscribeException("用户可用额度不足", templateId, openId); + } + + //发送消息 + JSONObject jsonObject = new JSONObject(); + JSONObject data = new JSONObject(); + //必填项 + jsonObject.put(WxmpMessageConstant.ACCESS_TOKEN, accessToken); + jsonObject.put(WxmpMessageConstant.TOUSER, openId); + jsonObject.put(WxmpMessageConstant.TEMPLATE_ID, templateId); + data.put(WxmpMessageConstant.TITLE, new JSONObject().put("value", ("您有一条" + msg.getBehaviorType()).substring(0, WxmpMessageConstant.TITLE_LIMIT))); + data.put(WxmpMessageConstant.MESSAGE_CONTENT, new JSONObject().put("value", msg.getMessageContent().substring(0, WxmpMessageConstant.MESSAGE_CONTENT_LIMIT))); + data.put(WxmpMessageConstant.MESSAGE_TIME, new JSONObject().put("value", new SimpleDateFormat("yyyy-MM-dd HH:mm").format(new Date()))); + jsonObject.put(WxmpMessageConstant.DATA, data); + EnvEnum envEnum = EnvEnum.getCurrentEnv(); + //选填项 + if (WxmpMessageConstant.RESI.equals(clientType)) { + jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_RESI); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + jsonObject.put(WxmpMessageConstant.PAGE, WxmpMessageConstant.PAGE_WORK); + } + //开发环境 + if ("dev".equals(envEnum.getCode())) { + jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_DEV); + } + //测试环境 + if ("test".equals(envEnum.getCode())) { + jsonObject.put(WxmpMessageConstant.MINIPROGRAM_STATE, WxmpMessageConstant.STATE_TEST); + } + + String resultStr = HttpClientManager.getInstance().sendPostByJSON(WxmpMessageConstant.SEND_MESSAGE + accessToken, JSON.toJSONString(jsonObject)).getData(); + Map resultMap = JSON.parseObject(resultStr, Map.class); + Object errcode = resultMap.get(WxmpMessageConstant.ERR_CODE); + if (errcode.equals(NumConstant.ZERO)) { + //发送成功 + + //订阅条数-1 + int decrease = 0; + if (WxmpMessageConstant.RESI.equals(clientType)) { + decrease = wxmpResiUserSubscribeDao.decreaseResiSubscribeCount(openId, templateId, customerId, 1); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + decrease = wxmpWorkUserSubscribeDao.decreaseWorkSubscribeCount(openId, templateId, customerId, 1); + } + if (decrease == 0) { + logger.error("消息{}发送成功但订阅条数-1失败", JSON.toJSONString(msg)); + } + //存表 + int saveRes = wxmpMsgSendRecordService.saveRecord(initRecord(msg, templateId, openId, WxmpMessageConstant.SUCCESS)); + if (saveRes == 0) { + logger.error("消息{}发送成功但存入记录表失败", JSON.toJSONString(msg)); + } + } else { + //发送失败 + //用户拒绝,需清空订阅表条数,修改订阅状态 + if (errcode.equals(WxmpMessageConstant.USER_REFUSED)) { + int clear = 0; + if (WxmpMessageConstant.RESI.equals(clientType)) { + clear = wxmpResiUserSubscribeDao.clearResiSubscribeCount(openId, templateId, customerId); + } else if (WxmpMessageConstant.WORK.equals(clientType)) { + clear = wxmpWorkUserSubscribeDao.clearWorkSubscribeCount(openId, templateId, customerId); + } + if (clear == 0) { + logger.error("消息{}发送失败且清空订阅条数失败", JSON.toJSONString(msg)); + } + } + + //抛出错误 + throw new WxSubscribeException(String.valueOf(resultMap.get(WxmpMessageConstant.ERR_MSG)),templateId, openId); + } + + succecssCount++; + } catch (Exception e) { + String errMsg = e.getMessage(); + //ValidateException错误信息为getMsg // if (StringUtils.isBlank(errMsg) && e instanceof ValidateException) { // errMsg = ((ValidateException) e).getMsg(); // } - if (e instanceof WxSubscribeException) { - //存表 - WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = initRecord(msg, ((WxSubscribeException) e).getTemplateId(), ((WxSubscribeException) e).getOpenId(), WxmpMessageConstant.ERROR); - wxmpMsgSendRecordEntity.setReason(errMsg); - int saveRes = wxmpMsgSendRecordService.saveRecord(wxmpMsgSendRecordEntity); - if (saveRes == 0) { - logger.error("消息{}发送失败且存入记录表失败", JSON.toJSONString(msg)); - } - } - - logger.error("消息:{}发送失败,原因是:{}", JSON.toJSONString(msg), errMsg); - continue; - } - } - logger.info("{}条消息中的{}条发送成功", msgList.size(), succecssCount); - } - - //初始化记录对象 - private WxmpMsgSendRecordEntity initRecord(WxSubscribeMessageFormDTO msg, String templateId, String openId, String status) { - WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = new WxmpMsgSendRecordEntity(); - wxmpMsgSendRecordEntity.setCustomerId(msg.getCustomerId()); - wxmpMsgSendRecordEntity.setClientType(msg.getClientType()); - wxmpMsgSendRecordEntity.setTemplateId(templateId); - wxmpMsgSendRecordEntity.setUserId(msg.getUserId()); - wxmpMsgSendRecordEntity.setWxOpenId(openId); - wxmpMsgSendRecordEntity.setBehaviorType(msg.getBehaviorType()); - wxmpMsgSendRecordEntity.setTitle("您有一条" + msg.getBehaviorType()); - wxmpMsgSendRecordEntity.setMessageContent(msg.getMessageContent()); - wxmpMsgSendRecordEntity.setMessageTime(new Date()); - wxmpMsgSendRecordEntity.setResult(status); - return wxmpMsgSendRecordEntity; - } + if (e instanceof WxSubscribeException) { + //存表 + WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = initRecord(msg, ((WxSubscribeException) e).getTemplateId(), ((WxSubscribeException) e).getOpenId(), WxmpMessageConstant.ERROR); + wxmpMsgSendRecordEntity.setReason(errMsg); + int saveRes = wxmpMsgSendRecordService.saveRecord(wxmpMsgSendRecordEntity); + if (saveRes == 0) { + logger.error("消息{}发送失败且存入记录表失败", JSON.toJSONString(msg)); + } + } + + logger.error("消息:{}发送失败,原因是:{}", JSON.toJSONString(msg), errMsg); + continue; + } + } + logger.info("{}条消息中的{}条发送成功", msgList.size(), succecssCount); + } + + //初始化记录对象 + private WxmpMsgSendRecordEntity initRecord(WxSubscribeMessageFormDTO msg, String templateId, String openId, String status) { + WxmpMsgSendRecordEntity wxmpMsgSendRecordEntity = new WxmpMsgSendRecordEntity(); + wxmpMsgSendRecordEntity.setCustomerId(msg.getCustomerId()); + wxmpMsgSendRecordEntity.setClientType(msg.getClientType()); + wxmpMsgSendRecordEntity.setTemplateId(templateId); + wxmpMsgSendRecordEntity.setUserId(msg.getUserId()); + wxmpMsgSendRecordEntity.setWxOpenId(openId); + wxmpMsgSendRecordEntity.setBehaviorType(msg.getBehaviorType()); + wxmpMsgSendRecordEntity.setTitle("您有一条" + msg.getBehaviorType()); + wxmpMsgSendRecordEntity.setMessageContent(msg.getMessageContent()); + wxmpMsgSendRecordEntity.setMessageTime(new Date()); + wxmpMsgSendRecordEntity.setResult(status); + return wxmpMsgSendRecordEntity; + } /** * @return @@ -319,4 +332,150 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { return resultList; } -} + @Override + public WxMsgAuthInfoResultDTO getAuthorizationInfo(String customerId, String clientType, String loginUserId, String templateId) { + return msgSubscribeStatusDao.getUserSubscribeStatusDTO(loginUserId, customerId, clientType, templateId); + } + + @Override + public void saveWxSubscribe(String customerId, String clientType, String templateId, String wxAlwaysVisit, + String wxSubscribeStatus, String behaviorType, String userId) { + + String openId; + // 1. 用户订阅信息表新增或者更新 + if (AppClientConstant.APP_GOV.equals(clientType)) { + // 工作端 + openId = getWorkOpenId(userId); + saveWxWorkSubscribe(customerId, templateId, wxSubscribeStatus, userId, openId); + } else { + //居民端 + openId = getResiOpenId(userId); + saveWxResiSubscribe(customerId, templateId, wxSubscribeStatus, userId, openId); + } + + // 2.保存行为记录 + WxmpUserSubscribeRecordEntity record = new WxmpUserSubscribeRecordEntity(); + record.setBehaviorType(behaviorType); + record.setCustomerId(customerId); + record.setTemplateId(templateId); + record.setUserId(userId); + record.setWxAlwaysVisit(wxAlwaysVisit); + record.setWxOpenId(openId); + record.setWxSubscribeStatus(wxSubscribeStatus); + subscribeRecordDao.insert(record); + + // 3.更新用户模板订阅状态 + WxmpTemplateMsgSubscribeStatusEntity subscribeStatusEntity = msgSubscribeStatusDao.getUserSubscribeStatusEntity(userId, customerId, clientType, templateId); + if (subscribeStatusEntity == null) { + subscribeStatusEntity = new WxmpTemplateMsgSubscribeStatusEntity(); + subscribeStatusEntity.setUserId(userId); + subscribeStatusEntity.setWxSubscribeStatus(wxSubscribeStatus); + subscribeStatusEntity.setTemplateId(templateId); + subscribeStatusEntity.setWxAlwaysVisit(wxAlwaysVisit); + subscribeStatusEntity.setCustomerId(customerId); + subscribeStatusEntity.setClientType(clientType); + msgSubscribeStatusDao.insert(subscribeStatusEntity); + return; + } + + subscribeStatusEntity.setWxAlwaysVisit(wxAlwaysVisit); + subscribeStatusEntity.setWxSubscribeStatus(wxSubscribeStatus); + + msgSubscribeStatusDao.updateById(subscribeStatusEntity); + } + + /** + * @Description 保存居民端微信订阅信息 + * @return void + * @author wxz + * @date 2020.10.22 09:56 + */ + private void saveWxResiSubscribe(String customerId, String templateId, String wxSubscribeStatus, String userId, String openId) { + + WxmpResiUserSubscribeEntity wxResiSubscribe = resiUserSubscribeDao.getWxResiSubscribe(userId, customerId, templateId); + if (wxResiSubscribe == null) { + WxmpResiUserSubscribeEntity insert = new WxmpResiUserSubscribeEntity(); + insert.setCount(WxMsgTemplateSubscribeStatus.SUBSCRIBE.equals(wxSubscribeStatus) ? 1 : 0); + insert.setCustomerId(customerId); + insert.setTemplateId(templateId); + insert.setUserId(userId); + insert.setWxOpenId(openId); + insert.setWxSubscribeStatus(wxSubscribeStatus); + return; + } + + if (WxMsgTemplateSubscribeStatus.SUBSCRIBE.equals(wxSubscribeStatus)) { + resiUserSubscribeDao.incrSubscribeCount(1, userId, customerId, templateId, openId); + } else { + resiUserSubscribeDao.unSubscribe(userId, customerId, templateId, openId); + } + } + + /** + * @Description 保存工作端订阅信息 + * @return void + * @author wxz + * @date 2020.10.22 14:21 + */ + private void saveWxWorkSubscribe(String customerId, String templateId, String wxSubscribeStatus, String userId, String openId) { + WxmpWorkUserSubscribeEntity wxWorkSubscribe = wxmpWorkUserSubscribeDao.getWxWorkSubscribe(userId, customerId, templateId); + if (wxWorkSubscribe == null) { + WxmpWorkUserSubscribeEntity insert = new WxmpWorkUserSubscribeEntity(); + insert.setCount(WxMsgTemplateSubscribeStatus.SUBSCRIBE.equals(wxSubscribeStatus) ? 1 : 0); + insert.setCustomerId(customerId); + insert.setTemplateId(templateId); + insert.setUserId(userId); + insert.setWxOpenId(openId); + insert.setWxSubscribeStatus(wxSubscribeStatus); + wxmpWorkUserSubscribeDao.insert(insert); + return ; + } + + if (WxMsgTemplateSubscribeStatus.SUBSCRIBE.equals(wxSubscribeStatus)) { + wxmpWorkUserSubscribeDao.incrSubscribeCount(1, userId, customerId, templateId, openId); + } else { + wxmpWorkUserSubscribeDao.unSubscribe(userId, customerId, templateId, openId); + } + + } + + /** + * @Description 根据UserId查询居民OpenId + * @return string + * @author wxz + * @date 2020.10.22 13:35 + */ + public String getResiOpenId(String userId) { + UserBasicInfoFormDTO bif = new UserBasicInfoFormDTO(); + bif.setUserId(userId); + Result result = userOpenFeignClient.getUserBasicInfo(bif); + if (!result.success()) { + throw new RenException(String.format("查询居民OpenId失败,userId:%s,错误信息:%s",userId , result.getInternalMsg())); + } + UserBasicInfo userBasicInfo = result.getData(); + if (userBasicInfo == null) { + throw new RenException(String.format("根据userId:%s,没有查询到居民OpenId",userId)); + } + return userBasicInfo.getOpenId(); + } + + /** + * @Description 查询工作人员openId + * @return java.lang.String + * @author wxz + * @date 2020.10.22 14:46 + */ + public String getWorkOpenId(String userId) { + StaffBasicInfoFormDTO form = new StaffBasicInfoFormDTO(); + form.setStaffId(userId); + Result result = userOpenFeignClient.getStaffBasicInfo(form); + if (!result.success()) { + throw new RenException(String.format("查询工作人员OpenId失败,userId:%s,错误信息:%s",userId , result.getInternalMsg())); + } + StaffBasicInfo staffBasicInfo = result.getData(); + if (staffBasicInfo == null) { + throw new RenException(String.format("根据userId:%s,没有查询到工作人员OpenId",userId)); + } + return staffBasicInfo.getOpenId(); + } +} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml index 2a1df8a057..099108d016 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpResiUserSubscribeDao.xml @@ -50,4 +50,46 @@ limit 1 + + + update wxmp_resi_user_subscribe + set COUNT=COUNT + #{incr}, + WX_SUBSCRIBE_STATUS = 'subscribe' + where USER_ID = #{userId} + and CUSTOMER_ID = #{customerId} + and TEMPLATE_ID = #{templateId} + and WX_OPEN_ID = #{resiOpenId} + + + + + update wxmp_resi_user_subscribe + set WX_SUBSCRIBE_STATUS = 'unsubscribe', + COUNT = 0 + where USER_ID = #{userId} + and CUSTOMER_ID = #{customerId} + and TEMPLATE_ID = #{templateId} + and WX_OPEN_ID = #{resiOpenId} + + + + diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml index d1fde2360a..fd51895084 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpTemplateMsgSubscribeStatusDao.xml @@ -22,6 +22,7 @@ where USER_ID = #{userId} and CUSTOMER_ID = #{customerId} and CLIENT_TYPE = #{clientType} + and TEMPLATE_ID = #{templateId} \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml index efa31174f9..7c9e547118 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/WxmpWorkUserSubscribeDao.xml @@ -2,6 +2,15 @@ + + update wxmp_work_user_subscribe + set COUNT=COUNT + #{incr}, + WX_SUBSCRIBE_STATUS = 'subscribe' + where USER_ID = #{userId} + and CUSTOMER_ID = #{customerId} + and TEMPLATE_ID = #{templateId} + and WX_OPEN_ID = #{openId} + + + + update wxmp_work_user_subscribe + set WX_SUBSCRIBE_STATUS = 'unsubscribe', + COUNT = 0 + where USER_ID = #{userId} + and CUSTOMER_ID = #{customerId} + and TEMPLATE_ID = #{templateId} + and WX_OPEN_ID = #{resiOpenId} + + + From 51a15a882223cf002efc7ef9b201988563174ebd Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 23 Oct 2020 14:37:34 +0800 Subject: [PATCH 35/42] =?UTF-8?q?=E5=86=B2=E7=AA=81=E8=A7=A3=E5=86=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WxmpMessageServiceImpl.java | 29 ++++++++----------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java index be44604e64..90e455ce8a 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/WxmpMessageServiceImpl.java @@ -19,25 +19,28 @@ package com.epmet.service.impl; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.epmet.commons.tools.constant.AppClientConstant; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.enums.EnvEnum; import com.epmet.commons.tools.exception.RenException; -import com.epmet.commons.tools.exception.ValidateException; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.HttpClientManager; import com.epmet.commons.tools.utils.Result; -import com.epmet.commons.tools.validator.ValidatorUtils; +import com.epmet.constant.WxMsgTemplateSubscribeStatus; import com.epmet.constant.WxmpMessageConstant; import com.epmet.dao.WxmpResiUserSubscribeDao; import com.epmet.dao.WxmpTemplateMsgSubscribeStatusDao; +import com.epmet.dao.WxmpUserSubscribeRecordDao; import com.epmet.dao.WxmpWorkUserSubscribeDao; import com.epmet.dto.form.GetTemplateListFormDTO; import com.epmet.dto.form.StaffBasicInfoFormDTO; import com.epmet.dto.form.UserBasicInfoFormDTO; import com.epmet.dto.form.WxSubscribeMessageFormDTO; import com.epmet.dto.result.GetTemplateListResultDTO; -import com.epmet.entity.WxmpMsgSendRecordEntity; -import com.epmet.entity.WxmpTemplateMsgSubscribeStatusEntity; +import com.epmet.dto.result.StaffBasicInfo; +import com.epmet.dto.result.UserBasicInfo; +import com.epmet.dto.result.WxMsgAuthInfoResultDTO; +import com.epmet.entity.*; import com.epmet.exception.WxSubscribeException; import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.redis.WxmpMessageRedis; @@ -50,9 +53,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.text.ParseException; import java.text.SimpleDateFormat; -import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -88,12 +89,6 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { @Autowired private WxmpUserSubscribeRecordDao subscribeRecordDao; - @Autowired - private WxmpResiUserSubscribeDao resiUserSubscribeDao; - - @Autowired - private EpmetUserOpenFeignClient userOpenFeignClient; - /** * @Description 保存系统授权信息 * @return void @@ -389,7 +384,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { */ private void saveWxResiSubscribe(String customerId, String templateId, String wxSubscribeStatus, String userId, String openId) { - WxmpResiUserSubscribeEntity wxResiSubscribe = resiUserSubscribeDao.getWxResiSubscribe(userId, customerId, templateId); + WxmpResiUserSubscribeEntity wxResiSubscribe = wxmpResiUserSubscribeDao.getWxResiSubscribe(userId, customerId, templateId); if (wxResiSubscribe == null) { WxmpResiUserSubscribeEntity insert = new WxmpResiUserSubscribeEntity(); insert.setCount(WxMsgTemplateSubscribeStatus.SUBSCRIBE.equals(wxSubscribeStatus) ? 1 : 0); @@ -402,9 +397,9 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { } if (WxMsgTemplateSubscribeStatus.SUBSCRIBE.equals(wxSubscribeStatus)) { - resiUserSubscribeDao.incrSubscribeCount(1, userId, customerId, templateId, openId); + wxmpResiUserSubscribeDao.incrSubscribeCount(1, userId, customerId, templateId, openId); } else { - resiUserSubscribeDao.unSubscribe(userId, customerId, templateId, openId); + wxmpResiUserSubscribeDao.unSubscribe(userId, customerId, templateId, openId); } } @@ -445,7 +440,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { public String getResiOpenId(String userId) { UserBasicInfoFormDTO bif = new UserBasicInfoFormDTO(); bif.setUserId(userId); - Result result = userOpenFeignClient.getUserBasicInfo(bif); + Result result = epmetUserOpenFeignClient.getUserBasicInfo(bif); if (!result.success()) { throw new RenException(String.format("查询居民OpenId失败,userId:%s,错误信息:%s",userId , result.getInternalMsg())); } @@ -465,7 +460,7 @@ public class WxmpMessageServiceImpl implements WxmpMessageService { public String getWorkOpenId(String userId) { StaffBasicInfoFormDTO form = new StaffBasicInfoFormDTO(); form.setStaffId(userId); - Result result = userOpenFeignClient.getStaffBasicInfo(form); + Result result = epmetUserOpenFeignClient.getStaffBasicInfo(form); if (!result.success()) { throw new RenException(String.format("查询工作人员OpenId失败,userId:%s,错误信息:%s",userId , result.getInternalMsg())); } From 3821adec241e4bfac1bca2975d9e9749ad42f630 Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 23 Oct 2020 14:38:52 +0800 Subject: [PATCH 36/42] =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet-message-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/epmet-message/epmet-message-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-dev.yml b/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-dev.yml index fca864f866..05c7e635e3 100644 --- a/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-dev.yml +++ b/epmet-module/epmet-message/epmet-message-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-message-server: container_name: epmet-message-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/epmet-message-server:0.3.30 + image: 192.168.1.130:10080/epmet-cloud-dev/epmet-message-server:0.3.31 ports: - "8085:8085" network_mode: host # 使用现有网络 diff --git a/epmet-module/epmet-message/epmet-message-server/pom.xml b/epmet-module/epmet-message/epmet-message-server/pom.xml index 16ebfb8fbe..6a93633d7b 100644 --- a/epmet-module/epmet-message/epmet-message-server/pom.xml +++ b/epmet-module/epmet-message/epmet-message-server/pom.xml @@ -2,7 +2,7 @@ 4.0.0 - 0.3.30 + 0.3.31 com.epmet epmet-message From fd678eddb710c5dd23caf74b736909e18adaf273 Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 23 Oct 2020 14:46:01 +0800 Subject: [PATCH 37/42] =?UTF-8?q?=E5=BE=AE=E8=B0=83=E5=90=8E=E9=97=A8?= =?UTF-8?q?=E5=A4=96=E9=83=A8=E8=B0=83=E7=94=A8=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../datareport/controller/backdoor/BackDoorController.java | 4 ++-- .../epmet/datareport/service/backdoor/BackDoorService.java | 2 +- .../service/backdoor/impl/BackDoorServiceImpl.java | 6 +++--- .../com/epmet/utils/externalapp/ExtAppJwtTokenUtils.java | 4 ++++ 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java index 5da98ec9c7..723d1e9735 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java @@ -27,9 +27,9 @@ public class BackDoorController { * @date 2020/10/23 1:44 下午 */ @PostMapping("redirect/external") - public String backDoor(@RequestHeader(value = "Data-Type", defaultValue = "real", required = false) String dataType, + public Object backDoor(@RequestHeader(value = "Data-Type", defaultValue = "real", required = false) String dataType, @RequestHeader("AppId") String appId, @RequestHeader("target") String target, - @RequestBody(required = false) String targetParam) { + @RequestBody(required = false) Object targetParam) { return backDoorService.redirect(dataType, appId, target, targetParam); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java index ecb40a843e..afb5fc93bc 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java @@ -6,6 +6,6 @@ package com.epmet.datareport.service.backdoor; */ public interface BackDoorService { - String redirect(String dataType, String appId, String target, String o); + Object redirect(String dataType, String appId, String target, Object o); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java index 9a10e683c8..79f42baaa2 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java @@ -27,7 +27,7 @@ public class BackDoorServiceImpl implements BackDoorService { private EpmetCommonServiceOpenFeignClient commonServiceOpenFeignClient; @Override - public String redirect(String dataType, String appId, String target, String targetParam) { + public Object redirect(String dataType, String appId, String target, Object targetParam) { Result appIdInfoResultDTOResult = commonServiceOpenFeignClient.appIdInfo(appId); if (!appIdInfoResultDTOResult.success()) { throw new RenException("获取accessToken失败......"); @@ -39,11 +39,11 @@ public class BackDoorServiceImpl implements BackDoorService { headerMap.put("AppId", data.getAppId()); headerMap.put("AuthType", "jwt"); headerMap.put("Data-Type",dataType); - Result stringResult = HttpClientManager.getInstance().sendPostByJSONAndHeader(url, targetParam, headerMap); + Result stringResult = HttpClientManager.getInstance().sendPostByJSONAndHeader(url, JSON.toJSONString(targetParam), headerMap); log.info(JSON.toJSONString(stringResult)); if (!stringResult.success()){ throw new RenException("请求【"+url+"】失败......"+stringResult.error()); } - return stringResult.getData(); + return JSON.parseObject(stringResult.getData()); } } diff --git a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/externalapp/ExtAppJwtTokenUtils.java b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/externalapp/ExtAppJwtTokenUtils.java index 147c3b540c..1714ed728a 100644 --- a/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/externalapp/ExtAppJwtTokenUtils.java +++ b/epmet-module/epmet-common-service/common-service-server/src/main/java/com/epmet/utils/externalapp/ExtAppJwtTokenUtils.java @@ -90,4 +90,8 @@ public class ExtAppJwtTokenUtils { return createToken(claim, secret); } + public static void main(String[] args) { + genTestToken(); + } + } From 970757119c1e21b4bd025a4d095c6045b1d0ee63 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 14:47:33 +0800 Subject: [PATCH 38/42] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E8=AF=A6=E6=83=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/screen/ScreenDifficultyDataDao.xml | 14 ++++++++++++-- .../epmet/controller/ProjectTraceController.java | 1 - 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenDifficultyDataDao.xml b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenDifficultyDataDao.xml index dfdc3c2f26..2c7d900a41 100644 --- a/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenDifficultyDataDao.xml +++ b/epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenDifficultyDataDao.xml @@ -30,13 +30,23 @@ DESC + + + + + + + + + + - SELECT dd.event_title AS eventTitle, dd.EVENT_CONTENT AS eventContent, dd.EVENT_SOURCE AS eventSource, - GROUP_CONCAT( did.EVENT_IMG_URL ) AS imgUrlList + did.EVENT_IMG_URL AS imgUrl FROM screen_difficulty_data dd LEFT JOIN screen_difficulty_img_data did ON did.EVENT_ID = dd.EVENT_ID diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java index 9ca5fdc0db..bbdfa5378b 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectTraceController.java @@ -186,7 +186,6 @@ public class ProjectTraceController { * @Description 项目跟踪-项目处理进展列表 **/ @PostMapping("processlistnotrule") - @RequirePermission(requirePermission = RequirePermissionEnum.WORK_PROJECT_TRACE_DETAIL) public Result> processListNotRule(@RequestBody ProcessListFormDTO formDTO) { ValidatorUtils.validateEntity(formDTO); return new Result>().ok(projectProcessService.progressList(formDTO)); From 549333b8d0af32d69aa8fa6d193c3b5bbb43bb4c Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 14:50:38 +0800 Subject: [PATCH 39/42] =?UTF-8?q?report,project=E6=9C=8D=E5=8A=A1=E5=8D=87?= =?UTF-8?q?=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-report-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/data-report/data-report-server/pom.xml | 2 +- .../gov-project-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/gov-project/gov-project-server/pom.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml index f1cf6f17b3..6f450bdf24 100644 --- a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-report-server: container_name: data-report-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.122 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.123 ports: - "8109:8109" diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml index f8cc976926..477d4e32f9 100644 --- a/epmet-module/data-report/data-report-server/pom.xml +++ b/epmet-module/data-report/data-report-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.122 + 0.3.123 data-report-server diff --git a/epmet-module/gov-project/gov-project-server/deploy/docker-compose-dev.yml b/epmet-module/gov-project/gov-project-server/deploy/docker-compose-dev.yml index f6b9f0b394..90d1494ba9 100644 --- a/epmet-module/gov-project/gov-project-server/deploy/docker-compose-dev.yml +++ b/epmet-module/gov-project/gov-project-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: gov-project-server: container_name: gov-project-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/gov-project-server:0.3.51 + image: 192.168.1.130:10080/epmet-cloud-dev/gov-project-server:0.3.52 ports: - "8102:8102" network_mode: host # 使用现有网络 diff --git a/epmet-module/gov-project/gov-project-server/pom.xml b/epmet-module/gov-project/gov-project-server/pom.xml index 1f6fab724e..93c1db8fe9 100644 --- a/epmet-module/gov-project/gov-project-server/pom.xml +++ b/epmet-module/gov-project/gov-project-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.51 + 0.3.52 gov-project com.epmet From cc660013d83688ed07fae6b019a57652eb775d6b Mon Sep 17 00:00:00 2001 From: wxz Date: Fri, 23 Oct 2020 15:10:13 +0800 Subject: [PATCH 40/42] =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-gateway/deploy/docker-compose-dev.yml | 2 +- epmet-gateway/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-gateway/deploy/docker-compose-dev.yml b/epmet-gateway/deploy/docker-compose-dev.yml index b0b4e6e3f3..27b22e5d4a 100644 --- a/epmet-gateway/deploy/docker-compose-dev.yml +++ b/epmet-gateway/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: epmet-gateway-server: container_name: epmet-gateway-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/epmet-gateway:0.3.44 + image: 192.168.1.130:10080/epmet-cloud-dev/epmet-gateway:0.3.45 ports: - "8080:8080" network_mode: host # 使用现有网络 diff --git a/epmet-gateway/pom.xml b/epmet-gateway/pom.xml index f7a12e7132..ad2a59616e 100644 --- a/epmet-gateway/pom.xml +++ b/epmet-gateway/pom.xml @@ -2,7 +2,7 @@ 4.0.0 - 0.3.44 + 0.3.45 com.epmet epmet-cloud From 2fccb11d764f568deb207a457c19d7ac25369c18 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 15:12:50 +0800 Subject: [PATCH 41/42] =?UTF-8?q?backDoor=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/commons/tools/enums/EnvEnum.java | 18 ++++++++++++------ .../backdoor/BackDoorController.java | 3 ++- .../service/backdoor/BackDoorService.java | 2 +- .../backdoor/impl/BackDoorServiceImpl.java | 5 +++-- 4 files changed, 18 insertions(+), 10 deletions(-) diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/EnvEnum.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/EnvEnum.java index ed782790e8..d0df724665 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/EnvEnum.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/EnvEnum.java @@ -11,21 +11,23 @@ import org.springframework.core.env.Environment; * @date 2020-07-03 11:14 **/ public enum EnvEnum { - LOCAL("local", "本地环境"), - DEV("dev", "开发环境"), - TEST("test", "体验环境"), - PROD("prod", "生产环境"), - UN_KNOWN("un_known", "未知"), + LOCAL("local", "本地环境","http://localhost:8080/api/"), + DEV("dev", "开发环境","http://192.168.1.130:8080/api/"), + TEST("test", "体验环境","https://epmet-dev.elinkservice.cn/api/"), + PROD("prod", "生产环境","https://epmet-cloud.elinkservice.cn/api/"), + UN_KNOWN("un_known", "未知","https://epmet-dev.elinkservice.cn/api/"), ; private String code; private String name; + private String url; - EnvEnum(String code, String name) { + EnvEnum(String code, String name, String url) { this.code = code; this.name = name; + this.url = url; } public static EnvEnum getEnum(String code) { @@ -59,4 +61,8 @@ public enum EnvEnum { public String getName() { return name; } + + public String getUrl(){ + return url; + } } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java index 723d1e9735..e8b373f1b1 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/backdoor/BackDoorController.java @@ -28,9 +28,10 @@ public class BackDoorController { */ @PostMapping("redirect/external") public Object backDoor(@RequestHeader(value = "Data-Type", defaultValue = "real", required = false) String dataType, + @RequestHeader(value = "env", defaultValue = "test", required = false) String env, @RequestHeader("AppId") String appId, @RequestHeader("target") String target, @RequestBody(required = false) Object targetParam) { - return backDoorService.redirect(dataType, appId, target, targetParam); + return backDoorService.redirect(dataType, appId, target, targetParam,env); } } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java index afb5fc93bc..381d3874a1 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/BackDoorService.java @@ -6,6 +6,6 @@ package com.epmet.datareport.service.backdoor; */ public interface BackDoorService { - Object redirect(String dataType, String appId, String target, Object o); + Object redirect(String dataType, String appId, String target, Object o,String env); } diff --git a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java index 79f42baaa2..639d39526f 100644 --- a/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java +++ b/epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/backdoor/impl/BackDoorServiceImpl.java @@ -1,6 +1,7 @@ package com.epmet.datareport.service.backdoor.impl; import com.alibaba.fastjson.JSON; +import com.epmet.commons.tools.enums.EnvEnum; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.utils.HttpClientManager; import com.epmet.commons.tools.utils.Result; @@ -27,13 +28,13 @@ public class BackDoorServiceImpl implements BackDoorService { private EpmetCommonServiceOpenFeignClient commonServiceOpenFeignClient; @Override - public Object redirect(String dataType, String appId, String target, Object targetParam) { + public Object redirect(String dataType, String appId, String target, Object targetParam, String env) { Result appIdInfoResultDTOResult = commonServiceOpenFeignClient.appIdInfo(appId); if (!appIdInfoResultDTOResult.success()) { throw new RenException("获取accessToken失败......"); } AppIdInfoResultDTO data = appIdInfoResultDTOResult.getData(); - String url = FactConstant.URL.concat(target); + String url = EnvEnum.getEnum(env).getUrl().concat(target); Map headerMap = new HashMap<>(16); headerMap.put("AccessToken", data.getAccessToken()); headerMap.put("AppId", data.getAppId()); From 31d1fa36c694d8cede7f5a52f121e2e6b459f065 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 23 Oct 2020 15:13:54 +0800 Subject: [PATCH 42/42] =?UTF-8?q?report=E6=9C=8D=E5=8A=A1=E5=8D=87?= =?UTF-8?q?=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-report-server/deploy/docker-compose-dev.yml | 2 +- epmet-module/data-report/data-report-server/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml index 6f450bdf24..b6324af412 100644 --- a/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml +++ b/epmet-module/data-report/data-report-server/deploy/docker-compose-dev.yml @@ -2,7 +2,7 @@ version: "3.7" services: data-report-server: container_name: data-report-server-dev - image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.123 + image: 192.168.1.130:10080/epmet-cloud-dev/data-report-server:0.3.124 ports: - "8109:8109" diff --git a/epmet-module/data-report/data-report-server/pom.xml b/epmet-module/data-report/data-report-server/pom.xml index 477d4e32f9..d6ef0be372 100644 --- a/epmet-module/data-report/data-report-server/pom.xml +++ b/epmet-module/data-report/data-report-server/pom.xml @@ -2,7 +2,7 @@ - 0.3.123 + 0.3.124 data-report-server