Commit 99e04f24 authored by suhuiguang's avatar suhuiguang

1.自测修改报检提交bug

parent d80bc65b
......@@ -135,4 +135,10 @@ public class JyjcOpeningApplication extends BaseEntity {
@TableField(value = "transfer_to_user_ids")
private String transferToUserIds;
/**
* 对接单位code
*/
@TableField(value = "docking_unit_code")
private String dockingUnitCode;
}
package com.yeejoin.amos.boot.module.jyjc.api.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @author Administrator
*/
@AllArgsConstructor
@Getter
public enum ResultTypeEnum {
/**
* 集成方式
*/
INPUT("录入","input"),
INTEGRATED("集成","integrated");
private String name;
private String code;
}
package com.yeejoin.amos.boot.module.jyjc.api.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import org.typroject.tyboot.core.rdbms.model.BaseModel;
import java.util.Date;
......@@ -162,7 +160,7 @@ public class JyjcInspectionApplicationModel extends BaseModel {
private String instanceId;
public String getProcessInstanceId() {
return this.instanceId != null ?this.instanceId :this.processInstanceId;
return this.instanceId != null ? this.instanceId : this.processInstanceId;
}
public void setProcessInstanceId(String processInstanceId) {
......
......@@ -10,6 +10,7 @@ import com.yeejoin.amos.boot.module.ymt.api.dto.TzBaseUnitLicenceDto;
import com.yeejoin.amos.boot.module.ymt.api.dto.TzsUserInfoDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
......@@ -128,4 +129,7 @@ public class JyjcOpeningApplicationModel extends BaseModel {
@ApiModelProperty ("转办人")
private String transferToUserIds;
@ApiModelProperty("对接单位code")
private String dockingUnitCode;
}
......@@ -72,6 +72,7 @@ public class JyjcInspectionApplicationController extends BaseController {
finallyJson.putAll(filePageDataObj);
model = finallyJson;
}
// operationType: 1-暂存
ReginParams selectedOrgInfo = getSelectedOrgInfo();
model.put("applicationUnitCode",selectedOrgInfo.getCompany().getCompanyCode());
......
......@@ -59,7 +59,12 @@ public class JyjcOpeningApplicationController extends BaseController {
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<JyjcOpeningApplicationModel> save(@RequestBody JSONObject model) {
JyjcOpeningApplicationModel jyjcOpeningApplicationModel = new JyjcOpeningApplicationModel();
BeanUtil.copyProperties(model.get("applyInfo"),jyjcOpeningApplicationModel);
// 兼容工作台暂存逻辑、编辑时报错逻辑
if (model.containsKey("applyInfo")) { // 工作台暂存逻辑
BeanUtil.copyProperties(model.get("applyInfo"), jyjcOpeningApplicationModel);
} else { // 详情保存逻辑
BeanUtil.copyProperties(model, jyjcOpeningApplicationModel);
}
return ResponseHelper.buildResponse(jyjcOpeningApplicationServiceImpl.saveOrUpdateModel(jyjcOpeningApplicationModel, false));
}
......
......@@ -22,6 +22,7 @@ import com.yeejoin.amos.boot.module.jyjc.api.entity.*;
import com.yeejoin.amos.boot.module.jyjc.api.enums.BizTypeEnum;
import com.yeejoin.amos.boot.module.jyjc.api.enums.DocumentEnum;
import com.yeejoin.amos.boot.module.jyjc.api.enums.ResultStatusEnum;
import com.yeejoin.amos.boot.module.jyjc.api.enums.ResultTypeEnum;
import com.yeejoin.amos.boot.module.jyjc.api.mapper.JyjcInspectionApplicationEquipMapper;
import com.yeejoin.amos.boot.module.jyjc.api.mapper.JyjcInspectionApplicationMapper;
import com.yeejoin.amos.boot.module.jyjc.api.model.*;
......@@ -117,6 +118,9 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
@Autowired
EquipmentCategoryMapper equipmentCategoryMapper;
@Autowired
JyjcOpeningApplicationServiceImpl openingApplicationService;
public JyjcInspectionApplicationModel save(@RequestBody JSONObject obj) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
......@@ -131,7 +135,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
ArrayList<String> roleListNext = new ArrayList<>();
if (!model.getOperationType().equals("2")) {
String taskName = "";
if (model.getOperationType().equals("0")) {
if (model.getOperationType().equals("0")) { // 工作台提交逻辑、详情页面保存并提交逻辑
List<ProcessTaskDTO> processTasks = new ArrayList<>();
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
......@@ -140,11 +144,12 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
dto.setBusinessKey(String.valueOf(new Date().getTime()));
dto.setCompleteFirstTask(true);
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
String[] inspectionUnit = model.getInspectionUnitCode().split("_");
if(inspectionUnit.length == 2){
model.setInspectionUnitCode(inspectionUnit[0]);
model.setInspectionUnitName(inspectionUnit[1]);
actWorkflowBatchDTO.setProcess(list);
}
dto.setNextExecuteUserCompanyCode(model.getInspectionUnitCode());
processTasks = cmWorkflowService.startBatch(actWorkflowBatchDTO);
String instanceId = processTasks.get(0).getProcessInstance().getId();
......@@ -166,7 +171,12 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
model.setNextTaskName(taskName);
model.setNextExecuteUserIds(nextUserIds);
model.setStatus(String.valueOf(FlowStatusEnum.TO_SUBMITTED.getCode())); //6611 对应数据字典 检验流程状态 待受理
} else if (model.getOperationType().equals("1")) {
} else if (model.getOperationType().equals("1")) { // 工作台暂存、详情保存逻辑
String[] inspectionUnit = model.getInspectionUnitCode().split("_");
if(inspectionUnit.length == 2){
model.setInspectionUnitCode(inspectionUnit[0]);
model.setInspectionUnitName(inspectionUnit[1]);
}
model.setStatus(String.valueOf(FlowStatusEnum.TO_BE_SUBMITTED.getCode()));
}
......@@ -176,11 +186,12 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
//检验检测结果方式
if (jyjcOpeningApplications.get(0).getResultType() != null) {
model.setResultType(jyjcOpeningApplications.get(0).getResultType());
// 报检时冗余检验检测机构厂商编号,推送厂商报检信息时需要
model.setDockingUnitCode(jyjcOpeningApplications.get(0).getDockingUnitCode());
}
}
List<String> codes = tzsServiceFeignClient.applicationFormCode(ApplicationFormTypeEnum.JY.getCode(), 1).getResult();
// List<String> codes = createCodeService.createApplicationFormCode(ApplicationFormTypeEnum.JY.getCode(), 1).getResult();
model.setApplicationNo(codes.get(0));
model.setApplicationDate(new Date());
......@@ -205,7 +216,6 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
}
model.setCreateUserId(reginParams.getUserModel().getUserId());
model.setNumberOfEquip(equipInfos.size());
if (null == model.getSequenceNbr()) {
model = this.createWithModel(model);
if (StringUtils.isNotBlank(model.getProcessInstanceId())) {
......@@ -267,20 +277,21 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
}
}
} else {
// 保存并提交
LambdaQueryWrapper<JyjcOpeningApplication> wa = new LambdaQueryWrapper<JyjcOpeningApplication>().eq(JyjcOpeningApplication::getUnitCode, model.getInspectionUnitCode()).eq(JyjcOpeningApplication::getStatus, FlowStatusEnum.TO_BE_FINISHED.getCode());
List<JyjcOpeningApplication> jyjcOpeningApplications = jyjcOpeningApplicationService.getBaseMapper().selectList(wa);
if (CollectionUtils.isNotEmpty(jyjcOpeningApplications)) {
//检验检测结果方式
if (jyjcOpeningApplications.get(0).getResultType() != null) {
model.setResultType(jyjcOpeningApplications.get(0).getResultType());
// 报检时冗余检验检测机构厂商编号,推送厂商报检信息时需要
model.setDockingUnitCode(jyjcOpeningApplications.get(0).getDockingUnitCode());
}
}
//更新报检装备监管码
jyjcInspectionApplicationEquipService.getBaseMapper().deleteByApplicationSeq(model.getSequenceNbr());
if (model.getEquip().size() > 0) {
// List<Map<String, Object>> equip = model.getEquip();
// List<String> jgm = equip.stream().map(e -> e.get("equipUnicode").toString()).collect(Collectors.toList());
List<JyjcInspectionApplicationEquipDto> equips = JSONObject.parseArray(JSON.toJSONString(model.getEquip()), JyjcInspectionApplicationEquipDto.class);
int num = equips.size();
model.setNumberOfEquip(num);
......@@ -297,10 +308,8 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
model.setSupervisoryCode(model.getEquip().get(0).getOrDefault("SUPERVISORY_CODE", "").toString());
}
// Map<String, Object> map = BeanUtil.beanToMap(model);
// 附件更新
List<String> enumNameList = DocumentEnum.getEnumNameList();
List<JyjcInspectionApplicationAttachmentModel> attachmentModels = new ArrayList<>();
jyjcInspectionApplicationAttachmentService.getBaseMapper().deleteByApplicationSeq(model.getSequenceNbr());
for (String code : enumNameList) {
......@@ -328,7 +337,6 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
//执行流程
task.setNextExecuteUserCompanyCode(model.getInspectionUnitCode());
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, task);
String taskCode = FlowStatusEnum.TO_SUBMITTED.getName();
String taskName1 = "";
String nextTaskId = "";
this.buildRoleList(Collections.singletonList(processTaskDTO), roleList, roleListAll);
......@@ -336,7 +344,6 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
String nextUserIds = workflowResultDtos.get(0).getNextExecutorUserIds();
String executorRoleIds = workflowResultDtos.get(0).getExecutorRoleIds();
if (processTaskDTO != null && processTaskDTO.getNextTask() != null && processTaskDTO.getNextTask().size() > 0) {
taskCode = processTaskDTO.getNextTask().get(0).getKey();
taskName1 = processTaskDTO.getNextTask().get(0).getName();
nextTaskId = processTaskDTO.getNextTask().get(0).getId();
}
......@@ -626,9 +633,11 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
private void pushInspectionApplication(JyjcInspectionApplicationModel inspectionApplicationModel) {
// 将检验检测申请信息推送至对应的检验机构
if(inspectionApplicationModel.getResultType().equals(ResultTypeEnum.INTEGRATED.getCode())){
InspectionApplicationPushEvent event = new InspectionApplicationPushEvent(this, inspectionApplicationModel);
eventPublisher.publish(event);
}
}
private String getDictNameByCode(String code) {
DataDictionary dataDictionary = dataDictionaryService.getByCode(code, "JYJC");
......@@ -730,7 +739,6 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
dto.setComment(comments);
// 执行流程
AjaxResult ajaxResult1 = Workflow.taskClient.completeByTask(taskId, dto);
} catch (Exception e) {
e.printStackTrace();
log.error("执行工作流错误, => {}", params, e);
......
......@@ -218,7 +218,7 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
commonServiceImpl.buildTaskModel(list);
}
}
model.setStatusName(FlowStatusEnum.TO_BE_PROCESSED.getName());
model.setStatusName(FlowStatusEnum.getNameByType(Long.parseLong((model.getStatus()))));
return this.updateWithModel(model);
}
......
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