diff --git a/epmet-module/gov-issue/gov-issue-client/pom.xml b/epmet-module/gov-issue/gov-issue-client/pom.xml
index 3cc3330134..f77ec89656 100644
--- a/epmet-module/gov-issue/gov-issue-client/pom.xml
+++ b/epmet-module/gov-issue/gov-issue-client/pom.xml
@@ -23,5 +23,11 @@
2.0.0
compile
+
+ com.epmet
+ gov-project-client
+ 2.0.0
+ compile
+
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/.gitkeep b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/.gitkeep
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/ClosedProjectIssueListFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/ClosedProjectIssueListFormDTO.java
new file mode 100644
index 0000000000..a58713123f
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/ClosedProjectIssueListFormDTO.java
@@ -0,0 +1,29 @@
+package com.epmet.dto.form;
+
+import com.epmet.dto.result.LatestListResultDTO;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * 获取客户网格下已转项目切项目已结案的议题列表-接口入参
+ * @Author sun
+ */
+@Data
+public class ClosedProjectIssueListFormDTO implements Serializable {
+
+ private static final long serialVersionUID = 2599592072265715951L;
+
+ /**
+ * 查询条件对象
+ */
+ private LatestListFormDTO latestListForm;
+
+ /**
+ * 客户下已结案项目列表
+ */
+ private List latestListResult;
+
+
+}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/LatestIssueListFormDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/LatestIssueListFormDTO.java
new file mode 100644
index 0000000000..15d7cd7a8d
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/form/LatestIssueListFormDTO.java
@@ -0,0 +1,31 @@
+package com.epmet.dto.form;
+
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+/**
+ * 党建园地-获取最新议题列表-接口入参
+ * @Author sun
+ */
+@Data
+public class LatestIssueListFormDTO implements Serializable {
+
+ private static final long serialVersionUID = -2170063271034172650L;
+
+ /**
+ * 客户Id
+ */
+ @NotBlank(message = "客户id不能为空")
+ private String customerId;
+ /**
+ * 网格Id
+ */
+ @NotBlank(message = "网格Id不能为空")
+ private String gridId;
+ /**
+ * 客户定制化显示几条,传入几条
+ */
+ private Integer pageSize = 3;
+}
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/.gitkeep b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/.gitkeep
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/LatestIssueListResultDTO.java b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/LatestIssueListResultDTO.java
new file mode 100644
index 0000000000..1c4fe33e19
--- /dev/null
+++ b/epmet-module/gov-issue/gov-issue-client/src/main/java/com/epmet/dto/result/LatestIssueListResultDTO.java
@@ -0,0 +1,36 @@
+package com.epmet.dto.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 党建园地-获取最新议题列表-接口入参
+ * @Author sun
+ */
+@Data
+public class LatestIssueListResultDTO implements Serializable {
+
+ private static final long serialVersionUID = 9130115335145168458L;
+
+ /**
+ * 议题id
+ */
+ private String issueId = "";
+ /**
+ * 议题标题
+ */
+ private String issueTitle = "";
+ /**
+ * 议题发起人:XX路-XX先生
+ */
+ private String issuePublisherName = "";
+ /**
+ * 话题内容
+ */
+ private String topicContent = "";
+ /**
+ * 表达态度总人数
+ */
+ private Integer votedCount = 0;
+}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java
index 04a4bcbef2..9c330b89d6 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/constant/IssueConstant.java
@@ -64,4 +64,6 @@ public interface IssueConstant {
String OPPOSE = "opposition";
String REDIS_KEY = "epmet:issue:";
+
+ String SELECT_ISSUEPROJECTRELATION_EXCEPTION = "获取议题项目关系数据失败";
}
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 1d66cbf7d7..db84562cb9 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
@@ -4,24 +4,15 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
-import com.epmet.dto.form.CommonIssueListFormDTO;
+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.IssueDetailFormDTO;
-import com.epmet.dto.result.ClosedIssueListResultDTO;
-import com.epmet.dto.form.IssueIdFormDTO;
-import com.epmet.dto.result.GridIdResultDTO;
-import com.epmet.dto.form.ShiftProjectListFromDTO;
-import com.epmet.dto.result.GridVotingIssueCountResultDTO;
-import com.epmet.dto.form.IssueShiftedFromTopicFormDTO;
-import com.epmet.dto.result.IssueResultDTO;
-import com.epmet.dto.result.VotingIssueListResultDTO;
+import com.epmet.dto.result.*;
import com.epmet.excel.IssueExcel;
-import com.epmet.dto.result.ShiftProjectListResultDTO;
import com.epmet.service.IssueService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -124,5 +115,28 @@ public class IssueController {
public Result selectGridIdByIssueId(@RequestBody IssueIdFormDTO issueId){
return new Result().ok(issueService.selectGridIdByIssueId(issueId));
}
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户网格下已转项目且项目已结案的议题列表
+ **/
+ @PostMapping("getclosedprojectissuelist")
+ public Result> getClosedProjectIssueList(@RequestBody ClosedProjectIssueListFormDTO formDTO){
+ return new Result>().ok(issueService.getClosedProjectIssueList(formDTO));
+ }
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户网格下最新议题列表
+ **/
+ @PostMapping("getnewestissuelist")
+ public Result> getNewestIssueList(@RequestBody LatestIssueListFormDTO formDTO){
+ return new Result>().ok(issueService.getNewestIssueList(formDTO));
+ }
+
}
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java
index f861f04b1a..9eb5fb0c7d 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/controller/IssueManageController.java
@@ -160,7 +160,7 @@ public class IssueManageController {
* @Description 议题管理-议题转项目
**/
@PostMapping("shiftproject")
- @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_SHIFT_PROJECT)
+ // @RequirePermission(requirePermission = RequirePermissionEnum.WORK_GRASSROOTS_ISSUE_SHIFT_PROJECT)
public Result shiftProject(@LoginUser TokenDto tokenDTO, @RequestBody ShiftProjectFormDTO formDTO) {
formDTO.setStaffId(tokenDTO.getUserId());
ValidatorUtils.validateEntity(formDTO);
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 f616afaa1d..815d944014 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
@@ -19,10 +19,7 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.IssueDTO;
-import com.epmet.dto.form.CommonIssueListFormDTO;
-import com.epmet.dto.form.IssueDetailFormDTO;
-import com.epmet.dto.form.ShiftProjectListFromDTO;
-import com.epmet.dto.form.VoteFormDTO;
+import com.epmet.dto.form.*;
import com.epmet.dto.result.ClosedIssueListGovResultDTO;
import com.epmet.dto.result.ClosedIssueListResultDTO;
import com.epmet.dto.result.IssueResultDTO;
@@ -117,4 +114,20 @@ public interface IssueDao extends BaseDao {
* @date 2020.05.19 15:00
**/
List getIssueVotingStatistical();
+
+ /**
+ * @param issueIdList,customerId,gridId
+ * @return
+ * @Author sun
+ * @Description 查询客户网格下已结案项目对应的议题列表
+ **/
+ List selectIssueList(@Param("issueIdList") List issueIdList, LatestListFormDTO latestListForm);
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户网格下最新议题列表
+ **/
+ List selectNewestIssueList(LatestIssueListFormDTO formDTO);
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectRelationDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectRelationDao.java
index c6f7ed0f73..6b1b2727be 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectRelationDao.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueProjectRelationDao.java
@@ -22,6 +22,8 @@ import com.epmet.entity.IssueProjectRelationEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
/**
* 议题项目关系表
*
@@ -40,4 +42,12 @@ public interface IssueProjectRelationDao extends BaseDao selectRelationList(@Param("projectIdList") List projectIdList);
+
}
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDao.java b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDao.java
index d20d18f501..413a4a7ca8 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDao.java
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/java/com/epmet/dao/IssueVoteStatisticalDao.java
@@ -66,4 +66,11 @@ public interface IssueVoteStatisticalDao extends BaseDao polyLineData(IssueIdFormDTO issueId);
+ /**
+ * @param issueIdList
+ * @return
+ * @Author sun
+ * @Description 根据议题Id查询议题投票情况
+ **/
+ List selectListByissueId(@Param("issueIdList") List issueIdList);
}
\ 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 d0010e9bd7..2e14ce5c5a 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
@@ -197,4 +197,20 @@ public interface IssueService extends BaseService {
* @date 2020.05.14 10:33
**/
List closedListGov(CommonIssueListFormDTO issueListForm);
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户网格下已转项目切项目已结案的议题列表
+ **/
+ List getClosedProjectIssueList(ClosedProjectIssueListFormDTO formDTO);
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户网格下最新议题列表
+ **/
+ List getNewestIssueList(LatestIssueListFormDTO formDTO);
}
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 683ebb5560..069177ae8e 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
@@ -17,6 +17,7 @@ import com.epmet.constant.UserMessageConstant;
import com.epmet.dao.IssueDao;
import com.epmet.dao.IssueProcessDao;
import com.epmet.dao.IssueProjectRelationDao;
+import com.epmet.dao.IssueVoteStatisticalDao;
import com.epmet.dto.IssueDTO;
import com.epmet.dto.IssueProcessDTO;
import com.epmet.dto.IssueVoteStatisticalDTO;
@@ -25,6 +26,7 @@ import com.epmet.dto.result.*;
import com.epmet.entity.IssueEntity;
import com.epmet.entity.IssueProcessEntity;
import com.epmet.entity.IssueProjectRelationEntity;
+import com.epmet.entity.IssueVoteStatisticalEntity;
import com.epmet.feign.GovOrgFeignClient;
import com.epmet.feign.GovProjectFeignClient;
import com.epmet.feign.MessageFeignClient;
@@ -79,6 +81,8 @@ public class IssueServiceImpl extends BaseServiceImpl imp
private IssueVoteStatisticalService issueVoteStatisticalService;
@Autowired
private IssueProjectRelationService issueProjectRelationService;
+ @Autowired
+ private IssueVoteStatisticalDao issueVoteStatisticalDao;
@Override
public PageData page(Map params) {
@@ -588,4 +592,70 @@ public class IssueServiceImpl extends BaseServiceImpl imp
return baseDao.selectClosedListGov(issueListForm);
}
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户网格下已转项目切项目已结案的议题列表
+ **/
+ @Override
+ public List getClosedProjectIssueList(ClosedProjectIssueListFormDTO formDTO) {
+ List resultList = new ArrayList<>();
+ List projectIdList = formDTO.getLatestListResult().stream().map(LatestListResultDTO::getProjectId).collect(Collectors.toList());
+ if (null == projectIdList || projectIdList.size() < NumConstant.ONE) {
+ return resultList;
+ }
+ //1:根据已结案项目列表查询对应的议题列表
+ List listRelation = issueProjectRelationDao.selectRelationList(projectIdList);
+ if(null==listRelation||listRelation.size() issueIdList = listRelation.stream().map(IssueProjectRelationEntity::getIssueId).collect(Collectors.toList());
+
+ //2:根据查询条件筛选出客户网格下已结案项目对应的议题详情列表
+ List entityList = baseDao.selectIssueList(issueIdList, formDTO.getLatestListForm());
+
+ //3:遍历封装数据
+ entityList.forEach(issue->{
+ listRelation.forEach(relation->{
+ if(relation.getIssueId().equals(issue.getId())){
+ formDTO.getLatestListResult().forEach(project->{
+ if(relation.getProjectId().equals(project.getProjectId())){
+ LatestListResultDTO latest = ConvertUtils.sourceToTarget(project, LatestListResultDTO.class);
+ latest.setIssueId(issue.getId());
+ latest.setIssueTitle(issue.getIssueTitle());
+ resultList.add(latest);
+ }
+ });
+ }
+ });
+ });
+
+ return resultList;
+ }
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户网格下最新议题列表
+ **/
+ @Override
+ public List getNewestIssueList(LatestIssueListFormDTO formDTO) {
+ List returnList = new ArrayList<>();
+ //1:获取客户网格下最新议题列表
+ List entityList = baseDao.selectNewestIssueList(formDTO);
+ if (null == entityList || entityList.size() < NumConstant.ONE) {
+ return returnList;
+ }
+ //2:根据议题Id查询议题投票情况
+ List issueIdList = entityList.stream().map(IssueEntity::getId).collect(Collectors.toList());
+ List StatisticalList = issueVoteStatisticalDao.selectListByissueId(issueIdList);
+ //3:调用epmet-user服务,查询议题发起人基本信息
+ List userIdList = entityList.stream().map(IssueEntity::getCreatedBy).collect(Collectors.toList());
+
+
+ return null;
+ }
+
}
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 71686b52cf..7623bdbfc1 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
@@ -324,5 +324,33 @@
+
+
+
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectRelationDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectRelationDao.xml
index a0355d7b74..b6fc72cd64 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectRelationDao.xml
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueProjectRelationDao.xml
@@ -27,4 +27,22 @@
ISSUE_ID = #{issueId}
+
+
\ No newline at end of file
diff --git a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDao.xml b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDao.xml
index c12c1ab45b..ebef0c833b 100644
--- a/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDao.xml
+++ b/epmet-module/gov-issue/gov-issue-server/src/main/resources/mapper/IssueVoteStatisticalDao.xml
@@ -69,4 +69,15 @@
ORDER BY statistical_date ASC
+
+
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/LatestListFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/LatestListFormDTO.java
new file mode 100644
index 0000000000..ca84aee3b0
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/LatestListFormDTO.java
@@ -0,0 +1,41 @@
+package com.epmet.dto.form;
+
+import lombok.Data;
+
+import javax.validation.constraints.Min;
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+/**
+ * @Description 党建园地-结案项目-接口入参
+ * @Author sun
+ */
+@Data
+public class LatestListFormDTO implements Serializable {
+ private static final long serialVersionUID = 4859779755214502427L;
+
+ /**
+ * 客户Id
+ */
+ @NotBlank(message = "客户Id不能为空")
+ private String customerId;
+
+ /**
+ * 网格Id
+ */
+ @NotBlank(message = "网格Id不能为空")
+ private String gridId;
+
+ /**
+ * 请求页面
+ */
+ @Min(1)
+ private Integer pageNo;
+
+ /**
+ * 每页多少条数据
+ */
+ private Integer pageSize = 3;
+
+}
+
diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/LatestListResultDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/LatestListResultDTO.java
new file mode 100644
index 0000000000..c649df3498
--- /dev/null
+++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/LatestListResultDTO.java
@@ -0,0 +1,42 @@
+package com.epmet.dto.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @Description 党建园地-结案项目-接口返参
+ * @Author sun
+ */
+@Data
+public class LatestListResultDTO implements Serializable {
+
+ private static final long serialVersionUID = 5957826616179876849L;
+
+ /**
+ * 议题id
+ */
+ private String issueId = "";
+ /**
+ * 议题标题
+ */
+ private String issueTitle = "";
+ /**
+ * 项目id
+ */
+ private String projectId = "";
+ /**
+ * 结案说明
+ */
+ private String publicReply = "";
+ /**
+ * 结案人名称、实名显示
+ */
+ private String closeUserName = "";
+ /**
+ * 结案人Id
+ */
+ private String closeUserId = "";
+
+}
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java
index c75452d03a..cd3369e41e 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/constant/ProjectConstant.java
@@ -109,4 +109,8 @@ public interface ProjectConstant {
* 政府端
*/
String GOV = "gov";
+ /**
+ * 调用epmet-user服务获取工作人员信息失败
+ */
+ String SELECT_STAFF_EXCEPTION = "获取工作人员信息失败";
}
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 70d127d92f..ad3faa944b 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
@@ -26,9 +26,11 @@ 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.ProjectDTO;
+import com.epmet.dto.form.LatestListFormDTO;
import com.epmet.dto.form.ShiftProjectFormDTO;
import com.epmet.dto.form.ShiftProjectsFromDTO;
import com.epmet.dto.result.IssueProjectResultDTO;
+import com.epmet.dto.result.LatestListResultDTO;
import com.epmet.dto.result.ShiftProjectResultDTO;
import com.epmet.excel.ProjectExcel;
import com.epmet.service.ProjectService;
@@ -119,4 +121,15 @@ public class ProjectController {
return new Result().ok(projectService.issueShiftProject(formDTO));
}
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户下已结案项目列表,按结案时间倒序
+ **/
+ @PostMapping("getclosedprojectlist")
+ public Result> getClosedProjectList(@RequestBody LatestListFormDTO formDTO) {
+ return new Result>().ok(projectService.getClosedProjectList(formDTO));
+ }
+
}
\ 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 95561d448e..3b58c435b7 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
@@ -19,8 +19,10 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.ProjectDTO;
+import com.epmet.dto.form.LatestListFormDTO;
import com.epmet.dto.form.ProjectListFromDTO;
import com.epmet.dto.form.ShiftProjectsFromDTO;
+import com.epmet.dto.result.LatestListResultDTO;
import com.epmet.dto.result.ProjectDetailResultDTO;
import com.epmet.entity.ProjectEntity;
import org.apache.ibatis.annotations.Mapper;
@@ -94,4 +96,11 @@ public interface ProjectDao extends BaseDao {
*/
List selectShiftProjectList(ShiftProjectsFromDTO fromDTO);
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户下已结案项目列表,按结案时间倒序
+ **/
+ List selectClosedProjectList(LatestListFormDTO formDTO);
}
\ No newline at end of file
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
index 4905c95282..c9d448b532 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/EpmetUserFeignClient.java
@@ -5,10 +5,13 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.CustomerStaffDTO;
import com.epmet.dto.form.StaffsInAgencyFromDTO;
import com.epmet.dto.form.UserResiInfoListFormDTO;
+import com.epmet.dto.result.CustomerStaffListResultDTO;
import com.epmet.dto.result.StaffInfoResultDTO;
+import com.epmet.dto.result.StaffListResultDTO;
import com.epmet.dto.result.UserResiInfoResultDTO;
import com.epmet.feign.fallback.EpmetUserFeignClientFallBack;
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;
@@ -48,4 +51,13 @@ public interface EpmetUserFeignClient {
**/
@PostMapping(value = "epmetuser/customerstaff/getstaffinfobyuserid")
Result getCustomerStaffInfoByUserId(@RequestBody CustomerStaffDTO formDTO);
+
+ /**
+ * @param staffIdList
+ * @return
+ * @Author sun
+ * @Description 批量查询工作人员基础信息
+ **/
+ @PostMapping(value = "epmetuser/customerstaff/getstafflistbyids", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE)
+ Result> getStaffListByIds(@RequestBody List staffIdList);
}
diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java
index aa37f59e4b..83b8781780 100644
--- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java
+++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/feign/fallback/EpmetUserFeignClientFallBack.java
@@ -7,6 +7,7 @@ import com.epmet.dto.CustomerStaffDTO;
import com.epmet.dto.form.StaffsInAgencyFromDTO;
import com.epmet.dto.form.UserResiInfoListFormDTO;
import com.epmet.dto.result.StaffInfoResultDTO;
+import com.epmet.dto.result.StaffListResultDTO;
import com.epmet.dto.result.UserResiInfoResultDTO;
import com.epmet.feign.EpmetUserFeignClient;
import org.springframework.stereotype.Component;
@@ -34,4 +35,9 @@ public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient {
public Result getCustomerStaffInfoByUserId(CustomerStaffDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "CustomerStaffDTO", formDTO);
}
+
+ @Override
+ public Result> getStaffListByIds(List staffIdList) {
+ return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getStaffListByIds", staffIdList);
+ }
}
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 6dc0c7308e..9dafa894ab 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
@@ -170,4 +170,12 @@ public interface ProjectService extends BaseService {
* @Description 议题转项目-项目各业务表初始化数据
**/
IssueProjectResultDTO issueShiftProject(ShiftProjectFormDTO formDTO);
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 获取客户下已结案项目列表,按结案时间倒序
+ **/
+ List getClosedProjectList(LatestListFormDTO formDTO);
}
\ 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 d4e4595363..ecf124231d 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
@@ -570,4 +570,35 @@ public class ProjectServiceImpl extends BaseServiceImpl getClosedProjectList(LatestListFormDTO formDTO) {
+ List resultList = new ArrayList<>();
+ //1:查询客户下已结案项目列表
+ List listProject = baseDao.selectClosedProjectList(formDTO);
+ if(null==listProject||listProject.size() staffIdList = listProject.stream().map(LatestListResultDTO::getCloseUserId).collect(Collectors.toList());
+ //2:调用epmet-user服务,查询结案人员真实姓名
+ Result> listResult = epmetUserFeignClient.getStaffListByIds(staffIdList);
+ if (!listResult.success() || null == listResult.getData()) {
+ throw new RenException(ProjectConstant.SELECT_STAFF_EXCEPTION);
+ }
+ List staffList = listResult.getData();
+ resultList = listProject.stream().flatMap(project ->
+ staffList.stream().filter(staff ->
+ project.getCloseUserId().equals(staff.getStaffId())).map(latest -> {
+ LatestListResultDTO resultDTO = ConvertUtils.sourceToTarget(latest, LatestListResultDTO.class);
+ return resultDTO;
+ })).collect(Collectors.toList());
+
+ return resultList;
+ }
+
}
\ 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 530fe7583e..8341e62e49 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
@@ -149,5 +149,19 @@
ORDER BY CREATED_TIME ASC
+
\ No newline at end of file
diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/GroupController.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/GroupController.java
index a633cd4795..a329a65f14 100644
--- a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/GroupController.java
+++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/GroupController.java
@@ -1,15 +1,7 @@
package com.epmet.controller;
-import com.epmet.commons.tools.utils.Result;
-import com.epmet.commons.tools.validator.ValidatorUtils;
-import com.epmet.dto.DemoTestFormDTO;
import com.epmet.service.GroupService;
-import com.epmet.service.IssueService;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
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;
diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/IssueController.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/IssueController.java
new file mode 100644
index 0000000000..d96242d027
--- /dev/null
+++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/IssueController.java
@@ -0,0 +1,41 @@
+package com.epmet.controller;
+
+import com.epmet.commons.tools.annotation.LoginUser;
+import com.epmet.commons.tools.security.dto.TokenDto;
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.commons.tools.validator.ValidatorUtils;
+import com.epmet.dto.form.LatestIssueListFormDTO;
+import com.epmet.dto.result.LatestIssueListResultDTO;
+import com.epmet.service.IssueService;
+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;
+
+/**
+ * @dscription 党建园地-议题Controller
+ * @author sun
+ */
+@RestController
+@RequestMapping("issue")
+public class IssueController {
+
+ @Autowired
+ private IssueService issueService;
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 党建园地-最新议题
+ **/
+ @PostMapping("latestlist")
+ public Result> latestList(@LoginUser TokenDto tokenDTO, @RequestBody LatestIssueListFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO);
+ return new Result>().ok(issueService.latestList(formDTO));
+ }
+
+}
diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/ProjectController.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/ProjectController.java
new file mode 100644
index 0000000000..9ee5f79b26
--- /dev/null
+++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/controller/ProjectController.java
@@ -0,0 +1,42 @@
+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.security.dto.TokenDto;
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.commons.tools.validator.ValidatorUtils;
+import com.epmet.dto.form.LatestListFormDTO;
+import com.epmet.dto.result.LatestListResultDTO;
+import com.epmet.service.ProjectService;
+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;
+
+/**
+ * @dscription 党建园地-项目Controller
+ * @author sun
+ */
+@RestController
+@RequestMapping("project")
+public class ProjectController {
+
+ @Autowired
+ private ProjectService projectService;
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 党建园地-结案项目
+ **/
+ @PostMapping("latestlist")
+ public Result> latestList(@LoginUser TokenDto tokenDTO, @RequestBody LatestListFormDTO formDTO) {
+ ValidatorUtils.validateEntity(formDTO);
+ return new Result>().ok(projectService.latestList(formDTO));
+ }
+}
diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/IssueService.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/IssueService.java
new file mode 100644
index 0000000000..789766b38f
--- /dev/null
+++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/IssueService.java
@@ -0,0 +1,22 @@
+package com.epmet.service;
+
+import com.epmet.dto.form.LatestIssueListFormDTO;
+import com.epmet.dto.result.LatestIssueListResultDTO;
+
+import java.util.List;
+
+/**
+ * @dscription 党建园地-议题Service
+ * @author sun
+ */
+public interface IssueService {
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 党建园地-最新议题
+ **/
+ List latestList(LatestIssueListFormDTO formDTO);
+
+}
diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/ProjectService.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/ProjectService.java
new file mode 100644
index 0000000000..d380961613
--- /dev/null
+++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/ProjectService.java
@@ -0,0 +1,21 @@
+package com.epmet.service;
+
+import com.epmet.dto.form.LatestListFormDTO;
+import com.epmet.dto.result.LatestListResultDTO;
+
+import java.util.List;
+
+/**
+ * @dscription 党建园地-项目Service
+ * @author sun
+ */
+public interface ProjectService {
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 党建园地-结案项目
+ **/
+ List latestList(LatestListFormDTO formDTO);
+}
diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java
new file mode 100644
index 0000000000..a4953bd53e
--- /dev/null
+++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java
@@ -0,0 +1,35 @@
+package com.epmet.service.impl;
+
+import com.epmet.dto.form.LatestIssueListFormDTO;
+import com.epmet.dto.result.LatestIssueListResultDTO;
+import com.epmet.feign.GovIssueFeignClient;
+import com.epmet.service.IssueService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @dscription 党建园地-议题ServiceImpl
+ * @author sun
+ */
+@Service
+public class IssueServiceImpl implements IssueService {
+
+ @Autowired
+ private GovIssueFeignClient govIssueFeignClient;
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 党建园地-最新议题
+ **/
+ @Override
+ public List latestList(LatestIssueListFormDTO formDTO) {
+ //1:调用gov-issue服务,查询客户网格下最新议题列表
+
+ return null;
+ }
+
+}
diff --git a/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
new file mode 100644
index 0000000000..7e90739b37
--- /dev/null
+++ b/epmet-module/resi-home/resi-home-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
@@ -0,0 +1,57 @@
+package com.epmet.service.impl;
+
+import com.epmet.commons.tools.exception.RenException;
+import com.epmet.commons.tools.utils.Result;
+import com.epmet.constant.ProjectConstant;
+import com.epmet.dto.form.ClosedProjectIssueListFormDTO;
+import com.epmet.dto.form.LatestListFormDTO;
+import com.epmet.dto.result.LatestListResultDTO;
+import com.epmet.feign.GovIssueFeignClient;
+import com.epmet.feign.GovProjectFeignClient;
+import com.epmet.service.ProjectService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @dscription 党建园地-项目ServiceImpl
+ * @author sun
+ */
+@Service
+public class ProjectServiceImpl implements ProjectService {
+
+ @Autowired
+ private GovProjectFeignClient govProjectFeignClient;
+ @Autowired
+ private GovIssueFeignClient govIssueFeignClient;
+
+ /**
+ * @param formDTO
+ * @return
+ * @Author sun
+ * @Description 党建园地-结案项目
+ **/
+ @Override
+ public List latestList(LatestListFormDTO formDTO) {
+ //1:调用gov-project服务,查询客户已结案项目列表
+ Result> listResult = govProjectFeignClient.getClosedProjectList(formDTO);
+ if (!listResult.success()){
+ throw new RenException(ProjectConstant.SELECT_PROJECT_EXCEPTION);
+ }
+ if (null == listResult.getData()){
+ return new ArrayList<>();
+ }
+ //2:调用gov-issue服务,获取客户网格下已转项目且项目已结案的议题列表
+ ClosedProjectIssueListFormDTO closedProjectIssueListFormDTO = new ClosedProjectIssueListFormDTO();
+ closedProjectIssueListFormDTO.setLatestListForm(formDTO);
+ closedProjectIssueListFormDTO.setLatestListResult(listResult.getData());
+ Result> resultList = govIssueFeignClient.getClosedProjectIssueList(closedProjectIssueListFormDTO);
+ if (!resultList.success() || null == resultList.getData()) {
+ throw new RenException(ProjectConstant.SELECT_ISSUE_EXCEPTION);
+ }
+ return resultList.getData();
+ }
+
+}
diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java
index 375c4abd26..547d18ca46 100644
--- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java
+++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/CustomerStaffController.java
@@ -280,4 +280,15 @@ public class CustomerStaffController {
public Result getCustomerStaffList(@RequestBody List staffIdList){
return new Result().ok(customerStaffService.getCustomerStaffList(staffIdList));
}
+
+ /**
+ * @param staffIdList
+ * @return
+ * @Author sun
+ * @Description 批量查询工作人员基础信息
+ **/
+ @PostMapping(value = "getstafflistbyids")
+ public Result> getStaffListByIds(@RequestBody List staffIdList){
+ return new Result>().ok(customerStaffService.getStaffListByIds(staffIdList));
+ }
}
\ No newline at end of file
diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java
index cddd2a8c9a..ec3a7ea554 100644
--- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java
+++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/CustomerStaffService.java
@@ -231,4 +231,12 @@ public interface CustomerStaffService extends BaseService {
* @Description 根据staffId集合查询工作人员基础信息
**/
CustomerStaffListResultDTO getCustomerStaffList(List staffIdList);
+
+ /**
+ * @param staffIdList
+ * @return
+ * @Author sun
+ * @Description 批量查询工作人员基础信息
+ **/
+ List getStaffListByIds(List staffIdList);
}
\ No newline at end of file
diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java
index 518697e1f6..c46254d83f 100644
--- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java
+++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/CustomerStaffServiceImpl.java
@@ -440,4 +440,15 @@ public class CustomerStaffServiceImpl extends BaseServiceImpl getStaffListByIds(List staffIdList) {
+ return baseDao.selectStaffByIds(staffIdList);
+ }
+
}
\ No newline at end of file
diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml
index 8f762dbe01..ea61d2b9a0 100644
--- a/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml
+++ b/epmet-user/epmet-user-server/src/main/resources/mapper/CustomerStaffDao.xml
@@ -189,8 +189,7 @@
customer_staff
WHERE
del_flag = '0'
- AND
-
+
user_id = #{userId}