Commit 0ad0b26b authored by LiuLin's avatar LiuLin

Merge remote-tracking branch 'origin/develop_tzs_register' into develop_tzs_register

parents 1b76fed8 00f82778
......@@ -142,4 +142,7 @@ public class JgChangeRegistrationUnitDto extends BaseDto {
@ApiModelProperty(value = "监管码")
private String supervisoryCode;
@ApiModelProperty(value = "分类")
private String equList;
}
......@@ -217,6 +217,9 @@ public class JgChangeRegistrationUnit extends BaseEntity {
@TableField(exist = false)
private String supervisoryCode;
@TableField(exist = false)
private String equList;
/**
*工作流下一节点任务id
*/
......
......@@ -25,6 +25,8 @@ public interface JgUseRegistrationMapper extends BaseMapper<JgUseRegistration> {
Map<String, Object> getUseDetail(@Param("id")String id);
Map<String, Object> getDesDetail(@Param("id")String id);
Page<Map<String, Object>> getEquipListPage(@Param("page")Page<Map<String, Object>> page,@Param("factoryNum") String factoryNum,@Param("equList")String equList,@Param("equCategory")String equCategory);
void updatePromoter(@Param("id")Long id);
......
......@@ -147,5 +147,19 @@
</if>
</where>
</select>
<select id="getDesDetail" resultType="java.util.Map">
select DESIGN_UNIT_CREDIT_CODE as designUnitCreditCode,
DESIGN_UNIT_NAME as designUnitName,
DESIGN_LICENSE_NUM as designLicenseNum,
DESIGN_USE_DATE as designUseDate,
DESIGN_DATE as designDate,
DRAWING_DO as drawingDo,
APPRAISAL_UNIT as appraisalUnit,
APPRAISAL_DATE as appraisalDate,
DESIGN_DOC as designDoc,
DESIGN_STANDARD as designStandard
from idx_biz_jg_design_info
where RECORD = #{id}
</select>
</mapper>
package com.yeejoin.amos.boot.module.jg.biz.config;
import org.typroject.tyboot.core.foundation.exception.BaseException;
public class LocalBadRequest extends BaseException {
public LocalBadRequest(String message)
{
super(message, com.yeejoin.amos.component.robot.BadRequest.class.getSimpleName(),message);
this.httpStatus = 500;
}
}
\ No newline at end of file
......@@ -38,7 +38,7 @@ public class JgUseRegistrationController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "批量删除", notes = "批量删除")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<Object> save(@RequestBody JSONObject map) {
jgUseRegistrationServiceImpl.save(map);
return ResponseHelper.buildResponse("ok");
......@@ -72,7 +72,7 @@ public class JgUseRegistrationController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/deleteMessage")
@ApiOperation(httpMethod = "POST", value = "批量删除", notes = "批量删除")
@ApiOperation(httpMethod = "POST", value = "删除", notes = "删除")
public ResponseModel<Object> deleteMessage(@RequestParam("id") Long id) {
ArrayList<Long> ids = new ArrayList<>();
ids.add(id);
......
......@@ -2,7 +2,9 @@ package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.module.jg.biz.config.LocalBadRequest;
import com.yeejoin.amos.boot.module.jg.biz.service.ICmWorkflowService;
import com.yeejoin.amos.component.feign.config.InnerInvokException;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.feign.workflow.Workflow;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
......@@ -10,6 +12,7 @@ import com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.List;
......@@ -25,7 +28,13 @@ public class CmWorkflowServiceImpl implements ICmWorkflowService {
List<ProcessTaskDTO> processTasks;
try {
log.info("开始请求工作流启动接口:/start/batch,请求参数:{}", JSONObject.toJSONString(params));
processTasks = FeignUtil.remoteCall(() -> Workflow.taskV2Client.startForBatch(params));
processTasks = Workflow.taskV2Client.startForBatch(params).getResult();
} catch (InnerInvokException e) {
//拦截无审核人异常信息
String devMessage = e.getDevMessage();
devMessage = devMessage.contains(";") ? devMessage.split(";")[0] : devMessage;
log.error(devMessage);
throw new LocalBadRequest(devMessage);
} catch (Exception e) {
log.error("调用工作流批量启动失败", e);
throw new RuntimeException("调用工作流批量启动失败");
......@@ -38,7 +47,13 @@ public class CmWorkflowServiceImpl implements ICmWorkflowService {
ProcessTaskDTO processTaskDTO;
try {
log.info("开始请求工作流完成任务接口:/complete/standard/{taskId},请求参数:{},{}", taskId, JSONObject.toJSONString(data));
processTaskDTO = FeignUtil.remoteCall(() -> Workflow.taskV2Client.completeByTaskFroStandard(taskId, data));
processTaskDTO = Workflow.taskV2Client.completeByTaskFroStandard(taskId, data).getResult();
} catch (InnerInvokException e) {
//拦截无审核人异常信息
String devMessage = e.getDevMessage();
devMessage = devMessage.contains(";") ? devMessage.split(";")[0] : devMessage;
log.error(devMessage);
throw new LocalBadRequest(devMessage);
} catch (Exception e) {
log.error("调用工作流完成任务接口失败", e);
throw new RuntimeException("调用工作流完成任务接口失败");
......
......@@ -688,7 +688,7 @@ public class CommonServiceImpl implements ICommonService {
model.setFlowStatus(FlowStatusEnum.TO_BE_SUBMITTED.getCode());
model.setFlowStatusLabel(FlowStatusEnum.TO_BE_SUBMITTED.getName());
model.setStartUserId(RequestContext.getExeUserId());
model.setStartUser(reginParams.getUserModel().getUserName());
model.setStartUser(reginParams.getUserModel().getRealName());
model.setStartUserCompanyName(reginParams.getCompany().getCompanyName());
model.setStartDate(new Date());
model.setExecuteUserIds(RequestContext.getExeUserId());
......
......@@ -48,7 +48,6 @@ import org.springframework.util.StringUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.*;
......@@ -143,28 +142,23 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
String nextUserIds = "";
if ("1".equals(submitType)) {
// 发起流程
try {
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("unitRename");
dto.setBusinessKey(applyNo);
dto.setCompleteFirstTask(true);
// 启动并执行下一步人单位传接收单位的code
dto.setNextExecuteUserCompanyCode(this.getReceiveCompanyCode(model));
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
this.buildRoleList(processTasks, roleListNext, roleListAll);
instanceId = processTasks.get(0).getProcessInstance().getId();
nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
taskName[0] = processTasks.get(0).getNextTask().get(0).getName();
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
} catch (Exception e) {
log.error("提交失败:{}", e);
throw new BadRequest("提交失败" + e.getMessage());
}
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("unitRename");
dto.setBusinessKey(applyNo);
dto.setCompleteFirstTask(true);
// 启动并执行下一步人单位传接收单位的code
dto.setNextExecuteUserCompanyCode(this.getReceiveCompanyCode(model));
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
this.buildRoleList(processTasks, roleListNext, roleListAll);
instanceId = processTasks.get(0).getProcessInstance().getId();
nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
taskName[0] = processTasks.get(0).getNextTask().get(0).getName();
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
}
JgChangeRegistrationName dto = new JgChangeRegistrationName();
// 字段转换
......@@ -219,7 +213,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
// 提交创建待办逻辑
if ("1".equals(submitType)) {
//提交时先删除之前的暂存待办数据
commonService.deleteTaskModel(dto.getSequenceNbr()+"");
commonService.deleteTaskModel(dto.getSequenceNbr() + "");
// 创建待办
TaskModelDto taskModelDto = new TaskModelDto();
taskModelDto.setFlowCreateDate(dto.getApplyDate());
......@@ -256,13 +250,13 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
dto.setChangeCertificate(null);
taskModelDto.setModel(dto);
//摘要 按原有规则组装
taskModelDto.setTaskContent("来自"+dto.getUseUnitCreditCode()+"【"+dto.getReceiveOrgName()+"】的业务办理,【申请单号:"+dto.getApplyNo()+"】");
taskModelDto.setTaskContent(buildTaskContent(dto) + "待提交");
//申请单号
taskModelDto.setTaskCode(dto.getApplyNo());
//业务类型枚举code值
taskModelDto.setTaskType(BusinessTypeEnum.JG_NAME_CHANGE_REGISTRATION.getCode());
//业务主键
taskModelDto.setRelationId(dto.getSequenceNbr()+"");
taskModelDto.setRelationId(dto.getSequenceNbr() + "");
commonService.buildTaskModel(Collections.singletonList(taskModelDto));
}
}
......@@ -282,6 +276,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
}
@Transactional(rollbackFor = Exception.class)
public JgChangeRegistrationNameDto updateInfo(String submitType, JgChangeRegistrationNameDto jgChangeRegistrationNameDto, String op) {
if (Objects.isNull(jgChangeRegistrationNameDto) || StringUtils.isEmpty(submitType)) {
throw new IllegalArgumentException("参数不能为空");
......@@ -295,37 +290,33 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
if ("1".equals(submitType)) {
//发起流程
if (!StringUtils.hasText(jgChangeRegistrationName.getInstanceId())) {
try {
List<ProcessTaskDTO> processTasks = new ArrayList<>();
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("unitRename");
dto.setBusinessKey(jgChangeRegistrationName.getApplyNo());
dto.setCompleteFirstTask(true);
// 启动并执行下一步人单位传接收单位的code
dto.setNextExecuteUserCompanyCode(jgChangeRegistrationName.getReceiveOrgCode());
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
String instanceId = processTasks.get(0).getProcessInstance().getId();
String nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
String taskName = processTasks.get(0).getNextTask().get(0).getName();
this.buildRoleList(processTasks, roleListNext, roleListAll);
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
jgChangeRegistrationName.setInstanceStatus(String.join(",", roleListAll));
jgChangeRegistrationName.setInstanceId(instanceId);
jgChangeRegistrationName.setNextExecutorIds(String.join(",", roleListNext));
jgChangeRegistrationName.setNextTaskId(nextTaskId);
jgChangeRegistrationName.setNextExecuteUserIds(nextUserIds);
jgChangeRegistrationName.setAuditStatus(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass());
// 创建待办
createTaskModel(jgChangeRegistrationName, taskName, "1", nextUserIds);
} catch (Exception e) {
log.error("提交失败:{}", e);
throw new BadRequest("提交失败" + e.getMessage());
}
List<ProcessTaskDTO> processTasks = new ArrayList<>();
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("unitRename");
dto.setBusinessKey(jgChangeRegistrationName.getApplyNo());
dto.setCompleteFirstTask(true);
// 启动并执行下一步人单位传接收单位的code
dto.setNextExecuteUserCompanyCode(jgChangeRegistrationName.getReceiveOrgCode());
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
String instanceId = processTasks.get(0).getProcessInstance().getId();
String nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
String taskName = processTasks.get(0).getNextTask().get(0).getName();
this.buildRoleList(processTasks, roleListNext, roleListAll);
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
jgChangeRegistrationName.setInstanceStatus(String.join(",", roleListAll));
jgChangeRegistrationName.setInstanceId(instanceId);
jgChangeRegistrationName.setNextExecutorIds(String.join(",", roleListNext));
jgChangeRegistrationName.setNextTaskId(nextTaskId);
jgChangeRegistrationName.setNextExecuteUserIds(nextUserIds);
jgChangeRegistrationName.setAuditStatus(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass());
// 创建待办
createTaskModel(jgChangeRegistrationName, taskName, "1", nextUserIds);
} else {
// 执行一步
ProcessTaskDTO processTaskDTO = submit(op, jgChangeRegistrationName);
......@@ -392,12 +383,12 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
private String getPageTypeForReject(String operate, String auditStatus) {
// 驳回
if("1".equals(operate)){
if ("1".equals(operate)) {
// 且驳回到的节点为使用单位提交 则可编辑
if(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass().equals(auditStatus) ||
if (WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass().equals(auditStatus) ||
WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject().equals(auditStatus) ||
WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack().equals(auditStatus)
){
) {
// urlInfo.json 文件的 pageType
return "edit";
}
......@@ -413,7 +404,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
dto.setResultCode("approvalStatus");
dto.setTaskId(jgChangeRegistrationName.getNextTaskId());
dto.setComment("提交流程");
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate,jgChangeRegistrationName));
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate, jgChangeRegistrationName));
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
dto.setVariable(map);
......@@ -476,17 +467,17 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
jsonObject.put("taskType", BusinessTypeEnum.JG_NAME_CHANGE_REGISTRATION.getCode());
jsonObject.put("flowStatus", this.getTaskCodeByName(jgChangeRegistrationName.getAuditStatus()));
jsonObject.put("flowStatusLabel", jgChangeRegistrationName.getAuditStatus());
jsonObject.put("changeCertificate",null);
jsonObject.put("changeCertificate", null);
// 判断撤回后当前的节点,如果当前节点为提交节点则页面可编辑
jsonObject.put("pageType",this.getPageTypeByCurrentNode(jgChangeRegistrationName.getAuditStatus()));
jsonObject.put("pageType", this.getPageTypeByCurrentNode(jgChangeRegistrationName.getAuditStatus()));
commonService.rollbackTask(instanceId, jsonObject);
}
private String getPageTypeByCurrentNode(String auditStatus) {
if(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass().equals(auditStatus) ||
if (WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass().equals(auditStatus) ||
WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject().equals(auditStatus) ||
WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack().equals(auditStatus)
){
) {
// urlInfo.json 文件的 pageType
return "edit";
} else {
......@@ -497,45 +488,42 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
public void flowExecute(Long id, String instanceId, String operate, String comment) {
try {
JgChangeRegistrationName jgChangeRegistrationName = this.getBaseMapper().selectById(id);
String taskId = jgChangeRegistrationName.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate,jgChangeRegistrationName));
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
if (!ObjectUtils.isEmpty(jgChangeRegistrationName.getInstanceStatus()) &&
(jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject()) ||
jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack()))) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
//执行流程
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, dto);
// 更新下一步执行人、创建待办
updateExecuteIds(instanceId, id, operate, processTaskDTO);
} catch (Exception e) {
e.printStackTrace();
JgChangeRegistrationName jgChangeRegistrationName = this.getBaseMapper().selectById(id);
String taskId = jgChangeRegistrationName.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate, jgChangeRegistrationName));
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
if (!ObjectUtils.isEmpty(jgChangeRegistrationName.getInstanceStatus()) &&
(jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject()) ||
jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack()))) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
//执行流程
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, dto);
// 更新下一步执行人、创建待办
updateExecuteIds(instanceId, id, operate, processTaskDTO);
}
private String getNextUserOrgCode(String operate, JgChangeRegistrationName jgChangeRegistrationName) {
if("0".equals(operate)){
if ("0".equals(operate)) {
// 执行通过节点,单位code为接收机构单位信息
return jgChangeRegistrationName.getReceiveOrgCode();
}
if(jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass())
|| jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getReject())
|| jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getRollBack())){
if (jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass())
|| jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getReject())
|| jgChangeRegistrationName.getAuditStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getRollBack())) {
// 驳回且当前节点为一键节点时,单位code为发起人单位信息
return jgChangeRegistrationName.getUseUnitCreditCode();
}
// 2、3级驳回时,单位code为接收单位code
return jgChangeRegistrationName.getReceiveOrgCode();
return jgChangeRegistrationName.getReceiveOrgCode();
}
public void updateExecuteIds(String instanceId, Long sequenceNbr, String operate, ProcessTaskDTO processTaskDTO) {
......
......@@ -205,7 +205,7 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
if (!ObjectUtils.isEmpty(map.get("submit"))) {
String instanceId = "";
if (!ObjectUtils.isEmpty(jgChangeRegistrationReform.getSequenceNbr())&&!ObjectUtils.isEmpty(jgChangeRegistrationReform.getInstanceId())) {
if (!ObjectUtils.isEmpty(jgChangeRegistrationReform.getSequenceNbr()) && !ObjectUtils.isEmpty(jgChangeRegistrationReform.getInstanceId())) {
// 如果是旧流程则执行一步
flowExecute(jgChangeRegistrationReform.getSequenceNbr(), jgChangeRegistrationReform.getInstanceId(), "0", "");
// updateExecuteIds(instanceId, jgChangeRegistrationReform.getSequenceNbr(), "0");
......@@ -234,21 +234,17 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
public ProcessTaskDTO startByVariable(JgChangeRegistrationReform jgChangeRegistrationReform) {
ProcessTaskDTO processTaskDTO = new ProcessTaskDTO();
//启动流程
try {
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("renovationRegistrationReviewNew");
dto.setBusinessKey("submit");
dto.setCompleteFirstTask(Boolean.TRUE);
dto.setNextExecuteUserCompanyCode(jgChangeRegistrationReform.getReceiveOrgCode());
List<ActWorkflowStartDTO> actWorkflowStartDTOList = Arrays.asList(dto);
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
actWorkflowBatchDTO.setProcess(actWorkflowStartDTOList);
List<ProcessTaskDTO> result = iCmWorkflowService.startBatch(actWorkflowBatchDTO);
if (!result.isEmpty()) {
processTaskDTO = result.get(0);
}
} catch (Exception e) {
e.printStackTrace();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("renovationRegistrationReviewNew");
dto.setBusinessKey("submit");
dto.setCompleteFirstTask(Boolean.TRUE);
dto.setNextExecuteUserCompanyCode(jgChangeRegistrationReform.getReceiveOrgCode());
List<ActWorkflowStartDTO> actWorkflowStartDTOList = Arrays.asList(dto);
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
actWorkflowBatchDTO.setProcess(actWorkflowStartDTOList);
List<ProcessTaskDTO> result = iCmWorkflowService.startBatch(actWorkflowBatchDTO);
if (!result.isEmpty()) {
processTaskDTO = result.get(0);
}
return processTaskDTO;
}
......@@ -260,15 +256,15 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
jgChangeRegistrationReform.setNextExecutorIds(workflowResultDto.getNextExecutorRoleIds());
jgChangeRegistrationReform.setNextExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
String nextTaskid = Optional.ofNullable(workflowResultDto.getNextTaskId()).orElse("");
String taskCode =FlowStatusEnum.TO_BE_FINISHED.getName();
if(!ObjectUtils.isEmpty(workflowResultDto.getNextTaskCode())){
taskCode = Optional.ofNullable(workflowResultDto.getNextTaskCode()).orElse("");
String taskCode = FlowStatusEnum.TO_BE_FINISHED.getName();
if (!ObjectUtils.isEmpty(workflowResultDto.getNextTaskCode())) {
taskCode = Optional.ofNullable(workflowResultDto.getNextTaskCode()).orElse("");
}
String role =Optional.ofNullable(workflowResultDto.getNextExecutorRoleIds()).orElse("");
if(operate.equals("startWorkfow")){
role =Optional.ofNullable(workflowResultDto.getExecutorRoleIds()).orElse("")+","+Optional.ofNullable(workflowResultDto.getNextExecutorRoleIds()).orElse("");
String role = Optional.ofNullable(workflowResultDto.getNextExecutorRoleIds()).orElse("");
if (operate.equals("startWorkfow")) {
role = Optional.ofNullable(workflowResultDto.getExecutorRoleIds()).orElse("") + "," + Optional.ofNullable(workflowResultDto.getNextExecutorRoleIds()).orElse("");
operate = "0";
instanceId =workflowResultDto.getInstanceId();
instanceId = workflowResultDto.getInstanceId();
updateTodoAndCreate = Boolean.FALSE;
}
if (!FlowStatusEnum.TO_BE_FINISHED.getName().equals(taskCode)) {
......@@ -291,13 +287,13 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
jgChangeRegistrationReform.setStatus(WorkFlowStatusEnum.getMessage(taskCode).getReject());
jgChangeRegistrationReform.setPromoter("");
}
if(updateTodoAndCreate) {
if (updateTodoAndCreate) {
// 上个代办改为已办
HashMap<String, Object> map = new HashMap<>();
if("0".equals(operate)){
if ("0".equals(operate)) {
map.put("taskStatus", FlowStatusEnum.TO_BE_FINISHED.getCode());
map.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
}else {
} else {
map.put("taskStatus", FlowStatusEnum.REJECTED.getCode());
map.put("taskStatusLabel", FlowStatusEnum.REJECTED.getName());
}
......@@ -307,7 +303,13 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
TaskV2Model taskV2Model = commonServiceImpl.updateTaskModel(map);
TaskModelDto taskModelDto = new TaskModelDto();
BeanUtils.copyProperties(taskV2Model, taskModelDto);
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
taskModelDto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
if (WorkFlowStatusEnum.CHANGE_SUBMIT.getCode().equals(taskCode) && "1".equals(operate)) {
taskModelDto.setPageType("edit");
}
// 创建新的代办
taskModelDto.setModel(conveterTaskMessageDTO(jgChangeRegistrationReform));
commonServiceImpl.buildTaskModel(Collections.singletonList(taskModelDto));
......@@ -327,7 +329,7 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
map.put("flowStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
map.put("relationId", jgChangeRegistrationReform.getInstanceId());
jgChangeRegistrationReform.setNextExecuteUserIds("");
map.put("model",conveterTaskMessageDTO(jgChangeRegistrationReform));
map.put("model", conveterTaskMessageDTO(jgChangeRegistrationReform));
commonServiceImpl.updateTaskModel(map);
}
this.getBaseMapper().updateById(jgChangeRegistrationReform);
......@@ -336,28 +338,22 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
public void flowExecute(Long id, String instanceId, String operate, String comment) {
ProcessTaskDTO processTaskDTO = new ProcessTaskDTO();
JgChangeRegistrationReform jgChangeRegistrationReform = this.getBaseMapper().selectById(id);
try {
// JSONObject task = workFlowFeginService.getTaskNoAuth(instanceId);
// JSONObject taskMessage = JSON.parseObject(JSON.toJSONString(task.get("data")));
String taskId = jgChangeRegistrationReform.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
//2023年12月27日16点33分 流程状态为起草人撤回或者一级审批驳回时需要将提交时的已同意修改为已提交
if (!ObjectUtils.isEmpty(jgChangeRegistrationReform) && (jgChangeRegistrationReform.getStatus().equals(WorkFlowStatusEnum.CHANGE_SUBMIT.getRollBack()) || jgChangeRegistrationReform.getStatus().equals(WorkFlowStatusEnum.CHANGE_SUBMIT.getReject()))) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
dto.setNextExecuteUserCompanyCode(getNextUserOrgCode(operate,jgChangeRegistrationReform));
//执行流程
processTaskDTO = iCmWorkflowService.complete(taskId, dto);
} catch (Exception e) {
e.printStackTrace();
}
String taskId = jgChangeRegistrationReform.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
//2023年12月27日16点33分 流程状态为起草人撤回或者一级审批驳回时需要将提交时的已同意修改为已提交
if (!ObjectUtils.isEmpty(jgChangeRegistrationReform) && (jgChangeRegistrationReform.getStatus().equals(WorkFlowStatusEnum.CHANGE_SUBMIT.getRollBack()) || jgChangeRegistrationReform.getStatus().equals(WorkFlowStatusEnum.CHANGE_SUBMIT.getReject()))) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
dto.setNextExecuteUserCompanyCode(getNextUserOrgCode(operate, jgChangeRegistrationReform));
//执行流程
processTaskDTO = iCmWorkflowService.complete(taskId, dto);
// 更新下一步执行人
updateExecuteIds(instanceId, jgChangeRegistrationReform, operate, processTaskDTO);
......@@ -365,8 +361,7 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
public void withdraw(String instanceId) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
JgChangeRegistrationReform jgChangeRegistrationReform = this.getBaseMapper().selectOne(new QueryWrapper<JgChangeRegistrationReform>().eq("instance_id",instanceId));
ArrayList<String> roleList = new ArrayList<>();
JgChangeRegistrationReform jgChangeRegistrationReform = this.getBaseMapper().selectOne(new QueryWrapper<JgChangeRegistrationReform>().eq("instance_id", instanceId));
ProcessTaskDTO processTaskDTO = iCmWorkflowService.rollBack(instanceId);
WorkflowResultDto workflowResultDto = conveterProcessTaskDTO2WorkflowResultDto(processTaskDTO);
String taskCode = Optional.ofNullable(workflowResultDto.getNextTaskCode()).orElse("");
......@@ -386,16 +381,14 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
jsonObject.put("flowStatusLabel", jgChangeRegistrationReform.getAuditStatus());
jsonObject.put("nextTaskId", jgChangeRegistrationReform.getNextTaskId());
jsonObject.put("nextExecuteUser", jgChangeRegistrationReform.getNextExecutorIds());
jsonObject.put("taskType",BusinessTypeEnum.JG_RENOVATION_REGISTRATION.getCode());
jsonObject.put("taskCode",taskCode);
jsonObject.put("instanceId",instanceId);
jsonObject.put("pageType","look");
jsonObject.put("taskType", BusinessTypeEnum.JG_RENOVATION_REGISTRATION.getCode());
jsonObject.put("pageType", "look");
//如果创建人等于当前人则打开编辑页面
if(taskCode.equals(WorkFlowStatusEnum.CHANGE_SUBMIT.getCode())){
jsonObject.put("pageType","edit");
if (taskCode.equals(WorkFlowStatusEnum.CHANGE_SUBMIT.getCode())) {
jsonObject.put("pageType", "edit");
}
jsonObject.put("model",conveterTaskMessageDTO(jgChangeRegistrationReform));
commonServiceImpl.rollbackTask(instanceId,jsonObject);
jsonObject.put("model", conveterTaskMessageDTO(jgChangeRegistrationReform));
commonServiceImpl.rollbackTask(instanceId, jsonObject);
}
public void deleteBatch(List<Long> ids) {
......@@ -427,7 +420,7 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
originalData = idxBizJgRegisterInfoService.getDetailByRecord(equipId);
originalDataOther = idxBizJgRegisterInfoService.getDetailFieldCamelCaseByRecord(equipId);
detail.putAll(originalDataOther);
detail.put("techInfo",originalData);
detail.put("techInfo", originalData);
} else {
JgRegistrationHistory jgRegistrationHistory = jgRegistrationHistoryMapper.selectOne(new QueryWrapper<JgRegistrationHistory>()
.eq("equ_id", equipId)
......@@ -484,7 +477,7 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
String newData = jgRegistrationHistory.getChangeData();
//将历史数据更新到技术参数表中
JSONObject allData = JSONObject.parseObject(newData);
Map<String,Object> techInfo = (Map<String, Object>) allData.get("techInfo");
Map<String, Object> techInfo = (Map<String, Object>) allData.get("techInfo");
IdxBizJgTechParamsElevator idxBizJgTechParamsElevatorNew = JSONObject.parseObject(JSONObject.toJSONString(techInfo), IdxBizJgTechParamsElevator.class);
BeanUtil.copyProperties(idxBizJgTechParamsElevatorNew, idxBizJgTechParamsElevator, "sequenceNbr", "record");
idxBizJgTechParamsElevatorMapper.updateById(idxBizJgTechParamsElevator);
......@@ -659,27 +652,37 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
*/
public String getSummaryInfo(JgChangeRegistrationReform jgChangeRegistrationReform) {
String result = "来自%s【%s】的业务办理,【申请单号:%s】";
return String.format(result,Optional.ofNullable(jgChangeRegistrationReform.getEquipListName()).orElse("无"), jgChangeRegistrationReform.getSupervisoryCode(), jgChangeRegistrationReform.getApplyNo());
return String.format(result, Optional.ofNullable(jgChangeRegistrationReform.getEquipListName()).orElse("无"), jgChangeRegistrationReform.getSupervisoryCode(), jgChangeRegistrationReform.getApplyNo());
}
/**
* 构建工作台待办实体类
*
* @param jgChangeRegistrationReform
* @param processTaskDTO
* @return
*/
public TaskModelDto getTaskModelDtoList(JgChangeRegistrationReform jgChangeRegistrationReform, ProcessTaskDTO processTaskDTO) {
//设置实体无需字段为空
jgChangeRegistrationReform.setTransformationQualityCertificate(null);
jgChangeRegistrationReform.setRenovationSupervisioninspectionCertificate(null);
jgChangeRegistrationReform.setRegDate(null);
jgChangeRegistrationReform.setCreateDate(null);
jgChangeRegistrationReform.setAuditPassDate(null);
jgChangeRegistrationReform.setInputUnitNo(null);
TaskModelDto taskModelDto = new TaskModelDto();
if(ObjectUtils.isEmpty(processTaskDTO)){
if (ObjectUtils.isEmpty(processTaskDTO)) {
//taskCode 使用申请单编号
taskModelDto.setTaskCode(jgChangeRegistrationReform.getApplyNo());
//摘要
taskModelDto.setTaskContent(getSummaryInfo(jgChangeRegistrationReform));
//任务类型
taskModelDto.setTaskType(BusinessTypeEnum.JG_RENOVATION_REGISTRATION.getCode());
//工作流实例id
taskModelDto.setRelationId(String.valueOf(jgChangeRegistrationReform.getSequenceNbr()));
taskModelDto.setModel(conveterTaskMessageDTO(jgChangeRegistrationReform));
} else {
List<WorkflowResultDto> workflowResultDtoList = commonServiceImpl.buildWorkFlowInfo(Arrays.asList(processTaskDTO));
WorkflowResultDto workflowResultDto = conveterProcessTaskDTO2WorkflowResultDto(processTaskDTO);
//工作流创建时间
taskModelDto.setFlowCreateDate(jgChangeRegistrationReform.getCreateDate());
//工作流返回节点名称
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
//taskCode 使用申请单编号
taskModelDto.setTaskCode(jgChangeRegistrationReform.getApplyNo());
//摘要
......@@ -691,7 +694,9 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
//任务类型名称
taskModelDto.setTaskTypeLabel(BusinessTypeEnum.JG_RENOVATION_REGISTRATION.getName());
//工作流实例id
taskModelDto.setRelationId(String.valueOf(jgChangeRegistrationReform.getSequenceNbr()));
taskModelDto.setRelationId(jgChangeRegistrationReform.getInstanceId());
//执行人id
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
//任务状态code
taskModelDto.setTaskStatus(commonServiceImpl.getDictionaryCodeByName(jgChangeRegistrationReform.getStatus()));
taskModelDto.setFlowStatus(taskModelDto.getTaskStatus());
......@@ -705,49 +710,11 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
//任务发起人所在单位
taskModelDto.setStartUserCompanyName(jgChangeRegistrationReform.getCreateUserCompanyName());
//任务发起人发起时间
taskModelDto.setStartDate(new Date());
taskModelDto.setNextExecuteUser(jgChangeRegistrationReform.getNextExecutorIds());
//跳转路径
// taskModelDto.setRoutePath();
taskModelDto.setModel(conveterTaskMessageDTO(jgChangeRegistrationReform));
}else{
List<WorkflowResultDto> workflowResultDtoList = commonServiceImpl.buildWorkFlowInfo(Arrays.asList(processTaskDTO));
WorkflowResultDto workflowResultDto = conveterProcessTaskDTO2WorkflowResultDto(processTaskDTO);
//工作流创建时间
taskModelDto.setFlowCreateDate(jgChangeRegistrationReform.getCreateDate());
//工作流返回节点名称
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
//taskCode 使用申请单编号
taskModelDto.setTaskCode(jgChangeRegistrationReform.getApplyNo());
//摘要
taskModelDto.setTaskContent(getSummaryInfo(jgChangeRegistrationReform));
//任务描述-非必填
taskModelDto.setTaskDesc(null);
//任务类型
taskModelDto.setTaskType(BusinessTypeEnum.JG_RENOVATION_REGISTRATION.getCode());
//任务类型名称
taskModelDto.setTaskTypeLabel(BusinessTypeEnum.JG_RENOVATION_REGISTRATION.getName());
//工作流实例id
taskModelDto.setRelationId(jgChangeRegistrationReform.getInstanceId());
//执行人id
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
//任务状态code
taskModelDto.setTaskStatus(commonServiceImpl.getDictionaryCodeByName(jgChangeRegistrationReform.getStatus()));
taskModelDto.setFlowStatus(taskModelDto.getTaskStatus());
//任务状态名称
taskModelDto.setTaskStatusLabel(jgChangeRegistrationReform.getStatus());
taskModelDto.setFlowStatusLabel(jgChangeRegistrationReform.getStatus());
//任务创建人id
taskModelDto.setStartUserId(jgChangeRegistrationReform.getCreateUserId());
//任务创建人名称
taskModelDto.setStartUser(jgChangeRegistrationReform.getCreateUserName());
//任务发起人所在单位
taskModelDto.setStartUserCompanyName(jgChangeRegistrationReform.getCreateUserCompanyName());
//任务发起人发起时间
taskModelDto.setStartDate(new Date());
taskModelDto.setNextExecuteUser(jgChangeRegistrationReform.getNextExecutorIds());
//跳转路径
// taskModelDto.setRoutePath();
taskModelDto.setModel(conveterTaskMessageDTO(jgChangeRegistrationReform));
}
return taskModelDto;
}
......@@ -769,34 +736,35 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
/**
* 将jgChangeRegistrationReform转换成TaskModelDto
*
* @param jgChangeRegistrationReform
* @return
*/
public TaskMessageDto conveterTaskMessageDTO(JgChangeRegistrationReform jgChangeRegistrationReform) {
TaskMessageDto taskMessageDto = new TaskMessageDto();
taskMessageDto.setInstanceId(jgChangeRegistrationReform.getInstanceId());
taskMessageDto.setStatus(jgChangeRegistrationReform.getStatus());
taskMessageDto.setAuditStatus(jgChangeRegistrationReform.getStatus());
taskMessageDto.setPromoter(jgChangeRegistrationReform.getPromoter());
taskMessageDto.setNextExecuteUserIds(jgChangeRegistrationReform.getNextExecuteUserIds());
taskMessageDto.setSequenceNbr(jgChangeRegistrationReform.getSequenceNbr());
taskMessageDto.setNextExecuteIds(jgChangeRegistrationReform.getNextExecutorIds());
return taskMessageDto;
}
public TaskMessageDto conveterTaskMessageDTO(JgChangeRegistrationReform jgChangeRegistrationReform) {
TaskMessageDto taskMessageDto = new TaskMessageDto();
taskMessageDto.setInstanceId(jgChangeRegistrationReform.getInstanceId());
taskMessageDto.setStatus(jgChangeRegistrationReform.getStatus());
taskMessageDto.setAuditStatus(jgChangeRegistrationReform.getStatus());
taskMessageDto.setPromoter(jgChangeRegistrationReform.getPromoter());
taskMessageDto.setNextExecuteUserIds(jgChangeRegistrationReform.getNextExecuteUserIds());
taskMessageDto.setSequenceNbr(jgChangeRegistrationReform.getSequenceNbr());
taskMessageDto.setNextExecuteIds(jgChangeRegistrationReform.getNextExecutorIds());
return taskMessageDto;
}
private String getNextUserOrgCode(String operate, JgChangeRegistrationReform jgChangeRegistrationReform) {
if("0".equals(operate)){
if ("0".equals(operate)) {
// 执行通过节点,单位code为接收机构单位信息
return jgChangeRegistrationReform.getReceiveOrgCode();
}
if(jgChangeRegistrationReform.getAuditStatus().equals(WorkFlowStatusEnum.CHANGE_RECEIVE.getPass())
if (jgChangeRegistrationReform.getAuditStatus().equals(WorkFlowStatusEnum.CHANGE_RECEIVE.getPass())
|| jgChangeRegistrationReform.getAuditStatus().equals(WorkFlowStatusEnum.CHANGE_RECEIVE.getReject())
|| jgChangeRegistrationReform.getAuditStatus().equals(WorkFlowStatusEnum.CHANGE_RECEIVE.getRollBack())){
|| jgChangeRegistrationReform.getAuditStatus().equals(WorkFlowStatusEnum.CHANGE_RECEIVE.getRollBack())) {
// 驳回且当前节点为一键节点时,单位code为发起人单位信息
return jgChangeRegistrationReform.getUseUnitCreditCode();
}
// 2、3级驳回时,单位code为接收单位code
return jgChangeRegistrationReform.getReceiveOrgCode();
return jgChangeRegistrationReform.getReceiveOrgCode();
}
}
\ No newline at end of file
......@@ -353,29 +353,27 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
public void flowExecute(Long id, String instanceId, String operate, String comment) {
WorkflowResultDto workflowResult = new WorkflowResultDto();
JgChangeRegistrationTransfer transfer = this.getById(id);
try {
String taskId = transfer.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
dto.setVariable(map);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate, transfer));
if (!ObjectUtils.isEmpty(transfer) && (transfer.getStatus().equals(WorkFlowStatusEnum.TRANSFER_SUBMIT.getRollBack()) || transfer.getStatus().equals(WorkFlowStatusEnum.TRANSFER_SUBMIT.getReject()))) {
map.put("approvalStatus", "提交");
}
//执行流程
ProcessTaskDTO complete = icmWorkflowService.complete(taskId, dto);
workflowResult = commonService.buildWorkFlowInfo(Collections.singletonList(complete)).get(0);
// 更新下一步执行人
this.updateExecuteIds(instanceId, transfer, operate, workflowResult);
} catch (Exception e) {
e.printStackTrace();
String taskId = transfer.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
dto.setVariable(map);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate, transfer));
if (!ObjectUtils.isEmpty(transfer) && (transfer.getStatus().equals(WorkFlowStatusEnum.TRANSFER_SUBMIT.getRollBack()) || transfer.getStatus().equals(WorkFlowStatusEnum.TRANSFER_SUBMIT.getReject()))) {
map.put("approvalStatus", "提交");
}
//执行流程
ProcessTaskDTO complete = icmWorkflowService.complete(taskId, dto);
workflowResult = commonService.buildWorkFlowInfo(Collections.singletonList(complete)).get(0);
// 更新下一步执行人
this.updateExecuteIds(instanceId, transfer, operate, workflowResult);
}
/**
......@@ -696,6 +694,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
taskModelDto.setRelationId(instanceId);
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtil.copyProperties(jgChangeRegistrationTransfer, taskMessageDto);
taskModelDto.setPageType(this.getPageTypeByCurrentNode(jgChangeRegistrationTransfer.getAuditStatus()));
taskModelDto.setModel(taskMessageDto);
commonService.buildTaskModel(Collections.singletonList(taskModelDto));
}
......@@ -1032,24 +1031,19 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* 启动工作流
*/
private WorkflowResultDto startWorkFlork(String receiveOrgCreditCode) {
try {
ActWorkflowBatchDTO workflowBatchParams = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> workflowList = new ArrayList<>();
ActWorkflowStartDTO workflow = new ActWorkflowStartDTO();
workflow.setProcessDefinitionKey(PROCESS_DEFINITION_KEY);
workflow.setBusinessKey("submit");
workflow.setCompleteFirstTask(Boolean.TRUE);
//下一节点执行人单位(下节点接收机构code)
workflow.setNextExecuteUserCompanyCode(receiveOrgCreditCode);
workflowList.add(workflow);
workflowBatchParams.setProcess(workflowList);
List<ProcessTaskDTO> processTasks = icmWorkflowService.startBatch(workflowBatchParams);
// 组装工作流返回的数据
return commonService.buildWorkFlowInfo(processTasks).get(0);
} catch (Exception e) {
log.error("提交失败:{}", e);
throw new BadRequest("提交失败" + e.getMessage());
}
ActWorkflowBatchDTO workflowBatchParams = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> workflowList = new ArrayList<>();
ActWorkflowStartDTO workflow = new ActWorkflowStartDTO();
workflow.setProcessDefinitionKey(PROCESS_DEFINITION_KEY);
workflow.setBusinessKey("submit");
workflow.setCompleteFirstTask(Boolean.TRUE);
//下一节点执行人单位(下节点接收机构code)
workflow.setNextExecuteUserCompanyCode(receiveOrgCreditCode);
workflowList.add(workflow);
workflowBatchParams.setProcess(workflowList);
List<ProcessTaskDTO> processTasks = icmWorkflowService.startBatch(workflowBatchParams);
// 组装工作流返回的数据
return commonService.buildWorkFlowInfo(processTasks).get(0);
}
/**
......
......@@ -26,6 +26,7 @@ import com.yeejoin.amos.boot.module.jg.biz.utils.WordTemplateUtils;
import com.yeejoin.amos.boot.module.jg.flc.api.fegin.WorkFlowFeignService;
import com.yeejoin.amos.boot.module.ymt.api.entity.*;
import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentClassifityEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
......@@ -504,7 +505,7 @@ public class JgChangeRegistrationUnitServiceImpl extends BaseService<JgChangeReg
dto.setUseInnerCode(ValidationUtil.isEmpty(obj.get("USE_INNER_CODE")) ? "" : String.valueOf(obj.get("USE_INNER_CODE")));
dto.setEquAddress((String.valueOf(obj.get("ADDRESS"))));
dto.setSupervisoryCode(String.valueOf(obj.get("SUPERVISORY_CODE")));
dto.setEquList(String.valueOf(obj.get("EQU_LIST")));
jgRelationEquip.setEquId(String.valueOf(obj.get("SEQUENCE_NBR")));
jgRelationEquip.setUnitChangeRegistrationId(applyNo);
if (!CollectionUtils.isEmpty(nextExecutorUserIds)) {
......@@ -542,7 +543,7 @@ public class JgChangeRegistrationUnitServiceImpl extends BaseService<JgChangeReg
dto.setFlowCreateDate(new Date());
dto.setTaskName(workflowResultDtos.get(0).getNextTaskName());
dto.setFlowCode(obj.getNextTaskId());
dto.setTaskContent("来自"+obj.getEquType()+"【"+obj.getSupervisoryCode()+"】的业务办理,【申请单号:"+obj.getApplyNo()+"】");
dto.setTaskContent("来自"+obj.getEquList()+"【"+obj.getSupervisoryCode()+"】的业务办理,【申请单号:"+obj.getApplyNo()+"】");
dto.setTaskCode(obj.getApplyNo());
dto.setTaskType(BusinessTypeEnum.JG_COMPANY_CHANGE_REGISTRATION.getCode());
dto.setTaskTypeLabel(BusinessTypeEnum.JG_COMPANY_CHANGE_REGISTRATION.getName());
......@@ -564,7 +565,7 @@ public class JgChangeRegistrationUnitServiceImpl extends BaseService<JgChangeReg
//行数据
dto.setModel(obj);
//摘要 按原有规则组装
dto.setTaskContent("来自"+obj.getEquType()+"【"+obj.getSupervisoryCode()+"】的业务办理,【申请单号:"+obj.getApplyNo()+"】");
dto.setTaskContent("来自"+obj.getEquList()+"【"+obj.getSupervisoryCode()+"】的业务办理,【申请单号:"+obj.getApplyNo()+"】");
//申请单号
dto.setTaskCode(obj.getApplyNo());
//业务类型枚举code值
......@@ -762,9 +763,8 @@ public class JgChangeRegistrationUnitServiceImpl extends BaseService<JgChangeReg
task.setResultCode("approvalStatus");
task.setTaskId(taskId);
task.setComment("");
task.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(op,dto));
task.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(op,jgChangeRegistrationUnit));
task.setNextExecuteUserCompanyCode(dto.getReceiveOrgCode());
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", op);
if (!ObjectUtils.isEmpty(jgChangeRegistrationUnit.getInstanceStatus()) &&
......@@ -984,7 +984,7 @@ public class JgChangeRegistrationUnitServiceImpl extends BaseService<JgChangeReg
private String buildTaskContent(JgChangeRegistrationUnit obj) {
return "来自"+obj.getEquType()+"【"+obj.getSupervisoryCode()+"】的业务办理,【申请单号:"+obj.getApplyNo()+"】";
return "来自"+ EquipmentClassifityEnum.getNameByCode(obj.getEquList()) +"【"+obj.getSupervisoryCode()+"】的业务办理,【申请单号:"+obj.getApplyNo()+"】";
}
......@@ -1120,14 +1120,14 @@ public class JgChangeRegistrationUnitServiceImpl extends BaseService<JgChangeReg
}
private String getNextUserOrgCode(String operate, JgChangeRegistrationUnitDto jgChangeRegistrationName) {
private String getNextUserOrgCode(String operate, JgChangeRegistrationUnit jgChangeRegistrationName) {
if("0".equals(operate)){
// 执行通过节点,单位code为接收机构单位信息
return jgChangeRegistrationName.getReceiveOrgCode();
}
if(jgChangeRegistrationName.getStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getPass())
|| jgChangeRegistrationName.getStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getReject())
|| jgChangeRegistrationName.getStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_SUBMIT.getRollBack())){
if(jgChangeRegistrationName.getStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getPass())
|| jgChangeRegistrationName.getStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getReject())
|| jgChangeRegistrationName.getStatus().equals(WorkFlowStatusEnum.UNIT_RENAME_RECEIVE.getRollBack())){
// 驳回且当前节点为一键节点时,单位code为发起人单位信息
return jgChangeRegistrationName.getUseUnitCreditCode();
}
......
......@@ -88,102 +88,97 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
@Transactional(rollbackFor = Exception.class)
public void saveOrUpdate(JSONObject map, ReginParams reginParams) {
JgEnableDisable jgEnableDisable = new JgEnableDisable();
if(!"null".equals(String.valueOf(map.get("sequenceNbr")))){
if (!"null".equals(String.valueOf(map.get("sequenceNbr")))) {
jgEnableDisable = this.baseMapper.selectById(String.valueOf(map.get("sequenceNbr")));
} else {
// 获取申请编号
ResponseModel<List<String>> listResponseModel = tzsServiceFeignClient.applicationFormCode(ApplicationFormTypeEnum.getCode.get(String.valueOf(map.get("businessCode"))), 1);
jgEnableDisable.setApplyNo(listResponseModel.getResult().get(0));
}
jgEnableDisable.setCreateDate(new Date());
String submit = String.valueOf(map.get("submit"));
String pageType = String.valueOf(map.get("formType"));
String record = String.valueOf(map.get("record"));
String businessCode = String.valueOf(map.get("businessCode"));
String businessCode = ObjectUtils.isEmpty(map.get("applyType"))?String.valueOf(map.get("businessCode")):String.valueOf(map.get("applyType"));
// 接收机构
String[] receiveOrgCode = String.valueOf(map.getString("receiveOrgCode")).split("_");
List<WorkflowResultDto> workflowResultList = new ArrayList<>();
ProcessTaskDTO processTaskDTO = new ProcessTaskDTO();
WorkflowResultDto workflowResultDto = new WorkflowResultDto();
List<ProcessTaskDTO> processTaskDTOS = new ArrayList<>();
String instanceId = "";
if (map.containsKey("instanceId")) {
// 只调用执行API,返回下个节点信息,用于填充业务字段
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(jgEnableDisable.getNextTaskId());
HashMap<String, Object> commMap = new HashMap<>();
if (FlowStatusEnum.REJECTED.getName().equals(jgEnableDisable.getAuditStatus()) || FlowStatusEnum.ROLLBACK.getName().equals(jgEnableDisable.getAuditStatus())) {
commMap.put("approvalStatus", "提交");
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(jgEnableDisable.getUseUnitCreditCode());
} else {
commMap.put("approvalStatus", submit);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(jgEnableDisable.getReceiveCompanyCode());
}
dto.setVariable(commMap);
processTaskDTO = iCmWorkflowService.complete(jgEnableDisable.getNextTaskId(), dto);
// 提取节点等信息
workflowResultDto = commonService.buildWorkFlowInfo(Collections.singletonList(processTaskDTO)).get(0);
if (SUBMIT_TYPE_FLOW.equals(submit)) {
if (map.containsKey("instanceId") && !ObjectUtils.isEmpty(map.get("instanceId"))){
// 只调用执行API,返回下个节点信息,用于填充业务字段
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(jgEnableDisable.getNextTaskId());
HashMap<String, Object> commMap = new HashMap<>();
if (FlowStatusEnum.REJECTED.getName().equals(jgEnableDisable.getAuditStatus()) || FlowStatusEnum.ROLLBACK.getName().equals(jgEnableDisable.getAuditStatus())) {
commMap.put("approvalStatus", "提交");
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(jgEnableDisable.getReceiveCompanyCode());
} else {
commMap.put("approvalStatus", submit);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(jgEnableDisable.getUseUnitCreditCode());
}
if (!ObjectUtils.isEmpty(jgEnableDisable.getExecuteSequence())) {
jgEnableDisable.setExecuteSequence(jgEnableDisable.getExecuteSequence() + "," + workflowResultDto.getNextExecutorRoleIds());
dto.setVariable(commMap);
ProcessTaskDTO processTaskDTO = iCmWorkflowService.complete(jgEnableDisable.getNextTaskId(), dto);
processTaskDTOS.add(processTaskDTO);
// 提取节点等信息
workflowResultDto = commonService.buildWorkFlowInfo(Collections.singletonList(processTaskDTO)).get(0);
workflowResultList.add(workflowResultDto);
if (!ObjectUtils.isEmpty(jgEnableDisable.getExecuteSequence())) {
jgEnableDisable.setExecuteSequence(jgEnableDisable.getExecuteSequence() + "," + workflowResultDto.getNextExecutorRoleIds());
} else {
jgEnableDisable.setExecuteSequence(workflowResultDto.getNextExecutorRoleIds());
}
jgEnableDisable.setEquList("null".equals(record) ? "null" : map.get("equListDesc").toString());
jgEnableDisable.setSupervisoryCode("null".equals(record) ? "null" : map.get("supervisoryCode").toString());
jgEnableDisable.setPromoter(RequestContext.getExeUserId());
jgEnableDisable.setNextExecutorIds(String.join(",", workflowResultDto.getNextExecutorRoleIds()));
jgEnableDisable.setAuditStatus(String.valueOf(FlowStatusEnum.TO_BE_PROCESSED.getName()));
jgEnableDisable.setNextTaskId(workflowResultDto.getNextTaskId());
jgEnableDisable.setNextExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
this.baseMapper.updateById(jgEnableDisable);
// 上个代办改为已办
HashMap<String, Object> map1 = new HashMap<>();
map1.put("taskStatus", FlowStatusEnum.TO_BE_PROCESSED.getCode());
map1.put("taskStatusLabel", FlowStatusEnum.TO_BE_PROCESSED.getName());
map1.put("relationId", jgEnableDisable.getInstanceId());
map1.put("flowStatus", FlowStatusEnum.TO_BE_PROCESSED.getCode());
map1.put("flowStatusLabel", FlowStatusEnum.TO_BE_PROCESSED.getName());
TaskV2Model taskV2Model = commonService.updateTaskModel(map1);
if (ObjectUtils.isEmpty(taskV2Model)) {
TaskModelDto taskModelDto = new TaskModelDto();
BeanUtils.copyProperties(taskV2Model, taskModelDto);
// 创建新的代办
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtils.copyProperties(jgEnableDisable, taskMessageDto);
taskModelDto.setModel(taskMessageDto);
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
taskModelDto.setFlowStatus(FlowStatusEnum.TO_BE_PROCESSED.getCode());
taskModelDto.setFlowStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setFlowCode(jgEnableDisable.getNextTaskId());
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
commonService.buildTaskModel(Collections.singletonList(taskModelDto));
}
} else {
jgEnableDisable.setExecuteSequence(workflowResultDto.getNextExecutorRoleIds());
// 启动工作流并返回信息
workflowResultList = workFlowInfo(submit, record,receiveOrgCode[0]);
//业务数据组装等
businessData(submit, reginParams, jgEnableDisable, map, workflowResultList);
}
jgEnableDisable.setEquList("null".equals(record) ? "null" : map.get("equListDesc").toString());
jgEnableDisable.setSupervisoryCode("null".equals(record) ? "null" : map.get("supervisoryCode").toString());
jgEnableDisable.setPromoter(RequestContext.getExeUserId());
jgEnableDisable.setNextExecutorIds(String.join(",", workflowResultDto.getNextExecutorRoleIds()));
jgEnableDisable.setAuditStatus(String.valueOf(FlowStatusEnum.TO_BE_PROCESSED.getName()));
jgEnableDisable.setNextTaskId(workflowResultDto.getNextTaskId());
jgEnableDisable.setNextExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
this.baseMapper.updateById(jgEnableDisable);
// 上个代办改为已办
HashMap<String, Object> map1 = new HashMap<>();
map1.put("taskStatus", FlowStatusEnum.TO_BE_PROCESSED.getCode());
map1.put("taskStatusLabel", FlowStatusEnum.TO_BE_PROCESSED.getName());
map1.put("relationId", jgEnableDisable.getInstanceId());
map1.put("flowStatus", FlowStatusEnum.TO_BE_PROCESSED.getCode());
map1.put("flowStatusLabel", FlowStatusEnum.TO_BE_PROCESSED.getName());
TaskV2Model taskV2Model = commonService.updateTaskModel(map1);
if (ObjectUtils.isEmpty(taskV2Model)) {
// 如果为保存并提交,则创建代办
buildTask(Collections.singletonList(jgEnableDisable), businessCode, Collections.singletonList(workflowResultDto),Boolean.TRUE);
} else {
TaskModelDto taskModelDto = new TaskModelDto();
BeanUtils.copyProperties(taskV2Model, taskModelDto);
// 创建新的代办
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtils.copyProperties(jgEnableDisable, taskMessageDto);
taskModelDto.setModel(taskMessageDto);
taskModelDto.setTaskName(workflowResultDto.getNextTaskName());
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
taskModelDto.setFlowStatus(FlowStatusEnum.TO_BE_PROCESSED.getCode());
taskModelDto.setFlowStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setFlowCode(jgEnableDisable.getNextTaskId());
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorRoleIds());
commonService.buildTaskModel(Collections.singletonList(taskModelDto));
}
} else {
// 获取申请编号
ResponseModel<List<String>> listResponseModel = tzsServiceFeignClient.applicationFormCode(ApplicationFormTypeEnum.getCode.get(String.valueOf(map.get("businessCode"))), 1);
jgEnableDisable.setApplyNo(listResponseModel.getResult().get(0));
// 启动工作流并返回信息
workflowResultList = workFlowInfo(submit, record,receiveOrgCode[0]);
//业务数据组装等
businessData(submit, reginParams, jgEnableDisable, map, workflowResultList);
}
// 仅保存
this.saveOrUpdate(jgEnableDisable);
if ("add".equals(pageType)) {
this.save(jgEnableDisable);
buildTask(Arrays.asList(jgEnableDisable),businessCode, workflowResultList,Boolean.FALSE);
if(!SUBMIT_TYPE_FLOW.equals(submit)){
// 暂存任务
buildTaskDraft(jgEnableDisable);
}
buildTask(Arrays.asList(jgEnableDisable), businessCode, workflowResultList, Boolean.FALSE);
} else {
// 编辑
jgEnableDisable.setSequenceNbr(Long.valueOf(String.valueOf(map.get("sequenceNbr"))));
......@@ -192,12 +187,18 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
lambda.eq(JgEnableDisableEq::getEnableDisableApplyId, String.valueOf(map.get("sequenceNbr")));
jgEnableDisableEqService.getBaseMapper().delete(lambda);
}
if(!SUBMIT_TYPE_FLOW.equals(submit)){
// 暂存任务
buildTaskDraft(jgEnableDisable);
} else {
buildTask(Arrays.asList(jgEnableDisable), businessCode, workflowResultList, Boolean.TRUE);
}
if(!"null".equals(record)){
// 关联设备表
JgEnableDisableEq jgEnableDisableEq = new JgEnableDisableEq();
jgEnableDisableEq.setEquId(record);
jgEnableDisableEq.setEnableDisableApplyId(jgEnableDisable.getSequenceNbr().toString());
jgEnableDisableEqService.save(jgEnableDisableEq);
jgEnableDisableEqService.saveOrUpdate(jgEnableDisableEq);
}
}
......@@ -209,20 +210,24 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
private void buildTaskDraft(JgEnableDisable jgEnableDisable) {
List<TaskModelDto> modelDtos = new ArrayList<>();
TaskModelDto dto = new TaskModelDto();
//行数据
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtils.copyProperties(jgEnableDisable, taskMessageDto);
dto.setModel(taskMessageDto);
//摘要 按原有规则组装
dto.setTaskContent(String.format("来自%s【%s】的业务办理,【申请单号:%s】", jgEnableDisable.getEquList(), jgEnableDisable.getSequenceNbr(), jgEnableDisable.getApplyNo()));
//申请单号
dto.setTaskCode(jgEnableDisable.getApplyNo());
//业务类型枚举code值
dto.setTaskType(BusinessTypeEnum.JG_INSTALLATION_NOTIFICATION.getCode());
////业务主键
dto.setRelationId(jgEnableDisable.getSequenceNbr() + "");
modelDtos.add(dto);
TaskModelDto dto = new TaskModelDto();
//行数据
TaskMessageDto taskMessageDto = new TaskMessageDto();
BeanUtils.copyProperties(jgEnableDisable, taskMessageDto);
dto.setModel(taskMessageDto);
//摘要 按原有规则组装
dto.setTaskContent(
String.format("来自%s【%s】的业务办理,【申请单号:%s】",
ObjectUtils.isEmpty(jgEnableDisable.getEquList()) ? "null" : jgEnableDisable.getEquList(),
ObjectUtils.isEmpty(jgEnableDisable.getSupervisoryCode()) ? "null" : jgEnableDisable.getSupervisoryCode(),
jgEnableDisable.getApplyNo()));
//申请单号
dto.setTaskCode(jgEnableDisable.getApplyNo());
//业务类型枚举code值
dto.setTaskType(BusinessTypeEnum.JG_EQUIPMENT_START.getCode());
////业务主键
dto.setRelationId(jgEnableDisable.getSequenceNbr() + "");
modelDtos.add(dto);
commonService.buildTaskModel(modelDtos);
}
......@@ -242,22 +247,21 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
jgEnableDisable.setApplyType(map.getString("applyType"));
jgEnableDisable.setCreateUserCompanyName(reginParams.getCompany().getCompanyName());
jgEnableDisable.setPromoter(reginParams.getUserModel().getUserId());
jgEnableDisable.setInstanceId(workflowResultList.get(0).getInstanceId());
jgEnableDisable.setNextExecuteUserIds(workflowResultList.get(0).getNextExecutorUserIds());
if (SUBMIT_TYPE_FLOW.equals(submitType)) {
jgEnableDisable.setNextExecutorIds(workflowResultList.get(0).getNextExecutorRoleIds());
jgEnableDisable.setExecuteSequence(workflowResultList.get(0).getNextExecutorRoleIds() + "," + workflowResultList.get(0).getExecutorRoleIds());
jgEnableDisable.setPromoter(reginParams.getUserModel().getUserId());
jgEnableDisable.setNextTaskId(workflowResultList.get(0).getNextTaskId());
}
jgEnableDisable.setEquList(map.get("equListDesc").toString());
jgEnableDisable.setSupervisoryCode(map.get("supervisoryCode").toString());
if (!CollectionUtils.isEmpty(workflowResultList)) {
jgEnableDisable.setInstanceId(workflowResultList.get(0).getInstanceId());
jgEnableDisable.setAuditStatus(String.valueOf(FlowStatusEnum.TO_BE_PROCESSED.getName()));
if (!CollectionUtils.isEmpty(workflowResultList)) {
jgEnableDisable.setNextExecuteUserIds(workflowResultList.get(0).getNextExecutorUserIds());
jgEnableDisable.setInstanceId(workflowResultList.get(0).getInstanceId());
jgEnableDisable.setAuditStatus(String.valueOf(FlowStatusEnum.TO_BE_PROCESSED.getName()));
jgEnableDisable.setNextExecutorIds(workflowResultList.get(0).getNextExecutorRoleIds());
jgEnableDisable.setExecuteSequence(workflowResultList.get(0).getNextExecutorRoleIds() + "," + workflowResultList.get(0).getExecutorRoleIds());
jgEnableDisable.setPromoter(reginParams.getUserModel().getUserId());
jgEnableDisable.setNextTaskId(workflowResultList.get(0).getNextTaskId());
}
} else {
jgEnableDisable.setAuditStatus(String.valueOf(FlowStatusEnum.TO_BE_SUBMITTED.getName()));
}
jgEnableDisable.setEquList(String.valueOf(map.get("equListDesc")));
jgEnableDisable.setSupervisoryCode(String.valueOf(map.get("supervisoryCode")));
jgEnableDisable.setCreateUserName(reginParams.getUserModel().getRealName());
jgEnableDisable.setCreateUserId(reginParams.getUserModel().getUserId());
}
......@@ -270,16 +274,17 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
String taskType = businessCode.equals(ApplicationFormTypeEnum.SBQY.getBusinessCode())?BusinessTypeEnum.JG_EQUIPMENT_START.getCode():BusinessTypeEnum.JG_EQUIPMENT_STOP.getCode();
String taskTypeLabel = businessCode.equals(ApplicationFormTypeEnum.SBQY.getBusinessCode())?BusinessTypeEnum.JG_EQUIPMENT_START.getName():BusinessTypeEnum.JG_EQUIPMENT_STOP.getName();
List<TaskModelDto> taskModelDtoList = new ArrayList<>();
WorkflowResultDto workflowResultDto = workflowResultList.get(0);
list.forEach(item -> {
TaskModelDto taskModelDto = new TaskModelDto();
taskModelDto.setFlowCreateDate(item.getCreateDate());
taskModelDto.setTaskName(workflowResultDto.getNextTaskName()); // 工作流API返回
if(workflowResultList.size()>0){
taskModelDto.setTaskName(workflowResultList.get(0).getNextTaskName()); // 工作流API返回
taskModelDto.setExecuteUserIds(workflowResultList.get(0).getNextExecutorUserIds()); // 工作流API返回
}
taskModelDto.setTaskCode(item.getApplyNo());
taskModelDto.setTaskType(taskType);
taskModelDto.setTaskTypeLabel(taskTypeLabel);
taskModelDto.setRelationId(item.getInstanceId());
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecutorUserIds()); // 工作流API返回
taskModelDto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setFlowStatus(commonService.getDictionaryCodeByName(FlowStatusEnum.TO_BE_PROCESSED.getName())); // 流程状态枚举
taskModelDto.setFlowStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
......@@ -299,7 +304,9 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
commonService.deleteTaskModel(item.getSequenceNbr()+"");
}
});
commonService.buildTaskModel(taskModelDtoList);
if(bool){
commonService.buildTaskModel(taskModelDtoList);
}
}
......@@ -491,6 +498,8 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
JSONObject jsonObject = JSONObject.parseObject(JSONObject.toJSONString(jgEnableDisable));
jsonObject.put("nextExecuteUser", jgEnableDisable.getNextExecutorIds());
jsonObject.put("taskType", BusinessTypeEnum.JG_MAINTENANCE_NOTIFICATION.getCode());
jsonObject.put("flowStatusLabel", FlowStatusEnum.ROLLBACK.getName());
jsonObject.put("flowStatus", FlowStatusEnum.ROLLBACK.getCode());
commonService.rollbackTask(jgEnableDisable.getInstanceId(), jsonObject);
}
......@@ -560,17 +569,19 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
public Map<String, Object> getDetail(Long sequenceNbr) {
Map<String,Object> resultMap = this.baseMapper.getDetail(sequenceNbr);
JgEnableDisableEq jgEnableDisableEq = jgEnableDisableEqMapper.selectOne(new LambdaQueryWrapper<JgEnableDisableEq>().eq(JgEnableDisableEq::getEnableDisableApplyId, sequenceNbr));
Map<String, Object> map = jgMaintainNoticeMapper.getEquipInfoByRecord(jgEnableDisableEq.getEquId());
map.put("equListDesc",map.get("equList"));
map.put("equCategoryDesc",map.get("equCategory"));
map.put("equDefineDesc",map.get("equDefine"));
String[] fields = {"productPhoto", "designDoc", "designStandard", "factoryStandard", "productQualityYieldProve",
"insUseMaintainExplain", "inspectReport", "proxyStatementAttachment", "installContractAttachment"};
for (String s : fields) {
if (map.containsKey(s) && !ObjectUtils.isEmpty(map.get(s)))
map.put(s, JSON.parseArray(map.get(s).toString()));
if(!ObjectUtils.isEmpty(jgEnableDisableEq)){
Map<String, Object> map = jgMaintainNoticeMapper.getEquipInfoByRecord(jgEnableDisableEq.getEquId());
map.put("equListDesc",map.get("equList"));
map.put("equCategoryDesc",map.get("equCategory"));
map.put("equDefineDesc",map.get("equDefine"));
String[] fields = {"productPhoto", "designDoc", "designStandard", "factoryStandard", "productQualityYieldProve",
"insUseMaintainExplain", "inspectReport", "proxyStatementAttachment", "installContractAttachment"};
for (String s : fields) {
if (map.containsKey(s) && !ObjectUtils.isEmpty(map.get(s)))
map.put(s, JSON.parseArray(map.get(s).toString()));
}
resultMap.putAll(map);
}
resultMap.putAll(map);
return resultMap;
}
......
......@@ -214,6 +214,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
* @param noticeDto 安装告知
*/
@SuppressWarnings({"rawtypes", "Duplicates"})
@Transactional
public JgInstallationNoticeDto updateInstallationNotice(String submitType, JgInstallationNoticeDto noticeDto, String op) {
if (Objects.isNull(noticeDto) || StringUtils.isEmpty(submitType)) {
throw new IllegalArgumentException("参数不能为空");
......@@ -729,6 +730,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
}
@Transactional
public void cancel(JgInstallationNoticeDto noticeDto) {
JgInstallationNotice jgInstallationNotice = this.baseMapper.selectById(noticeDto.getSequenceNbr());
ProcessTaskDTO processTaskDTO = iCmWorkflowService.rollBack(jgInstallationNotice.getInstanceId());
......@@ -742,6 +744,8 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(jgInstallationNotice));
jsonObject.put("taskType", BusinessTypeEnum.JG_INSTALLATION_NOTIFICATION.getCode());
jsonObject.put("nextExecuteUser", jgInstallationNotice.getNextExecuteIds());
jsonObject.put("flowStatusLabel", FlowStatusEnum.ROLLBACK.getName());
jsonObject.put("flowStatus", FlowStatusEnum.ROLLBACK.getCode());
commonService.rollbackTask(jgInstallationNotice.getInstanceId(), jsonObject);
}
......
......@@ -548,12 +548,8 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
});
actWorkflowBatchDTO.setProcess(list);
try {
List<ProcessTaskDTO> processTaskDTOS = cmWorkflowService.startBatch(actWorkflowBatchDTO);
return commonService.buildWorkFlowInfo(processTaskDTOS);
} catch (Exception e) {
log.error("提交失败:{}", e);
}
List<ProcessTaskDTO> processTaskDTOS = cmWorkflowService.startBatch(actWorkflowBatchDTO);
return commonService.buildWorkFlowInfo(processTaskDTOS);
}
return new ArrayList<>();
}
......
......@@ -17,7 +17,6 @@ import com.yeejoin.amos.boot.module.jg.api.entity.JgMaintenanceContract;
import com.yeejoin.amos.boot.module.jg.api.entity.JgMaintenanceContractEq;
import com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.jg.api.enums.WorkFlowStatusEnum;
import com.yeejoin.amos.boot.module.jg.api.mapper.CommonMapper;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgMaintenanceContractEqMapper;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgMaintenanceContractMapper;
import com.yeejoin.amos.boot.module.jg.api.service.IJgInstallationNoticeService;
......@@ -43,7 +42,6 @@ import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.*;
......@@ -162,29 +160,25 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
}
public void flowExecute(Long id, String instanceId, String operate, String comment, Boolean update) {
try {
JgMaintenanceContract contract = this.getBaseMapper().selectById(id);
String taskId = contract.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
if (WorkFlowStatusEnum.MAIN_SUBMIT.getReject().equals(contract.getStatus()) ||
WorkFlowStatusEnum.MAIN_SUBMIT.getRollBack().equals(contract.getStatus())) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(getNextUserOrgCode(operate, contract));
ProcessTaskDTO complete = workflowService.complete(taskId, dto);
// 更新下一步执行人、创建待办
updateExecuteIds(instanceId, id, operate, complete);
} catch (Exception e) {
e.printStackTrace();
JgMaintenanceContract contract = this.getBaseMapper().selectById(id);
String taskId = contract.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
if (WorkFlowStatusEnum.MAIN_SUBMIT.getReject().equals(contract.getStatus()) ||
WorkFlowStatusEnum.MAIN_SUBMIT.getRollBack().equals(contract.getStatus())) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(getNextUserOrgCode(operate, contract));
ProcessTaskDTO complete = workflowService.complete(taskId, dto);
// 更新下一步执行人、创建待办
updateExecuteIds(instanceId, id, operate, complete);
}
public String getNextUserOrgCode(String operate, JgMaintenanceContract contract) {
......@@ -267,12 +261,11 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
*/
@Transactional
public void revocation(String instanceId) {
JgMaintenanceContract contract = new JgMaintenanceContract();
LambdaQueryWrapper<JgMaintenanceContract> lambda = new QueryWrapper<JgMaintenanceContract>().lambda();
lambda.eq(JgMaintenanceContract::getInstanceId, instanceId);
List<String> roleListNext = new ArrayList<>();
List<String> roleListAll = new ArrayList<>();
contract = this.getOne(lambda);
JgMaintenanceContract contract = this.getOne(lambda);
ProcessTaskDTO processTaskDTO = workflowService.rollBack(instanceId);
String nextTaskId = processTaskDTO.getNextTask().get(0).getId();
this.buildRoleList(Collections.singletonList(processTaskDTO), roleListNext, roleListAll);
......@@ -296,7 +289,7 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
jsonObject.put("taskType", BusinessTypeEnum.JG_MAINTENANCE_RECORD.getCode());
jsonObject.put("flowStatus", this.getTaskCodeByName(contract.getStatus()));
jsonObject.put("flowStatusLabel", contract.getStatus());
jsonObject.put("changeCertificate", null);
jsonObject.put("maintenanceContract", null);//不传合同照片附件信息
commonService.rollbackTask(instanceId, jsonObject);
}
......@@ -304,7 +297,7 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
* 新增维保合同
*/
@Transactional(rollbackFor = Exception.class)
public Boolean saveOrSubmit(String submit, Map<String, Object> map, ReginParams reginParams) {
public List<JgMaintenanceContract> saveOrSubmit(String submit, Map<String, Object> map, ReginParams reginParams) {
JgMaintenanceContractDto contractDto = JSON.parseObject(JSON.toJSONString(map), JgMaintenanceContractDto.class);
List<Map<String, Object>> equipmentLists = (List<Map<String, Object>>) map.get("equipmentLists");
CompanyBo company = reginParams.getCompany();
......@@ -314,7 +307,7 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
ResponseModel<List<String>> listResponseModel = tzsServiceFeignClient.applicationFormCode(ApplicationFormTypeEnum.WBBA.getCode(), 1);
if (!ObjectUtils.isEmpty(listResponseModel) && listResponseModel.getStatus() != HttpStatus.OK.value()) {
log.error("告知单获取失败");
return false;
return null;
}
String wbApplyNo = listResponseModel.getResult().get(0);
contractDto.setApplyNo(wbApplyNo);
......@@ -375,38 +368,34 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
//新增提交
if (StringUtils.isEmpty(contract.getInstanceId())) {
//没有InstanceId需要发起流程
try {
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(WB_PROCESS_DEFINITION_KEY);
dto.setBusinessKey(contract.getApplyNo());
dto.setCompleteFirstTask(true);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(contract.getMaintenanceUnitCode());
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
List<ProcessTaskDTO> processTasks = workflowService.startBatch(actWorkflowBatchDTO);
String instanceId = processTasks.get(0).getProcessInstance().getId();
String nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
String taskName = processTasks.get(0).getNextTask().get(0).getName();
this.buildRoleList(processTasks, roleListNext, roleListAll);
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
contract.setInstanceStatus(String.join(",", roleListAll));
contract.setInstanceId(instanceId);
contract.setNextExecuteIds(String.join(",", roleListNext));
contract.setNextTaskId(nextTaskId);
contract.setStatus(String.valueOf(WorkFlowStatusEnum.MAIN_RECEIVE.getPass()));
contract.setNextExecuteUserIds(nextUserIds);
// 创建待办
JgMaintenanceContract bean = new JgMaintenanceContract();
BeanUtil.copyProperties(contract, bean);
createTaskModel(bean, taskName, "1", nextUserIds);
} catch (Exception e) {
log.error("提交失败:{}", e);
throw new BadRequest("提交失败" + e.getMessage());
}
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(WB_PROCESS_DEFINITION_KEY);
dto.setBusinessKey(contract.getApplyNo());
dto.setCompleteFirstTask(true);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(contract.getMaintenanceUnitCode());
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
List<ProcessTaskDTO> processTasks = workflowService.startBatch(actWorkflowBatchDTO);
String instanceId = processTasks.get(0).getProcessInstance().getId();
String nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
String taskName = processTasks.get(0).getNextTask().get(0).getName();
this.buildRoleList(processTasks, roleListNext, roleListAll);
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
contract.setInstanceStatus(String.join(",", roleListAll));
contract.setInstanceId(instanceId);
contract.setNextExecuteIds(String.join(",", roleListNext));
contract.setNextTaskId(nextTaskId);
contract.setStatus(String.valueOf(WorkFlowStatusEnum.MAIN_RECEIVE.getPass()));
contract.setNextExecuteUserIds(nextUserIds);
commonService.deleteTaskModel(contract.getSequenceNbr() + "");
// 创建待办
JgMaintenanceContract bean = new JgMaintenanceContract();
BeanUtil.copyProperties(contract, bean);
createTaskModel(bean, taskName, "1", nextUserIds);
} else {
// 有InstanceId,执行一步
ProcessTaskDTO processTaskDTO = this.submit("0", contract);
......@@ -426,22 +415,22 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
contract.setStatus(String.valueOf(WorkFlowStatusEnum.MAIN_RECEIVE.getPass()));
contract.setNextTaskId(nextTaskId);
contract.setNextExecuteUserIds(nextUserIds);
commonService.deleteTaskModel(contract.getSequenceNbr() + "");
executeOneStep(contract, taskName, nextUserIds, "0");
}
commonService.deleteTaskModel(contract.getSequenceNbr()+"");
} else {
List<TaskModelDto> modelDtos = new ArrayList<>();
TaskModelDto dto = new TaskModelDto();
dto.setModel(contract);
dto.setTaskContent(buildTaskContent(contract));
dto.setTaskCode(contract.getApplyNo());
dto.setTaskType(BusinessTypeEnum.JG_COMPANY_CHANGE_REGISTRATION.getCode());
dto.setTaskType(BusinessTypeEnum.JG_MAINTENANCE_RECORD.getCode());
dto.setRelationId(contract.getSequenceNbr() + "");
modelDtos.add(dto);
commonService.buildTaskModel(modelDtos);
}
updateById(contract);
return true;
return Collections.singletonList(contract);
}
public ProcessTaskDTO submit(String op, JgMaintenanceContract contract) {
......
......@@ -50,7 +50,6 @@ import org.springframework.util.StringUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.*;
......@@ -202,19 +201,14 @@ public class JgScrapCancelServiceImpl extends BaseService<JgScrapCancelDto, JgSc
list.add(dto);
}
actWorkflowBatchDTO.setProcess(list);
try {
processTaskDTOS = cmWorkflowService.startBatch(actWorkflowBatchDTO);
this.buildRoleList(processTaskDTOS, roleListNext, roleListAll);
instanceId = processTaskDTOS.get(0).getProcessInstance().getId();
nextTaskId = processTaskDTOS.get(0).getNextTask().get(0).getId();
taskName[0] = processTaskDTOS.get(0).getNextTask().get(0).getName();
workflowResultDtos = commonService.buildWorkFlowInfo(processTaskDTOS);
nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
this.buildRoleList(processTaskDTOS, roleListNext, roleListAll);
} catch (Exception e) {
log.error("提交失败:{}", e);
throw new BadRequest("提交失败" + e.getMessage());
}
processTaskDTOS = cmWorkflowService.startBatch(actWorkflowBatchDTO);
this.buildRoleList(processTaskDTOS, roleListNext, roleListAll);
instanceId = processTaskDTOS.get(0).getProcessInstance().getId();
nextTaskId = processTaskDTOS.get(0).getNextTask().get(0).getId();
taskName[0] = processTaskDTOS.get(0).getNextTask().get(0).getName();
workflowResultDtos = commonService.buildWorkFlowInfo(processTaskDTOS);
nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
this.buildRoleList(processTaskDTOS, roleListNext, roleListAll);
}
List<JgScrapCancel> list = new ArrayList<>();
......@@ -329,11 +323,18 @@ public class JgScrapCancelServiceImpl extends BaseService<JgScrapCancelDto, JgSc
}
public void deleteBatch(List<Long> ids) {
JgScrapCancel jgScrapCancel = new JgScrapCancel();
jgScrapCancel.setIsDelete(true);
LambdaQueryWrapper<JgScrapCancel> lambda = new QueryWrapper<JgScrapCancel>().lambda();
lambda.in(JgScrapCancel::getSequenceNbr, ids);
this.update(jgScrapCancel, lambda);
if (!ids.isEmpty()) {
for (Long id : ids) {
LambdaQueryWrapper<JgScrapCancel> lambda = new QueryWrapper<JgScrapCancel>().lambda();
lambda.eq(JgScrapCancel::getSequenceNbr, id);
JgScrapCancel jgScrapCancel = this.baseMapper.selectOne(lambda);
//删除代办消息
commonService.deleteTaskModel(jgScrapCancel.getInstanceId());
//更新jgScrapCancel数据
jgScrapCancel.setIsDelete(true);
this.updateById(jgScrapCancel);
}
}
}
public JgScrapCancelDto updateInfo(String submitType, JgScrapCancelDto jgScrapCancelDto, String op) {
......@@ -349,39 +350,35 @@ public class JgScrapCancelServiceImpl extends BaseService<JgScrapCancelDto, JgSc
// 发起流程
if (!StringUtils.hasText(jgScrapCancelDto.getInstanceId())) {
//未进流程直接发起并执行
try {
List<ProcessTaskDTO> processTasks;
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("scrapCancelNew");
dto.setBusinessKey(jgScrapCancelDto.getApplyNo());
dto.setCompleteFirstTask(true);
dto.setNextExecuteUserCompanyCode(jgScrapCancelDto.getReceiveOrgCode());
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
String instanceId = processTasks.get(0).getProcessInstance().getId();
String nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
String taskName = processTasks.get(0).getNextTask().get(0).getName();
this.buildRoleList(processTasks, roleListNext, roleListAll);
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
jgScrapCancelDto.setInstanceStatus(String.join(",", roleListAll));
jgScrapCancelDto.setInstanceId(instanceId);
jgScrapCancelDto.setNextExecuteIds(String.join(",", roleListNext));
jgScrapCancelDto.setNextTaskId(nextTaskId);
jgScrapCancelDto.setNextExecuteUserIds(nextUserIds);
jgScrapCancelDto.setAuditStatus(WorkFlowStatusEnum.CANCEL_RECEIVE.getPass());
// 创建待办
JgScrapCancel bean = new JgScrapCancel();
BeanUtil.copyProperties(jgScrapCancelDto, bean);
commonService.deleteTaskModel(String.valueOf(jgScrapCancelDto.getSequenceNbr()));
createTaskModel(bean, taskName, "1", nextUserIds);
} catch (Exception e) {
log.error("提交失败:{}", e);
throw new BadRequest("提交失败" + e.getMessage());
}
List<ProcessTaskDTO> processTasks;
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey("scrapCancelNew");
dto.setBusinessKey(jgScrapCancelDto.getApplyNo());
dto.setCompleteFirstTask(true);
dto.setNextExecuteUserCompanyCode(jgScrapCancelDto.getReceiveOrgCode());
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
String instanceId = processTasks.get(0).getProcessInstance().getId();
String nextTaskId = processTasks.get(0).getNextTask().get(0).getId();
String taskName = processTasks.get(0).getNextTask().get(0).getName();
this.buildRoleList(processTasks, roleListNext, roleListAll);
List<WorkflowResultDto> workflowResultDtos = commonService.buildWorkFlowInfo(processTasks);
String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
jgScrapCancelDto.setInstanceStatus(String.join(",", roleListAll));
jgScrapCancelDto.setInstanceId(instanceId);
jgScrapCancelDto.setNextExecuteIds(String.join(",", roleListNext));
jgScrapCancelDto.setNextTaskId(nextTaskId);
jgScrapCancelDto.setNextExecuteUserIds(nextUserIds);
jgScrapCancelDto.setAuditStatus(WorkFlowStatusEnum.CANCEL_RECEIVE.getPass());
// 创建待办
JgScrapCancel bean = new JgScrapCancel();
BeanUtil.copyProperties(jgScrapCancelDto, bean);
commonService.deleteTaskModel(String.valueOf(jgScrapCancelDto.getSequenceNbr()));
createTaskModel(bean, taskName, "1", nextUserIds);
} else {
// 已经在流程中,执行一步
ProcessTaskDTO processTaskDTO = submit(op, jgScrapCancelDto.getNextTaskId());
......@@ -595,29 +592,25 @@ public class JgScrapCancelServiceImpl extends BaseService<JgScrapCancelDto, JgSc
@Transactional
public void flowExecute(Long id, String instanceId, String operate, String comment) {
try {
JgScrapCancel jgScrapCancel = this.getBaseMapper().selectById(id);
String taskId = jgScrapCancel.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
if (!ObjectUtils.isEmpty(jgScrapCancel.getInstanceStatus()) && (jgScrapCancel.getInstanceStatus().equals(WorkFlowStatusEnum.CANCEL_SUBMIT.getReject()) || jgScrapCancel.getInstanceStatus().equals(WorkFlowStatusEnum.CANCEL_SUBMIT.getRollBack()))) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate, jgScrapCancel));
//执行流程
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, dto);
// 更新下一步执行人、创建待办
updateExecuteIds(instanceId, id, operate, processTaskDTO);
} catch (Exception e) {
e.printStackTrace();
JgScrapCancel jgScrapCancel = this.getBaseMapper().selectById(id);
String taskId = jgScrapCancel.getNextTaskId();
//组装信息
TaskResultDTO dto = new TaskResultDTO();
dto.setResultCode("approvalStatus");
dto.setTaskId(taskId);
dto.setComment(comment);
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", operate);
if (!ObjectUtils.isEmpty(jgScrapCancel.getInstanceStatus()) && (jgScrapCancel.getInstanceStatus().equals(WorkFlowStatusEnum.CANCEL_SUBMIT.getReject()) || jgScrapCancel.getInstanceStatus().equals(WorkFlowStatusEnum.CANCEL_SUBMIT.getRollBack()))) {
map.put("approvalStatus", "提交");
}
dto.setVariable(map);
//下一节点执行人单位(下节点接收机构code)
dto.setNextExecuteUserCompanyCode(this.getNextUserOrgCode(operate, jgScrapCancel));
//执行流程
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, dto);
// 更新下一步执行人、创建待办
updateExecuteIds(instanceId, id, operate, processTaskDTO);
}
......
......@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.jg.biz.service.impl;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......@@ -125,11 +126,11 @@ public class JgTransferNoticeServiceImpl extends BaseService<JgTransferNoticeDto
for (String s : fields) {
if (transferNotice.containsKey(s)) {
if ("powerOfAttorney".equalsIgnoreCase(s)) {
transferNotice.put("powerOfAttorneyList", JSON.parseArray(transferNotice.get(s).toString()));
transferNotice.put("powerOfAttorneyList", ObjectUtils.isEmpty(transferNotice.get(s)) ? new JSONArray() : JSON.parseArray(transferNotice.get(s).toString()));
} else if ("constructionContract".equalsIgnoreCase(s)) {
transferNotice.put("constructionContractList", JSON.parseArray(transferNotice.get(s).toString()));
transferNotice.put("constructionContractList", ObjectUtils.isEmpty(transferNotice.get(s)) ? new JSONArray() : JSON.parseArray(transferNotice.get(s).toString()));
} else {
transferNotice.put(s, JSON.parseArray(transferNotice.get(s).toString()));
transferNotice.put(s, ObjectUtils.isEmpty(transferNotice.get(s)) ? new JSONArray() : JSON.parseArray(transferNotice.get(s).toString()));
}
}
if (equipmentInfos.get(0).containsKey(s)) {
......@@ -243,6 +244,7 @@ public class JgTransferNoticeServiceImpl extends BaseService<JgTransferNoticeDto
* @param noticeDto 移装告知
*/
@SuppressWarnings({"rawtypes", "Duplicates"})
@Transactional
public JgTransferNoticeDto updateTransferNotice(String submitType, JgTransferNoticeDto noticeDto, String op) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
if (Objects.isNull(noticeDto) || StringUtils.isEmpty(submitType)) {
......@@ -623,6 +625,7 @@ public class JgTransferNoticeServiceImpl extends BaseService<JgTransferNoticeDto
}
@Transactional
public void cancel(JgTransferNoticeDto noticeDto) {
JgTransferNotice jgInstallationNotice = this.baseMapper.selectById(noticeDto.getSequenceNbr());
ProcessTaskDTO processTaskDTO = iCmWorkflowService.rollBack(jgInstallationNotice.getInstanceId());
......@@ -636,6 +639,8 @@ public class JgTransferNoticeServiceImpl extends BaseService<JgTransferNoticeDto
JSONObject jsonObject = JSON.parseObject(JSON.toJSONString(jgInstallationNotice));
jsonObject.put("taskType", BusinessTypeEnum.JG_ADVICE_REMOVAL.getCode());
jsonObject.put("nextExecuteUser", jgInstallationNotice.getNextExecuteIds());
jsonObject.put("flowStatusLabel", FlowStatusEnum.ROLLBACK.getName());
jsonObject.put("flowStatus", FlowStatusEnum.ROLLBACK.getCode());
commonService.rollbackTask(jgInstallationNotice.getInstanceId(), jsonObject);
}
......
......@@ -462,6 +462,8 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
jsonObject.put("nextExecuteUser", data.getNextExecuteIds());
jsonObject.put("taskType", BusinessTypeEnum.JG_USAGE_REGISTRATION.getCode());
jsonObject.put("equipId", jgUseRegistrationEq.getEquId());
jsonObject.put("flowStatus", commonServiceImpl.getDictionaryCodeByName(jgUseRegistration.getStatus()));
jsonObject.put("flowStatusLabel", jgUseRegistration.getStatus());
if (!WorkFlowStatusEnum.USE_SUBMIT.getCode().equals(taskCode)) {
jsonObject.put("pageType", "look");
}
......@@ -488,22 +490,30 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
jsonObject.put("receiveOrgCode", jgUseRegistration.getReceiveCompanyCode() + "_" + jgUseRegistration.getReceiveOrgName());
jsonObject.put("status", jgUseRegistration.getStatus());
jsonObject.put("applyNo", jgUseRegistration.getApplyNo());
jsonObject.remove("submit");
jsonObject.remove("instanceId");
return jsonObject;
}
Map<String, Object> detail = this.baseMapper.getDetail(id);
Map<String, Object> inspectDetail = this.baseMapper.getInspectDetail(id);
Map<String, Object> useDetail = this.baseMapper.getUseDetail(id);
Map<String, Object> useDestail = this.baseMapper.getDesDetail(id);
if (!ObjectUtils.isEmpty(inspectDetail)) {
detail.putAll(inspectDetail);
}
if (!ObjectUtils.isEmpty(useDetail)) {
detail.putAll(useDetail);
}
if (!ObjectUtils.isEmpty(useDestail)) {
detail.putAll(useDestail);
}
detail.put("proDuctPhoto", JSON.parse(String.valueOf(detail.get("proDuctPhoto"))));
detail.put("factoryStandard", JSON.parse(String.valueOf(detail.get("factoryStandard"))));
detail.put("productQualityYieldProve", JSON.parse(String.valueOf(detail.get("productQualityYieldProve"))));
detail.put("insUseMaintainExplanin", JSON.parse(String.valueOf(detail.get("insUseMaintainExplanin"))));
detail.put("inspectReport", JSON.parse(String.valueOf(detail.get("inspectReport"))));
detail.put("designStandard", JSON.parse(String.valueOf(detail.get("designStandard"))));
detail.put("designDoc", JSON.parse(String.valueOf(detail.get("designDoc"))));
return detail;
}
......
......@@ -135,19 +135,19 @@
"type": "109",
"pageType": "draft",
"name": "单位变更登记",
"url": "/mixuap?appId=1742358052905971713&id=1738018156141637633&roleIds={roleIds}&userId={userId}&pageType=edit"
"url": "/mixuap?appId=1742358052905971713&id=1738018156141637633&roleIds={roleIds}&userId={userId}&pageType=edit&isEdit=true"
},
{
"type": "109",
"pageType": "look",
"name": "单位变更登记",
"url": "/mixuap?appId=1742358052905971713&id=1738095060211232770&roleIds={roleIds}&userId={userId}&pageType=look"
"url": "/mixuap?appId=1742358052905971713&id=1738095060211232770&roleIds={roleIds}&userId={userId}&pageType=look&isEdit=false"
},
{
"type": "109",
"pageType": "edit",
"name": "单位变更登记",
"url": "/mixuap?appId=1742358052905971713&id=1738095060211232770&roleIds={roleIds}&userId={userId}&pageType=edit"
"url": "/mixuap?appId=1742358052905971713&id=1738095060211232770&roleIds={roleIds}&userId={userId}&pageType=edit&isEdit=true"
},
{
"type": "110",
......@@ -171,7 +171,7 @@
"type": "111",
"name": "改造变更登记",
"pageType": "draft",
"url": "/mixuap?appId=1742358052905971713&id=1737029146837544962&roleIds={roleIds}&userId={userId}&pageType=look"
"url": "/mixuap?appId=1742358052905971713&id=1737415710281330690&roleIds={roleIds}&userId={userId}&pageType=edit"
},
{
"type": "111",
......
......@@ -39,4 +39,14 @@ public enum EquipmentClassifityEnum {
}
}
public static String getNameByCode(String code){
for (EquipmentClassifityEnum value : EquipmentClassifityEnum.values()) {
if (value.getCode().equals(code)){
return value.getName();
}
}
return "";
}
}
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