Browse Source

项目处理进度接口开发

dev
李鹏飞 6 years ago
parent
commit
2c47a1a3e7
  1. 16
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkItemController.java
  2. 12
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkItemFeignClient.java
  3. 4
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkItemFeignClientFallback.java
  4. 14
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkItemService.java
  5. 4
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkItemServiceImpl.java
  6. 3
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ImageConstant.java
  7. 10
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemHandleSubmitFormDTO.java
  8. 16
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemProcessFormDTO.java
  9. 9
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemHandleProgressResultDTO.java
  10. 12
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/WorkItemController.java
  11. 9
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java
  12. 9
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java
  13. 20
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java
  14. 43
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml

16
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkItemController.java

@ -5,10 +5,7 @@ import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.SysDeptDTO;
import com.elink.esua.epdc.dto.item.ItemEvaluateDeptDTO;
import com.elink.esua.epdc.dto.item.form.EvaluationFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemHandleSubmitFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemStatisticsFormDTO;
import com.elink.esua.epdc.dto.item.form.*;
import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.service.WorkItemService;
import org.springframework.beans.factory.annotation.Autowired;
@ -100,5 +97,16 @@ public class ApiWorkItemController {
public Result<List<ItemEvaluateDeptDTO>> evaluationDept(@RequestBody EvaluationFormDTO evaluationFormDTO) {
return workItemService.evaluationDept(evaluationFormDTO);
}
/**
* 项目处理进度
* @Params: [ItemProcessFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("processList")
public Result<List<ItemHandleProgressResultDTO>> processList(@RequestBody ItemProcessFormDTO dto) {
return workItemService.processList(dto);
}
}

12
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkItemFeignClient.java

@ -21,7 +21,7 @@ import java.util.List;
* @Author LPF
* @Date 2019/11/18 16:39
*/
@FeignClient(name = ServiceConstant.EPDC_EVENTS_SERVER, fallback = WorkItemFeignClientFallback.class,url ="http://127.0.0.1:9066")
@FeignClient(name = ServiceConstant.EPDC_EVENTS_SERVER, fallback = WorkItemFeignClientFallback.class)
public interface WorkItemFeignClient {
@ -91,4 +91,14 @@ public interface WorkItemFeignClient {
@GetMapping(value = "events/work/item/evaluationDept", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ItemEvaluateDeptDTO>> evaluationDept(EvaluationFormDTO evaluationFormDTO);
/**
* 项目处理进度
* @Params: [ItemProcessFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping(value = "events/work/item/processList", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ItemHandleProgressResultDTO>> processList(ItemProcessFormDTO dto) ;
}

4
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkItemFeignClientFallback.java

@ -52,5 +52,9 @@ public class WorkItemFeignClientFallback implements WorkItemFeignClient {
public Result<List<ItemEvaluateDeptDTO>> evaluationDept(EvaluationFormDTO evaluationFormDTO) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "evaluationDept", evaluationFormDTO);
}
@Override
public Result<List<ItemHandleProgressResultDTO>> processList(ItemProcessFormDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "processList", dto);
}
}

14
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkItemService.java

@ -4,11 +4,9 @@ import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.SysDeptDTO;
import com.elink.esua.epdc.dto.item.ItemEvaluateDeptDTO;
import com.elink.esua.epdc.dto.item.form.EvaluationFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemHandleSubmitFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemStatisticsFormDTO;
import com.elink.esua.epdc.dto.item.form.*;
import com.elink.esua.epdc.dto.item.result.*;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@ -74,6 +72,14 @@ public interface WorkItemService {
* @Date: 2019/11/19 16:34
*/
Result<List<ItemEvaluateDeptDTO>> evaluationDept(EvaluationFormDTO evaluationFormDTO);
/**
* 项目处理进度
* @Params: [ItemProcessFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
Result<List<ItemHandleProgressResultDTO>> processList(ItemProcessFormDTO dto);
}

4
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkItemServiceImpl.java

@ -69,5 +69,9 @@ public class WorkItemServiceImpl implements WorkItemService {
public Result<List<ItemEvaluateDeptDTO>> evaluationDept(EvaluationFormDTO evaluationFormDTO) {
return workItemFeignClient.evaluationDept(evaluationFormDTO);
}
@Override
public Result<List<ItemHandleProgressResultDTO>> processList(ItemProcessFormDTO dto) {
return workItemFeignClient.processList(dto);
}
}

3
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ImageConstant.java

@ -26,4 +26,7 @@ public interface ImageConstant {
* 图片类型-议题处理
*/
public final static String TYPE_IMAGE_BIZ_ISSUE_HANDLE = "issueHandle";
public final static String TYPE_IMAGE_ITEM_HANDLE = "itemHandle";
public final static String TYPE_IMAGE_ITEM_OUT_HANDLE = "itemOutHandle";
}

10
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemHandleSubmitFormDTO.java

@ -43,6 +43,16 @@ public class ItemHandleSubmitFormDTO implements Serializable {
@NotNull(message = "处理结果不能为空")
private int handleCategory;
/**
* 处理意见图片内部
*/
private List<String> handleImages;
/**
* 处理意见图片外部
*/
private List<String> outHandleImages;
/**
* 流转协助部门
*/

16
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemProcessFormDTO.java

@ -0,0 +1,16 @@
package com.elink.esua.epdc.dto.item.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
@Data
public class ItemProcessFormDTO implements Serializable {
private static final long serialVersionUID = -3034807666143092535L;
/**
* 项目ID
*/
@NotBlank(message = "项目ID不能为空")
private String itemId;
}

9
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemHandleProgressResultDTO.java

@ -19,6 +19,10 @@ public class ItemHandleProgressResultDTO implements Serializable {
* 状态名称
*/
private String progressName;
/**
* 状态
*/
private String state;
/**
* 时间
*/
@ -36,4 +40,9 @@ public class ItemHandleProgressResultDTO implements Serializable {
* 吹哨部门
*/
private List<ItemDeptDTO> itemDeptDTOS;
/**
* 吹哨部门
*/
private List<String> images;
}

12
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/WorkItemController.java

@ -125,4 +125,16 @@ public class WorkItemController {
List<ItemEvaluateDeptDTO> evaluateDeptDTOS = itemDeptService.listOfEvaluateDepts(evaluationFormDTO.getItemId(), SecurityUser.getDeptId());
return new Result<List<ItemEvaluateDeptDTO>>().ok(evaluateDeptDTOS);
}
/**
* 工作端-获项目处理进度
* @Params: [ItemProcessFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("processList")
public Result<List<ItemHandleProgressResultDTO>> processList(@RequestBody ItemProcessFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO);
return itemService.listOfItemHandleProgressByWork(formDTO);
}
}

9
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java

@ -126,6 +126,15 @@ public interface ItemDao extends BaseDao<ItemEntity> {
*/
List<ItemHandleProgressResultDTO> selectListOfItemHandleProgress(String issueId, String itemId, int outOrInside);
/**
* 业务端-项目处理进度
* @Params: [itemId]
* @Return: com.elink.esua.epdc.dto.item.result.ItemHandleProgressResultDTO
* @Author: liuchuang
* @Date: 2019/9/16 18:37
*/
List<ItemHandleProgressResultDTO> selectListOfItemHandleProgressByWork(String itemId);
/**
* 项目内容详情
* @Params: [itemId]

9
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java

@ -270,4 +270,13 @@ public interface ItemService extends BaseService<ItemEntity> {
* @Date: 2019/11/18 13:32
*/
Result<ItemStatisticsResultDTO> getItemStatistics(ItemStatisticsFormDTO formDto);
/**
* 项目处理进度
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemCategoryStatisticsResultDTO>
* @Author: lipengfei
* @Date: 2019/11/18 13:32
*/
Result<List<ItemHandleProgressResultDTO>> listOfItemHandleProgressByWork(ItemProcessFormDTO formDTO);
}

20
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java

@ -32,6 +32,7 @@ import com.elink.esua.epdc.commons.tools.utils.DateUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.constant.EventIssueItemState;
import com.elink.esua.epdc.constant.EventsNoticeConstant;
import com.elink.esua.epdc.constant.ImageConstant;
import com.elink.esua.epdc.constants.MenuCodeConstant;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.MenuNoticeDTO;
@ -48,6 +49,7 @@ import com.elink.esua.epdc.enums.ItemHandleCategoryEnum;
import com.elink.esua.epdc.modules.async.DeptRespondTask;
import com.elink.esua.epdc.modules.async.NewsTask;
import com.elink.esua.epdc.modules.events.service.EpdcEventsService;
import com.elink.esua.epdc.modules.events.service.ImgService;
import com.elink.esua.epdc.modules.feign.AdminFeignClient;
import com.elink.esua.epdc.modules.issue.service.IssueService;
import com.elink.esua.epdc.modules.item.dao.ItemDao;
@ -97,6 +99,9 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
@Autowired
private DeptRespondTask deptRespondTask;
@Autowired
private ImgService imgService;
@Override
public PageData<ItemDTO> page(Map<String, Object> params) {
IPage<ItemEntity> page = baseDao.selectPage(
@ -450,6 +455,11 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
ItemEntity entity = this.selectById(itemId);
return baseDao.selectListOfItemHandleProgress(entity.getIssueId(), itemId, outOrInside);
}
@Override
public Result<List<ItemHandleProgressResultDTO>> listOfItemHandleProgressByWork(ItemProcessFormDTO formDTO) {
List<ItemHandleProgressResultDTO> data = baseDao.selectListOfItemHandleProgressByWork(formDTO.getItemId());
return new Result<List<ItemHandleProgressResultDTO>>().ok(data);
}
@Override
@Transactional(rollbackFor = Exception.class)
@ -470,6 +480,7 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
ItemHandleProcessEntity handleProcessEntity = new ItemHandleProcessEntity();
handleProcessEntity.setHandlerDeptId(user.getDeptId());
handleProcessEntity.setHandlerDept(user.getDeptName());
if (ItemHandleCategoryEnum.HANDLE_CIRCULATION_ASSISTANCE.getValue() == dto.getHandleCategory()) {
// 项目流转校验
Result checkResult = this.checkItemCirculation(dto);
@ -552,10 +563,17 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
// 吹哨部门操作-发送菜单消息
this.sendWhistlingDeptItemHandleMenuNotice(Collections.singletonList(user.getDeptId()), null);
}
//项目外部处理意见图片保存
if(dto.getOutHandleImages()!= null && dto.getOutHandleImages().size()>0){
imgService.saveImages(dto.getOutHandleImages(),handleProcessEntity.getId(), ImageConstant.TYPE_IMAGE_ITEM_OUT_HANDLE);
}
//项目处理意见图片保存
if(dto.getHandleImages()!= null && dto.getHandleImages().size()>0){
imgService.saveImages(dto.getHandleImages(),handleProcessEntity.getId(), ImageConstant.TYPE_IMAGE_ITEM_HANDLE);
}
} catch (Exception e) {
e.printStackTrace();
}
return new Result();
}

43
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml

@ -499,6 +499,49 @@
ORDER BY
createdTime DESC
</select>
<resultMap id="itemHandleMapByWork" type="com.elink.esua.epdc.dto.item.result.ItemHandleProgressResultDTO">
<result property="createdTime" column="createdTime"/>
<result property="advice" column="advice"/>
<result property="handlerDept" column="handlerDept"/>
<result property="state" column="STATE"/>
<collection property="itemDeptDTOS" ofType="com.elink.esua.epdc.dto.item.ItemDeptDTO">
<result property="deptName" column="DEPT_NAME"/>
</collection>
<collection property="images" ofType="java.lang.String">
<result property="image" column="IMG_URL"/>
</collection>
</resultMap>
<select id="selectListOfItemHandleProgressByWork" resultMap="itemHandleMapByWork">
SELECT
hp.CREATED_TIME AS createdTime,
hp.HANDLE_ADVICE AS advice,
hp.HANDLER_DEPT AS handlerDept,
hp.STATE,
itemDept.DEPT_NAME,
img.IMG_URL
FROM
epdc_item_handle_process hp
LEFT JOIN epdc_item_dept itemDept ON hp.ID = itemDept.ITEM_HANDLE_ID
LEFT JOIN epdc_img img ON hp.ID = img. REFERENCE_ID AND IMG_TYPE = 'itemHandle' AND img.DEL_FLAG = '0'
WHERE
hp.DEL_FLAG = '0'
AND hp.ITEM_ID = #{itemId} UNION ALL
SELECT
EVALUATION_TIME AS createdTime,
EVALUATION_CONTENT AS advice,
NICK_NAME AS handlerDept,
EVALUATION_SCORE as STATE,
null AS DEPT_NAME,
null AS IMG_URL
FROM
epdc_item
WHERE
DEL_FLAG = '0'
AND ID = #{itemId}
AND EVALUATION_SCORE IS NOT NULL
ORDER BY
createdTime DESC
</select>
<resultMap id="itemContentForPCEndMap" type="com.elink.esua.epdc.dto.item.result.ItemContentForPCEndResultDTO">
<result property="id" column="ID"/>

Loading…
Cancel
Save