feat: 企标立项变更流程保存自翻译
This commit is contained in:
+26
-6
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.jero.common.api.vo.ResultCommon;
|
import com.jero.common.api.vo.ResultCommon;
|
||||||
|
import com.jero.common.aspect.TranslationAspect;
|
||||||
import com.jero.common.constant.enums.YesOrNoEnum;
|
import com.jero.common.constant.enums.YesOrNoEnum;
|
||||||
import com.jero.common.exception.JeroBootException;
|
import com.jero.common.exception.JeroBootException;
|
||||||
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
import com.jero.modules.activiti.enums.ProcessTypeEnum;
|
||||||
@@ -93,6 +94,9 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl<ProcessEsInitCha
|
|||||||
@Resource
|
@Resource
|
||||||
private EnterpriseStandardPlanService espService;
|
private EnterpriseStandardPlanService espService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private TranslationAspect translationAspect;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void startProcess(InitChangeDataVO initChangeData) {
|
public void startProcess(InitChangeDataVO initChangeData) {
|
||||||
// 发起的时候校验标准编号是是否重复
|
// 发起的时候校验标准编号是是否重复
|
||||||
@@ -118,8 +122,6 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl<ProcessEsInitCha
|
|||||||
String processInstanceId = processInstance.getId();
|
String processInstanceId = processInstance.getId();
|
||||||
// 手动设置所有流程变量
|
// 手动设置所有流程变量
|
||||||
actFlowCommonService.setProcessVariables(processInstanceId, variables);
|
actFlowCommonService.setProcessVariables(processInstanceId, variables);
|
||||||
// 自动完成第一个任务
|
|
||||||
actFlowCommonService.autoCompleteFirstTask(userId, processInstanceId, processDefinitionId, commonVO);
|
|
||||||
// 设置流程实例Id
|
// 设置流程实例Id
|
||||||
esInitChangeList.forEach(e -> e.setProcessInstanceId(processInstanceId));
|
esInitChangeList.forEach(e -> e.setProcessInstanceId(processInstanceId));
|
||||||
// 保存到业务流程表
|
// 保存到业务流程表
|
||||||
@@ -128,15 +130,21 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl<ProcessEsInitCha
|
|||||||
// 人员
|
// 人员
|
||||||
Map<String, Object> flowUserInfoVO = initChangeData.getFlowUserInfoVO();
|
Map<String, Object> flowUserInfoVO = initChangeData.getFlowUserInfoVO();
|
||||||
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, flowUserInfoVO);
|
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, flowUserInfoVO);
|
||||||
|
// 获取第一个任务的taskId
|
||||||
|
String taskId = actFlowCommonService.getFirstTaskId(processInstanceId, userId, processDefinitionId);
|
||||||
|
// 手动翻译
|
||||||
|
String jsonData = translationAspect.manualParseDictText(this.getHandleData(taskId), this.getUserMap(variables));
|
||||||
|
// 强制撤回
|
||||||
|
commonVO.setProcessInstanceId(processInstanceId);
|
||||||
|
actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_INIT_CHANGE, jsonData);
|
||||||
|
// 自动完成第一个任务
|
||||||
|
actFlowCommonService.completeTask(taskId, userId);
|
||||||
// 根据流程实例id更新流程总表
|
// 根据流程实例id更新流程总表
|
||||||
String prcName = commonVO.getPrcName();
|
String prcName = commonVO.getPrcName();
|
||||||
String prcMes = commonVO.getPrcMes();
|
String prcMes = commonVO.getPrcMes();
|
||||||
Date dueTime = commonVO.getDueTime();
|
Date dueTime = commonVO.getDueTime();
|
||||||
Integer prcType = ProcessTypeEnum.ES_INIT_CHANGE.getValue();
|
Integer prcType = ProcessTypeEnum.ES_INIT_CHANGE.getValue();
|
||||||
actFlowCommonService.updateProcessAll(processInstanceId, userId, prcName, prcMes, prcType, dueTime);
|
actFlowCommonService.updateProcessAll(processInstanceId, userId, prcName, prcMes, prcType, dueTime);
|
||||||
// 强制撤回
|
|
||||||
commonVO.setProcessInstanceId(processInstanceId);
|
|
||||||
actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_INIT_CHANGE, initChangeData);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Map<String, Object> setVariables(InitChangeDataVO initChangeData) {
|
public Map<String, Object> setVariables(InitChangeDataVO initChangeData) {
|
||||||
@@ -208,11 +216,23 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl<ProcessEsInitCha
|
|||||||
this.setInitChangeData(standardNo, initChange, processInstanceId);
|
this.setInitChangeData(standardNo, initChange, processInstanceId);
|
||||||
// 保存到业务流程表
|
// 保存到业务流程表
|
||||||
save(initChange);
|
save(initChange);
|
||||||
|
// 流程名
|
||||||
|
String prcName = standardNo + "--立项";
|
||||||
// 保存选人信息
|
// 保存选人信息
|
||||||
// 人员
|
// 人员
|
||||||
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, variables);
|
processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, variables);
|
||||||
|
// 获取第一个任务的taskId
|
||||||
|
String taskId = actFlowCommonService.getFirstTaskId(processInstanceId, mainDraftUser, processDefinitionId);
|
||||||
|
// 手动翻译
|
||||||
|
String jsonData = translationAspect.manualParseDictText(this.getHandleData(taskId), this.getUserMap(variables));
|
||||||
|
// 强制撤回
|
||||||
|
CommonVO commonVO = new CommonVO();
|
||||||
|
commonVO.setPrcName(prcName);
|
||||||
|
commonVO.setPrcMes(null);
|
||||||
|
commonVO.setDueTime(null);
|
||||||
|
commonVO.setProcessInstanceId(processInstanceId);
|
||||||
|
actFlowCommonService.saveFirstNodeDraft(commonVO, ProcessTypeEnum.ES_INIT_CHANGE, jsonData);
|
||||||
// 根据流程实例id更新流程总表
|
// 根据流程实例id更新流程总表
|
||||||
String prcName = standardNo + "--立项";
|
|
||||||
Integer prcType = ProcessTypeEnum.ES_INIT_CHANGE.getValue();
|
Integer prcType = ProcessTypeEnum.ES_INIT_CHANGE.getValue();
|
||||||
actFlowCommonService.updateProcessAll(processInstanceId, mainDraftUser, prcName, null, prcType, null);
|
actFlowCommonService.updateProcessAll(processInstanceId, mainDraftUser, prcName, null, prcType, null);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user