diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ProcessProgressConstant.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ProcessProgressConstant.java
new file mode 100644
index 00000000..dce3d923
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ProcessProgressConstant.java
@@ -0,0 +1,42 @@
+package com.elink.esua.epdc.constant;
+
+/**
+ * 处理进展常量
+ *
+ * @author work@yujt.net.cn
+ * @date 2022/01/21 10:30
+ */
+public interface ProcessProgressConstant {
+
+ /**
+ * 事件
+ */
+ String EVENT = "event";
+
+ /**
+ * 事件转议题
+ */
+ String EVENT_ISSUE = "event-issue";
+
+ /**
+ * 议题
+ */
+ String ISSUE = "issue";
+
+ /**
+ * 议题转项目
+ */
+ String ISSUE_PROJECT = "issue-project";
+
+ /**
+ * 项目
+ */
+ String PROJECT = "project";
+
+ /**
+ * 项目满意度评价
+ */
+ String PROJECT_EVALUATION = "project-evaluation";
+
+
+}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/ImagesDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/ImagesDTO.java
new file mode 100644
index 00000000..fa7774aa
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/ImagesDTO.java
@@ -0,0 +1,13 @@
+package com.elink.esua.epdc.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+public class ImagesDTO implements Serializable {
+
+ private String name;
+
+ private String url;
+}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/BatchHandleImagesDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/BatchHandleImagesDTO.java
new file mode 100644
index 00000000..cca00e02
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/BatchHandleImagesDTO.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright 2018 人人开源 https://www.renren.io
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+package com.elink.esua.epdc.dto.events;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+
+/**
+ * 图片批处理
+ **/
+@Data
+public class BatchHandleImagesDTO implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 引用 ID
+ */
+ private String referenceId;
+
+ /**
+ * 图片类型
+ */
+ private String imgType;
+
+ /**
+ * 图片URL
+ */
+ private List images;
+}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/EventRelationshipIdDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/EventRelationshipIdDTO.java
new file mode 100644
index 00000000..a1d76a66
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/EventRelationshipIdDTO.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright 2018 人人开源 https://www.renren.io
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+package com.elink.esua.epdc.dto.events;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+
+@Data
+public class EventRelationshipIdDTO implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 事件 ID
+ */
+ private String eventId;
+
+ /**
+ * 议题 ID
+ */
+ private String issueId;
+
+ /**
+ * 项目 ID
+ */
+ private String itemId;
+}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/EditProgressResultDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/EditProgressResultDTO.java
new file mode 100644
index 00000000..ee003658
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/issue/result/EditProgressResultDTO.java
@@ -0,0 +1,86 @@
+package com.elink.esua.epdc.dto.issue.result;
+
+import com.elink.esua.epdc.dto.ImagesDTO;
+import com.elink.esua.epdc.dto.item.ItemDeptDTO;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ *
+ * 编辑 议题、项目处理进度(后台用)
+ *
+ * @Author:liuchuang
+ * @Date:2019/11/21 15:08
+ */
+@Data
+public class EditProgressResultDTO implements Serializable {
+ private static final long serialVersionUID = 2739821096656995025L;
+
+ /**
+ * 处理进展类型: 事件、议题、项目 : ProcessProgressConstant
+ */
+ private String handleType;
+
+ /**
+ * 处理进度ID
+ */
+ private String id;
+
+ /**
+ * 状态
+ */
+ private Integer state;
+
+ /**
+ * 操作人部门
+ */
+ private String handlerDept;
+
+ /**
+ * 时间
+ */
+ private Date createdTime;
+
+ /**
+ * 项目处理意见(内部意见)(项目有)
+ */
+ private String advice;
+
+ /**
+ * 回复居民意见(外部意见)
+ */
+ private String outAdvice;
+
+ /**
+ * 吹哨部门
+ */
+ private List itemDeptDTOS;
+
+ /**
+ * 处理图片(内部处理图片)
+ */
+ private List images;
+
+ /**
+ * 回复居民图片(外部处理图片)
+ */
+ private List outImages;
+
+ /**
+ * 事件ID
+ */
+ private String eventId;
+
+ /**
+ * 事件内容
+ */
+ private String eventContent;
+
+ /**
+ * 项目 满意度评价得分
+ */
+ private Integer evaluationScore;
+}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/ItemPendingHandleDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/ItemPendingHandleDTO.java
index 80922b16..a44664e9 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/ItemPendingHandleDTO.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/ItemPendingHandleDTO.java
@@ -65,4 +65,13 @@ public class ItemPendingHandleDTO implements Serializable {
*/
private String topFlag;
+ /**
+ * 列表所属网格
+ */
+ private String grid;
+
+ /**
+ * 项目状态(处理中、已关闭、已结案)
+ */
+ private String itemState;
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/EpdcEventsDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/EpdcEventsDao.java
index af35c15c..639d04cd 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/EpdcEventsDao.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/EpdcEventsDao.java
@@ -205,4 +205,13 @@ public interface EpdcEventsDao extends BaseDao {
*/
void rejectEventsImgInfo(@Param("relationId") String relationId);
+ /**
+ * 查询事件关联的 议题id、项目id
+ *
+ * @param eventId
+ * @return com.elink.esua.epdc.dto.events.EventRelationshipIdDTO
+ * @Author zhangyong
+ * @Date 16:54 2022-01-11
+ **/
+ EventRelationshipIdDTO getEventRelationshipId(@Param("eventId") String eventId);
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/ImgDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/ImgDao.java
index 7af17568..66928f05 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/ImgDao.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/dao/ImgDao.java
@@ -20,6 +20,7 @@ package com.elink.esua.epdc.modules.events.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.modules.events.entity.ImgEntity;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
/**
* 党建系统图片表 党建系统图片表
@@ -30,4 +31,14 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ImgDao extends BaseDao {
+ /**
+ * 图片删除
+ *
+ * @param referenceId
+ * @param imgType
+ * @return void
+ * @Author zhangyong
+ * @Date 15:25 2022-01-12
+ **/
+ void modifyImagesByReferenceIdAndImgType(@Param("referenceId") String referenceId, @Param("imgType") String imgType);
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java
index b558afc4..2d2bf042 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java
@@ -264,4 +264,14 @@ public interface EpdcEventsService extends BaseService {
* @since 2020/9/2 15:06
*/
List listOfEventTags();
+
+ /**
+ * 查询事件关联的 议题id、项目id
+ *
+ * @param eventId
+ * @return com.elink.esua.epdc.dto.events.EventRelationshipIdDTO
+ * @Author zhangyong
+ * @Date 16:54 2022-01-11
+ **/
+ EventRelationshipIdDTO getEventRelationshipId(String eventId);
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/ImgService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/ImgService.java
index c432b4ad..7db467b3 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/ImgService.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/ImgService.java
@@ -18,6 +18,7 @@
package com.elink.esua.epdc.modules.events.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
+import com.elink.esua.epdc.dto.events.BatchHandleImagesDTO;
import com.elink.esua.epdc.modules.events.entity.ImgEntity;
import java.util.List;
@@ -48,4 +49,25 @@ public interface ImgService extends BaseService {
* @Date: 2019/9/8 17:12
*/
boolean saveImages(List images, String referenceId, String imgType);
+
+ /**
+ * 图片删除
+ *
+ * @param referenceId
+ * @param imgType
+ * @return void
+ * @Author zhangyong
+ * @Date 15:25 2022-01-12
+ **/
+ void modifyImagesByReferenceIdAndImgType(String referenceId, String imgType);
+
+ /**
+ * 图片批量删除
+ *
+ * @param images
+ * @return void
+ * @Author zhangyong
+ * @Date 15:25 2022-01-12
+ **/
+ void modifyBatchImagesByReferenceIdAndImgType(List images);
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java
index 171fb302..424f1e01 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java
@@ -808,4 +808,8 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl implement
return insertBatch(imgEntities);
}
+ @Override
+ public void modifyImagesByReferenceIdAndImgType(String referenceId, String imgType) {
+ baseDao.modifyImagesByReferenceIdAndImgType(referenceId, imgType);
+ }
+
+ @Override
+ public void modifyBatchImagesByReferenceIdAndImgType(List images) {
+ for (BatchHandleImagesDTO image : images) {
+ baseDao.modifyImagesByReferenceIdAndImgType(image.getReferenceId(), image.getImgType());
+ }
+ }
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java
index 5fe7c87b..5dac83a9 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java
@@ -204,4 +204,14 @@ public interface IssueDao extends BaseDao {
* @since 2020/3/7 12:54
*/
void updateBatchPartyGroupName(@Param("groups") List groups);
+
+ /**
+ * 业务端-议题处理进度,返回需要编辑的字段
+ *
+ * @param issueId
+ * @return java.util.List
+ * @Author zhangyong
+ * @Date 13:49 2022-01-10
+ **/
+ List selectListEditIssueProgress(@Param("issueId") String issueId);
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java
index 63ff5996..586b60bb 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java
@@ -294,4 +294,16 @@ public interface IssueService extends BaseService {
* @since 2020/9/16 10:31
*/
int selectIssueCountByEventId(String eventId);
+
+ /**
+ * 业务端-议题处理进度,返回需要编辑的字段
+ *
+ * @param issueId
+ * @return java.util.List
+ * @Author zhangyong
+ * @Date 13:49 2022-01-10
+ **/
+ List listEditIssueProgress(String issueId);
+
+
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java
index eedd2537..c65f23a9 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java
@@ -739,4 +739,9 @@ public class IssueServiceImpl extends BaseServiceImpl imp
}
}
}
+
+ @Override
+ public List listEditIssueProgress(String issueId) {
+ return baseDao.selectListEditIssueProgress(issueId);
+ }
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java
index 373e1d3b..db395b86 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java
@@ -28,6 +28,7 @@ import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.form.EventDeleteCommentsFormDTO;
+import com.elink.esua.epdc.dto.issue.result.EditProgressResultDTO;
import com.elink.esua.epdc.dto.item.ItemDTO;
import com.elink.esua.epdc.dto.item.ItemPendingHandleDTO;
import com.elink.esua.epdc.dto.item.ItemTopFormDTO;
@@ -236,4 +237,30 @@ public class ItemController {
return itemService.modifyItemTopFlag(formDto);
}
+ /**
+ * 获取处理进展列表信息
+ *
+ * @param id
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @Author zhangyong
+ * @Date 13:39 2022-01-10
+ **/
+ @GetMapping("getProcessProgress/{id}")
+ public Result> getProcessProgress(@PathVariable("id") String id){
+ List data = itemService.getProcessProgress(id);
+ return new Result>().ok(data);
+ }
+
+ /**
+ * 编辑 处理进展列表
+ *
+ * @param formDto
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @Author zhangyong
+ * @Date 09:25 2022-01-11
+ **/
+ @PostMapping("editProcessProgressList")
+ public Result editProcessProgressList(@RequestBody List formDto) {
+ return itemService.editProcessProgressList(formDto);
+ }
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java
index 3c7df5a8..544b8751 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java
@@ -19,6 +19,7 @@ package com.elink.esua.epdc.modules.item.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
+import com.elink.esua.epdc.dto.issue.result.EditProgressResultDTO;
import com.elink.esua.epdc.dto.item.ItemDTO;
import com.elink.esua.epdc.dto.item.ItemPendingHandleDTO;
import com.elink.esua.epdc.dto.item.ItemTopFormDTO;
@@ -208,14 +209,14 @@ public interface ItemDao extends BaseDao {
*/
void deleteBatchItemHandleIds(@Param("ids") List ids);
- /**
- * @Description: 根据项目id,查询当前登录人所在部门,以外的该项目关联的所有部门id
+ /**
+ * @Description: 根据项目id,查询当前登录人所在部门,以外的该项目关联的所有部门id
* @Param: [itemId] 项目id
* @Param: [deptId] 部门id
- * @return: java.util.List
- * @Author: zy
- * @Date: 2020-01-09
- */
+ * @return: java.util.List
+ * @Author: zy
+ * @Date: 2020-01-09
+ */
List queryDeptIdList(String itemId, Long deptId);
/**
@@ -289,4 +290,14 @@ public interface ItemDao extends BaseDao {
* @since 2020/9/22 9:52
*/
void updateItemTopFlagById(@Param("formDto") ItemTopFormDTO formDto);
+
+ /**
+ * 业务端-项目处理进度,返回需要编辑的字段
+ *
+ * @param itemId
+ * @return java.util.List
+ * @Author zhangyong
+ * @Date 13:49 2022-01-10
+ **/
+ List selectListOfEditItemHandleProgressByWork(@Param("itemId") String itemId);
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java
index cca95279..f0cf2a37 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java
@@ -22,6 +22,7 @@ import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
+import com.elink.esua.epdc.dto.issue.result.EditProgressResultDTO;
import com.elink.esua.epdc.dto.item.ItemDTO;
import com.elink.esua.epdc.dto.item.ItemPendingHandleDTO;
import com.elink.esua.epdc.dto.item.ItemTopFormDTO;
@@ -418,4 +419,24 @@ public interface ItemService extends BaseService {
* @since 2020/9/22 9:45
*/
Result modifyItemTopFlag(ItemTopFormDTO formDto);
+
+ /**
+ * 获取处理进展列表信息
+ *
+ * @param id
+ * @return com.elink.esua.epdc.commons.tools.utils.Result>
+ * @Author zhangyong
+ * @Date 13:39 2022-01-10
+ **/
+ List getProcessProgress(String id);
+
+ /**
+ * 编辑 处理进展列表
+ *
+ * @param formDto
+ * @return com.elink.esua.epdc.commons.tools.utils.Result
+ * @Author zhangyong
+ * @Date 09:25 2022-01-11
+ **/
+ Result editProcessProgressList(List formDto);
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java
index 6595a51b..a4154528 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java
@@ -24,6 +24,7 @@ import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.constant.OrganizationTypeConstant;
+import com.elink.esua.epdc.commons.tools.convert.DateConverter;
import com.elink.esua.epdc.commons.tools.enums.InterfaceLogBusinessTypeEnum;
import com.elink.esua.epdc.commons.tools.enums.YesOrNoEnum;
import com.elink.esua.epdc.commons.tools.exception.RenException;
@@ -44,15 +45,20 @@ import com.elink.esua.epdc.constant.*;
import com.elink.esua.epdc.constants.MenuCodeConstant;
import com.elink.esua.epdc.dto.*;
import com.elink.esua.epdc.dto.epdc.form.EpdcInformationFormDTO;
+import com.elink.esua.epdc.dto.events.BatchHandleImagesDTO;
import com.elink.esua.epdc.dto.events.EpdcEventsCommentsDTO;
+import com.elink.esua.epdc.dto.events.EventRelationshipIdDTO;
import com.elink.esua.epdc.dto.events.form.GroupFormDTO;
+import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.form.SmsNoticeFormDTO;
+import com.elink.esua.epdc.dto.issue.result.EditProgressResultDTO;
import com.elink.esua.epdc.dto.issue.result.IssueProgressResultDTO;
import com.elink.esua.epdc.dto.item.*;
import com.elink.esua.epdc.dto.item.form.*;
import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.enums.ItemGridPlatformHandleStatusEnum;
import com.elink.esua.epdc.enums.ItemHandleCategoryEnum;
+import com.elink.esua.epdc.constant.ProcessProgressConstant;
import com.elink.esua.epdc.gird.shibei.api.ShiBeiCityGridApi;
import com.elink.esua.epdc.gird.shibei.constant.CommonConstants;
import com.elink.esua.epdc.gird.shibei.contants.ApiConstants;
@@ -66,6 +72,7 @@ import com.elink.esua.epdc.gird.shibei.util.XstreamUtil;
import com.elink.esua.epdc.modules.async.IssueOverseeResultsTask;
import com.elink.esua.epdc.modules.async.NewsTask;
import com.elink.esua.epdc.modules.events.dao.ImgDao;
+import com.elink.esua.epdc.modules.events.entity.EpdcEventsEntity;
import com.elink.esua.epdc.modules.events.entity.ImgEntity;
import com.elink.esua.epdc.modules.events.service.EpdcEventsService;
import com.elink.esua.epdc.modules.events.service.ImgService;
@@ -74,6 +81,9 @@ import com.elink.esua.epdc.modules.feign.ContentSecurityFeignClient;
import com.elink.esua.epdc.modules.feign.UserFeignClient;
import com.elink.esua.epdc.modules.interfacelog.entity.InterfaceLogEntity;
import com.elink.esua.epdc.modules.interfacelog.service.InterfaceLogService;
+import com.elink.esua.epdc.modules.issue.entity.IssueEntity;
+import com.elink.esua.epdc.modules.issue.entity.IssueHandleEntity;
+import com.elink.esua.epdc.modules.issue.service.IssueHandleService;
import com.elink.esua.epdc.modules.issue.service.IssueService;
import com.elink.esua.epdc.modules.item.dao.GridPlatformHandleLogDao;
import com.elink.esua.epdc.modules.item.dao.ItemDao;
@@ -168,6 +178,9 @@ public class ItemServiceImpl extends BaseServiceImpl implem
@Autowired
private ContentSecurityFeignClient contentSecurityFeign;
+ @Autowired
+ private IssueHandleService issueHandleService;
+
@Override
public PageData page(Map params) {
IPage page = baseDao.selectPage(
@@ -1592,4 +1605,208 @@ public class ItemServiceImpl extends BaseServiceImpl implem
return new Result();
}
+
+ @Override
+ public List getProcessProgress(String id) {
+ // 获取项目基本信息
+ ItemEntity entity = this.selectById(id);
+
+ // 获取项目处理进度
+ List result = baseDao.selectListOfEditItemHandleProgressByWork(id);
+ // 项目处理表中第一条数据(创建时间,升序),为 议题转项目
+ this.firstDataHandleType(result, ProcessProgressConstant.ISSUE_PROJECT);
+
+ // 获取项目评价满意度
+ if (null != entity.getEvaluationTime()) {
+ EditProgressResultDTO itemEvaluation = this.packageItemEvaluation(entity);
+ // PC 前端,el-rate 组件,是从1开始计数。所以这里 +1 方便显示。
+ itemEvaluation.setEvaluationScore(itemEvaluation.getEvaluationScore() + NumConstant.ONE);
+ result.add(itemEvaluation);
+ result.sort(Comparator.comparing(EditProgressResultDTO::getCreatedTime).reversed());
+ }
+
+ // 获取议题处理进度
+ List issueList = issueService.listEditIssueProgress(entity.getIssueId());
+ // 议题处理表中第一条数据(创建时间,升序),为 事件审核通过,即转议题
+ this.firstDataHandleType(issueList, ProcessProgressConstant.EVENT_ISSUE);
+ result.addAll(issueList);
+
+ // 事件信息
+ EditProgressResultDTO eventInfo = this.packageEventInfo(entity.getEventId());
+ result.add(eventInfo);
+
+ return result;
+ }
+
+ private EditProgressResultDTO packageItemEvaluation(ItemEntity entity) {
+ EditProgressResultDTO result = new EditProgressResultDTO();
+ result.setHandleType(ProcessProgressConstant.PROJECT_EVALUATION);
+ result.setCreatedTime(entity.getEvaluationTime());
+ result.setAdvice(entity.getEvaluationContent());
+ result.setEvaluationScore(entity.getEvaluationScore());
+ result.setState(entity.getItemState());
+ return result;
+ }
+
+ private void firstDataHandleType(List list, String typeName) {
+ for (int i = NumConstant.ZERO; i < list.size(); i++) {
+ if (i == list.size() - NumConstant.ONE ) {
+ list.get(i).setHandleType(typeName);
+ }
+ }
+ }
+
+ /**
+ * 组装事件信息
+ *
+ * @param eventId
+ * @return com.elink.esua.epdc.dto.issue.result.EditProgressResultDTO
+ * @Author zhangyong
+ * @Date 17:09 2022-01-10
+ **/
+ private EditProgressResultDTO packageEventInfo(String eventId) {
+ EditProgressResultDTO result = new EditProgressResultDTO();
+ Result event = issueService.getEventDetail(eventId);
+ DateConverter converter = new DateConverter();
+ result.setCreatedTime(converter.parseDate(event.getData().getDistributeTime(), DateUtils.DATE_TIME_PATTERN));
+ result.setAdvice(event.getData().getAdvice());
+ result.setEventContent(event.getData().getContent());
+ result.setHandleType(ProcessProgressConstant.EVENT);
+ result.setEventId(eventId);
+ return result;
+ }
+
+ /**
+ * 组装要新增的图片信息
+ *
+ * @param referenceId, imgType, images
+ * @return com.elink.esua.epdc.dto.events.BatchHandleImagesDTO
+ * @Author zhangyong
+ * @Date 15:41 2022-01-12
+ **/
+ private BatchHandleImagesDTO packageImagesInfo(String referenceId, String imgType, List images) {
+ BatchHandleImagesDTO result = new BatchHandleImagesDTO();
+ result.setReferenceId(referenceId);
+ result.setImgType(imgType);
+ List urls = new ArrayList<>();
+ for (ImagesDTO image : images) {
+ urls.add(image.getUrl());
+ }
+ result.setImages(urls);
+ return result;
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Result editProcessProgressList(List formDto) {
+ if (null == formDto || NumConstant.ZERO == formDto.size()) {
+ return new Result();
+ }
+ EditProgressResultDTO projectEvaluation = null;
+ List itemHandleProcessEntities = new ArrayList<>();
+ List issueHandleEntities = new ArrayList<>();
+ EpdcEventsEntity eventEntity = new EpdcEventsEntity();
+ // 图片批量处理
+ List batchHandleImages = new ArrayList<>();
+ List itemDeptEntities = new ArrayList<>();
+ Date issueToProjectTime = null;
+ Date eventToIssueTime = null;
+ Date distributeTime = null;
+ String eventId = "";
+
+ for (EditProgressResultDTO dto : formDto) {
+ // 0、如果是 项目满意度评价,需要修改 epdc_item 表中评价相关字段
+ if (ProcessProgressConstant.PROJECT_EVALUATION.equals(dto.getHandleType())) {
+ projectEvaluation = dto;
+ } else if (ProcessProgressConstant.PROJECT.equals(dto.getHandleType()) || ProcessProgressConstant.ISSUE_PROJECT.equals(dto.getHandleType())) {
+ // 1、组装 项目处理进展表 信息
+ ItemHandleProcessEntity entity = new ItemHandleProcessEntity();
+ entity.setCreatedTime(dto.getCreatedTime());
+ entity.setHandleAdvice(dto.getAdvice());
+ entity.setOutHandleAdvice(dto.getOutAdvice());
+ entity.setId(dto.getId());
+ itemHandleProcessEntities.add(entity);
+ if (ProcessProgressConstant.ISSUE_PROJECT.equals(dto.getHandleType())) {
+ issueToProjectTime = dto.getCreatedTime();
+ }
+ // 组装 项目图片 信息
+ batchHandleImages.add(this.packageImagesInfo(dto.getId(), ImageConstant.TYPE_IMAGE_ITEM_HANDLE, dto.getImages()));
+ batchHandleImages.add(this.packageImagesInfo(dto.getId(), ImageConstant.TYPE_IMAGE_ITEM_OUT_HANDLE, dto.getOutImages()));
+ // 如果是吹哨,还要处理 项目部门关系表
+ if (NumConstant.ZERO == dto.getState() && null != dto.getItemDeptDTOS() && dto.getItemDeptDTOS().size() > NumConstant.ZERO) {
+ ItemDeptEntity itemDeptEntity = new ItemDeptEntity();
+ itemDeptEntity.setId(dto.getItemDeptDTOS().get(NumConstant.ZERO).getId());
+ itemDeptEntity.setCreatedTime(dto.getCreatedTime());
+ itemDeptEntities.add((itemDeptEntity));
+ }
+ } else if (ProcessProgressConstant.ISSUE.equals(dto.getHandleType()) || ProcessProgressConstant.EVENT_ISSUE.equals(dto.getHandleType())) {
+ // 2、组装 议题处理进展 信息
+ IssueHandleEntity entity = new IssueHandleEntity();
+ entity.setCreatedTime(dto.getCreatedTime());
+ entity.setAdvice(dto.getAdvice());
+ entity.setId(dto.getId());
+ issueHandleEntities.add(entity);
+ if (ProcessProgressConstant.EVENT_ISSUE.equals(dto.getHandleType())) {
+ eventToIssueTime = dto.getCreatedTime();
+ }
+ // 组装 议题图片 信息
+ batchHandleImages.add(this.packageImagesInfo(dto.getId(), ImageConstant.TYPE_IMAGE_BIZ_ISSUE_HANDLE, dto.getImages()));
+ } else if (ProcessProgressConstant.EVENT.equals(dto.getHandleType())) {
+ // 3、组装 事件表 信息
+ eventEntity.setCreatedTime(dto.getCreatedTime());
+ eventEntity.setAdvice(dto.getAdvice());
+ eventEntity.setId(dto.getEventId());
+
+ distributeTime = dto.getCreatedTime();
+ eventId = dto.getEventId();
+ }
+ }
+
+ EventRelationshipIdDTO relationshipId = epdcEventsService.getEventRelationshipId(eventId);
+ if (null == issueToProjectTime || null == eventToIssueTime || null == distributeTime) {
+ return new Result().error("编辑失败,请联系管理员!");
+ }
+
+ // 4、处理图片
+ imgService.modifyBatchImagesByReferenceIdAndImgType(batchHandleImages);
+ for (BatchHandleImagesDTO insertImage : batchHandleImages) {
+ imgService.saveImages(insertImage.getImages(), insertImage.getReferenceId(), insertImage.getImgType());
+ }
+
+ // 5、处理项目相关表
+ itemHandleProcessService.updateBatchById(itemHandleProcessEntities);
+ if (NumConstant.ZERO < itemDeptEntities.size()) {
+ itemDeptService.updateBatchById(itemDeptEntities);
+ }
+ ItemEntity itemEntity = new ItemEntity();
+ itemEntity.setCreatedTime(issueToProjectTime);
+ itemEntity.setLastHandleTime(formDto.get(NumConstant.ZERO).getCreatedTime());
+ itemEntity.setDistributeTime(distributeTime);
+ itemEntity.setId(relationshipId.getItemId());
+ if (null != projectEvaluation) {
+ if (NumConstant.TEN == formDto.get(NumConstant.ZERO).getState()) {
+ // 如果最后一条记录项目状态为 已结案 且 存在满意度评价,则说明最后一条记录为 满意度评价
+ // 此时最后一次处理时间为 取第二条记录
+ itemEntity.setLastHandleTime(formDto.get(NumConstant.ONE).getCreatedTime());
+ }
+
+ itemEntity.setEvaluationContent(projectEvaluation.getAdvice());
+ itemEntity.setEvaluationTime(projectEvaluation.getCreatedTime());
+ // 为了方便 PC 前端,el-rate 组件显示。所以返回 EvaluationScore 时,在原有基础上 +1 了,此时存入数据库需要 -1。
+ itemEntity.setEvaluationScore(projectEvaluation.getEvaluationScore() - NumConstant.ONE);
+ }
+ baseDao.updateById(itemEntity);
+
+ // 6、处理议题相关表
+ issueHandleService.updateBatchById(issueHandleEntities);
+ IssueEntity issueEntity = new IssueEntity();
+ issueEntity.setCreatedTime(eventToIssueTime);
+ issueEntity.setDistributeTime(distributeTime);
+ issueEntity.setId(relationshipId.getIssueId());
+ issueService.updateById(issueEntity);
+
+ // 7、处理事件表
+ epdcEventsService.updateById(eventEntity);
+ return new Result();
+ }
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/EpdcEventsDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/EpdcEventsDao.xml
index 1d845155..5503835d 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/EpdcEventsDao.xml
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/EpdcEventsDao.xml
@@ -389,4 +389,16 @@
where REFERENCE_ID=#{relationId}
+
+ SELECT
+ e.ID eventId,
+ i.ID issueId,
+ t.ID itemId
+ FROM epdc_events e
+ LEFT JOIN epdc_issue i ON e.id = i.EVENT_ID
+ LEFT JOIN epdc_item t ON e.id = t.EVENT_ID
+ WHERE e.DEL_FLAG ='0'
+ AND e.ID = #{eventId}
+ LIMIT 1;
+
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/ImgDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/ImgDao.xml
new file mode 100644
index 00000000..835ebcb8
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/events/ImgDao.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+ update epdc_img set DEL_FLAG = 1 where REFERENCE_ID = #{referenceId} and IMG_TYPE = #{imgType}
+
+
+
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml
index 125bff9f..3e08cb1b 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/issue/IssueDao.xml
@@ -659,4 +659,37 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SELECT
+ 'issue' handleType,
+ hd.ID,
+ hd.STATE,
+ hd.CREATED_TIME AS createdTime,
+ hd.ADVICE,
+ hd.HANDLER_DEPT,
+ img.IMG_URL,
+ img.ID as imageId
+ FROM
+ epdc_issue_handle hd
+ LEFT JOIN epdc_img img ON hd.ID = img.REFERENCE_ID
+ AND img.DEL_FLAG = '0'
+ AND img.IMG_TYPE = 'issueHandle'
+ WHERE
+ hd.DEL_FLAG = '0'
+ AND hd.ISSUE_ID = #{issueId}
+ ORDER BY hd.CREATED_TIME DESC
+
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml
index 16710afe..92e125cf 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml
@@ -443,6 +443,8 @@
item.ITEM_CODE,
item.CREATED_TIME,
item.NICK_NAME,
+ item.GRID,
+ item.ITEM_STATE,
CASE item.EVALUATION_SCORE
WHEN 0 THEN '不满意'
WHEN 1 THEN '基本满意'
@@ -465,6 +467,9 @@
AND item.ITEM_STATE = #{itemState}
+
+ AND item.ITEM_CONTENT = trim(#{itemContent})
+
AND item.ITEM_STATE in (0,10)
@@ -1052,4 +1057,51 @@
WHERE ID = #{formDto.itemId}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ SELECT
+ 'project' AS handleType,
+ hp.ID,
+ hp.CREATED_TIME AS createdTime,
+ hp.HANDLE_ADVICE AS advice,
+ hp.OUT_HANDLE_ADVICE AS outAdvice,
+ hp.HANDLER_DEPT,
+ hp.STATE,
+ itemDept.DEPT_NAME,
+ itemDept.ID AS ITEM_DEPT_ID,
+ img.IMG_URL,
+ img.ID as imageId,
+ outImg.IMG_URL AS OUT_IMG_URL,
+ outImg.ID as outImageId
+ FROM
+ epdc_item_handle_process hp
+ LEFT JOIN epdc_item_dept itemDept ON hp.ID = itemDept.ITEM_HANDLE_ID
+ LEFT JOIN epdc_img img ON hp.ID = img. REFERENCE_ID AND img.IMG_TYPE = 'itemHandle' AND img.DEL_FLAG = '0'
+ LEFT JOIN epdc_img outImg ON hp.ID = outImg.REFERENCE_ID AND outImg.IMG_TYPE = 'itemOutHandle' AND outImg.DEL_FLAG = '0'
+ WHERE hp.DEL_FLAG = '0'
+ AND hp.ITEM_ID = #{itemId}
+ ORDER BY createdTime DESC, itemDept.ID DESC
+
+
diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/result/EpdcPartyTopicCommentDTO.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/result/EpdcPartyTopicCommentDTO.java
new file mode 100644
index 00000000..6b83d671
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-client/src/main/java/com/elink/esua/epdc/dto/result/EpdcPartyTopicCommentDTO.java
@@ -0,0 +1,14 @@
+package com.elink.esua.epdc.dto.result;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+@Data
+public class EpdcPartyTopicCommentDTO implements Serializable {
+ private static final long serialVersionUID = -5791171173141680409L;
+
+ private String topicId;
+ private List commentList;
+}
diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/dao/PartyTopicDao.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/dao/PartyTopicDao.java
index b1ae0f12..8f3fb58e 100644
--- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/dao/PartyTopicDao.java
+++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/dao/PartyTopicDao.java
@@ -22,6 +22,7 @@ import com.elink.esua.epdc.dto.PartyTopicDTO;
import com.elink.esua.epdc.dto.form.MyPartyTopicFormDTO;
import com.elink.esua.epdc.dto.form.PartyGroupTopicTopFormDTO;
import com.elink.esua.epdc.dto.form.PartyTopicFormDTO;
+import com.elink.esua.epdc.dto.result.EpdcPartyTopicCommentDTO;
import com.elink.esua.epdc.dto.result.PartyTopicDetailResultDTO;
import com.elink.esua.epdc.dto.result.TopicList;
import com.elink.esua.epdc.entity.PartyTopicEntity;
@@ -32,7 +33,7 @@ import java.util.List;
import java.util.Map;
/**
- * 话题表
+ * 话题表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-05-29
@@ -65,6 +66,16 @@ public interface PartyTopicDao extends BaseDao {
* @return java.util.List
**/
List selectListOfPartyTopic(PartyTopicFormDTO formDto);
+
+ /**
+ * 话题评论
+ *
+ * @param topicIds
+ * @return java.util.List
+ * @author lc
+ * @since 2022/1/20 11:19
+ */
+ List selectTopicCommentsByTopicIds(@Param("topicIds") List topicIds);
/**
* @Description 更新评论数
* @Author songyunpeng
@@ -144,4 +155,4 @@ public interface PartyTopicDao extends BaseDao {
* @return void
**/
void updateGridByDeptId(String newDeptName, Long deptId);
-}
\ No newline at end of file
+}
diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/impl/PartyTopicServiceImpl.java b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/impl/PartyTopicServiceImpl.java
index e713aabe..256abeb0 100644
--- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/impl/PartyTopicServiceImpl.java
+++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/java/com/elink/esua/epdc/service/impl/PartyTopicServiceImpl.java
@@ -40,6 +40,7 @@ import com.elink.esua.epdc.dto.PartyTopicUserAttitudeDTO;
import com.elink.esua.epdc.dto.PartyUserGroupDTO;
import com.elink.esua.epdc.dto.constant.PartyGroupConstant;
import com.elink.esua.epdc.dto.form.*;
+import com.elink.esua.epdc.dto.result.EpdcPartyTopicCommentDTO;
import com.elink.esua.epdc.dto.result.PartyTopicDetailResultDTO;
import com.elink.esua.epdc.dto.result.PartyTopicResultDTO;
import com.elink.esua.epdc.dto.result.TopicList;
@@ -59,8 +60,10 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
import java.util.*;
+import java.util.stream.Collectors;
/**
* 话题表
@@ -176,6 +179,21 @@ public class PartyTopicServiceImpl extends BaseServiceImpl topicLists = baseDao.selectListOfPartyTopic(formDto);
+ if (!CollectionUtils.isEmpty(topicLists)) {
+ // 获取话题评论
+ List topicIds = topicLists.stream().map(TopicList::getId).collect(Collectors.toList());
+ List topicCommentList = baseDao.selectTopicCommentsByTopicIds(topicIds);
+ for (TopicList topic:
+ topicLists) {
+ for (EpdcPartyTopicCommentDTO comment:
+ topicCommentList) {
+ if (topic.getId().equals(comment.getTopicId())) {
+ topic.setComments(comment.getCommentList());
+ }
+ }
+ }
+ }
+
PartyTopicResultDTO partyTopicResultDTO = new PartyTopicResultDTO();
//获取当前用户在当前党群禁言状态
PartyUserGroupDTO userByGroupIdAndUserId = partyUserGroupService.getUserByGroupIdAndUserId(formDto.getPartyGroupId(), formDto.getUserId());
diff --git a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/resources/mapper/PartyTopicDao.xml b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/resources/mapper/PartyTopicDao.xml
index d648e246..117b8da5 100644
--- a/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/resources/mapper/PartyTopicDao.xml
+++ b/esua-epdc/epdc-module/epdc-party-group/epdc-party-group-server/src/main/resources/mapper/PartyTopicDao.xml
@@ -183,11 +183,6 @@
if( t1.ATTITUDE_FLAG='0',1,0)likeFlag,
t2.IMG_URL,
- t3.ID as commentId,
- t3.USERNAME as username,
- t3.USER_FACE as commentUserFace,
- t3.CONTENT as content,
- t3.PARTY_MEMBER as commentPartyMember,
t5.USER_ID as supportUserId,
t5.NICKNAME as supportNickname,
t5.USER_AVATAR as supportUserAvatar,
@@ -198,7 +193,6 @@
left join (select * from epdc_party_topic_user_attitude)t1 on t.ID = t1.PARTY_TOPIC_ID and t1.DEL_FLAG='0' and t1.USER_ID = #{userId}
left join epdc_party_topic_img t2 on t.ID = t2.REFERENCE_ID and t2.DEL_FLAG='0'
- left join (select ID,USERNAME,USER_FACE,PARTY_MEMBER,CONTENT,TOPIC_ID,DEL_FLAG,CREATED_TIME from epdc_party_topic_comment order by CREATED_TIME desc) t3 on t.ID = t3.TOPIC_ID and t3.DEL_FLAG='0'
left join epdc_party_topic_user_attitude t4 on t.ID = t4.PARTY_TOPIC_ID and t4.DEL_FLAG='0'
left join (select epug.USER_ID,epug.NICKNAME,epug.USER_AVATAR,epug.DEL_FLAG from epdc_party_user_group epug where epug.DEL_FLAG='0' and epug.STATE ='0' group by epug.USER_ID)t5 on t4.USER_ID = t5.USER_ID
left join epdc_party_user_group t6 on t6.USER_ID = t.USER_ID and t6.PARTY_GROUP_ID = t.PARTY_GROUP_ID and t6.DEL_FLAG = '0' and t6.STATE ='0'
@@ -227,8 +221,36 @@
t1.TOP_TIME DESC,
t1.CREATED_TIME DESC
LIMIT #{pageIndex},#{pageSize}) tmp)
- order by t.TOP_TIME DESC, t.CREATED_TIME desc,t3.CREATED_TIME,t4.CREATED_TIME
+ order by t.TOP_TIME DESC, t.CREATED_TIME desc,t4.CREATED_TIME
+
+
+
+
select t.ID,
@@ -366,4 +388,4 @@
WHERE ID = #{formDto.topicId}
-
\ No newline at end of file
+