Browse Source

事件 议事 插入部门响应记录表

dev
qushutong 6 years ago
parent
commit
ba0ba16f09
  1. 96
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/log/DeptRespondLogDTO.java
  2. 13
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/DeptRespondTypeEnum.java
  3. 10
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/ReferenceTypeEnum.java
  4. 96
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/async/DeptRespondTask.java
  5. 27
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java
  6. 19
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java
  7. 94
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/controller/DeptRespondLogController.java
  8. 33
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/dao/DeptRespondLogDao.java
  9. 66
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/entity/DeptRespondLogEntity.java
  10. 71
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/excel/DeptRespondLogExcel.java
  11. 47
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/redis/DeptRespondLogRedis.java
  12. 95
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/service/DeptRespondLogService.java
  13. 104
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/log/service/impl/DeptRespondLogServiceImpl.java
  14. 22
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/log/DeptRespondLogDao.xml

96
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
* <p>
* 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.
* <p>
* 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.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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;
}

13
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, "关闭"),
//-------------------------------------

10
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/enums/IssueOrItemEnum.java → 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;
}

96
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);
}
}

27
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<EpdcEventsDao, EpdcEv
@Autowired
private NewsTask newsTask;
@Autowired
private DeptRespondTask deptRespondTask;
@Override
public PageData<EpdcEventsDTO> listOfPendingReviewEvents(Map<String, Object> params) {
IPage<EpdcEventsDTO> page = getPage(params);
@ -88,9 +98,9 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
return ConvertUtils.sourceToTarget(entityList, EpdcEventsDTO.class);
}
private QueryWrapper<EpdcEventsEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
String issueCategoryId = (String)params.get("issueCategoryId");
private QueryWrapper<EpdcEventsEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get(FieldConstant.ID_HUMP);
String issueCategoryId = (String) params.get("issueCategoryId");
QueryWrapper<EpdcEventsEntity> 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<EpdcEventsDao, EpdcEv
informationFormDTO.setBusinessId(eventsEntity.getId());
// 审核通过
if (EventIssueItemState.EVENT_REVIEW_PASS== dto.getEventState()) {
if (EventIssueItemState.EVENT_REVIEW_PASS == dto.getEventState()) {
// 事件插入议题表
IssueEntity issueEntity = initIssueEntity(selectById(dto.getId()));
issueService.insert(issueEntity);
@ -180,12 +190,16 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
informationFormDTO.setTitle(EventsNoticeConstant.NOTICE_EVENT_PASSED);
informationFormDTO.setBusinessType(EventsNoticeConstant.NOTICE_BUSINESS_TYPE_ISSUE);
}
//插入部门响应记录
deptRespondTask.saveEventDeptRespond(dto);
// 发送消息
newsTask.insertUserInformation(informationFormDTO);
return new Result();
}
@Override
public PageData<EpdcRejectEventsDTO> listOfRejectEvents(Map<String, Object> params) {
IPage<EpdcRejectEventsDTO> page = getPage(params);
@ -213,7 +227,7 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
}
EpdcEventsEntity epdcEventsEntity = new EpdcEventsEntity();
epdcEventsEntity.setId(entity.getId());
epdcEventsEntity.setBrowseNum(entity.getBrowseNum()+1);
epdcEventsEntity.setBrowseNum(entity.getBrowseNum() + 1);
return this.updateById(epdcEventsEntity);
}
@ -225,6 +239,7 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
/**
* 初始化议题
*
* @Params: [entity]
* @Return: com.elink.esua.epdc.modules.issue.entity.IssueEntity
* @Author: liuchuang

19
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java

@ -37,6 +37,7 @@ import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.*;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.modules.async.DeptRespondTask;
import com.elink.esua.epdc.modules.async.NewsTask;
import com.elink.esua.epdc.modules.comment.service.EventCommentService;
import com.elink.esua.epdc.modules.events.service.EpdcEventsService;
@ -91,6 +92,10 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
@Autowired
private NewsTask newsTask;
@Autowired
private DeptRespondTask deptRespondTask;
@Override
public PageData<IssueWaitHandleOrClosedDTO> listOfIssues(Map<String, Object> params) {
IPage<IssueWaitHandleOrClosedDTO> page = getPage(params);
@ -105,8 +110,8 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
return ConvertUtils.sourceToTarget(entityList, IssueDTO.class);
}
private QueryWrapper<IssueEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
private QueryWrapper<IssueEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get(FieldConstant.ID_HUMP);
QueryWrapper<IssueEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
@ -169,7 +174,7 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> 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<IssueDao, IssueEntity> imp
informationFormDTO.setBusinessId(itemEntity.getId());
}
}
//插入绩效部门响应日志表
deptRespondTask.saveIssueDeptRespond(dto);
// 发送消息
newsTask.insertUserInformation(informationFormDTO);
@ -257,7 +263,7 @@ public class IssueServiceImpl extends BaseServiceImpl<IssueDao, IssueEntity> imp
formDto.setSomeMonthsAgo(DateUtils.addDateMonths(new Date(), -6));
List<IssueResultDTO> 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<IssueDao, IssueEntity> imp
public Result<List<IssuesAndEventsOfMineResultDTO>> listIssuesAndEventsOfMine(IssuesAndEventsOfMineFormDTO formDTO) {
List<IssuesAndEventsOfMineResultDTO> 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<IssueDao, IssueEntity> imp
/**
* 初始化项目
*
* @Params: [issueEntity]
* @Return: com.elink.esua.epdc.modules.item.entity.ItemEntity
* @Author: liuchuang

94
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
* <p>
* 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.
* <p>
* 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.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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<PageData<DeptRespondLogDTO>> page(@RequestParam Map<String, Object> params){
PageData<DeptRespondLogDTO> page = deptRespondLogService.page(params);
return new Result<PageData<DeptRespondLogDTO>>().ok(page);
}
@GetMapping("{id}")
public Result<DeptRespondLogDTO> get(@PathVariable("id") String id){
DeptRespondLogDTO data = deptRespondLogService.get(id);
return new Result<DeptRespondLogDTO>().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<String, Object> params, HttpServletResponse response) throws Exception {
List<DeptRespondLogDTO> list = deptRespondLogService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, DeptRespondLogExcel.class);
}
}

33
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
* <p>
* 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.
* <p>
* 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.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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<DeptRespondLogEntity> {
}

66
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
* <p>
* 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.
* <p>
* 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.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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;
}

71
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
* <p>
* 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.
* <p>
* 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.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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;
}

47
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
* <p>
* 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.
* <p>
* 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.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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;
}
}

95
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
* <p>
* 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.
* <p>
* 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.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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<DeptRespondLogEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<DeptRespondLogDTO>
* @author generator
* @date 2019-10-22
*/
PageData<DeptRespondLogDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<DeptRespondLogDTO>
* @author generator
* @date 2019-10-22
*/
List<DeptRespondLogDTO> list(Map<String, Object> 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);
}

104
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
* <p>
* 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.
* <p>
* 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.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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<DeptRespondLogDao, DeptRespondLogEntity> implements DeptRespondLogService {
@Autowired
private DeptRespondLogRedis deptRespondLogRedis;
@Override
public PageData<DeptRespondLogDTO> page(Map<String, Object> params) {
IPage<DeptRespondLogEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, DeptRespondLogDTO.class);
}
@Override
public List<DeptRespondLogDTO> list(Map<String, Object> params) {
List<DeptRespondLogEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, DeptRespondLogDTO.class);
}
private QueryWrapper<DeptRespondLogEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<DeptRespondLogEntity> 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));
}
}

22
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/log/DeptRespondLogDao.xml

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.elink.esua.epdc.modules.log.dao.DeptRespondLogDao">
<resultMap type="com.elink.esua.epdc.modules.log.entity.DeptRespondLogEntity" id="deptRespondLogMap">
<result property="id" column="ID"/>
<result property="referenceId" column="REFERENCE_ID"/>
<result property="referenceType" column="REFERENCE_TYPE"/>
<result property="respondDeptId" column="RESPOND_DEPT_ID"/>
<result property="respondTime" column="RESPOND_TIME"/>
<result property="respondType" column="RESPOND_TYPE"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</mapper>
Loading…
Cancel
Save