Commit 107de559 authored by 韩桐桐's avatar 韩桐桐

fix(jg):已完成的使用登记单,作废时作废其使用登记证,并增加证流水

parent 84eae96b
...@@ -1234,6 +1234,20 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -1234,6 +1234,20 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
return commonServiceImpl.updateTaskModel(params); return commonServiceImpl.updateTaskModel(params);
} }
/**
* 作废的证变更内容
* @param obj JgUseRegistration
* @return result
*/
private String buildVoidRecordContent(JgUseRegistration obj) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
String companyType = reginParams.getCompany().getCompanyType();
//监管单位 作废了【使用功能登记】 ,单号【DWBG202407050001】,作废日期2024-07-05
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
return companyType + "作废了【" + BusinessTypeEnum.JG_USAGE_REGISTRATION.getName() + "】," +
"单号【" + obj.getApplyNo() + "】,申请日期" + simpleDateFormat.format(obj.getRecDate());
}
private String buildRecordContent(JgUseRegistration obj, Boolean flag) { private String buildRecordContent(JgUseRegistration obj, Boolean flag) {
//张三办理了【单位变更】 ,单号【DWBG202407050001】,办理日期2024-07-05 //张三办理了【单位变更】 ,单号【DWBG202407050001】,办理日期2024-07-05
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd"); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
...@@ -2211,7 +2225,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -2211,7 +2225,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
} }
/** /**
* 作废使用登记证 * 作废使用登记证 & 生成使用登记证的流水
* @param jgUseRegistration * @param jgUseRegistration
*/ */
private void invalidUseRegistrationCertificate(JgUseRegistration jgUseRegistration){ private void invalidUseRegistrationCertificate(JgUseRegistration jgUseRegistration){
...@@ -2226,6 +2240,29 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -2226,6 +2240,29 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
LambdaQueryWrapper<JgUseRegistrationManage> wrapper = new LambdaQueryWrapper<JgUseRegistrationManage>() LambdaQueryWrapper<JgUseRegistrationManage> wrapper = new LambdaQueryWrapper<JgUseRegistrationManage>()
.eq(JgUseRegistrationManage::getUseRegistrationCode, jgUseRegistration.getUseRegistrationCode()); .eq(JgUseRegistrationManage::getUseRegistrationCode, jgUseRegistration.getUseRegistrationCode());
jgUseRegistrationManageMapper.update(registrationManage,wrapper); jgUseRegistrationManageMapper.update(registrationManage,wrapper);
// 生成使用登记证的作废流水
Optional<JgCertificateChangeRecord> firstRecord = certificateChangeRecordService.getBaseMapper().selectList(new LambdaQueryWrapper<JgCertificateChangeRecord>()
.eq(JgCertificateChangeRecord::getUseRegistrationCode, jgUseRegistration.getUseRegistrationCode())
.orderByAsc(JgCertificateChangeRecord::getCreateDate))
.stream()
.findFirst();
JgCertificateChangeRecord changeRecord = new JgCertificateChangeRecord();
changeRecord.setApplyNo(jgUseRegistration.getApplyNo());
changeRecord.setReceiveOrgName(jgUseRegistration.getReceiveOrgName());
changeRecord.setAuditPassDate(new Date());
changeRecord.setRegType(BusinessTypeEnum.JG_USAGE_REGISTRATION.getName());
changeRecord.setRegDate(jgUseRegistration.getCreateDate());
changeRecord.setChangeContent(this.buildVoidRecordContent(jgUseRegistration));//变更内容
changeRecord.setUseRegistrationCode(jgUseRegistration.getUseRegistrationCode());//使用登记编号
changeRecord.setReceiveCompanyCode(jgUseRegistration.getReceiveCompanyOrgCode());//接收机构公司代码
changeRecord.setUseUnitCreditCode(jgUseRegistration.getUseUnitCreditCode());//使用单位统一信用代码
changeRecord.setUseUnitName(jgUseRegistration.getUseUnitName());//使用单位名称
firstRecord.ifPresent(record -> changeRecord.setEquCategory(record.getEquCategory()));//设备类别编码
changeRecord.setCreateDate(new Date());
firstRecord.ifPresent(record -> changeRecord.setRoutePath(record.getRoutePath()));
certificateChangeRecordService.save(changeRecord);
} }
private void rollBackSupervisionInfo(String record) { private void rollBackSupervisionInfo(String record) {
......
...@@ -1287,6 +1287,8 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -1287,6 +1287,8 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
case "已完成": case "已完成":
// 1.删除与设备的关系,设备可再次发起使用登记 // 1.删除与设备的关系,设备可再次发起使用登记
this.clearUseInfoOfEquip(vehicleInformation); this.clearUseInfoOfEquip(vehicleInformation);
// 3.作废对应的使用登记证
this.invalidUseRegistrationCertificate(vehicleInformation);
break; break;
default: default:
// 流程中 // 流程中
...@@ -1298,6 +1300,60 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform ...@@ -1298,6 +1300,60 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
} }
} }
/**
* 作废使用登记证 & 生成使用登记证的流水
*/
private void invalidUseRegistrationCertificate(JgVehicleInformation jgVehicleInformation) {
Integer count = this.baseMapper.selectCount(new LambdaQueryWrapper<JgVehicleInformation>()
.eq(JgVehicleInformation::getUseRegistrationCode, jgVehicleInformation.getUseRegistrationCode()));
// 一证对应多条使用登记单时,不作废证
if (count > 1) {
return;
}
JgUseRegistrationManage registrationManage = new JgUseRegistrationManage();
registrationManage.setCertificateStatus(CertificateStatusEnum.YIZHUXIAO.getName());
LambdaQueryWrapper<JgUseRegistrationManage> wrapper = new LambdaQueryWrapper<JgUseRegistrationManage>()
.eq(JgUseRegistrationManage::getUseRegistrationCode, jgVehicleInformation.getUseRegistrationCode());
jgUseRegistrationManageService.update(registrationManage, wrapper);
// 生成使用登记证的作废流水
Optional<JgCertificateChangeRecord> firstRecord = certificateChangeRecordService.getBaseMapper().selectList(new LambdaQueryWrapper<JgCertificateChangeRecord>()
.eq(JgCertificateChangeRecord::getUseRegistrationCode, jgVehicleInformation.getUseRegistrationCode())
.orderByAsc(JgCertificateChangeRecord::getCreateDate))
.stream()
.findFirst();
JgCertificateChangeRecord changeRecord = new JgCertificateChangeRecord();
changeRecord.setApplyNo(jgVehicleInformation.getApplyNo());
changeRecord.setReceiveOrgName(jgVehicleInformation.getReceiveOrgName());
changeRecord.setAuditPassDate(new Date());
changeRecord.setRegType(BusinessTypeEnum.JG_USAGE_REGISTRATION.getName());
changeRecord.setRegDate(jgVehicleInformation.getCreateDate());
changeRecord.setChangeContent(this.buildVoidRecordContent(jgVehicleInformation));// 变更内容
changeRecord.setUseRegistrationCode(jgVehicleInformation.getUseRegistrationCode());// 使用登记编号
changeRecord.setReceiveCompanyCode(jgVehicleInformation.getReceiveCompanyCode());// 接收机构公司代码
changeRecord.setUseUnitCreditCode(jgVehicleInformation.getUseUnitCreditCode());// 使用单位统一信用代码
changeRecord.setUseUnitName(jgVehicleInformation.getUseUnitName());// 使用单位名称
firstRecord.ifPresent(record -> changeRecord.setEquCategory(record.getEquCategory()));// 设备类别编码
changeRecord.setCreateDate(new Date());
firstRecord.ifPresent(record -> changeRecord.setRoutePath(record.getRoutePath()));
certificateChangeRecordService.save(changeRecord);
}
/**
* 作废的证变更内容
* @param obj JgVehicleInformation
* @return result
*/
private String buildVoidRecordContent(JgVehicleInformation obj) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
String companyType = reginParams.getCompany().getCompanyType();
//监管单位 作废了【使用功能登记】 ,单号【DWBG202407050001】,作废日期2024-07-05
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
return companyType + "作废了【" + BusinessTypeEnum.JG_USAGE_REGISTRATION.getName() + "】," +
"单号【" + obj.getApplyNo() + "】,申请日期" + simpleDateFormat.format(obj.getRecDate());
}
private void clearUseInfoOfEquip(JgVehicleInformation vehicleInformation) { private void clearUseInfoOfEquip(JgVehicleInformation vehicleInformation) {
LambdaQueryWrapper<JgVehicleInformationEq> eqLambdaQueryWrapper = new LambdaQueryWrapper<JgVehicleInformationEq>().eq(JgVehicleInformationEq::getVehicleId, vehicleInformation.getSequenceNbr()); LambdaQueryWrapper<JgVehicleInformationEq> eqLambdaQueryWrapper = new LambdaQueryWrapper<JgVehicleInformationEq>().eq(JgVehicleInformationEq::getVehicleId, vehicleInformation.getSequenceNbr());
List<JgVehicleInformationEq> eqList = jgVehicleInformationEqMapper.selectList(eqLambdaQueryWrapper); List<JgVehicleInformationEq> eqList = jgVehicleInformationEqMapper.selectList(eqLambdaQueryWrapper);
......
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