diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/AppClientConstant.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/AppClientConstant.java
index 2d12ab77ce..7b08e851d5 100644
--- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/AppClientConstant.java
+++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/constant/AppClientConstant.java
@@ -54,4 +54,12 @@ public interface AppClientConstant {
* app类型-工作端
*/
String APP_WORK = "work";
+ /**
+ * 来源类型-话题:topic
+ */
+ String TOPIC = "topic";
+ /**
+ * 来源类型-议题:issue
+ */
+ String ISSUE = "issue";
}
diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/RequirePermissionEnum.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/RequirePermissionEnum.java
index fb1190985a..40375042b9 100644
--- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/RequirePermissionEnum.java
+++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/RequirePermissionEnum.java
@@ -90,7 +90,8 @@ public enum RequirePermissionEnum {
/**
* 徽章
*/
- WORK_GRASSROOTS_BADGE_AUDIT("work_grassroots_badge_audit","基层治理:徽章审核:徽章审核","徽章审核权限,目前这个模块的操作都用这一个权限控制,没有细分"),
+ WORK_GRASSROOTS_BADGE_AUDIT("work_grassroots_badge_audit","基层治理:徽章审核:徽章审核","徽章审核"),
+ WORK_GRASSROOTS_BADGE_AUDITING_LIST("work_grassroots_badge_auditing_list","基层治理:徽章审核:待审核列表","待审核徽章列表"),
/**
* 工作-项目跟踪
@@ -146,7 +147,15 @@ public enum RequirePermissionEnum {
* 爱心互助-自定义配置
*/
MORE_HEART_CUSTOMIZED_VIEW("more_heart_customized_view","更多:爱心互助:自定义配置:查看","更多-爱心互助-自定义配置-查看"),
- MORE_HEART_CUSTOMIZED_SAVE("more_heart_customized_save","更多:爱心互助:自定义配置:保存修改","更多-爱心互助-自定义配置-保存修改");
+ MORE_HEART_CUSTOMIZED_SAVE("more_heart_customized_save","更多:爱心互助:自定义配置:保存修改","更多-爱心互助-自定义配置-保存修改"),
+
+ /**
+ * 徽章管理
+ */
+ MORE_BADGE_MANAGE_LIST("more_badge_manage_list","更多:徽章:徽章管理:列表","徽章列表"),
+ MORE_BADGE_MANAGE_CREATE("more_badge_manage_create","更多:徽章:徽章管理:添加","添加徽章"),
+ MORE_BADGE_MANAGE_EDIT("more_badge_manage_edit","更多:徽章:徽章管理:编辑","编辑徽章"),
+ MORE_BADGE_MANAGE_DELETE("more_badge_manage_delete","更多:徽章:徽章管理:删除","删除徽章");
private String key;
private String name;
diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/RenException.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/RenException.java
index 8d6285a26c..73ae4bf6b5 100644
--- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/RenException.java
+++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/RenException.java
@@ -19,6 +19,12 @@ import org.apache.commons.lang3.StringUtils;
* @since 1.0.0
*/
public class RenException extends RuntimeException {
+
+ public enum MessageMode {
+ //code_内部信息_外部信息
+ CODE_INTERNAL_EXTERNAL
+ }
+
private static final long serialVersionUID = 1L;
private int code;
/**
@@ -47,7 +53,7 @@ public class RenException extends RuntimeException {
}
}
- public RenException(int code, String internalMsg, String msg) {
+ public RenException(int code, String internalMsg, String msg, MessageMode mode) {
this(code, internalMsg);
this.msg = msg;
}
diff --git a/epmet-module/gov-grid/gov-grid-server/pom.xml b/epmet-module/gov-grid/gov-grid-server/pom.xml
index cf0b3e8d7d..bfb4bb34e5 100644
--- a/epmet-module/gov-grid/gov-grid-server/pom.xml
+++ b/epmet-module/gov-grid/gov-grid-server/pom.xml
@@ -63,6 +63,12 @@
2.0.0
compile
+
+ com.epmet
+ epmet-user-client
+ 2.0.0
+ compile
+
diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java
index 1e52667fff..772990f98d 100644
--- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java
+++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/constant/WorkGrassRootsFunctionConstant.java
@@ -26,5 +26,12 @@ public class WorkGrassRootsFunctionConstant {
* 议题管理
*/
public static final String WORK_GRASSROOTS_ISSUE="work_grassroots_issue";
+
+ /**
+ * 徽章审核
+ */
+ public static final String WORK_GRASSROOTS_BADGE="work_grassroots_badge";
+
+
}
diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java
index 18815b635a..2fc38efdf0 100644
--- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java
+++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/feign/ResiGroupFeignClient.java
@@ -143,7 +143,7 @@ public interface ResiGroupFeignClient {
* @param gridIdList
* @return com.epmet.commons.tools.utils.Result
* @Author yinzuomei
- * @Description 查询网格下待审核的小组总数
+ * @Description 查询网格下待审核的小组总数+变更小组信息申请数
* @Date 2020/5/13 15:49
**/
@PostMapping(value = "/resi/group/group/groupprocessingcount",consumes = MediaType.APPLICATION_JSON_VALUE)
diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java
index e7cfdcbd6c..fa007c0cd5 100644
--- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java
+++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/RemindServiceImpl.java
@@ -1,19 +1,16 @@
package com.epmet.service.impl;
import com.alibaba.fastjson.JSON;
-import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.WorkGrassRootsFunctionConstant;
import com.epmet.controller.TestFormDTO1;
import com.epmet.controller.TestResultDTO1;
import com.epmet.dto.form.RedDotFormDTO;
import com.epmet.dto.result.CustomerGridByUserIdResultDTO;
+import com.epmet.dto.result.GridAuditingBadgeCountResultDTO;
import com.epmet.dto.result.GridProcessingCountResultDTO;
import com.epmet.dto.result.RedDotResultDTO;
-import com.epmet.feign.GovIssueFeignClient;
-import com.epmet.feign.GovOrgFeignClient;
-import com.epmet.feign.ResiGroupFeignClient;
-import com.epmet.feign.ResiPartymemberFeignClient;
+import com.epmet.feign.*;
import com.epmet.service.RemindService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -44,6 +41,9 @@ public class RemindServiceImpl implements RemindService {
@Autowired
private GovIssueFeignClient govIssueFeignClient;
+ @Autowired
+ private EpmetUserOpenFeignClient epmetUserOpenFeignClient;
+
@Override
public RedDotResultDTO queryGridRedDot(RedDotFormDTO formDTO) {
RedDotResultDTO redDotResultDTO = new RedDotResultDTO();
@@ -88,10 +88,14 @@ public class RemindServiceImpl implements RemindService {
if (this.getWorkGrassRootsIssue(gridIdList)) {
functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_ISSUE);
}
+ if(this.getWorkGrassRootsBadge(gridIdList)){
+ functionList.add(WorkGrassRootsFunctionConstant.WORK_GRASSROOTS_BADGE);
+ }
return functionList;
}
+
//群组管理: work_grassroots_group
public Boolean getWorkGrassRootsGroup(List gridIdList) {
Result> groupProcessingCountResult = resiGroupFeignClient.queryGroupProcessingCount(gridIdList);
@@ -104,8 +108,7 @@ public class RemindServiceImpl implements RemindService {
}
}
}else{
- logger.error(String.format("调用%s服务,查询网格%s待审核小组数失败code%s,msg:", ServiceConstant.RESI_GROUP_SERVER, gridIdList.get(0), groupProcessingCountResult.getCode(),
- groupProcessingCountResult.getMsg()));
+ logger.error(String.format("查询群组管理待办事项数失败,%s",groupProcessingCountResult.getMsg()));
}
return false;
}
@@ -123,8 +126,7 @@ public class RemindServiceImpl implements RemindService {
}
}
} else {
- logger.error(String.format("调用%s服务,查询网格%s待审核热心居民数失败code%s,msg:", ServiceConstant.RESI_PARTYMEMBER_SERVER, gridIdList.get(0), resiGroupProcessingCountResult.getCode(),
- resiGroupProcessingCountResult.getMsg()));
+ logger.error(String.format("查询网格内待审核热心居民数失败,%s",resiGroupProcessingCountResult.getMsg()));
}
return false;
}
@@ -142,8 +144,7 @@ public class RemindServiceImpl implements RemindService {
}
}
}else{
- logger.error(String.format("调用%s服务,查询网格%s待审核党员数失败code%s,msg:", ServiceConstant.RESI_PARTYMEMBER_SERVER, gridIdList.get(0), partyMemberProcessingCountResult.getCode(),
- partyMemberProcessingCountResult.getMsg()));
+ logger.error(String.format("查询网格内待审核党员总数失败,%s",partyMemberProcessingCountResult.getMsg()));
}
return false;
}
@@ -161,12 +162,27 @@ public class RemindServiceImpl implements RemindService {
}
}
}else{
- logger.error(String.format("调用%s服务,查询网格%s表决中议题总数失败code%s,msg:", ServiceConstant.GOV_ISSUE_SERVER, gridIdList.get(0), issueResult.getCode(),
- issueResult.getMsg()));
+ logger.error("查询网格表决中议题总数失败,%s",issueResult.getMsg());
}
return false;
}
+ //徽章审核
+ private boolean getWorkGrassRootsBadge(List gridIdList) {
+ Result> badgeResult = epmetUserOpenFeignClient.queryGridAuditingBadgeCount(gridIdList);
+ if (badgeResult.success()) {
+ for (String gridId : gridIdList) {
+ for (GridAuditingBadgeCountResultDTO gridAuditingBadgeCountResultDTO : badgeResult.getData()) {
+ if (gridId.equals(gridAuditingBadgeCountResultDTO.getGridId()) && gridAuditingBadgeCountResultDTO.getCount() > 0) {
+ return true;
+ }
+ }
+ }
+ }else{
+ logger.error(String.format("查询网格待审核徽章申请失败,%s",badgeResult.getMsg()));
+ }
+ return false;
+ }
@Override
public TestResultDTO1 test(TestFormDTO1 testFormDTO1) {
Result resultDTO1Result = resiGroupFeignClient.test(testFormDTO1);
diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiTopicServiceImpl.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiTopicServiceImpl.java
index 23dbd83fe9..a51eebbed6 100644
--- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiTopicServiceImpl.java
+++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/service/impl/ResiTopicServiceImpl.java
@@ -79,6 +79,7 @@ public class ResiTopicServiceImpl implements ResiTopicService {
govTopic.setTopicRealseTime(top.getReleaseTime());
govTopic.setTopicFirstPhoto(top.getFirstPhoto());
govTopic.setTopicState(top.getStatus());
+ govTopic.setBadgeList(top.getBadgeList());
topicsResult.add(govTopic);
});
}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/constant/IssueOpenConstant.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/constant/IssueOpenConstant.java
new file mode 100644
index 0000000000..48a9cfc1f0
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/constant/IssueOpenConstant.java
@@ -0,0 +1,35 @@
+package com.epmet.constant;
+
+/**
+ * 议题相关常亮,其它服务可用
+ *
+ * @author yinzuomei@elink-cn.com
+ * @date 2020/11/11 14:10
+ */
+public interface IssueOpenConstant {
+ /**
+ * 议题状态-表决中
+ */
+ String ISSUE_VOTING = "voting";
+ /**
+ * 议题状态-已转项目
+ */
+ String ISSUE_SHIFT_PROJECT = "shift_project";
+ /**
+ * 议题状态-已关闭
+ */
+ String ISSUE_CLOSED = "closed";
+ /**
+ * 议题解决类型-已解决
+ */
+ String ISSUE_RESOLVED = "resolved";
+ /**
+ * 议题解决类型-未解决
+ */
+ String ISSUE_UNRESOLVED = "unresolved";
+
+ /**
+ * 议题来源类型 eg:resi_topic
+ */
+ String SOURCE_TYPE_RT="resi_topic";
+}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueDTO.java
index 457a165fd6..0da96662ee 100644
--- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueDTO.java
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/IssueDTO.java
@@ -17,9 +17,10 @@
package com.epmet.dto;
+import lombok.Data;
+
import java.io.Serializable;
import java.util.Date;
-import lombok.Data;
/**
@@ -143,4 +144,18 @@ public class IssueDTO implements Serializable {
*/
private Date updatedTime;
+ /**
+ * 转项目日期 (服务间调用日期一致性) 戳
+ */
+ private Long shiftedTimeStamp;
+
+ /**
+ * 关闭日期 戳
+ */
+ private Long closedTimeStamp;
+
+ /**
+ * 议题转项目后-对应的项目id
+ */
+ private String projectId;
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyPubIssuesAuditingFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyPubIssuesAuditingFormDTO.java
index 4010c5f2c2..0ede11f11d 100644
--- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyPubIssuesAuditingFormDTO.java
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyPubIssuesAuditingFormDTO.java
@@ -23,5 +23,13 @@ public class MyPubIssuesAuditingFormDTO implements Serializable {
@NotNull(message = "每页数量不能为空",groups = MyPubIssuesAuditing.class)
private Integer pageSize;
+ /**
+ * 拓展参数:前端不传值,内部传输用
+ */
private String userId;
+
+ /**
+ * 拓展参数:前端不传值,内部传输用
+ */
+ private String issueStatus;
}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyShiftIssueTopicsFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyShiftIssueTopicsFormDTO.java
new file mode 100644
index 0000000000..3340fc7d91
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/MyShiftIssueTopicsFormDTO.java
@@ -0,0 +1,38 @@
+package com.epmet.dto.form;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+/**
+ * @Author zxc
+ * @DateTime 2020/11/13 3:30 下午
+ */
+@Data
+public class MyShiftIssueTopicsFormDTO implements Serializable {
+
+ private static final long serialVersionUID = -3943178729586797400L;
+
+ public interface MyShiftIssueTopics{}
+
+ /**
+ * 页码
+ */
+ @NotNull(message = "页码不能为空",groups = {MyShiftIssueTopics.class})
+ private Integer pageNo;
+
+ /**
+ * 每页数量
+ */
+ @NotNull(message = "每页数量不能为空",groups = {MyShiftIssueTopics.class})
+ private Integer pageSize;
+
+
+ @NotBlank(message = "客户ID不能为空",groups = {MyShiftIssueTopics.class})
+ private String customerId;
+
+ private String userId;
+
+}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueProjectResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueProjectResultDTO.java
index bcad9ff776..44afcedae1 100644
--- a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueProjectResultDTO.java
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/IssueProjectResultDTO.java
@@ -1,6 +1,7 @@
package com.epmet.dto.result;
+import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
@@ -26,6 +27,7 @@ public class IssueProjectResultDTO implements Serializable {
/**
* 议题转项目时间(项目表创建时间)
*/
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date shiftedTime;
}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/MyShiftIssueTopicsResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/MyShiftIssueTopicsResultDTO.java
new file mode 100644
index 0000000000..cf4951a35a
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/MyShiftIssueTopicsResultDTO.java
@@ -0,0 +1,43 @@
+package com.epmet.dto.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Author zxc
+ * @DateTime 2020/11/13 3:31 下午
+ */
+@Data
+public class MyShiftIssueTopicsResultDTO implements Serializable {
+
+ private static final long serialVersionUID = -703102629653169023L;
+
+ /**
+ * 话题ID
+ */
+ private String topicId;
+
+ /**
+ * 转议题时间
+ */
+ private Long shiftIssueTime;
+
+ /**
+ * 建议
+ */
+ private String suggestion;
+
+ /**
+ * 议题标题
+ */
+ private String issueTitle;
+
+ /**
+ * 话题发表网格名称
+ */
+ private String releaseGridName;
+
+ private String gridId;
+
+}
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 35746d9c79..f30a67b891 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
@@ -1,14 +1,17 @@
package com.epmet.feign;
+import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.IssueDTO;
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 org.springframework.cloud.openfeign.FeignClient;
-
-import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.feign.fallback.GovIssueOpenFeignClientFallBack;
+import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO;
+import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO;
+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;
@@ -21,7 +24,7 @@ import java.util.List;
* @date 2020/6/4 13:37
*/
@FeignClient(name = ServiceConstant.GOV_ISSUE_SERVER, fallback = GovIssueOpenFeignClientFallBack.class)
-//@FeignClient(name = ServiceConstant.GOV_ISSUE_SERVER, fallback = GovIssueOpenFeignClientFallBack.class,url = "localhost:8101")
+// @FeignClient(name = ServiceConstant.GOV_ISSUE_SERVER, fallback = GovIssueOpenFeignClientFallBack.class,url = "localhost:8101")
public interface GovIssueOpenFeignClient {
/**
@@ -43,4 +46,22 @@ public interface GovIssueOpenFeignClient {
@PostMapping("/gov/issue/issue/mypubissuesauditing")
Result> myPubIssuesAuditing(@RequestBody MyPubIssuesAuditingFormDTO myPubIssuesAuditingFormDTO);
+ /**
+ * @return com.epmet.commons.tools.utils.Result>
+ * @param formDTO
+ * @author yinzuomei
+ * @description 查询我发起的议题(可根据状态查询)
+ * @Date 2020/11/11 14:13
+ **/
+ @PostMapping(value = "/gov/issue/issue/getmypubissues", consumes = MediaType.APPLICATION_JSON_VALUE)
+ Result> getMyPubIssues(@RequestBody MyPubIssuesAuditingFormDTO formDTO);
+
+ /**
+ * @Description 个人中心-我发表的话题列表-已转议题列表
+ * @Param myShiftIssueTopicsFormDTO
+ * @author zxc
+ * @date 2020/11/13 4:58 下午
+ */
+ @PostMapping("/gov/issue/issue/shiftissuetopic")
+ Result> myShiftIssueTopics(@RequestBody MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO);
}
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 cd4eadc984..8fa91ff4f7 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
@@ -3,11 +3,14 @@ package com.epmet.feign.fallback;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
+import com.epmet.dto.IssueDTO;
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.feign.GovIssueOpenFeignClient;
+import com.epmet.resi.mine.dto.from.MyShiftIssueTopicsFormDTO;
+import com.epmet.resi.mine.dto.result.MyShiftIssueTopicsResultDTO;
import org.springframework.stereotype.Component;
import java.util.List;
@@ -29,4 +32,14 @@ public class GovIssueOpenFeignClientFallBack implements GovIssueOpenFeignClient
public Result> myPubIssuesAuditing(MyPubIssuesAuditingFormDTO myPubIssuesAuditingFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER,"myPubIssuesAuditing",myPubIssuesAuditingFormDTO);
}
+
+ @Override
+ public Result> getMyPubIssues(MyPubIssuesAuditingFormDTO formDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER,"getMyPubIssues",formDTO);
+ }
+
+ @Override
+ public Result> myShiftIssueTopics(MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_ISSUE_SERVER,"myShiftIssueTopics",myShiftIssueTopicsFormDTO);
+ }
}
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 17b1e5924e..f15de6e623 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
@@ -1,29 +1,19 @@
package com.epmet.controller;
-import com.epmet.commons.tools.annotation.LoginUser;
-import com.epmet.commons.tools.page.PageData;
-import com.epmet.commons.tools.security.dto.TokenDto;
-import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
-import com.epmet.dto.form.*;
-import com.epmet.commons.tools.validator.AssertUtils;
-import com.epmet.commons.tools.validator.ValidatorUtils;
-import com.epmet.commons.tools.validator.group.AddGroup;
-import com.epmet.commons.tools.validator.group.DefaultGroup;
-import com.epmet.commons.tools.validator.group.UpdateGroup;
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.topic.form.TopicInfoFormDTO;
import com.epmet.service.IssueService;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.MediaType;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
-import javax.servlet.http.HttpServletResponse;
import java.util.List;
-import java.util.Map;
/**
* @Description 居民端党群议事
@@ -165,5 +155,29 @@ public class IssueController {
}
+ /**
+ * @return com.epmet.commons.tools.utils.Result>
+ * @param formDTO
+ * @author yinzuomei
+ * @description 查询我发起的议题(可根据状态查询)
+ * @Date 2020/11/11 14:49
+ **/
+ @PostMapping("getmypubissues")
+ public Result> getMyPubIssues(@RequestBody MyPubIssuesAuditingFormDTO formDTO){
+ ValidatorUtils.validateEntity(formDTO);
+ return new Result>().ok(issueService.getMyPubIssues(formDTO));
+ }
+
+ /**
+ * @Description 个人中心-我发表的话题列表-已转议题列表
+ * @Param myShiftIssueTopicsFormDTO
+ * @author zxc
+ * @date 2020/11/13 4:58 下午
+ */
+ @PostMapping("shiftissuetopic")
+ public Result> myShiftIssueTopics(@RequestBody MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO){
+ ValidatorUtils.validateEntity(myShiftIssueTopicsFormDTO, MyShiftIssueTopicsFormDTO.MyShiftIssueTopics.class);
+ return new Result>().ok(issueService.myShiftIssueTopics(myShiftIssueTopicsFormDTO));
+ }
}
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 38c597c029..a39266ee76 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
@@ -152,4 +152,28 @@ public interface IssueDao extends BaseDao {
* @date 2020/11/11 9:24 上午
*/
List myPubIssuesAuditing(@Param("userId")String userId);
+
+ /**
+ * @return java.util.List
+ * @param pageNo
+ * @param pageSize
+ * @param userId 当前用户
+ * @param issueStatus :议题状态 表决中:voting 已转项目:shift_project 已关闭:closed
+ * @author yinzuomei
+ * @description 查询我发起的议题(可根据状态查询)
+ * @Date 2020/11/11 15:11
+ **/
+ List selectMyPubIssues(@Param("pageNo") Integer pageNo,
+ @Param("pageSize") Integer pageSize,
+ @Param("userId") String userId,
+ @Param("issueStatus") String issueStatus);
+
+ /**
+ * @Description 个人中心-我发表的话题列表-已转议题列表
+ * @Param tokenDto
+ * @Param myShiftIssueTopicsResultDTO
+ * @author zxc
+ * @date 2020/11/13 3:42 下午
+ */
+ List myShiftIssueTopics(@Param("topicIds") List topicIds,@Param("customerId") String customerId);
}
\ No newline at end of file
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 1ee227ad3d..ea8a572ef5 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
@@ -3,14 +3,6 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.IssueDTO;
-import com.epmet.dto.form.CloseIssueFormDTO;
-import com.epmet.dto.form.DepartmentStaffListFormDTO;
-import com.epmet.dto.form.IssueDetailFormDTO;
-import com.epmet.dto.form.IssueIdFormDTO;
-import com.epmet.dto.result.DepartmentStaffListResultDTO;
-import com.epmet.dto.result.GridIdResultDTO;
-import com.epmet.dto.result.GridVotingIssueCountResultDTO;
-import com.epmet.dto.result.IssueResultDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.dto.form.CommonIssueListFormDTO;
@@ -234,4 +226,23 @@ public interface IssueService extends BaseService {
* @date 2020/11/11 9:24 上午
*/
List myPubIssuesAuditing(MyPubIssuesAuditingFormDTO myPubIssuesAuditingFormDTO);
+
+ /**
+ * @return java.util.List
+ * @param formDTO
+ * @author yinzuomei
+ * @description 查询我发起的议题(可根据状态查询)
+ * @Date 2020/11/11 14:57
+ **/
+ List getMyPubIssues(MyPubIssuesAuditingFormDTO formDTO);
+
+ /**
+ * @Description 个人中心-我发表的话题列表-已转议题列表
+ * @Param tokenDto
+ * @Param myShiftIssueTopicsResultDTO
+ * @author zxc
+ * @date 2020/11/13 3:42 下午
+ */
+ List myShiftIssueTopics(MyShiftIssueTopicsFormDTO myShiftIssueTopicsFormDTO);
+
}
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 6b0f60ed80..94e8afc4cc 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
@@ -39,6 +39,7 @@ import com.epmet.resi.group.dto.group.form.GroupInfoFormDTO;
import com.epmet.resi.group.dto.group.result.GroupInfoResultDTO;
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;
import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO;
import com.epmet.resi.group.dto.topic.result.GovTopicIssueInfoResultDTO;
import com.epmet.resi.group.feign.ResiGroupOpenFeignClient;
@@ -864,11 +865,11 @@ public class IssueServiceImpl extends BaseServiceImpl imp
PageInfo result = PageHelper.startPage(form.getPageNo(),form.getPageSize()).doSelectPageInfo(() -> baseDao.myPubIssuesAuditing(form.getUserId()));
if (!CollectionUtils.isEmpty(result.getList())){
list = result.getList();
- Result> gridNameList = govOrgOpenFeignClient.selectOrgInfo(new OrgInfoFormDTO(OrgInfoConstant.GRID, list.stream().map(m -> m.getGridId()).collect(Collectors.toList())));
+ Result> gridNameList = govOrgOpenFeignClient.getGridListByGridIds(list.stream().map(m -> m.getGridId()).collect(Collectors.toList()));
if (!gridNameList.success()){
throw new RenException("查询议题来源网格名称失败......");
}
- list.forEach(l -> gridNameList.getData().stream().filter(o -> l.getGridId().equals(o.getOrgId())).forEach(o -> l.setTopicReleaseGridName(o.getOrgName())));
+ list.forEach(l -> gridNameList.getData().stream().filter(o -> l.getGridId().equals(o.getGridId())).forEach(o -> l.setTopicReleaseGridName(o.getGridName())));
Result> groupNameList = resiGroupOpenFeignClient.selectGroupInfo(new GroupInfoFormDTO(list.stream().map(m -> m.getTopicId()).collect(Collectors.toList())));
if (!groupNameList.success()){
throw new RenException("查询议题来源小组名称失败......");
@@ -878,4 +879,52 @@ public class IssueServiceImpl extends BaseServiceImpl imp
return list;
}
+ /**
+ * @param formDTO
+ * @return java.util.List
+ * @author yinzuomei
+ * @description 查询我发起的议题(可根据状态查询)
+ * @Date 2020/11/11 14:57
+ **/
+ @Override
+ public List getMyPubIssues(MyPubIssuesAuditingFormDTO formDTO) {
+ formDTO.setPageNo(null == formDTO.getPageNo() ? NumConstant.ZERO :
+ (formDTO.getPageNo() - NumConstant.ONE)*formDTO.getPageSize()
+ );
+ return baseDao.selectMyPubIssues(formDTO.getPageNo(),formDTO.getPageSize(),formDTO.getUserId(),formDTO.getIssueStatus());
+ }
+
+ /**
+ * @Description 个人中心-我发表的话题列表-已转议题列表
+ * @Param tokenDto
+ * @Param myShiftIssueTopicsResultDTO
+ * @author zxc
+ * @date 2020/11/13 3:42 下午
+ */
+ @Override
+ public List myShiftIssueTopics(MyShiftIssueTopicsFormDTO form) {
+ TopicIdListFormDTO formDTO = new TopicIdListFormDTO();
+ formDTO.setUserId(form.getUserId());
+ Result> listResult = resiGroupOpenFeignClient.selectMyCreateTopic(formDTO);
+ if (!listResult.success()){
+ throw new RenException("查询我创建的话题失败......");
+ }
+ if(CollectionUtils.isEmpty(listResult.getData())){
+ logger.debug("查询我创建的话题集合为空");
+ return new ArrayList<>();
+ }
+ List topicIds = listResult.getData();
+ PageInfo resultPage = PageHelper.startPage(form.getPageNo(), form.getPageSize()).doSelectPageInfo(() -> baseDao.myShiftIssueTopics(topicIds, form.getCustomerId()));
+ if (CollectionUtils.isEmpty(resultPage.getList())){
+ return new ArrayList<>();
+ }
+ List result = resultPage.getList();
+ Result> gridListByGridIds = govOrgOpenFeignClient.getGridListByGridIds(result.stream().map(m -> m.getGridId()).collect(Collectors.toList()));
+ if (!gridListByGridIds.success()){
+ throw new RenException("查询话题所属网格名称失败......");
+ }
+ result.forEach(r -> gridListByGridIds.getData().stream().filter(f -> r.getGridId().equals(f.getGridId())).forEach(f -> r.setReleaseGridName(f.getGridName())));
+ return result;
+ }
+
}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java
index e79808657c..7f678ba465 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/service/impl/IssueVoteStatisticalServiceImpl.java
@@ -549,14 +549,11 @@ public class IssueVoteStatisticalServiceImpl extends BaseServiceImpl();
}
List orgIds = myPartIssuesResult.stream().map(m -> m.getGridId()).collect(Collectors.toList());
- OrgInfoFormDTO form = new OrgInfoFormDTO();
- form.setOrgIds(orgIds);
- form.setOrgType(IssueConstant.GRID);
- Result> listResult = govOrgOpenFeignClient.selectOrgInfo(form);
+ Result> listResult = govOrgOpenFeignClient.getGridListByGridIds(orgIds);
if (!listResult.success()){
throw new RenException("查询议题来源网格名称失败......");
}
- myPartIssuesResult.forEach(m -> listResult.getData().stream().filter(l -> m.getGridId().equals(l.getOrgId())).forEach(l -> m.setTopicReleaseGridName(l.getOrgName())));
+ myPartIssuesResult.forEach(m -> listResult.getData().stream().filter(l -> m.getGridId().equals(l.getGridId())).forEach(l -> m.setTopicReleaseGridName(l.getGridName())));
return myPartIssuesResult;
}
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 a8dbb17134..ef4cf50330 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
@@ -134,7 +134,7 @@
-
+
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 118a15b690..3ac7bf2bc5 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
@@ -391,6 +391,53 @@
WHERE i.DEL_FLAG = '0'
AND i.ISSUE_STATUS = 'voting'
AND i.CREATED_BY = #{userId}
+ ORDER BY i.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 865f3c8a3a..523dd1cb63 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
@@ -85,5 +85,6 @@
WHERE i.DEL_FLAG = '0'
AND vd.DEL_FLAG = '0'
AND vd.CREATED_BY = #{userId}
+ ORDER BY i.CREATED_TIME DESC
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectDTO.java
index ef8c8f0d11..1d75e9adfe 100644
--- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectDTO.java
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectDTO.java
@@ -17,9 +17,11 @@
package com.epmet.dto;
+import lombok.Data;
+
import java.io.Serializable;
import java.util.Date;
-import lombok.Data;
+import java.util.List;
/**
@@ -113,4 +115,8 @@ public class ProjectDTO implements Serializable {
*/
private Date updatedTime;
+ /**
+ * 当前处理部门名称列表
+ */
+ private List currentDepartmentNameList;
}
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectRelatedPersonnelDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectRelatedPersonnelDTO.java
index d01a0bc70d..4ac72f72cc 100644
--- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectRelatedPersonnelDTO.java
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/ProjectRelatedPersonnelDTO.java
@@ -58,6 +58,16 @@ public class ProjectRelatedPersonnelDTO implements Serializable {
*/
private String userId;
+ /**
+ * 来源类型(话题:topic 议题:issue)
+ */
+ private String sourceType;
+
+ /**
+ * 来源Id(话题或议题Id)
+ */
+ private String sourceId;
+
/**
* 删除标识
*/
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectByCreateTopicUserFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectByCreateTopicUserFormDTO.java
new file mode 100644
index 0000000000..24364b8142
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectByCreateTopicUserFormDTO.java
@@ -0,0 +1,20 @@
+package com.epmet.dto.form;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+
+@Data
+public class ProjectByCreateTopicUserFormDTO {
+
+ public interface ListByUserGroup {}
+
+ @NotBlank(message = "客户ID不能为空", groups = { ListByUserGroup.class })
+ private String customerId;
+
+ @NotBlank(message = "用户ID不能为空", groups = { ListByUserGroup.class })
+ private String userId;
+ private Integer pageNo = 1;
+ private Integer pageSize = 10;
+
+}
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/MyPubIssuesClosedResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/MyPubIssuesClosedResultDTO.java
new file mode 100644
index 0000000000..46c2c9ff02
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/MyPubIssuesClosedResultDTO.java
@@ -0,0 +1,46 @@
+package com.epmet.dto.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 个人中心-我发起的议题列表-已关闭返参DTO
+ *
+ * @author yinzuomei@elink-cn.com
+ * @date 2020/11/11 13:39
+ */
+@Data
+public class MyPubIssuesClosedResultDTO implements Serializable {
+ private static final long serialVersionUID = -265465326846671555L;
+ /**
+ * 议题id
+ */
+ private String issueId;
+
+ /**
+ * 议题标题
+ */
+ private String issueTitle;
+
+ /**
+ * 建议
+ */
+ private String suggestion;
+
+ /**
+ * 议题关闭时间。时间戳
+ */
+ private Long closedTime;
+
+ /**
+ * 话题发表于哪个组
+ */
+ private String topicReleaseGroupName;
+
+ /**
+ * 话题发表于哪个网格
+ */
+ private String topicReleaseGridName;
+
+}
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/MyPubIssuesShiftProjectResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/MyPubIssuesShiftProjectResultDTO.java
new file mode 100644
index 0000000000..8397d64b69
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/MyPubIssuesShiftProjectResultDTO.java
@@ -0,0 +1,48 @@
+package com.epmet.dto.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 个人中心-我发起的议题列表-已转项目 返参DTO
+ *
+ * @author yinzuomei@elink-cn.com
+ * @date 2020/11/11 12:18
+ */
+@Data
+public class MyPubIssuesShiftProjectResultDTO implements Serializable {
+ private static final long serialVersionUID = -7183751225506622772L;
+ /**
+ * 项目id
+ */
+ private String projectId;
+
+ /**
+ * 话题发表网格id
+ */
+ private String topicReleaseGridName;
+
+ /**
+ * 当前处理部门名称列表
+ */
+ private List departmentNameList;
+
+ /**
+ * 项目标题
+ */
+ private String projectTitle;
+
+ /**
+ * 转项目时间。时间戳
+ */
+ private Long shiftProjectTime;
+
+ /**
+ * 话题发表于哪个组
+ */
+ private String topicReleaseGroupName;
+
+ private String issueId;
+}
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectOfCreateTopicUserResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectOfCreateTopicUserResultDTO.java
new file mode 100644
index 0000000000..13b0fbfe1b
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectOfCreateTopicUserResultDTO.java
@@ -0,0 +1,18 @@
+package com.epmet.dto.result;
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class ProjectOfCreateTopicUserResultDTO {
+
+ private String topicId;
+ private String projectId;
+ private String gridId;
+ private Long shiftProjectTime;
+ private List departmentNameList;
+ private String projectTitle;
+ private String releaseGridId;
+
+}
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 24123a18d6..2cd5f5f5fb 100644
--- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/feign/GovProjectOpenFeignClient.java
@@ -1,18 +1,18 @@
package com.epmet.feign;
+import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
-import com.epmet.dto.form.ProcessListFormDTO;
import com.epmet.dto.ProjectDTO;
+import com.epmet.dto.form.ProcessListFormDTO;
+import com.epmet.dto.form.ProjectByCreateTopicUserFormDTO;
import com.epmet.dto.form.ProjectListFromDTO;
import com.epmet.dto.result.MyPartProjectsResultDTO;
import com.epmet.dto.result.PendProjectListResultDTO;
import com.epmet.dto.result.ProcessAndCurrentDeptResultDTO;
-import com.epmet.dto.result.ProcesslistResultDTO;
+import com.epmet.dto.result.ProjectOfCreateTopicUserResultDTO;
+import com.epmet.feign.fallback.GovProjectOpenFeignClientFallback;
import com.epmet.resi.mine.dto.from.MyPartProjectsFormDTO;
import org.springframework.cloud.openfeign.FeignClient;
-
-import com.epmet.commons.tools.constant.ServiceConstant;
-import com.epmet.feign.fallback.GovProjectOpenFeignClientFallback;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -24,6 +24,7 @@ import java.util.List;
* @author yinzuomei@elink-cn.com
* @date 2020/6/4 13:32
*/
+// @FeignClient(name = ServiceConstant.GOV_PROJECT_SERVER, fallback = GovProjectOpenFeignClientFallback.class,url = "localhost:8102")
@FeignClient(name = ServiceConstant.GOV_PROJECT_SERVER, fallback = GovProjectOpenFeignClientFallback.class)
public interface GovProjectOpenFeignClient {
/**
@@ -55,4 +56,23 @@ public interface GovProjectOpenFeignClient {
*/
@PostMapping("gov/project/project/issuetoprojectlist")
Result> issueToProjectList(MyPartProjectsFormDTO formDTO);
+
+ /**
+ * @return com.epmet.commons.tools.utils.Result>
+ * @param projectIds 项目id数组
+ * @author yinzuomei
+ * @description 根据项目id查询项目基本信息
+ * @Date 2020/11/11 17:40
+ **/
+ @PostMapping("gov/project/project/queryprojectinfobyids")
+ Result> queryProjectInfoByIds(@RequestBody List projectIds);
+
+ /**
+ * @Description 根据话题创建人查询项目列表
+ * @return
+ * @author wxz
+ * @date 2020.11.13 11:09
+ */
+ @PostMapping("gov/project/project/list-by-createtopic-userid")
+ Result> listProjectsByCreateTopicUserId(@RequestBody ProjectByCreateTopicUserFormDTO form);
}
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 9326b0cdaa..fd478f1245 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
@@ -5,11 +5,12 @@ import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.form.ProcessListFormDTO;
+import com.epmet.dto.form.ProjectByCreateTopicUserFormDTO;
import com.epmet.dto.form.ProjectListFromDTO;
import com.epmet.dto.result.MyPartProjectsResultDTO;
import com.epmet.dto.result.PendProjectListResultDTO;
import com.epmet.dto.result.ProcessAndCurrentDeptResultDTO;
-import com.epmet.dto.result.ProcesslistResultDTO;
+import com.epmet.dto.result.ProjectOfCreateTopicUserResultDTO;
import com.epmet.feign.GovProjectOpenFeignClient;
import com.epmet.resi.mine.dto.from.MyPartProjectsFormDTO;
import org.springframework.stereotype.Component;
@@ -51,4 +52,21 @@ public class GovProjectOpenFeignClientFallback implements GovProjectOpenFeignCli
public Result> issueToProjectList(MyPartProjectsFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "issueToProjectList", formDTO);
}
+
+ /**
+ * @param projectIds 项目id数组
+ * @return com.epmet.commons.tools.utils.Result>
+ * @author yinzuomei
+ * @description 根据项目id查询项目基本信息
+ * @Date 2020/11/11 17:40
+ **/
+ @Override
+ public Result> queryProjectInfoByIds(List projectIds) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "queryProjectInfoByIds", projectIds);
+ }
+
+ @Override
+ public Result> listProjectsByCreateTopicUserId(ProjectByCreateTopicUserFormDTO form) {
+ return ModuleUtils.feignConError(ServiceConstant.GOV_PROJECT_SERVER, "listProjectsByCreateTopicUserId", form);
+ }
}
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.java
index d8309d93af..3c3641dac5 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.java
@@ -18,8 +18,6 @@
package com.epmet.controller;
import com.epmet.commons.tools.annotation.LoginUser;
-import com.epmet.commons.tools.annotation.RequirePermission;
-import com.epmet.commons.tools.enums.RequirePermissionEnum;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.ExcelUtils;
@@ -27,13 +25,10 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.AssertUtils;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.commons.tools.validator.group.AddGroup;
-import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup;
+import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.ProjectDTO;
-import com.epmet.dto.form.LatestListFormDTO;
-import com.epmet.dto.form.ProjectListFromDTO;
-import com.epmet.dto.form.ShiftProjectFormDTO;
-import com.epmet.dto.form.ShiftProjectsFromDTO;
+import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.excel.ProjectExcel;
import com.epmet.resi.mine.dto.from.MyPartProjectsFormDTO;
@@ -192,4 +187,21 @@ public class ProjectController {
return new Result>().ok(projectService.issueToProjectList(formDTO));
}
+ @PostMapping("queryprojectinfobyids")
+ public Result> queryProjectInfoByIds(@RequestBody List projectIds){
+ return new Result>().ok(projectService.queryProjectInfoByIds(projectIds));
+ }
+
+ /**
+ * @Description
+ * @return
+ * @author wxz
+ * @date 2020.11.13 09:49
+ */
+ @PostMapping("list-by-createtopic-userid")
+ public Result> listProjectsByCreateTopicUserId(@RequestBody ProjectByCreateTopicUserFormDTO form) {
+ ValidatorUtils.validateEntity(form, ProjectByCreateTopicUserFormDTO.ListByUserGroup.class);
+ List projects = projectService.listProjectsByCreateTopicUserId(form.getUserId(), form.getCustomerId(), form.getPageNo(), form.getPageSize());
+ return new Result().ok(projects);
+ }
}
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java
index 5657589210..e4dfd04800 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java
@@ -26,6 +26,7 @@ import com.epmet.dto.form.ShiftProjectsFromDTO;
import com.epmet.dto.result.LatestListResultDTO;
import com.epmet.dto.result.MyPartProjectsResultDTO;
import com.epmet.dto.result.ProjectDetailResultDTO;
+import com.epmet.dto.result.ProjectOfCreateTopicUserResultDTO;
import com.epmet.entity.ProjectEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -139,4 +140,12 @@ public interface ProjectDao extends BaseDao {
List selectIssueProjectList(@Param("customerId") String customerId, @Param("issueList") List issueList,
@Param("pageIndex") int pageIndex, @Param("pageSize") Integer pageSize);
+ /**
+ * @Description 根据话题创建人查询项目列表
+ * @return
+ * @author wxz
+ * @date 2020.11.13 09:38
+ */
+ List listProjectsByCreateTopicUserId(@Param("userId") String userId,
+ @Param("customerId") String customerId);
}
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectRelatedPersonnelEntity.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectRelatedPersonnelEntity.java
index b2ed014ced..6b99f72f4a 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectRelatedPersonnelEntity.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/entity/ProjectRelatedPersonnelEntity.java
@@ -58,4 +58,14 @@ public class ProjectRelatedPersonnelEntity extends BaseEpmetEntity {
*/
private String userId;
+ /**
+ * 来源类型(话题:topic 议题:issue)
+ */
+ private String sourceType;
+
+ /**
+ * 来源Id(话题或议题Id)
+ */
+ private String sourceId;
+
}
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectRelatedPersonnelExcel.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectRelatedPersonnelExcel.java
index 8cfb220d77..081bb9182d 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectRelatedPersonnelExcel.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/excel/ProjectRelatedPersonnelExcel.java
@@ -46,6 +46,12 @@ public class ProjectRelatedPersonnelExcel {
@Excel(name = "用户ID")
private String userId;
+ @Excel(name = "来源类型")
+ private String sourceType;
+
+ @Excel(name = "来源ID")
+ private String sourceId;
+
@Excel(name = "删除标识")
private String delFlag;
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java
index 4f339c3a3f..03bb5fc584 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java
@@ -19,7 +19,6 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
-import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
@@ -224,4 +223,14 @@ public interface ProjectService extends BaseService {
* @Description 根据议题Id集合查询对应的项目信息
**/
List issueToProjectList(MyPartProjectsFormDTO formDTO);
+
+ List queryProjectInfoByIds(List projectIds);
+
+ /**
+ * @Description 查询用户的项目列表
+ * @return
+ * @author wxz
+ * @date 2020.11.13 09:12
+ */
+ List listProjectsByCreateTopicUserId(String userId, String customerId, Integer pageNo, Integer pageSize);
}
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
index f247526cff..7334c73c39 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
@@ -44,6 +44,7 @@ import com.epmet.feign.*;
import com.epmet.redis.ProjectRedis;
import com.epmet.resi.mine.dto.from.MyPartProjectsFormDTO;
import com.epmet.service.*;
+import com.github.pagehelper.PageHelper;
import org.apache.commons.collections4.CollectionUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.ListUtils;
@@ -688,6 +689,18 @@ public class ProjectServiceImpl extends BaseServiceImpl getClosedProjectList(LatestListFormDTO formDTO) {
+
+ return baseDao.selectClosedProjectList(formDTO);
+ }
+
/**
* @param formDTO
* @return
@@ -804,7 +817,7 @@ public class ProjectServiceImpl extends BaseServiceImpl projectStaffIds = entityList.stream().map(ProjectStaffEntity::getId).distinct().collect(Collectors.toList());
if(!CollectionUtils.isEmpty(projectStaffIds)){
List container = new LinkedList<>();
@@ -827,8 +840,12 @@ public class ProjectServiceImpl extends BaseServiceImpl getClosedProjectList(LatestListFormDTO formDTO) {
-
- return baseDao.selectClosedProjectList(formDTO);
- }
-
@Override
public void response(ProjectResponseFormDTO formDTO) {
//公开回复内容审核
@@ -1388,4 +1393,33 @@ public class ProjectServiceImpl extends BaseServiceImpl queryProjectInfoByIds(List projectIds) {
+ List entityList=baseDao.selectBatchIds(projectIds);
+ List projectDTOList=ConvertUtils.sourceToTarget(entityList, ProjectDTO.class);
+ //2.使用已有方法查询项目当前处理部门信息
+ projectDTOList.forEach(l -> {
+ if (ProjectConstant.CLOSED.equals(l.getStatus())) {
+ l.setCurrentDepartmentNameList(new ArrayList());
+ } else {
+ ProjectDTO dto = new ProjectDTO();
+ dto.setId(l.getId());
+ l.setCurrentDepartmentNameList(baseDao.selectDepartmentNameList(dto));
+ }
+ });
+ return projectDTOList;
+ }
+
+ @Override
+ public List listProjectsByCreateTopicUserId(String userId, String customerId, Integer pageNo, Integer pageSize) {
+ PageHelper.startPage(pageNo, pageSize);
+ List projects = baseDao.listProjectsByCreateTopicUserId(userId, customerId);
+ projects.stream().forEach(p -> {
+ ProjectDTO dto = new ProjectDTO();
+ dto.setId(p.getProjectId());
+ List depts = baseDao.selectDepartmentNameList(dto);
+ p.setDepartmentNameList(depts);
+ });
+ return projects;
+ }
}
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/db/migration/V0.0.4__alter_project_related_personnel.sql b/epmet-module/gov-project/gov-project-server/src/main/resources/db/migration/V0.0.4__alter_project_related_personnel.sql
new file mode 100644
index 0000000000..ceedfd85bb
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-server/src/main/resources/db/migration/V0.0.4__alter_project_related_personnel.sql
@@ -0,0 +1,14 @@
+ALTER TABLE `project_related_personnel` ADD COLUMN `SOURCE_TYPE` VARCHAR (32) CHARACTER
+SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '来源类型(话题:topic 议题:issue)' AFTER `GRID_ID`,
+ ADD COLUMN `SOURCE_ID` VARCHAR (64) CHARACTER
+SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '来源Id(话题或议题Id)' AFTER `SOURCE_TYPE`;
+
+-- 更改项目库的字符集
+alter table customer_project_parameter convert to character set utf8mb4 collate utf8mb4_general_ci;
+alter table project convert to character set utf8mb4 collate utf8mb4_general_ci;
+alter table project_org_relation convert to character set utf8mb4 collate utf8mb4_general_ci;
+alter table project_process convert to character set utf8mb4 collate utf8mb4_general_ci;
+alter table project_related_personnel convert to character set utf8mb4 collate utf8mb4_general_ci;
+alter table project_satisfaction_detail convert to character set utf8mb4 collate utf8mb4_general_ci;
+alter table project_satisfaction_statistics convert to character set utf8mb4 collate utf8mb4_general_ci;
+alter table project_staff convert to character set utf8mb4 collate utf8mb4_general_ci;
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml
index 985077a6ac..61585d7407 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml
+++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml
@@ -226,4 +226,22 @@
LIMIT #{pageIndex}, #{pageSize}
+
+
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectRelatedPersonnelDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectRelatedPersonnelDao.xml
index 18257b67f4..419b8eae35 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectRelatedPersonnelDao.xml
+++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectRelatedPersonnelDao.xml
@@ -8,6 +8,8 @@
+
+
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/result/ApplyingMemberResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/result/ApplyingMemberResultDTO.java
index 881333be54..6374a9314b 100644
--- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/result/ApplyingMemberResultDTO.java
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/result/ApplyingMemberResultDTO.java
@@ -3,6 +3,7 @@ package com.epmet.resi.group.dto.member.result;
import lombok.Data;
import java.io.Serializable;
+import java.util.List;
/**
* @Description
@@ -45,4 +46,9 @@ public class ApplyingMemberResultDTO implements Serializable {
* 入群被拒 - rejected 、
*/
private String status;
+
+ /**
+ * 用户徽章Url列表
+ */
+ private List badgeList;
}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/result/GroupMemberListResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/result/GroupMemberListResultDTO.java
index a5f69fc7c3..b6aaf3b8db 100644
--- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/result/GroupMemberListResultDTO.java
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/member/result/GroupMemberListResultDTO.java
@@ -4,6 +4,7 @@ import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
+import java.util.List;
/**
* @Description
@@ -43,4 +44,9 @@ public class GroupMemberListResultDTO implements Serializable {
* 审核通过 - approved、 已禁言 - silent
*/
private String status;
+
+ /**
+ * 用户徽章列表
+ */
+ private List badgeList;
}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/MyCreateTopicsFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/MyCreateTopicsFormDTO.java
new file mode 100644
index 0000000000..ea90db4413
--- /dev/null
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/MyCreateTopicsFormDTO.java
@@ -0,0 +1,20 @@
+package com.epmet.resi.group.dto.topic;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+
+@Data
+public class MyCreateTopicsFormDTO {
+
+ @NotBlank(message = "客户id不能为空")
+ private String customerId;
+
+ @NotBlank(message = "用户id不能为空")
+ private String userId;
+
+ private Integer pageSize = 10;
+
+ private Integer pageNo = 1;
+
+}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CustomerPageFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CustomerPageFormDTO.java
new file mode 100644
index 0000000000..5c824b35ff
--- /dev/null
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/CustomerPageFormDTO.java
@@ -0,0 +1,30 @@
+package com.epmet.resi.group.dto.topic.form;
+
+import lombok.Data;
+
+import javax.validation.constraints.Min;
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+/**
+ * @Description 客户Id 用户Id 分页
+ * @ClassName CustomerPageFormDTO
+ * @Auth wangc
+ * @Date 2020-11-11 23:15
+ */
+@Data
+public class CustomerPageFormDTO implements Serializable {
+ private static final long serialVersionUID = 8678047078015445193L;
+
+ @NotBlank(message = "客户Id不能为空")
+ private String customerId;
+
+ @NotBlank(message = "用户Id不能为空")
+ private String userId;
+
+ @Min(1)
+ private Integer pageNo;
+
+ @Min(1)
+ private Integer pageSize;
+}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicIdListFormDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicIdListFormDTO.java
new file mode 100644
index 0000000000..9ee2ddce8c
--- /dev/null
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/form/TopicIdListFormDTO.java
@@ -0,0 +1,14 @@
+package com.epmet.resi.group.dto.topic.form;
+
+import lombok.Data;
+
+/**
+ * @Author zxc
+ * @DateTime 2020/11/13 4:27 下午
+ */
+@Data
+public class TopicIdListFormDTO{
+
+ private String userId;
+
+}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/MyTopicsResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/MyCreateTopicsResultDTO.java
similarity index 76%
rename from epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/MyTopicsResultDTO.java
rename to epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/MyCreateTopicsResultDTO.java
index fd08497c00..c96aa8e99e 100644
--- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/MyTopicsResultDTO.java
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/MyCreateTopicsResultDTO.java
@@ -3,12 +3,13 @@ package com.epmet.resi.group.dto.topic.result;
import lombok.Data;
@Data
-public class MyTopicsResultDTO {
+public class MyCreateTopicsResultDTO {
private String topicId;
private Long releaseTime;
private String topicContent;
private String releaseGroupName;
+ private String releaseGridId;
private String releaseGridName;
}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ParticipatedTopicUnitResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ParticipatedTopicUnitResultDTO.java
new file mode 100644
index 0000000000..d5c9f9bc24
--- /dev/null
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/topic/result/ParticipatedTopicUnitResultDTO.java
@@ -0,0 +1,26 @@
+package com.epmet.resi.group.dto.topic.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @Description 个人中心 参与过的话题返参DTO
+ * @ClassName ParticipatedTopicUnitResultDTO
+ * @Auth wangc
+ * @Date 2020-11-11 23:00
+ */
+@Data
+public class ParticipatedTopicUnitResultDTO implements Serializable {
+ private static final long serialVersionUID = 1392205563783715932L;
+
+ private String topicId;
+
+ private String topicReleaseGridName;
+
+ private String topicContent;
+
+ private Long releaseTime;
+
+ private String topicReleaseGroupName;
+}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java
index 4e68945180..3ff5f34ce4 100644
--- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/ResiGroupOpenFeignClient.java
@@ -1,9 +1,16 @@
package com.epmet.resi.group.feign;
+import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.Result;
import com.epmet.resi.group.dto.group.form.GroupInfoFormDTO;
import com.epmet.resi.group.dto.group.result.GroupInfoResultDTO;
+import com.epmet.resi.group.dto.topic.MyCreateTopicsFormDTO;
+import com.epmet.resi.group.dto.topic.form.CustomerPageFormDTO;
+import com.epmet.resi.group.dto.topic.form.TopicIdListFormDTO;
import com.epmet.resi.group.dto.topic.result.IssueGridResultDTO;
+import com.epmet.resi.group.dto.topic.result.MyCreateTopicsResultDTO;
+import com.epmet.resi.group.dto.topic.result.ParticipatedTopicUnitResultDTO;
+import com.epmet.resi.group.feign.fallback.ResiGroupOpenFeignClientFallback;
import com.epmet.resi.mine.dto.from.MyPartProjectsFormDTO;
import com.epmet.commons.tools.utils.Result;
import com.epmet.resi.group.dto.group.form.CommonGridAndPageFormDTO;
@@ -38,6 +45,7 @@ import java.util.List;
* @date 2020/6/4 13:16
*/
@FeignClient(name = ServiceConstant.RESI_GROUP_SERVER, fallback = ResiGroupOpenFeignClientFallback.class)
+//@FeignClient(name = ServiceConstant.RESI_GROUP_SERVER, fallback = ResiGroupOpenFeignClientFallback.class,url = "localhost:8095")
public interface ResiGroupOpenFeignClient {
/**
@@ -91,4 +99,31 @@ public interface ResiGroupOpenFeignClient {
@PostMapping("/resi/group/group/gov-audit-edit")
Result govAuditEdit(@RequestBody GroupEditionAuditFormDTO param);
+ /**
+ * @Description 个人中心-我参与过的话题
+ * @param param
+ * @return java.util.List
+ * @author wangc
+ * @date 2020.11.11 23:20
+ */
+ @PostMapping("resi/group/topic/my-part-topics")
+ Result> myPartTopics(@RequestBody CustomerPageFormDTO param);
+
+ /**
+ * @Description 我创建的话题列表
+ * @return
+ * @author wxz
+ * @date 2020.11.10 14:58
+ */
+ @PostMapping("resi/group/topic/my-create-topics")
+ Result> listMyCreateTopics(@RequestBody MyCreateTopicsFormDTO formDTO);
+
+ /**
+ * @Description 查询我创建的话题
+ * @Param topicIdListFormDTO
+ * @author zxc
+ * @date 2020/11/13 4:32 下午
+ */
+ @PostMapping("resi/group/topic/select-my-create-topic")
+ Result> selectMyCreateTopic(@RequestBody TopicIdListFormDTO topicIdListFormDTO);
}
diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java
index 97b4ae6395..cb9e2ed195 100644
--- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java
+++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/feign/fallback/ResiGroupOpenFeignClientFallback.java
@@ -13,11 +13,15 @@ import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.resi.group.dto.group.form.GroupInfoFormDTO;
import com.epmet.resi.group.dto.group.result.GroupInfoResultDTO;
+import com.epmet.resi.group.dto.topic.MyCreateTopicsFormDTO;
+import com.epmet.resi.group.dto.topic.form.CustomerPageFormDTO;
+import com.epmet.resi.group.dto.topic.form.TopicIdListFormDTO;
import com.epmet.resi.group.dto.topic.result.IssueGridResultDTO;
import com.epmet.commons.tools.constant.ServiceConstant;
import com.epmet.commons.tools.utils.ModuleUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.resi.group.dto.group.form.CreateGroupCodeFormDTO;
+import com.epmet.resi.group.dto.topic.result.ParticipatedTopicUnitResultDTO;
import com.epmet.resi.group.feign.ResiGroupOpenFeignClient;
import com.epmet.resi.mine.dto.from.MyPartProjectsFormDTO;
import org.springframework.stereotype.Component;
@@ -68,4 +72,18 @@ public class ResiGroupOpenFeignClientFallback implements ResiGroupOpenFeignClien
return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "selectGroupInfo", groupInfoFormDTO);
}
+ @Override
+ public Result> myPartTopics(CustomerPageFormDTO param) {
+ return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "myPartTopics", param);
+ }
+
+ @Override
+ public Result listMyCreateTopics(MyCreateTopicsFormDTO formDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "listMyTopics", formDTO);
+ }
+
+ @Override
+ public Result> selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO) {
+ return ModuleUtils.feignConError(ServiceConstant.RESI_GROUP_SERVER, "selectMyCreateTopic", topicIdListFormDTO);
+ }
}
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java
index c6e0ad625d..d9f1b60ead 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java
@@ -297,7 +297,7 @@ public class ResiGroupController {
* @param gridIdList
* @return com.epmet.commons.tools.utils.Result>
* @Author yinzuomei
- * @Description 传入网格id列表,返回每个网格的待审核小组总数
+ * @Description 传入网格id列表,返回每个网格的待审核小组总数+变更小组信息申请数
* @Date 2020/5/13 21:33
**/
@PostMapping("groupprocessingcount")
@@ -378,9 +378,9 @@ public class ResiGroupController {
* @return
*/
@PostMapping("submit-edit")
- public Result submitGroupEdit(@RequestBody EditGroupFormDTO form){
+ public Result submitGroupEdit(@RequestBody EditGroupFormDTO form, @LoginUser TokenDto tokenDto){
ValidatorUtils.validateEntity(form, EditGroupFormDTO.SubmitGroupEditVG.class);
- resiGroupService.submitGroupEdit(form.getGroupId(), form.getGroupName(), form.getGroupHeadPhoto(), form.getGroupIntroduction());
+ resiGroupService.submitGroupEdit(form.getGroupId(), form.getGroupName(), form.getGroupHeadPhoto(), form.getGroupIntroduction(), tokenDto.getUserId());
return new Result();
}
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/GroupEditSubmitRecordDao.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/GroupEditSubmitRecordDao.java
index 71ba9175a3..829beba4f7 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/GroupEditSubmitRecordDao.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/dao/GroupEditSubmitRecordDao.java
@@ -81,4 +81,12 @@ public interface GroupEditSubmitRecordDao extends BaseDao {
GroupDetailResultDTO getGroupDetail(String groupId);
- void submitGroupEdit(String groupId, String groupName, String groupHeadPhoto, String groupIntroduction);
+ void submitGroupEdit(String groupId, String groupName, String groupHeadPhoto, String groupIntroduction, String editUserId);
/**
* @Description 工作端 查询组变更待审核列表
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java
index e9bf586d59..3c628bdf81 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java
@@ -33,7 +33,6 @@ 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.result.SyncScanResult;
-import com.epmet.commons.tools.security.dto.GovTokenDto;
import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.*;
import com.epmet.constant.ReadFlagConstant;
@@ -64,9 +63,9 @@ import com.epmet.modules.utils.ModuleConstant;
import com.epmet.resi.group.constant.*;
import com.epmet.resi.group.dto.UserRoleDTO;
import com.epmet.resi.group.dto.group.*;
-import com.epmet.resi.group.dto.group.form.*;
import com.epmet.resi.group.dto.group.form.GridIdFormDTO;
import com.epmet.resi.group.dto.group.form.ShouldVoteCountFormDTO;
+import com.epmet.resi.group.dto.group.form.*;
import com.epmet.resi.group.dto.group.result.*;
import com.epmet.resi.group.dto.member.GroupMemeberOperationDTO;
import com.epmet.resi.group.dto.member.ResiGroupMemberDTO;
@@ -891,7 +890,9 @@ public class ResiGroupServiceImpl extends BaseServiceImpl page(Map params) {
@@ -329,6 +332,24 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl>> badgeR
+ = userOpenFeignClient.userShowBadge(new UserGroupFormDTO(group.getCustomerId(), userIdList));
+ if(null != badgeR && badgeR.success() && null != badgeR.getData() && !badgeR.getData().isEmpty()){
+ Map> map = badgeR.getData();
+ list.forEach(member -> {
+ member.setBadgeList(
+ CollectionUtils.isEmpty(map.get(member.getUserId())) ?
+ Collections.EMPTY_LIST:
+ map.get(member.getUserId()).stream().map(UserBadgeUnitFormDTO :: getBadgeIcon).collect(Collectors.toList()) );
+ });
+ }else{
+ list.forEach(member -> member.setBadgeList(Collections.EMPTY_LIST));
+ }
+ }
+
return list;
}
@@ -368,6 +389,26 @@ public class ResiGroupMemberServiceImpl extends BaseServiceImpl>> badgeR
+ = userOpenFeignClient.userShowBadge(new UserGroupFormDTO(group.getCustomerId(), userIdList));
+ if(null != badgeR && badgeR.success() && null != badgeR.getData() && !badgeR.getData().isEmpty()){
+ Map> map = badgeR.getData();
+ list.forEach(member -> {
+ member.setBadgeList(
+ CollectionUtils.isEmpty(map.get(member.getApplyUserId())) ?
+ Collections.EMPTY_LIST:
+ map.get(member.getApplyUserId()).stream().map(UserBadgeUnitFormDTO :: getBadgeIcon).collect(Collectors.toList()) );
+ });
+ }else{
+ list.forEach(member -> member.setBadgeList(Collections.EMPTY_LIST));
+ }
+ }
+
return list;
}
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java
index de0f3a665d..4c7d08ba93 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/controller/ResiTopicController.java
@@ -5,7 +5,7 @@ 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.modules.topic.service.ResiTopicService;
-import com.epmet.resi.group.dto.topic.MyTopicsFormDTO;
+import com.epmet.resi.group.dto.topic.MyCreateTopicsFormDTO;
import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.TopicInfoDTO;
import com.epmet.resi.group.dto.topic.form.*;
@@ -265,12 +265,36 @@ public class ResiTopicController {
* @author wxz
* @date 2020.11.10 14:58
*/
- @PostMapping("my-topics")
- public Result listMyTopics(@RequestBody MyTopicsFormDTO formDTO, @LoginUser TokenDto tokenDto) {
+ @PostMapping("my-create-topics")
+ public Result> listMyCreateTopics(@RequestBody MyCreateTopicsFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO);
- List myTopics = topicService.listMyTopics(formDTO.getCustomerId(), tokenDto.getUserId(), formDTO.getPageNo(), formDTO.getPageSize());
+ List myTopics = topicService.listMyCreateTopics(formDTO.getCustomerId(), formDTO.getUserId(), formDTO.getPageNo(), formDTO.getPageSize());
return new Result().ok(myTopics);
}
+ /**
+ * @Description 个人中心-我参与过的话题
+ * @param param
+ * @return java.util.List
+ * @author wangc
+ * @date 2020.11.11 23:20
+ */
+ @PostMapping("my-part-topics")
+ public Result> myPartTopics(@RequestBody CustomerPageFormDTO param){
+ ValidatorUtils.validateEntity(param);
+ return new Result>().ok(topicService.getParticipatedTopics(param));
+ }
+
+ /**
+ * @Description 查询我创建的话题
+ * @Param topicIdListFormDTO
+ * @author zxc
+ * @date 2020/11/13 4:32 下午
+ */
+ @PostMapping("select-my-create-topic")
+ public Result> selectMyCreateTopic(@RequestBody TopicIdListFormDTO topicIdListFormDTO){
+ return new Result>().ok(topicService.selectMyCreateTopic(topicIdListFormDTO));
+ }
+
}
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 1cc8f528fe..701661cac4 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
@@ -24,6 +24,7 @@ import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.TopicInfoDTO;
import com.epmet.resi.group.dto.topic.form.CheckTopicPublisherFormDTO;
import com.epmet.resi.group.dto.topic.form.ResiTopicPageFormDTO;
+import com.epmet.resi.group.dto.topic.form.TopicIdListFormDTO;
import com.epmet.resi.group.dto.topic.result.*;
import com.epmet.resi.group.dto.topic.form.TopicInfoFormDTO;
import org.apache.ibatis.annotations.Mapper;
@@ -153,7 +154,7 @@ public interface ResiTopicDao extends BaseDao {
*/
CheckTopicPublisherResultDTO checkTopicPublisher(CheckTopicPublisherFormDTO formDTO);
- List listMyTopics(@Param("userId") String userId, @Param("customerId") String customerId);
+ List listMyCreateTopics(@Param("userId") String userId, @Param("customerId") String customerId);
/**
* @Description 根据话题Id集合查询对应的已转成议题的议题Id集合
@@ -161,4 +162,21 @@ public interface ResiTopicDao extends BaseDao {
*/
List selectIssueList(@Param("topicList") List topicList);
+ /**
+ * @Description 查询我参与过的话题
+ * @param customerId
+ * @param userId
+ * @return java.util.List
+ * @author wangc
+ * @date 2020.11.11 23:08
+ */
+ List selectParticipatedTopics(@Param("customerId") String customerId,@Param("userId") String userId);
+
+ /**
+ * @Description 查询我创建的话题
+ * @Param topicIdListFormDTO
+ * @author zxc
+ * @date 2020/11/13 4:32 下午
+ */
+ List selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO);
}
\ 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 b366ac7109..dbd533439e 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
@@ -30,7 +30,6 @@ import com.epmet.resi.group.dto.topic.ResiTopicDTO;
import com.epmet.resi.group.dto.topic.TopicInfoDTO;
import com.epmet.resi.group.dto.topic.form.*;
import com.epmet.resi.group.dto.topic.result.*;
-import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@@ -270,5 +269,22 @@ public interface ResiTopicService extends BaseService {
* @author wxz
* @date 2020.11.10 15:03
*/
- List listMyTopics(String customerId, String userId, Integer pageNo, Integer pageSize);
+ List listMyCreateTopics(String customerId, String userId, Integer pageNo, Integer pageSize);
+
+ /**
+ * @Description 个人中心-我参与过的话题
+ * @param param
+ * @return java.util.List
+ * @author wangc
+ * @date 2020.11.11 23:20
+ */
+ List getParticipatedTopics(CustomerPageFormDTO param);
+
+ /**
+ * @Description 查询我创建的话题
+ * @Param topicIdListFormDTO
+ * @author zxc
+ * @date 2020/11/13 4:32 下午
+ */
+ List selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO);
}
\ No newline at end of file
diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java
index 6e86d0221b..a589c6e42a 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java
+++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java
@@ -37,12 +37,12 @@ import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.utils.ScanContentUtils;
+import com.epmet.constant.OrgInfoConstant;
import com.epmet.dto.CustomerGridDTO;
import com.epmet.dto.form.*;
-import com.epmet.dto.result.CommonDataFilterResultDTO;
-import com.epmet.dto.result.IssueInitiatorResultDTO;
-import com.epmet.dto.result.UserResiInfoResultDTO;
+import com.epmet.dto.result.*;
import com.epmet.feign.EpmetUserOpenFeignClient;
+import com.epmet.feign.GovOrgOpenFeignClient;
import com.epmet.modules.constant.GroupMemberConstant;
import com.epmet.modules.constant.ResiGroupRedisKeys;
import com.epmet.modules.feign.EpmetUserFeignClient;
@@ -80,7 +80,10 @@ import com.epmet.resi.group.dto.topic.form.*;
import com.epmet.resi.group.dto.topic.form.CheckTopicPublisherFormDTO;
import com.epmet.resi.group.dto.topic.form.GovTopicIssueInfoFormDTO;
import com.epmet.resi.group.dto.topic.result.*;
+import com.epmet.resi.group.dto.topic.result.CheckTopicPublisherResultDTO;
+import com.epmet.resi.group.dto.topic.result.GovTopicIssueInfoResultDTO;
import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.logging.Log;
@@ -141,6 +144,9 @@ public class ResiTopicServiceImpl extends BaseServiceImpl>> badgeR
+ = userOpenFeignClient.userShowBadge(
+ new UserGroupFormDTO(group.getCustomerId(),
+ latestTenTopics.stream()
+ .filter(top -> StringUtils.equals("other",top.getReleaseUserFlag()))
+ .map(ResiTopicIncludeIssueInfoResultDTO::getUserId)
+ .distinct().collect(Collectors.toList())));
+ if(null != badgeR && badgeR.success() && null != badgeR.getData() && !badgeR.getData().isEmpty()){
+ Map> badgeM = badgeR.getData();
+ latestTenTopics.forEach(top -> {
+ if(StringUtils.equals("other",top.getReleaseUserFlag())){
+ top.setBadgeList(
+ CollectionUtils.isEmpty(badgeM.get(top.getUserId())) ?
+ Collections.EMPTY_LIST :
+ badgeM.get(top.getUserId()).stream().map(UserBadgeUnitFormDTO :: getBadgeIcon).collect(Collectors.toList())
+ );
+ }else top.setBadgeList(Collections.EMPTY_LIST);
+ });
+
+ }else latestTenTopics.forEach(top -> top.setBadgeList(Collections.EMPTY_LIST));
+
+ }
+
+
+ }
return new Result>().ok(latestTenTopics);
}
@@ -1383,12 +1418,64 @@ public class ResiTopicServiceImpl extends BaseServiceImpl listMyTopics(String customerId, String userId, Integer pageNo, Integer pageSize) {
+ public List listMyCreateTopics(String customerId, String userId, Integer pageNo, Integer pageSize) {
PageHelper.startPage(pageNo, pageSize);
- List myTopics = resiTopicDao.listMyTopics(userId, customerId);
- // todo 查询网格名称,赋值
+ List myTopics = resiTopicDao.listMyCreateTopics(userId, customerId);
+
+ HashMap gridIdAndNames = new HashMap<>();
+ List gridIds = myTopics.stream().map(c -> c.getReleaseGridId()).collect(Collectors.toList());
+
+ Result> gridsResult = govOrgOpenFeignClient.getGridListByGridIds(gridIds);
+ if (gridsResult.success()) {
+ List grids = gridsResult.getData();
+ grids.stream().forEach(g -> gridIdAndNames.put(g.getGridId(), g.getGridName()));
+ } else {
+ log.error("【我创建的话题列表】,查询组织-网格名称出错,没有抛出,内部处理。内部消息:{},外部消息:{}", gridsResult.getInternalMsg(), gridsResult.getMsg());
+ }
+
+ for (MyCreateTopicsResultDTO myTopic : myTopics) {
+ myTopic.setReleaseGridName(gridIdAndNames.get(myTopic.getReleaseGridId()));
+ }
+
return myTopics;
}
+
+ /**
+ * @Description 个人中心-我参与过的话题
+ * @param param
+ * @return java.util.List
+ * @author wangc
+ * @date 2020.11.11 23:20
+ */
+ @Override
+ public List getParticipatedTopics(CustomerPageFormDTO param) {
+
+ PageInfo page =
+ PageHelper.startPage(Optional.ofNullable(param.getPageNo()).orElse(NumConstant.ONE),
+ Optional.ofNullable(param.getPageSize()).orElse(NumConstant.ONE)).doSelectPageInfo(() ->
+ baseDao.selectParticipatedTopics(param.getCustomerId(),param.getUserId()));
+ List result = page.getList();
+ if(CollectionUtils.isEmpty(result)) return Collections.EMPTY_LIST;
+ Result> gridR = govOrgOpenFeignClient.selectOrgInfo(
+ new OrgInfoFormDTO(OrgInfoConstant.GRID,result.stream().map(ParticipatedTopicUnitResultDTO :: getTopicReleaseGridName).distinct().collect(Collectors.toList())));
+ if(gridR.success() && !CollectionUtils.isEmpty(gridR.getData())){
+ return result.stream().flatMap(topic -> gridR.getData().stream() .filter(grid -> StringUtils.equals(grid.getOrgId(),topic.getTopicReleaseGridName())).map(orgInfo -> {
+ topic.setTopicReleaseGridName(orgInfo.getOrgId());
+ return topic;
+ })).collect(Collectors.toList());
+ } return Collections.EMPTY_LIST;
+ }
+
+ /**
+ * @Description 查询我创建的话题
+ * @Param topicIdListFormDTO
+ * @author zxc
+ * @date 2020/11/13 4:32 下午
+ */
+ @Override
+ public List selectMyCreateTopic(TopicIdListFormDTO topicIdListFormDTO) {
+ return baseDao.selectMyCreateTopic(topicIdListFormDTO);
+ }
}
diff --git a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/GroupEditSubmitRecordDao.xml b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/GroupEditSubmitRecordDao.xml
index e45268966e..b9b2924cdb 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/GroupEditSubmitRecordDao.xml
+++ b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/group/GroupEditSubmitRecordDao.xml
@@ -135,4 +135,16 @@
STAFF_ID IS NULL
LIMIT 1
+
+
+
\ No newline at end of file
diff --git a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml
index cf570c9eda..db2d2f5fdb 100644
--- a/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml
+++ b/epmet-module/resi-group/resi-group-server/src/main/resources/mapper/topic/ResiTopicDao.xml
@@ -447,11 +447,12 @@
AND id = #{topicId}
-
+
+
+ SELECT
+ m.GRID_ID as gridId,
+ count(1) as count
+ FROM
+ user_badge_certificate_record m
+ WHERE
+ m.DEL_FLAG = '0'
+ AND m.AUDIT_STATUS = 'auditing'
+
+ m.GRID_ID =#{gridId}
+
+ group by m.GRID_ID
+
\ No newline at end of file
diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/UserAdviceDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/UserAdviceDao.xml
index c9c804c0a2..1499c9581b 100644
--- a/epmet-user/epmet-user-server/src/main/resources/mapper/UserAdviceDao.xml
+++ b/epmet-user/epmet-user-server/src/main/resources/mapper/UserAdviceDao.xml
@@ -8,6 +8,8 @@
+
+