Browse Source

Merge remote-tracking branch 'origin/master' into feature/lc_otherJob

feature/syp_points
liuchuang 5 years ago
parent
commit
335cef9c48
  1. 12
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysDeptController.java
  2. 3
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysDeptDao.java
  3. 8
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysDeptService.java
  4. 69
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java
  5. 10
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysDeptDao.xml
  6. 12
      esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/redis/RedisKeys.java
  7. 2
      esua-epdc/epdc-commons/epdc-commons-tools/src/main/resources/i18n/messages_common.properties
  8. 2
      esua-epdc/epdc-commons/epdc-commons-tools/src/main/resources/i18n/messages_common_zh_CN.properties
  9. 64
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiCustomInfoController.java
  10. 57
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java
  11. 28
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/CustomFeignClient.java
  12. 17
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkIssueFeignClient.java
  13. 26
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/CustomFeignClientFallback.java
  14. 13
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkIssueFeignClientFallback.java
  15. 44
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/CustomService.java
  16. 11
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkIssueService.java
  17. 26
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/CustomServiceImpl.java
  18. 17
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkIssueServiceImpl.java
  19. 144
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/ArchivesDTO.java
  20. 26
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/EpdcArchivesErroyResultDTO.java
  21. 5
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/ModuleDTO.java
  22. 32
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/form/ArchiveDeptFormDTO.java
  23. 42
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/form/ArchiveFormDTO.java
  24. 29
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/result/ArchiveDeptResultDTO.java
  25. 60
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/result/ArchiveDetailResultDTO.java
  26. 39
      esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/result/ArchiveResultDTO.java
  27. 56
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/config/StreamUtils.java
  28. 119
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/controller/ArchivesController.java
  29. 66
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/controller/EpdcAppArchivesController.java
  30. 82
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/dao/ArchivesDao.java
  31. 103
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/entity/ArchivesEntity.java
  32. 57
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/excel/ArchivesExcel.java
  33. 47
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/redis/ArchivesRedis.java
  34. 151
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/service/ArchivesService.java
  35. 347
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/service/impl/ArchivesServiceImpl.java
  36. 17
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/feign/AdminFeignClient.java
  37. 10
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/AdminFeignClientFallback.java
  38. 17
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/controller/EpdcAppModuleController.java
  39. 16
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/controller/ModuleController.java
  40. 19
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/dao/ModuleDao.java
  41. 5
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/entity/ModuleEntity.java
  42. 18
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/service/ModuleService.java
  43. 15
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/service/impl/ModuleServiceImpl.java
  44. 112
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/archives/ArchivesDao.xml
  45. 23
      esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/module/ModuleDao.xml
  46. 4
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/EventIssueItemState.java
  47. 15
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppWorkEventsController.java
  48. 2
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcEventsController.java
  49. 2
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java
  50. 8
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java
  51. 18
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/EpdcAppWorkIssueController.java
  52. 5
      esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/NoticeDTO.java
  53. 5
      esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcNoticeDetailResultDTO.java
  54. 5
      esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcNoticeListResultDTO.java
  55. 5
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/NoticeEntity.java
  56. 13
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java
  57. 9
      esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml
  58. 2
      esua-epdc/epdc-module/epdc-oss/epdc-oss-server/pom.xml
  59. 2
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml

12
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysDeptController.java

@ -222,6 +222,18 @@ public class SysDeptController {
return sysDeptService.getDeptTreeForEpiDemic();
}
/**
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.DeptOption>
* @Author songyunpeng
* @Description StreetDept
* @Date 2020/1/31 10:31
**/
@GetMapping("party/getDeptTreeForStreetDept")
public Result<DeptOption> getDeptTreeForStreetDept() {
return sysDeptService.getDeptTreeForStreetDept();
}
/**
* @param params
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.CompleteDeptDTO>

3
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysDeptDao.java

@ -156,4 +156,7 @@ public interface SysDeptDao extends BaseDao<SysDeptEntity> {
List<CompleteDeptDTO> selectListCompleteDeptDTO(Map<String, Object> params);
List<DeptTreeDTO> selectListDeptTreeForEpiDemic();
List<DeptTreeDTO> selectListDeptTreeStreetDept();
}

8
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysDeptService.java

@ -199,6 +199,14 @@ public interface SysDeptService extends BaseService<SysDeptEntity> {
* @Date 2020/1/31 10:30
**/
Result<DeptOption> getDeptTreeForEpiDemic();
/**
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.DeptOption>
* @Author songyunpeng
* @Description StreetDept
* @Date 2020/1/31 10:31
**/
Result<DeptOption> getDeptTreeForStreetDept();
/**
* @param params

69
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java

@ -661,6 +661,17 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
return new Result<DeptOption>().ok((DeptOption) obj);
}
@Override
public Result<DeptOption> getDeptTreeForStreetDept() {
String deptKey = RedisKeys.getAllDeptOptionKeyForStreetDept();
Object obj = redisUtils.get(deptKey);
if (null == obj) {
this.packgeAllDeptOptionForStreetDept();
obj = redisUtils.get(deptKey);
}
return new Result<DeptOption>().ok((DeptOption) obj);
}
/**
* @param
* @return void
@ -720,7 +731,65 @@ public class SysDeptServiceImpl extends BaseServiceImpl<SysDeptDao, SysDeptEntit
option.setOptions(cache.get(0));
redisUtils.set(RedisKeys.getAllDeptOptionKeyForEpiDemic(), option);
}
/**
* @param
* @return void
* @Author songyunpeng
* @Description
* @Date 2020/7/6 11:39
**/
private void packgeAllDeptOptionForStreetDept() {
List<DeptTreeDTO> deptList = baseDao.selectListDeptTreeStreetDept();
JSONObject node;
JSONArray headNodes = new JSONArray();
for (DeptTreeDTO deptItemDto : deptList) {
if (deptItemDto.getPid().longValue() == NumConstant.ZERO_L) {
node = new JSONObject();
node.put("value", deptItemDto.getId());
node.put("label", deptItemDto.getName());
headNodes.add(node);
}
}
// 用于存放所有父级节点
JSONArray parent;
parent = headNodes;
// 用于存放所有子级节点
JSONArray allChildren = new JSONArray();
JSONArray children;
// 用于存放单个子级节点
JSONObject childNode;
// 存放其余未处理的类别(节点)
List<DeptTreeDTO> others = this.getOtherDept(deptList, parent);
while (!others.isEmpty()) {
for (int i = 0; i < parent.size(); i++) {
node = parent.getJSONObject(i);
children = new JSONArray();
for (DeptTreeDTO categoryTreeDto : others) {
if (categoryTreeDto.getPid().equals(node.get("value"))) {
childNode = new JSONObject();
childNode.put("value", categoryTreeDto.getId());
childNode.put("label", categoryTreeDto.getName());
children.add(childNode);
allChildren.add(childNode);
}
}
if (!children.isEmpty()) {
node.put("children", children);
}
}
parent = allChildren;
others = this.getOtherDept(others, parent);
}
//存放到redis中
List<JSONArray> cache = Lists.newArrayList();
cache.add(headNodes);
DeptOption option = new DeptOption();
option.setOptions(cache.get(0));
redisUtils.set(RedisKeys.getAllDeptOptionKeyForStreetDept(), option);
}
/**
* @param params
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.CompleteDeptDTO>

10
esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysDeptDao.xml

@ -242,4 +242,14 @@
</if>
order by gri.create_date desc
</select>
<select id="selectListDeptTreeStreetDept" resultType="com.elink.esua.epdc.dto.DeptTreeDTO">
SELECT
sd.id,
sd.pid,
sd.`name`
FROM
sys_dept sd
where sd.del_flag='0'
and sd.type_key in ('district_party','street_party','street_dept')
</select>
</mapper>

12
esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/redis/RedisKeys.java

@ -180,6 +180,18 @@ public class RedisKeys {
return rootPrefix.concat("options:dept:epidemic:all:");
}
/**
* @param
* @return java.lang.String
* @Author songyunpeng
* @Description 部门所有层级关系-只要Street_dept
* @Date 2020/7/6 11:39
**/
public static String getAllDeptOptionKeyForStreetDept() {
return rootPrefix.concat("options:dept:streetDept:all:");
}
/**
* @param behaviorCode 动作编码
* @return java.lang.String

2
esua-epdc/epdc-commons/epdc-commons-tools/src/main/resources/i18n/messages_common.properties

@ -1,5 +1,5 @@
#Default
500=\u670D\u52A1\u5668\u5185\u90E8\u5F02\u5E38
500=\u7F51\u7EDC\u5F00\u5C0F\u5DEE\u4E86\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5
401=\u672A\u6388\u6743
403=\u62D2\u7EDD\u8BBF\u95EE\uFF0C\u6CA1\u6709\u6743\u9650
10001={0}\u4E0D\u80FD\u4E3A\u7A7A

2
esua-epdc/epdc-commons/epdc-commons-tools/src/main/resources/i18n/messages_common_zh_CN.properties

@ -1,5 +1,5 @@
#\u7B80\u4F53\u4E2D\u6587
500=\u670D\u52A1\u5668\u5185\u90E8\u5F02\u5E38
500=\u7F51\u7EDC\u5F00\u5C0F\u5DEE\u4E86\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5
401=\u672A\u6388\u6743
403=\u62D2\u7EDD\u8BBF\u95EE\uFF0C\u6CA1\u6709\u6743\u9650
10001={0}\u4E0D\u80FD\u4E3A\u7A7A

64
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiCustomInfoController.java

@ -1,16 +1,13 @@
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.form.EpdcDeptInfoFormDTO;
import com.elink.esua.epdc.dto.result.EpdcDeptInfoResultDTO;
import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.dto.result.*;
import com.elink.esua.epdc.service.CustomService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@ -33,11 +30,26 @@ public class ApiCustomInfoController {
* @Author zhangyong
* @Date 13:37 2020-05-20
**/
@Deprecated
@GetMapping("module/list")
public Result<List<EpdcModuleResultDTO>> listModule() {
return customService.listModule();
}
/**
*
* 根据模块分类获取模块
*
* @params [moduleCategory]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcModuleResultDTO>>
* @author liuchuang
* @since 2020/7/15 17:43
*/
@GetMapping("module/list/{moduleCategory}")
public Result<List<EpdcModuleResultDTO>> getModuleByModuleCategory(@PathVariable("moduleCategory") String moduleCategory) {
return customService.listOfModuleByModuleCategory(moduleCategory);
}
/**
* 移动端获取 了解锦水-硬核管理接口
*
@ -50,4 +62,42 @@ public class ApiCustomInfoController {
public Result<List<EpdcDeptInfoResultDTO>> listDeptInfo(EpdcDeptInfoFormDTO formDTO) {
return customService.listDeptInfo(formDTO);
}
/**
* @Description 获取有档案的归属部门列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
@GetMapping("archive/depts")
public Result<List<ArchiveDeptResultDTO>> listArchiveDeptInfo(ArchiveDeptFormDTO formDTO) {
return customService.listArchiveDeptInfo(formDTO);
}
/**
* @Description 获取档案列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
@GetMapping("archive/list")
public Result<List<ArchiveResultDTO>> listArchivesInfo(ArchiveFormDTO formDTO) {
return customService.listArchivesInfo(formDTO);
}
/**
* @Description 获取档案详情
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
@GetMapping("archive/detail/{id}")
public Result<ArchiveDetailResultDTO> getArchiveDetail(@PathVariable("id") String id) {
return customService.getArchiveDetail(id);
}
}

57
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java

@ -9,7 +9,6 @@ import com.elink.esua.epdc.dto.comment.form.WorkCommentReplyFormDTO;
import com.elink.esua.epdc.dto.comment.result.WorkEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.EpdcEventsDetailDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
@ -31,7 +30,8 @@ public class ApiWorkIssueController {
/**
*议题数据统计
* 议题数据统计
*
* @param formDto
* @return
*/
@ -42,6 +42,7 @@ public class ApiWorkIssueController {
/**
* 事件列表接口待回应/已驳回
*
* @param formDto
* @return
*/
@ -51,7 +52,8 @@ public class ApiWorkIssueController {
}
/**
*事件详情
* 事件详情
*
* @param id
* @return
*/
@ -61,48 +63,62 @@ public class ApiWorkIssueController {
}
/**
*事件分类
* 事件分类
*
* @return
*/
@GetMapping("event/categoryList")
public Result<List<EventCategoryDTO>> categoryList() {
return workIssueService.categoryList();
}
/**
*事件审核
* 事件审核
*
* @return
*/
@PostMapping("event/review")
public Result review(@RequestBody EpdcEventsReviewFormDTO dto) {
return workIssueService.review(dto);
}
/**
*事件审核 - 通过
* 事件审核 - 通过
*
* @return
*/
@PostMapping("event/reviewPass")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_AUDIT_PASS,referenceId = "#{dto.getId}",userId = "#{dto.getUserId}")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_AUDIT_PASS, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result reviewPass(@RequestBody EpdcEventsReviewFormDTO dto) {
return workIssueService.review(dto);
}
/**
*事件审核 -不通过
* 事件审核 -不通过
*
* @return
*/
@PostMapping("event/reviewNopass")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_AUDIT_FAILED,referenceId = "#{dto.getId}",userId = "#{dto.getUserId}")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_AUDIT_FAILED, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result reviewNopass(@RequestBody EpdcEventsReviewFormDTO dto) {
return workIssueService.review(dto);
}
/**
* 事件审核 - 通过
*
* @return
*/
@PostMapping("event/reviewToItem")
public Result reviewToItem(@RequestBody EpdcEventsReviewFormDTO dto) {
return workIssueService.reviewToItem(dto);
}
/**
* 工作端-议题待处理或者已关闭的最新最热列表
*
* @param formDto
* @return
*/
@ -116,37 +132,37 @@ public class ApiWorkIssueController {
* 工作端-议题详情
*/
@GetMapping("issue/detail/{issueId}")
public Result<WorkIssueDetailResultDTO> issueDetail(@PathVariable("issueId") String issueId){
public Result<WorkIssueDetailResultDTO> issueDetail(@PathVariable("issueId") String issueId) {
return workIssueService.selectOneWorkIssueDetail(issueId);
}
/**
* 工作端-事件评论列表
*
* @param formDTO
* @return
*/
@GetMapping("event/commentList")
public Result<List<WorkEventCommentResultDTO>> commentList(WorkEventCommentListFormDTO formDTO){
public Result<List<WorkEventCommentResultDTO>> commentList(WorkEventCommentListFormDTO formDTO) {
return workIssueService.selectWorkHotOrNewEventComment(formDTO);
}
/**
*
* 事件评论回复列表接口
*/
@GetMapping("event/commentReplyList")
public Result<WorkEventsCommentsDTO> commentReplyList(WorkCommentReplyFormDTO workCommentReplyFormDTO){
public Result<WorkEventsCommentsDTO> commentReplyList(WorkCommentReplyFormDTO workCommentReplyFormDTO) {
return workIssueService.commentReplyList(workCommentReplyFormDTO);
}
/**
*
* 议题处理进度(后台/工作端用)
*/
@GetMapping("issue/processList")
public Result<List<IssueProgressResultDTO>> processList(WorkProcessListFormDTO workProcessListFormDTO){
public Result<List<IssueProgressResultDTO>> processList(WorkProcessListFormDTO workProcessListFormDTO) {
return workIssueService.processList(workProcessListFormDTO);
}
/**
* 议题待处理
*/
@ -160,7 +176,7 @@ public class ApiWorkIssueController {
* 议题待处理 - 回应
*/
@PostMapping("issue/response")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_RESPONSE,referenceId = "#{dto.getId}",userId = "#{dto.getUserId}")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_RESPONSE, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result response(@RequestBody IssueWaitHandleSubmitFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return workIssueService.handleSubmit(dto);
@ -170,7 +186,7 @@ public class ApiWorkIssueController {
* 议题待处理 - 关闭
*/
@PostMapping("issue/close")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_CLOSE,referenceId = "#{dto.getId}",userId = "#{dto.getUserId}")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_CLOSE, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result close(@RequestBody IssueWaitHandleSubmitFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return workIssueService.handleSubmit(dto);
@ -180,12 +196,11 @@ public class ApiWorkIssueController {
* 议题待处理 -- 转项目
*/
@PostMapping("issue/toItem")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_TO_PROJECT,referenceId = "#{dto.getId}",userId = "#{dto.getUserId}")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_TO_PROJECT, referenceId = "#{dto.getId}", userId = "#{dto.getUserId}")
public Result toItem(@RequestBody IssueWaitHandleSubmitFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return workIssueService.handleSubmit(dto);
}
}

28
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/CustomFeignClient.java

@ -2,14 +2,16 @@ package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.form.EpdcDeptInfoFormDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.result.EpdcDeptInfoResultDTO;
import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.dto.result.*;
import com.elink.esua.epdc.feign.fallback.CustomFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import java.util.List;
@ -39,9 +41,22 @@ public interface CustomFeignClient {
* @Author zhangyong
* @Date 10:42 2020-05-20
**/
@Deprecated
@GetMapping(value = "custom/epdc-app/module/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<EpdcModuleResultDTO>> selectListModule();
/**
*
* 根据模块分类获取模块
*
* @params [moduleCategory]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcModuleResultDTO>>
* @author liuchuang
* @since 2020/7/15 17:43
*/
@GetMapping("custom/epdc-app/module/list/{moduleCategory}")
Result<List<EpdcModuleResultDTO>> listOfModuleByModuleCategory(@PathVariable("moduleCategory") String moduleCategory);
/**
* 移动端获取 了解锦水-硬核管理接口
* @param formDTO
@ -51,4 +66,13 @@ public interface CustomFeignClient {
**/
@GetMapping(value = "custom/epdc-app/deptinfo/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<EpdcDeptInfoResultDTO>> selectListDeptInfo(EpdcDeptInfoFormDTO formDTO);
@GetMapping(value = "custom/archive/depts", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ArchiveDeptResultDTO>> listArchiveDeptInfo(ArchiveDeptFormDTO formDTO);
@GetMapping(value = "custom/archive/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ArchiveResultDTO>> listArchivesInfo(ArchiveFormDTO formDTO);
@GetMapping(value = "custom/archive/detail/{id}", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<ArchiveDetailResultDTO> getArchiveDetail(@PathVariable("id") String id);
}

17
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkIssueFeignClient.java

@ -8,7 +8,6 @@ import com.elink.esua.epdc.dto.comment.form.WorkCommentReplyFormDTO;
import com.elink.esua.epdc.dto.comment.result.WorkEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.EpdcEventsDetailDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.feign.fallback.WorkIssueFeignClientFallback;
@ -61,7 +60,13 @@ public interface WorkIssueFeignClient {
*/
@PostMapping(value = "events/epdc-app/work/event/review", consumes = MediaType.APPLICATION_JSON_VALUE)
Result review(EpdcEventsReviewFormDTO dto);
/**
* 事件审核 - 通过
* @param dto
* @return
*/
@PostMapping(value = "events/epdc-app/work/event/reviewPass", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<String> reviewPass(EpdcEventsReviewFormDTO dto);
/**
* 工作端-议题待处理或者已关闭的最新最热列表
@ -108,6 +113,14 @@ public interface WorkIssueFeignClient {
@PostMapping(value = "events/epdc-app/work/issue/handleSubmit", consumes = MediaType.APPLICATION_JSON_VALUE)
Result handleSubmit(IssueWaitHandleSubmitFormDTO dto);
/**
*议题处理 -- 转项目
* @param dto
* @return
*/
@PostMapping(value = "events/epdc-app/work/issue/handleSubmitToItem", consumes = MediaType.APPLICATION_JSON_VALUE)
Result handleSubmitToItem(IssueWaitHandleSubmitFormDTO dto);
/**
* 工作端-事件评论回复列表接口
* @param workCommentReplyFormDTO

26
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/CustomFeignClientFallback.java

@ -3,12 +3,14 @@ package com.elink.esua.epdc.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.form.EpdcDeptInfoFormDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.result.EpdcDeptInfoResultDTO;
import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.dto.result.*;
import com.elink.esua.epdc.feign.CustomFeignClient;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
@ -30,8 +32,28 @@ public class CustomFeignClientFallback implements CustomFeignClient {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "selectListModule", null);
}
@Override
public Result<List<EpdcModuleResultDTO>> listOfModuleByModuleCategory(String moduleCategory) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "getModuleByModuleCategory", moduleCategory);
}
@Override
public Result<List<EpdcDeptInfoResultDTO>> selectListDeptInfo(EpdcDeptInfoFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "selectListDeptInfo", formDTO);
}
@Override
public Result<List<ArchiveDeptResultDTO>> listArchiveDeptInfo(ArchiveDeptFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "listArchiveDeptInfo", formDTO);
}
@Override
public Result<List<ArchiveResultDTO>> listArchivesInfo(ArchiveFormDTO formDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "listArchivesInfo", formDTO);
}
@Override
public Result<ArchiveDetailResultDTO> getArchiveDetail(String id) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_CUSTOM_SERVER, "getArchiveDetail", id);
}
}

13
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkIssueFeignClientFallback.java

@ -7,12 +7,9 @@ import com.elink.esua.epdc.dto.category.EventCategoryDTO;
import com.elink.esua.epdc.dto.comment.form.WorkCommentReplyFormDTO;
import com.elink.esua.epdc.dto.comment.result.WorkEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.EpdcEventsDetailDTO;
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.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.feign.IssueFeignClient;
import com.elink.esua.epdc.feign.WorkIssueFeignClient;
import org.springframework.stereotype.Component;
@ -50,6 +47,11 @@ public class WorkIssueFeignClientFallback implements WorkIssueFeignClient {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "review", dto);
}
@Override
public Result<String> reviewPass(EpdcEventsReviewFormDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "reviewPass", dto);
}
@Override
public Result<List<WorkIssueListResultDTO>> selectWorkIssueListOfNewOrHot(WorkIssueListFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "selectWorkIssueListOfNewOrHot", formDto);
@ -75,6 +77,11 @@ public class WorkIssueFeignClientFallback implements WorkIssueFeignClient {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "handleSubmit", dto);
}
@Override
public Result handleSubmitToItem(IssueWaitHandleSubmitFormDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "handleSubmitToItem", dto);
}
@Override
public Result<WorkEventsCommentsDTO> commentReplyList(WorkCommentReplyFormDTO workCommentReplyFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "commentReplyList", workCommentReplyFormDTO);

44
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/CustomService.java

@ -1,13 +1,12 @@
package com.elink.esua.epdc.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.DeptOption;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.form.EpdcDeptInfoFormDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.result.EpdcDeptInfoResultDTO;
import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import org.apache.poi.ss.formula.functions.T;
import com.elink.esua.epdc.dto.result.*;
import java.util.List;
@ -43,8 +42,20 @@ public interface CustomService {
* @Author zhangyong
* @Date 10:42 2020-05-20
**/
@Deprecated
Result<List<EpdcModuleResultDTO>> listModule();
/**
*
* 根据模块分类获取模块
*
* @params [moduleCategory]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcModuleResultDTO>>
* @author liuchuang
* @since 2020/7/15 17:44
*/
Result<List<EpdcModuleResultDTO>> listOfModuleByModuleCategory(String moduleCategory);
/**
* 移动端获取 了解锦水-硬核管理接口
*
@ -54,4 +65,29 @@ public interface CustomService {
* @Date 13:41 2020-05-20
**/
Result<List<EpdcDeptInfoResultDTO>> listDeptInfo(EpdcDeptInfoFormDTO formDTO);
/**
* @Description 获取有档案的归属部门列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
Result<List<ArchiveDeptResultDTO>> listArchiveDeptInfo(ArchiveDeptFormDTO formDTO);
/**
* @Description 获取档案列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
Result<List<ArchiveResultDTO>> listArchivesInfo(ArchiveFormDTO formDTO);
/**
* @Description 获取档案详情
* @Author songyunpeng
* @Date 2020/7/7
* @Param [id]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.ArchiveDetailResultDTO>
**/
Result<ArchiveDetailResultDTO> getArchiveDetail(String id);
}

11
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkIssueService.java

@ -24,10 +24,8 @@ import com.elink.esua.epdc.dto.comment.form.WorkCommentReplyFormDTO;
import com.elink.esua.epdc.dto.comment.result.WorkEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.EpdcEventsDetailDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@ -111,5 +109,12 @@ public interface WorkIssueService {
*/
Result<WorkEventsCommentsDTO> commentReplyList(WorkCommentReplyFormDTO workCommentReplyFormDTO);
/**
* @Description 事件转项目
* @Author songyunpeng
* @Date 2020/7/2
* @Param [dto]
* @return com.elink.esua.epdc.commons.tools.utils.Result
**/
Result reviewToItem(EpdcEventsReviewFormDTO dto);
}

26
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/CustomServiceImpl.java

@ -1,14 +1,14 @@
package com.elink.esua.epdc.service.impl;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.DeptOption;
import com.elink.esua.epdc.dto.ParentAndAllDeptDTO;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.form.EpdcDeptInfoFormDTO;
import com.elink.esua.epdc.dto.form.EpiDemicReportFormDTO;
import com.elink.esua.epdc.dto.result.EpdcDeptInfoResultDTO;
import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.dto.result.*;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.feign.CustomFeignClient;
import com.elink.esua.epdc.redis.AppUserRedis;
@ -89,8 +89,28 @@ public class CustomServiceImpl implements CustomService {
return customFeignClient.selectListModule();
}
@Override
public Result<List<EpdcModuleResultDTO>> listOfModuleByModuleCategory(String moduleCategory) {
return customFeignClient.listOfModuleByModuleCategory(moduleCategory);
}
@Override
public Result<List<EpdcDeptInfoResultDTO>> listDeptInfo(EpdcDeptInfoFormDTO formDTO) {
return customFeignClient.selectListDeptInfo(formDTO);
}
@Override
public Result<List<ArchiveDeptResultDTO>> listArchiveDeptInfo(ArchiveDeptFormDTO formDTO) {
return customFeignClient.listArchiveDeptInfo(formDTO);
}
@Override
public Result<List<ArchiveResultDTO>> listArchivesInfo(ArchiveFormDTO formDTO) {
return customFeignClient.listArchivesInfo(formDTO);
}
@Override
public Result<ArchiveDetailResultDTO> getArchiveDetail(String id) {
return customFeignClient.getArchiveDetail(id);
}
}

17
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkIssueServiceImpl.java

@ -23,11 +23,11 @@ import com.elink.esua.epdc.dto.comment.form.WorkCommentReplyFormDTO;
import com.elink.esua.epdc.dto.comment.result.WorkEventsCommentsDTO;
import com.elink.esua.epdc.dto.events.EpdcEventsDetailDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.feign.WorkIssueFeignClient;
import com.elink.esua.epdc.service.WorkIssueService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -150,4 +150,19 @@ public class WorkIssueServiceImpl implements WorkIssueService {
public Result<WorkEventsCommentsDTO> commentReplyList(WorkCommentReplyFormDTO workCommentReplyFormDTO) {
return workIssueFeignClient.commentReplyList(workCommentReplyFormDTO);
}
@Override
public Result reviewToItem(EpdcEventsReviewFormDTO dto) {
Result<String> stringResult = workIssueFeignClient.reviewPass(dto);
if(!stringResult.success() || StringUtils.isBlank(stringResult.getData())){
return new Result().error("获取议题ID失败");
}
String issueId = stringResult.getData();
IssueWaitHandleSubmitFormDTO issueWaitHandleSubmitFormDTO = new IssueWaitHandleSubmitFormDTO();
issueWaitHandleSubmitFormDTO.setId(issueId);
issueWaitHandleSubmitFormDTO.setAdvice(dto.getAdvice());
issueWaitHandleSubmitFormDTO.setUserId(dto.getUserId());
issueWaitHandleSubmitFormDTO.setState(4);
return workIssueFeignClient.handleSubmitToItem(issueWaitHandleSubmitFormDTO);
}
}

144
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/ArchivesDTO.java

@ -0,0 +1,144 @@
/**
* 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;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 档案管理表 档案管理表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-07-06
*/
@Data
public class ArchivesDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 档号
*/
private String archivesNum;
/**
* 文号
*/
private String docNum;
/**
* 题名
*/
private String title;
/**
* 归档日期
*/
private String archiveTime;
/**
* 页数
*/
private Integer pageSize;
/**
* 责任人
*/
private String responsible;
/**
* 归属部门
*/
private String dept;
/**
* 归属部门ID
*/
private Long deptId;
/**
* 备注
*/
private String remark;
/**
* 父所有部门名称
*/
private String parentDeptNames;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 所有部门名称
*/
private String allDeptIds;
/**
* 所有部门ID
*/
private String allDeptNames;
/**
* 删除标识 0-1-
*/
private String delFlag;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
/**
* 回显部门
*/
private List<String> allDeptIdsShow;
}

26
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/EpdcArchivesErroyResultDTO.java

@ -0,0 +1,26 @@
package com.elink.esua.epdc.dto;
import lombok.Data;
import java.io.Serializable;
/**
* @author: songyunpeng
* @Date: 2020/7/4 17:066
* @Description: 批量导入档案错误反馈
*/
@Data
public class EpdcArchivesErroyResultDTO implements Serializable {
private static final long serialVersionUID = 5643743407138967806L;
/**
* 错误数据行数
*/
private String erroLine;
/**
* 错误数据信息
*/
private String errorInfo;
}

5
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/ModuleDTO.java

@ -98,4 +98,9 @@ public class ModuleDTO implements Serializable {
*/
private Date updatedTime;
/**
* 模块分类
*/
private String moduleCategory;
}

32
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/form/ArchiveDeptFormDTO.java

@ -0,0 +1,32 @@
package com.elink.esua.epdc.dto.form;
import lombok.Data;
import javax.validation.constraints.Min;
import java.io.Serializable;
/**
* 档案管理 归属部门
*
* @author songyunpeng
* @since v1.0.0 2020-05-20
*/
@Data
public class ArchiveDeptFormDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 页码
*/
@Min(value = 1, message = "页码必须大于0")
private Integer pageIndex;
/**
* 页容量
*/
@Min(value = 1, message = "页容量必须大于0")
private Integer pageSize;
}

42
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/form/ArchiveFormDTO.java

@ -0,0 +1,42 @@
package com.elink.esua.epdc.dto.form;
import lombok.Data;
import javax.validation.constraints.Min;
import java.io.Serializable;
/**
* 档案列表
*
* @author songyunpeng
* @since v1.0.0 2020-05-20
*/
@Data
public class ArchiveFormDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 页码
*/
@Min(value = 1, message = "页码必须大于0")
private Integer pageIndex;
/**
* 页容量
*/
@Min(value = 1, message = "页容量必须大于0")
private Integer pageSize;
/**
* 部门ID
*/
private Long deptId;
/**
* 搜索内容
*/
private String searchContent;
}

29
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/result/ArchiveDeptResultDTO.java

@ -0,0 +1,29 @@
package com.elink.esua.epdc.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* 档案管理 归属部门
*
* @author songyunpeng
* @since v1.0.0 2020-05-20
*/
@Data
public class ArchiveDeptResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 部门名称
*/
private String dept;
/**
* 部门ID
*/
private Long deptId;
}

60
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/result/ArchiveDetailResultDTO.java

@ -0,0 +1,60 @@
package com.elink.esua.epdc.dto.result;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 档案详情
*
* @author songyunpeng
* @since v1.0.0 2020-05-20
*/
@Data
public class ArchiveDetailResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 档号
*/
private String archivesNum;
/**
* 文号
*/
private String docNum;
/**
* 题名
*/
private String title;
/**
* 归档日期
*/
private Date archiveTime;
/**
* 页数
*/
private Integer pageSize;
/**
* 责任人
*/
private String responsible;
/**
* 备注
*/
private String remark;
}

39
esua-epdc/epdc-module/epdc-custom/epdc-custom-client/src/main/java/com/elink/esua/epdc/dto/result/ArchiveResultDTO.java

@ -0,0 +1,39 @@
package com.elink.esua.epdc.dto.result;
import lombok.Data;
import java.io.Serializable;
/**
* 档案列表
*
* @author songyunpeng
* @since v1.0.0 2020-05-20
*/
@Data
public class ArchiveResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 档案ID
*/
private String id;
/**
* 档号
*/
private String archivesNum;
/**
* 题名
*/
private String title;
/**
* 归档时间
*/
private String archiveTime;
}

56
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/config/StreamUtils.java

@ -0,0 +1,56 @@
package com.elink.esua.epdc.config;
import com.elink.esua.epdc.commons.tools.exception.RenException;
import org.springframework.web.multipart.MultipartFile;
import java.io.*;
/**
* 接收文件转化File
* Created by liuhongwei on 2019/6/21.
*/
public class StreamUtils {
public static File conversionFile(MultipartFile file){
File toFile =null;
InputStream ins = null;
try {
// 转化字节流
ins = file.getInputStream();
// 获取文件名字
toFile = new File(file.getOriginalFilename());
// 字节转化文件
inputStreamToFile(ins, toFile);
ins.close();
} catch (IOException e) {
new RenException(500,"文件转化失败");
}
return toFile;
}
/**
* 流转化
* @param ins file
* @return
* @author liuhongwei
* @date 2019/6/14 14:07
*/
public static void inputStreamToFile(InputStream ins, File file) {
try {
OutputStream os = new FileOutputStream(file);
int bytesRead = 0;
byte[] buffer = new byte[8192];
while ((bytesRead = ins.read(buffer, 0, 8192)) != -1) {
os.write(buffer, 0, bytesRead);
}
os.close();
ins.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

119
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/controller/ArchivesController.java

@ -0,0 +1,119 @@
/**
* 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.archives.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.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.dto.ArchivesDTO;
import com.elink.esua.epdc.modules.archives.excel.ArchivesExcel;
import com.elink.esua.epdc.modules.archives.service.ArchivesService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 档案管理表 档案管理表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-07-06
*/
@RestController
@RequestMapping("archives")
public class ArchivesController {
@Autowired
private ArchivesService archivesService;
@GetMapping("page")
public Result<PageData<ArchivesDTO>> page(@RequestParam Map<String, Object> params){
PageData<ArchivesDTO> page = archivesService.listPage(params);
return new Result<PageData<ArchivesDTO>>().ok(page);
}
@GetMapping("{id}")
public Result<ArchivesDTO> get(@PathVariable("id") String id){
ArchivesDTO data = archivesService.get(id);
return new Result<ArchivesDTO>().ok(data);
}
@PostMapping
public Result save(@RequestBody ArchivesDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
archivesService.save(dto);
return new Result();
}
@PutMapping
public Result update(@RequestBody ArchivesDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
archivesService.update(dto);
return new Result();
}
@DeleteMapping
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
archivesService.delete(ids);
return new Result();
}
@GetMapping("export")
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<ArchivesDTO> list = archivesService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, ArchivesExcel.class);
}
/***
* 导出模板
* @param params
* @param response
* @return void
* @author songyunpeng
* @date 2020/11/1 17:14
*/
@GetMapping("exportMoudle")
public void exportMoudle(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<ArchivesExcel> list = archivesService.exportMoudle();
ExcelUtils.exportExcelToTarget(response, "档案模板", list, ArchivesExcel.class);
}
/***
* 批量导入
* @param file
* @return java.lang.String
* @author songyunpeng
* @date 2020/10/24 14:55
*/
@PostMapping("importExcel")
public Result importExcel(@RequestParam("file") MultipartFile file,String deptId) {
return archivesService.insertArchivesList(file,deptId);
}
}

66
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/controller/EpdcAppArchivesController.java

@ -0,0 +1,66 @@
package com.elink.esua.epdc.modules.archives.controller;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO;
import com.elink.esua.epdc.dto.result.ArchiveDetailResultDTO;
import com.elink.esua.epdc.dto.result.ArchiveResultDTO;
import com.elink.esua.epdc.modules.archives.service.ArchivesService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author songyunpeng
* @Description 小程序端接口
* @create 2020-07-07
*/
@RestController
@RequestMapping("archive")
public class EpdcAppArchivesController {
@Autowired
private ArchivesService archivesService;
/**
* @Description 获取有档案的归属部门列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
@GetMapping("depts")
public Result<List<ArchiveDeptResultDTO>> listArchiveDeptInfo(@RequestBody ArchiveDeptFormDTO formDTO) {
return archivesService.listArchiveDeptInfo(formDTO);
}
/**
* @Description 获取档案列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
@GetMapping("list")
public Result<List<ArchiveResultDTO>> listArchivesInfo(@RequestBody ArchiveFormDTO formDTO) {
return archivesService.listArchivesInfo(formDTO);
}
/**
* @Description 获取档案详情
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
@GetMapping("detail/{id}")
public Result<ArchiveDetailResultDTO> getArchiveDetail(@PathVariable("id") String id) {
return archivesService.getArchiveDetail(id);
}
}

82
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/dao/ArchivesDao.java

@ -0,0 +1,82 @@
/**
* 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.archives.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.ArchivesDTO;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO;
import com.elink.esua.epdc.dto.result.ArchiveDetailResultDTO;
import com.elink.esua.epdc.dto.result.ArchiveResultDTO;
import com.elink.esua.epdc.modules.archives.entity.ArchivesEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
/**
* 档案管理表 档案管理表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-07-06
*/
@Mapper
public interface ArchivesDao extends BaseDao<ArchivesEntity> {
/**
* @Description pc分页列表
* @Author songyunpeng
* @Date 2020/7/6
* @Param [params]
* @return java.util.List<com.elink.esua.epdc.dto.ArchivesDTO>
**/
List<ArchivesDTO> getArchivesPageFromPc(Map<String, Object> params);
/**
* @Description 根据档号和ID判断是否存在
* @Author songyunpeng
* @Date 2020/7/6
* @Param [s, archivesNum]
* @return boolean
**/
boolean getArchivesDTOByArchivesNum(String id, String archivesNum);
/**
* @Description 获取有档案的归属部门列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>
**/
List<ArchiveDeptResultDTO> selectListArchiveDeptInfo(ArchiveDeptFormDTO formDTO);
/**
* @Description 根据部门和搜索内容获取 档案列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return java.util.List<com.elink.esua.epdc.dto.result.ArchiveResultDTO>
**/
List<ArchiveResultDTO> selectListArchiveInfo(ArchiveFormDTO formDTO);
/**
* @Description 获取详情
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return java.util.List<com.elink.esua.epdc.dto.result.ArchiveResultDTO>
**/
ArchiveDetailResultDTO selectArchiveDetailInfo(String id);
}

103
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/entity/ArchivesEntity.java

@ -0,0 +1,103 @@
/**
* 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.archives.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 档案管理表 档案管理表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-07-06
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("epdc_archives")
public class ArchivesEntity extends BaseEpdcEntity {
private static final long serialVersionUID = 1L;
/**
* 档号
*/
private String archivesNum;
/**
* 文号
*/
private String docNum;
/**
* 题名
*/
private String title;
/**
* 归档日期
*/
private String archiveTime;
/**
* 页数
*/
private Integer pageSize;
/**
* 责任人
*/
private String responsible;
/**
* 归属部门
*/
private String dept;
/**
* 归属部门ID
*/
private Long deptId;
/**
* 备注
*/
private String remark;
/**
* 父所有部门名称
*/
private String parentDeptNames;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 所有部门名称
*/
private String allDeptIds;
/**
* 所有部门ID
*/
private String allDeptNames;
}

57
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/excel/ArchivesExcel.java

@ -0,0 +1,57 @@
/**
* 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.archives.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
/**
* 档案管理表 档案管理表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-07-06
*/
@Data
public class ArchivesExcel {
@Excel(name = "序号")
private String num;
@Excel(name = "档号")
private String archivesNum;
@Excel(name = "文号")
private String docNum;
@Excel(name = "责任人")
private String responsible;
@Excel(name = "题名")
private String title;
@Excel(name = "日期")
private String archiveTime;
@Excel(name = "页数")
private Integer pageSize;
@Excel(name = "备注")
private String remark;
}

47
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/redis/ArchivesRedis.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.archives.redis;
import com.elink.esua.epdc.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 档案管理表 档案管理表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-07-06
*/
@Component
public class ArchivesRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

151
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/service/ArchivesService.java

@ -0,0 +1,151 @@
/**
* 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.archives.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.ArchivesDTO;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO;
import com.elink.esua.epdc.dto.result.ArchiveDetailResultDTO;
import com.elink.esua.epdc.dto.result.ArchiveResultDTO;
import com.elink.esua.epdc.modules.archives.entity.ArchivesEntity;
import com.elink.esua.epdc.modules.archives.excel.ArchivesExcel;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
import java.util.Map;
/**
* 档案管理表 档案管理表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-07-06
*/
public interface ArchivesService extends BaseService<ArchivesEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<ArchivesDTO>
* @author generator
* @date 2020-07-06
*/
PageData<ArchivesDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<ArchivesDTO>
* @author generator
* @date 2020-07-06
*/
List<ArchivesDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return ArchivesDTO
* @author generator
* @date 2020-07-06
*/
ArchivesDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2020-07-06
*/
void save(ArchivesDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2020-07-06
*/
void update(ArchivesDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2020-07-06
*/
void delete(String[] ids);
/**
* @Description 前端分页
* @Author songyunpeng
* @Date 2020/7/6
* @Param [params]
* @return com.elink.esua.epdc.commons.tools.page.PageData<com.elink.esua.epdc.dto.ArchivesDTO>
**/
PageData<ArchivesDTO> listPage(Map<String, Object> params);
/**
* @Description 导出模板
* @Author songyunpeng
* @Date 2020/7/6
* @Param []
* @return java.util.List<com.elink.esua.epdc.dto.ArchivesDTO>
**/
List<ArchivesExcel> exportMoudle();
/**
* @Description 批量导入
* @Author songyunpeng
* @Date 2020/7/6
* @Param [file]
* @return com.elink.esua.epdc.commons.tools.utils.Result
**/
Result insertArchivesList(MultipartFile file, String deptId);
/**
* @Description 获取有档案的归属部门列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
Result<List<ArchiveDeptResultDTO>> listArchiveDeptInfo(ArchiveDeptFormDTO formDTO);
/**
* @Description 获取档案列表
* @Author songyunpeng
* @Date 2020/7/7
* @Param [formDTO]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO>>
**/
Result<List<ArchiveResultDTO>> listArchivesInfo(ArchiveFormDTO formDTO);
/**
* @Description 获取档案详情
* @Author songyunpeng
* @Date 2020/7/7
* @Param [id]
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.result.ArchiveDetailResultDTO>
**/
Result<ArchiveDetailResultDTO> getArchiveDetail(String id);
}

347
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/archives/service/impl/ArchivesServiceImpl.java

@ -0,0 +1,347 @@
/**
* 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.archives.service.impl;
import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ImportParams;
import com.alibaba.fastjson.JSON;
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.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.exception.RenException;
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.utils.Result;
import com.elink.esua.epdc.config.StreamUtils;
import com.elink.esua.epdc.dto.ArchivesDTO;
import com.elink.esua.epdc.dto.EpdcArchivesErroyResultDTO;
import com.elink.esua.epdc.dto.ParentAndAllDeptDTO;
import com.elink.esua.epdc.dto.form.ArchiveDeptFormDTO;
import com.elink.esua.epdc.dto.form.ArchiveFormDTO;
import com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO;
import com.elink.esua.epdc.dto.result.ArchiveDetailResultDTO;
import com.elink.esua.epdc.dto.result.ArchiveResultDTO;
import com.elink.esua.epdc.modules.archives.dao.ArchivesDao;
import com.elink.esua.epdc.modules.archives.entity.ArchivesEntity;
import com.elink.esua.epdc.modules.archives.excel.ArchivesExcel;
import com.elink.esua.epdc.modules.archives.redis.ArchivesRedis;
import com.elink.esua.epdc.modules.archives.service.ArchivesService;
import com.elink.esua.epdc.modules.feign.AdminFeignClient;
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.web.multipart.MultipartFile;
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* 档案管理表 档案管理表
*
* @author elink elink@elink-cn.com
* @since v1.0.0 2020-07-06
*/
@Service
public class ArchivesServiceImpl extends BaseServiceImpl<ArchivesDao, ArchivesEntity> implements ArchivesService {
@Autowired
private ArchivesRedis archivesRedis;
@Autowired
private AdminFeignClient adminFeignClient;
@Override
public PageData<ArchivesDTO> page(Map<String, Object> params) {
IPage<ArchivesEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, ArchivesDTO.class);
}
@Override
public List<ArchivesDTO> list(Map<String, Object> params) {
List<ArchivesEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, ArchivesDTO.class);
}
private QueryWrapper<ArchivesEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<ArchivesEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public ArchivesDTO get(String id) {
ArchivesEntity entity = baseDao.selectById(id);
ArchivesDTO archivesDTO = ConvertUtils.sourceToTarget(entity, ArchivesDTO.class);
if(archivesDTO.getAllDeptIds().indexOf(",")!=-1){
archivesDTO.setAllDeptIdsShow(Arrays.asList(entity.getAllDeptIds().split(",")));
}
return archivesDTO;
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(ArchivesDTO dto) {
//获取部门信息
if(dto.getDeptId() == null){
throw new RenException("归属部门不能为空");
}
Result<ParentAndAllDeptDTO> parentAndAllDept = adminFeignClient.getParentAndAllDept(dto.getDeptId());
if(!parentAndAllDept.success() || parentAndAllDept.getData() == null){
throw new RenException("获取归属部门信息失败");
}
//判断档号
if(baseDao.getArchivesDTOByArchivesNum("",dto.getArchivesNum())){
throw new RenException("档号不能重复");
}
//判断日期
if(dto.getArchiveTime().length()!=4 && dto.getArchiveTime().length()!=6 && dto.getArchiveTime().length()!=8) {
throw new RenException("日期格式错误");
}
ParentAndAllDeptDTO parentAndAllDeptDTO = parentAndAllDept.getData();
dto.setAllDeptIds(parentAndAllDeptDTO.getAllDeptIds());
dto.setAllDeptNames(parentAndAllDeptDTO.getAllDeptNames());
dto.setParentDeptIds(parentAndAllDeptDTO.getParentDeptIds());
dto.setParentDeptNames(parentAndAllDeptDTO.getParentDeptNames());
dto.setDept(parentAndAllDeptDTO.getGrid());
ArchivesEntity entity = ConvertUtils.sourceToTarget(dto, ArchivesEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(ArchivesDTO dto) {
//获取部门信息
if(dto.getDeptId() == null){
throw new RenException("归属部门不能为空");
}
Result<ParentAndAllDeptDTO> parentAndAllDept = adminFeignClient.getParentAndAllDept(dto.getDeptId());
if(!parentAndAllDept.success() || parentAndAllDept.getData() == null){
throw new RenException("获取归属部门信息失败");
}
//判断档号
if(baseDao.getArchivesDTOByArchivesNum(dto.getId(),dto.getArchivesNum())){
throw new RenException("档号不能重复");
}
//判断日期
if(dto.getArchiveTime().length()!=4 && dto.getArchiveTime().length()!=6 && dto.getArchiveTime().length()!=8) {
throw new RenException("日期格式错误");
}
ParentAndAllDeptDTO parentAndAllDeptDTO = parentAndAllDept.getData();
dto.setAllDeptIds(parentAndAllDeptDTO.getAllDeptIds());
dto.setAllDeptNames(parentAndAllDeptDTO.getAllDeptNames());
dto.setParentDeptIds(parentAndAllDeptDTO.getParentDeptIds());
dto.setParentDeptNames(parentAndAllDeptDTO.getParentDeptNames());
dto.setDept(parentAndAllDeptDTO.getGrid());
ArchivesEntity entity = ConvertUtils.sourceToTarget(dto, ArchivesEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public PageData<ArchivesDTO> listPage(Map<String, Object> params) {
//处理param
IPage<ArchivesDTO> page = getPage(params);
List<ArchivesDTO> list = baseDao.getArchivesPageFromPc(params);
return new PageData<>(list, page.getTotal());
}
@Override
public List<ArchivesExcel> exportMoudle() {
List<ArchivesExcel> archivesDTOArrayList = new ArrayList<>();
ArchivesExcel archivesDTO = new ArchivesExcel();
archivesDTO.setArchivesNum("XXX");
archivesDTO.setNum("1");
archivesDTO.setDocNum("XXX");
archivesDTO.setTitle("XXX");
archivesDTO.setArchiveTime("20200102");
archivesDTO.setPageSize(1);
archivesDTO.setRemark("XXX");
archivesDTO.setResponsible("XXX");
archivesDTOArrayList.add(archivesDTO);
return archivesDTOArrayList;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Result insertArchivesList(MultipartFile file, String deptId) {
if(StringUtils.isBlank(deptId)){
throw new RenException("归属部门不能为空");
}
Result<ParentAndAllDeptDTO> parentAndAllDept = adminFeignClient.getParentAndAllDept(Long.parseLong(deptId));
if(!parentAndAllDept.success() || parentAndAllDept.getData() == null){
throw new RenException("获取归属部门信息失败");
}
ParentAndAllDeptDTO parentAndAllDeptDTO = parentAndAllDept.getData();
File f = StreamUtils.conversionFile(file);
ImportParams importParams = new ImportParams();
try {
List<ArchivesExcel> archivesExcelList = ExcelImportUtil.importExcel(f, ArchivesExcel.class, importParams);
// 校验数据
List<EpdcArchivesErroyResultDTO> epdcArchivesErroyResultDTOS = this.checkExcel(archivesExcelList);
if(epdcArchivesErroyResultDTOS.size()>0){
return new Result().ok(epdcArchivesErroyResultDTOS);
}
saveList(archivesExcelList,parentAndAllDeptDTO);
for (ArchivesExcel archivesExcel : archivesExcelList) {
System.out.println("从Excel导入数据到数据库的详细为 :{}" + JSON.toJSONString(archivesExcel));
}
System.out.println("从Excel导入数据一共 {} 行 " + archivesExcelList.size());
} catch (Exception e1) {
throw new RuntimeException("导入失败:{}" + e1.getMessage());
}
return new Result();
}
@Override
public Result<List<ArchiveDeptResultDTO>> listArchiveDeptInfo(ArchiveDeptFormDTO formDTO) {
int pageIndex = (formDTO.getPageIndex() - NumConstant.ONE) * formDTO.getPageSize();
formDTO.setPageIndex(pageIndex);
List<ArchiveDeptResultDTO> listArchiveDeptInfo = this.baseDao.selectListArchiveDeptInfo(formDTO);
return new Result().ok(listArchiveDeptInfo);
}
@Override
public Result<List<ArchiveResultDTO>> listArchivesInfo(ArchiveFormDTO formDTO) {
int pageIndex = (formDTO.getPageIndex() - NumConstant.ONE) * formDTO.getPageSize();
formDTO.setPageIndex(pageIndex);
List<ArchiveResultDTO> listArchiveInfo = this.baseDao.selectListArchiveInfo(formDTO);
return new Result().ok(listArchiveInfo);
}
@Override
public Result<ArchiveDetailResultDTO> getArchiveDetail(String id) {
ArchiveDetailResultDTO archiveDetailResultDTO = this.baseDao.selectArchiveDetailInfo(id);
return new Result<ArchiveDetailResultDTO>().ok(archiveDetailResultDTO);
}
/***
* 批量添加档案
* @return java.lang.String
* @author songyunpeng
* @date 2020/7/6 10:25
*/
private void saveList(List<ArchivesExcel> partyList, ParentAndAllDeptDTO parentAndAllDeptDTO) {
List<ArchivesEntity> archivesEntityList = new ArrayList<>();
for(ArchivesExcel archivesExcel : partyList){
ArchivesEntity archivesEntity = ConvertUtils.sourceToTarget(archivesExcel, ArchivesEntity.class);
if(archivesExcel.getArchiveTime().length()!=4 && archivesExcel.getArchiveTime().length()!=6 && archivesExcel.getArchiveTime().length()!=8) {
throw new RenException("日期格式错误");
}
archivesEntity.setAllDeptIds(parentAndAllDeptDTO.getAllDeptIds());
archivesEntity.setAllDeptNames(parentAndAllDeptDTO.getAllDeptNames());
archivesEntity.setParentDeptIds(parentAndAllDeptDTO.getParentDeptIds());
archivesEntity.setParentDeptNames(parentAndAllDeptDTO.getParentDeptNames());
archivesEntity.setDept(parentAndAllDeptDTO.getGrid());
archivesEntity.setDeptId(parentAndAllDeptDTO.getGridId());
archivesEntityList.add(archivesEntity);
}
insertBatch(archivesEntityList);
}
/***
* 校验excel表格数据
* @return java.lang.String
* @author songyunpeng
* @date 2020/7/6 10:25
*/
private List<EpdcArchivesErroyResultDTO> checkExcel(List<ArchivesExcel> archivesList) {
List<ArchivesEntity> archivesEntityList = baseDao.selectList(new QueryWrapper<ArchivesEntity>());
List<EpdcArchivesErroyResultDTO> errorLineinfoList=new ArrayList<>();
EpdcArchivesErroyResultDTO errorLineinfoDto;
for (int i = 0; i < archivesList.size(); i++) {
ArchivesExcel archivesExcel = archivesList.get(i);
//档号
String archivesNum = archivesExcel.getArchivesNum();
//题名
String title = archivesExcel.getTitle();
//归档日期
String archiveTime = archivesExcel.getArchiveTime();
//页数
Integer pageSize = archivesExcel.getPageSize();
//责任人
String responsible=archivesExcel.getResponsible();
if (StringUtils.isBlank(archivesNum)) {
errorLineinfoDto=new EpdcArchivesErroyResultDTO();
errorLineinfoDto.setErroLine((i+2)+"");
errorLineinfoDto.setErrorInfo("档号为空");
errorLineinfoList.add(errorLineinfoDto);
}
if (StringUtils.isBlank(responsible)) {
errorLineinfoDto=new EpdcArchivesErroyResultDTO();
errorLineinfoDto.setErroLine((i+2)+"");
errorLineinfoDto.setErrorInfo("责任人为空");
errorLineinfoList.add(errorLineinfoDto);
}
if (StringUtils.isBlank(title)) {
errorLineinfoDto=new EpdcArchivesErroyResultDTO();
errorLineinfoDto.setErroLine((i+2)+"");
errorLineinfoDto.setErrorInfo("题名为空");
errorLineinfoList.add(errorLineinfoDto);
}
if(StringUtils.isBlank(archiveTime)){
errorLineinfoDto=new EpdcArchivesErroyResultDTO();
errorLineinfoDto.setErroLine((i+2)+"");
errorLineinfoDto.setErrorInfo("日期为空");
errorLineinfoList.add(errorLineinfoDto);
}
if(StringUtils.isNotBlank(archiveTime) && archiveTime.length()!=4 && archiveTime.length()!=6 && archiveTime.length()!=8){
errorLineinfoDto=new EpdcArchivesErroyResultDTO();
errorLineinfoDto.setErroLine((i+2)+"");
errorLineinfoDto.setErrorInfo("日期格式不正确");
errorLineinfoList.add(errorLineinfoDto);
}
if (pageSize == null) {
errorLineinfoDto=new EpdcArchivesErroyResultDTO();
errorLineinfoDto.setErroLine((i+2)+"");
errorLineinfoDto.setErrorInfo("页数为空");
errorLineinfoList.add(errorLineinfoDto);
}
for (ArchivesEntity item:archivesEntityList) {
if(StringUtils.isNotBlank(item.getArchivesNum())&&item.getArchivesNum().equals(archivesNum)){
errorLineinfoDto=new EpdcArchivesErroyResultDTO();
errorLineinfoDto.setErroLine((i+2)+"");
errorLineinfoDto.setErrorInfo("档号已存在");
errorLineinfoList.add(errorLineinfoDto);
}
}
}
return errorLineinfoList;
}
}

17
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/dept/feign/AdminFeignClient.java → esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/feign/AdminFeignClient.java

@ -1,9 +1,10 @@
package com.elink.esua.epdc.modules.dept.feign;
package com.elink.esua.epdc.modules.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.ParentAndAllDeptDTO;
import com.elink.esua.epdc.dto.SysSimpleDictDTO;
import com.elink.esua.epdc.modules.dept.feign.fallback.AdminFeignClientFallback;
import com.elink.esua.epdc.modules.feign.fallback.AdminFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@ -26,5 +27,15 @@ public interface AdminFeignClient {
* @Date 18:40 2020-05-19
*/
@GetMapping("/sys/dict/listSimple/{dictType}")
public Result<List<SysSimpleDictDTO>> getListSimpleByDictType(@PathVariable("dictType") String dictType);
Result<List<SysSimpleDictDTO>> getListSimpleByDictType(@PathVariable("dictType") String dictType);
/**
* 根据部门ID获取所有上级机构名称和ID拼接
*
* @param deptId
* @return com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.CompleteDeptDTO>
* @author lipengfei
* @date 2019/11/27 09:31
*/
@GetMapping("sys/dept/getParentAndAllDept/{deptId}")
Result<ParentAndAllDeptDTO> getParentAndAllDept(@PathVariable("deptId") Long deptId);
}

10
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/dept/feign/fallback/AdminFeignClientFallback.java → esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/feign/fallback/AdminFeignClientFallback.java

@ -1,10 +1,11 @@
package com.elink.esua.epdc.modules.dept.feign.fallback;
package com.elink.esua.epdc.modules.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.ParentAndAllDeptDTO;
import com.elink.esua.epdc.dto.SysSimpleDictDTO;
import com.elink.esua.epdc.modules.dept.feign.AdminFeignClient;
import com.elink.esua.epdc.modules.feign.AdminFeignClient;
import org.springframework.stereotype.Component;
import java.util.List;
@ -20,4 +21,9 @@ public class AdminFeignClientFallback implements AdminFeignClient {
public Result<List<SysSimpleDictDTO>> getListSimpleByDictType(String dictType) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getListSimpleByDictType", dictType);
}
@Override
public Result<ParentAndAllDeptDTO> getParentAndAllDept(Long deptId) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "getParentAndAllDept", deptId);
}
}

17
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/controller/EpdcAppModuleController.java

@ -6,6 +6,7 @@ import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.modules.module.service.ModuleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@ -32,8 +33,24 @@ public class EpdcAppModuleController {
* @Author zhangyong
* @Date 10:42 2020-05-20
**/
@Deprecated
@GetMapping("list")
public Result<List<EpdcModuleResultDTO>> listModule() {
return moduleService.listModule();
}
/**
*
* 根据模块类别获取模块
*
* @params []
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcModuleResultDTO>>
* @author liuchuang
* @since 2020/7/15 17:33
*/
@GetMapping("list/{moduleCategory}")
public Result<List<EpdcModuleResultDTO>> getModuleByModuleCategory(@PathVariable("moduleCategory") String moduleCategory) {
List<EpdcModuleResultDTO> data = moduleService.listOfModuleByModuleCategory(moduleCategory);
return new Result<List<EpdcModuleResultDTO>>().ok(data);
}
}

16
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/controller/ModuleController.java

@ -27,6 +27,7 @@ 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.ModuleDTO;
import com.elink.esua.epdc.dto.SysSimpleDictDTO;
import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.modules.module.excel.ModuleExcel;
import com.elink.esua.epdc.modules.module.service.ModuleService;
import org.springframework.beans.factory.annotation.Autowired;
@ -102,4 +103,19 @@ public class ModuleController {
public Result<List<SysSimpleDictDTO>> getListSimpleByDictType(@PathVariable("dictType") String dictType) {
return moduleService.getListSimpleByDictType(dictType);
}
/**
*
* 获取消息通知分类
*
* @params []
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.ModuleDTO>>
* @author liuchuang
* @since 2020/7/15 16:49
*/
@GetMapping("noticeCategory")
public Result<List<EpdcModuleResultDTO>> getNoticeCategory() {
List<EpdcModuleResultDTO> data = moduleService.listOfModuleByModuleCategory(null);
return new Result<List<EpdcModuleResultDTO>>().ok(data);
}
}

19
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/dao/ModuleDao.java

@ -22,6 +22,7 @@ import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.dto.ModuleDTO;
import com.elink.esua.epdc.modules.module.entity.ModuleEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
@ -54,13 +55,17 @@ public interface ModuleDao extends BaseDao<ModuleEntity> {
**/
int getModuleCodeCount(String moduleCode);
/*
* 移动端获取 了解锦水-模块管理接口
@Deprecated
List<EpdcModuleResultDTO> selectlistModule();
/**
*
* 通知模块类别
*
* @param
* @params []
* @return java.util.List<com.elink.esua.epdc.dto.result.EpdcModuleResultDTO>
* @Author zhangyong
* @Date 10:42 2020-05-20
**/
List<EpdcModuleResultDTO> selectListModule();
* @author liuchuang
* @since 2020/7/15 17:02
*/
List<EpdcModuleResultDTO> selectListModuleByModuleCategory(@Param("moduleCategory") String moduleCategory);
}

5
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/entity/ModuleEntity.java

@ -68,4 +68,9 @@ public class ModuleEntity extends BaseEpdcEntity {
*/
private String remark;
/**
* 模块分类
*/
private String moduleCategory;
}

18
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/service/ModuleService.java

@ -105,13 +105,17 @@ public interface ModuleService extends BaseService<ModuleEntity> {
**/
Result<List<SysSimpleDictDTO>> getListSimpleByDictType(String dictType);
/*
* 移动端获取 了解锦水-模块管理接口
@Deprecated
Result<List<EpdcModuleResultDTO>> listModule();
/**
*
* 通知模块类别
*
* @param
* @params [moduleCategory]
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.result.EpdcModuleResultDTO>>
* @Author zhangyong
* @Date 10:42 2020-05-20
**/
Result<List<EpdcModuleResultDTO>> listModule();
* @author liuchuang
* @since 2020/7/15 17:09
*/
List<EpdcModuleResultDTO> listOfModuleByModuleCategory(String moduleCategory);
}

15
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/module/service/impl/ModuleServiceImpl.java

@ -20,14 +20,14 @@ package com.elink.esua.epdc.modules.module.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.constant.FieldConstant;
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.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.dto.ModuleDTO;
import com.elink.esua.epdc.dto.SysSimpleDictDTO;
import com.elink.esua.epdc.modules.dept.feign.AdminFeignClient;
import com.elink.esua.epdc.dto.result.EpdcModuleResultDTO;
import com.elink.esua.epdc.modules.feign.AdminFeignClient;
import com.elink.esua.epdc.modules.module.dao.ModuleDao;
import com.elink.esua.epdc.modules.module.entity.ModuleEntity;
import com.elink.esua.epdc.modules.module.redis.ModuleRedis;
@ -119,8 +119,13 @@ public class ModuleServiceImpl extends BaseServiceImpl<ModuleDao, ModuleEntity>
@Override
public Result<List<EpdcModuleResultDTO>> listModule() {
List<EpdcModuleResultDTO> data = baseDao.selectListModule();
return new Result().ok(data);
List<EpdcModuleResultDTO> data = baseDao.selectlistModule();
return new Result<List<EpdcModuleResultDTO>>().ok(data);
}
@Override
public List<EpdcModuleResultDTO> listOfModuleByModuleCategory(String moduleCategory) {
return baseDao.selectListModuleByModuleCategory(moduleCategory);
}
}

112
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/archives/ArchivesDao.xml

@ -0,0 +1,112 @@
<?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.archives.dao.ArchivesDao">
<resultMap type="com.elink.esua.epdc.modules.archives.entity.ArchivesEntity" id="archivesMap">
<result property="id" column="ID"/>
<result property="archivesNum" column="ARCHIVES_NUM"/>
<result property="docNum" column="DOC_NUM"/>
<result property="title" column="TITLE"/>
<result property="archiveTime" column="ARCHIVE_TIME"/>
<result property="pageSize" column="PAGE_SIZE"/>
<result property="responsible" column="RESPONSIBLE"/>
<result property="dept" column="DEPT"/>
<result property="deptId" column="DEPT_ID"/>
<result property="remark" column="REMARK"/>
<result property="parentDeptNames" column="PARENT_DEPT_NAMES"/>
<result property="parentDeptIds" column="PARENT_DEPT_IDS"/>
<result property="allDeptIds" column="ALL_DEPT_IDS"/>
<result property="allDeptNames" column="ALL_DEPT_NAMES"/>
<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>
<select id="getArchivesPageFromPc" resultType="com.elink.esua.epdc.dto.ArchivesDTO">
select
ID,
ARCHIVES_NUM,
DOC_NUM,
TITLE,
ARCHIVE_TIME,
PAGE_SIZE,
RESPONSIBLE,
DEPT,
DEPT_ID,
REMARK,
PARENT_DEPT_NAMES,
PARENT_DEPT_IDS,
ALL_DEPT_IDS,
ALL_DEPT_NAMES,
DEL_FLAG,
REVISION,
CREATED_BY,
CREATED_TIME,
UPDATED_BY,
UPDATED_TIME
from epdc_archives ea
WHERE
ea.DEL_FLAG = '0'
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
AND ea.ARCHIVE_TIME BETWEEN #{startTime} AND #{endTime}
</if>
<if test="deptId != null and deptId != ''">
AND find_in_set(#{deptId},ea.ALL_DEPT_IDS)
</if>
<if test="title != null and title != ''">
AND ea.TITLE like concat('%', #{title}, '%')
</if>
<if test="responsible != null and responsible != ''">
AND ea.RESPONSIBLE like concat('%', #{responsible}, '%')
</if>
order by CREATED_TIME desc,ARCHIVE_TIME desc
</select>
<select id="getArchivesDTOByArchivesNum" resultType="java.lang.Boolean">
select count(id) from epdc_archives where DEL_FLAG ='0'
<if test="id!=null and id!=''">
and ID != #{id}
</if>
and ARCHIVES_NUM = #{archivesNum}
</select>
<select id="selectListArchiveDeptInfo" resultType="com.elink.esua.epdc.dto.result.ArchiveDeptResultDTO">
select DEPT,DEPT_ID from epdc_archives where DEL_FLAG = '0' group by DEPT_ID LIMIT #{pageIndex},#{pageSize}
</select>
<select id="selectListArchiveInfo" resultType="com.elink.esua.epdc.dto.result.ArchiveResultDTO">
select
ID,ARCHIVES_NUM,TITLE,ARCHIVE_TIME
from epdc_archives
where DEL_FLAG = '0'
<if test="searchContent != null and searchContent != ''">
AND title like concat('%', #{searchContent}, '%')
</if>
<if test="deptId != null and deptId != ''">
AND DEPT_ID = #{deptId}
</if>
order by ARCHIVE_TIME desc
LIMIT #{pageIndex},#{pageSize}
</select>
<select id="selectArchiveDetailInfo" resultType="com.elink.esua.epdc.dto.result.ArchiveDetailResultDTO">
select
ID,
ARCHIVES_NUM,
DOC_NUM,
TITLE,
ARCHIVE_TIME,
PAGE_SIZE,
RESPONSIBLE,
REMARK
from epdc_archives
WHERE
DEL_FLAG = '0' and id = #{id}
</select>
</mapper>

23
esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/module/ModuleDao.xml

@ -27,7 +27,8 @@
IMG_URL imgUrl,
SORT sort,
ENABLE_FLAG enableFlag,
REMARK remark
REMARK remark,
MODULE_CATEGORY moduleCategory
FROM
epdc_module
WHERE DEL_FLAG = 0
@ -47,7 +48,22 @@
AND DEL_FLAG = 0
</select>
<select id="selectListModule" resultType="com.elink.esua.epdc.dto.result.EpdcModuleResultDTO">
<select id="selectlistModule" resultType="com.elink.esua.epdc.dto.result.EpdcModuleResultDTO">
SELECT
ID id,
NAME `name`,
MODULE_CODE moduleCode,
IMG_URL imgUrl,
SORT sort
FROM
epdc_module
WHERE DEL_FLAG = 0
AND ENABLE_FLAG = 1
AND MODULE_CODE IN('notice_impression', 'notice_taste', 'module_hardcore', 'notice_warning', 'module_file')
ORDER BY SORT,CREATED_TIME
</select>
<select id="selectListModuleByModuleCategory" resultType="com.elink.esua.epdc.dto.result.EpdcModuleResultDTO">
SELECT
ID id,
NAME `name`,
@ -58,6 +74,9 @@
epdc_module
WHERE DEL_FLAG = 0
AND ENABLE_FLAG = 1
<if test="moduleCategory != null and moduleCategory.trim() != ''">
AND MODULE_CATEGORY = #{moduleCategory}
</if>
ORDER BY SORT,CREATED_TIME
</select>
</mapper>

4
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/EventIssueItemState.java

@ -18,6 +18,10 @@ public interface EventIssueItemState {
* 事件-审核通过
*/
int EVENT_REVIEW_PASS = 4;
/**
* 事件-转项目
*/
int EVENT_REVIEW_TO_ITEM = 6;
/**
* 议题-审核通过

15
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppWorkEventsController.java

@ -1,11 +1,13 @@
package com.elink.esua.epdc.modules.events.controller;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.events.EpdcEventsDetailDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.modules.events.service.EpdcEventsService;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -37,4 +39,17 @@ public class EpdcAppWorkEventsController {
ValidatorUtils.validateEntity(dto);
return epdcEventsService.eventReview(dto);
}
/**
* 事件通过
* @param dto
* @return
*/
@PostMapping("reviewPass")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_AUDIT_PASS,referenceId = "#{dto.getId}",userId = "#{dto.getUserId}")
public Result<String> reviewPass(@RequestBody EpdcEventsReviewFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return epdcEventsService.eventReview(dto);
}
}

2
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcEventsController.java

@ -128,7 +128,7 @@ public class EpdcEventsController {
*/
@PostMapping("reviewPass")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_AUDIT_PASS,referenceId = "#{dto.getId}",userId = "#{dto.getUserId}")
public Result reviewPass(@RequestBody EpdcEventsReviewFormDTO dto) {
public Result<String> reviewPass(@RequestBody EpdcEventsReviewFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return epdcEventsService.eventReview(dto);
}

2
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/EpdcEventsService.java

@ -86,7 +86,7 @@ public interface EpdcEventsService extends BaseService<EpdcEventsEntity> {
* @Author: liuchuang
* @Date: 2019/9/5 9:35
*/
Result eventReview(EpdcEventsReviewFormDTO dto);
Result<String> eventReview(EpdcEventsReviewFormDTO dto);
/**
* 已驳回事件列表

8
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java

@ -184,7 +184,7 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
@Override
@Transactional(rollbackFor = Exception.class)
public Result eventReview(EpdcEventsReviewFormDTO dto) {
public Result<String> eventReview(EpdcEventsReviewFormDTO dto) {
if(EventIssueItemState.EVENT_REVIEW_PASS == dto.getEventState()
&& (dto.getCategoryId() == null
|| "".equals(dto.getCategoryId()))) {
@ -220,10 +220,12 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
informationFormDTO.setBusinessId(eventsEntity.getId());
// 审核通过
if (EventIssueItemState.EVENT_REVIEW_PASS == dto.getEventState()) {
String issueId = "";
if (EventIssueItemState.EVENT_REVIEW_PASS == dto.getEventState() || EventIssueItemState.EVENT_REVIEW_TO_ITEM == dto.getEventState()) {
// 事件插入议题表
IssueEntity issueEntity = initIssueEntity(selectById(dto.getId()));
issueService.insert(issueEntity);
issueId = issueEntity.getId();
// 插入议题处理表一条审核通过记录
IssueHandleEntity issueHandleEntity = new IssueHandleEntity();
issueHandleEntity.setIssueId(issueEntity.getId());
@ -258,7 +260,7 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
List<String> list = new ArrayList<>();
list.add(eventsEntity.getMobile());
this.issueSmsNotification(dto, list);
return new Result();
return new Result().ok(issueId);
}
/**

18
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/EpdcAppWorkIssueController.java

@ -1,6 +1,7 @@
package com.elink.esua.epdc.modules.issue.controller;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.enums.BehaviorEnum;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.category.EventCategoryDTO;
@ -8,6 +9,7 @@ import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
import com.elink.esua.epdc.modules.category.service.EventCategoryService;
import com.elink.esua.epdc.modules.issue.service.IssueService;
import com.elink.esua.epdc.pointcommons.tools.annotation.RecordUserBehavior;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -106,4 +108,20 @@ public class EpdcAppWorkIssueController {
return issueService.saveIssueHandleResult(dto);
}
/**
* 议题待处理提交
* @Params: [dto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: liuchuang
* @Date: 2019/9/6 11:26
*/
@PostMapping("handleSubmitToItem")
@RecordUserBehavior(behavior = BehaviorEnum.ISSUE_TO_PROJECT,referenceId = "#{dto.getId}",userId = "#{dto.getUserId}")
public Result handleSubmitToItem(@RequestBody IssueWaitHandleSubmitFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return issueService.saveIssueHandleResult(dto);
}
}

5
esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/NoticeDTO.java

@ -144,4 +144,9 @@ public class NoticeDTO implements Serializable {
* 锦水-消息通知分类
*/
private String noticeCategory;
/**
* 联系方式
*/
private String mobile;
}

5
esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcNoticeDetailResultDTO.java

@ -48,4 +48,9 @@ public class EpdcNoticeDetailResultDTO implements Serializable {
* 首图
*/
private String imgUrl;
/**
* 联系电话
*/
private String mobile;
}

5
esua-epdc/epdc-module/epdc-news/epdc-news-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcNoticeListResultDTO.java

@ -48,4 +48,9 @@ public class EpdcNoticeListResultDTO implements Serializable {
* 通知内容
*/
private String noticeContent;
/**
* 联系电话
*/
private String mobile;
}

5
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/entity/NoticeEntity.java

@ -111,4 +111,9 @@ public class NoticeEntity extends BaseEpdcEntity {
* 锦水-消息通知分类
*/
private String noticeCategory;
/**
* 联系方式
*/
private String mobile;
}

13
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/java/com/elink/esua/epdc/service/impl/NoticeServiceImpl.java

@ -46,7 +46,6 @@ import com.elink.esua.epdc.rocketmq.dto.OrganizationModifyDTO;
import com.elink.esua.epdc.service.NoticeDepartmentService;
import com.elink.esua.epdc.service.NoticeService;
import com.elink.esua.epdc.util.NewsUtils;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -249,8 +248,16 @@ public class NoticeServiceImpl extends BaseServiceImpl<NoticeDao, NoticeEntity>
@Override
public Result<EpdcNoticeDetailResultDTO> getNoticeDetailById(String noticeId) {
EpdcNoticeDetailResultDTO dto = this.baseDao.selectOneAppNotice(noticeId);
dto.setNoticeContent("<div style=\"font-size:19px;line-height:31px\">" + dto.getNoticeContent() + "</div>");
return new Result().ok(dto);
// 浏览数+1
if (null != dto) {
dto.setReadingAmount(dto.getReadingAmount() + NumConstant.ONE);
NoticeEntity entity = new NoticeEntity();
entity.setId(noticeId);
entity.setReadingAmount(dto.getReadingAmount());
updateById(entity);
dto.setNoticeContent("<div style=\"font-size:19px;line-height:31px\">" + dto.getNoticeContent() + "</div>");
}
return new Result<EpdcNoticeDetailResultDTO>().ok(dto);
}
@Override

9
esua-epdc/epdc-module/epdc-news/epdc-news-server/src/main/resources/mapper/NoticeDao.xml

@ -33,7 +33,8 @@
n.READING_AMOUNT AS readingAmount,
n.RELEASE_TIME AS noticeTime,
SUBSTRING_INDEX(n.ALL_DEPT_NAMES,'-',-1) AS deptName,
n.NOTICE_IMAGE_URL imgUrl
n.NOTICE_IMAGE_URL imgUrl,
n.MOBILE mobile
FROM
epdc_notice n
WHERE
@ -58,7 +59,8 @@
updated_by = #{updatedBy},
updated_time = #{updatedTime},
dept_id=#{deptId},
dept_name=#{deptName}
dept_name=#{deptName},
mobile=#{mobile}
WHERE id = #{id} AND del_flag = '0'
</update>
@ -109,7 +111,8 @@
en.RELEASE_TIME AS noticeTime,
SUBSTRING_INDEX(en.ALL_DEPT_NAMES,'-',-1) AS deptName,
en.NOTICE_IMAGE_URL imgUrl,
en.NOTICE_CONTENT noticeContent
en.NOTICE_CONTENT noticeContent,
en.MOBILE as mobile
FROM
epdc_notice en
RIGHT JOIN epdc_notice_department nd ON en.ID = nd.NOTICE_ID

2
esua-epdc/epdc-module/epdc-oss/epdc-oss-server/pom.xml

@ -199,7 +199,7 @@
<nacos.register-enabled>true</nacos.register-enabled>
<nacos.server-addr>47.104.224.45:8848</nacos.server-addr>
<nacos.ip></nacos.ip>
<nacos.ip>47.104.224.45</nacos.ip>
<nacos.namespace>fa5bf520-09c1-410c-a876-28e98c0534d3</nacos.namespace>
<fastdfs.server-addr></fastdfs.server-addr>

2
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml

@ -781,7 +781,7 @@
FROM(
SELECT
u.ID userId,
u.NICKNAME nickName,
u.REAL_NAME nickName,
CASE
WHEN IFNULL(u.POINTS_TOTLE,0) &lt;= 0 THEN 0
ELSE

Loading…
Cancel
Save