Commit 4120caef authored by lisong's avatar lisong

添加参数

parent 598a40f1
......@@ -177,4 +177,7 @@ public class JgUseRegistration extends BaseEntity {
@TableField(value = "next_task_id")
private String nextTaskId;
@TableField(exist = false)
private String equipId;
}
......@@ -43,6 +43,7 @@ import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.Workflow;
import com.yeejoin.amos.feign.workflow.model.*;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
......@@ -226,8 +227,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) {
WorkflowResultDto workflowResultDto = resultDto.get(0);
JgUseRegistration useRegistration = updateData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, Boolean.TRUE);
buildTask(useRegistration, workflowResultDto);
updateData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, Boolean.TRUE);
}
// updateExecuteIds(instanceId, jgUseRegistration.getSequenceNbr(), "0");
......@@ -250,6 +250,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
taskCode = workflowResultDto.getNextTaskCode();
}
JgUseRegistration jgUseRegistration = this.getBaseMapper().selectById(sequenceNbr);
LambdaQueryWrapper<JgUseRegistrationEq> eq = new QueryWrapper<JgUseRegistrationEq>().lambda().eq(JgUseRegistrationEq::getEquipTransferId, sequenceNbr);
JgUseRegistrationEq jgUseRegistrationEq = jgRelationEquipMapper.selectOne(eq);
jgUseRegistration.setEquipId(jgUseRegistrationEq.getEquId());
jgUseRegistration.setNextTaskId(workflowResultDto.getNextTaskId());
if (isFirst) {
jgUseRegistration.setInstanceStatus(workflowResultDto.getExecutorRoleIds());
......@@ -271,6 +274,29 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
jgUseRegistration.setStatus(WorkFlowStatusEnum.getMessage(taskCode).getReject());
jgUseRegistration.setPromoter(null);
}
if (isFirst){
buildTask(jgUseRegistration, workflowResultDto);
}else {
// 更新代办状态
HashMap<String, Object> params = new HashMap<>();
params.put("relationId", jgUseRegistration.getInstanceId());
params.put("flowStatus", commonServiceImpl.getDictionaryCodeByName(jgUseRegistration.getStatus()));
params.put("flowStatusLabel", jgUseRegistration.getStatus());
params.put("taskStatus", operate.equals("0") ? "2" : "1");
params.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
TaskV2Model taskV2Model = commonServiceImpl.updateTaskModel(params);
// 创建新的代办
TaskModelDto taskModelDto = new TaskModelDto();
BeanUtils.copyProperties(taskV2Model, taskModelDto);
taskModelDto.setModel(jgUseRegistration);
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
taskModelDto.setTaskStatus(FlowStatusEnum.TO_BE_PROCESSED.getCode());
taskModelDto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
commonServiceImpl.buildTaskModel(Collections.singletonList(taskModelDto));
}
} else {
// 流程结束
jgUseRegistration.setStatus(taskCode);
......@@ -281,33 +307,20 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
}
// 更新设备信息
updateEquipMessage(String.valueOf(sequenceNbr), jgUseRegistration.getUseRegistrationCode());
// 更新代办状态
HashMap<String, Object> params = new HashMap<>();
params.put("relationId", jgUseRegistration.getInstanceId());
params.put("flowStatus", commonServiceImpl.getDictionaryCodeByName(jgUseRegistration.getStatus()));
params.put("flowStatusLabel", jgUseRegistration.getStatus());
params.put("taskStatus", operate.equals("0") ? "2" : "1");
params.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
commonServiceImpl.updateTaskModel(params);
}
this.getBaseMapper().updateById(jgUseRegistration);
return jgUseRegistration;
}
public void test() {
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
ArrayList<ActWorkflowStartDTO> list = new ArrayList<>();
dto.setProcessDefinitionKey("useRegistration");
dto.setBusinessKey("test");
dto.setCompleteFirstTask(Boolean.TRUE);
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
StopWatch stopWatch = new StopWatch();
stopWatch.start();
List<ProcessTaskDTO> processTaskDTOS = cmWorkflowService.startBatch(actWorkflowBatchDTO);
stopWatch.stop();
System.out.println("请求耗时:" + stopWatch.getTotalTimeSeconds());
if (!ObjectUtils.isEmpty(processTaskDTOS)) {
List<WorkflowResultDto> workflowResultDtos = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
if (!ObjectUtils.isEmpty(workflowResultDtos)) {
}
}
}
public void buildTask(JgUseRegistration jgUseRegistration, WorkflowResultDto workflowResultDto) {
// 代办消息
......@@ -323,7 +336,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
dto.setRelationId(workflowResultDto.getInstanceId());
dto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
dto.setTaskStatus(commonServiceImpl.getDictionaryCodeByName(WorkFlowStatusEnum.getMessage(workflowResultDto.getNextTaskCode()).getPass()));
dto.setTaskStatusLabel(workflowResultDto.getNextTaskName());
dto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
dto.setFlowStatus(commonServiceImpl.getDictionaryCodeByName(jgUseRegistration.getStatus()));
dto.setFlowStatusLabel(jgUseRegistration.getStatus());
dto.setStartUser(jgUseRegistration.getCreateUserId());
dto.setStartUser(jgUseRegistration.getRecUserName());
dto.setStartUserCompanyName(jgUseRegistration.getUseUnitName());
......@@ -336,10 +351,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
commonServiceImpl.buildTaskModel(list);
}
public void updateTask() {
HashMap<String, Object> map = new HashMap<>();
TaskV2Model taskV2Model = commonServiceImpl.updateTaskModel(map);
}
public String startByVariable() {
String instanceId = "";
......@@ -437,48 +449,40 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) {
WorkflowResultDto workflowResultDto = resultDto.get(0);
updateData(jgUseRegistration.getSequenceNbr(), "0", workflowResultDto, Boolean.FALSE);
updateData(jgUseRegistration.getSequenceNbr(), operate, workflowResultDto, Boolean.FALSE);
}
}
public void withdraw(String instanceId) {
JgUseRegistration jgUseRegistration = new JgUseRegistration();
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
ProcessTaskDTO processTaskDTO = cmWorkflowService.rollBack(instanceId);
ArrayList<ProcessTaskDTO> processTaskDTOS = new ArrayList<>();
processTaskDTOS.add(processTaskDTO);
List<WorkflowResultDto> resultDto = commonServiceImpl.buildWorkFlowInfo(processTaskDTOS);
String taskCode = "";
JgUseRegistration jgUseRegistration = new JgUseRegistration();
String roles = "";
if (!ObjectUtils.isEmpty(resultDto) && !ObjectUtils.isEmpty(resultDto.get(0))) {
taskCode = resultDto.get(0).getNextTaskCode();
roles = resultDto.get(0).getNextExecutorRoleIds();
jgUseRegistration.setNextTaskId(resultDto.get(0).getNextTaskId());
}
LambdaQueryWrapper<JgUseRegistration> lambda = new QueryWrapper<JgUseRegistration>().lambda();
lambda.eq(JgUseRegistration::getInstanceId, instanceId);
ArrayList<String> roleList = new ArrayList<>();
try {
workFlowFeginService.rollBack(instanceId);
JSONObject taskNoAuth = workFlowFeginService.getTaskNoAuth(instanceId);
JSONObject nextTask = JSON.parseObject(JSON.toJSONString(taskNoAuth.get("data")));
if (!ObjectUtils.isEmpty(taskNoAuth.get("data"))) {
String nextTaskId = nextTask.getString("id");
FeignClientResult<JSONObject> nodeInfo = workFlowFeginService.getNodeInfo(nextTaskId);
JSONObject result = nodeInfo.getResult();
Map<String, Object> taskInfo = (Map<String, Object>) result.get("taskInfo");
taskCode = String.valueOf(taskInfo.get("taskDefinitionKey"));
AjaxResult taskGroupName = Workflow.taskClient.getTaskGroupName(nextTaskId);
JSONArray data = JSON.parseArray(JSON.toJSONString(taskGroupName.get("data")));
for (Object datum : data) {
if (((Map<?, ?>) datum).containsKey("groupId")) {
roleList.add(((Map<?, ?>) datum).get("groupId").toString());
}
}
}
} catch (Exception e) {
e.printStackTrace();
}
if (!ObjectUtils.isEmpty(taskCode)) {
jgUseRegistration.setStatus(WorkFlowStatusEnum.getMessage(taskCode).getRollBack());
}
String join = String.join(",", roleList);
jgUseRegistration.setPromoter(reginParams.getUserModel().getUserId());
jgUseRegistration.setNextExecuteIds(join);
jgUseRegistration.setNextExecuteIds(roles);
this.update(jgUseRegistration, lambda);
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(jgUseRegistration));
jsonObject.put("nextTaskId", jgUseRegistration.getNextTaskId());
jsonObject.put("nextExecuteUser", jgUseRegistration.getNextExecuteIds());
jsonObject.put("taskType", BusinessTypeEnum.JG_USAGE_REGISTRATION.getCode());
// 撤回删除代办
commonServiceImpl.rollbackTask(instanceId, jsonObject);
}
public void deleteBatch(List<Long> ids) {
......
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