Commit e1bad55b authored by liufan's avatar liufan

修改:移装变更时,获取申请编号的方式

parent d943e1ea
......@@ -12,7 +12,7 @@ import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.jg.api.entity.JgChangeRegistrationTransfer;
import com.yeejoin.amos.boot.module.jg.api.entity.JgChangeRegistrationTransferEq;
import com.yeejoin.amos.boot.module.jg.api.entity.JgRegistrationHistory;
import com.yeejoin.amos.boot.module.jg.api.entity.JgUseRegistration;
import com.yeejoin.amos.boot.module.jg.api.enums.EquipTypeEnum;
import com.yeejoin.amos.boot.module.jg.api.enums.UseStatusEnum;
import com.yeejoin.amos.boot.module.jg.api.enums.WorkFlowStatusEnum;
import com.yeejoin.amos.boot.module.jg.api.mapper.JgChangeRegistrationReformEqMapper;
......@@ -24,16 +24,15 @@ import com.yeejoin.amos.boot.module.jg.api.service.IJgChangeRegistrationTransfer
import com.yeejoin.amos.boot.module.jg.api.dto.JgChangeRegistrationTransferDto;
import com.yeejoin.amos.boot.module.jg.api.service.IJgRegistrationHistoryService;
import com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient;
import com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgRegisterInfoService;
import com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgUseInfoService;
import com.yeejoin.amos.boot.module.jg.flc.api.fegin.WorkFlowFeignService;
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.OtherInfo;
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.IdxBizJgOtherInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgRegisterInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.service.ICreateCodeService;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.workflow.Workflow;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
......@@ -54,6 +53,7 @@ import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.io.IOException;
......@@ -88,8 +88,6 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
@Autowired
private IdxBizJgRegisterInfoServiceImpl idxBizJgRegisterInfoService;
@Autowired
private ICreateCodeService iCreateCodeService;
@Autowired
RestHighLevelClient restHighLevelClient;
......@@ -152,7 +150,13 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
}
}
//查询申请单号
List<String> applicationFormCode = iCreateCodeService.createApplicationFormCode(ApplicationFormTypeEnum.YZBG.getCode(), 1);
ResponseModel<List<String>> result =tzsServiceFeignClient.applicationFormCode(ApplicationFormTypeEnum.GZBG.getCode(), 1);
if(!result.getResult().isEmpty()){
//申请编号
oldTransfer.setApplyNo(result.getResult().get(0));
}else {
throw new BadRequest("申请单编号生成失败,请稍后重试!");
}
//有sequenceNbr代表修改数据
if (!ValidationUtil.isEmpty(sequenceNbr)) {
......@@ -166,8 +170,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
useInfo = idxBizJgUseInfoService.getOneData(oldTransferEq.getEquId());
}
}
//申请编号
oldTransfer.setApplyNo(applicationFormCode.get(0));
//登记类别
oldTransfer.setRegType("移装登记");
//注册登记日期
......@@ -192,7 +195,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
oldTransfer.setReceiveOrgName(receiveOrgName);
}
//办理状态
oldTransfer.setAuditStatus("待提交");
oldTransfer.setAuditStatus(FlowStatusEnum.TO_BE_SUBMITTED.getName());
oldTransfer.setStatus(UseStatusEnum.SUBMIT.getPass());
//es种查询设备信息
......@@ -216,6 +219,11 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
if (!ValidationUtil.isEmpty(dto2.get("SUPERVISORY_CODE"))) {
supervisoryCode = (String) dto2.get("SUPERVISORY_CODE");
oldTransfer.setSupervisoryCode(supervisoryCode);
}else{
supervisoryCode = idxBizJgOtherInfoMapper.getSupervisoryCodeByEquipmentCode(equId);
if(!ValidationUtil.isEmpty(supervisoryCode)){
oldTransfer.setSupervisoryCode(supervisoryCode);
}
}
//使用登记编号 X
......@@ -542,7 +550,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
public void updateExecuteIds(String instanceId, Long sequenceNbr, String operate) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
String role = "";
String taskCode = "已完成";
String taskCode = FlowStatusEnum.TO_BE_FINISHED.getName();
ArrayList<String> roleList = new ArrayList<>();
JgChangeRegistrationTransfer jgChangeRegistrationTransfer = this.getBaseMapper().selectById(sequenceNbr);
try {
......@@ -566,7 +574,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
} catch (Exception e) {
e.printStackTrace();
}
if (!"已完成".equals(taskCode)) {
if (!FlowStatusEnum.TO_BE_FINISHED.getName().equals(taskCode)) {
role = String.join(",", roleList);
jgChangeRegistrationTransfer.setNextExecutorIds(role);
jgChangeRegistrationTransfer.setPromoter(reginParams.getUserModel().getUserId());
......@@ -578,17 +586,20 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
}
if ("0".equals(operate)) {
// 通过操作
jgChangeRegistrationTransfer.setAuditStatus(WorkFlowStatusEnum.getMessage(taskCode).getPass());
jgChangeRegistrationTransfer.setStatus(WorkFlowStatusEnum.getMessage(taskCode).getPass());
} else {
// 驳回操作
jgChangeRegistrationTransfer.setAuditStatus(WorkFlowStatusEnum.getMessage(taskCode).getPass());
jgChangeRegistrationTransfer.setStatus(WorkFlowStatusEnum.getMessage(taskCode).getReject());
jgChangeRegistrationTransfer.setPromoter("");
}
} else {
jgChangeRegistrationTransfer.setAuditStatus(taskCode);
jgChangeRegistrationTransfer.setStatus(taskCode);
//流程执行完成后,更新设备使用信息
this.updateByFlowEnd(sequenceNbr.toString());
this.updateByFlowEnd(sequenceNbr.toString(), jgChangeRegistrationTransfer.getSupervisoryCode());
}
this.getBaseMapper().updateById(jgChangeRegistrationTransfer);
......@@ -599,8 +610,9 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* 流程结束后需要更新的数据
*
* @param sequenceNbr 移装变更单Id
* @param supervisoryCode 监管码
*/
public void updateByFlowEnd(String sequenceNbr) {
public void updateByFlowEnd(String sequenceNbr, String supervisoryCode) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
JgChangeRegistrationTransferEq transferEq = jgChangeRegistrationTransferEqService.getDetailByEquipTransferId(sequenceNbr);
if (!ValidationUtil.isEmpty(transferEq)) {
......@@ -612,30 +624,42 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
updateData.setRegPersonId(reginParams.getUserModel().getUserId());
//reg_person_name 注册登记人员
updateData.setRegPersonName(reginParams.getUserModel().getUserName());
//使用登记证编号
String useRegistrationCode = this.getCode(supervisoryCode);
if(!ValidationUtil.isEmpty(useRegistrationCode)){
updateData.setUseRegistrationCode(useRegistrationCode);
}
//补充移装变更表
this.updateTransferByBaseInfo(updateData);
//替换历史数据表
this.replacementHistoryData(transferEq.getEquId(), sequenceNbr);
//替换历史数据表和设备使用表
this.replacementHistoryData(transferEq.getEquId(), sequenceNbr, useRegistrationCode);
//更新使用注册登记证编号及ES中的信息
this.updataRegisterInfoAndEsData(transferEq.getEquId(), useRegistrationCode);
//修改告知书状态,置为废弃
this.updataInvalidStatusByHistory(transferEq.getEquId(), transferEq.getEquipTransferId());
//更新使用注册登记证编号及ES中的信息
this.updataRegisterInfoAndEsData(transferEq.getEquId());
}
}
/**
* 替换历史数据
* 修改历史数据表和设备使用
*
* @param record 设备Id
* @param sequenceNbr 当前单据Id
* @param useRegistrationCode 使用登记编号
*/
public void replacementHistoryData(String record, String sequenceNbr) {
public void replacementHistoryData(String record, String sequenceNbr,String useRegistrationCode) {
//查询修改后的新数据
JgRegistrationHistory newData = jgRegistrationHistoryService.getDteailByRecord(record, sequenceNbr);
//查询设备旧数据
IdxBizJgUseInfo useInfo = useInfoService.getOneData(record);
//更新历史数据表
newData.setStatus("history");
if(!ValidationUtil.isEmpty(useRegistrationCode)){
newData.setUseRegistrationCode(useRegistrationCode);
}
jgRegistrationHistoryService.saveOrUpdateHistoryData(newData);
// 更新设备移装位置使用信息
if (!ValidationUtil.isEmpty(newData)) {
JSONObject newPosition = JSON.parseObject(newData.getChangeData());
......@@ -700,16 +724,15 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
* 更新使用注册登记证编号及ES中的信息
*
* @param equId 设备id
* @param useRegistrationCode 使用注册登记证编号
*/
public void updataRegisterInfoAndEsData(String equId) {
ResponseModel<String> responseModel = tzsServiceFeignClient.useRegistrationCode(idxBizJgOtherInfoMapper.getSupervisoryCodeByEquipmentCode(equId));
String newUseRegistrationCertificateNumber = responseModel.getResult().split("-")[0];
public void updataRegisterInfoAndEsData(String equId, String useRegistrationCode) {
//更新使用注册登记证编号
idxBizJgRegisterInfoMapper.updateUseOrgCodeByEquip(equId, newUseRegistrationCertificateNumber);
idxBizJgRegisterInfoMapper.updateUseOrgCodeByEquip(equId, useRegistrationCode);
//es中的编号信息
Map<String, Map<String, Object>> resultMap = new HashMap<>();
Map<String, Object> map1 = new HashMap<>();
map1.put("USE_ORG_CODE", newUseRegistrationCertificateNumber);
map1.put("USE_ORG_CODE", useRegistrationCode);
resultMap.put(equId, map1);
tzsServiceFeignClient.commonUpdateEsDataByIds(resultMap);
}
......@@ -719,4 +742,22 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
this.saveOrUpdate(model);
}
/**
* 参数为监管码
*
* @param supervisoryCode
* @return
*/
public String getCode(String supervisoryCode) {
if (!ObjectUtils.isEmpty(supervisoryCode) && supervisoryCode.length() > 5) {
String name = EquipTypeEnum.getMessage(supervisoryCode.substring(1, 2));
String type = supervisoryCode.substring(2, 4);
String city = supervisoryCode.substring(0, 1);
ResponseModel<String> stringResponseModel = tzsServiceFeignClient.useRegistrationCode(name + type + "陕" + city);
return stringResponseModel.getResult();
}
return null;
}
}
\ No newline at end of file
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