Commit 678c93d5 authored by 韩桐桐's avatar 韩桐桐

fix(jg):设备移交

parent 301d38af
......@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.map.MapBuilder;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
......@@ -32,13 +33,11 @@ import com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient;
import com.yeejoin.amos.boot.module.jg.biz.service.ICompensateFlowDataOfRedis;
import com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgRegisterInfoService;
import com.yeejoin.amos.boot.module.ymt.api.common.BaseException;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgOtherInfo;
import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgProjectContraption;
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.*;
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.EquipmentCategoryMapper;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
......@@ -88,6 +87,8 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
private static final String SUBMIT_TYPE_FLOW = "1";
private final JgEquipTransferEqMapper jgEquipTransferEqMapper;
private final EquipmentCategoryMapper equipmentCategoryMapper;
;
private final JgEquipTransferEqServiceImpl equipTransferEqService;
private final RedisUtils redisUtils;
private final TzsServiceFeignClient tzsServiceFeignClient;
......@@ -174,8 +175,8 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
transfer.setProjectContraptionSeq(proConSeq);
transfer.setEquList(EquipmentClassifityEnum.YLGD.getName());
transfer.setEquListCode(equListCode);
// transfer.setEquCategory();
// transfer.setEquDefine();
transfer.setEquCategory(equipmentCategoryMapper.selectOne(new LambdaQueryWrapper<EquipmentCategory>().eq(EquipmentCategory::getCode, idxBizJgRegisterInfoServiceImpl.lambdaQuery().eq(IdxBizJgRegisterInfo::getRecord, equipList.get(0).get(record)).one().getEquCategory())).getName());
transfer.setEquDefine(equipmentCategoryMapper.selectOne(new LambdaQueryWrapper<EquipmentCategory>().eq(EquipmentCategory::getCode, idxBizJgRegisterInfoServiceImpl.lambdaQuery().eq(IdxBizJgRegisterInfo::getRecord, equipList.get(0).get(record)).one().getEquDefine())).getName());
transfer.setSupervisoryCode(org.apache.commons.lang3.StringUtils.join(idxBizJgOtherInfoServiceImpl.lambdaQuery().in(IdxBizJgOtherInfo::getRecord, records).list().stream().filter(Objects::nonNull).map(IdxBizJgOtherInfo::getSupervisoryCode).collect(Collectors.toList()), ","));
transfer.setProductName(org.apache.commons.lang3.StringUtils.join(idxBizJgRegisterInfoServiceImpl.lambdaQuery().in(IdxBizJgRegisterInfo::getRecord, records).list().stream().filter(Objects::nonNull).map(IdxBizJgRegisterInfo::getProductName).collect(Collectors.toList()), ","));
transfer.setUseRegistCode(projectContraption.getUseRegistrationCode());
......@@ -214,7 +215,7 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
jgEquipTransferEqMapper.insertBatchSomeColumn(jgEquipTransferEqList);
this.updateRedisBatch(transferList);
// 创建历史数据
this.saveOrUpdateHisDataBatch(jgEquipTransferEqList);
this.saveOrUpdateHisDataBatch(equListCode, transferList, jgEquipTransferEqList);
return transferList;
}
......@@ -234,15 +235,21 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
}
}
private void saveOrUpdateHisDataBatch(List<JgEquipTransferEq> jgEquipTransferEqList) {
jgEquipTransferEqList.forEach(j -> {
commonService.saveOrUpdateHistory(BusinessTypeEnum.JG_EQUIPMENT_HANDOVER.getName(), getEquipInfoJson(j.getEquId()), j.getEquId(), j.getEquipTransferId());
});
private void saveOrUpdateHisDataBatch(String equListCode, List<JgEquipTransfer> transferList, List<JgEquipTransferEq> jgEquipTransferEqList) {
if (EquipmentClassifityEnum.YLGD.getCode().equals(equListCode)) {
transferList.forEach(transfer -> {
Map<String, Object> stringObjectMap = jgProjectContraptionService.details(transfer.getProjectContraptionSeq()).get("equipInfo");
commonService.saveOrUpdateHistory(BusinessTypeEnum.JG_EQUIPMENT_HANDOVER.getName(), new JSONObject(stringObjectMap), null, transfer.getSequenceNbr().toString());
});
} else {
jgEquipTransferEqList.forEach(j -> {
commonService.saveOrUpdateHistory(BusinessTypeEnum.JG_EQUIPMENT_HANDOVER.getName(), getEquipInfoJson(j.getEquId()), j.getEquId(), j.getEquipTransferId());
});
}
}
private JSON getEquipInfoJson(String record) {
Map<String, Object> equipMap = idxBizJgRegisterInfoService.getDetailFieldCamelCaseByRecord(record);
;
equipMap.remove("useUnitCreditCode");
return new JSONObject(equipMap);
}
......@@ -462,7 +469,7 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
updateById(equipTransfer);
}
List<JgEquipTransferEq> jgEquipTransferEqList = jgEquipTransferEqMapper.selectList(new LambdaQueryWrapper<JgEquipTransferEq>().eq(JgEquipTransferEq::getEquipTransferId, equipTransferDto.getSequenceNbr()));
this.saveOrUpdateHisDataBatch(jgEquipTransferEqList);
this.saveOrUpdateHisDataBatch(equipTransferDto.getEquList(), Collections.singletonList(this.baseMapper.selectOne(new LambdaQueryWrapper<JgEquipTransfer>().eq(JgEquipTransfer::getSequenceNbr, equipTransferDto.getSequenceNbr()))), jgEquipTransferEqList);
if (SUBMIT_TYPE_FLOW.equals(submitType)) {//放在最后面防止前面有异常
//如果是提交,用于校验设备是否已经在流程中,如果不在标记设备已经在流程中
CompanyBo company = reginParams.getCompany();
......@@ -516,8 +523,8 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
WorkflowResultDto workflowResultDto = commonService.buildWorkFlowInfo(Collections.singletonList(processTaskDTO)).get(0);
jgEquipTransfer.setPromoter(reginParams.getUserModel().getUserId());
jgEquipTransfer.setProcessAdvice(jgEquipTransferDto.getProcessAdvice());
JgEquipTransferEq jgEquipTransferEq = jgEquipTransferEqMapper.selectOne(Wrappers.<JgEquipTransferEq>lambdaQuery().select(JgEquipTransferEq::getEquId)
.eq(JgEquipTransferEq::getEquipTransferId, jgEquipTransferDto.getSequenceNbr()));
List<JgEquipTransferEq> jgEquipTransferEqs = jgEquipTransferEqMapper.selectList(Wrappers.<JgEquipTransferEq>lambdaQuery().select(JgEquipTransferEq::getEquId)
.eq(JgEquipTransferEq::getEquipTransferId, jgEquipTransferDto.getSequenceNbr()));
TaskV2Model taskV2Model;
if ("0".equals(op)) {
......@@ -526,15 +533,24 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
jgEquipTransfer.setPromoter("");
jgEquipTransfer.setNextTaskId(null);
jgEquipTransfer.setAcceptDate(new Date());
if (jgEquipTransferEq != null) {
Map<String, Map<String, Object>> resultMap = MapBuilder.<String, Map<String, Object>>create()
.put(jgEquipTransferEq.getEquId(), MapBuilder.<String, Object>create()
.put("USC_UNIT_NAME", jgEquipTransfer.getInstallUnitName())
.put("USC_UNIT_CREDIT_CODE", jgEquipTransfer.getInstallUnitCreditCode())
.build())
.build();
tzsServiceFeignClient.commonUpdateEsDataByIds(resultMap);
if (EquipmentClassifityEnum.YLGD.getCode().equals(jgEquipTransferDto.getEquList())) {
JgEquipTransfer transfer = this.baseMapper.selectById(jgEquipTransferDto.getSequenceNbr());
jgProjectContraptionService.lambdaUpdate()
.eq(IdxBizJgProjectContraption::getSequenceNbr, transfer.getProjectContraptionSeq())
.set(IdxBizJgProjectContraption::getUscUnitCreditCode, jgEquipTransfer.getInstallUnitCreditCode())
.set(IdxBizJgProjectContraption::getUscUnitName, jgEquipTransfer.getInstallUnitName())
.update();
}
if (jgEquipTransferEqs != null) {
jgEquipTransferEqs.forEach(equipTransferEq -> {
Map<String, Map<String, Object>> resultMap = MapBuilder.<String, Map<String, Object>>create()
.put(equipTransferEq.getEquId(), MapBuilder.<String, Object>create()
.put("USC_UNIT_NAME", jgEquipTransfer.getInstallUnitName())
.put("USC_UNIT_CREDIT_CODE", jgEquipTransfer.getInstallUnitCreditCode())
.build())
.build();
tzsServiceFeignClient.commonUpdateEsDataByIds(resultMap);
});
}
// 上个代办改为已办
this.updateLastTodo(jgEquipTransfer, FlowStatusEnum.TO_BE_FINISHED);
......@@ -558,7 +574,7 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
//驳回
jgEquipTransfer.setPromoter("");
jgEquipTransfer.setApplyStatus(String.valueOf(FlowStatusEnum.REJECTED.getCode()));
jgEquipTransfer.setSupervisoryCode(jgEquipTransferDto.getSupervisoryCode());
// jgEquipTransfer.setSupervisoryCode(jgEquipTransferDto.getSupervisoryCode());
jgEquipTransfer.setEquList(jgEquipTransferDto.getEquList());
jgEquipTransfer.setNextTaskId(workflowResultDto.getNextTaskId());
jgEquipTransfer.setNextExecuteUserIds(workflowResultDto.getNextExecutorUserIds());
......
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