diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/log/DeptRespondLogDTO.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/log/DeptRespondLogDTO.java
new file mode 100644
index 000000000..82a1edd0c
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/log/DeptRespondLogDTO.java
@@ -0,0 +1,96 @@
+/**
+ * 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.log;
+
+import java.io.Serializable;
+import java.util.Date;
+import lombok.Data;
+
+
+/**
+ * 部门响应记录
+ *
+ * @author qu qu@elink-cn.com
+ * @since v1.0.0 2019-10-22
+ */
+@Data
+public class DeptRespondLogDTO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * ID
+ */
+ private String id;
+
+ /**
+ * 引用ID
+ */
+ private String referenceId;
+
+ /**
+ * 引用类型 issue或item
+ */
+ private String referenceType;
+
+ /**
+ * 响应部门的id(被呼叫的部门即审核部门)
+ */
+ private Long respondDeptId;
+
+ /**
+ * 响应时间即审核时间
+ */
+ private Date respondTime;
+
+ /**
+ * 响应类型,参考枚举类DeptRespondTypeEnum
+ */
+ private Integer respondType;
+
+ /**
+ * 删除标识 0:未删除,1:删除
+ */
+ private String delFlag;
+
+ /**
+ * 乐观锁
+ */
+ private Integer revision;
+
+ /**
+ * 创建人
+ */
+ private String createdBy;
+
+ /**
+ * 创建时间
+ */
+ private Date createdTime;
+
+ /**
+ * 更新人
+ */
+ private String updatedBy;
+
+ /**
+ * 更新时间
+ */
+ private Date updatedTime;
+
+}
\ No newline at end of file
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/DeptRespondTypeEnum.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/DeptRespondTypeEnum.java
index 8d7203362..e6569d443 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/DeptRespondTypeEnum.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/DeptRespondTypeEnum.java
@@ -31,11 +31,20 @@ public enum DeptRespondTypeEnum {
//-------------------------------------
+ /**
+ * 事件-驳回
+ */
+ EVENT_REVIEW_REJECT(EventIssueItemState.EVENT_REVIEW_REJECT,"事件驳回"),
+ //-----------------------------------------------------------
/**
- * 议题:审核通过
+ * 议题:审核通过 成为议题
*/
ISSUE_HANDLED_PASS(EventIssueItemState.ISSUE_HANDLED_PASS, "审核通过"),
+ /**
+ * 议题:议题-已转项目
+ */
+ ISSUE_CHANGE_TO_ITEM(EventIssueItemState.ISSUE_CHANGE_TO_ITEM, "审核通过"),
/**
* 议题:反馈
*/
@@ -43,7 +52,7 @@ public enum DeptRespondTypeEnum {
/**
* 议题:关闭
*/
- ISSUE_HANDLED_CLOSED(EventIssueItemState.ISSUE_HANDLED_CLOSED, "关闭"),
+ ISSUE_CLOSED(EventIssueItemState.ISSUE_CLOSED, "关闭"),
//-------------------------------------
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/IssueOrItemEnum.java b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/ReferenceTypeEnum.java
similarity index 70%
rename from esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/IssueOrItemEnum.java
rename to esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/ReferenceTypeEnum.java
index 035894c13..6921bcdd3 100644
--- a/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/IssueOrItemEnum.java
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/ReferenceTypeEnum.java
@@ -6,7 +6,7 @@ package com.elink.esua.epdc.enums;
* @author work@yujt.net.cn
* @date 2019/10/21 10:30
*/
-public enum IssueOrItemEnum {
+public enum ReferenceTypeEnum {
/**
* 议题
@@ -16,12 +16,16 @@ public enum IssueOrItemEnum {
/**
* 项目
*/
- ITEM("item");
+ ITEM("item"),
+ /**
+ * 事件
+ */
+ EVENT("event");
private String name;
- IssueOrItemEnum(String name) {
+ ReferenceTypeEnum(String name) {
this.name = name;
}
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/async/DeptRespondTask.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/async/DeptRespondTask.java
new file mode 100644
index 000000000..2983f9e77
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/async/DeptRespondTask.java
@@ -0,0 +1,96 @@
+package com.elink.esua.epdc.modules.async;
+
+import com.elink.esua.epdc.commons.tools.security.user.SecurityUser;
+import com.elink.esua.epdc.commons.tools.security.user.UserDetail;
+import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
+import com.elink.esua.epdc.constant.EventIssueItemState;
+import com.elink.esua.epdc.constant.EventsNoticeConstant;
+import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
+import com.elink.esua.epdc.dto.issue.form.IssueWaitHandleSubmitFormDTO;
+import com.elink.esua.epdc.dto.log.DeptRespondLogDTO;
+import com.elink.esua.epdc.enums.DeptRespondTypeEnum;
+import com.elink.esua.epdc.enums.ReferenceTypeEnum;
+import com.elink.esua.epdc.modules.issue.service.IssueService;
+import com.elink.esua.epdc.modules.log.entity.DeptRespondLogEntity;
+import com.elink.esua.epdc.modules.log.service.DeptRespondLogService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+
+/**
+ * @author: qushutong
+ * @Date: 2019/10/22 14:22
+ * @Description: 响应log日志
+ */
+@Component
+public class DeptRespondTask {
+
+ @Autowired
+ private DeptRespondLogService deptRespondLogService;
+
+ /***
+ * 转议题插入部门响应记录
+ * 通过不通过
+ * @param dto
+ * @return void
+ * @author qushutong
+ * @date 2019/10/22 11:06
+ */
+ @Async
+ public void saveEventDeptRespond(EpdcEventsReviewFormDTO dto) {
+ //待审核 则不插入
+ if (EventIssueItemState.EVENT_PENDING_REVIEW == dto.getEventState()) {
+ return;
+ }
+ //组装插入数据
+ DeptRespondLogEntity entity = new DeptRespondLogEntity();
+ UserDetail user = SecurityUser.getUser();
+ entity.setReferenceId(dto.getId());
+ entity.setReferenceType(ReferenceTypeEnum.EVENT.getName());
+ entity.setRespondDeptId(user.getDeptId());
+ entity.setRespondTime(new Date());
+ //审核通过
+ if (EventIssueItemState.EVENT_REVIEW_PASS == dto.getEventState()) {
+ entity.setRespondType(DeptRespondTypeEnum.ISSUE_HANDLED_PASS.getValue());
+ }//驳回
+ else if (EventIssueItemState.EVENT_REVIEW_REJECT == dto.getEventState()) {
+ entity.setRespondType(DeptRespondTypeEnum.EVENT_REVIEW_REJECT.getValue());
+ }
+ DeptRespondLogDTO deptRespondLogDTO = ConvertUtils.sourceToTarget(entity, DeptRespondLogDTO.class);
+ deptRespondLogService.save(deptRespondLogDTO);
+ }
+
+ /***
+ * 议事处理审核/关闭
+ * @param dto
+ * @return void
+ * @author qushutong
+ * @date 2019/10/22 14:51
+ */
+ @Async
+ public void saveIssueDeptRespond(IssueWaitHandleSubmitFormDTO dto) {
+ //组装插入数据
+ DeptRespondLogEntity entity = new DeptRespondLogEntity();
+ UserDetail user = SecurityUser.getUser();
+ entity.setReferenceId(dto.getId());
+ entity.setReferenceType(ReferenceTypeEnum.ISSUE.getName());
+ entity.setRespondDeptId(user.getDeptId());
+ entity.setRespondTime(new Date());
+ //议题关闭 1-反馈,2-关闭,4-已转项目
+ if (EventIssueItemState.ISSUE_CLOSED == dto.getState()) {
+ entity.setRespondType(DeptRespondTypeEnum.ISSUE_CLOSED.getValue());
+ }
+ //议题审核
+ else if (EventIssueItemState.ISSUE_HANDLED_FEEDBACK == dto.getState()) {
+ entity.setRespondType(DeptRespondTypeEnum.ISSUE_HANDLED_FEEDBACK.getValue());
+ }
+ //已转项目
+ else if (EventIssueItemState.ISSUE_CHANGE_TO_ITEM == dto.getState()) {
+ entity.setRespondType(DeptRespondTypeEnum.ISSUE_CHANGE_TO_ITEM.getValue());
+ }
+ DeptRespondLogDTO deptRespondLogDTO = ConvertUtils.sourceToTarget(entity, DeptRespondLogDTO.class);
+ deptRespondLogService.save(deptRespondLogDTO);
+ }
+}
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 de8ef79de..7f9551174 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
@@ -35,6 +35,9 @@ import com.elink.esua.epdc.dto.events.*;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
+import com.elink.esua.epdc.dto.log.DeptRespondLogDTO;
+import com.elink.esua.epdc.enums.DeptRespondTypeEnum;
+import com.elink.esua.epdc.modules.async.DeptRespondTask;
import com.elink.esua.epdc.modules.async.NewsTask;
import com.elink.esua.epdc.modules.events.dao.EpdcEventsDao;
import com.elink.esua.epdc.modules.events.entity.EpdcEventsEntity;
@@ -44,12 +47,16 @@ 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.log.entity.DeptRespondLogEntity;
+import com.elink.esua.epdc.modules.log.service.DeptRespondLogService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
+import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -74,6 +81,9 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl listOfPendingReviewEvents(Map params) {
IPage page = getPage(params);
@@ -88,9 +98,9 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl getWrapper(Map params){
- String id = (String)params.get(FieldConstant.ID_HUMP);
- String issueCategoryId = (String)params.get("issueCategoryId");
+ private QueryWrapper getWrapper(Map params) {
+ String id = (String) params.get(FieldConstant.ID_HUMP);
+ String issueCategoryId = (String) params.get("issueCategoryId");
QueryWrapper wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
wrapper.eq(StringUtils.isNotBlank(issueCategoryId), "ISSUE_CATEGORY_ID", issueCategoryId);
@@ -162,7 +172,7 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl listOfRejectEvents(Map params) {
IPage page = getPage(params);
@@ -213,7 +227,7 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl imp
@Autowired
private NewsTask newsTask;
+ @Autowired
+ private DeptRespondTask deptRespondTask;
+
+
@Override
public PageData listOfIssues(Map params) {
IPage page = getPage(params);
@@ -105,8 +110,8 @@ public class IssueServiceImpl extends BaseServiceImpl imp
return ConvertUtils.sourceToTarget(entityList, IssueDTO.class);
}
- private QueryWrapper getWrapper(Map params){
- String id = (String)params.get(FieldConstant.ID_HUMP);
+ private QueryWrapper getWrapper(Map params) {
+ String id = (String) params.get(FieldConstant.ID_HUMP);
QueryWrapper wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
@@ -169,7 +174,7 @@ public class IssueServiceImpl extends BaseServiceImpl imp
informationFormDTO.setType(EventsNoticeConstant.NOTICE_TYPE_PROGRESS_NOTICE);
informationFormDTO.setBusinessType(EventsNoticeConstant.NOTICE_BUSINESS_TYPE_ITEM);
informationFormDTO.setBusinessId(entity.getId());
- informationFormDTO.setRelBusinessContent("议题:"+entity.getIssueContent());
+ informationFormDTO.setRelBusinessContent("议题:" + entity.getIssueContent());
// 反馈、关闭
if (EventIssueItemState.ISSUE_HANDLED_FEEDBACK == dto.getState() || EventIssueItemState.ISSUE_CLOSED == dto.getState()) {
@@ -207,7 +212,8 @@ public class IssueServiceImpl extends BaseServiceImpl imp
informationFormDTO.setBusinessId(itemEntity.getId());
}
}
-
+ //插入绩效部门响应日志表
+ deptRespondTask.saveIssueDeptRespond(dto);
// 发送消息
newsTask.insertUserInformation(informationFormDTO);
@@ -257,7 +263,7 @@ public class IssueServiceImpl extends BaseServiceImpl imp
formDto.setSomeMonthsAgo(DateUtils.addDateMonths(new Date(), -6));
List data = baseDao.selectListOfNewOrHotIssues(formDto);
// 查询最热评论
- for (IssueResultDTO dto:
+ for (IssueResultDTO dto :
data) {
IssueHotCommentResultDTO resultDTO = eventCommentService.getHotComment(dto.getEventId());
dto.setComment(resultDTO);
@@ -291,7 +297,7 @@ public class IssueServiceImpl extends BaseServiceImpl imp
public Result> listIssuesAndEventsOfMine(IssuesAndEventsOfMineFormDTO formDTO) {
List data = baseDao.selectListOfIssuesAndEventsOfMine(formDTO);
// 查询最热评论
- for (IssuesAndEventsOfMineResultDTO dto:
+ for (IssuesAndEventsOfMineResultDTO dto :
data) {
IssueHotCommentResultDTO resultDTO = eventCommentService.getHotComment(dto.getEventId());
dto.setComment(resultDTO);
@@ -306,6 +312,7 @@ public class IssueServiceImpl extends BaseServiceImpl imp
/**
* 初始化项目
+ *
* @Params: [issueEntity]
* @Return: com.elink.esua.epdc.modules.item.entity.ItemEntity
* @Author: liuchuang
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/controller/DeptRespondLogController.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/controller/DeptRespondLogController.java
new file mode 100644
index 000000000..b8cc0bcfe
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/controller/DeptRespondLogController.java
@@ -0,0 +1,94 @@
+/**
+ * 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.modules.log.controller;
+
+import com.elink.esua.epdc.commons.tools.page.PageData;
+import com.elink.esua.epdc.commons.tools.utils.ExcelUtils;
+import com.elink.esua.epdc.commons.tools.utils.Result;
+import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
+import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
+import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
+import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
+import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
+import com.elink.esua.epdc.dto.log.DeptRespondLogDTO;
+import com.elink.esua.epdc.modules.log.excel.DeptRespondLogExcel;
+import com.elink.esua.epdc.modules.log.service.DeptRespondLogService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+import java.util.Map;
+
+
+/**
+ * 部门响应记录
+ *
+ * @author qu qu@elink-cn.com
+ * @since v1.0.0 2019-10-22
+ */
+@RestController
+@RequestMapping("deptrespondlog")
+public class DeptRespondLogController {
+
+ @Autowired
+ private DeptRespondLogService deptRespondLogService;
+
+ @GetMapping("page")
+ public Result> page(@RequestParam Map params){
+ PageData page = deptRespondLogService.page(params);
+ return new Result>().ok(page);
+ }
+
+ @GetMapping("{id}")
+ public Result get(@PathVariable("id") String id){
+ DeptRespondLogDTO data = deptRespondLogService.get(id);
+ return new Result().ok(data);
+ }
+
+ @PostMapping
+ public Result save(@RequestBody DeptRespondLogDTO dto){
+ //效验数据
+ ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
+ deptRespondLogService.save(dto);
+ return new Result();
+ }
+
+ @PutMapping
+ public Result update(@RequestBody DeptRespondLogDTO dto){
+ //效验数据
+ ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
+ deptRespondLogService.update(dto);
+ return new Result();
+ }
+
+ @DeleteMapping
+ public Result delete(@RequestBody String[] ids){
+ //效验数据
+ AssertUtils.isArrayEmpty(ids, "id");
+ deptRespondLogService.delete(ids);
+ return new Result();
+ }
+
+ @GetMapping("export")
+ public void export(@RequestParam Map params, HttpServletResponse response) throws Exception {
+ List list = deptRespondLogService.list(params);
+ ExcelUtils.exportExcelToTarget(response, null, list, DeptRespondLogExcel.class);
+ }
+
+}
\ No newline at end of file
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/dao/DeptRespondLogDao.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/dao/DeptRespondLogDao.java
new file mode 100644
index 000000000..17bbfc82f
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/dao/DeptRespondLogDao.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright 2018 人人开源 https://www.renren.io
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+package com.elink.esua.epdc.modules.log.dao;
+
+import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
+import com.elink.esua.epdc.modules.log.entity.DeptRespondLogEntity;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 部门响应记录
+ *
+ * @author qu qu@elink-cn.com
+ * @since v1.0.0 2019-10-22
+ */
+@Mapper
+public interface DeptRespondLogDao extends BaseDao {
+
+}
\ No newline at end of file
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/entity/DeptRespondLogEntity.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/entity/DeptRespondLogEntity.java
new file mode 100644
index 000000000..67fd80106
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/entity/DeptRespondLogEntity.java
@@ -0,0 +1,66 @@
+/**
+ * Copyright 2018 人人开源 https://www.renren.io
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+package com.elink.esua.epdc.modules.log.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * 部门响应记录
+ *
+ * @author qu qu@elink-cn.com
+ * @since v1.0.0 2019-10-22
+ */
+@Data
+@EqualsAndHashCode(callSuper=false)
+@TableName("epdc_dept_respond_log")
+public class DeptRespondLogEntity extends BaseEpdcEntity {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 引用ID
+ */
+ private String referenceId;
+
+ /**
+ * 引用类型 issue或item
+ */
+ private String referenceType;
+
+ /**
+ * 响应部门的id(被呼叫的部门即审核部门)
+ */
+ private Long respondDeptId;
+
+ /**
+ * 响应时间即审核时间
+ */
+ private Date respondTime;
+
+ /**
+ * 响应类型,参考枚举类DeptRespondTypeEnum
+ */
+ private Integer respondType;
+
+}
\ No newline at end of file
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/excel/DeptRespondLogExcel.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/excel/DeptRespondLogExcel.java
new file mode 100644
index 000000000..12e31f896
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/excel/DeptRespondLogExcel.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright 2018 人人开源 https://www.renren.io
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+package com.elink.esua.epdc.modules.log.excel;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 部门响应记录
+ *
+ * @author qu qu@elink-cn.com
+ * @since v1.0.0 2019-10-22
+ */
+@Data
+public class DeptRespondLogExcel {
+
+ @Excel(name = "ID")
+ private String id;
+
+ @Excel(name = "引用ID")
+ private String referenceId;
+
+ @Excel(name = "引用类型 issue或item")
+ private String referenceType;
+
+ @Excel(name = "响应部门的id(被呼叫的部门即审核部门)")
+ private Long respondDeptId;
+
+ @Excel(name = "响应时间即审核时间")
+ private Date respondTime;
+
+ @Excel(name = "响应类型,参考枚举类DeptRespondTypeEnum")
+ private Integer respondType;
+
+ @Excel(name = "删除标识 0:未删除,1:删除")
+ private String delFlag;
+
+ @Excel(name = "乐观锁")
+ private Integer revision;
+
+ @Excel(name = "创建人")
+ private String createdBy;
+
+ @Excel(name = "创建时间")
+ private Date createdTime;
+
+ @Excel(name = "更新人")
+ private String updatedBy;
+
+ @Excel(name = "更新时间")
+ private Date updatedTime;
+
+
+}
\ No newline at end of file
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/redis/DeptRespondLogRedis.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/redis/DeptRespondLogRedis.java
new file mode 100644
index 000000000..e186849fb
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/redis/DeptRespondLogRedis.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.modules.log.redis;
+
+import com.elink.esua.epdc.commons.tools.redis.RedisUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+/**
+ * 部门响应记录
+ *
+ * @author qu qu@elink-cn.com
+ * @since v1.0.0 2019-10-22
+ */
+@Component
+public class DeptRespondLogRedis {
+ @Autowired
+ private RedisUtils redisUtils;
+
+ public void delete(Object[] ids) {
+
+ }
+
+ public void set(){
+
+ }
+
+ public String get(String id){
+ return null;
+ }
+
+}
\ No newline at end of file
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/service/DeptRespondLogService.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/service/DeptRespondLogService.java
new file mode 100644
index 000000000..5c62038bf
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/service/DeptRespondLogService.java
@@ -0,0 +1,95 @@
+/**
+ * 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.modules.log.service;
+
+import com.elink.esua.epdc.commons.mybatis.service.BaseService;
+import com.elink.esua.epdc.commons.tools.page.PageData;
+import com.elink.esua.epdc.dto.log.DeptRespondLogDTO;
+import com.elink.esua.epdc.modules.log.entity.DeptRespondLogEntity;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 部门响应记录
+ *
+ * @author qu qu@elink-cn.com
+ * @since v1.0.0 2019-10-22
+ */
+public interface DeptRespondLogService extends BaseService {
+
+ /**
+ * 默认分页
+ *
+ * @param params
+ * @return PageData
+ * @author generator
+ * @date 2019-10-22
+ */
+ PageData page(Map params);
+
+ /**
+ * 默认查询
+ *
+ * @param params
+ * @return java.util.List
+ * @author generator
+ * @date 2019-10-22
+ */
+ List list(Map params);
+
+ /**
+ * 单条查询
+ *
+ * @param id
+ * @return DeptRespondLogDTO
+ * @author generator
+ * @date 2019-10-22
+ */
+ DeptRespondLogDTO get(String id);
+
+ /**
+ * 默认保存
+ *
+ * @param dto
+ * @return void
+ * @author generator
+ * @date 2019-10-22
+ */
+ void save(DeptRespondLogDTO dto);
+
+ /**
+ * 默认更新
+ *
+ * @param dto
+ * @return void
+ * @author generator
+ * @date 2019-10-22
+ */
+ void update(DeptRespondLogDTO dto);
+
+ /**
+ * 批量删除
+ *
+ * @param ids
+ * @return void
+ * @author generator
+ * @date 2019-10-22
+ */
+ void delete(String[] ids);
+}
\ No newline at end of file
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/service/impl/DeptRespondLogServiceImpl.java b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/service/impl/DeptRespondLogServiceImpl.java
new file mode 100644
index 000000000..d8f3c4afa
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/service/impl/DeptRespondLogServiceImpl.java
@@ -0,0 +1,104 @@
+/**
+ * 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.modules.log.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
+import com.elink.esua.epdc.commons.tools.page.PageData;
+import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
+import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
+import com.elink.esua.epdc.modules.log.dao.DeptRespondLogDao;
+import com.elink.esua.epdc.dto.log.DeptRespondLogDTO;
+import com.elink.esua.epdc.modules.log.entity.DeptRespondLogEntity;
+import com.elink.esua.epdc.modules.log.redis.DeptRespondLogRedis;
+import com.elink.esua.epdc.modules.log.service.DeptRespondLogService;
+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 java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 部门响应记录
+ *
+ * @author qu qu@elink-cn.com
+ * @since v1.0.0 2019-10-22
+ */
+@Service
+public class DeptRespondLogServiceImpl extends BaseServiceImpl implements DeptRespondLogService {
+
+ @Autowired
+ private DeptRespondLogRedis deptRespondLogRedis;
+
+ @Override
+ public PageData page(Map params) {
+ IPage page = baseDao.selectPage(
+ getPage(params, FieldConstant.CREATED_TIME, false),
+ getWrapper(params)
+ );
+ return getPageData(page, DeptRespondLogDTO.class);
+ }
+
+ @Override
+ public List list(Map params) {
+ List entityList = baseDao.selectList(getWrapper(params));
+
+ return ConvertUtils.sourceToTarget(entityList, DeptRespondLogDTO.class);
+ }
+
+ private QueryWrapper getWrapper(Map params){
+ String id = (String)params.get(FieldConstant.ID_HUMP);
+
+ QueryWrapper wrapper = new QueryWrapper<>();
+ wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
+
+ return wrapper;
+ }
+
+ @Override
+ public DeptRespondLogDTO get(String id) {
+ DeptRespondLogEntity entity = baseDao.selectById(id);
+ return ConvertUtils.sourceToTarget(entity, DeptRespondLogDTO.class);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void save(DeptRespondLogDTO dto) {
+ DeptRespondLogEntity entity = ConvertUtils.sourceToTarget(dto, DeptRespondLogEntity.class);
+ insert(entity);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void update(DeptRespondLogDTO dto) {
+ DeptRespondLogEntity entity = ConvertUtils.sourceToTarget(dto, DeptRespondLogEntity.class);
+ updateById(entity);
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public void delete(String[] ids) {
+ // 逻辑删除(@TableLogic 注解)
+ baseDao.deleteBatchIds(Arrays.asList(ids));
+ }
+
+}
\ No newline at end of file
diff --git a/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/log/DeptRespondLogDao.xml b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/log/DeptRespondLogDao.xml
new file mode 100644
index 000000000..52fb4fe51
--- /dev/null
+++ b/esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/log/DeptRespondLogDao.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file