Commit 68c67d8d authored by wangyangyang's avatar wangyangyang

设计评审:意见走完流程后 设置评审项link 状态为已完成

parent a49715fd
package com.inet.dcs.document.core.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.inet.dcs.document.common.vo.ExtApplicantVO;
import com.inet.dcs.document.common.vo.ExtAuditObjectVO;
import com.inet.dcs.document.common.vo.ExtDesignReviewNoticeVO;
import com.inet.dcs.document.common.vo.ExtInterfaceVO;
import com.inet.dcs.document.common.vo.*;
import com.inet.dcs.document.core.constants.Constants;
import com.inet.dcs.document.core.service.ExtAutoTaskService;
import com.inet.dcs.document.core.service.ExtSendFormLinkService;
......@@ -70,6 +67,13 @@ public class ExtAutoTaskController {
autoTaskService.setDesignNoticeTeamRole(noticeVO);
}
@ApiOperation("评审意见反馈走完流程后设置评审纪要和评审项状态")
@PostMapping({"/design/feedback/state"})
public void setDesignMinutesReviewState(@RequestBody ExtReviewFeedbackVO feedbackVO) {
autoTaskService.setDesignMinutesReviewState(feedbackVO);
}
@ApiOperation("生成图册目录且修改图册已经图纸状态为发布")
@GetMapping({"/catalog"})
......
package com.inet.dcs.document.core.service;
import com.inet.dcs.document.common.vo.ExtApplicantVO;
import com.inet.dcs.document.common.vo.ExtAuditObjectVO;
import com.inet.dcs.document.common.vo.ExtDesignReviewNoticeVO;
import com.inet.dcs.document.common.vo.ExtInterfaceVO;
import com.inet.dcs.document.common.vo.*;
import com.inet.dcs.document.feign.ExtAutoTaskServiceFeign;
import com.yonde.dcs.document.common.entity.vo.DxDocumentVO;
import com.yonde.dcs.plan.common.vo.ExtPlanVO;
......@@ -24,6 +21,7 @@ public interface ExtAutoTaskService extends ExtAutoTaskServiceFeign {
/**
* 生成图册目录 且修改关联ied计划状态 一个IED计划对应一个图册-----TODO 全部放在客制化修改文档方法中 extChangeDocState
*
* @param docId
* @return
*/
......@@ -210,6 +208,7 @@ public interface ExtAutoTaskService extends ExtAutoTaskServiceFeign {
/**
* 设置接口单 的提资日期 (接口单流程走完第一个 提资节点后设置)
*
* @param interfaceVO
*/
@SneakyThrows
......@@ -225,7 +224,15 @@ public interface ExtAutoTaskService extends ExtAutoTaskServiceFeign {
/**
* 设置评审通知流程团队变量
*
* @param noticeVO
*/
void setDesignNoticeTeamRole(ExtDesignReviewNoticeVO noticeVO);
/**
* 评审意见反馈走完流程后设置评审纪要和评审项状态
*
* @param feedbackVO
*/
void setDesignMinutesReviewState(ExtReviewFeedbackVO feedbackVO);
}
......@@ -18,18 +18,7 @@ import com.inet.dcs.document.core.constants.SignConstants;
import com.inet.dcs.document.core.event.DocumentEvent;
import com.inet.dcs.document.core.excel.ExtCatalogExcelVO;
import com.inet.dcs.document.core.factory.*;
import com.inet.dcs.document.core.service.ExtApplicantService;
import com.inet.dcs.document.core.service.ExtAtlasDrawingLinkService;
import com.inet.dcs.document.core.service.ExtAuditInterfLinkService;
import com.inet.dcs.document.core.service.ExtAutoTaskService;
import com.inet.dcs.document.core.service.ExtComDocLinkService;
import com.inet.dcs.document.core.service.ExtDocService;
import com.inet.dcs.document.core.service.ExtInterfaceInfoLinkService;
import com.inet.dcs.document.core.service.ExtInterfaceReplaceLinkService;
import com.inet.dcs.document.core.service.ExtInterfaceService;
import com.inet.dcs.document.core.service.ExtObsoleteDocLinkService;
import com.inet.dcs.document.core.service.ExtReviewDocComLinkService;
import com.inet.dcs.document.core.service.ExtSerialNumberService;
import com.inet.dcs.document.core.service.*;
import com.inet.dcs.document.core.util.*;
import com.inet.dcs.document.core.word.ImportWordService;
import com.yonde.dcs.document.core.service.*;
......@@ -45,6 +34,7 @@ import com.yonde.dex.basedata.entity.api.CustomMultipartFile;
import com.yonde.dex.basedata.entity.data.DxPageImpl;
import com.yonde.dex.basedata.entity.data.OperatorType;
import com.yonde.dex.basedata.entity.jackson.JsonUtils;
import com.yonde.dex.basedata.entity.vo.IdVO;
import com.yonde.dex.basedata.exception.DxBusinessException;
import com.yonde.dex.dao.service.util.DxPageUtils;
import com.yonde.dex.dfs.feign.FileManagerFeignService;
......@@ -71,6 +61,7 @@ import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.client.utils.CloneUtils;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.data.domain.Page;
......@@ -170,6 +161,17 @@ public class ExtAutoTaskServiceImpl implements ExtAutoTaskService {
@Autowired
ExtIEDPlanServiceFeign extIEDPlanServiceFeign;
@Autowired
ExtReviewFeedbackService extReviewFeedbackService;
@Autowired
ExtReviewMInutesFeedbackLinkService extReviewMInutesFeedbackLinkService;
@Autowired
ExtDesignNoticeMinutesLinkService extDesignNoticeMinutesLinkService;
@Autowired
ExtDesignReviewMinutesService extDesignReviewMinutesService;
@Override
......@@ -199,10 +201,10 @@ public class ExtAutoTaskServiceImpl implements ExtAutoTaskService {
@Transactional(rollbackFor = Exception.class)
public void setDesignNoticeTeamRole(ExtDesignReviewNoticeVO noticeVO) {
String userList = "";
if (!StrUtil.isEmpty(noticeVO.getSendPerson())){
if (!StrUtil.isEmpty(noticeVO.getSendPerson())) {
userList = noticeVO.getSendPerson();
}
if (!StrUtil.isEmpty(noticeVO.getSendDepartment())){
if (!StrUtil.isEmpty(noticeVO.getSendDepartment())) {
//获取组织下的人
String[] orgList = noticeVO.getSendDepartment().split(",");
for (String orgId : orgList) {
......@@ -214,11 +216,11 @@ public class ExtAutoTaskServiceImpl implements ExtAutoTaskService {
}
}
}
if (!StrUtil.isEmpty(userList)){
if (!StrUtil.isEmpty(userList)) {
//流程 消息发送设置变量
String teamRole = "messageDesign";
// 设计评审通知流程模板 key
String PROCESS_KEY= "ExtDesignReviewNoticeWF";
String PROCESS_KEY = "ExtDesignReviewNoticeWF";
//"wf_act_TeamRole_Responsible_userList"
String varUser = "wf_act_TeamRole_" + teamRole + "_userList";
Map<String, Object> inspectors = new HashMap<>();
......@@ -231,6 +233,46 @@ public class ExtAutoTaskServiceImpl implements ExtAutoTaskService {
}
}
/**
* 评审意见反馈走完流程后设置评审纪要和评审项状态
* 纪要和通知一对一关联
*
* @param feedbackVO
*/
@Override
@Transactional(rollbackFor = Exception.class)
public void setDesignMinutesReviewState(ExtReviewFeedbackVO feedbackVO) {
//纪要关联 意见的小版本id
Long id = feedbackVO.getId();
SearchQueryCondition queryCondition = SearchUtil.buildQueryWithOpenAttr("targetId", SearchItem.Operator.EQ, id, "target");
DxPageImpl recursion = extReviewMInutesFeedbackLinkService.findRecursion(queryCondition);
Boolean isChangeState = true;
if (recursion.getTotalElements() != 0) {
List<ExtReviewMInutesFeedbackLinkVO> mInutesFeedbackLinkVOList = recursion.getContent();
for (ExtReviewMInutesFeedbackLinkVO extReviewMInutesFeedbackLinkVO : mInutesFeedbackLinkVOList) {
ExtReviewFeedbackVO target = extReviewMInutesFeedbackLinkVO.getTarget();
if (target.getId().equals(id)) {
continue;
}
//已发布 release
if (!target.getState().equalsIgnoreCase(Constants.RELEASE)) {
isChangeState = false;
}
}
Long minutesId = mInutesFeedbackLinkVOList.get(0).getSourceId();
if (isChangeState) {
//TODO 10.31 沟通后纪要无状态字段,即不需要更新 只需要更新评审项link 状态为 已完成 Complete
SearchQueryCondition linkQuery = SearchUtil.buildQuery("targetId", SearchItem.Operator.EQ, minutesId);
DxPageImpl linkServiceRecursion = extDesignNoticeMinutesLinkService.findRecursion(linkQuery);
if (linkServiceRecursion.getTotalElements() != 0) {
ExtDesignNoticeMinutesLinkVO linkVO = (ExtDesignNoticeMinutesLinkVO) linkServiceRecursion.getContent().get(0);
linkVO.setState(Constants.IED_Complete);
linkVO = (ExtDesignNoticeMinutesLinkVO) extDesignNoticeMinutesLinkService.update(linkVO);
}
}
}
}
@SneakyThrows
@Override
@Transactional(rollbackFor = Exception.class)
......
package com.inet.dcs.document.feign;
import com.inet.dcs.document.common.vo.ExtApplicantVO;
import com.inet.dcs.document.common.vo.ExtAuditObjectVO;
import com.inet.dcs.document.common.vo.ExtDesignReviewNoticeVO;
import com.inet.dcs.document.common.vo.ExtInterfaceVO;
import com.inet.dcs.document.common.vo.*;
import com.yonde.dcs.document.common.entity.vo.DxDocumentVO;
import com.yonde.dcs.plan.common.vo.ExtPlanVO;
import io.swagger.annotations.Api;
......@@ -31,6 +28,10 @@ public interface ExtAutoTaskServiceFeign {
void setDesignNoticeTeamRole(@RequestBody ExtDesignReviewNoticeVO noticeVO);
@ApiOperation("评审意见反馈走完流程后设置评审纪要和评审项状态")
@PostMapping({"/design/feedback/state"})
void setDesignMinutesReviewState(@RequestBody ExtReviewFeedbackVO feedbackVO);
@ApiOperation("客制化修改IED计划状态")
@PostMapping({"/ied/change"})
void changeIEDStatus(@RequestParam(name = "iedStatus") String iedStatus, @RequestBody DxDocumentVO documentVO);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment