From d333beb9bc474f8466c47f23b4eb04024ba4904b Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Mon, 20 Dec 2021 16:08:09 +0800 Subject: [PATCH 01/33] =?UTF-8?q?=E7=BB=84=E7=BB=87=E3=80=81=E9=83=A8?= =?UTF-8?q?=E9=97=A8=E3=80=81=E7=BD=91=E6=A0=BC=E6=B7=BB=E5=8A=A0=E7=BC=96?= =?UTF-8?q?=E7=A0=81=E3=80=81=E8=B4=9F=E8=B4=A3=E4=BA=BA=E3=80=81=E7=94=B5?= =?UTF-8?q?=E8=AF=9D=E3=80=81=E7=BD=91=E6=A0=BC=E7=B1=BB=E5=9E=8B=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/govorg/CustomerAgencyDTO.java | 15 ++++++++++++++ .../dto/govorg/CustomerDepartmentDTO.java | 15 ++++++++++++++ .../dataaggre/dto/govorg/CustomerGridDTO.java | 20 +++++++++++++++++++ .../entity/govorg/CustomerAgencyEntity.java | 15 ++++++++++++++ .../govorg/CustomerDepartmentEntity.java | 15 ++++++++++++++ .../entity/govorg/CustomerGridEntity.java | 20 +++++++++++++++++++ .../java/com/epmet/dto/CustomerAgencyDTO.java | 15 ++++++++++++++ .../com/epmet/dto/CustomerDepartmentDTO.java | 15 ++++++++++++++ .../java/com/epmet/dto/CustomerGridDTO.java | 20 +++++++++++++++++++ .../epmet/entity/CustomerAgencyEntity.java | 15 ++++++++++++++ .../entity/CustomerDepartmentEntity.java | 14 +++++++++++++ .../com/epmet/entity/CustomerGridEntity.java | 20 +++++++++++++++++++ 12 files changed, 199 insertions(+) diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java index 7c343c5ccc..ec3278cf30 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java @@ -157,4 +157,19 @@ public class CustomerAgencyDTO implements Serializable { * 中心位置纬度 */ private String latitude; + + /** + * 组织编码 + */ + private String code; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java index ca02fda8bf..d7d582819f 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java @@ -94,4 +94,19 @@ public class CustomerDepartmentDTO implements Serializable { */ private Date updatedTime; + /** + * 组织编码 + */ + private String code; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; + } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java index fcb6d13250..010ef74978 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java @@ -133,4 +133,24 @@ public class CustomerGridDTO implements Serializable { * 组织-网格 */ private String gridNamePath; + + /** + * 网格编码 + */ + private String code; + + /** + * 组织编码 + */ + private String gridType; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java index 6c6420ffc8..a21b627eba 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java @@ -108,4 +108,19 @@ public class CustomerAgencyEntity extends BaseEpmetEntity { * 社区 */ private String community; + + /** + * 组织编码 + */ + private String code; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java index 74d4ceddc9..cde4e82e51 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java @@ -64,4 +64,19 @@ public class CustomerDepartmentEntity extends BaseEpmetEntity { * 部门所属的行政地区编码:实际就是所属组织的地区编码 */ private String areaCode; + + /** + * 组织编码 + */ + private String code; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java index 60e35afefa..fbed41d129 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java @@ -79,4 +79,24 @@ public class CustomerGridEntity extends BaseEpmetEntity { * 所有上级组织ID */ private String pids; + + /** + * 网格编码 + */ + private String code; + + /** + * 组织编码 + */ + private String gridType; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerAgencyDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerAgencyDTO.java index e7072c3cdb..71cd074164 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerAgencyDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerAgencyDTO.java @@ -157,4 +157,19 @@ public class CustomerAgencyDTO implements Serializable { * 中心位置纬度 */ private String latitude; + + /** + * 组织编码 + */ + private String code; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerDepartmentDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerDepartmentDTO.java index 3c97da56b3..c9d5ecb757 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerDepartmentDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerDepartmentDTO.java @@ -94,4 +94,19 @@ public class CustomerDepartmentDTO implements Serializable { */ private Date updatedTime; + /** + * 组织编码 + */ + private String code; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java index d58682f00a..3cb395847c 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java @@ -126,4 +126,24 @@ public class CustomerGridDTO implements Serializable { * 所有上级组织名 */ private String allParentName; + + /** + * 网格编码 + */ + private String code; + + /** + * 组织编码 + */ + private String gridType; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerAgencyEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerAgencyEntity.java index ff51b54c01..98b1f83d68 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerAgencyEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerAgencyEntity.java @@ -123,4 +123,19 @@ public class CustomerAgencyEntity extends BaseEpmetEntity { * 中心位置纬度 */ private String latitude; + + /** + * 组织编码 + */ + private String code; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerDepartmentEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerDepartmentEntity.java index cb54609d3f..c3ee0a8033 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerDepartmentEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerDepartmentEntity.java @@ -64,4 +64,18 @@ public class CustomerDepartmentEntity extends BaseEpmetEntity { * 部门所属的行政地区编码:实际就是所属组织的地区编码 */ private String areaCode; + + /** + * 组织编码 + */ + private String code; + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerGridEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerGridEntity.java index 75674491f7..c87e4456fb 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerGridEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerGridEntity.java @@ -84,4 +84,24 @@ public class CustomerGridEntity extends BaseEpmetEntity { * 坐标 */ private String coordinates; + + /** + * 网格编码 + */ + private String code; + + /** + * 组织编码 + */ + private String gridType; + + /** + * 负责人姓名 + */ + private String person; + + /** + * 联系电话 + */ + private String mobile; } From b5300abfc517649554ab5412dddb96f542b485f3 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Tue, 21 Dec 2021 10:46:59 +0800 Subject: [PATCH 02/33] =?UTF-8?q?=E6=B6=88=E6=81=AF=E6=9E=9A=E4=B8=BE?= =?UTF-8?q?=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/constant/UserMessageTypeConstant.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java index adcea05711..3f4407bce8 100644 --- a/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java +++ b/epmet-module/epmet-message/epmet-message-client/src/main/java/com/epmet/constant/UserMessageTypeConstant.java @@ -191,4 +191,16 @@ public interface UserMessageTypeConstant { * user_badge_certificate_record.id */ String BADGE_AUTH_APPLY="badge_auth_apply"; + + /** + * 事件回复、立项、办结操作 + * rsi_event.id + */ + String EVENT ="event "; + + /** + * 需求接单、指派、确认服务时间操作 + * ic_user_demand_rec.id + */ + String DEMAND="demand"; } From d53b46c3236f5b611fb29d1491a831c5204479ee Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Tue, 21 Dec 2021 10:59:02 +0800 Subject: [PATCH 03/33] null --- .../dataaggre/dto/govorg/CustomerAgencyDTO.java | 2 +- .../dto/govorg/CustomerDepartmentDTO.java | 2 +- .../dataaggre/dto/govorg/CustomerGridDTO.java | 2 +- .../entity/govorg/CustomerAgencyEntity.java | 2 +- .../entity/govorg/CustomerDepartmentEntity.java | 2 +- .../entity/govorg/CustomerGridEntity.java | 2 +- .../main/java/com/epmet/dto/CustomerAgencyDTO.java | 2 +- .../java/com/epmet/dto/CustomerDepartmentDTO.java | 2 +- .../main/java/com/epmet/dto/CustomerGridDTO.java | 2 +- .../com/epmet/entity/CustomerAgencyEntity.java | 2 +- .../com/epmet/entity/CustomerDepartmentEntity.java | 3 ++- .../java/com/epmet/entity/CustomerGridEntity.java | 2 +- .../resources/db/migration/V0.0.9__alter_org.sql | 14 ++++++++++++++ 13 files changed, 27 insertions(+), 12 deletions(-) create mode 100644 epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.9__alter_org.sql diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java index ec3278cf30..70c25c839c 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerAgencyDTO.java @@ -166,7 +166,7 @@ public class CustomerAgencyDTO implements Serializable { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java index d7d582819f..096e24acad 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerDepartmentDTO.java @@ -102,7 +102,7 @@ public class CustomerDepartmentDTO implements Serializable { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java index 010ef74978..cacdf2e849 100644 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/CustomerGridDTO.java @@ -147,7 +147,7 @@ public class CustomerGridDTO implements Serializable { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java index a21b627eba..171e01198f 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerAgencyEntity.java @@ -117,7 +117,7 @@ public class CustomerAgencyEntity extends BaseEpmetEntity { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java index cde4e82e51..dc9e882e05 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerDepartmentEntity.java @@ -73,7 +73,7 @@ public class CustomerDepartmentEntity extends BaseEpmetEntity { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java index fbed41d129..c58ce50893 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/entity/govorg/CustomerGridEntity.java @@ -93,7 +93,7 @@ public class CustomerGridEntity extends BaseEpmetEntity { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerAgencyDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerAgencyDTO.java index 71cd074164..9e378778e5 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerAgencyDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerAgencyDTO.java @@ -166,7 +166,7 @@ public class CustomerAgencyDTO implements Serializable { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerDepartmentDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerDepartmentDTO.java index c9d5ecb757..9381a609d0 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerDepartmentDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerDepartmentDTO.java @@ -102,7 +102,7 @@ public class CustomerDepartmentDTO implements Serializable { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java index 3cb395847c..a3600b2e0e 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/CustomerGridDTO.java @@ -140,7 +140,7 @@ public class CustomerGridDTO implements Serializable { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerAgencyEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerAgencyEntity.java index 98b1f83d68..cde41fbecc 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerAgencyEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerAgencyEntity.java @@ -132,7 +132,7 @@ public class CustomerAgencyEntity extends BaseEpmetEntity { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerDepartmentEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerDepartmentEntity.java index c3ee0a8033..bfce4de96f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerDepartmentEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerDepartmentEntity.java @@ -69,10 +69,11 @@ public class CustomerDepartmentEntity extends BaseEpmetEntity { * 组织编码 */ private String code; + /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerGridEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerGridEntity.java index c87e4456fb..49fe1b4bdb 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerGridEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/CustomerGridEntity.java @@ -98,7 +98,7 @@ public class CustomerGridEntity extends BaseEpmetEntity { /** * 负责人姓名 */ - private String person; + private String contacts; /** * 联系电话 diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.9__alter_org.sql b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.9__alter_org.sql new file mode 100644 index 0000000000..4dcc77cba3 --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.9__alter_org.sql @@ -0,0 +1,14 @@ + +ALTER TABLE `customer_agency` +ADD COLUMN `CONTACTS` varchar(64) NULL COMMENT '负责人' AFTER `PARENT_AREA_CODE`, +ADD COLUMN `MOBILE` varchar(32) NULL COMMENT '联系电话' AFTER `PERSON`; + +ALTER TABLE `customer_department` +ADD COLUMN `CODE` varchar(64) NULL COMMENT '编码' AFTER `UPDATED_TIME`, +ADD COLUMN `CONTACTS` varchar(64) NULL COMMENT '负责人' AFTER `CODE`, +ADD COLUMN `MOBILE` varchar(32) NULL COMMENT '联系电话' AFTER `PERSON`; + +ALTER TABLE `customer_grid` +ADD COLUMN `GRID_TYPE` varchar(64) NULL COMMENT '网格类型【字典表sys_dict_data,key:grid_type】' AFTER `PIDS`, +ADD COLUMN `CONTACTS` varchar(64) NULL COMMENT '负责人' AFTER `GRID_TYPE`, +ADD COLUMN `MOBILE` varchar(32) NULL COMMENT '联系电话' AFTER `PERSON`; \ No newline at end of file From 44dde9863286609b9bddc9fbee69f0ab8587a165 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 21 Dec 2021 13:53:42 +0800 Subject: [PATCH 04/33] =?UTF-8?q?=E5=AE=8C=E6=88=90+=E8=AF=84=E4=BB=B7?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/constant/UserDemandConstant.java | 3 ++- .../java/com/epmet/entity/IcUserDemandOperateLogEntity.java | 2 +- .../com/epmet/service/impl/IcUserDemandRecServiceImpl.java | 4 ++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/UserDemandConstant.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/UserDemandConstant.java index 85168b8a32..4d9c087ab8 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/UserDemandConstant.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/constant/UserDemandConstant.java @@ -35,7 +35,7 @@ public interface UserDemandConstant { /** - * 创建需求:create;撤销需求:cancel;指派:assign;接单:take_order;完成:finish;; + * 创建需求:create;撤销需求:cancel;指派:assign;接单:take_order;完成:finish;;评价:evaluate * 更新需求:update */ String CREATE="create"; @@ -44,6 +44,7 @@ public interface UserDemandConstant { String ASSIGN="assign"; String TAKE_ORDER="take_order"; String FINISH="finish"; + String EVALUATE="evaluate"; // 服务方类型:志愿者:volunteer;社会组织:social_org;社区自组织:community_org;区域党建单位:party_unit; String VOLUNTEER="volunteer"; diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcUserDemandOperateLogEntity.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcUserDemandOperateLogEntity.java index 9b6afa0aea..127bc1c9e3 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcUserDemandOperateLogEntity.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcUserDemandOperateLogEntity.java @@ -59,7 +59,7 @@ public class IcUserDemandOperateLogEntity extends BaseEpmetEntity { private String userId; /** - * 创建需求:create;撤销需求:cancel;指派:assign;接单:take_order;完成:finish; + * 创建需求:create;更新需求:update;撤销需求:cancel;指派:assign;接单:take_order;完成:finish;评价:evaluate */ private String actionCode; diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java index e66cb7cdc9..07151b13ac 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java @@ -441,6 +441,10 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl Date: Tue, 21 Dec 2021 14:12:39 +0800 Subject: [PATCH 05/33] =?UTF-8?q?=E5=85=9A=E7=BE=A4=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E4=B8=AD=E5=BF=83=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/IcPartyServiceCenterMatterDTO.java | 5 +++ .../java/com/epmet/dto/MatterListDTO.java | 3 ++ .../com/epmet/dto/form/AllMattersFormDTO.java | 22 ++++++++++ .../epmet/dto/result/AllMattersResultDTO.java | 43 +++++++++++++++++++ .../IcPartyServiceCenterController.java | 14 ++++++ .../epmet/dao/IcPartyServiceCenterDao.java | 9 ++++ .../IcPartyServiceCenterMatterEntity.java | 5 +++ .../service/IcPartyServiceCenterService.java | 9 ++++ .../impl/IcPartyServiceCenterServiceImpl.java | 32 ++++++++++++-- .../db/migration/V0.0.10__add_matter_img.sql | 1 + .../mapper/IcPartyServiceCenterDao.xml | 21 ++++++++- 11 files changed, 159 insertions(+), 5 deletions(-) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AllMattersFormDTO.java create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java create mode 100644 epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.10__add_matter_img.sql diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPartyServiceCenterMatterDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPartyServiceCenterMatterDTO.java index 42b028df98..c946c13431 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPartyServiceCenterMatterDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPartyServiceCenterMatterDTO.java @@ -98,4 +98,9 @@ public class IcPartyServiceCenterMatterDTO implements Serializable { */ private String customerId; + /** + * 封面图 + */ + private String matterImg; + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/MatterListDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/MatterListDTO.java index 95c545f656..d3497bacd1 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/MatterListDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/MatterListDTO.java @@ -38,10 +38,13 @@ public class MatterListDTO implements Serializable { private String appointmentType; + private String matterImg; + public MatterListDTO() { this.sort = NumConstant.ZERO; this.matterName = ""; this.matterId = ""; this.allowTime = ""; + this.matterImg = ""; } } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AllMattersFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AllMattersFormDTO.java new file mode 100644 index 0000000000..6d454b4c98 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/AllMattersFormDTO.java @@ -0,0 +1,22 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2021/12/20 1:50 下午 + * @DESC + */ +@Data +public class AllMattersFormDTO implements Serializable { + + private static final long serialVersionUID = 5292223887794821327L; + + public interface AllMattersForm{} + + @NotBlank(message = "gridId不能为空",groups = AllMattersForm.class) + private String gridId; +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java new file mode 100644 index 0000000000..558e73dfe0 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllMattersResultDTO.java @@ -0,0 +1,43 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2021/12/20 1:51 下午 + * @DESC + */ +@Data +public class AllMattersResultDTO implements Serializable { + + private static final long serialVersionUID = -2859875516671396422L; + + /** + * 可预约事项名字 + */ + private String matterName; + + /** + * 可预约时间 + */ + private String allowTime; + + /** + * 可预约事项ID + */ + private String matterId; + + /** + * 事项封面图 + */ + private String matterImg; + + public AllMattersResultDTO() { + this.matterName = ""; + this.allowTime = ""; + this.matterId = ""; + this.matterImg = ""; + } +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcPartyServiceCenterController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcPartyServiceCenterController.java index a948681219..1fb82337a5 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcPartyServiceCenterController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcPartyServiceCenterController.java @@ -30,6 +30,7 @@ import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.dto.IcPartyServiceCenterDTO; import com.epmet.dto.form.*; +import com.epmet.dto.result.AllMattersResultDTO; import com.epmet.dto.result.AppointmentRecordResultDTO; import com.epmet.dto.result.AppointmentTimeResultDTO; import com.epmet.dto.result.PartyServiceCenterListResultDTO; @@ -204,4 +205,17 @@ public class IcPartyServiceCenterController { return new Result(); } + /** + * @Description 网格所属组织下所有可预约事项 + * @param formDTO + * @author zxc + * @date 2021/12/20 3:17 下午 + */ + @PostMapping("getallmatters") + public Result> getAllMatters(@RequestBody AllMattersFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO, AllMattersFormDTO.AllMattersForm.class); + return new Result>().ok(icPartyServiceCenterService.getAllMatters(formDTO)); + } + + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPartyServiceCenterDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPartyServiceCenterDao.java index b85d2086f0..52a90184cf 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPartyServiceCenterDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcPartyServiceCenterDao.java @@ -18,6 +18,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.result.AllMattersResultDTO; import com.epmet.dto.result.PartyServiceCenterListResultDTO; import com.epmet.entity.IcPartyServiceCenterEntity; import org.apache.ibatis.annotations.Mapper; @@ -42,4 +43,12 @@ public interface IcPartyServiceCenterDao extends BaseDao partyServiceCenterList(@Param("orgId")String orgId); + /** + * @Description 获取网格所属组织下所有的可预约事项 + * @param orgId + * @author zxc + * @date 2021/12/21 1:59 下午 + */ + List getAllMatters(@Param("orgId")String orgId); + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcPartyServiceCenterMatterEntity.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcPartyServiceCenterMatterEntity.java index fd9f55fe13..75ab20add9 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcPartyServiceCenterMatterEntity.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/entity/IcPartyServiceCenterMatterEntity.java @@ -68,4 +68,9 @@ public class IcPartyServiceCenterMatterEntity extends BaseEpmetEntity { */ private String customerId; + /** + * 封面图 + */ + private String matterImg; + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcPartyServiceCenterService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcPartyServiceCenterService.java index 9bbfcaf44e..1c0e805806 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcPartyServiceCenterService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcPartyServiceCenterService.java @@ -22,6 +22,7 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.dto.IcPartyServiceCenterDTO; import com.epmet.dto.form.*; +import com.epmet.dto.result.AllMattersResultDTO; import com.epmet.dto.result.AppointmentRecordResultDTO; import com.epmet.dto.result.AppointmentTimeResultDTO; import com.epmet.dto.result.PartyServiceCenterListResultDTO; @@ -166,4 +167,12 @@ public interface IcPartyServiceCenterService extends BaseService getAllMatters(AllMattersFormDTO formDTO); + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcPartyServiceCenterServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcPartyServiceCenterServiceImpl.java index f15494c546..b2903513f1 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcPartyServiceCenterServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcPartyServiceCenterServiceImpl.java @@ -31,6 +31,7 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.redis.common.CustomerOrgRedis; import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache; +import com.epmet.commons.tools.redis.common.bean.GridInfoCache; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.constant.FieldConstant; @@ -40,10 +41,7 @@ import com.epmet.dao.IcPartyServiceCenterDao; import com.epmet.dto.IcPartyServiceCenterDTO; import com.epmet.dto.TimeDTO; import com.epmet.dto.form.*; -import com.epmet.dto.result.AppointmentExistRecordResultDTO; -import com.epmet.dto.result.AppointmentRecordResultDTO; -import com.epmet.dto.result.AppointmentTimeResultDTO; -import com.epmet.dto.result.PartyServiceCenterListResultDTO; +import com.epmet.dto.result.*; import com.epmet.entity.IcMatterAppointmentRecordEntity; import com.epmet.entity.IcPartyServiceCenterEntity; import com.epmet.entity.IcPartyServiceCenterMatterEntity; @@ -326,6 +324,13 @@ public class IcPartyServiceCenterServiceImpl extends BaseServiceImpl result = baseDao.partyServiceCenterList(formDTO.getOrgId()); if (CollectionUtils.isNotEmpty(result)){ result.forEach(r -> { @@ -435,6 +440,25 @@ public class IcPartyServiceCenterServiceImpl extends BaseServiceImpl getAllMatters(AllMattersFormDTO formDTO) { + GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(formDTO.getGridId()); + if (null == gridInfo){ + throw new EpmetException(String.format("未查询到网格{%s}信息",formDTO.getGridId())); + } + List allMatters = baseDao.getAllMatters(gridInfo.getPid()); + if (CollectionUtils.isNotEmpty(allMatters)){ + return allMatters; + } + return new ArrayList<>(); + } + public List getTimeList(String start,String end,Integer interval){ List result = new ArrayList<>(); List intervalTimeList = getIntervalTimeList(start, end, interval); diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.10__add_matter_img.sql b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.10__add_matter_img.sql new file mode 100644 index 0000000000..9834d6ee2b --- /dev/null +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/db/migration/V0.0.10__add_matter_img.sql @@ -0,0 +1 @@ +alter table ic_party_service_center_matter add COLUMN MATTER_IMG VARCHAR(256) NOT NULL comment '封面图' AFTER END_TIME; \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml index b241afaf64..0231e92015 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml @@ -22,6 +22,7 @@ + + + + \ No newline at end of file From 7293ef76808fabd088e8ac1ffb28a16fa1e6de45 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Tue, 21 Dec 2021 15:35:11 +0800 Subject: [PATCH 06/33] =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=B7=B2=E8=AF=BB?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E3=80=81=E4=BA=8B=E4=BB=B6=E5=9B=9E=E5=A4=8D?= =?UTF-8?q?=E7=AB=8B=E9=A1=B9=E5=8A=9E=E7=BB=93=E6=8E=A8=E9=80=81=E7=AB=99?= =?UTF-8?q?=E5=86=85=E4=BF=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/UserMessageController.java | 13 ++++ .../java/com/epmet/dao/UserMessageDao.java | 6 ++ .../com/epmet/service/UserMessageService.java | 6 ++ .../service/impl/UserMessageServiceImpl.java | 10 +++ .../main/resources/mapper/UserMessageDao.xml | 11 ++++ .../java/com/epmet/dto/form/ReplyFormDTO.java | 2 + .../epmet/constant/UserMessageConstant.java | 20 ++++++ .../controller/ResiEventReplyController.java | 1 + .../com/epmet/dao/ResiEventReportOrgDao.java | 2 + .../service/impl/ProjectTraceServiceImpl.java | 45 ++++++++++++++ .../impl/ResiEventReplyServiceImpl.java | 61 +++++++++++++++++-- .../service/impl/ResiEventServiceImpl.java | 42 ++++++++++++- .../mapper/ResiEventReportOrgDao.xml | 8 +++ 13 files changed, 220 insertions(+), 7 deletions(-) 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 a176b3f2ca..61bfa0166a 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 @@ -18,7 +18,9 @@ package com.epmet.controller; import com.baomidou.mybatisplus.extension.api.R; +import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; @@ -162,4 +164,15 @@ public class UserMessageController { List list = userMessageService.queryStaffMessage(formDTO); return new Result>().ok(list); } + + /** + * @Author sun + * @Description 【消息】删除已读消息列表 + **/ + @PostMapping("delreadmsg") + public Result delReadMsg(@LoginUser TokenDto tokenDto) { + userMessageService.delReadMsg(tokenDto.getUserId()); + return new Result(); + } + } diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/UserMessageDao.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/UserMessageDao.java index bc89c54224..9a5bb0d739 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/UserMessageDao.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/dao/UserMessageDao.java @@ -62,4 +62,10 @@ public interface UserMessageDao extends BaseDao { * @Date 2020/5/17 16:47 **/ List queryStaffMessage(StaffMessageFormDTO formDTO); + + /** + * @Author sun + * @Description 【消息】删除已读消息列表 + **/ + int delReadMsg(@Param("userId") String userId); } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/UserMessageService.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/UserMessageService.java index cdc41470c8..ce8417175c 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/UserMessageService.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/UserMessageService.java @@ -142,4 +142,10 @@ public interface UserMessageService extends BaseService { StaffUnReadMsgResultDTO queryUnReadMsg(StaffMessageCommonFormDTO formDTO); List queryStaffMessage(StaffMessageFormDTO formDTO); + + /** + * @Author sun + * @Description 【消息】删除已读消息列表 + **/ + void delReadMsg(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/UserMessageServiceImpl.java b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/UserMessageServiceImpl.java index eb0e559e74..0bdec194d4 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/UserMessageServiceImpl.java +++ b/epmet-module/epmet-message/epmet-message-server/src/main/java/com/epmet/service/impl/UserMessageServiceImpl.java @@ -209,4 +209,14 @@ public class UserMessageServiceImpl extends BaseServiceImpl list = baseDao.queryStaffMessage(formDTO); return list; } + + /** + * @Author sun + * @Description 【消息】删除已读消息列表 + **/ + @Override + public void delReadMsg(String userId) { + baseDao.delReadMsg(userId); + } + } \ No newline at end of file diff --git a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/UserMessageDao.xml b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/UserMessageDao.xml index 7aca569542..a8e323ccfa 100644 --- a/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/UserMessageDao.xml +++ b/epmet-module/epmet-message/epmet-message-server/src/main/resources/mapper/UserMessageDao.xml @@ -81,4 +81,15 @@ ORDER BY CREATED_TIME DESC LIMIT #{pageNo}, #{pageSize} + + + UPDATE user_message + SET del_flag = '0', + updated_by = #{userId}, + updated_time = NOW() + WHERE + read_flag = 'read' + AND user_id = #{userId} + + \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReplyFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReplyFormDTO.java index a6729ff46f..c3b94741cb 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReplyFormDTO.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ReplyFormDTO.java @@ -31,4 +31,6 @@ public class ReplyFormDTO implements Serializable { */ @NotBlank(message = "userId不能为空",groups = AddUserInternalGroup.class) private String userId; + + private String customerId; } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/UserMessageConstant.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/UserMessageConstant.java index 9a1323f55f..8d40c4ebe9 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/UserMessageConstant.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/UserMessageConstant.java @@ -57,4 +57,24 @@ public interface UserMessageConstant { */ String STAY_REMINDER_MSG_3 = "滞留项目:%n%s"; + /** + * 事件消息标题 + */ + String EVENT_TITILE = "您有一条事件消息!"; + + /** + * 事件被@的人或上报给网格或组织的回复 + */ + String REPLY_EVENT = "%s对您上报的事件进行了回复,请查看。"; + + /** + * 事件被立项 + */ + String PROJECT_EVENT = "%s将您上报的事件转为项目,请查看。"; + + /** + * 事件被办结 + */ + String RCLOSE_PROJECT_EVENT = "%s将您上报的事件状态调整为已办结,请查看。"; + } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventReplyController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventReplyController.java index 0d7f93a2d8..915851c5de 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventReplyController.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventReplyController.java @@ -72,6 +72,7 @@ public class ResiEventReplyController { @PostMapping("govReply") public Result govReply(@LoginUser TokenDto tokenDto,@RequestBody ReplyFormDTO replyFormDTO){ replyFormDTO.setUserId(tokenDto.getUserId()); + replyFormDTO.setCustomerId(tokenDto.getCustomerId()); ValidatorUtils.validateEntity(replyFormDTO,ReplyFormDTO.AddUserShowGroup.class,ReplyFormDTO.AddUserInternalGroup.class); resiEventReplyService.govReply(replyFormDTO); return new Result(); diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java index 0668eb78f7..ddddb65c63 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventReportOrgDao.java @@ -64,4 +64,6 @@ public interface ResiEventReportOrgDao extends BaseDao Integer selectUnReadCount(String agencyId); Integer selectRedCount(String agencyId); + + ResiEventReportOrgEntity getByEventId(@Param("resiEventId") String resiEventId); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java index 1150ecc9f5..c7258c8d50 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectTraceServiceImpl.java @@ -41,6 +41,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -879,6 +880,10 @@ public class ProjectTraceServiceImpl implements ProjectTraceS log.error("【项目流转】上链失败,错误信息:{}", errorMsg); } + //2021.12.21 给报事人推送站内信 sun start + sendMsg(resiEventEntity); + //2021.12.21 给报事人推送站内信 sun end + return resultDTO; } @@ -1011,4 +1016,44 @@ public class ProjectTraceServiceImpl implements ProjectTraceS logger.info("事件立项,推送微信订阅消息"); return epmetMessageOpenFeignClient.sendWxSubscribeMessage(msgList); } + + /** + * @author sun + * 事件立项-给报事人推送站内信 + */ + private void sendMsg(ResiEventEntity resiEventEntity){ + //查询事件上报给网格还是组织信息 + ResiEventReportOrgEntity reportOrg = resiEventReportOrgDao.getByEventId(resiEventEntity.getId()); + String name = ""; + if ("grid".equals(reportOrg.getOrgType())) { + Result gridInfoRes = govOrgOpenFeignClient.queryGridInfo(reportOrg.getOrgId()); + if (!gridInfoRes.success() || null == gridInfoRes.getData()) { + throw new RenException("网格信息查询异常"); + } + name = gridInfoRes.getData().getGridName(); + } else { + AgencyInfoFormDTO dto = new AgencyInfoFormDTO(); + dto.setOrgId(reportOrg.getOrgId()); + dto.setOrgType(reportOrg.getOrgType()); + Result agencyResult = govOrgOpenFeignClient.agencyInfo(dto); + if (!agencyResult.success() || null == agencyResult.getData()) { + throw new RenException("组织信息查询异常"); + } + name = agencyResult.getData().getAgencyName(); + } + UserMessageFormDTO userMessage = new UserMessageFormDTO(); + userMessage.setApp(AppClientConstant.APP_RESI); + userMessage.setCustomerId(resiEventEntity.getCustomerId()); + userMessage.setGridId(resiEventEntity.getGridId()); + String messageContent = String.format(UserMessageConstant.PROJECT_EVENT, name); + userMessage.setMessageContent(messageContent); + userMessage.setReadFlag(ReadFlagConstant.UN_READ); + userMessage.setTitle(UserMessageConstant.EVENT_TITILE); + userMessage.setMessageType(UserMessageTypeConstant.EVENT); + userMessage.setTargetId(resiEventEntity.getId()); + //通知事件上报人 + userMessage.setUserId(resiEventEntity.getReportUserId()); + epmetMessageOpenFeignClient.saveUserMessage(userMessage); + } + } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventReplyServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventReplyServiceImpl.java index 0cc50a69b2..1521c76bc6 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventReplyServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventReplyServiceImpl.java @@ -18,24 +18,28 @@ package com.epmet.service.impl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.AppClientConstant; +import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.scan.param.TextScanParamDTO; import com.epmet.commons.tools.scan.param.TextTaskDTO; import com.epmet.commons.tools.scan.result.SyncScanResult; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.ScanContentUtils; -import com.epmet.constant.EventConstant; -import com.epmet.constant.ResiEventAction; +import com.epmet.constant.*; import com.epmet.dao.*; import com.epmet.dto.CustomerAgencyDTO; import com.epmet.dto.form.ReplyFormDTO; import com.epmet.dto.form.ReplyListFormDTO; +import com.epmet.dto.form.UserMessageFormDTO; +import com.epmet.dto.result.GridInfoResultDTO; import com.epmet.dto.result.ReplyListResultDTO; import com.epmet.dto.result.UserBaseInfoResultDTO; -import com.epmet.entity.ResiEventEntity; -import com.epmet.entity.ResiEventOperationLogEntity; -import com.epmet.entity.ResiEventReplyEntity; +import com.epmet.entity.*; +import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.ResiEventReplyService; @@ -71,6 +75,8 @@ public class ResiEventReplyServiceImpl extends BaseServiceImpl gridInfoRes = govOrgOpenFeignClient.queryGridInfo(reportOrgEntity.getOrgId()); + if (!gridInfoRes.success() || null == gridInfoRes.getData()) { + throw new RenException("网格信息查询异常"); + } + name = gridInfoRes.getData().getGridName(); + } + UserMessageFormDTO userMessage = new UserMessageFormDTO(); + userMessage.setApp(AppClientConstant.APP_RESI); + userMessage.setCustomerId(replyFormDTO.getCustomerId()); + userMessage.setGridId(eventEntity.getGridId()); + String messageContent = String.format(UserMessageConstant.REPLY_EVENT, name); + userMessage.setMessageContent(messageContent); + userMessage.setReadFlag(ReadFlagConstant.UN_READ); + userMessage.setTitle(UserMessageConstant.EVENT_TITILE); + userMessage.setMessageType(UserMessageTypeConstant.EVENT); + userMessage.setTargetId(eventEntity.getId()); + //通知事件上报人 + userMessage.setUserId(eventEntity.getReportUserId()); + epmetMessageOpenFeignClient.saveUserMessage(userMessage); + //2021.12.21 给报事人推送站内信 sun end } private ResiEventEntity queryResiEntity(String resiEventId) { @@ -254,6 +286,25 @@ public class ResiEventReplyServiceImpl extends BaseServiceImpl gridInfoRes = govOrgOpenFeignClient.queryGridInfo(reportOrgEntity.getOrgId()); + if (!gridInfoRes.success() || null == gridInfoRes.getData()) { + throw new RenException("网格信息查询异常"); + } + name = gridInfoRes.getData().getGridName(); + } else { + AgencyInfoFormDTO dto = new AgencyInfoFormDTO(); + dto.setOrgId(reportOrgEntity.getOrgId()); + dto.setOrgType(reportOrgEntity.getOrgType()); + Result agencyResult = govOrgOpenFeignClient.agencyInfo(dto); + if (!agencyResult.success() || null == agencyResult.getData()) { + throw new RenException("组织信息查询异常"); + } + name = agencyResult.getData().getAgencyName(); + } + UserMessageFormDTO userMessage = new UserMessageFormDTO(); + userMessage.setApp(AppClientConstant.APP_RESI); + userMessage.setCustomerId(resiEventEntity.getCustomerId()); + userMessage.setGridId(resiEventEntity.getGridId()); + String messageContent = String.format(UserMessageConstant.RCLOSE_PROJECT_EVENT, name); + userMessage.setMessageContent(messageContent); + userMessage.setReadFlag(ReadFlagConstant.UN_READ); + userMessage.setTitle(UserMessageConstant.EVENT_TITILE); + userMessage.setMessageType(UserMessageTypeConstant.EVENT); + userMessage.setTargetId(resiEventEntity.getId()); + //通知事件上报人 + userMessage.setUserId(resiEventEntity.getReportUserId()); + epmetMessageOpenFeignClient.saveUserMessage(userMessage); + //2021.12.21 给报事人推送站内信 sun end } /** diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventReportOrgDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventReportOrgDao.xml index 1838d12f93..95fafc5135 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventReportOrgDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventReportOrgDao.xml @@ -56,4 +56,12 @@ AND M.ORG_READ='read' and m.RED_DOT='1' + \ No newline at end of file From 20372fa35d89bdd4ad3528aac015d8950c68d4ed Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 21 Dec 2021 15:39:52 +0800 Subject: [PATCH 07/33] =?UTF-8?q?pc=E6=8F=90=E4=BA=A4=E9=9C=80=E6=B1=82?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E6=94=B9=E9=9C=80=E6=B1=82=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E9=9C=80=E6=B1=82=E4=BA=BA=E7=9A=84houseId=EF=BC=8C=E6=88=BF?= =?UTF-8?q?=E5=B1=8B=E5=9C=B0=E5=9D=80=EF=BC=8C=E6=A5=BC=E7=9A=84=E7=BB=8F?= =?UTF-8?q?=E7=BA=AC=E5=BA=A6=EF=BC=8C=E8=AE=B0=E5=BD=95=E5=8F=91=E6=94=BE?= =?UTF-8?q?=E7=A7=AF=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dao/IcResiDemandDictDao.java | 2 + .../epmet/entity/IcResiDemandDictEntity.java | 1 + .../epmet/entity/IcUserDemandRecEntity.java | 28 ++++++++++ .../service/IcResiDemandDictService.java | 9 ++++ .../impl/IcResiDemandDictServiceImpl.java | 5 ++ .../impl/IcUserDemandRecServiceImpl.java | 51 +++++++++++++++++++ .../V0.0.4__awardpoint_volunteerpid.sql | 8 +++ .../resources/mapper/IcResiDemandDictDao.xml | 7 +++ .../com/epmet/dto/result/HouseInfoDTO.java | 14 ++++- .../src/main/resources/mapper/IcHouseDao.xml | 5 +- .../epmet/feign/EpmetUserOpenFeignClient.java | 8 +++ .../EpmetUserOpenFeignClientFallback.java | 5 ++ .../controller/IcResiUserController.java | 14 ++++- .../com/epmet/service/IcResiUserService.java | 7 +++ .../service/impl/IcResiUserServiceImpl.java | 6 +++ 15 files changed, 167 insertions(+), 3 deletions(-) create mode 100644 epmet-module/epmet-heart/epmet-heart-server/src/main/resources/db/migration/V0.0.4__awardpoint_volunteerpid.sql diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/IcResiDemandDictDao.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/IcResiDemandDictDao.java index 211ab20e8d..8142b0c659 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/IcResiDemandDictDao.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/IcResiDemandDictDao.java @@ -66,4 +66,6 @@ public interface IcResiDemandDictDao extends BaseDao { List selectSecondCodes(@Param("customerId") String customerId, @Param("cateogryCodes") List categoryCodes); String selectNameByCode(@Param("customerId")String customerId, @Param("categoryCode") String categoryCode); + + IcResiDemandDictEntity selectByCode(@Param("customerId") String customerId, @Param("categoryCode") String categoryCode); } \ No newline at end of file diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcResiDemandDictEntity.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcResiDemandDictEntity.java index 1b9a30b755..73ed4137d9 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcResiDemandDictEntity.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcResiDemandDictEntity.java @@ -79,4 +79,5 @@ public class IcResiDemandDictEntity extends BaseEpmetEntity { * 1可用,0不可用,11.17 */ private Boolean usableFlag; + } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcUserDemandRecEntity.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcUserDemandRecEntity.java index 5979d780ed..0d54cd6184 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcUserDemandRecEntity.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcUserDemandRecEntity.java @@ -143,4 +143,32 @@ public class IcUserDemandRecEntity extends BaseEpmetEntity { */ private Boolean evaluateFlag; + /** + * 奖励积分 + */ + private Integer awardPoint; + + /** + * 服务地点,工作端指派默认居民居住房屋地址,居民端地图选择 + */ + private String serviceLocation; + + /** + * 门牌号详细地址 + */ + private String locationDetail; + + /** + * 经度,需求人是ic的居民时,取所住楼栋的中心点位 + */ + private String longitude; + + /** + * 纬度,需求人是ic的居民时,取所住楼栋的中心点位 + */ + private String latitude; + /** + * 需求人是ic的居民时,记录下住的房屋id + */ + private String demandUserHouseId; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcResiDemandDictService.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcResiDemandDictService.java index 12cbaf7dad..716956d292 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcResiDemandDictService.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcResiDemandDictService.java @@ -119,4 +119,13 @@ public interface IcResiDemandDictService extends BaseService demandUserRes=epmetUserOpenFeignClient.getIcResiUserDTO(dto.getDemandUserId()); + if(!demandUserRes.success()||null==demandUserRes.getData()){ + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人信息异常"); + } + updateEntity.setDemandUserHouseId(demandUserRes.getData().getVillageId()); + // 查询需求人的居住地址 + Set houseIds=new HashSet<>(); + houseIds.add(updateEntity.getDemandUserHouseId()); + Result> houseInfoRes=govOrgOpenFeignClient.queryListHouseInfo(houseIds); + if(houseInfoRes.success()&&CollectionUtils.isNotEmpty(houseInfoRes.getData())){ + HouseInfoDTO houseInfoDTO=houseInfoRes.getData().get(NumConstant.ZERO); + updateEntity.setServiceLocation(houseInfoDTO.getNeighborAddress(). + concat(houseInfoDTO.getNeighborHoodName()) + .concat(houseInfoDTO.getBuildingName()) + .concat(houseInfoDTO.getUnitName()) + .concat(houseInfoDTO.getDoorName())); + updateEntity.setLongitude(houseInfoDTO.getBuildingLongitude()); + updateEntity.setLatitude(houseInfoDTO.getBuildingLatitude()); + } baseDao.updateById(updateEntity); IcUserDemandOperateLogEntity logEntity=new IcUserDemandOperateLogEntity(); @@ -197,6 +223,31 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl demandUserRes=epmetUserOpenFeignClient.getIcResiUserDTO(fromDTO.getDemandUserId()); + if(!demandUserRes.success()||null==demandUserRes.getData()){ + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人信息异常"); + } + insertEntity.setDemandUserHouseId(demandUserRes.getData().getVillageId()); + // 查询需求人的居住地址 + Set houseIds=new HashSet<>(); + houseIds.add(insertEntity.getDemandUserHouseId()); + Result> houseInfoRes=govOrgOpenFeignClient.queryListHouseInfo(houseIds); + if(houseInfoRes.success()&&CollectionUtils.isNotEmpty(houseInfoRes.getData())){ + HouseInfoDTO houseInfoDTO=houseInfoRes.getData().get(NumConstant.ZERO); + insertEntity.setServiceLocation(houseInfoDTO.getNeighborAddress(). + concat(houseInfoDTO.getNeighborHoodName()) + .concat(houseInfoDTO.getBuildingName()) + .concat(houseInfoDTO.getUnitName()) + .concat(houseInfoDTO.getDoorName())); + insertEntity.setLongitude(houseInfoDTO.getBuildingLongitude()); + insertEntity.setLatitude(houseInfoDTO.getBuildingLatitude()); + } baseDao.insert(insertEntity); IcUserDemandOperateLogEntity logEntity=new IcUserDemandOperateLogEntity(); logEntity.setCustomerId(fromDTO.getCustomerId()); diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/db/migration/V0.0.4__awardpoint_volunteerpid.sql b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/db/migration/V0.0.4__awardpoint_volunteerpid.sql new file mode 100644 index 0000000000..769e943842 --- /dev/null +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/db/migration/V0.0.4__awardpoint_volunteerpid.sql @@ -0,0 +1,8 @@ +alter table ic_user_demand_rec add COLUMN AWARD_POINT int(11) not null default '0' comment '奖励积分', +add COLUMN SERVICE_LOCATION VARCHAR(255) NOT NULL DEFAULT '' COMMENT '服务地点,工作端指派默认居民居住房屋地址,居民端地图选择', +add COLUMN LOCATION_DETAIL VARCHAR(255) DEFAULT'' COMMENT '门牌号详细地址', +add COLUMN LONGITUDE VARCHAR(64) DEFAULT'' COMMENT '经度,需求人是ic的居民时,取所住楼栋的中心点位', +add COLUMN LATITUDE VARCHAR(64) DEFAULT'' COMMENT '纬度,需求人是ic的居民时,取所住楼栋的中心点位', +add COLUMN DEMAND_USER_HOUSE_ID VARCHAR(64) DEFAULT'' COMMENT '需求人是ic的居民时,记录下住的房屋id'; +alter table volunteer_info add COLUMN PID VARCHAR(64) comment '网格所属的组织id' after GRID_ID; +alter table volunteer_info add COLUMN PIDS VARCHAR(255) comment '网格的所有上级' after PID; \ No newline at end of file diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/IcResiDemandDictDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/IcResiDemandDictDao.xml index d9d79ecaec..9be81d0e7e 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/IcResiDemandDictDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/IcResiDemandDictDao.xml @@ -247,4 +247,11 @@ AND m.CUSTOMER_ID = #{customerId} AND m.CATEGORY_CODE = #{categoryCode} + + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java index 5077e99a33..853558739b 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/HouseInfoDTO.java @@ -17,7 +17,10 @@ public class HouseInfoDTO implements Serializable { */ private String homeId; - + /** + * 小区详细地址 + */ + private String neighborAddress; /** * 小区id */ @@ -59,4 +62,13 @@ public class HouseInfoDTO implements Serializable { private String houseType; private String houseName; + + /** + * 楼的经度 + */ + private String buildingLongitude; + /** + * 楼的纬度 + */ + private String buildingLatitude; } diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index 61aa971630..e1162beed5 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -233,6 +233,7 @@ SELECT - ID AS gridId, - IFNULL(GRID_NAME,"") AS gridName, - TOTAL_USER + id AS gridId, + IFNULL(grid_name,"") AS gridName, + total_user, + contacts, + mobile FROM CUSTOMER_GRID From 27dec0dc17f041036856a5fe160aecd83278bb4c Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 21 Dec 2021 17:05:38 +0800 Subject: [PATCH 09/33] =?UTF-8?q?pc=E6=8C=87=E6=B4=BE=E6=97=B6=E5=BF=97?= =?UTF-8?q?=E6=84=BF=E8=80=85=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=EF=BC=8C=E5=BD=93=E5=89=8D=E7=BB=84=E7=BB=87=E5=8F=8A=E4=B8=8B?= =?UTF-8?q?=E7=BA=A7=E6=89=80=E6=9C=89=E5=BF=97=E6=84=BF=E8=80=85=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/IcUserDemandRecController.java | 2 +- .../controller/ResiVolunteerController.java | 2 +- .../java/com/epmet/dao/VolunteerInfoDao.java | 8 ++++++ .../epmet/service/VolunteerInfoService.java | 2 +- .../impl/VolunteerInfoServiceImpl.java | 27 +++++++++++++++++-- .../resources/mapper/VolunteerInfoDao.xml | 10 +++++++ .../epmet/feign/EpmetUserOpenFeignClient.java | 4 +-- 7 files changed, 48 insertions(+), 7 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcUserDemandRecController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcUserDemandRecController.java index 06c991b31c..3e736641e0 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcUserDemandRecController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcUserDemandRecController.java @@ -85,7 +85,7 @@ public class IcUserDemandRecController { formDTO.setStaffId(tokenDto.getUserId()); ValidatorUtils.validateEntity(formDTO, ServiceQueryFormDTO.AddUserInternalGroup.class); if (UserDemandConstant.VOLUNTEER.equals(formDTO.getServiceType())) { - return new Result>().ok(volunteerInfoService.queryListVolunteer(tokenDto.getCustomerId(), formDTO.getServiceName())); + return new Result>().ok(volunteerInfoService.queryListVolunteer(tokenDto.getCustomerId(), formDTO.getStaffId(),formDTO.getServiceName())); } else if (UserDemandConstant.SOCIAL_ORG.equals(formDTO.getServiceType())) { ValidatorUtils.validateEntity(formDTO, ServiceQueryFormDTO.AddUserInternalGroup.class, ServiceQueryFormDTO.SocietyOrgInternalGroup.class); return new Result>().ok(societyOrgService.queryServiceList(formDTO)); diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java index e1d18e5536..749f8dfc3f 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java @@ -125,7 +125,7 @@ public class ResiVolunteerController { */ @PostMapping("listprofile") public Result> queryListVolunteer(@LoginUser TokenDto tokenDto,@RequestBody ServiceQueryFormDTO formDTO){ - return new Result>().ok(volunteerInfoService.queryListVolunteer(tokenDto.getCustomerId(),formDTO.getServiceName())); + return new Result>().ok(volunteerInfoService.queryListVolunteer(tokenDto.getCustomerId(),tokenDto.getUserId(),formDTO.getServiceName())); } /** diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/VolunteerInfoDao.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/VolunteerInfoDao.java index ab0b65bf9c..5dcd379c4b 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/VolunteerInfoDao.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/VolunteerInfoDao.java @@ -74,4 +74,12 @@ public interface VolunteerInfoDao extends BaseDao { * @date 2020.08.13 10:06 **/ List selectVolunteerIds(@Param("customerId")String customerId); + + /** + * + * @param customerId + * @param pids 查询当前组织及下级,所有的志愿者 + * @return + */ + List selectVolunteerByPids(@Param("customerId") String customerId, @Param("pids") String pids); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java index 6a84fb67a1..0e1e309594 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java @@ -94,7 +94,7 @@ public interface VolunteerInfoService extends BaseService { * @param customerId * @return */ - List queryListVolunteer(String customerId,String userRealName); + List queryListVolunteer(String customerId,String staffId,String userRealName); List queryVolunteerPage(String customerId, Integer pageNo, Integer pageSize); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java index ac87cc6b4c..7c2ba743c7 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java @@ -22,13 +22,17 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.MqConstant; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.dto.form.mq.MqBaseMsgDTO; import com.epmet.commons.tools.dto.form.mq.eventmsg.BasePointEventMsg; +import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; import com.epmet.commons.tools.enums.EventEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.redis.RedisKeys; import com.epmet.commons.tools.redis.RedisUtils; +import com.epmet.commons.tools.redis.common.CustomerStaffRedis; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; @@ -231,10 +235,29 @@ public class VolunteerInfoServiceImpl extends BaseServiceImpl queryListVolunteer(String customerId, String userRealName) { + public List queryListVolunteer(String customerId, String staffId,String userRealName) { + CustomerStaffInfoCacheResult staffInfo=CustomerStaffRedis.getStaffInfo(customerId,staffId); + if (null == staffInfo) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询工作人员信息异常"); + } + // 如果是根级组织的工作人员,agencyPids="";正常是以英文冒号隔开 + String pids=""; + if(StringUtils.isBlank(staffInfo.getAgencyPIds())||NumConstant.ZERO_STR.equals(staffInfo.getAgencyPIds())){ + pids=staffInfo.getAgencyId(); + }else{ + pids=staffInfo.getAgencyPIds().concat(StrConstant.COLON).concat(staffInfo.getAgencyId()); + } List resultList = new ArrayList<>(); - List userIds = baseDao.selectVolunteerIds(customerId); + List userIds = baseDao.selectVolunteerByPids(customerId,pids); if (CollectionUtils.isEmpty(userIds)) { return resultList; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml index 4dc80881f2..9f3f83baa4 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml @@ -75,4 +75,14 @@ AND CUSTOMER_ID = #{customerId} order by CREATED_TIME asc + + 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 7aaf02f34e..e503f80275 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 @@ -23,8 +23,8 @@ import java.util.Set; * @author yinzuomei@elink-cn.com * @date 2020/6/4 13:09 */ -//@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class, url = "localhost:8087") -@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class) +@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class, url = "localhost:8087") +//@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class) public interface EpmetUserOpenFeignClient { /** From d66ee305534906545d96eafc5bd22cbb280a5cf6 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 21 Dec 2021 17:06:24 +0800 Subject: [PATCH 10/33] =?UTF-8?q?pc=E6=8C=87=E6=B4=BE=E6=97=B6=E5=BF=97?= =?UTF-8?q?=E6=84=BF=E8=80=85=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=EF=BC=8C=E5=BD=93=E5=89=8D=E7=BB=84=E7=BB=87=E5=8F=8A=E4=B8=8B?= =?UTF-8?q?=E7=BA=A7=E6=89=80=E6=9C=89=E5=BF=97=E6=84=BF=E8=80=85=E3=80=82?= =?UTF-8?q?=E6=94=BE=E5=BC=80url?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/feign/EpmetUserOpenFeignClient.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 e503f80275..7aaf02f34e 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 @@ -23,8 +23,8 @@ import java.util.Set; * @author yinzuomei@elink-cn.com * @date 2020/6/4 13:09 */ -@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class, url = "localhost:8087") -//@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class) +//@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class, url = "localhost:8087") +@FeignClient(name = ServiceConstant.EPMET_USER_SERVER, fallbackFactory = EpmetUserOpenFeignClientFallbackFactory.class) public interface EpmetUserOpenFeignClient { /** From 609f2b05dcaa36f2af642a471d7135f8369c339a Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 21 Dec 2021 17:22:28 +0800 Subject: [PATCH 11/33] =?UTF-8?q?pc=E6=8C=87=E6=B4=BE=E6=97=B6=E5=BF=97?= =?UTF-8?q?=E6=84=BF=E8=80=85=E5=88=97=E8=A1=A8=E4=BF=AE=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=EF=BC=8C=E5=BD=93=E5=89=8D=E7=BB=84=E7=BB=87=E5=8F=8A=E4=B8=8B?= =?UTF-8?q?=E7=BA=A7=E6=89=80=E6=9C=89=E5=BF=97=E6=84=BF=E8=80=85.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/dao/VolunteerInfoDao.java | 8 -------- .../java/com/epmet/entity/VolunteerInfoEntity.java | 11 ++++++++--- .../epmet/service/impl/VolunteerInfoServiceImpl.java | 10 ++++++++-- .../src/main/resources/mapper/VolunteerInfoDao.xml | 10 ---------- 4 files changed, 16 insertions(+), 23 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/VolunteerInfoDao.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/VolunteerInfoDao.java index 5dcd379c4b..ab0b65bf9c 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/VolunteerInfoDao.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/VolunteerInfoDao.java @@ -74,12 +74,4 @@ public interface VolunteerInfoDao extends BaseDao { * @date 2020.08.13 10:06 **/ List selectVolunteerIds(@Param("customerId")String customerId); - - /** - * - * @param customerId - * @param pids 查询当前组织及下级,所有的志愿者 - * @return - */ - List selectVolunteerByPids(@Param("customerId") String customerId, @Param("pids") String pids); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/VolunteerInfoEntity.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/VolunteerInfoEntity.java index fcce38bc75..0f12f0f710 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/VolunteerInfoEntity.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/VolunteerInfoEntity.java @@ -18,13 +18,10 @@ 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; - /** * 志愿者信息 * @@ -67,4 +64,12 @@ public class VolunteerInfoEntity extends BaseEpmetEntity { * 志愿者注册,所在网格名称 */ private String gridName; + /** + * 网格所属的组织id + */ + private String pid; + /** + * 网格的所有上级 + */ + private String pids; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java index 7c2ba743c7..ef5af0c4f4 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java @@ -68,6 +68,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Set; import java.util.function.Function; import java.util.stream.Collectors; @@ -256,12 +257,17 @@ public class VolunteerInfoServiceImpl extends BaseServiceImpl query=new LambdaQueryWrapper<>(); + query.eq(VolunteerInfoEntity::getCustomerId,customerId); + query.likeRight(VolunteerInfoEntity::getPids,pids); + query.select(VolunteerInfoEntity::getUserId); + query.orderByAsc(VolunteerInfoEntity::getCreatedTime); + Set userIds = baseDao.selectObjs(query).stream().map(o->o.toString()).collect(Collectors.toSet()); List resultList = new ArrayList<>(); - List userIds = baseDao.selectVolunteerByPids(customerId,pids); if (CollectionUtils.isEmpty(userIds)) { return resultList; } - Result> userInfoRes = epmetUserOpenFeignClient.queryUserBaseInfo(userIds); + Result> userInfoRes = epmetUserOpenFeignClient.queryUserBaseInfo(new ArrayList<>(userIds)); if (userInfoRes.success() && CollectionUtils.isNotEmpty(userInfoRes.getData())) { Map userMap = userInfoRes.getData().stream().collect(Collectors.toMap(UserBaseInfoResultDTO::getUserId, Function.identity())); for (String userId : userIds) { diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml index 9f3f83baa4..4dc80881f2 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml @@ -75,14 +75,4 @@ AND CUSTOMER_ID = #{customerId} order by CREATED_TIME asc - - From 0faa464b16a68e012614df4426b19ee42ed9c407 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Tue, 21 Dec 2021 17:25:59 +0800 Subject: [PATCH 12/33] =?UTF-8?q?queryHouseInfo=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/IcHouseDao.xml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml index e1162beed5..5e91e7f1cd 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcHouseDao.xml @@ -233,18 +233,18 @@ + + From 15369accedfd43c89b23b8080c339557987afcfd Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 22 Dec 2021 10:14:25 +0800 Subject: [PATCH 14/33] =?UTF-8?q?=E3=80=90=E4=BA=8B=E4=BB=B6=E3=80=91?= =?UTF-8?q?=E7=BD=91=E6=A0=BC=E5=91=98=E6=9C=8D=E5=8A=A1=E7=94=B5=E8=AF=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/form/GridMobileListFormDTO.java | 24 ++++++++ .../dto/result/GridMobileListResultDTO.java | 61 +++++++++++++++++++ .../controller/CustomerStaffController.java | 10 +++ .../java/com/epmet/dao/CustomerStaffDao.java | 8 ++- .../main/java/com/epmet/dao/StaffRoleDao.java | 6 ++ .../epmet/service/CustomerStaffService.java | 6 ++ .../impl/CustomerStaffServiceImpl.java | 44 +++++++++++++ .../resources/mapper/CustomerStaffDao.xml | 1 + .../main/resources/mapper/StaffRoleDao.xml | 19 ++++++ 9 files changed, 178 insertions(+), 1 deletion(-) create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridMobileListFormDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/GridMobileListResultDTO.java diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridMobileListFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridMobileListFormDTO.java new file mode 100644 index 0000000000..6c2e34a3a9 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridMobileListFormDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.form; + +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.NotBlank; + +/** + * @description: 【事件】网格员服务电话 + * @author: sun + */ +@NoArgsConstructor +@Data +public class GridMobileListFormDTO { + + /** + * 网格Id + */ + @NotBlank(message = "网格Id不能为空", groups = Gridobile.class) + private String gridId; + + public interface Gridobile{} + +} diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/GridMobileListResultDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/GridMobileListResultDTO.java new file mode 100644 index 0000000000..6d4e1dded0 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/GridMobileListResultDTO.java @@ -0,0 +1,61 @@ +package com.epmet.dto.result; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import lombok.Data; + +import java.util.List; + +/** + * @description: 【事件】网格员服务电话 + * @author: sun + */ +@Data +public class GridMobileListResultDTO { + /** + * 网格Id + */ + private String gridId; + + /** + * 工作人员Id + */ + private String staffId; + + /** + * 人员名称 + */ + private String staffName; + + /** + * 性别 + */ + private String gender; + + /** + * 工作人员头像 + */ + private String staffHeadPhoto; + + /** + * 人员角色列表 + */ + private List roleList; + + @Data + public static class Role { + /** + * 工作人员Id + */ + @JsonIgnore + private String staffId; + /** + * 角色Id + */ + private String roleId; + + /** + * 角色名称 + */ + private String roleName; + } +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java index 4be5398b9e..cc3911cca3 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java @@ -479,5 +479,15 @@ public class CustomerStaffController { return new Result>().ok(customerStaffService.getByRealNames(formDTO)); } + /** + * @Author sun + * @Description 【事件】网格员服务电话 + **/ + @PostMapping(value = "gridmobilelist") + public Result> gridMobileList(@RequestBody GridMobileListFormDTO formDTO) { + ValidatorUtils.validateEntity(formDTO, GridMobileListFormDTO.Gridobile.class); + return new Result>().ok(customerStaffService.gridMobileList(formDTO.getGridId())); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/CustomerStaffDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/CustomerStaffDao.java index d0ce82f757..f877b1e50b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/CustomerStaffDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/CustomerStaffDao.java @@ -127,7 +127,7 @@ public interface CustomerStaffDao extends BaseDao { * @Author sun * @Description 根据staffId集合查询工作人员基础信息 **/ - List selectStaffByIds(@Param("staffIdList") List staffIdList); + List selectStaffByIds(@Param("staffIdList") List staffIdList); /** * @param staffId @@ -221,4 +221,10 @@ public interface CustomerStaffDao extends BaseDao { * @Description 根据工作人员姓名批量查询基础信息数据 **/ List getByRealNames(GetByRealNamesFormDTO formDTO); + + /** + * @Author sun + * @Description 工作人员基本信息 + **/ + List gridStaffMobileList(List staffIdList); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java index 876634717b..31e6591d92 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java @@ -163,4 +163,10 @@ public interface StaffRoleDao extends BaseDao { * @date 2021/8/19 11:16 上午 */ Set selectRoleStaffIds(@Param("customerId") String customerId,@Param("roleIds") Set roleIds); + + /** + * @Author sun + * @Description 【事件】网格员服务电话 + **/ + List staffRoleList(@Param("staffIds") List staffIds); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java index 08916bfcc8..d7bc875993 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java @@ -341,4 +341,10 @@ public interface CustomerStaffService extends BaseService { * @Description 根据工作人员姓名批量查询基础信息数据 **/ List getByRealNames(GetByRealNamesFormDTO formDTO); + + /** + * @Author sun + * @Description 【事件】网格员服务电话 + **/ + List gridMobileList(String gridId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java index e97ba4e662..cb360e3d08 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java @@ -799,4 +799,48 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl gridMobileList(String gridId) { + List resultList = new ArrayList<>(); + //1.查询网格下工作人员列表 + CommonGridIdFormDTO dto = new CommonGridIdFormDTO(); + dto.setGridId(gridId); + Result> gridStaffs = govOrgOpenFeignClient.getGridStaffs(dto); + if (!gridStaffs.success()) { + throw new RenException("获取网格下工作人员列表失败!"); + } + if (gridStaffs.getData().size() < NumConstant.ONE) { + return resultList; + } + + //2.查询工作人员中拥有网格长网格员角色的人员列表 + List staffRoleList = staffRoleDao.staffRoleList(gridStaffs.getData()); + + //3.查询工作人员基础信息 + List staffIdList = staffRoleList.stream().map(GridMobileListResultDTO.Role::getStaffId).collect(Collectors.toList()); + staffIdList = staffIdList.stream().distinct().collect(Collectors.toList()); + List list = baseDao.selectStaffByIds(staffIdList); + + //4.封装数据并返回 + resultList = ConvertUtils.sourceToTarget(list, GridMobileListResultDTO.class); + List roleList = null; + for (GridMobileListResultDTO re : resultList) { + roleList = new ArrayList<>(); + for (GridMobileListResultDTO.Role r : staffRoleList) { + if (re.getStaffId().equals(r.getStaffId())) { + GridMobileListResultDTO.Role role = ConvertUtils.sourceToTarget(r, GridMobileListResultDTO.Role.class); + roleList.add(role); + } + } + re.setGridId(gridId); + re.setRoleList(roleList); + } + + return resultList; + } + } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml index 37c1b545c0..f441f419af 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml @@ -451,5 +451,6 @@ #{name} + diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml index 05ce74c660..edb8b4e4a4 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml @@ -253,4 +253,23 @@ + + + From c2f209fc8522ba5ad80a2535ea3fd261228d18c0 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 22 Dec 2021 11:17:49 +0800 Subject: [PATCH 15/33] =?UTF-8?q?=E7=BB=84=E7=BB=87=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E5=8A=A0=E8=BF=94=E5=8F=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/dto/result/AgencyListResultDTO.java | 5 ++++- .../java/com/epmet/dto/result/DepartmentListResultDTO.java | 4 ++++ .../java/com/epmet/dto/result/GridBaseInfoResultDTO.java | 5 ++++- .../src/main/resources/mapper/CustomerAgencyDao.xml | 1 + .../src/main/resources/mapper/CustomerDepartmentDao.xml | 1 + .../src/main/resources/mapper/CustomerGridDao.xml | 1 + 6 files changed, 15 insertions(+), 2 deletions(-) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyListResultDTO.java index edfe5e60d5..bb959e6a38 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyListResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AgencyListResultDTO.java @@ -46,6 +46,10 @@ public class AgencyListResultDTO implements Serializable { * 总人数 */ private Integer totalUser; + /** + * 编码 + */ + private String code; /** * 负责人 */ @@ -55,5 +59,4 @@ public class AgencyListResultDTO implements Serializable { */ private String mobile; - } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DepartmentListResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DepartmentListResultDTO.java index 8dde952e1c..e6aa5636bc 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DepartmentListResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/DepartmentListResultDTO.java @@ -46,6 +46,10 @@ public class DepartmentListResultDTO implements Serializable { * 部门下总人数 */ private Integer totalUser = 0; + /** + * 编码 + */ + private String code; /** * 负责人 */ diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridBaseInfoResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridBaseInfoResultDTO.java index 4adaf8b70f..88ec09e037 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridBaseInfoResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridBaseInfoResultDTO.java @@ -29,7 +29,10 @@ public class GridBaseInfoResultDTO implements Serializable { * 网格人数 * */ private Integer totalUser; - + /** + * 编码 + */ + private String code; /** * 负责人 */ diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml index 69e86b72d4..c75ad15069 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerAgencyDao.xml @@ -124,6 +124,7 @@ id AS 'agencyId', organization_name AS 'agencyName', total_user AS 'totalUser', + code 'code', contacts 'contacts', mobile 'mobile' FROM customer_agency diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerDepartmentDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerDepartmentDao.xml index ad8d075ca7..8ed7d3d378 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerDepartmentDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerDepartmentDao.xml @@ -24,6 +24,7 @@ id AS 'departmentId', department_name AS 'departmentName', total_user AS 'totalUser', + code AS 'code', contacts AS 'contacts', mobile AS 'mobile' FROM customer_department diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml index 25e2349baa..f26695e6f8 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml @@ -284,6 +284,7 @@ id AS gridId, IFNULL(grid_name,"") AS gridName, total_user, + code, contacts, mobile FROM From 6c8ee748a0590b91c670f3ee4d7df3b3f8090c7c Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 12:00:21 +0800 Subject: [PATCH 16/33] =?UTF-8?q?=E5=BF=97=E6=84=BF=E8=80=85=E6=B3=A8?= =?UTF-8?q?=E5=86=8C=E8=87=AA=E5=8A=A8=E6=B3=A8=E5=86=8C=E5=B1=85=E6=B0=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/dto/VolunteerInfoDTO.java | 11 +- .../ResiVolunteerAuthenticateFormDTO.java | 37 ++---- .../controller/ResiVolunteerController.java | 7 +- .../epmet/service/VolunteerInfoService.java | 3 +- .../impl/VolunteerInfoServiceImpl.java | 61 ++++++++- .../resources/mapper/VolunteerInfoDao.xml | 7 +- .../epmet/feign/GovOrgOpenFeignClient.java | 4 +- .../ResiVolunteerAuthenticateFormDTO.java | 116 ------------------ .../dto/form/VolunteerRegResiFormDTO.java | 103 ++++++++++++++++ .../epmet/feign/EpmetUserOpenFeignClient.java | 10 +- .../EpmetUserOpenFeignClientFallback.java | 4 +- .../controller/UserBaseInfoController.java | 12 +- .../epmet/service/UserBaseInfoService.java | 6 +- .../epmet/service/UserResiInfoService.java | 8 ++ .../service/impl/UserBaseInfoServiceImpl.java | 43 ++++++- .../service/impl/UserResiInfoServiceImpl.java | 36 +++++- .../epmet/service/impl/UserServiceImpl.java | 5 +- .../main/resources/mapper/UserWechatDao.xml | 4 +- 18 files changed, 292 insertions(+), 185 deletions(-) delete mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/ResiVolunteerAuthenticateFormDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/VolunteerRegResiFormDTO.java diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/VolunteerInfoDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/VolunteerInfoDTO.java index b309d9a7d5..35d451f2a0 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/VolunteerInfoDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/VolunteerInfoDTO.java @@ -17,9 +17,10 @@ package com.epmet.dto; +import lombok.Data; + import java.io.Serializable; import java.util.Date; -import lombok.Data; /** @@ -97,4 +98,12 @@ public class VolunteerInfoDTO implements Serializable { * 志愿者注册,所在网格名称 */ private String gridName; + /** + * 网格所属的组织id + */ + private String pid; + /** + * 网格的所有上级 + */ + private String pids; } diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiVolunteerAuthenticateFormDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiVolunteerAuthenticateFormDTO.java index 0a42ede194..877abcb74c 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiVolunteerAuthenticateFormDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/ResiVolunteerAuthenticateFormDTO.java @@ -17,80 +17,67 @@ import java.io.Serializable; public class ResiVolunteerAuthenticateFormDTO implements Serializable { private static final long serialVersionUID = 1L; - - //>>>>>>>>>>>>>>>>>校验分组开始>>>>>>>>>>>>>>>>>>>>> - /** - * 添加用户操作的内部异常分组 - * 出现错误会提示给前端7000错误码,返回信息为:服务器开小差... - */ public interface AddUserInternalGroup {} - - /** - * 添加用户操作的用户可见异常分组 - * 该分组用于校验需要返回给前端错误信息提示的列,需要继承CustomerClientShowGroup - * 返回错误码为8999,提示信息为DTO中具体的列的校验注解message的内容 - */ public interface AddUserShowGroup extends CustomerClientShowGroup {} - // <<<<<<<<<<<<<<<<<<<校验分组结束<<<<<<<<<<<<<<<<<<<<<<<< - /** * 用户id */ + @NotBlank(message = "tokenDto中获取userId为空", groups = {AddUserInternalGroup.class }) private String userId; /** * 客户id */ - @NotBlank(message = "客户id不能为空", groups = {AddUserShowGroup.class }) + @NotBlank(message = "tokenDto中获取customerId为空", groups = {AddUserInternalGroup.class }) private String customerId; /** * 姓 */ - @NotBlank(message = "姓不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "姓不能为空", groups = {AddUserShowGroup.class }) private String surname; /** * 名 */ - @NotBlank(message = "名不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "名不能为空", groups = {AddUserShowGroup.class }) private String name; /** * 性别(1男2女0未知) */ - @NotBlank(message = "性别不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "性别不能为空", groups = {AddUserShowGroup.class }) private String gender; /** * 手机号 */ - @NotBlank(message = "手机号不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "手机号不能为空", groups = {AddUserShowGroup.class }) private String mobile; /** * 身份证号码 */ - @NotBlank(message = "身份证号码不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "身份证号码不能为空", groups = {AddUserShowGroup.class }) private String idNum; /** * 街道 */ - @NotBlank(message = "街道不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "居住地址:街道不能为空", groups = {AddUserShowGroup.class }) private String street; /** * 小区名 */ - @NotBlank(message = "小区名不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "居住地址:小区名不能为空", groups = {AddUserShowGroup.class }) private String district; /** * 楼栋单元 */ - @NotBlank(message = "楼栋单元不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "居住地址:楼栋单元不能为空", groups = {AddUserShowGroup.class }) private String buildingAddress; /** @@ -101,13 +88,13 @@ public class ResiVolunteerAuthenticateFormDTO implements Serializable { /** * 昵称 */ - @NotBlank(message = "昵称不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "昵称不能为空", groups = {AddUserInternalGroup.class}) private String nickname; /** * 头像 */ - @NotBlank(message = "头像不能为空", groups = {AddUserInternalGroup.class, AddUserShowGroup.class }) + @NotBlank(message = "头像不能为空", groups = {AddUserInternalGroup.class}) private String avatarUrl; /** diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java index 749f8dfc3f..1f4d242f33 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java @@ -60,8 +60,11 @@ public class ResiVolunteerController { **/ @PostMapping("authenticate") public Result authenticate(@LoginUser TokenDto tokenDto, @RequestBody ResiVolunteerAuthenticateFormDTO formDTO) { - ValidatorUtils.validateEntity(formDTO, ResiVolunteerAuthenticateFormDTO.AddUserInternalGroup.class, ResiVolunteerAuthenticateFormDTO.AddUserShowGroup.class); - return volunteerInfoService.authenticate(tokenDto, formDTO); + formDTO.setUserId(tokenDto.getUserId()); + formDTO.setCustomerId(tokenDto.getCustomerId()); + ValidatorUtils.validateEntity(formDTO, ResiVolunteerAuthenticateFormDTO.AddUserShowGroup.class, ResiVolunteerAuthenticateFormDTO.AddUserInternalGroup.class); + volunteerInfoService.authenticate(formDTO); + return new Result(); } /** diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java index 0e1e309594..2db40a7f5b 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java @@ -42,13 +42,12 @@ public interface VolunteerInfoService extends BaseService { /** * 志愿者认证 * - * @param tokenDto * @param formDTO * @return com.epmet.commons.tools.utils.Result * @Author zhangyong * @Date 10:09 2020-07-23 **/ - Result authenticate(TokenDto tokenDto, ResiVolunteerAuthenticateFormDTO formDTO); + void authenticate(ResiVolunteerAuthenticateFormDTO formDTO); /** * 志愿者认证界面,获取用户基础信息+志愿者信息 diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java index ef5af0c4f4..3c76366865 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java @@ -39,10 +39,13 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.SendMqMsgUtils; import com.epmet.constant.SmsTemplateConstant; import com.epmet.dao.VolunteerInfoDao; +import com.epmet.dto.CustomerGridDTO; import com.epmet.dto.HeartUserInfoDTO; import com.epmet.dto.VolunteerInfoDTO; import com.epmet.dto.form.CommonCustomerFormDTO; +import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.dto.form.SendVerificationCodeFormDTO; +import com.epmet.dto.form.VolunteerRegResiFormDTO; import com.epmet.dto.form.resi.ResiSendSmsCodeFormDTO; import com.epmet.dto.form.resi.ResiVolunteerAuthenticateFormDTO; import com.epmet.dto.result.ResiUserBaseInfoResultDTO; @@ -54,6 +57,7 @@ import com.epmet.dto.result.resi.ResiVolunteerInfoResultDTO; import com.epmet.entity.VolunteerInfoEntity; import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; +import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.HeartUserInfoService; import com.epmet.service.VolunteerInfoService; import com.github.pagehelper.PageHelper; @@ -94,8 +98,11 @@ public class VolunteerInfoServiceImpl extends BaseServiceImpl gridInfoRes = govOrgOpenFeignClient.getGridBaseInfoByGridId(customerGridFormDTO); + if (!gridInfoRes.success() || null == gridInfoRes.getData()) { + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询网格信息失败"); + } + insertVolunteer.setGridName(gridInfoRes.getData().getGridName()); + insertVolunteer.setPid(gridInfoRes.getData().getPid()); + insertVolunteer.setPids(gridInfoRes.getData().getPids()); + baseDao.insert(insertVolunteer); + + // 2.2 更新用户信息表的 是否是志愿者标识 + HeartUserInfoDTO userInfoDTO = new HeartUserInfoDTO(); + userInfoDTO.setUserId(formDTO.getUserId()); + userInfoDTO.setVolunteerFlag(true); + heartUserInfoService.updateHeartUserInfoByUserId(userInfoDTO); + + // 2.3发送消息 由积分系统消费消息(需要使用规则) + this.grantActPoints(formDTO); + } + //3、志愿者认证,更新用户基础信息user_base_info+自动注册居民 + VolunteerRegResiFormDTO param = ConvertUtils.sourceToTarget(formDTO, VolunteerRegResiFormDTO.class); + Result regResi=epmetUserOpenFeignClient.volunteerAutoRegResi(param); + if(!regResi.success()){ + logger.warn(String.format("userId:%s,认证志愿者时,自动注册居民失败,返参:%s",formDTO.getUserId(), JSON.toJSONString(regResi))); + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), regResi.getMsg()); + } } private void grantActPoints(ResiVolunteerAuthenticateFormDTO formDTO){ diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml index 4dc80881f2..a518eeed47 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml @@ -55,12 +55,7 @@ + + + + \ No newline at end of file From 38c5cf54e34d82ca25facb7a2ef963f464614bd0 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 22 Dec 2021 16:03:45 +0800 Subject: [PATCH 19/33] =?UTF-8?q?=E4=BA=8B=E4=BB=B6=E4=B8=8A=E6=8A=A5?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=AF=AD=E9=9F=B3=E9=99=84=E4=BB=B6=E3=80=81?= =?UTF-8?q?=E8=AF=AD=E9=9F=B3=E9=99=84=E4=BB=B6=E8=87=AA=E5=8A=A8=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/task/ResiEventAutoAuditTask.java | 30 +++ .../com/epmet/dto/ResiEventScanTaskDTO.java | 100 ++++++++++ .../com/epmet/dto/form/ResiEventFormDTO.java | 9 +- .../feign/GovProjectOpenFeignClient.java | 7 + .../GovProjectOpenFeignClientFallback.java | 9 + .../com/epmet/constant/EventConstant.java | 21 ++ .../epmet/controller/ResiEventController.java | 11 + .../ResiEventScanTaskController.java | 40 ++++ .../com/epmet/dao/ResiEventScanTaskDao.java | 33 +++ .../entity/ResiEventAttachmentEntity.java | 16 ++ .../com/epmet/entity/ResiEventEntity.java | 16 ++ .../epmet/entity/ResiEventScanTaskEntity.java | 71 +++++++ .../service/ResiEventScanTaskService.java | 38 ++++ .../com/epmet/service/ResiEventService.java | 6 + .../impl/ResiEventScanTaskServiceImpl.java | 53 +++++ .../service/impl/ResiEventServiceImpl.java | 188 +++++++++++++++++- .../resources/mapper/ResiEventScanTaskDao.xml | 8 + 17 files changed, 650 insertions(+), 6 deletions(-) create mode 100644 epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ResiEventAutoAuditTask.java create mode 100644 epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ResiEventScanTaskDTO.java create mode 100644 epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventScanTaskController.java create mode 100644 epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventScanTaskDao.java create mode 100644 epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventScanTaskEntity.java create mode 100644 epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventScanTaskService.java create mode 100644 epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventScanTaskServiceImpl.java create mode 100644 epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventScanTaskDao.xml diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ResiEventAutoAuditTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ResiEventAutoAuditTask.java new file mode 100644 index 0000000000..1e56204d0f --- /dev/null +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/ResiEventAutoAuditTask.java @@ -0,0 +1,30 @@ +package com.epmet.task; + +import com.epmet.commons.tools.utils.Result; +import com.epmet.feign.GovProjectOpenFeignClient; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * @author sun + * @dscription 事件语音附件自动审核任务,没两分钟执行一次 + */ +@Slf4j +@Component("resiEventAutoAuditTask") +public class ResiEventAutoAuditTask implements ITask { + + @Autowired + private GovProjectOpenFeignClient govProjectOpenFeignClient; + + @Override + public void run(String params) { + log.info("ResiEventAutoAuditTask定时任务正在执行,参数为:{}", params); + Result result = govProjectOpenFeignClient.autoAudit(); + if (result.success()) { + log.info("ResiEventAutoAuditTask定时任务执行成功"); + } else { + log.error("ResiEventAutoAuditTask定时任务执行失败:" + result.getMsg()); + } + } +} diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ResiEventScanTaskDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ResiEventScanTaskDTO.java new file mode 100644 index 0000000000..303159fbdf --- /dev/null +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ResiEventScanTaskDTO.java @@ -0,0 +1,100 @@ +/** + * 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 lombok.Data; + +import java.io.Serializable; +import java.util.Date; + + +/** + * 事件附件安全校验任务表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-12-22 + */ +@Data +public class ResiEventScanTaskDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 唯一标识 + */ + private String id; + + /** + * 客户ID + */ + private String customerId; + + /** + * 事件Id,关联resi_event的id + */ + private String resiEventId; + + /** + * 事件附件表主键,对应dataId + */ + private String resiEventAttachmentId; + + /** + * 阿里云审核任务Id + */ + private String taskId; + + /** + * 审核状态【auditing: 审核中; +auto_passed: 自动通过; +review:结果不确定,需要人工审核; +block: 结果违规;】 + */ + private String status; + + /** + * 附件类型(视频 - video、 语音 - voice 文件 - doc) + */ + private String attachmentType; + + /** + * 删除标识:0.未删除 1.已删除 + */ + private String delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ResiEventFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ResiEventFormDTO.java index b0d1f4ff99..0a8929b0dd 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ResiEventFormDTO.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ResiEventFormDTO.java @@ -54,9 +54,9 @@ public class ResiEventFormDTO implements Serializable { private String address; /** - * 附件列表 + * 图片附件列表 */ - private List attachmentList; + private List attachmentList; /** * @的人 */ @@ -82,4 +82,9 @@ public class ResiEventFormDTO implements Serializable { */ @NotBlank(message = "customerId不能为空",groups = AddUserInternalGroup.class) private String customerId; + + /** + * 语音附件列表 + */ + private List voiceList; } 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 7824ba71ee..9eaca9c495 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 @@ -134,4 +134,11 @@ public interface GovProjectOpenFeignClient { */ @PostMapping("gov/project/resievent/queryResiEventManageRedDot/{agencyId}") Result queryResiEventManageRedDot(@PathVariable("agencyId") String agencyId); + + /** + * @Author sun + * @Description 定时任务调用-事件语音附件自动审核 + **/ + @PostMapping("gov/project/resievent/autoAudit") + Result autoAudit(); } 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 41f41664c1..04aed95fa5 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 @@ -132,4 +132,13 @@ public class GovProjectOpenFeignClientFallback implements GovProjectOpenFeignCli public Result queryResiEventManageRedDot(String agencyId) { return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "queryResiEventManageRedDot", agencyId); } + + /** + * @Author sun + * @Description 定时任务调用-事件语音附件自动审核 + **/ + @Override + public Result autoAudit() { + return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "autoAudit"); + } } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/EventConstant.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/EventConstant.java index 7daf809615..1b2dceb751 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/EventConstant.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/EventConstant.java @@ -49,4 +49,25 @@ public interface EventConstant { */ String TYPE_GOV = "gov"; String TYPE_RESI = "resi"; + + /** + * 附件文件类型 + * 图片 - image、文档 - doc、语音 - voice、视频 - video + */ + String FILE_IMAGE = "image"; + String FILE_DOC = "doc"; + String FILE_VOICE = "voice"; + String FILE_VIDEO = "video"; + + String AUDITING = "auditing"; + String AUTO_PASSED = "auto_passed"; + String REVIEW = "review"; + String BLOCK = "block"; + String REJECTED = "rejected"; + String APPROVED = "approved"; + String SUBMIT = "submit"; + String IMAGE = "image"; + String VIDEO = "video"; + String VOICE = "voice"; + String DOC = "doc"; } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java index ca48b13304..973bfe0a24 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventController.java @@ -254,4 +254,15 @@ public class ResiEventController { ValidatorUtils.validateEntity(formDTO,ResiEventResearchAnalysisFormDTO.AddUserInternalGroup.class); return new Result().ok(resiEventService.queryResiEventResearchAnalysis(formDTO)); } + + /** + * @Author sun + * @Description 定时任务调用-事件语音附件自动审核 + **/ + @PostMapping("autoAudit") + public Result autoAudit() { + resiEventService.autoAudit(); + return new Result(); + } + } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventScanTaskController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventScanTaskController.java new file mode 100644 index 0000000000..bf86dad1de --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ResiEventScanTaskController.java @@ -0,0 +1,40 @@ +/** + * 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.ResiEventScanTaskService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +/** + * 事件附件安全校验任务表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-12-22 + */ +@RestController +@RequestMapping("resieventscantask") +public class ResiEventScanTaskController { + + @Autowired + private ResiEventScanTaskService resiEventScanTaskService; + + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventScanTaskDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventScanTaskDao.java new file mode 100644 index 0000000000..fa2479ba11 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ResiEventScanTaskDao.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.ResiEventScanTaskEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + * 事件附件安全校验任务表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-12-22 + */ +@Mapper +public interface ResiEventScanTaskDao extends BaseDao { + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventAttachmentEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventAttachmentEntity.java index 255c7c465c..b28acf8317 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventAttachmentEntity.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventAttachmentEntity.java @@ -73,4 +73,20 @@ public class ResiEventAttachmentEntity extends BaseEpmetEntity { */ private Integer sort; + /** + * 附件状态(审核中:auditing; + auto_passed: 自动通过; + review:结果不确定,需要人工审核; + block: 结果违规; + rejected:人工审核驳回; + approved:人工审核通过) + 现在图片是同步审核的,所以图片只有auto_passed一种状态 + */ + private String status; + + /** + * 审核失败原因 + */ + private String reason; + } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventEntity.java index f00dab5a06..ee261096ad 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventEntity.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventEntity.java @@ -143,4 +143,20 @@ public class ResiEventEntity extends BaseEpmetEntity { */ private String closeRemark; + /** + * 事件审核状态[涉及附件审核需要加的状态] + * (审核中:auditing; + * auto_passed: 自动通过; + * review:结果不确定,需要人工审核; + * block: 结果违规; + * rejected:人工审核驳回; + * approved:人工审核通过) + */ + private String auditStatus; + + /** + * 审核理由 + */ + private String auditReason; + } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventScanTaskEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventScanTaskEntity.java new file mode 100644 index 0000000000..360174e83d --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ResiEventScanTaskEntity.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; + +/** + * 事件附件安全校验任务表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-12-22 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("resi_event_scan_task") +public class ResiEventScanTaskEntity extends BaseEpmetEntity { + + private static final long serialVersionUID = 1L; + + /** + * 客户ID + */ + private String customerId; + + /** + * 事件Id,关联resi_event的id + */ + private String resiEventId; + + /** + * 事件附件表主键,对应dataId + */ + private String resiEventAttachmentId; + + /** + * 阿里云审核任务Id + */ + private String taskId; + + /** + * 审核状态【auditing: 审核中; +auto_passed: 自动通过; +review:结果不确定,需要人工审核; +block: 结果违规;】 + */ + private String status; + + /** + * 附件类型(视频 - video、 语音 - voice 文件 - doc) + */ + private String attachmentType; + +} diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventScanTaskService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventScanTaskService.java new file mode 100644 index 0000000000..ec29a6beaf --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventScanTaskService.java @@ -0,0 +1,38 @@ +/** + * 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.entity.ResiEventScanTaskEntity; + +import java.util.List; + +/** + * 事件附件安全校验任务表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-12-22 + */ +public interface ResiEventScanTaskService extends BaseService { + + /** + * @Author sun + * @Description 获取事件附件待审核列表 + **/ + List getScanTaskList(String draftId, String auditing); +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java index c6e52d4cc3..b54bc1dcac 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ResiEventService.java @@ -155,4 +155,10 @@ public interface ResiEventService extends BaseService { * @return */ ResiEventResearchAnalysisResDTO queryResiEventResearchAnalysis(ResiEventResearchAnalysisFormDTO formDTO); + + /** + * @Author sun + * @Description 定时任务调用-事件语音附件自动审核 + **/ + void autoAudit(); } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventScanTaskServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventScanTaskServiceImpl.java new file mode 100644 index 0000000000..53f5c1e53c --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventScanTaskServiceImpl.java @@ -0,0 +1,53 @@ +/** + * 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.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.dao.ResiEventScanTaskDao; +import com.epmet.entity.ResiEventScanTaskEntity; +import com.epmet.service.ResiEventScanTaskService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 事件附件安全校验任务表 + * + * @author generator generator@elink-cn.com + * @since v1.0.0 2021-12-22 + */ +@Service +public class ResiEventScanTaskServiceImpl extends BaseServiceImpl implements ResiEventScanTaskService { + + /** + * @Author sun + * @Description 获取事件附件待审核列表 + **/ + @Override + public List getScanTaskList(String draftId, String status) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(draftId), "RESI_EVENT_ID", draftId); + wrapper.eq(StringUtils.isNotBlank(status),"STATUS", status); + List entityList = baseDao.selectList(wrapper); + return entityList; + + } + +} \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index 67b264d383..0748e862f4 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -27,11 +27,11 @@ import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; -import com.epmet.commons.tools.scan.param.ImgScanParamDTO; -import com.epmet.commons.tools.scan.param.ImgTaskDTO; -import com.epmet.commons.tools.scan.param.TextScanParamDTO; -import com.epmet.commons.tools.scan.param.TextTaskDTO; +import com.epmet.commons.tools.scan.param.*; +import com.epmet.commons.tools.scan.result.AsyncScanResult; +import com.epmet.commons.tools.scan.result.AsyncScanTaskDTO; import com.epmet.commons.tools.scan.result.SyncScanResult; +import com.epmet.commons.tools.scan.result.VoiceResultDTO; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; @@ -48,7 +48,9 @@ import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; import com.epmet.feign.GovIssueOpenFeignClient; import com.epmet.feign.GovOrgOpenFeignClient; +import com.epmet.resi.group.constant.TopicConstant; import com.epmet.service.ProjectCategoryService; +import com.epmet.service.ResiEventScanTaskService; import com.epmet.service.ResiEventService; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @@ -61,6 +63,8 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; /** * 居民报事表 @@ -77,6 +81,10 @@ public class ResiEventServiceImpl extends BaseServiceImpl attachmentEntityList=getAttList(formDTO.getCustomerId(),resiEventEntity.getId(),formDTO.getAttachmentList()); attachmentEntityList.forEach(attachmentEntity->{ resiEventAttachmentDao.insert(attachmentEntity); }); + //5-2.插入语音附件 + if(!org.apache.commons.collections4.CollectionUtils.isEmpty(formDTO.getVoiceList())) { + eventVoiceAttachment(formDTO.getCustomerId(), resiEventEntity.getId(), formDTO.getVoiceList()); + } //6、插入组织表 List orgEntityList=getOrgList(formDTO.getCustomerId(),resiEventEntity.getId(),formDTO.getOrgList()); orgEntityList.forEach(orgEntity->{ @@ -367,6 +394,56 @@ public class ResiEventServiceImpl extends BaseServiceImpl voiceList) { + //1.语音附件存入表中 + List voiceDTOList = new ArrayList<>(); + int sort = 0; + for (FileCommonDTO file : voiceList) { + ResiEventAttachmentEntity entity = new ResiEventAttachmentEntity(); + entity.setCustomerId(customerId); + entity.setResiEventId(resiEventId); + entity.setAttachmentName(file.getName()); + entity.setAttachmentFormat(file.getFormat()); + entity.setAttachmentType(file.getType()); + entity.setAttachmentUrl(file.getUrl()); + entity.setSort(sort); + sort++; + resiEventAttachmentDao.insert(entity); + + VoiceTaskDTO task = new VoiceTaskDTO(); + task.setDataId(entity.getId()); + task.setUrl(file.getUrl()); + voiceDTOList.add(task); + } + //2.语音创建审核任务【定时任务会处理待审核语音后修改数据库数据】 + VoiceScanParamDTO voiceScanParamDTO = new VoiceScanParamDTO(); + voiceScanParamDTO.setTasks(voiceDTOList); + voiceScanParamDTO.setOpenCallBack(false); + Result voiceScanResult = ScanContentUtils.voiceAsyncScan(scanApiUrl.concat(voiceAsyncScanMethod), voiceScanParamDTO); + if (!voiceScanResult.success() || !voiceScanResult.getData().isAllSuccess()) { + throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode()); + } else { + List taskList = voiceScanResult.getData().getSuccessTasks(); + List taskIds = taskList.stream().map(AsyncScanTaskDTO::getTaskId).collect(Collectors.toList()); + //提交记录存入task表 + List scanTaskEntityList = taskList.stream().map(item -> { + ResiEventScanTaskEntity taskEntity = new ResiEventScanTaskEntity(); + taskEntity.setCustomerId(customerId); + taskEntity.setResiEventId(resiEventId); + taskEntity.setResiEventAttachmentId(item.getDataId()); + taskEntity.setTaskId(item.getTaskId()); + taskEntity.setStatus(TopicConstant.AUDITING); + taskEntity.setAttachmentType(TopicConstant.VOICE); + return taskEntity; + }).collect(Collectors.toList()); + resiEventScanTaskService.insertBatch(scanTaskEntityList); + } + } + private void scanContent(String eventContent, List attachmentList) { //事件内容 if (StringUtils.isNotBlank(eventContent)) { @@ -804,5 +881,108 @@ public class ResiEventServiceImpl extends BaseServiceImpl taskList = resiEventScanTaskService.getScanTaskList(null, TopicConstant.AUDITING); + if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(taskList)) { + Map map = taskList.stream().collect(Collectors.toMap(ResiEventScanTaskEntity::getTaskId, Function.identity())); + List taskIds = taskList.stream().map(ResiEventScanTaskEntity::getTaskId).collect(Collectors.toList()); + List draftIds = taskList.stream().map(ResiEventScanTaskEntity::getResiEventId).collect(Collectors.toList()); + Result> voiceResults = ScanContentUtils.voiceResults(scanApiUrl.concat(voiceResultsMethod), taskIds); + if (!voiceResults.success()) { + return; + } + List list = voiceResults.getData(); + for (VoiceResultDTO item : list) { + ResiEventScanTaskEntity taskEntity = map.get(item.getTaskId()); + if (EventConstant.REVIEW.equals(item.getSuggestion())) { + //结果不确定 + ResiEventAttachmentEntity entity = new ResiEventAttachmentEntity(); + entity.setId(taskEntity.getResiEventAttachmentId()); + entity.setStatus(EventConstant.REVIEW); + entity.setReason(item.getLabelDesc()); + resiEventAttachmentDao.updateById(entity); + + taskEntity.setStatus(EventConstant.REVIEW); + resiEventScanTaskService.updateById(taskEntity); + + } else if (EventConstant.BLOCK.equals(item.getSuggestion())) { + //结果违规 + ResiEventAttachmentEntity entity = new ResiEventAttachmentEntity(); + entity.setId(taskEntity.getResiEventAttachmentId()); + entity.setStatus(EventConstant.BLOCK); + entity.setReason(item.getLabelDesc()); + resiEventAttachmentDao.updateById(entity); + + taskEntity.setStatus(EventConstant.BLOCK); + resiEventScanTaskService.updateById(taskEntity); + } else { + //审核通过 + ResiEventAttachmentEntity entity = new ResiEventAttachmentEntity(); + entity.setId(taskEntity.getResiEventAttachmentId()); + entity.setStatus(EventConstant.AUTO_PASSED); + entity.setReason(item.getLabelDesc()); + resiEventAttachmentDao.updateById(entity); + + taskEntity.setStatus(EventConstant.AUTO_PASSED); + resiEventScanTaskService.updateById(taskEntity); + } + } + + //判断事件对应的所有需要审核的附件是否全部审核完成 + draftIds.forEach(draftId -> { + List tasks = resiEventScanTaskService.getScanTaskList(draftId, null); + String status = EventConstant.AUTO_PASSED; + for (ResiEventScanTaskEntity task : tasks) { + if (EventConstant.AUDITING.equals(task.getStatus())) { + status = EventConstant.AUDITING; + break; + } else if (EventConstant.BLOCK.equals(task.getStatus())) { + status = EventConstant.BLOCK; + } else if (EventConstant.REVIEW.equals(task.getStatus())) { + if (!EventConstant.BLOCK.equals(status)) { + status = EventConstant.REVIEW; + } + } else { + if (!EventConstant.BLOCK.equals(status) && !EventConstant.REVIEW.equals(status)) { + status = EventConstant.AUTO_PASSED; + } + } + } + + if (EventConstant.BLOCK.equals(status)) { + //草稿状态更新为block + ResiEventEntity draftEntity = new ResiEventEntity(); + draftEntity.setId(draftId); + draftEntity.setAuditStatus(EventConstant.BLOCK); + draftEntity.setAuditReason("语音存在违规内容"); + baseDao.updateById(draftEntity); + + } else if (EventConstant.REVIEW.equals(status)) { + //草稿状态更新为review + ResiEventEntity draftEntity = new ResiEventEntity(); + draftEntity.setId(draftId); + draftEntity.setAuditStatus(EventConstant.REVIEW); + draftEntity.setAuditReason("需要人工审核"); + baseDao.updateById(draftEntity); + + } else if (EventConstant.AUTO_PASSED.equals(status)) { + //草稿状态更新为auto_passed + ResiEventEntity draftEntity = new ResiEventEntity(); + draftEntity.setId(draftId); + draftEntity.setAuditStatus(EventConstant.REVIEW); + baseDao.updateById(draftEntity); + } + }); + } + + } + } \ No newline at end of file diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventScanTaskDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventScanTaskDao.xml new file mode 100644 index 0000000000..ae523c9093 --- /dev/null +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventScanTaskDao.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file From d47db4ad95b550294e89570a884099d994e1ba20 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Wed, 22 Dec 2021 16:15:02 +0800 Subject: [PATCH 20/33] =?UTF-8?q?=E5=8A=A0=E8=BF=94=E5=8F=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/dto/result/GridBaseInfoResultDTO.java | 6 +++++- .../src/main/resources/mapper/CustomerGridDao.xml | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridBaseInfoResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridBaseInfoResultDTO.java index 88ec09e037..c8d547fe17 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridBaseInfoResultDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/GridBaseInfoResultDTO.java @@ -32,7 +32,11 @@ public class GridBaseInfoResultDTO implements Serializable { /** * 编码 */ - private String code; + private String code = ""; + /** + * 编码 + */ + private String gridType = ""; /** * 负责人 */ diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml index f26695e6f8..d5c412343d 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml @@ -285,6 +285,7 @@ IFNULL(grid_name,"") AS gridName, total_user, code, + grid_type, contacts, mobile FROM From eb4d2eb6e69b901fad043e6767652d05c38be79e Mon Sep 17 00:00:00 2001 From: zhaoqifeng Date: Wed, 22 Dec 2021 16:32:05 +0800 Subject: [PATCH 21/33] =?UTF-8?q?=E8=AE=AE=E4=BA=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/CommonIssueListFormDTO.java | 2 ++ .../epmet/service/impl/IssueServiceImpl.java | 26 ++++++++--------- .../src/main/resources/mapper/IssueDao.xml | 4 --- .../dto/form/ShiftProjectListFromDTO.java | 2 ++ .../epmet/dto/result/PendingResultDTO.java | 2 ++ .../epmet/dto/result/ResolvedResultDTO.java | 3 ++ .../epmet/dto/result/UnResolvedResultDTO.java | 2 ++ .../main/java/com/epmet/dao/ProjectDao.java | 10 ++----- .../service/impl/ProjectServiceImpl.java | 28 ++++++++++--------- .../src/main/resources/mapper/ProjectDao.xml | 2 -- .../result/ResiTopicDetailResultDTO.java | 3 +- .../service/impl/ResiTopicServiceImpl.java | 2 ++ .../dto/form/CommonIssueListFormDTO.java | 2 ++ .../dto/result/ClosedIssueListResultDTO.java | 2 ++ .../dto/result/VotingIssueListResultDTO.java | 3 ++ .../epmet/service/impl/IssueServiceImpl.java | 22 +++++++++++---- 16 files changed, 67 insertions(+), 48 deletions(-) diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CommonIssueListFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CommonIssueListFormDTO.java index 925551f55c..bebad0de3d 100644 --- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CommonIssueListFormDTO.java +++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/CommonIssueListFormDTO.java @@ -32,4 +32,6 @@ public class CommonIssueListFormDTO implements Serializable { * 每页多少条 * */ private Integer pageSize = 20; + + private Boolean isPage = true; } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java index f433bd60ed..3cd89730da 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java +++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java @@ -587,9 +587,7 @@ public class IssueServiceImpl extends BaseServiceImpl imp **/ @Override public List votingList(CommonIssueListFormDTO issueListForm) { - issueListForm.setPageNo(null == issueListForm.getPageNo() ? NumConstant.ZERO : - (issueListForm.getPageNo() - NumConstant.ONE)*issueListForm.getPageSize() - ); + PageHelper.startPage(issueListForm.getPageNo(), issueListForm.getPageSize(), issueListForm.getIsPage()); return baseDao.selectVotingList(issueListForm); } @@ -602,9 +600,7 @@ public class IssueServiceImpl extends BaseServiceImpl imp **/ @Override public List closedList(CommonIssueListFormDTO issueListForm) { - issueListForm.setPageNo(null == issueListForm.getPageNo() ? NumConstant.ZERO : - (issueListForm.getPageNo() - NumConstant.ONE)*issueListForm.getPageSize() - ); + PageHelper.startPage(issueListForm.getPageNo(), issueListForm.getPageSize(), issueListForm.getIsPage()); return baseDao.selectClosedList(issueListForm); } @@ -1555,15 +1551,17 @@ public class IssueServiceImpl extends BaseServiceImpl imp } if (CollectionUtils.isNotEmpty(resultList)) { resultList = resultList.stream().sorted(Comparator.comparing(UnResolvedResultDTO::getClosedTime).reversed()).collect(Collectors.toList()); - int fromIndex = (fromDTO.getPageNo() - NumConstant.ONE) * fromDTO.getPageSize(); - int toIndex = fromDTO.getPageNo() * fromDTO.getPageSize(); - if (fromIndex >= resultList.size()) { - return new ArrayList<>(); - } - if (toIndex > resultList.size()) { - toIndex = resultList.size(); + if (fromDTO.getIsPage()) { + int fromIndex = (fromDTO.getPageNo() - NumConstant.ONE) * fromDTO.getPageSize(); + int toIndex = fromDTO.getPageNo() * fromDTO.getPageSize(); + if (fromIndex >= resultList.size()) { + return new ArrayList<>(); + } + if (toIndex > resultList.size()) { + toIndex = resultList.size(); + } + resultList = resultList.subList(fromIndex, toIndex); } - resultList = resultList.subList(fromIndex, toIndex); } return resultList; } diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml index 55648edcad..5194cad10b 100644 --- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml +++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueDao.xml @@ -218,8 +218,6 @@ AND ISSUE_STATUS = 'voting' ORDER BY created_time DESC - LIMIT #{pageNo}, - #{pageSize} @@ -239,8 +237,6 @@ AND RESOLVE_TYPE = 'resolved' ORDER BY created_time DESC - LIMIT #{pageNo}, - #{pageSize} diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/heart/IcUserDemandServiceDao.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/heart/IcUserDemandServiceDao.java index 165ae6b91c..02fc225940 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/heart/IcUserDemandServiceDao.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/heart/IcUserDemandServiceDao.java @@ -40,5 +40,5 @@ public interface IcUserDemandServiceDao extends BaseDao listDemandServeTimes(@Param("customerId") String customerId, @Param("endTime") Date endTime, @Param("serviceType") String serviceType); + List listDemandServeTimes(@Param("customerId") String customerId, @Param("gridId") String gridId, @Param("endTime") Date endTime, @Param("serviceType") String serviceType); } \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactVolunteerServiceDailyEntity.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactVolunteerServiceDailyEntity.java index f2b473bfe9..82687aeba0 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactVolunteerServiceDailyEntity.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/stats/FactVolunteerServiceDailyEntity.java @@ -43,6 +43,11 @@ public class FactVolunteerServiceDailyEntity extends BaseEpmetEntity { */ private String customerId; + /** + * 网格ID + */ + private String gridId; + /** * yyyyMMdd */ @@ -82,5 +87,9 @@ public class FactVolunteerServiceDailyEntity extends BaseEpmetEntity { * 居民服务总次数 */ private Integer resiServiceTotal; + + private String pid; + + private String pids; } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/HeartDemandService.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/HeartDemandService.java index baaa29c97b..981fd1fc2f 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/HeartDemandService.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/HeartDemandService.java @@ -11,5 +11,5 @@ import java.util.List; *@Date 2021/12/8 */ public interface HeartDemandService { - List listDemandServeTimesPage(String customerId, Date endTime, int serviceCountPageNo, int serviceCountPageSize); + List listDemandServeTimesPage(String customerId, String gridId, Date endTime, int serviceCountPageNo, int serviceCountPageSize); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/impl/HeartDemandServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/impl/HeartDemandServiceImpl.java index c33f426ad5..8969b61d31 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/impl/HeartDemandServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/heart/impl/HeartDemandServiceImpl.java @@ -29,11 +29,11 @@ public class HeartDemandServiceImpl implements HeartDemandService { private IcUserDemandServiceDao demandServiceDao; @Override - public List listDemandServeTimesPage(String customerId, Date endTime, int serviceCountPageNo, int serviceCountPageSize) { + public List listDemandServeTimesPage(String customerId, String gridId, Date endTime, int serviceCountPageNo, int serviceCountPageSize) { return PageHelper.startPage(serviceCountPageNo, serviceCountPageSize).doSelectPage(new ISelect() { @Override public void doSelect() { - demandServiceDao.listDemandServeTimes(customerId, endTime, "volunteer"); + demandServiceDao.listDemandServeTimes(customerId, gridId, endTime, "volunteer"); } }); } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/DemandServiceImpl.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/DemandServiceImpl.java index 66cbf1058d..036718bf0f 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/DemandServiceImpl.java +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/impl/DemandServiceImpl.java @@ -1,11 +1,16 @@ package com.epmet.service.impl; import com.epmet.commons.tools.constant.EpmetRoleKeyConstant; +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.feign.ResultDataResolver; import com.epmet.commons.tools.utils.DateUtils; +import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.dto.heart.result.DemandServiceCountResultDTO; -import com.epmet.entity.crm.CustomerEntity; import com.epmet.entity.heart.VolunteerInfoEntity; import com.epmet.entity.stats.FactVolunteerServiceDailyEntity; +import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.DemandService; import com.epmet.service.crm.CustomerService; import com.epmet.service.heart.HeartDemandService; @@ -27,7 +32,7 @@ import java.util.stream.Collectors; * @Version 1.0 */ @Service -public class DemandServiceImpl implements DemandService { +public class DemandServiceImpl implements DemandService, ResultDataResolver { @Autowired private HeartDemandService heartDemandService; @@ -37,12 +42,15 @@ public class DemandServiceImpl implements DemandService { @Autowired private UserService userService; - + @Autowired private DemandStatsService demandStatsService; - + @Autowired private CustomerService customerService; + + @Autowired + private GovOrgOpenFeignClient govOrgOpenFeignClient; @Override public void statsVolunteerDemandServicesDaily(String customerId) { @@ -50,7 +58,7 @@ public class DemandServiceImpl implements DemandService { Date now = new Date(); Date today = DateUtils.integrate(now, "yyyy-MM-dd"); Date yestoday = DateUtils.addDateDays(today, -1); - + if (StringUtils.isNotBlank(customerId)) { // 只计算单个客户 clearOldDatas(Arrays.asList(customerId), yestoday); @@ -67,7 +75,8 @@ public class DemandServiceImpl implements DemandService { /** * 清理旧数据 - * @param targetDate 要清理哪天的数据 + * + * @param targetDate 要清理哪天的数据 * @param customerIds 要清理哪些客户的 */ private void clearOldDatas(List customerIds, Date targetDate) { @@ -80,12 +89,44 @@ public class DemandServiceImpl implements DemandService { /** * 统计单个客户的志愿者服务情况 + * * @param customerId 客户ID - * @param endTime 统计截止时间(> gridIdAndVolunteers = new HashMap<>(); + + heartVolunteerService.listVolunteers(customerId, endTime).forEach(v -> { + String volunteerGridId = v.getGridId(); + if (StringUtils.isNotBlank(volunteerGridId)) { + if (!gridIdAndVolunteers.containsKey(volunteerGridId)) { + gridIdAndVolunteers.put(volunteerGridId, new ArrayList<>()); + } + + gridIdAndVolunteers.get(volunteerGridId).add(v); + } + }); + + // 2.按网格分别统计,且持久化 + for (Map.Entry> entry : gridIdAndVolunteers.entrySet()) { + statsVolunteerDemandServicesDaily4Grid(customerId, entry.getKey(), endTime, entry.getValue(), belongTime); + } + } + + /** + * 按日统计网格需求服务数据 + * @param customerId + * @param gridId + * @param endTime 统计截止时间 + * @param volunteers 志愿者volunteerInfo列表 + * @param belongTime 该次统计要归属到哪一天,即createTime + * @return 统计结果entity,以备他用 + */ + private FactVolunteerServiceDailyEntity statsVolunteerDemandServicesDaily4Grid(String customerId, String gridId, Date endTime, List volunteers, Date belongTime) { // 1.志愿者分流为党员志愿者&普通居民志愿者 - Integer volunteerTotalCount = 0; + Integer volunteerTotalCount = volunteers.size(); // 党员志愿者数量 Integer partymemberVolunteerCount = 0; // 居民志愿者数量 @@ -94,15 +135,13 @@ public class DemandServiceImpl implements DemandService { // 党员志愿者用户id列表 List partymemberVolunteerUserIds = new ArrayList<>(16); - List volunteers = heartVolunteerService.listVolunteers(customerId, endTime); - - volunteerTotalCount = volunteers.size(); + //--------------------------------【以上是结果数据变量】------------------------------------------ // 分片开始下标 int shardingStartIndex = 0; // 分片大小(条数) int shardingSize = 100; - + // 分片去确定党员身份,防止in条件过大 while (true) { int realShardingSize = Math.min(shardingSize, volunteerTotalCount - shardingStartIndex); @@ -141,7 +180,7 @@ public class DemandServiceImpl implements DemandService { while (true) { // 取出每一个服务者的服务次数 - List damendServeTimes = heartDemandService.listDemandServeTimesPage(customerId, endTime, serviceCountPageNo, serviceCountPageSize); + List damendServeTimes = heartDemandService.listDemandServeTimesPage(customerId, gridId, endTime, serviceCountPageNo, serviceCountPageSize); for (DemandServiceCountResultDTO damendServiceTimes : damendServeTimes) { String serverId = damendServiceTimes.getServerId(); @@ -158,11 +197,12 @@ public class DemandServiceImpl implements DemandService { } totalDemandServeTimes = partymemberDemandServeTimes + resiDemandServeTimes; - - // 3.持久化 + + // 3.组装entity数据返回,待存储 FactVolunteerServiceDailyEntity insert = new FactVolunteerServiceDailyEntity(); insert.setDateId(DimIdGenerator.getDateDimId(belongTime)); insert.setCustomerId(customerId); + insert.setGridId(gridId); insert.setMonthId(DimIdGenerator.getMonthDimId(belongTime)); insert.setPartyServiceTotal(partymemberDemandServeTimes); insert.setServiceTotal(totalDemandServeTimes); @@ -171,6 +211,19 @@ public class DemandServiceImpl implements DemandService { insert.setResiTotal(resiVolunteerCount); insert.setVolunteerTotal(volunteerTotalCount); + CustomerGridFormDTO gridForm = new CustomerGridFormDTO(); + gridForm.setGridId(gridId); + String errorMsg = "【志愿者服务按日统计】查询网格基本信息失败"; + CustomerGridDTO gridInfo = getResultDataOrThrowsException(govOrgOpenFeignClient.getGridBaseInfoByGridId(gridForm), ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg); + + Optional.ofNullable(gridInfo).ifPresent(gi -> { + insert.setPid(gi.getPid()); + insert.setPids(gi.getPids()); + }); + + // 持久化 demandStatsService.addVolunteerServiceDaily(insert); + + return insert; } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.27__volunteer_service_daily_add_gridid.sql b/epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.27__volunteer_service_daily_add_gridid.sql new file mode 100644 index 0000000000..de4af15c6f --- /dev/null +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.27__volunteer_service_daily_add_gridid.sql @@ -0,0 +1,14 @@ +-- 发布前执行 +alter table fact_volunteer_service_daily add column GRID_ID varchar(64) not null comment '网格ID' after CUSTOMER_ID; +alter table fact_volunteer_service_daily add column PID varchar(64) default '' comment 'pid网格父级ID' after RESI_SERVICE_TOTAL; +alter table fact_volunteer_service_daily add column PIDS varchar(255) default '' comment 'pid网格父级ID路径,包含PID' after PID; + +-- 发布后执行 + +delete from fact_volunteer_service_daily; + +alter table fact_volunteer_service_daily drop key uni_vsd; + +alter table fact_volunteer_service_daily + add constraint uni_vsd + unique (GRID_ID, DATE_ID, DEL_FLAG); diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/heart/IcUserDemandServiceDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/heart/IcUserDemandServiceDao.xml index ddebabef66..ab73afd872 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/heart/IcUserDemandServiceDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/heart/IcUserDemandServiceDao.xml @@ -24,11 +24,13 @@ select service.SERVER_ID, SERVICE_TYPE, count(1) as SERVE_TIMES from ic_user_demand_rec damend inner join ic_user_demand_service service on (damend.ID = service.DEMAND_REC_ID and service.DEL_FLAG = 0) + inner join volunteer_info v on (service.SERVER_ID = v.USER_ID and v.DEL_FLAG = 0) where damend.DEL_FLAG = 0 and damend.STATUS = 'finished' and damend.CUSTOMER_ID = #{customerId} and service.SERVICE_END_TIME #{endTime} and service.SERVICE_TYPE = #{serviceType} + and v.GRID_ID = #{gridId} group by service.SERVER_ID, SERVICE_TYPE \ No newline at end of file diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactVolunteerServiceDailyDao.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactVolunteerServiceDailyDao.xml index 59dfd96c12..be083bd93e 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactVolunteerServiceDailyDao.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/stats/FactVolunteerServiceDailyDao.xml @@ -14,6 +14,8 @@ + + diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/VolunteerCommonFormDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/VolunteerCommonFormDTO.java index c8893697a8..9a5e2fdc7f 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/VolunteerCommonFormDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/resi/VolunteerCommonFormDTO.java @@ -14,12 +14,16 @@ import javax.validation.constraints.NotNull; @Data public class VolunteerCommonFormDTO { - public interface VolunteerPage { - } - - @NotBlank(message = "客户ID不能为空", groups = {VolunteerPage.class}) + /** + * 客户ID + */ private String customerId; + /** + * 上级组织ID,使用PIDS like,查询该组织下所有志愿者,注意,是like 'agencyId:%' + */ + private String superiorAgencyId; + private Integer pageNo = 0; private Integer pageSize = 20; diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/feign/EpmetHeartOpenFeignClient.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/feign/EpmetHeartOpenFeignClient.java index 4bad8f25d7..a21cccb8f3 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/feign/EpmetHeartOpenFeignClient.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/feign/EpmetHeartOpenFeignClient.java @@ -23,6 +23,7 @@ import java.util.List; * @date 2020/6/4 13:25 */ @FeignClient(name = ServiceConstant.EPMET_HEART_SERVER, fallbackFactory = EpmetHeartOpenFeignClientFallbackFactory.class) +//@FeignClient(name = ServiceConstant.EPMET_HEART_SERVER, fallbackFactory = EpmetHeartOpenFeignClientFallbackFactory.class, url = "http://localhost:8111") public interface EpmetHeartOpenFeignClient { /** diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java index e1d18e5536..85a9009b44 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiVolunteerController.java @@ -135,13 +135,11 @@ public class ResiVolunteerController { */ @PostMapping("page") public Result> queryVolunteerPage(@RequestBody VolunteerCommonFormDTO input) { - - ValidatorUtils.validateEntity(input, VolunteerCommonFormDTO.VolunteerPage.class); - Integer pageNo = input.getPageNo(); Integer pageSize = input.getPageSize(); String customerId = input.getCustomerId(); - List l = volunteerInfoService.queryVolunteerPage(customerId, pageNo, pageSize); + String superiorAgencyId = input.getSuperiorAgencyId(); + List l = volunteerInfoService.queryVolunteerPage(customerId, pageNo, pageSize, superiorAgencyId); return new Result>().ok(l); } } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/VolunteerInfoEntity.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/VolunteerInfoEntity.java index fcce38bc75..e49e85d986 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/VolunteerInfoEntity.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/VolunteerInfoEntity.java @@ -67,4 +67,8 @@ public class VolunteerInfoEntity extends BaseEpmetEntity { * 志愿者注册,所在网格名称 */ private String gridName; + + private String pid; + + private String pids; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java index 6a84fb67a1..1098a61c98 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/VolunteerInfoService.java @@ -96,5 +96,5 @@ public interface VolunteerInfoService extends BaseService { */ List queryListVolunteer(String customerId,String userRealName); - List queryVolunteerPage(String customerId, Integer pageNo, Integer pageSize); + List queryVolunteerPage(String customerId, Integer pageNo, Integer pageSize, String superiorAgencyId); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java index ac87cc6b4c..ad5f5aa067 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/VolunteerInfoServiceImpl.java @@ -22,11 +22,14 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.MqConstant; import com.epmet.commons.tools.constant.NumConstant; +import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.dto.form.mq.MqBaseMsgDTO; import com.epmet.commons.tools.dto.form.mq.eventmsg.BasePointEventMsg; import com.epmet.commons.tools.enums.EventEnum; import com.epmet.commons.tools.exception.EpmetErrorCode; +import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.feign.ResultDataResolver; import com.epmet.commons.tools.redis.RedisKeys; import com.epmet.commons.tools.redis.RedisUtils; import com.epmet.commons.tools.security.dto.TokenDto; @@ -35,6 +38,7 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.SendMqMsgUtils; import com.epmet.constant.SmsTemplateConstant; import com.epmet.dao.VolunteerInfoDao; +import com.epmet.dto.CustomerAgencyDTO; import com.epmet.dto.HeartUserInfoDTO; import com.epmet.dto.VolunteerInfoDTO; import com.epmet.dto.form.CommonCustomerFormDTO; @@ -50,6 +54,7 @@ import com.epmet.dto.result.resi.ResiVolunteerInfoResultDTO; import com.epmet.entity.VolunteerInfoEntity; import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.feign.EpmetUserOpenFeignClient; +import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.HeartUserInfoService; import com.epmet.service.VolunteerInfoService; import com.github.pagehelper.PageHelper; @@ -64,6 +69,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Optional; import java.util.function.Function; import java.util.stream.Collectors; @@ -74,7 +80,7 @@ import java.util.stream.Collectors; * @since v1.0.0 2020-07-19 */ @Service -public class VolunteerInfoServiceImpl extends BaseServiceImpl implements VolunteerInfoService { +public class VolunteerInfoServiceImpl extends BaseServiceImpl implements VolunteerInfoService, ResultDataResolver { private Logger logger = LogManager.getLogger(VolunteerInfoServiceImpl.class); private static final String SEND_SMS_CODE_ERROR = "发送短信验证码异常,手机号[%s],code[%s],msg[%s]"; @@ -89,6 +95,9 @@ public class VolunteerInfoServiceImpl extends BaseServiceImpl queryVolunteerPage(String customerId, Integer pageNo, Integer pageSize) { + public List queryVolunteerPage(String customerId, Integer pageNo, Integer pageSize, String superiorAgencyId) { LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(VolunteerInfoEntity::getCustomerId, customerId); + Optional.ofNullable(customerId).ifPresent(cid -> query.eq(VolunteerInfoEntity::getCustomerId, cid)); + Optional.ofNullable(superiorAgencyId).ifPresent(cid -> { + + // 需要查询agency的pids:id,通过这个字符串去匹配志愿者的Pids字段来查询 + String errorMsg = "【分页查询志愿者列表】失败"; + CustomerAgencyDTO agencyInfo = getResultDataOrThrowsException(govOrgOpenFeignClient.getAgencyById(superiorAgencyId), ServiceConstant.GOV_ORG_SERVER, EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg); + if (agencyInfo == null) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), errorMsg, errorMsg); + } + + String pidsAndAgencyIdPath = agencyInfo.getPids().concat(":").concat(superiorAgencyId); + if (pidsAndAgencyIdPath.startsWith(":")) pidsAndAgencyIdPath = pidsAndAgencyIdPath.replaceFirst(":", ""); + + query.likeRight(VolunteerInfoEntity::getPids, pidsAndAgencyIdPath); + }); PageHelper.startPage(pageNo, pageSize); List volunteerInfoEntities = baseDao.selectList(query); diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml index 4dc80881f2..a3f67ab27b 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/VolunteerInfoDao.xml @@ -17,6 +17,8 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 17232934fa700781f9e4259c53d78e58c939d14c Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 17:54:21 +0800 Subject: [PATCH 26/33] bugfix --- .../src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 54a8c7f674..4d6b728387 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 @@ -688,5 +688,5 @@ public interface EpmetUserOpenFeignClient { * @return */ @GetMapping("/epmetuser/icresiuser/geticresiuser/{icResiUserId}") - Result getIcResiUserDTO(String icResiUserId); + Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId); } From 91bf84654a7db2504662b955a4f85901362b40a4 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 17:56:17 +0800 Subject: [PATCH 27/33] bugfix --- .../src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 54a8c7f674..4d6b728387 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 @@ -688,5 +688,5 @@ public interface EpmetUserOpenFeignClient { * @return */ @GetMapping("/epmetuser/icresiuser/geticresiuser/{icResiUserId}") - Result getIcResiUserDTO(String icResiUserId); + Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId); } From e1790b2b5d5d56e6c382e84968233628d0348e5c Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 18:32:20 +0800 Subject: [PATCH 28/33] =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/feign/fallback/EpmetUserOpenFeignClientFallback.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 3a10ebd36d..3d2b474453 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 @@ -499,7 +499,7 @@ public class EpmetUserOpenFeignClientFallback implements EpmetUserOpenFeignClien /** * 查找居民端小程序里的用户对应ic里的人。以及家属们 * - * @param epmetUserIdList + * @param formDTO * @return */ @Override From 78ebf8872cf649983c242fc2044752e261e8c7b7 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 18:36:55 +0800 Subject: [PATCH 29/33] 404 --- .../java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java | 2 +- .../src/main/java/com/epmet/feign/EpmetUserOpenFeignClient.java | 2 +- .../main/java/com/epmet/controller/IcResiUserController.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java index bc9346fdd0..2273a80aa0 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java @@ -230,7 +230,7 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl demandUserRes=epmetUserOpenFeignClient.getIcResiUserDTO(fromDTO.getDemandUserId()); if(!demandUserRes.success()||null==demandUserRes.getData()){ - throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人信息异常"); + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人信息异常"+ JSON.toJSONString(demandUserRes)); } insertEntity.setDemandUserHouseId(demandUserRes.getData().getVillageId()); // 查询需求人的居住地址 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 4d6b728387..2c4989f718 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 @@ -687,6 +687,6 @@ public interface EpmetUserOpenFeignClient { * @param icResiUserId * @return */ - @GetMapping("/epmetuser/icresiuser/geticresiuser/{icResiUserId}") + @PostMapping(value = "/epmetuser/icresiuser/geticresiuser/{icResiUserId}") Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java index fd7f325a01..395a5d40b9 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java @@ -633,7 +633,7 @@ public class IcResiUserController { * @param icResiUserId * @return */ - @GetMapping("geticresiuser/{icResiUserId}") + @PostMapping("geticresiuser/{icResiUserId}") public Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId){ if(StringUtils.isNotBlank(icResiUserId)){ return new Result().ok(icResiUserService.get(icResiUserId)); From 0c146e9570fb1a423f84d2a1c949a5c54bf0efbf Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 19:09:12 +0800 Subject: [PATCH 30/33] =?UTF-8?q?=E9=9C=80=E6=B1=82=E8=A1=A8=E5=AD=98?= =?UTF-8?q?=E5=82=A8=E9=9C=80=E6=B1=82=E4=BA=BA=E7=9A=84=E6=88=BF=E5=B1=8B?= =?UTF-8?q?=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/IcUserDemandRecServiceImpl.java | 30 ++++++++++--------- .../epmet/feign/EpmetUserOpenFeignClient.java | 2 +- .../controller/IcResiUserController.java | 2 +- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java index bc9346fdd0..fbc4c68859 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcUserDemandRecServiceImpl.java @@ -164,12 +164,14 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl houseIds=new HashSet<>(); houseIds.add(updateEntity.getDemandUserHouseId()); Result> houseInfoRes=govOrgOpenFeignClient.queryListHouseInfo(houseIds); - if(houseInfoRes.success()&&CollectionUtils.isNotEmpty(houseInfoRes.getData())){ + if(!houseInfoRes.success()||CollectionUtils.isEmpty(houseInfoRes.getData())){ + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人房屋地址信息异常"+JSON.toJSONString(houseInfoRes)); + } HouseInfoDTO houseInfoDTO=houseInfoRes.getData().get(NumConstant.ZERO); updateEntity.setServiceLocation(houseInfoDTO.getNeighborAddress(). concat(houseInfoDTO.getNeighborHoodName()) @@ -178,7 +180,6 @@ public class IcUserDemandRecServiceImpl extends BaseServiceImpl demandUserRes=epmetUserOpenFeignClient.getIcResiUserDTO(fromDTO.getDemandUserId()); if(!demandUserRes.success()||null==demandUserRes.getData()){ - throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人信息异常"); + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人信息异常"+ JSON.toJSONString(demandUserRes)); } - insertEntity.setDemandUserHouseId(demandUserRes.getData().getVillageId()); + insertEntity.setDemandUserHouseId(demandUserRes.getData().getHomeId()); // 查询需求人的居住地址 Set houseIds=new HashSet<>(); houseIds.add(insertEntity.getDemandUserHouseId()); Result> houseInfoRes=govOrgOpenFeignClient.queryListHouseInfo(houseIds); - if(houseInfoRes.success()&&CollectionUtils.isNotEmpty(houseInfoRes.getData())){ - HouseInfoDTO houseInfoDTO=houseInfoRes.getData().get(NumConstant.ZERO); - insertEntity.setServiceLocation(houseInfoDTO.getNeighborAddress(). - concat(houseInfoDTO.getNeighborHoodName()) - .concat(houseInfoDTO.getBuildingName()) - .concat(houseInfoDTO.getUnitName()) - .concat(houseInfoDTO.getDoorName())); - insertEntity.setLongitude(houseInfoDTO.getBuildingLongitude()); - insertEntity.setLatitude(houseInfoDTO.getBuildingLatitude()); + if(!houseInfoRes.success()||CollectionUtils.isEmpty(houseInfoRes.getData())){ + throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "查询需求人房屋地址信息异常"+JSON.toJSONString(houseInfoRes)); } + HouseInfoDTO houseInfoDTO=houseInfoRes.getData().get(NumConstant.ZERO); + insertEntity.setServiceLocation(houseInfoDTO.getNeighborAddress(). + concat(houseInfoDTO.getNeighborHoodName()) + .concat(houseInfoDTO.getBuildingName()) + .concat(houseInfoDTO.getUnitName()) + .concat(houseInfoDTO.getDoorName())); + insertEntity.setLongitude(houseInfoDTO.getBuildingLongitude()); + insertEntity.setLatitude(houseInfoDTO.getBuildingLatitude()); baseDao.insert(insertEntity); IcUserDemandOperateLogEntity logEntity=new IcUserDemandOperateLogEntity(); logEntity.setCustomerId(fromDTO.getCustomerId()); 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 4d6b728387..2c4989f718 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 @@ -687,6 +687,6 @@ public interface EpmetUserOpenFeignClient { * @param icResiUserId * @return */ - @GetMapping("/epmetuser/icresiuser/geticresiuser/{icResiUserId}") + @PostMapping(value = "/epmetuser/icresiuser/geticresiuser/{icResiUserId}") Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java index fd7f325a01..395a5d40b9 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java @@ -633,7 +633,7 @@ public class IcResiUserController { * @param icResiUserId * @return */ - @GetMapping("geticresiuser/{icResiUserId}") + @PostMapping("geticresiuser/{icResiUserId}") public Result getIcResiUserDTO(@PathVariable("icResiUserId") String icResiUserId){ if(StringUtils.isNotBlank(icResiUserId)){ return new Result().ok(icResiUserService.get(icResiUserId)); From d53b89219cb43da38fdd1d81a0ad95a0f7d74a8b Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Wed, 22 Dec 2021 20:39:51 +0800 Subject: [PATCH 31/33] =?UTF-8?q?=E8=AF=84=E4=BB=B7+=E5=8F=96=E6=B6=88?= =?UTF-8?q?=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tools/exception/EpmetErrorCode.java | 4 +- ...lFormDTO.java => CancelDemandFormDTO.java} | 13 +- .../form/demand/EvaluateDemandFormDTO.java | 44 +++++++ .../dto/result/demand/FinishResultDTO.java | 6 +- .../controller/IcUserDemandRecController.java | 18 +-- .../controller/ResiDemandController.java | 83 ++++++++++-- .../epmet/service/IcUserDemandRecService.java | 12 +- .../impl/IcUserDemandRecServiceImpl.java | 119 ++++++++++++------ 8 files changed, 233 insertions(+), 66 deletions(-) rename epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/{StaffCancelFormDTO.java => CancelDemandFormDTO.java} (67%) create mode 100644 epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/EvaluateDemandFormDTO.java diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java index e2b10856d9..803b801402 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java @@ -93,8 +93,8 @@ public enum EpmetErrorCode { DEMAND_CAN_NOT_UPDATE(8223,"当前状态,不可更新需求"), DEMAND_NOT_EXITS(8224,"需求不存在"), DEMAND_SERVICE_NOT_EXITS(8225,"服务记录不存在"), - DEMAND_CAN_NOT_TAKE_ORDER(8226, "当前状态,不可指派"), - + DEMAND_CAN_NOT_TAKE_ORDER(8226, "当前状态,不可接单"), + DEMAND_CAN_NOT_EVALUATE(8227, "当前状态,不可评价"), REQUIRE_PERMISSION(8301, "您没有足够的操作权限"), THIRD_PLAT_REQUEST_ERROR(8302, "请求第三方平台错误"), diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/StaffCancelFormDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/CancelDemandFormDTO.java similarity index 67% rename from epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/StaffCancelFormDTO.java rename to epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/CancelDemandFormDTO.java index 09d920f55c..3240a74515 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/StaffCancelFormDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/CancelDemandFormDTO.java @@ -4,8 +4,11 @@ import lombok.Data; import javax.validation.constraints.NotBlank; +/** + * 取消需求入参dto + */ @Data -public class StaffCancelFormDTO { +public class CancelDemandFormDTO { public interface AddUserInternalGroup {} @NotBlank(message = "需求id不能为空",groups = AddUserInternalGroup.class) private String demandRecId; @@ -14,4 +17,12 @@ public class StaffCancelFormDTO { private String userId; @NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class) private String customerId; + + /** + * staff:pc工作人员取消 + * resi:居民端用户主动需求 + * 代码里写死的UserDemandConstant.RESI/STAFF + */ + private String userType; } + diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/EvaluateDemandFormDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/EvaluateDemandFormDTO.java new file mode 100644 index 0000000000..1a0a5d28f2 --- /dev/null +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/demand/EvaluateDemandFormDTO.java @@ -0,0 +1,44 @@ +package com.epmet.dto.form.demand; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * 居民端-需求-服务评价入参 + */ +@Data +public class EvaluateDemandFormDTO implements Serializable { + public interface AddUserInternalGroup { + } + public interface ShowGroup extends CustomerClientShowGroup { + } + + + @NotBlank(message = "需求id不能为空", groups = AddUserInternalGroup.class) + private String demandRecId; + + @NotBlank(message = "服务id不能为空", groups = AddUserInternalGroup.class) + private String serviceId; + + @NotBlank(message = "完成结果不能为空", groups = ShowGroup.class) + private String finishResult; + + @Length(max = 1000,message = "最多输入1000字",groups = {ShowGroup.class}) + private String finishDesc; + + @NotNull(message = "得分不能为空", groups = ShowGroup.class) + private BigDecimal score; + + + + @NotBlank(message = "userId不能为空", groups = AddUserInternalGroup.class) + private String userId; + @NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class) + private String customerId; +} diff --git a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/FinishResultDTO.java b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/FinishResultDTO.java index 96d03b9c2d..db0bff7f8d 100644 --- a/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/FinishResultDTO.java +++ b/epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/demand/FinishResultDTO.java @@ -10,6 +10,8 @@ import java.io.Serializable; */ @Data public class FinishResultDTO implements Serializable { - private Boolean sendCalStatisfaction; - private String partyUnitId; + private String serverId; + private String serviceType; + private Boolean grantPoint; + private Integer awardPoint; } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcUserDemandRecController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcUserDemandRecController.java index 269cc17225..31c250bc83 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcUserDemandRecController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcUserDemandRecController.java @@ -19,6 +19,7 @@ package com.epmet.controller; import com.epmet.commons.rocketmq.messages.CalPartyUnitSatisfactionFormDTO; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; @@ -29,10 +30,6 @@ import com.epmet.constant.UserDemandConstant; import com.epmet.dto.form.SystemMsgFormDTO; import com.epmet.dto.form.demand.*; import com.epmet.dto.result.demand.*; -import com.epmet.dto.result.demand.DemandRecResultDTO; -import com.epmet.dto.result.demand.FinishResultDTO; -import com.epmet.dto.result.demand.IcResiUserReportDemandRes; -import com.epmet.dto.result.demand.OptionDTO; import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.service.*; import lombok.extern.slf4j.Slf4j; @@ -150,10 +147,11 @@ public class IcUserDemandRecController { * @return */ @PostMapping("cancel") - public Result cancel(@LoginUser TokenDto tokenDto,@RequestBody StaffCancelFormDTO formDTO){ + public Result cancel(@LoginUser TokenDto tokenDto,@RequestBody CancelDemandFormDTO formDTO){ formDTO.setCustomerId(tokenDto.getCustomerId()); formDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(formDTO,StaffCancelFormDTO.AddUserInternalGroup.class); + formDTO.setUserType(UserDemandConstant.STAFF); + ValidatorUtils.validateEntity(formDTO,CancelDemandFormDTO.AddUserInternalGroup.class); icUserDemandRecService.cancel(formDTO); return new Result(); } @@ -191,14 +189,18 @@ public class IcUserDemandRecController { formDTO.setUserType(UserDemandConstant.STAFF); ValidatorUtils.validateEntity(formDTO,FinishStaffFromDTO.IcShowGroup.class,FinishStaffFromDTO.AddUserInternalGroup.class); FinishResultDTO finishResultDTO=icUserDemandRecService.finish(formDTO); - if(finishResultDTO.getSendCalStatisfaction()){ + //如果服务方是区域化党建单位,需要实时去计算他的群众满意度=服务过的需求的评价分数相加➗ 需求的总个数。 + if(UserDemandConstant.PARTY_UNIT.equals(finishResultDTO.getServiceType())){ CalPartyUnitSatisfactionFormDTO mqMsg = new CalPartyUnitSatisfactionFormDTO(); mqMsg.setCustomerId(formDTO.getCustomerId()); - mqMsg.setPartyUnitId(finishResultDTO.getPartyUnitId()); + mqMsg.setPartyUnitId(finishResultDTO.getServerId()); SystemMsgFormDTO form = new SystemMsgFormDTO(); form.setMessageType(SystemMessageType.CAL_PARTY_UNIT_SATISFACTION); form.setContent(mqMsg); epmetMessageOpenFeignClient.sendSystemMsgByMQ(form); + } else if (UserDemandConstant.VOLUNTEER.equals(finishResultDTO.getServiceType()) && finishResultDTO.getAwardPoint() > NumConstant.ZERO) { + // todo + // 志愿者发放积分 } return new Result(); } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiDemandController.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiDemandController.java index 679f8beee0..1e5dc8d033 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiDemandController.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/ResiDemandController.java @@ -1,19 +1,22 @@ package com.epmet.controller; +import com.epmet.commons.rocketmq.messages.CalPartyUnitSatisfactionFormDTO; import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.dto.form.PageFormDTO; 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.constant.SystemMessageType; import com.epmet.constant.UserDemandConstant; -import com.epmet.dto.form.demand.DemandDetailFormDTO; -import com.epmet.dto.form.demand.FinishStaffFromDTO; -import com.epmet.dto.form.demand.ListHallFormDTO; -import com.epmet.dto.form.demand.TakeOrderFormDTO; +import com.epmet.dto.form.SystemMsgFormDTO; +import com.epmet.dto.form.demand.*; import com.epmet.dto.result.demand.DemandDetailResDTO; import com.epmet.dto.result.demand.DemandHallResultDTO; +import com.epmet.dto.result.demand.FinishResultDTO; import com.epmet.dto.result.demand.TakeOrderResultDTO; +import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.service.IcUserDemandRecService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -37,18 +40,21 @@ import java.util.List; public class ResiDemandController { @Autowired private IcUserDemandRecService icUserDemandRecService; + @Autowired + private EpmetMessageOpenFeignClient epmetMessageOpenFeignClient; /** * 居民端-需求大厅(未处理、处理中、已完成) + * * @param tokenDto * @param formDTO * @return */ @PostMapping("list-hall") - public Result> listHall(@LoginUser TokenDto tokenDto, @RequestBody ListHallFormDTO formDTO){ + public Result> listHall(@LoginUser TokenDto tokenDto, @RequestBody ListHallFormDTO formDTO) { formDTO.setCurrentUserId(tokenDto.getUserId()); formDTO.setCustomerId(tokenDto.getCustomerId()); - ValidatorUtils.validateEntity(formDTO, PageFormDTO.AddUserInternalGroup.class,ListHallFormDTO.AddUserInternalGroup.class); + ValidatorUtils.validateEntity(formDTO, PageFormDTO.AddUserInternalGroup.class, ListHallFormDTO.AddUserInternalGroup.class); return new Result>().ok(icUserDemandRecService.listHall(formDTO)); } @@ -60,38 +66,91 @@ public class ResiDemandController { * @return */ @PostMapping("detail-hall") - public Result queryDetailHall(@LoginUser TokenDto tokenDto, @RequestBody DemandDetailFormDTO formDTO){ + public Result queryDetailHall(@LoginUser TokenDto tokenDto, @RequestBody DemandDetailFormDTO formDTO) { formDTO.setCustomerId(tokenDto.getCustomerId()); - ValidatorUtils.validateEntity(formDTO,DemandDetailFormDTO.AddUserInternalGroup.class); + ValidatorUtils.validateEntity(formDTO, DemandDetailFormDTO.AddUserInternalGroup.class); return new Result().ok(icUserDemandRecService.queryDetailHall(formDTO)); } /** * 需求大厅-我要接单 + * * @param tokenDto * @return */ @PostMapping("takeorder") - public Result takeOrder(@LoginUser TokenDto tokenDto, @RequestBody TakeOrderFormDTO formDTO){ + public Result takeOrder(@LoginUser TokenDto tokenDto, @RequestBody TakeOrderFormDTO formDTO) { formDTO.setUserId(tokenDto.getUserId()); - ValidatorUtils.validateEntity(formDTO,TakeOrderFormDTO.AddUserInternalGroup.class); + ValidatorUtils.validateEntity(formDTO, TakeOrderFormDTO.AddUserInternalGroup.class); return new Result().ok(icUserDemandRecService.takeOrder(formDTO)); } /** * 需求大厅-完成需求 + * * @param tokenDto * @param formDTO * @return */ @PostMapping("finish") - public Result finish(@LoginUser TokenDto tokenDto, @RequestBody FinishStaffFromDTO formDTO){ + public Result finish(@LoginUser TokenDto tokenDto, @RequestBody FinishStaffFromDTO formDTO) { formDTO.setCustomerId(tokenDto.getCustomerId()); formDTO.setUserId(tokenDto.getUserId()); formDTO.setType(UserDemandConstant.FINISHED); formDTO.setUserType(UserDemandConstant.RESI); - ValidatorUtils.validateEntity(formDTO,FinishStaffFromDTO.ResiShowGroup.class,FinishStaffFromDTO.AddUserInternalGroup.class); + ValidatorUtils.validateEntity(formDTO, FinishStaffFromDTO.ResiShowGroup.class, FinishStaffFromDTO.AddUserInternalGroup.class); icUserDemandRecService.finish(formDTO); return new Result(); } + + /** + * 我的需求-服务评价 + * 已经完成的可以评价 + * + * @param tokenDto + * @param formDTO + * @return + */ + @PostMapping("evaluate") + public Result evaluate(@LoginUser TokenDto tokenDto, @RequestBody EvaluateDemandFormDTO formDTO) { + formDTO.setUserId(tokenDto.getUserId()); + formDTO.setCustomerId(tokenDto.getCustomerId()); + ValidatorUtils.validateEntity(formDTO, EvaluateDemandFormDTO.ShowGroup.class, EvaluateDemandFormDTO.AddUserInternalGroup.class); + FinishResultDTO finishResultDTO = icUserDemandRecService.evaluate(formDTO); + //如果服务方是区域化党建单位,需要实时去计算他的群众满意度=服务过的需求的评价分数相加➗ 需求的总个数。 + if (UserDemandConstant.PARTY_UNIT.equals(finishResultDTO.getServiceType())) { + CalPartyUnitSatisfactionFormDTO mqMsg = new CalPartyUnitSatisfactionFormDTO(); + mqMsg.setCustomerId(formDTO.getCustomerId()); + mqMsg.setPartyUnitId(finishResultDTO.getServerId()); + SystemMsgFormDTO form = new SystemMsgFormDTO(); + form.setMessageType(SystemMessageType.CAL_PARTY_UNIT_SATISFACTION); + form.setContent(mqMsg); + epmetMessageOpenFeignClient.sendSystemMsgByMQ(form); + } else if (UserDemandConstant.VOLUNTEER.equals(finishResultDTO.getServiceType()) && finishResultDTO.getAwardPoint() > NumConstant.ZERO) { + // todo + // 志愿者发放积分 + } + return new Result(); + } + + /** + * 我的需求-取消需求 + * 取消,未完成之前都可以取消,pc和居民端小程序内部通用 + * + * @param tokenDto + * @param formDTO + * @return + */ + @PostMapping("cancel") + public Result cancel(@LoginUser TokenDto tokenDto,@RequestBody CancelDemandFormDTO formDTO){ + formDTO.setCustomerId(tokenDto.getCustomerId()); + formDTO.setUserId(tokenDto.getUserId()); + formDTO.setUserType(UserDemandConstant.RESI); + ValidatorUtils.validateEntity(formDTO,CancelDemandFormDTO.AddUserInternalGroup.class); + icUserDemandRecService.cancel(formDTO); + return new Result(); + } + + + } diff --git a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcUserDemandRecService.java b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcUserDemandRecService.java index fe6d71e963..ffdf84580a 100644 --- a/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcUserDemandRecService.java +++ b/epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcUserDemandRecService.java @@ -106,11 +106,11 @@ public interface IcUserDemandRecService extends BaseService pageList(UserDemandPageFormDTO formDTO); /** - * 未完成之前都可以取消 + * 未完成之前都可以取消,pc和居民端小程序内部通用 * * @param formDTO */ - void cancel(StaffCancelFormDTO formDTO); + void cancel(CancelDemandFormDTO formDTO); /** * 指派 @@ -196,4 +196,12 @@ public interface IcUserDemandRecService extends BaseService Date: Thu, 23 Dec 2021 09:12:04 +0800 Subject: [PATCH 32/33] =?UTF-8?q?=E6=9C=80=E6=96=B0=E7=9B=B4=E6=8A=A5?= =?UTF-8?q?=E8=BF=94=E5=8F=82=E9=99=84=E4=BB=B6=E7=B1=BB=E5=9E=8B=E5=88=86?= =?UTF-8?q?=E4=B8=BA=E5=9B=BE=E7=89=87=E5=92=8C=E8=AF=AD=E9=9F=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/dto/result/NewEventsResultDTO.java | 22 +++++++++++++++ .../dto/result/UserMentionResultDTO.java | 24 ++++++++++++++++ .../service/impl/ResiEventServiceImpl.java | 28 +++++++++++++++++++ .../main/resources/mapper/ResiEventDao.xml | 15 ++++++---- .../resources/mapper/ResiEventMentionDao.xml | 13 ++++++--- 5 files changed, 93 insertions(+), 9 deletions(-) diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/NewEventsResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/NewEventsResultDTO.java index 8035108f6a..580d9da12d 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/NewEventsResultDTO.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/NewEventsResultDTO.java @@ -1,5 +1,6 @@ package com.epmet.dto.result; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serializable; @@ -31,4 +32,25 @@ public class NewEventsResultDTO implements Serializable { private List eventImgs; private String eventId; + /** + * 语音附件url集合 + */ + private List voiceList; + /** + * 事件附件 + */ + @JsonIgnore + private List attachmentList; + + @Data + public static class Attachment { + /** + * url + */ + private String url; + /** + * 附件类型 + */ + private String type; + } } diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/UserMentionResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/UserMentionResultDTO.java index 48bb9583ba..4be78b5d64 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/UserMentionResultDTO.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/UserMentionResultDTO.java @@ -1,6 +1,7 @@ package com.epmet.dto.result; import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; import lombok.Data; import java.io.Serializable; @@ -58,4 +59,27 @@ public class UserMentionResultDTO implements Serializable { */ private String replyButtonFlag; + /** + * 语音附件url集合 + */ + private List voiceList; + + /** + * 事件附件 + */ + @JsonIgnore + private List attachmentList; + + @Data + public static class Attachment { + /** + * url + */ + private String url; + /** + * 附件类型 + */ + private String type; + } + } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java index ac25d91e9d..626b058f2d 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ResiEventServiceImpl.java @@ -627,6 +627,19 @@ public class ResiEventServiceImpl extends BaseServiceImpl resiEventMentionDao.selectMentionList(formDTO.getUserId(), formDTO.getReadFlag())); result.getList().forEach(dto->{ + //附件按类型分组【图片、语音】 + List imgList = new ArrayList<>(); + List voiceList = new ArrayList<>(); + dto.getAttachmentList().forEach(file -> { + if ("image".equals(file.getType())) { + imgList.add(file.getUrl()); + } else if ("voice".equals(file.getType())) { + voiceList.add(file.getUrl()); + } + }); + dto.setImgList(imgList); + dto.setVoiceList(voiceList); + if(dto.getShiftProject()||dto.getStatus().equals(EventConstant.EVENT_STATUS_CLOSED_CASE)){ // 立项和办结了不能回复哈。 dto.setReplyButtonFlag("false"); @@ -652,6 +665,21 @@ public class ResiEventServiceImpl extends BaseServiceImpl orgIds = listResult.getData(); if (!CollectionUtils.isEmpty(orgIds)){ List result = baseDao.newEvents(orgIds); + //附件按类型分组【图片、语音】 + result.forEach(re->{ + List eventImgs = new ArrayList<>(); + List voiceList = new ArrayList<>(); + re.getAttachmentList().forEach(file->{ + if ("image".equals(file.getType())) { + eventImgs.add(file.getUrl()); + } else if ("voice".equals(file.getType())) { + voiceList.add(file.getUrl()); + } + }); + re.setEventImgs(eventImgs); + re.setVoiceList(voiceList); + }); + return result; } return new ArrayList<>(); diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml index 94a3efcbce..72a83c1e6a 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ResiEventDao.xml @@ -31,7 +31,7 @@ (CASE WHEN re.SHIFT_PROJECT = 1 THEN TRUE ELSE FALSE END) AS isProject, (CASE WHEN ro.RED_DOT = 1 THEN TRUE ELSE FALSE END) AS redDot FROM resi_event_report_org ro - INNER JOIN resi_event re ON (ro.RESI_EVENT_ID = re.ID AND re.DEL_FLAG = '0') + INNER JOIN resi_event re ON (ro.RESI_EVENT_ID = re.ID AND re.DEL_FLAG = '0' AND re.audit_status = 'auto_passed') AND ro.DEL_FLAG = '0' and ro.ORG_ID = #{orgId} @@ -185,18 +185,23 @@ - - + + + + @@ -29,11 +33,12 @@ re.`STATUS`, re.SHIFT_PROJECT, re.LATEST_OPERATED_TIME, - rea.ATTACHMENT_URL as img_url + rea.attachment_url AS url, + rea.attachment_type AS type FROM resi_event_mention rem LEFT JOIN resi_event re - ON ( rem.RESI_EVENT_ID = re.id ) + ON ( rem.RESI_EVENT_ID = re.id AND re.audit_status = 'auto_passed') LEFT JOIN resi_event_attachment rea ON ( re.id = rea.RESI_EVENT_ID AND rea.DEL_FLAG = '0' From 01a7f9332aad9ab69d4d57ab2fd6c45423cc368f Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Thu, 23 Dec 2021 09:43:01 +0800 Subject: [PATCH 33/33] =?UTF-8?q?=E5=85=9A=E7=BE=A4=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E4=B8=AD=E5=BF=83=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/IcPartyServiceCenterDao.xml | 41 +++++++++---------- 1 file changed, 19 insertions(+), 22 deletions(-) diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml index 0231e92015..275a3be71b 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcPartyServiceCenterDao.xml @@ -14,17 +14,25 @@ - - - - - - - - - - + +