+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSuggestionDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSuggestionDTO.java
new file mode 100644
index 0000000000..e5a3300212
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueSuggestionDTO.java
@@ -0,0 +1,97 @@
+/**
+ * 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 2020-11-18
+ */
+@Data
+public class IssueSuggestionDTO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 主键
+ */
+ private String id;
+
+ /**
+ * 客户Id customer.id
+ */
+ private String customerId;
+
+ /**
+ * 议题id
+ */
+ private String issueId;
+
+ /**
+ * 议题所属网格id
+ */
+ private String gridId;
+
+ /**
+ * 对议题的想法
+ */
+ private String suggestion;
+
+ /**
+ * 1公开; 0匿名
+ */
+ private Integer publicFlag;
+
+ /**
+ * 删除标识:0 未删除 1已删除
+ */
+ private String delFlag;
+
+ /**
+ * 乐观锁
+ */
+ private Integer revision;
+
+ /**
+ * 提建议的人
+ */
+ private String createdBy;
+
+ /**
+ * 创建时间
+ */
+ private Date createdTime;
+
+ /**
+ * 修改人ID
+ */
+ private String updatedBy;
+
+ /**
+ * 修改时间
+ */
+ private Date updatedTime;
+
+}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java
index 1c0af96723..22f47eb6f9 100644
--- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/EvaluationListFormDTO.java
@@ -2,6 +2,7 @@ package com.epmet.dto.form;
import lombok.Data;
+import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
@@ -21,11 +22,13 @@ public class EvaluationListFormDTO implements Serializable {
/**
* 页码
*/
+ @NotBlank(message = "pageNo不能为空")
private Integer pageNo;
/**
* 每页数量
*/
+ @NotBlank(message = "pageSize不能为空")
private Integer pageSize;
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/UserIssueSuggestionFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/UserIssueSuggestionFormDTO.java
new file mode 100644
index 0000000000..a9f37302a9
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/UserIssueSuggestionFormDTO.java
@@ -0,0 +1,33 @@
+package com.epmet.dto.form;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+/**
+ * 查询用户对于某个议题的想法 返回一条记录
+ *
+ * @author yinzuomei@elink-cn.com
+ * @date 2020/11/18 10:09
+ */
+@Data
+public class UserIssueSuggestionFormDTO implements Serializable {
+ private static final long serialVersionUID = -8506264833919404944L;
+ /**
+ * 用户id
+ */
+ @NotBlank(message = "userId不能为空")
+ private String userId;
+
+ /**
+ * 议题id
+ */
+ @NotBlank(message = "issueId不能为空")
+ private String issueId;
+
+ public UserIssueSuggestionFormDTO( String userId, String issueId) {
+ this.userId = userId;
+ this.issueId = issueId;
+ }
+}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueSuggestionResDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueSuggestionResDTO.java
new file mode 100644
index 0000000000..d71c26a999
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueSuggestionResDTO.java
@@ -0,0 +1,55 @@
+package com.epmet.dto.result;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 议题建议列表
+ *
+ * @author yinzuomei@elink-cn.com
+ * @date 2020/11/18 14:00
+ */
+@Data
+public class IssueSuggestionResDTO implements Serializable {
+ private static final long serialVersionUID = -6217415454610258644L;
+ /**
+ * 建议id
+ */
+ private String suggestionId;
+
+ /**
+ * 建议内容
+ */
+ private String suggestion;
+
+ /**
+ * 建议时间戳
+ */
+ private Long publishTime;
+
+ /**
+ * true 公开 false 匿名
+ */
+ private Boolean publicFlag;
+
+ /**
+ * 用户头像url
+ */
+ private String headPhoto;
+
+ /**
+ * 用户显示名称
+ */
+ private String userShowName;
+
+ /**
+ * 态度 - opposition(反对)support(赞成)
+ */
+ private String aititude;
+
+ @JsonIgnore
+ private String userId;
+
+}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/SaveIssueSuggestionResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/SaveIssueSuggestionResultDTO.java
new file mode 100644
index 0000000000..a3c4ba85b3
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/SaveIssueSuggestionResultDTO.java
@@ -0,0 +1,22 @@
+package com.epmet.dto.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 保存居民端用户对议题的建议或意见 返回议题id, 建议id
+ *
+ * @author yinzuomei@elink-cn.com
+ * @date 2020/11/18 13:14
+ */
+@Data
+public class SaveIssueSuggestionResultDTO implements Serializable {
+ private static final long serialVersionUID = 8199657776260756910L;
+ private String issueId;
+ /**
+ * issue_suggestion表主键
+ */
+ private String suggestionId;
+
+}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java
index f30a67b891..f0bc89842e 100644
--- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/GovIssueOpenFeignClient.java
@@ -7,6 +7,10 @@ import com.epmet.dto.form.MyPartIssuesFormDTO;
import com.epmet.dto.form.MyPubIssuesAuditingFormDTO;
import com.epmet.dto.result.MyPartIssuesResultDTO;
import com.epmet.dto.result.MyPubIssuesAuditingResultDTO;
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.IssueSuggestionDTO;
+import com.epmet.dto.form.UserIssueSuggestionFormDTO;
+import com.epmet.dto.result.SaveIssueSuggestionResultDTO;
import com.epmet.feign.fallback.GovIssueOpenFeignClientFallBack;
import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO;
import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO;
@@ -15,6 +19,16 @@ import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
+import java.util.List;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
+import com.epmet.resi.group.dto.group.result.GroupClosedListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupShiftProjectListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupVotingListResultDTO;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.http.MediaType;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+
import java.util.List;
/**
@@ -64,4 +78,51 @@ public interface GovIssueOpenFeignClient {
*/
@PostMapping("/gov/issue/issue/shiftissuetopic")
Result> myShiftIssueTopics(@RequestBody MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO);
+ /**
+ * 小组表决中议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("/gov/issue/issue/groupvotinglist")
+ Result> getVotingListByGroup(@RequestBody AllIssueFormDTO formDTO);
+
+ /**
+ * 小组已转项目议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("/gov/issue/issue/groupshiftprojectlist")
+ Result> getShiftProjectListByGroup(@RequestBody AllIssueFormDTO formDTO);
+
+ /**
+ * 小组已关闭议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("/gov/issue/issue/groupclosedlist")
+ Result> getClosedListByGroup(@RequestBody AllIssueFormDTO formDTO);
+
+ /**
+ * @param formDTO
+ * @author yinzuomei
+ * @description 查询用户对于某个议题的想法 返回一条记录
+ * @Date 2020/11/18 10:17
+ **/
+ @PostMapping(value = "/gov/issue/issuesuggestion/queryuserissuesuggestion", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result queryIssueSuggestion(@RequestBody UserIssueSuggestionFormDTO formDTO);
+
+ /**
+ * @param issueSuggestionDTO
+ * @author yinzuomei
+ * @description 保存居民端用户对议题的建议或意见
+ * @Date 2020/11/18 13:24
+ **/
+ @PostMapping(value = "/gov/issue/issuesuggestion/save", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result saveIssueSuggestion(@RequestBody IssueSuggestionDTO issueSuggestionDTO);
}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java
index 8fa91ff4f7..4992cb285f 100644
--- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/feign/fallback/GovIssueOpenFeignClientFallBack.java
@@ -8,9 +8,19 @@ import com.epmet.dto.form.MyPartIssuesFormDTO;
import com.epmet.dto.form.MyPubIssuesAuditingFormDTO;
import com.epmet.dto.result.MyPartIssuesResultDTO;
import com.epmet.dto.result.MyPubIssuesAuditingResultDTO;
+import com.epmet.commons.tools.constant.ServiceConstant;
+import com.epmet.commons.tools.utils.ModuleUtils;
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.IssueSuggestionDTO;
+import com.epmet.dto.form.UserIssueSuggestionFormDTO;
+import com.epmet.dto.result.SaveIssueSuggestionResultDTO;
import com.epmet.feign.GovIssueOpenFeignClient;
import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO;
import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
+import com.epmet.resi.group.dto.group.result.GroupClosedListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupShiftProjectListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupVotingListResultDTO;
import org.springframework.stereotype.Component;
import java.util.List;
@@ -42,4 +52,64 @@ public class GovIssueOpenFeignClientFallBack implements GovIssueOpenFeignClient
public Result> myShiftIssueTopics(MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER,"myShiftIssueTopics",myShiftIssueTopicsFormDTO);
}
+ /**
+ * 小组表决中议题
+ *
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ */
+ @Override
+ public Result> getVotingListByGroup(AllIssueFormDTO formDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "getVotingListByGroup", formDTO);
+ }
+
+ /**
+ * 小组已转项目议题
+ *
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ */
+ @Override
+ public Result> getShiftProjectListByGroup(AllIssueFormDTO formDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "getShiftProjectListByGroup", formDTO);
+ }
+
+ /**
+ * 小组已关闭议题
+ *
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ */
+ @Override
+ public Result> getClosedListByGroup(AllIssueFormDTO formDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "getShiftProjectListByGroup", formDTO);
+ }
+
+ /**
+ * @param formDTO
+ * @author yinzuomei
+ * @description
+ * @Date 2020/11/18 10:17
+ **/
+ @Override
+ public Result queryIssueSuggestion(UserIssueSuggestionFormDTO formDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "queryIssueSuggestion", formDTO);
+ }
+
+ /**
+ * @param issueSuggestionDTO
+ * @author yinzuomei
+ * @description 保存居民端用户对议题的建议或意见
+ * @Date 2020/11/18 13:24
+ **/
+ @Override
+ public Result saveIssueSuggestion(IssueSuggestionDTO issueSuggestionDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER, "saveIssueSuggestion", issueSuggestionDTO);
+ }
}
diff --git a/epmet-module/gov-issue/gov-issue-server/pom.xml b/epmet-module/gov-issue/gov-issue-server/pom.xml
index 93d9f0334c..0b00f44d12 100644
--- a/epmet-module/gov-issue/gov-issue-server/pom.xml
+++ b/epmet-module/gov-issue/gov-issue-server/pom.xml
@@ -146,7 +146,7 @@
false
https://epmet-dev.elinkservice.cn/api/epmetscan/api
-
+
https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
@@ -183,7 +183,7 @@
false
https://epmet-dev.elinkservice.cn/api/epmetscan/api
-
+
https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
@@ -253,6 +253,13 @@
true
https://epmet-open.elinkservice.cn/api/epmetscan/api
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java
index f15de6e623..7c159b6e3d 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueController.java
@@ -5,6 +5,11 @@ import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.IssueDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
+import com.epmet.excel.IssueExcel;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
+import com.epmet.resi.group.dto.group.result.GroupClosedListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupShiftProjectListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupVotingListResultDTO;
import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO;
import com.epmet.service.IssueService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -62,6 +67,7 @@ public class IssueController {
public Result> getShiftProjectList(@RequestBody ShiftProjectListFromDTO fromDTO) {
return new Result>().ok(issueService.getShiftProjectList(fromDTO));
}
+
/**
* @Description 话题转议题 供群组话题服务调用
* @param issueShiftedFromTopicFormDTO
@@ -179,5 +185,41 @@ public class IssueController {
ValidatorUtils.validateEntity(myShiftIssueTopicsFormDTO, MyShiftIssueTopicsFormDTO.MyShiftIssueTopics.class);
return new Result>().ok(issueService.myShiftIssueTopics(myShiftIssueTopicsFormDTO));
}
+ /**
+ * 小组表决中议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("groupvotinglist")
+ public Result> getVotingListByGroup(@RequestBody AllIssueFormDTO formDTO) {
+ return new Result>().ok(issueService.getVotingListByGroup(formDTO));
+ }
+
+ /**
+ * 小组已转项目议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("groupshiftprojectlist")
+ public Result> getShiftProjectListByGroup(@RequestBody AllIssueFormDTO formDTO) {
+ return new Result>().ok(issueService.getShiftProjectListByGroup(formDTO));
+ }
+
+ /**
+ * 小组已关闭议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:58
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("groupclosedlist")
+ public Result> getClosedListByGroup(@RequestBody AllIssueFormDTO formDTO) {
+ return new Result>().ok(issueService.getClosedListByGroup(formDTO));
+ }
+
}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueCustomerParameterController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueCustomerParameterController.java
index 7371c32666..f6ef0513a6 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueCustomerParameterController.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueCustomerParameterController.java
@@ -43,7 +43,7 @@ import java.util.Map;
* @since v1.0.0 2020-05-11
*/
@RestController
-@RequestMapping("issuecustomerparameter")
+@RequestMapping("parameter")
public class IssueCustomerParameterController {
@Autowired
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSuggestionController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSuggestionController.java
new file mode 100644
index 0000000000..4ce01a56d5
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueSuggestionController.java
@@ -0,0 +1,87 @@
+/**
+ * Copyright 2018 人人开源 https://www.renren.io
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+package com.epmet.controller;
+
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.commons.tools.validator.ValidatorUtils;
+import com.epmet.dto.IssueSuggestionDTO;
+import com.epmet.dto.form.EvaluationListFormDTO;
+import com.epmet.dto.form.UserIssueSuggestionFormDTO;
+import com.epmet.dto.result.IssueSuggestionResDTO;
+import com.epmet.dto.result.SaveIssueSuggestionResultDTO;
+import com.epmet.service.IssueSuggestionService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+
+/**
+ * 居民端用户对议题建议或意见表
+ *
+ * @author generator generator@elink-cn.com
+ * @since v1.0.0 2020-11-18
+ */
+@RestController
+@RequestMapping("issuesuggestion")
+public class IssueSuggestionController {
+
+ @Autowired
+ private IssueSuggestionService issueSuggestionService;
+
+ /**
+ * @param formDTO
+ * @author yinzuomei
+ * @description 查询用户对于某个议题的想法 返回一条记录
+ * @Date 2020/11/18 10:12
+ **/
+ @PostMapping("queryuserissuesuggestion")
+ public Result queryUserIssueSuggestion(@RequestBody UserIssueSuggestionFormDTO formDTO){
+ ValidatorUtils.validateEntity(formDTO);
+ IssueSuggestionDTO issueSuggestionDTO=issueSuggestionService.queryUserIssueSuggestion(formDTO);
+ return new Result().ok(issueSuggestionDTO);
+ }
+
+ /**
+ * @param dto
+ * @author yinzuomei
+ * @description 保存居民端用户对议题的建议或意见
+ * @Date 2020/11/18 13:15
+ **/
+ @PostMapping("save")
+ public Result saveIssueSuggestion(@RequestBody IssueSuggestionDTO dto) {
+ SaveIssueSuggestionResultDTO resultDTO = issueSuggestionService.saveIssueSuggestion(dto);
+ return new Result().ok(resultDTO);
+ }
+
+ /**
+ * @param formDTO
+ * @author yinzuomei
+ * @description 议题建议列表
+ * @Date 2020/11/18 14:15
+ **/
+ @PostMapping("list")
+ public Result> listIssueSug(@RequestBody EvaluationListFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO);
+ List list = issueSuggestionService.listIssueSug(formDTO);
+ return new Result>().ok(list);
+ }
+}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java
index a39266ee76..4071e7fb30 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueDao.java
@@ -22,6 +22,9 @@ import com.epmet.dto.IssueDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.entity.IssueEntity;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
+import com.epmet.resi.group.dto.group.result.GroupClosedListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupVotingListResultDTO;
import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -176,4 +179,32 @@ public interface IssueDao extends BaseDao {
* @date 2020/11/13 3:42 下午
*/
List myShiftIssueTopics(@Param("topicIds") List topicIds,@Param("customerId") String customerId);
+
+
+ /**
+ * 根据话题ID查找表决中议题列表
+ * @author zhaoqifeng
+ * @date 2020/5/13 16:27
+ * @param formDTO 参数
+ * @return java.util.List
+ */
+ List selectVotingListByTopic(AllIssueFormDTO formDTO);
+
+ /**
+ * 根据话题ID查找已转项目议题列表
+ * @author zhaoqifeng
+ * @date 2020/5/13 16:27
+ * @param formDTO 参数
+ * @return java.util.List
+ */
+ List selectShiftIssueByTopic(AllIssueFormDTO formDTO);
+
+ /**
+ * 根据话题ID查找已转项目议题列表
+ * @author zhaoqifeng
+ * @date 2020/5/13 16:27
+ * @param formDTO 参数
+ * @return java.util.List
+ */
+ List selectClosedListByTopic(AllIssueFormDTO formDTO);
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSuggestionDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSuggestionDao.java
new file mode 100644
index 0000000000..a39aeef521
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueSuggestionDao.java
@@ -0,0 +1,54 @@
+/**
+ * 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.dto.IssueSuggestionDTO;
+import com.epmet.dto.form.UserIssueSuggestionFormDTO;
+import com.epmet.dto.result.IssueSuggestionResDTO;
+import com.epmet.entity.IssueSuggestionEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 居民端用户对议题建议或意见表
+ *
+ * @author generator generator@elink-cn.com
+ * @since v1.0.0 2020-11-18
+ */
+@Mapper
+public interface IssueSuggestionDao extends BaseDao {
+
+ /**
+ * @return com.epmet.dto.IssueSuggestionDTO
+ * @param formDTO
+ * @author yinzuomei
+ * @description 查询用户对于某个议题的想法 返回一条记录
+ * @Date 2020/11/18 10:12
+ **/
+ IssueSuggestionDTO selectUserIssueSuggestion(UserIssueSuggestionFormDTO formDTO);
+
+ /**
+ * @param issueId
+ * @author yinzuomei
+ * @description 查询议题建议
+ * @Date 2020/11/18 14:27
+ **/
+ List selectListIssueSugByIssueId(String issueId);
+}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java
index e1d7cfbddf..015eda6a35 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteDetailDao.java
@@ -18,6 +18,7 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
+import com.epmet.dto.IssueVoteDetailDTO;
import com.epmet.dto.form.VoteFormDTO;
import com.epmet.dto.result.IssueAttitudeCountResultDTO;
import com.epmet.dto.result.MyPartIssuesResultDTO;
@@ -82,4 +83,14 @@ public interface IssueVoteDetailDao extends BaseDao {
* @date 2020/11/10 10:01 上午
*/
List myPartIssues(@Param("userId")String userId);
+
+ /**
+ * @return com.epmet.dto.IssueVoteDetailDTO
+ * @param userId
+ * @param issueId
+ * @author yinzuomei
+ * @description 查询用户对某个议题的表决信息
+ * @Date 2020/11/18 14:35
+ **/
+ IssueVoteDetailDTO selectUserIssueDet(@Param("userId") String userId, @Param("issueId") String issueId);
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSuggestionEntity.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSuggestionEntity.java
new file mode 100644
index 0000000000..2d160030ab
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/entity/IssueSuggestionEntity.java
@@ -0,0 +1,66 @@
+/**
+ * Copyright 2018 人人开源 https://www.renren.io
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+package com.epmet.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * 居民端用户对议题建议或意见表
+ *
+ * @author generator generator@elink-cn.com
+ * @since v1.0.0 2020-11-18
+ */
+@Data
+@EqualsAndHashCode(callSuper=false)
+@TableName("issue_suggestion")
+public class IssueSuggestionEntity extends BaseEpmetEntity {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 客户Id customer.id
+ */
+ private String customerId;
+
+ /**
+ * 议题id
+ */
+ private String issueId;
+
+ /**
+ * 议题所属网格id
+ */
+ private String gridId;
+
+ /**
+ * 对议题的想法
+ */
+ private String suggestion;
+
+ /**
+ * 1公开; 0匿名
+ */
+ private Integer publicFlag;
+
+}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java
index ea8a572ef5..0ef84a2f41 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueService.java
@@ -8,6 +8,10 @@ import com.epmet.dto.result.*;
import com.epmet.dto.form.CommonIssueListFormDTO;
import com.epmet.dto.form.IssueShiftedFromTopicFormDTO;
import com.epmet.entity.IssueEntity;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
+import com.epmet.resi.group.dto.group.result.GroupClosedListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupShiftProjectListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupVotingListResultDTO;
import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO;
import java.util.List;
@@ -245,4 +249,31 @@ public interface IssueService extends BaseService {
*/
List myShiftIssueTopics(MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO);
+
+ /**
+ * 小组表决中议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:59
+ * @param formDTO
+ * @return java.util.List
+ */
+ List getVotingListByGroup(AllIssueFormDTO formDTO);
+
+ /**
+ * 小组已转项目议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:59
+ * @param formDTO
+ * @return java.util.List
+ */
+ List getShiftProjectListByGroup(AllIssueFormDTO formDTO);
+
+ /**
+ * 小组已关闭议题
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:59
+ * @param formDTO
+ * @return java.util.List
+ */
+ List getClosedListByGroup(AllIssueFormDTO formDTO);
}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSuggestionService.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSuggestionService.java
new file mode 100644
index 0000000000..a44b08085c
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/IssueSuggestionService.java
@@ -0,0 +1,61 @@
+/**
+ * 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.dto.IssueSuggestionDTO;
+import com.epmet.dto.form.EvaluationListFormDTO;
+import com.epmet.dto.form.UserIssueSuggestionFormDTO;
+import com.epmet.dto.result.IssueSuggestionResDTO;
+import com.epmet.dto.result.SaveIssueSuggestionResultDTO;
+import com.epmet.entity.IssueSuggestionEntity;
+
+import java.util.List;
+
+/**
+ * 居民端用户对议题建议或意见表
+ *
+ * @author generator generator@elink-cn.com
+ * @since v1.0.0 2020-11-18
+ */
+public interface IssueSuggestionService extends BaseService {
+
+ /**
+ * @param formDTO
+ * @author yinzuomei
+ * @description 查询用户对于某个议题的想法 返回一条记录
+ * @Date 2020/11/18 10:12
+ **/
+ IssueSuggestionDTO queryUserIssueSuggestion(UserIssueSuggestionFormDTO formDTO);
+
+ /**
+ * @param dto
+ * @author yinzuomei
+ * @description 保存居民端用户对议题的建议或意见
+ * @Date 2020/11/18 13:16
+ **/
+ SaveIssueSuggestionResultDTO saveIssueSuggestion(IssueSuggestionDTO dto);
+
+ /**
+ * @param formDTO
+ * @author yinzuomei
+ * @description 议题建议列表
+ * @Date 2020/11/18 14:16
+ **/
+ List listIssueSug(EvaluationListFormDTO formDTO);
+}
\ No newline at end of file
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 94e8afc4cc..610219ff2c 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
@@ -37,6 +37,10 @@ import com.epmet.redis.GovIssueRedis;
import com.epmet.redis.IssueVoteDetailRedis;
import com.epmet.resi.group.dto.group.form.GroupInfoFormDTO;
import com.epmet.resi.group.dto.group.result.GroupInfoResultDTO;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
+import com.epmet.resi.group.dto.group.result.GroupClosedListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupShiftProjectListResultDTO;
+import com.epmet.resi.group.dto.group.result.GroupVotingListResultDTO;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.form.GovTopicIssueInfoFormDTO;
import com.epmet.resi.group.dto.topic.form.TopicIdListFormDTO;
@@ -50,6 +54,7 @@ import com.epmet.service.IssueVoteStatisticalService;
import com.epmet.utils.ModuleConstants;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
+import org.apache.commons.collections4.CollectionUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -927,4 +932,72 @@ public class IssueServiceImpl extends BaseServiceImpl imp
return result;
}
+ /**
+ * 小组表决中议题
+ *
+ * @param formDTO
+ * @return java.util.List
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:59
+ */
+ @Override
+ public List getVotingListByGroup(AllIssueFormDTO formDTO) {
+ //查询条件
+ int pageIndex = (formDTO.getPageNo() - NumConstant.ONE) * formDTO.getPageSize();
+ formDTO.setPageNo(pageIndex);
+ return baseDao.selectVotingListByTopic(formDTO);
+ }
+
+ /**
+ * 小组已转项目议题
+ *
+ * @param formDTO
+ * @return java.util.List
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:59
+ */
+ @Override
+ public List getShiftProjectListByGroup(AllIssueFormDTO formDTO) {
+ List resultList = new ArrayList<>();
+ //查询条件
+ int pageIndex = (formDTO.getPageNo() - NumConstant.ONE) * formDTO.getPageSize();
+ formDTO.setPageNo(pageIndex);
+ List issueList = baseDao.selectShiftIssueByTopic(formDTO);
+ if (CollectionUtils.isEmpty(issueList)) {
+ return resultList;
+ }
+ //遍历获取所有的议题Id
+ List issueIds = issueList.stream().map(IssueEntity::getId).collect(Collectors.toList());
+ ShiftProjectsFromDTO shiftProjectsFromDTO = new ShiftProjectsFromDTO();
+ shiftProjectsFromDTO.setIssueIds(issueIds);
+ List projectList = govProjectFeignClient.getProjectByIssue(shiftProjectsFromDTO).getData();
+ resultList = issueList.stream().flatMap(issue -> projectList.stream().filter(p -> issue.getId().equals(p.getOriginId())).map(project ->{
+ GroupShiftProjectListResultDTO shiftProject = new GroupShiftProjectListResultDTO();
+ shiftProject.setIssueId(issue.getId());
+ shiftProject.setIssueTitle(issue.getIssueTitle());
+ shiftProject.setCurrentHandleDepartMent(project.getDepartmentNameList());
+ shiftProject.setPublicReply(project.getPublicReply());
+ shiftProject.setIssueShiftedTime(project.getCreatedTime().getTime()/NumConstant.ONE_THOUSAND);
+ shiftProject.setProjectStatus(project.getStatus());
+ return shiftProject;
+ })).collect(Collectors.toList());
+ return resultList;
+ }
+
+ /**
+ * 小组已关闭议题
+ *
+ * @param formDTO
+ * @return java.util.List
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:59
+ */
+ @Override
+ public List getClosedListByGroup(AllIssueFormDTO formDTO) {
+ //查询条件
+ int pageIndex = (formDTO.getPageNo() - NumConstant.ONE) * formDTO.getPageSize();
+ formDTO.setPageNo(pageIndex);
+ return baseDao.selectClosedListByTopic(formDTO);
+ }
+
}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSuggestionServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSuggestionServiceImpl.java
new file mode 100644
index 0000000000..bbf037ea80
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueSuggestionServiceImpl.java
@@ -0,0 +1,173 @@
+/**
+ * Copyright 2018 人人开源 https://www.renren.io
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+package com.epmet.service.impl;
+
+import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
+import com.epmet.commons.tools.constant.StrConstant;
+import com.epmet.commons.tools.exception.EpmetErrorCode;
+import com.epmet.commons.tools.exception.RenException;
+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.ConvertUtils;
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.commons.tools.utils.ScanContentUtils;
+import com.epmet.dao.IssueSuggestionDao;
+import com.epmet.dao.IssueVoteDetailDao;
+import com.epmet.dto.IssueDTO;
+import com.epmet.dto.IssueSuggestionDTO;
+import com.epmet.dto.IssueVoteDetailDTO;
+import com.epmet.dto.form.EvaluationListFormDTO;
+import com.epmet.dto.form.UserIssueSuggestionFormDTO;
+import com.epmet.dto.form.UserResiInfoListFormDTO;
+import com.epmet.dto.result.IssueSuggestionResDTO;
+import com.epmet.dto.result.SaveIssueSuggestionResultDTO;
+import com.epmet.dto.result.UserResiInfoResultDTO;
+import com.epmet.entity.IssueSuggestionEntity;
+import com.epmet.feign.EpmetUserFeignClient;
+import com.epmet.service.IssueService;
+import com.epmet.service.IssueSuggestionService;
+import com.github.pagehelper.PageHelper;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
+/**
+ * 居民端用户对议题建议或意见表
+ *
+ * @author generator generator@elink-cn.com
+ * @since v1.0.0 2020-11-18
+ */
+@Slf4j
+@Service
+public class IssueSuggestionServiceImpl extends BaseServiceImpl implements IssueSuggestionService {
+ @Autowired
+ private IssueService issueService;
+ @Value("${openapi.scan.server.url}")
+ private String scanApiUrl;
+ @Value("${openapi.scan.method.textSyncScan}")
+ private String textSyncScanMethod;
+ @Autowired
+ private EpmetUserFeignClient epmetUserFeignClient;
+ @Autowired
+ private IssueVoteDetailDao issueVoteDetailDao;
+
+ /**
+ * @param formDTO
+ * @author yinzuomei
+ * @description 查询用户对于某个议题的想法 返回一条记录
+ * @Date 2020/11/18 10:12
+ **/
+ @Override
+ public IssueSuggestionDTO queryUserIssueSuggestion(UserIssueSuggestionFormDTO formDTO) {
+ return baseDao.selectUserIssueSuggestion(formDTO);
+ }
+
+ /**
+ * @param dto
+ * @author yinzuomei
+ * @description 保存居民端用户对议题的建议或意见
+ * @Date 2020/11/18 13:16
+ **/
+ @Override
+ public SaveIssueSuggestionResultDTO saveIssueSuggestion(IssueSuggestionDTO dto) {
+ //是否表决过
+ IssueVoteDetailDTO issueVoteDetailDTO = issueVoteDetailDao.selectUserIssueDet(dto.getCreatedBy(), dto.getIssueId());
+ if(null==issueVoteDetailDTO){
+ throw new RenException(EpmetErrorCode.VOTE_ISSUE_PLEASE.getCode());
+ }
+ //校验建议内容
+ TextScanParamDTO textScanParamDTO = new TextScanParamDTO();
+ TextTaskDTO taskDTO = new TextTaskDTO();
+ taskDTO.setDataId(UUID.randomUUID().toString().replace("-", ""));
+ taskDTO.setContent(dto.getSuggestion());
+ textScanParamDTO.getTasks().add(taskDTO);
+ Result textSyncScanResult = ScanContentUtils.textSyncScan(scanApiUrl.concat(textSyncScanMethod), textScanParamDTO);
+ if (!textSyncScanResult.success()) {
+ log.warn("居民端用户对议题发表建议,内容审核服务返回失败");
+ throw new RenException(EpmetErrorCode.SERVER_ERROR.getCode());
+ } else {
+ if (!textSyncScanResult.getData().isAllPass()) {
+ throw new RenException(EpmetErrorCode.TEXT_SCAN_FAILED.getCode());
+ }
+ }
+ //赋值网格id
+ IssueDTO issueDTO = issueService.get(dto.getIssueId());
+ if (null == issueDTO) {
+ throw new RenException(String.format("根据议题id%s,没有找到议题信息", dto.getIssueId()));
+ }
+ dto.setGridId(issueDTO.getGridId());
+ dto.setCustomerId(issueDTO.getCustomerId());
+ //插入
+ IssueSuggestionEntity entity = ConvertUtils.sourceToTarget(dto, IssueSuggestionEntity.class);
+ insert(entity);
+ SaveIssueSuggestionResultDTO resultDTO = new SaveIssueSuggestionResultDTO();
+ resultDTO.setIssueId(dto.getIssueId());
+ resultDTO.setSuggestionId(entity.getId());
+ return resultDTO;
+ }
+
+ /**
+ * @param formDTO
+ * @author yinzuomei
+ * @description 议题建议列表
+ * @Date 2020/11/18 14:16
+ **/
+ @Override
+ public List listIssueSug(EvaluationListFormDTO formDTO) {
+ PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize());
+ List list = baseDao.selectListIssueSugByIssueId(formDTO.getIssueId());
+ //用户信息公开的userId集合
+ Set userIds = new HashSet<>();
+ list.forEach(issueSuggestion -> {
+ if (issueSuggestion.getPublicFlag()) {
+ userIds.add(issueSuggestion.getUserId());
+ }
+ IssueVoteDetailDTO issueVoteDetailDTO = issueVoteDetailDao.selectUserIssueDet(issueSuggestion.getUserId(), formDTO.getIssueId());
+ issueSuggestion.setAititude(null != issueVoteDetailDTO ? issueVoteDetailDTO.getAttitude() : StrConstant.EPMETY_STR);
+ });
+ //查询这部分人的基本信息
+ if (!CollectionUtils.isEmpty(userIds)) {
+ Result> userInfoRes = epmetUserFeignClient.getUserResiInfoList(new UserResiInfoListFormDTO(new ArrayList<>(userIds)));
+ if (userInfoRes.success() && !CollectionUtils.isEmpty(userInfoRes.getData())) {
+ Map userBaseInfoMap = userInfoRes.getData().stream().collect(Collectors.toMap(UserResiInfoResultDTO::getUserId, Function.identity()));
+ //赋值
+ list.forEach(issueSuggestionInfo -> {
+ if (issueSuggestionInfo.getPublicFlag()) {
+ UserResiInfoResultDTO userInfo = userBaseInfoMap.get(issueSuggestionInfo.getUserId());
+ if (null != userInfo && StringUtils.isNotBlank(userInfo.getHeadPhoto())) {
+ issueSuggestionInfo.setHeadPhoto(userInfo.getHeadPhoto());
+ }
+ if (null != userInfo && StringUtils.isNotBlank(userInfo.getShowName())) {
+ issueSuggestionInfo.setUserShowName(userInfo.getShowName());
+ }
+ }
+ });
+ }
+ }
+ return list;
+ }
+
+}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/bootstrap.yml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/bootstrap.yml
index e523016b91..39f6c8b80c 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/bootstrap.yml
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/bootstrap.yml
@@ -114,4 +114,10 @@ openapi:
#pageHelper分页插件
pagehelper:
helper-dialect: mysql
- reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
\ No newline at end of file
+ reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
+
+dingTalk:
+ robot:
+ webHook: @dingTalk.robot.webHook@
+ secret: @dingTalk.robot.secret@
+
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/db/migration/V0.0.2__issue_audit_tables.sql b/epmet-module/gov-issue/gov-issue-server/src/main/resources/db/migration/V0.0.2__issue_audit_tables.sql
new file mode 100644
index 0000000000..93f8c2338e
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/db/migration/V0.0.2__issue_audit_tables.sql
@@ -0,0 +1,37 @@
+drop table if exists issue_application;
+CREATE TABLE `issue_application` (
+ `ID` varchar(64) NOT NULL COMMENT '主键',
+ `CUSTOMER_ID` varchar(32) NOT NULL COMMENT '客户ID',
+ `ISSUE_TITLE` varchar(128) NOT NULL COMMENT '议题名称 ',
+ `SUGGESTION` varchar(1024) NOT NULL COMMENT '建议',
+ `APPLY_STATUS` varchar(32) NOT NULL COMMENT '审核状态:under_auditing:待审核;approved:通过;rejected:驳回',
+ `TOPIC_ID` varchar(32) NOT NULL COMMENT '话题id',
+ `GROUP_ID` varchar(64) NOT NULL COMMENT '小组id',
+ `GRID_ID` varchar(32) NOT NULL COMMENT '网格ID 居民端议题对应一个网格Id',
+ `ISSUE_ID` varchar(64) DEFAULT NULL COMMENT '审核通过后对应的 议题id',
+ `PASSED_REASON` varchar(1024) DEFAULT NULL COMMENT '审核通过时填写的理由',
+ `DEL_FLAG` varchar(1) NOT NULL DEFAULT '0' COMMENT '删除标识 0未删除、1已删除',
+ `REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
+ `CREATED_BY` varchar(32) NOT NULL COMMENT '创建人',
+ `CREATED_TIME` datetime NOT NULL COMMENT '创建时间:第一次提交审核的时间,注意和历史表的第一条记录时间一致',
+ `UPDATED_BY` varchar(32) NOT NULL COMMENT '更新人',
+ `UPDATED_TIME` datetime NOT NULL COMMENT '更新时间',
+ PRIMARY KEY (`ID`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='话题转议题申请表';
+
+drop table if exists issue_application_history;
+CREATE TABLE `issue_application_history` (
+ `ID` varchar(64) NOT NULL COMMENT '主键',
+ `CUSTOMER_ID` varchar(32) NOT NULL COMMENT '客户ID',
+ `ISSUE_APPLICATION_ID` varchar(64) NOT NULL COMMENT '话题转议题申请表 issue_application.id',
+ `ACTION_TYPE` varchar(32) NOT NULL COMMENT 'under_auditing:提交审核;\r\napproved:审核通过,\r\nrejected:驳回',
+ `REASON` varchar(1024) DEFAULT NULL COMMENT '审核时的说明',
+ `STAFF_NAME` varchar(255) DEFAULT NULL COMMENT '工作端人员姓名',
+ `DEL_FLAG` varchar(1) NOT NULL DEFAULT '0' COMMENT '删除标识:0 未删除 1已删除',
+ `REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
+ `CREATED_BY` varchar(64) NOT NULL COMMENT '创建人 提交人',
+ `CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
+ `UPDATED_BY` varchar(64) NOT NULL COMMENT '修改人ID',
+ `UPDATED_TIME` datetime NOT NULL COMMENT '修改时间',
+ PRIMARY KEY (`ID`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='话题转议题审核历史表';
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/db/migration/V0.0.3__issue_sugg_tables.sql b/epmet-module/gov-issue/gov-issue-server/src/main/resources/db/migration/V0.0.3__issue_sugg_tables.sql
new file mode 100644
index 0000000000..0ee88d49d5
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/db/migration/V0.0.3__issue_sugg_tables.sql
@@ -0,0 +1,16 @@
+drop table if exists issue_suggestion;
+CREATE TABLE `issue_suggestion` (
+ `ID` varchar(64) NOT NULL COMMENT '主键',
+ `CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id customer.id',
+ `ISSUE_ID` varchar(64) NOT NULL COMMENT '议题id',
+ `GRID_ID` varchar(64) NOT NULL COMMENT '议题所属网格id',
+ `SUGGESTION` varchar(512) NOT NULL COMMENT '对议题的想法',
+ `PUBLIC_FLAG` tinyint(1) NOT NULL COMMENT '1公开; 0匿名',
+ `DEL_FLAG` varchar(1) NOT NULL DEFAULT '0' COMMENT '删除标识:0 未删除 1已删除',
+ `REVISION` int(11) NOT NULL DEFAULT '0' COMMENT '乐观锁',
+ `CREATED_BY` varchar(64) NOT NULL COMMENT '提建议的人',
+ `CREATED_TIME` datetime NOT NULL COMMENT '创建时间',
+ `UPDATED_BY` varchar(64) NOT NULL COMMENT '修改人ID',
+ `UPDATED_TIME` datetime NOT NULL COMMENT '修改时间',
+ PRIMARY KEY (`ID`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='居民端用户对议题建议或意见表';
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/logback-spring.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/logback-spring.xml
index ef4cf50330..ade9c2dcc3 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/logback-spring.xml
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/logback-spring.xml
@@ -5,6 +5,8 @@
+
+
${appname}
@@ -125,11 +127,14 @@
15
-
-
+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
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 21a7eddace..7eeb9a28f7 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
@@ -377,6 +377,69 @@
del_flag = 0
AND source_id = #{topicId}
+
+ SELECT
+ *
+ FROM
+ issue
+ WHERE
+ DEL_FLAG = '0'
+ AND GRID_ID = #{gridId}
+ AND ISSUE_STATUS = 'shift_project'
+ ORDER BY UPDATED_TIME DESC
+
+
+ SELECT
+ ID,
+ IFNULL(ISSUE_TITLE, '') AS issueTitle
+ FROM
+ issue
+ WHERE
+ DEL_FLAG = '0'
+ AND SOURCE_TYPE = 'resi_topic'
+
+ SOURCE_ID = #{topic}
+
+ AND ISSUE_STATUS = 'shift_project'
+ ORDER BY UPDATED_TIME DESC
+ LIMIT #{pageNo}, #{pageSize}
+
+
+ SELECT
+ ID AS "issueId",
+ IFNULL(ISSUE_TITLE, '') AS "issueTitle",
+ UNIX_TIMESTAMP( CREATED_TIME ) AS "issuePublishTime",
+ IFNULL(SUGGESTION, '') AS "suggestion"
+ FROM
+ issue
+ WHERE
+ DEL_FLAG = '0'
+ AND SOURCE_TYPE = 'resi_topic'
+
+ SOURCE_ID = #{topic}
+
+ AND ISSUE_STATUS = 'voting'
+ ORDER BY CREATED_TIME DESC
+ LIMIT #{pageNo}, #{pageSize}
+
+
+ SELECT
+ ID AS "issueId",
+ IFNULL(ISSUE_TITLE, '') AS "issueTitle",
+ IFNULL(CLOSE_REASON, '') AS "solution",
+ UNIX_TIMESTAMP( UPDATED_TIME ) AS "issueClosedTime"
+ FROM
+ issue
+ WHERE
+ DEL_FLAG = '0'
+ AND SOURCE_TYPE = 'resi_topic'
+
+ SOURCE_ID = #{topic}
+
+ AND ISSUE_STATUS = 'closed'
+ ORDER BY UPDATED_TIME DESC
+ LIMIT #{pageNo}, #{pageSize}
+
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSuggestionDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSuggestionDao.xml
new file mode 100644
index 0000000000..0500ec26e8
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueSuggestionDao.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+ SELECT
+ *
+ FROM
+ issue_suggestion i
+ WHERE
+ i.DEL_FLAG = '0'
+ AND i.ISSUE_ID = #{issueId}
+ AND i.CREATED_BY=#{userId}
+
+
+
+
+ SELECT
+ ig.id AS suggestionId,
+ ig.SUGGESTION,
+ ig.CREATED_TIME AS publishTime,
+ ig.PUBLIC_FLAG AS publicFlag,
+ '' AS headPhoto,
+ '' AS userShowName,
+ '' AS aititude,
+ ig.CREATED_BY AS userId
+ FROM
+ issue_suggestion ig
+ WHERE
+ ig.DEL_FLAG = '0'
+ AND ig.ISSUE_ID =#{issueId}
+ ORDER BY
+ ig.CREATED_TIME DESC
+
+
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml
index 523dd1cb63..08249e8651 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteDetailDao.xml
@@ -87,4 +87,16 @@
AND vd.CREATED_BY = #{userId}
ORDER BY i.CREATED_TIME DESC
+
+
+
+ SELECT
+ *
+ FROM
+ issue_vote_detail ivd
+ WHERE
+ ivd.DEL_FLAG = '0'
+ AND ivd.ISSUE_ID =#{issueId}
+ AND ivd.CREATED_BY =#{userId}
+
\ No newline at end of file
diff --git a/epmet-module/gov-mine/gov-mine-server/pom.xml b/epmet-module/gov-mine/gov-mine-server/pom.xml
index 54f3b8e225..00baee29cf 100644
--- a/epmet-module/gov-mine/gov-mine-server/pom.xml
+++ b/epmet-module/gov-mine/gov-mine-server/pom.xml
@@ -136,6 +136,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -160,6 +166,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -184,6 +196,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -205,6 +223,13 @@
false
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/resources/bootstrap.yml b/epmet-module/gov-mine/gov-mine-server/src/main/resources/bootstrap.yml
index f19d228c96..c49ee432c1 100644
--- a/epmet-module/gov-mine/gov-mine-server/src/main/resources/bootstrap.yml
+++ b/epmet-module/gov-mine/gov-mine-server/src/main/resources/bootstrap.yml
@@ -94,3 +94,8 @@ hystrix:
ribbon:
ReadTimeout: 300000
ConnectTimeout: 300000
+
+dingTalk:
+ robot:
+ webHook: @dingTalk.robot.webHook@
+ secret: @dingTalk.robot.secret@
diff --git a/epmet-module/gov-mine/gov-mine-server/src/main/resources/logback-spring.xml b/epmet-module/gov-mine/gov-mine-server/src/main/resources/logback-spring.xml
index a03a6843bd..80e1ea56e2 100644
--- a/epmet-module/gov-mine/gov-mine-server/src/main/resources/logback-spring.xml
+++ b/epmet-module/gov-mine/gov-mine-server/src/main/resources/logback-spring.xml
@@ -5,6 +5,8 @@
+
+
${appname}
@@ -125,11 +127,14 @@
15
-
-
+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
diff --git a/epmet-module/gov-org/gov-org-server/pom.xml b/epmet-module/gov-org/gov-org-server/pom.xml
index 5c6f53c739..ecfdb329f1 100644
--- a/epmet-module/gov-org/gov-org-server/pom.xml
+++ b/epmet-module/gov-org/gov-org-server/pom.xml
@@ -150,6 +150,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -182,6 +188,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -215,6 +227,12 @@
true
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -244,6 +262,13 @@
true
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/bootstrap.yml b/epmet-module/gov-org/gov-org-server/src/main/resources/bootstrap.yml
index 4657c30354..8651e49ce2 100644
--- a/epmet-module/gov-org/gov-org-server/src/main/resources/bootstrap.yml
+++ b/epmet-module/gov-org/gov-org-server/src/main/resources/bootstrap.yml
@@ -130,4 +130,9 @@ ribbon:
#pageHelper分页插件
pagehelper:
helper-dialect: mysql
- reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
\ No newline at end of file
+ reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
+
+dingTalk:
+ robot:
+ webHook: @dingTalk.robot.webHook@
+ secret: @dingTalk.robot.secret@
\ No newline at end of file
diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/logback-spring.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/logback-spring.xml
index e05ed7a188..24d44d88f9 100644
--- a/epmet-module/gov-org/gov-org-server/src/main/resources/logback-spring.xml
+++ b/epmet-module/gov-org/gov-org-server/src/main/resources/logback-spring.xml
@@ -5,6 +5,8 @@
+
+
${appname}
@@ -125,11 +127,14 @@
15
-
-
+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ParameterFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ParameterFormDTO.java
new file mode 100644
index 0000000000..d05c1c520c
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ParameterFormDTO.java
@@ -0,0 +1,56 @@
+package com.epmet.dto.form;
+
+import com.epmet.commons.tools.validator.group.AddGroup;
+import com.epmet.commons.tools.validator.group.DefaultGroup;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+/**
+ * @author zhaoqifeng
+ * @dscription
+ * @date 2020/11/18 15:00
+ */
+@NoArgsConstructor
+@Data
+public class ParameterFormDTO implements Serializable {
+
+ private static final long serialVersionUID = 6943367994919967821L;
+ /**
+ * 客户ID
+ */
+ @NotBlank(message = "客户ID不能为空", groups = DefaultGroup.class)
+ private String customerId;
+ /**
+ * 可滞留天数
+ */
+ @NotBlank(message = "可滞留天数不能为空", groups = AddGroup.class)
+ private String detentionDays;
+ /**
+ * 计算方式 工作日work 日历天calendar
+ */
+ @NotBlank(message = "计算方式 不能为空", groups = AddGroup.class)
+ private String calculation;
+ /**
+ * 即将超期提醒时间
+ */
+ @NotBlank(message = "即将超期提醒时间不能为空", groups = AddGroup.class)
+ private String remindTime;
+ /**
+ * 推送时间 默认 上午8点
+ */
+ @NotBlank(message = "推送时间不能为空", groups = AddGroup.class)
+ private String pushTime;
+ /**
+ * 设定核算单位天开始时间
+ */
+ @NotBlank(message = "设定核算单位天开始时间不能为空", groups = AddGroup.class)
+ private String startTime;
+ /**
+ * 设定核算单位天结束时间
+ */
+ @NotBlank(message = "设定核算单位天结束时间不能为空", groups = AddGroup.class)
+ private String endTime;
+}
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ParameterResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ParameterResultDTO.java
new file mode 100644
index 0000000000..00d2cee217
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ParameterResultDTO.java
@@ -0,0 +1,39 @@
+package com.epmet.dto.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author zhaoqifeng
+ * @dscription
+ * @date 2020/11/18 15:19
+ */
+@Data
+public class ParameterResultDTO implements Serializable {
+ private static final long serialVersionUID = -2066374948905858262L;
+ /**
+ * 可滞留天数
+ */
+ private String detentionDays;
+ /**
+ * 计算方式 工作日work 日历天calendar
+ */
+ private String calculation;
+ /**
+ * 即将超期提醒时间
+ */
+ private String remindTime;
+ /**
+ * 推送时间 默认 上午8点
+ */
+ private String pushTime;
+ /**
+ * 设定核算单位天开始时间
+ */
+ private String startTime;
+ /**
+ * 设定核算单位天结束时间
+ */
+ private String endTime;
+}
diff --git a/epmet-module/gov-project/gov-project-server/pom.xml b/epmet-module/gov-project/gov-project-server/pom.xml
index 06ec668460..0dc357dada 100644
--- a/epmet-module/gov-project/gov-project-server/pom.xml
+++ b/epmet-module/gov-project/gov-project-server/pom.xml
@@ -157,6 +157,13 @@
false
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -190,6 +197,12 @@
false
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -223,6 +236,12 @@
true
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -253,6 +272,13 @@
true
https://epmet-open.elinkservice.cn/api/epmetscan/api
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/CustomerProjectParameterController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/CustomerProjectParameterController.java
index 93139cfa21..e9b60a9a4c 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/CustomerProjectParameterController.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/CustomerProjectParameterController.java
@@ -26,6 +26,8 @@ import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.dto.CustomerProjectParameterDTO;
+import com.epmet.dto.form.ParameterFormDTO;
+import com.epmet.dto.result.ParameterResultDTO;
import com.epmet.excel.CustomerProjectParameterExcel;
import com.epmet.service.CustomerProjectParameterService;
import org.springframework.beans.factory.annotation.Autowired;
@@ -43,7 +45,7 @@ import java.util.Map;
* @since v1.0.0 2020-05-11
*/
@RestController
-@RequestMapping("customerprojectparameter")
+@RequestMapping("parameter")
public class CustomerProjectParameterController {
@Autowired
@@ -91,4 +93,46 @@ public class CustomerProjectParameterController {
ExcelUtils.exportExcelToTarget(response, null, list, CustomerProjectParameterExcel.class);
}
+ /**
+ * 滞留提醒-初始化
+ * @author zhaoqifeng
+ * @date 2020/11/18 15:26
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result
+ */
+ @PostMapping("remindinit")
+ public Result remindInit(@RequestBody ParameterFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO, DefaultGroup.class);
+ ParameterResultDTO result = customerProjectParameterService.remindInit(formDTO);
+ return new Result().ok(result);
+ }
+
+ /**
+ * 滞留提醒-保存
+ * @author zhaoqifeng
+ * @date 2020/11/18 15:26
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result
+ */
+ @PostMapping("remindsave")
+ public Result remindSave(@RequestBody ParameterFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO, UpdateGroup.class, DefaultGroup.class);
+ customerProjectParameterService.remindSave(formDTO);
+ return new Result();
+ }
+
+ /**
+ * 滞留提醒-恢复默认
+ * @author zhaoqifeng
+ * @date 2020/11/18 15:26
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result
+ */
+ @PostMapping("reminddefault")
+ public Result remindDefault(@RequestBody ParameterFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO, DefaultGroup.class);
+ customerProjectParameterService.remindDefault(formDTO);
+ return new Result();
+ }
+
}
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.java
index c9b487e7d0..8dc8a120ca 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/CustomerProjectParameterService.java
@@ -20,6 +20,8 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.CustomerProjectParameterDTO;
+import com.epmet.dto.form.ParameterFormDTO;
+import com.epmet.dto.result.ParameterResultDTO;
import com.epmet.entity.CustomerProjectParameterEntity;
import java.util.List;
@@ -137,4 +139,31 @@ public interface CustomerProjectParameterService extends BaseService
+
+
${appname}
@@ -125,11 +127,14 @@
15
-
-
+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
diff --git a/epmet-module/gov-voice/gov-voice-server/pom.xml b/epmet-module/gov-voice/gov-voice-server/pom.xml
index 1c80814b41..f6b5b7d0a3 100644
--- a/epmet-module/gov-voice/gov-voice-server/pom.xml
+++ b/epmet-module/gov-voice/gov-voice-server/pom.xml
@@ -132,6 +132,12 @@
false
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -165,6 +171,12 @@
false
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -198,6 +210,12 @@
true
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -228,6 +246,13 @@
true
https://epmet-open.elinkservice.cn/api/epmetscan/api
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/bootstrap.yml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/bootstrap.yml
index 8e85f694ed..6bf735a325 100644
--- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/bootstrap.yml
+++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/bootstrap.yml
@@ -114,4 +114,9 @@ openapi:
#pageHelper分页插件
pagehelper:
helper-dialect: mysql
- reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
\ No newline at end of file
+ reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
+
+dingTalk:
+ robot:
+ webHook: @dingTalk.robot.webHook@
+ secret: @dingTalk.robot.secret@
\ No newline at end of file
diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/logback-spring.xml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/logback-spring.xml
index e9ef5d3b60..da83651e0c 100644
--- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/logback-spring.xml
+++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/logback-spring.xml
@@ -5,6 +5,8 @@
+
+
${appname}
@@ -125,11 +127,14 @@
15
-
-
+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
diff --git a/epmet-module/oper-access/oper-access-server/pom.xml b/epmet-module/oper-access/oper-access-server/pom.xml
index f78794d104..4a9152e2d0 100644
--- a/epmet-module/oper-access/oper-access-server/pom.xml
+++ b/epmet-module/oper-access/oper-access-server/pom.xml
@@ -119,6 +119,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -151,6 +157,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -183,6 +195,12 @@
true
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -212,6 +230,13 @@
true
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/oper-access/oper-access-server/src/main/resources/bootstrap.yml b/epmet-module/oper-access/oper-access-server/src/main/resources/bootstrap.yml
index b7cbcbe1af..34a3d56ae9 100644
--- a/epmet-module/oper-access/oper-access-server/src/main/resources/bootstrap.yml
+++ b/epmet-module/oper-access/oper-access-server/src/main/resources/bootstrap.yml
@@ -117,4 +117,9 @@ ribbon:
#pageHelper分页插件
pagehelper:
helper-dialect: mysql
- reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
\ No newline at end of file
+ reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
+
+dingTalk:
+ robot:
+ webHook: @dingTalk.robot.webHook@
+ secret: @dingTalk.robot.secret@
\ No newline at end of file
diff --git a/epmet-module/oper-access/oper-access-server/src/main/resources/logback-spring.xml b/epmet-module/oper-access/oper-access-server/src/main/resources/logback-spring.xml
index f12b007132..d0829fae23 100644
--- a/epmet-module/oper-access/oper-access-server/src/main/resources/logback-spring.xml
+++ b/epmet-module/oper-access/oper-access-server/src/main/resources/logback-spring.xml
@@ -5,6 +5,8 @@
+
+
${appname}
@@ -125,11 +127,14 @@
15
-
-
+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
diff --git a/epmet-module/oper-crm/oper-crm-server/pom.xml b/epmet-module/oper-crm/oper-crm-server/pom.xml
index 8535f16485..a721c86f4f 100644
--- a/epmet-module/oper-crm/oper-crm-server/pom.xml
+++ b/epmet-module/oper-crm/oper-crm-server/pom.xml
@@ -140,6 +140,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -172,6 +178,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -204,6 +216,12 @@
true
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -236,6 +254,13 @@
true
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/oper-crm/oper-crm-server/src/main/resources/bootstrap.yml b/epmet-module/oper-crm/oper-crm-server/src/main/resources/bootstrap.yml
index 422a4459a9..7b14f2cad1 100644
--- a/epmet-module/oper-crm/oper-crm-server/src/main/resources/bootstrap.yml
+++ b/epmet-module/oper-crm/oper-crm-server/src/main/resources/bootstrap.yml
@@ -123,4 +123,9 @@ ribbon:
#pageHelper分页插件
pagehelper:
helper-dialect: mysql
- reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
\ No newline at end of file
+ reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
+
+dingTalk:
+ robot:
+ webHook: @dingTalk.robot.webHook@
+ secret: @dingTalk.robot.secret@
\ No newline at end of file
diff --git a/epmet-module/oper-crm/oper-crm-server/src/main/resources/logback-spring.xml b/epmet-module/oper-crm/oper-crm-server/src/main/resources/logback-spring.xml
index 68c16e906e..0c531843f6 100644
--- a/epmet-module/oper-crm/oper-crm-server/src/main/resources/logback-spring.xml
+++ b/epmet-module/oper-crm/oper-crm-server/src/main/resources/logback-spring.xml
@@ -5,6 +5,8 @@
+
+
${appname}
@@ -125,11 +127,14 @@
15
-
-
+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
diff --git a/epmet-module/oper-crm/oper-crm-server/src/main/resources/CustomerAppDao.xml b/epmet-module/oper-crm/oper-crm-server/src/main/resources/mapper/CustomerAppDao.xml
similarity index 100%
rename from epmet-module/oper-crm/oper-crm-server/src/main/resources/CustomerAppDao.xml
rename to epmet-module/oper-crm/oper-crm-server/src/main/resources/mapper/CustomerAppDao.xml
diff --git a/epmet-module/oper-customize/oper-customize-server/pom.xml b/epmet-module/oper-customize/oper-customize-server/pom.xml
index 20f7861056..a36f6d46d1 100644
--- a/epmet-module/oper-customize/oper-customize-server/pom.xml
+++ b/epmet-module/oper-customize/oper-customize-server/pom.xml
@@ -123,6 +123,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -155,6 +161,12 @@
false
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -187,6 +199,12 @@
true
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -216,6 +234,13 @@
true
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/resources/bootstrap.yml b/epmet-module/oper-customize/oper-customize-server/src/main/resources/bootstrap.yml
index 14755776eb..b6cb0ffbb8 100644
--- a/epmet-module/oper-customize/oper-customize-server/src/main/resources/bootstrap.yml
+++ b/epmet-module/oper-customize/oper-customize-server/src/main/resources/bootstrap.yml
@@ -117,4 +117,9 @@ ribbon:
#pageHelper分页插件
pagehelper:
helper-dialect: mysql
- reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
\ No newline at end of file
+ reasonable: false #分页合理化配置,例如输入页码为-1,则自动转化为最小页码1
+
+dingTalk:
+ robot:
+ webHook: @dingTalk.robot.webHook@
+ secret: @dingTalk.robot.secret@
\ No newline at end of file
diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/resources/logback-spring.xml b/epmet-module/oper-customize/oper-customize-server/src/main/resources/logback-spring.xml
index de2aa4d947..d02b4bffb3 100644
--- a/epmet-module/oper-customize/oper-customize-server/src/main/resources/logback-spring.xml
+++ b/epmet-module/oper-customize/oper-customize-server/src/main/resources/logback-spring.xml
@@ -5,6 +5,8 @@
+
+
${appname}
@@ -125,11 +127,14 @@
15
-
-
+
+
ERROR
ACCEPT
DENY
+ ${webHook}
+ ${secret}
+ ${appname}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/AllIssueFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/AllIssueFormDTO.java
new file mode 100644
index 0000000000..10720f194d
--- /dev/null
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/form/AllIssueFormDTO.java
@@ -0,0 +1,28 @@
+package com.epmet.resi.group.dto.group.form;
+
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author zhaoqifeng
+ * @dscription
+ * @date 2020/11/17 10:25
+ */
+@NoArgsConstructor
+@Data
+public class AllIssueFormDTO implements Serializable {
+
+ private static final long serialVersionUID = 9033824126731443502L;
+ /**
+ * 小组ID
+ */
+ @NotBlank(message = "小组id不能为空")
+ private String groupId;
+ private Integer pageNo = 1;
+ private Integer pageSize = 20;
+ private List topicIds;
+}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupClosedListResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupClosedListResultDTO.java
new file mode 100644
index 0000000000..619fba8322
--- /dev/null
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupClosedListResultDTO.java
@@ -0,0 +1,34 @@
+package com.epmet.resi.group.dto.group.result;
+
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * @author zhaoqifeng
+ * @dscription
+ * @date 2020/11/17 11:02
+ */
+@NoArgsConstructor
+@Data
+public class GroupClosedListResultDTO implements Serializable {
+
+ private static final long serialVersionUID = 3152596066530973548L;
+ /**
+ * 议题ID
+ */
+ private String issueId;
+ /**
+ * 议题标题
+ */
+ private String issueTitle;
+ /**
+ * 议题关闭时间 时间戳
+ */
+ private Long issueClosedTime;
+ /**
+ * 解决方案
+ */
+ private String solution;
+}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupShiftProjectListResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupShiftProjectListResultDTO.java
new file mode 100644
index 0000000000..cbfba00fe3
--- /dev/null
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupShiftProjectListResultDTO.java
@@ -0,0 +1,43 @@
+package com.epmet.resi.group.dto.group.result;
+
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @author zhaoqifeng
+ * @dscription
+ * @date 2020/11/17 10:58
+ */
+@NoArgsConstructor
+@Data
+public class GroupShiftProjectListResultDTO implements Serializable {
+
+ private static final long serialVersionUID = 4338078715001777226L;
+ /**
+ * 议题ID
+ */
+ private String issueId;
+ /**
+ * 议题标题
+ */
+ private String issueTitle;
+ /**
+ * 议题转成项目时间
+ */
+ private Long issueShiftedTime;
+ /**
+ * 项目状态: 待处理 pending,结案closed
+ */
+ private String projectStatus;
+ /**
+ * 结案说明
+ */
+ private String publicReply;
+ /**
+ * 当前处理部门名称数组
+ */
+ private List currentHandleDepartMent;
+}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupVotingListResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupVotingListResultDTO.java
new file mode 100644
index 0000000000..974cbce685
--- /dev/null
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/GroupVotingListResultDTO.java
@@ -0,0 +1,34 @@
+package com.epmet.resi.group.dto.group.result;
+
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+/**
+ * @author zhaoqifeng
+ * @dscription
+ * @date 2020/11/17 10:51
+ */
+@NoArgsConstructor
+@Data
+public class GroupVotingListResultDTO implements Serializable {
+
+ private static final long serialVersionUID = -3401194563187510106L;
+ /**
+ * 议题ID
+ */
+ private String issueId;
+ /**
+ * 议题标题
+ */
+ private String issueTitle;
+ /**
+ * 议题发表时间
+ */
+ private Long issuePublishTime;
+ /**
+ * 建议处理方式(群主转议题时填写的)
+ */
+ private String suggestion;
+}
diff --git a/epmet-module/resi-group/resi-group-server/pom.xml b/epmet-module/resi-group/resi-group-server/pom.xml
index 43552aa943..86ccf538e0 100644
--- a/epmet-module/resi-group/resi-group-server/pom.xml
+++ b/epmet-module/resi-group/resi-group-server/pom.xml
@@ -148,6 +148,13 @@
false
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -181,6 +188,13 @@
false
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -213,6 +227,13 @@
true
https://epmet-dev.elinkservice.cn/api/epmetscan/api
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=90782b119f82a5b6bb8e0f819b6a77bbc2102b53aa2d7d2e24fa10b66d580b1c
+
+ SEC080aac67ff78e79fdaba132aa51e3fb3f6060dec99492feaac82cabf9f8b6a19
+
@@ -242,6 +263,13 @@
true
https://epmet-open.elinkservice.cn/api/epmetscan/api
+
+
+
+ https://oapi.dingtalk.com/robot/send?access_token=a5f66c3374b1642fe2142dbf56d5997e280172d4e8f2b546c9423a68c82ece6c
+
+ SEC95f4f40b533ad379ea6a6d1af6dd37029383cfe1b7cd96dfac2678be2c1c3ed1
+
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/GroupIssueController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/GroupIssueController.java
index a648acc982..ff01971f70 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/GroupIssueController.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/GroupIssueController.java
@@ -3,12 +3,11 @@ package com.epmet.modules.group.controller;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.modules.group.service.GroupIssueService;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationDetailFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationHistoryFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationListFormDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationDetailResultDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationHistoryResultDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationListResultDTO;
+import com.epmet.resi.group.dto.group.result.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
@@ -65,4 +64,47 @@ public class GroupIssueController {
ValidatorUtils.validateEntity(applicationListFormDTO, ApplicationListFormDTO.ApplicationList.class);
return new Result>().ok(groupIssueService.applicationList(applicationListFormDTO));
}
+
+ /**
+ * 表决中列表
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:52
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("votinglist")
+ public Result> votingList(@RequestBody AllIssueFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO);
+ List list = groupIssueService.votingList(formDTO);
+ return new Result>().ok(list);
+ }
+
+ /**
+ * 已转项目列表
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:53
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("shiftproject")
+ public Result> shiftProjectList(@RequestBody AllIssueFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO);
+ List list = groupIssueService.shiftProjectList(formDTO);
+ return new Result>().ok(list);
+ }
+
+ /**
+ * 已关闭列表
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:54
+ * @param formDTO
+ * @return com.epmet.commons.tools.utils.Result>
+ */
+ @PostMapping("closedlist")
+ public Result> closedList(@RequestBody AllIssueFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO);
+ List list = groupIssueService.closedList(formDTO);
+ return new Result>().ok(list);
+ }
+
}
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/GroupIssueService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/GroupIssueService.java
index 7b22f3abd3..4cd99360fa 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/GroupIssueService.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/GroupIssueService.java
@@ -1,11 +1,10 @@
package com.epmet.modules.group.service;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationDetailFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationHistoryFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationListFormDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationDetailResultDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationHistoryResultDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationListResultDTO;
+import com.epmet.resi.group.dto.group.result.*;
import java.util.List;
@@ -40,4 +39,31 @@ public interface GroupIssueService {
*/
List applicationList(ApplicationListFormDTO applicationListFormDTO);
+ /**
+ * 表决中列表
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:56
+ * @param formDTO
+ * @return java.util.List
+ */
+ List votingList(AllIssueFormDTO formDTO);
+
+ /**
+ * 已转项目列表
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:56
+ * @param formDTO
+ * @return java.util.List
+ */
+ List shiftProjectList(AllIssueFormDTO formDTO);
+
+ /**
+ * 已关闭列表
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:56
+ * @param formDTO
+ * @return java.util.List
+ */
+ List closedList(AllIssueFormDTO formDTO);
+
}
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/GroupIssueServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/GroupIssueServiceImpl.java
index e0792d1a0c..2a56f9d48d 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/GroupIssueServiceImpl.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/GroupIssueServiceImpl.java
@@ -1,13 +1,17 @@
package com.epmet.modules.group.service.impl;
+import com.epmet.commons.tools.exception.RenException;
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.feign.GovIssueOpenFeignClient;
import com.epmet.modules.group.service.GroupIssueService;
+import com.epmet.modules.topic.service.ResiTopicService;
+import com.epmet.resi.group.dto.group.form.AllIssueFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationDetailFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationHistoryFormDTO;
import com.epmet.resi.group.dto.group.form.ApplicationListFormDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationDetailResultDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationHistoryResultDTO;
-import com.epmet.resi.group.dto.group.result.ApplicationListResultDTO;
+import com.epmet.resi.group.dto.group.result.*;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@@ -21,6 +25,11 @@ import java.util.List;
@Service
public class GroupIssueServiceImpl implements GroupIssueService {
+ @Autowired
+ private ResiTopicService resiTopicService;
+ @Autowired
+ private GovIssueOpenFeignClient govIssueOpenFeignClient;
+
/**
* @Description 待审核||已驳回 申请详情
* @Param applicationDetailFormDTO
@@ -53,4 +62,64 @@ public class GroupIssueServiceImpl implements GroupIssueService {
public List applicationList(ApplicationListFormDTO applicationListFormDTO) {
return null;
}
+
+ /**
+ * 表决中列表
+ *
+ * @param formDTO
+ * @return java.util.List
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:56
+ */
+ @Override
+ public List votingList(AllIssueFormDTO formDTO) {
+ //查找小组内所有话题ID
+ List topicIds = resiTopicService.getTopicIdsByGroup(formDTO.getGroupId());
+ formDTO.setTopicIds(topicIds);
+ Result> result = govIssueOpenFeignClient.getVotingListByGroup(formDTO);
+ if(!result.success()) {
+ throw new RenException(result.getCode(), result.getMsg());
+ }
+ return result.getData();
+ }
+
+ /**
+ * 已转项目列表
+ *
+ * @param formDTO
+ * @return java.util.List
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:56
+ */
+ @Override
+ public List shiftProjectList(AllIssueFormDTO formDTO) {
+ //查找小组内所有话题ID
+ List topicIds = resiTopicService.getTopicIdsByGroup(formDTO.getGroupId());
+ formDTO.setTopicIds(topicIds);
+ Result> result = govIssueOpenFeignClient.getShiftProjectListByGroup(formDTO);
+ if(!result.success()) {
+ throw new RenException(result.getCode(), result.getMsg());
+ }
+ return result.getData();
+ }
+
+ /**
+ * 已关闭列表
+ *
+ * @param formDTO
+ * @return java.util.List
+ * @author zhaoqifeng
+ * @date 2020/11/17 13:56
+ */
+ @Override
+ public List closedList(AllIssueFormDTO formDTO) {
+ //查找小组内所有话题ID
+ List topicIds = resiTopicService.getTopicIdsByGroup(formDTO.getGroupId());
+ formDTO.setTopicIds(topicIds);
+ Result> result = govIssueOpenFeignClient.getClosedListByGroup(formDTO);
+ if(!result.success()) {
+ throw new RenException(result.getCode(), result.getMsg());
+ }
+ return result.getData();
+ }
}
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java
index 701661cac4..3c06ced85b 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/dao/ResiTopicDao.java
@@ -179,4 +179,13 @@ public interface ResiTopicDao extends BaseDao {
* @date 2020/11/13 4:32 下午
*/
List selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO);
+ /**
+ * 获取小组内话题ID
+ * @author zhaoqifeng
+ * @date 2020/11/17 14:19
+ * @param groupId
+ * @return java.util.List
+ */
+ List selectTopicIdsByGroup(@Param("groupId") String groupId);
+
}
\ No newline at end of file
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java
index dbd533439e..c907cd80c4 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/ResiTopicService.java
@@ -287,4 +287,13 @@ public interface ResiTopicService extends BaseService