Commit 10cb551f authored by LiuLin's avatar LiuLin

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

parents cf427df7 41a31617
package com.yeejoin.amos.boot.module.jg.api.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
......@@ -103,4 +104,6 @@ public class JgUseRegistrationDto extends BaseDto {
private String dataType ;
private String unitCode;
private String isXixian;
}
......@@ -183,4 +183,7 @@ public class JgUseRegistration extends BaseEntity {
@TableField(value = "next_execute_user_ids")
private String nextExecuteUserIds;
@TableField(value = "is_xixian")
private String isXixian;
}
......@@ -929,6 +929,7 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
// 默认条件【STATUS==="" || null】
BoolQueryBuilder meBuilder = QueryBuilders.boolQuery();
meBuilder.should(QueryBuilders.matchQuery("STATUS", "已认领"));
meBuilder.should(QueryBuilders.boolQuery().mustNot(QueryBuilders.existsQuery("STATUS")));
meBuilder.should(QueryBuilders.boolQuery().must(QueryBuilders.matchPhraseQuery("STATUS", "")));
meBuilder.minimumShouldMatch(1);
......
......@@ -26,19 +26,10 @@ import com.yeejoin.amos.boot.module.jg.api.service.IJgUseRegistrationService;
import com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient;
import com.yeejoin.amos.boot.module.jg.biz.service.ICommonService;
import com.yeejoin.amos.boot.module.jg.flc.api.fegin.WorkFlowFeignService;
import com.yeejoin.amos.boot.module.ymt.api.entity.EquipmentCategory;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgFactoryInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgRegisterInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgUseInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.InspectionDetectionInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.OtherInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.UseInfo;
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.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgRegisterInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.InspectionDetectionInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.OtherInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.UseInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.Workflow;
......@@ -74,7 +65,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
@Autowired
private InspectionDetectionInfoMapper inspectionDetectionInfoMapper;
@Autowired
private OtherInfoMapper otherInfoMapper;
private IdxBizJgOtherInfoMapper otherInfoMapper;
@Autowired
private JgUseRegistrationEqMapper jgRelationEquipMapper;
@Autowired
......@@ -129,6 +120,8 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
inspectionDetectionInfoMapper.update(inspectionDetectionInfo, inspectionLambda);
// 更新设备使用登记证
idxBizJgRegisterInfoMapper.updateUseOrgCodeByEquip(String.valueOf(map.get("equipId")), useOrgCode);
// 更新es
createCode(String.valueOf(map.get("equipId")), map);
}
public void updateHistory(JSONObject map, String equipId, String currentDocumentId, String supervisoryCode) {
......@@ -159,9 +152,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
// 使用登记信息
JgUseRegistration jgUseRegistration = new JgUseRegistration();
jgUseRegistration.setRegDate(new Date());
LambdaQueryWrapper<OtherInfo> otherLambda = new QueryWrapper<OtherInfo>().lambda();
otherLambda.eq(OtherInfo::getRecord, map.get("equipId"));
OtherInfo otherInfo = otherInfoMapper.selectOne(otherLambda);
LambdaQueryWrapper<IdxBizJgOtherInfo> otherLambda = new QueryWrapper<IdxBizJgOtherInfo>().lambda();
otherLambda.eq(IdxBizJgOtherInfo::getRecord, map.get("equipId"));
IdxBizJgOtherInfo otherInfo = otherInfoMapper.selectOne(otherLambda);
String supervisoryCode = otherInfo.getSupervisoryCode();
jgUseRegistration.setSupervisoryCode(supervisoryCode);
jgUseRegistration.setUseUnitName(String.valueOf(map.get("useUnitName")));
......@@ -182,6 +175,10 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
if (!ObjectUtils.isEmpty(map.get("inspectOrgName"))) {
jgUseRegistration.setInspectUnitName(map.get("inspectOrgName").toString());
}
// 是否西咸
if (!ObjectUtils.isEmpty(map.get("isXixian"))){
jgUseRegistration.setIsXixian(String.valueOf(map.get("isXixian")));
}
if (map.containsKey("type") && "edit".equals(String.valueOf(map.get("type")))) {
......@@ -648,4 +645,51 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
//调用生成使用登记证
commonService.generateCertificateReport(exportParamsMap, response);
}
/**
* 生成监管码、96333码
*
* @param record
*/
public void createCode(String record, JSONObject dataMap) {
// 其他信息
LambdaQueryWrapper<IdxBizJgOtherInfo> lambdaOth = new QueryWrapper<IdxBizJgOtherInfo>().lambda();
lambdaOth.eq(IdxBizJgOtherInfo::getRecord, record);
IdxBizJgOtherInfo otherInfo = otherInfoMapper.selectOne(lambdaOth);
if (ObjectUtils.isEmpty(otherInfo.getCode96333()) || ObjectUtils.isEmpty(otherInfo.getSupervisoryCode())) {
// 使用信息
LambdaQueryWrapper<UseInfo> lambda = new QueryWrapper<UseInfo>().lambda();
lambda.eq(UseInfo::getRecord, record);
UseInfo useInfo = useInfoMapper.selectOne(lambda);
// 注册信息
LambdaQueryWrapper<IdxBizJgRegisterInfo> lambdaReg = new QueryWrapper<IdxBizJgRegisterInfo>().lambda();
lambdaReg.eq(IdxBizJgRegisterInfo::getRecord, record);
IdxBizJgRegisterInfo registerInfo = idxBizJgRegisterInfoMapper.selectOne(lambdaReg);
// 生成监管码、96333码
Map<String, Object> map = new HashMap<>();
map.put("cityCode", useInfo.getCity());
map.put("countyCode", useInfo.getCounty());
map.put("equCategory", registerInfo.getEquCategory());
map.put("isXiXian", dataMap.get("isXixian"));
ResponseModel<Map<String, Object>> code = tzsServiceFeignClient.createCode(map);
Map<String, Object> result = code.getResult();
if (!ObjectUtils.isEmpty(result)) {
otherInfo.setSupervisoryCode(String.valueOf(result.get("superviseCode")));
otherInfo.setCode96333(ObjectUtils.isEmpty(result.get("code96333")) ? null : String.valueOf(result.get("code96333")));
otherInfo.setClaimStatus("已认领");
otherInfoMapper.updateById(otherInfo);
}
}
// 更新es
HashMap<String, Map<String, Object>> objMap = new HashMap<>();
HashMap<String, Object> param = new HashMap<>();
param.put("SUPERVISORY_CODE", otherInfo.getSupervisoryCode());
param.put("CODE96333", otherInfo.getCode96333());
param.put("USE_UNIT_CREDIT_CODE", dataMap.get("useUnitCreditCode"));
param.put("USE_UNIT_NAME", dataMap.get("useUnitName"));
param.put("CITY", dataMap.get("city"));
param.put("COUNTY", dataMap.get("county"));
objMap.put(record, param);
tzsServiceFeignClient.commonUpdateEsDataByIds(objMap);
}
}
\ No newline at end of file
......@@ -29,6 +29,9 @@ public class JyjcInspectionApplication extends BaseEntity {
@TableField("inspection_unit_code")
private String inspectionUnitCode;
@TableField("inspection_unit_name")
private String inspectionUnitName;
/**
* 检验检测类型
*/
......@@ -83,6 +86,9 @@ public class JyjcInspectionApplication extends BaseEntity {
@TableField("inspection_charge_person")
private String inspectionChargePerson;
@TableField("inspection_charge_person_name")
private String inspectionChargePersonName;
/**
* 项目负责人联系电话(检验员联系电话)
*/
......@@ -113,6 +119,9 @@ public class JyjcInspectionApplication extends BaseEntity {
@TableField("application_unit_code")
private String applicationUnitCode;
@TableField("application_unit_name")
private String applicationUnitName;
/**
* 内部人员代码
* */
......@@ -187,5 +196,5 @@ public class JyjcInspectionApplication extends BaseEntity {
private String nextTaskId;
@TableField(value = "next_execute_user_ids")
private String nextExcuteUserIds;
private String nextExecuteUserIds;
}
......@@ -57,6 +57,8 @@ public class JyjcInspectionApplicationModel extends BaseModel {
@ApiModelProperty(value = "项目负责人(检验员)")
private String inspectionChargePerson;
@ApiModelProperty(value = "项目负责人(检验员)")
private String inspectionChargePersonName;
@ApiModelProperty(value = "项目负责人联系电话(检验员联系电话)")
private String inspectionChargePhone;
......@@ -115,38 +117,6 @@ public class JyjcInspectionApplicationModel extends BaseModel {
@ApiModelProperty(value = "内部人员代码")
private String innerPersonCode;
@ApiModelProperty(value = "告知书")
private List<Map<String, Object>> gzs;
@ApiModelProperty(value = "产品质量证明书")
private List<Map<String, Object>> cpzl;
@ApiModelProperty(value = "施工自行检查报告")
private List<Map<String, Object>> sgzxbg;
@ApiModelProperty(value = "施工合同或证明")
private List<Map<String, Object>> sght;
@ApiModelProperty(value = "施工方案/施工设计文件")
private List<Map<String, Object>> sgfa;
@ApiModelProperty(value = "施工单位许可证书")
private List<Map<String, Object>> sgdwxk;
@ApiModelProperty(value = "型式试验证书")
private List<Map<String, Object>> xssy;
@ApiModelProperty(value = "限速器和渐进式安全钳的调试证书")
private List<Map<String, Object>> xsqts;
@ApiModelProperty(value = "土建声明")
private List<Map<String, Object>> tjsm;
@ApiModelProperty(value = "质量保证手册和程序文件")
private List<Map<String, Object>> zlbz;
@ApiModelProperty(value = "施工作业文件")
private List<Map<String, Object>> sgzy;
@ApiModelProperty(value = "施工人员、质量保证体系责任人、专业技术人员身份证、技术工人的身份证及资质证书")
private List<Map<String, Object>> sgry;
@ApiModelProperty(value = "产品技术文件")
private List<Map<String, Object>> cpjs;
@ApiModelProperty(value = "施工设计文件")
private List<Map<String, Object>> sgsj;
@ApiModelProperty(value = "施工分包方目录")
private List<Map<String, Object>> sgfb;
@ApiModelProperty(value = "分包方评价资料")
private List<Map<String, Object>> fbspj;
@ApiModelProperty(value = "操作类型 0 新增 2 编辑 1 暂存")
private List<Map<String, Object>> equip;
......@@ -176,6 +146,8 @@ public class JyjcInspectionApplicationModel extends BaseModel {
private String supervisoryCode;
private String instanceId;
public String getInstanceId() {
......
......@@ -60,4 +60,9 @@ public class TaskMessageDto {
String equipId;
String processKey;
String processInstanceId;
String inspectionUnitCode;
String bizType;
}
......@@ -54,6 +54,9 @@ public class CommonController extends BaseController {
@PostMapping(value = "/getUserPhonesByPersonCode")
@ApiOperation(httpMethod = "GET", value = "根据公司的unitCode获取检测检验人员联系电话", notes = "根据公司的unitCode获取检测检验人员联系电话")
public ResponseModel<Map<String,Object>> getUserPhonesByPersonCode(@RequestParam String unitCode) {
if (unitCode.contains("_")) {
unitCode = unitCode.split("_")[0];
}
List<TzsUserInfo> userPhones = commonserviceImpl.getUserPhonesByPersonCode(unitCode);
if (CollectionUtils.isEmpty(userPhones)){
return null;
......@@ -70,6 +73,9 @@ public class CommonController extends BaseController {
@PostMapping(value = "/getInnerPersonCodeByPersonCode")
@ApiOperation(httpMethod = "POST", value = "根据公司的unitCode获取检测检验人员内部编号", notes = "根据公司的unitCode获取检测检验人员内部编号")
public ResponseModel<Map<String,Object>> getInnerPersonCodeByPersonCode(@RequestParam String unitCode) {
if (unitCode.contains("_")) {
unitCode = unitCode.split("_")[0];
}
List<TzsUserInfo> userPhones = commonserviceImpl.getUserPhonesByPersonCode(unitCode);
if (CollectionUtils.isEmpty(userPhones)){
return null;
......
package com.yeejoin.amos.boot.module.jyjc.biz.controller;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
......@@ -24,9 +26,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* @author system_generator
......@@ -55,7 +55,7 @@ public class JyjcInspectionApplicationController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<JyjcInspectionApplicationModel> save(@RequestBody JSONObject model) {
public ResponseModel<List<JyjcInspectionApplicationModel>> save(@RequestBody JSONObject model) {
if (model.containsKey(basic)) {
JSONObject finallyJson = new JSONObject();
Map<String, Object> basicObj = (Map<String, Object>) model.get(basic);
......@@ -76,7 +76,7 @@ public class JyjcInspectionApplicationController extends BaseController {
return CommonResponseUtil.failure("未选择报检设备时不可提交");
}
}
return ResponseHelper.buildResponse(jyjcInspectionApplicationServiceImpl.save(model));
return ResponseHelper.buildResponse(Collections.singletonList(jyjcInspectionApplicationServiceImpl.save(model)));
}
......
......@@ -69,6 +69,9 @@ public class TaskModelServiceImpl {
if (flag){
List<TaskV2Model> result = Systemctl.taskV2Client.selectListByRelationId(obj.getRelationId()).getResult();
if (CollectionUtil.isNotEmpty(result) && result.size() > 0){
TaskV2Model taskV2Model = result.get(0);
taskV2Model.setTaskContent(obj.getTaskContent());
Systemctl.taskV2Client.update(taskV2Model,taskV2Model.getSequenceNbr());
break;
}
}
......@@ -129,6 +132,15 @@ public class TaskModelServiceImpl {
}
public void updateTaskContentById(Map<String, Object> params){
List<TaskV2Model> result = Systemctl.taskV2Client.selectListByRelationId(params.get("relationId").toString()).getResult();
List<TaskV2Model> collect = result.stream().sorted((r1, r2) -> r2.getSequenceNbr().compareTo(r1.getSequenceNbr())).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(collect)) {
collect.get(0).setTaskContent(params.getOrDefault("taskContent", "").toString());
Systemctl.taskV2Client.update(collect.get(0), collect.get(0).getSequenceNbr());
}
}
/**
* 待办编辑接口
* 参数
......
......@@ -198,33 +198,46 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
if (null == model.getSequenceNbr()){
model = this.createWithModel(model);
if (StringUtils.isNotBlank(model.getProcessInstanceId())){
this.createdTaskModel(model);
} else {
TaskModelDto dto = new TaskModelDto();
TaskMessageDto ta = new TaskMessageDto();
ta.setInstanceId(model.getProcessInstanceId());
ta.setStatus(model.getStatus());
ta.setPromoter(model.getPromoter());
ta.setNextExecuteUserIds(model.getNextExecuteUserIds());
ta.setSequenceNbr(model.getSequenceNbr());
ta.setProcessInstanceId(model.getProcessInstanceId());
ta.setProcessKey(model.getProcessKey());
ta.setCreateUserId(RequestContext.getExeUserId());
dto.setModel(ta);
//摘要 按原有规则组装
dto.setTaskContent("来自"+model.getEquList()+"【"+model.getSupervisoryCode()+"】的业务办理,【申请单号:"+model.getApplicationNo()+"】");
//申请单号
dto.setTaskCode(model.getApplicationNo());
//业务类型枚举code值
dto.setTaskType(BizTypeEnum.getNumByCode(model.getBizType()));
////业务主键
dto.setRelationId(model.getSequenceNbr()+"");
taskModelService.buildTaskModel(Arrays.asList(dto));
}
}else {
model = this.updateWithModel(model);
}
if (StringUtils.isNotBlank(model.getProcessInstanceId()) && model.getOperationType().equals("0")){
taskModelService.deleteTaskModel(model.getSequenceNbr()+"");
this.createdTaskModel(model);
} else {
if (StringUtils.isNotBlank(model.getProcessInstanceId())){
this.createdTaskModel(model);
}else {
TaskModelDto dto = new TaskModelDto();
TaskMessageDto ta = new TaskMessageDto();
ta.setInstanceId(model.getProcessInstanceId());
ta.setStatus(model.getStatus());
ta.setPromoter(model.getPromoter());
ta.setNextExecuteUserIds(model.getNextExecuteUserIds());
ta.setSequenceNbr(model.getSequenceNbr());
dto.setModel(ta);
//摘要 按原有规则组装
dto.setTaskContent("来自"+model.getEquList()+"【"+model.getSupervisoryCode()+"】的业务办理,【申请单号:"+model.getApplicationNo()+"】");
//申请单号
dto.setTaskCode(model.getApplicationNo());
//业务类型枚举code值
dto.setTaskType(BizTypeEnum.getNumByCode(model.getBizType()));
////业务主键
dto.setRelationId(model.getSequenceNbr()+"");
taskModelService.buildTaskModel(Arrays.asList(dto));
String taskContent="来自"+model.getEquList()+"【"+model.getSupervisoryCode()+"】的业务办理,【申请单号:"+model.getApplicationNo()+"】";
taskModelService.updateTaskContentById(MapBuilder.<String,Object>create().put("taskContent",taskContent).
put("relationId",model.getSequenceNbr()+"").build());
}
}
//保存报检装备监管码
for (JyjcInspectionApplicationEquip equipInfo : equipInfos) {
equipInfo.setApplicationSeq(model.getSequenceNbr());
......@@ -310,6 +323,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
this.buildRoleList(Collections.singletonList(processTaskDTO), roleList, roleListAll);
List<WorkflowResultDto> workflowResultDtos = taskModelService.buildWorkFlowInfo(Collections.singletonList(processTaskDTO));
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();
......@@ -326,8 +340,8 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
model.setStatus(String.valueOf(FlowStatusEnum.TO_SUBMITTED.getCode()));
model.setStatusName(FlowStatusEnum.TO_SUBMITTED.getName());
model.setNextTaskName(taskName1);
model.setNextExecuteIds(executorRoleIds);
executeOneStep(model, taskName1, nextUserIds);
model.setNextExecuteIds(nextUserIds);
this.updateWithModel(model);
}
return model;
......@@ -486,25 +500,58 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
*/
@Transactional(rollbackFor = Exception.class)
public void doReceive(Map<String, Object> params) {
execueFlow(params);
Long sequenceNbr = Long.parseLong(params.get("sequenceNbr") + "");
LambdaQueryWrapper<JyjcInspectionApplication> lambda = new QueryWrapper<JyjcInspectionApplication>().lambda();
lambda.eq(JyjcInspectionApplication::getSequenceNbr, sequenceNbr);
JyjcInspectionApplication entity = this.getBaseMapper().selectOne(lambda);
ArrayList<String> roleList = new ArrayList<>();
String taskId = entity.getNextTaskId();
//组装信息
TaskResultDTO task = new TaskResultDTO();
task.setResultCode("approvalStatus");
task.setTaskId(taskId);
task.setComment("");
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", "0");
task.setVariable(map);
//执行流程
task.setNextExecuteUserCompanyCode(entity.getInspectionUnitCode());
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, task);
entity.setStatus(String.valueOf(FlowStatusEnum.TO_BE_FINISHED.getCode()));
JyjcInspectionApplicationModel model = new JyjcInspectionApplicationModel();
model.setStatusName(FlowStatusEnum.TO_BE_FINISHED.getName());
entity.setAcceptDate(new Date());
entity.setInnerPersonCode(params.getOrDefault("innerPersonCode","").toString());
String processDescription = (String)params.get("comments");
if (StringUtils.isNotBlank(processDescription)) {
entity.setProcessDescription(processDescription);
}
List<String> persons = JSONArray.parseArray(JSON.toJSONString(params.get("inspectionChargePerson")), String.class);
String inspectionChargePerson = persons == null?"":String.join(",",persons);
if (StringUtils.isNotBlank(inspectionChargePerson)) {
entity.setInspectionChargePerson(inspectionChargePerson);
}
String inspectionChargePhone = (String)params.get("inspectionChargePhone");
if (StringUtils.isNotBlank(inspectionChargePhone)) {
entity.setInspectionChargePhone(inspectionChargePhone);
}
this.updateById(entity);
BeanUtils.copyProperties(entity,model);
updateTaskModel(model);
// 执行接收业务
String type = (String) params.get("type");
Long sequenceNbr = Long.parseLong(params.get("sequenceNbr") + "");
JyjcInspectionApplicationModel inspectionApplicationModel = this.queryBySeq(sequenceNbr);
params.put("status", FlowStatusEnum.TO_BE_FINISHED.getCode() + "");
String op = params.get("op").toString();
Boolean rollBack = "1".equals(op) ? true : false;
updateModelByInstanceId(sequenceNbr, inspectionApplicationModel.getProcessInstanceId(), params, rollBack);
List<JyjcInspectionApplicationEquipModel> applicationEquipModels = applicationEquipService.listApplicationEquipByApplicationSeq(sequenceNbr);
if (inspectionApplicationModel == null || ValidationUtil.isEmpty(applicationEquipModels)) {
log.warn("JyjcInspectionApplicationModel Not Found!");
return;
}
params.put("relationId",inspectionApplicationModel.getProcessInstanceId());
params.put("taskStatus",FlowStatusEnum.TO_BE_FINISHED.getCode());
params.put("taskStatusLabel",FlowStatusEnum.TO_BE_FINISHED.getName());
TaskV2Model taskV2Model = commonservice.updateTaskModel(params);
List<JyjcInspectionResult> resultModels = new ArrayList(applicationEquipModels.size());
//List<String> codes = createCodeService.createApplicationFormCode(ApplicationFormTypeEnum.JG.getCode(), applicationEquipModels.size());
......@@ -546,44 +593,63 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
* @date 2023/12/15 15:14
*/
public Boolean doReject(Map<String, Object> params) {
execueFlow(params);
String instanceId = Optional.ofNullable(params.get("instanceId")).orElse("").toString();
String op = params.get("op").toString();
Long sequenceNbr = Long.parseLong(params.get("sequenceNbr") + "");
LambdaQueryWrapper<JyjcInspectionApplication> lambda = new QueryWrapper<JyjcInspectionApplication>().lambda();
lambda.eq(JyjcInspectionApplication::getSequenceNbr, sequenceNbr);
JyjcInspectionApplication entity = this.getBaseMapper().selectOne(lambda);
ArrayList<String> roleListAll = new ArrayList<>();
ArrayList<String> roleListNext = new ArrayList<>();
ArrayList<String> roleList = new ArrayList<>();
String taskId = entity.getNextTaskId();
//组装信息
TaskResultDTO task = new TaskResultDTO();
task.setResultCode("approvalStatus");
task.setTaskId(taskId);
task.setComment("");
HashMap<String, Object> map = new HashMap<>();
map.put("approvalStatus", "1");
task.setVariable(map);
//执行流程
task.setNextExecuteUserCompanyCode(entity.getInspectionUnitCode());
ProcessTaskDTO processTaskDTO = cmWorkflowService.complete(taskId, task);
String taskCode = FlowStatusEnum.TO_SUBMITTED.getName();
String taskName1 = "";
String nextTaskId = "";
this.buildRoleList(Collections.singletonList(processTaskDTO), roleList, roleListAll);
List<WorkflowResultDto> workflowResultDtos = taskModelService.buildWorkFlowInfo(Collections.singletonList(processTaskDTO));
params.put("relationId",instanceId);
params.put("taskStatus",FlowStatusEnum.TO_BE_FINISHED.getCode());
params.put("taskStatusLabel",FlowStatusEnum.TO_BE_FINISHED.getName());
TaskV2Model taskV2Model = commonservice.updateTaskModel(params);
JyjcInspectionApplicationModel model = this.queryBySeq(sequenceNbr);
String json = null;
try {
json = IOUtils.toString(bizTypeInfo.getInputStream(), java.lang.String.valueOf(StandardCharsets.UTF_8));
} catch (IOException e) {
e.printStackTrace();
entity.setStatus(String.valueOf(FlowStatusEnum.REJECTED.getCode()));
JyjcInspectionApplicationModel model = new JyjcInspectionApplicationModel();
BeanUtils.copyProperties(entity,model);
model.setStatusName(FlowStatusEnum.REJECTED.getName());
String processDescription = (String)params.get("comments");
if (StringUtils.isNotBlank(processDescription)) {
entity.setProcessDescription(processDescription);
}
List<Map> list = parseArray(json, Map.class);
String url = null;
for (Map map : list) {
if (map.get("type").equals(model.getBizType() )&& "edit".equals(map.get("pageType"))){
url = map.get("url").toString();
}
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();
}
taskV2Model.setRoutePath(url);
Map<String, Object> nextNodeInfo = workflowHelper.getNextWorkflowNode(instanceId);
String role = (String) nextNodeInfo.get("role");
taskV2Model.setExecuteUserIds(role);
Map<String, Object> map = BeanUtil.beanToMap(taskV2Model);
map.put("instanceId",taskV2Model.getRelationId());
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
map.put("userId",reginParams.getUserModel().getUserId());
map.put("executeUserIds",taskV2Model.getStartUserId());
commonservice.buildTaskModel(map);
model.setNextExecuteIds(String.join(",", roleList));
if (!org.springframework.util.ObjectUtils.isEmpty(model.getWorkflowRole())) {
model.setWorkflowRole(model.getWorkflowRole() + "," + String.join(",", roleList));
} else {
model.setWorkflowRole(String.join(",", roleList));
}
model.setNextTaskId(nextTaskId);
model.setPromoter(RequestContext.getExeUserId());
model.setNextTaskName(taskName1);
model.setNextExecuteIds(executorRoleIds);
model.setNextExecuteUserIds(nextUserIds);
executeOneStep(model, taskName1, nextUserIds);
BeanUtils.copyProperties(model,entity);
this.updateById(entity);
params.put("status", FlowStatusEnum.REJECTED.getCode() + "");
Boolean rollBack = "1".equals(op) ? true : false;
updateModelByInstanceId(sequenceNbr, instanceId, params, rollBack);
// updateModelByInstanceId(sequenceNbr, instanceId, params, rollBack);
return true;
}
......@@ -684,17 +750,19 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
// List<String> phones = JSONArray.parseArray(JSON.toJSONString(params.get("inspectionChargePhone")), String.class);
String inspectionChargePerson = persons == null?"":String.join(",",persons);
String inspectionChargePhone = (String)params.get("inspectionChargePhone");
String processDescription = (String)params.get("comments");
if (StringUtils.isNotBlank(inspectionChargePerson)) {
entity.setInspectionChargePerson(inspectionChargePerson);
}
if (StringUtils.isNotBlank(inspectionChargePhone)) {
entity.setInspectionChargePhone(inspectionChargePhone);
}
String processDescription = (String)params.get("comments");
if (StringUtils.isNotBlank(processDescription)) {
entity.setProcessDescription(processDescription);
}
String inspectionChargePhone = (String)params.get("inspectionChargePhone");
if (StringUtils.isNotBlank(inspectionChargePhone)) {
entity.setInspectionChargePhone(inspectionChargePhone);
}
Map<String, Object> nextNodeInfo = workflowHelper.getNextWorkflowNode(instanceId);
String role = (String) nextNodeInfo.get("role");
entity.setNextExecuteIds(role);
......@@ -736,9 +804,12 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
ta.setInstanceId(model.getProcessInstanceId());
ta.setStatus(model.getStatus());
ta.setPromoter(model.getPromoter());
ta.setNextExecuteUserIds(model.getNextExecuteUserIds());
ta.setNextExecuteIds(model.getNextExecuteIds());
ta.setSequenceNbr(model.getSequenceNbr());
ta.setProcessInstanceId(model.getProcessInstanceId());
ta.setProcessKey(model.getProcessKey());
ta.setInspectionUnitCode(model.getInspectionUnitCode());
ta.setBizType(model.getBizType());
dto.setModel(ta);
dto.setFlowCreateDate(new Date());
dto.setTaskName(model.getNextTaskName());
......@@ -753,7 +824,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
dto.setFlowStatus(Integer.valueOf(model.getStatus()));
dto.setFlowStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
dto.setStartUserId(RequestContext.getExeUserId());
dto.setStartUser(model.getCreateUserId());
dto.setStartUser(reginParams.getUserModel().getRealName());
dto.setStartUserCompanyName(reginParams.getCompany().getCompanyName());
dto.setStartDate(new Date());
dto.setNextExecuteUser(model.getNextExecuteIds());
......@@ -780,11 +851,10 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
// taskV2Model.setStartDate(jgChangeRegistrationName.getCreateDate());
// taskV2Model.setStartUserId(jgChangeRegistrationName.getCreateUserId());
// taskV2Model.setStartUserCompanyName(jgChangeRegistrationName.getUseUnitName());
taskV2Model.setExecuteUserIds(nextUserIds);
TaskModelDto modelDto = new TaskModelDto();
BeanUtil.copyProperties(taskV2Model, modelDto);
modelDto.setNextExecuteUser(model.getNextExecuteIds());
if (model.getStatus().equals(FlowStatusEnum.REJECTED.getCode())){
if (model.getStatus().equals(FlowStatusEnum.REJECTED.getCode()+"")){
modelDto.setPageType("edit");
}
TaskMessageDto obj = new TaskMessageDto();
......@@ -793,6 +863,12 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
obj.setPromoter(model.getPromoter());
obj.setNextExecuteUserIds(model.getNextExecuteUserIds());
obj.setSequenceNbr(model.getSequenceNbr());
obj.setNextExecuteIds(model.getNextExecuteIds());
obj.setProcessInstanceId(model.getProcessInstanceId());
obj.setProcessKey(model.getProcessKey());
obj.setInspectionUnitCode(model.getInspectionUnitCode());
obj.setBizType(model.getBizType());
obj.setCreateUserId(model.getCreateUserId());
modelDto.setModel(obj);
// 再插入新代办、数据待定
taskModelService.buildTaskModel(Collections.singletonList(modelDto));
......@@ -801,7 +877,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
private TaskV2Model updateTaskModel(JyjcInspectionApplicationModel model) {
Map<String, Object> params = new HashMap<>();
params.put("relationId",model.getInstanceId());
params.put("relationId",model.getProcessInstanceId());
params.put("taskStatus", model.getStatus());
params.put("taskStatusLabel", model.getStatusName());
params.put("flowStatus",model.getStatus());
......
......@@ -695,7 +695,7 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
dto.setFlowStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
dto.setStartUserId(reginParams.getUserModel().getUserId());
dto.setStartUser(reginParams.getUserModel().getRealName());
dto.setStartUserCompanyName(reginParams.getCompany().getCompanyCode());
dto.setStartUserCompanyName(reginParams.getCompany().getCompanyName());
dto.setStartDate(new Date());
model.setWorkflowProstanceId(workflowResultDto.getInstanceId());
model.setNextExecuteIds(workflowResultDto.getNextExecutorRoleIds());
......
[ {
"type":"supervise",
"type":"115",
"pageType": "draft",
"url": "/mixuap?appId=1742358052905971713&id=1734576595978448898&roleIds={roleIds}&userId={userId}&pageType=edit"
}, {
"type":"firstinspect",
"type":"116",
"pageType": "draft",
"url": "/mixuap?appId=1742358052905971713&id=1736728282272919554&roleIds={roleIds}&userId={userId}&pageType=edit"
}, {
"type":"detection",
"type":"117",
"pageType": "draft",
"url": "/mixuap?appId=1742358052905971713&id=1736733779709423618&roleIds={roleIds}&userId={userId}&pageType=edit"
},
{
"type":"supervise",
"type":"115",
"pageType": "look",
"url": "/mixuap?appId=1742358052905971713&id=1736647706878701570&roleIds={roleIds}&userId={userId}&pageType=look"
}, {
"type":"firstinspect",
"type":"116",
"pageType": "look",
"url": "/mixuap?appId=1742358052905971713&id=1736647706878701570&roleIds={roleIds}&userId={userId}&pageType=look"
}, {
"type":"detection",
"type":"117",
"pageType": "look",
"url": "/mixuap?appId=1742358052905971713&id=1736647706878701570&roleIds={roleIds}&userId={userId}&pageType=look"
}, {
"type":"supervise",
"type":"115",
"pageType": "edit",
"url": "/mixuap?appId=1742358052905971713&id=1736642376224501762&roleIds={roleIds}&userId={userId}&pageType=edit"
"url": "/mixuap?appId=1742358052905971713&id=1736647706878701570&roleIds={roleIds}&userId={userId}&pageType=edit"
}, {
"type":"firstinspect",
"type":"116",
"pageType": "edit",
"url": "/mixuap?appId=1742358052905971713&id=1736728282272919554&roleIds={roleIds}&userId={userId}&pageType=edit"
"url": "/mixuap?appId=1742358052905971713&id=1736647706878701570&roleIds={roleIds}&userId={userId}&pageType=edit"
}, {
"type":"detection",
"type":"117",
"pageType": "edit",
"url": "/mixuap?appId=1742358052905971713&id=1736733779709423618&roleIds={roleIds}&userId={userId}&pageType=edit"
"url": "/mixuap?appId=1742358052905971713&id=1736647706878701570&roleIds={roleIds}&userId={userId}&pageType=edit"
}, {
"type":"114",
"pageType": "draft",
......
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