Commit 27a26a7d authored by 刘林's avatar 刘林

fix(jg):修改使用登记作废-气瓶导入作废,删除设备,修改气瓶导入,详情显示错误,修改导入日期校验,添加出厂编码校验

parent 30c86784
...@@ -123,6 +123,16 @@ public interface CommonMapper extends BaseMapper<EquipmentCategory> { ...@@ -123,6 +123,16 @@ public interface CommonMapper extends BaseMapper<EquipmentCategory> {
Integer checkFactoryNumUniquenessForVehicleCylinder(String factoryNum,String sequenceNbr); Integer checkFactoryNumUniquenessForVehicleCylinder(String factoryNum,String sequenceNbr);
/** /**
* 查询出厂编码是否重复
* @param factoryNum 出厂编码
* @param sequenceNbr id
* @return Integer
*/
Integer checkFactoryNumUnique(@Param("factoryNum") String factoryNum,
@Param("sequenceNbr") String sequenceNbr,
@Param("useUnitCreditCode") String useUnitCreditCode);
/**
* 使用登记证编号全库唯一校验 * 使用登记证编号全库唯一校验
* @param useRegistrationCode * @param useRegistrationCode
* @return * @return
......
...@@ -903,6 +903,20 @@ ...@@ -903,6 +903,20 @@
</if> </if>
</select> </select>
<select id="checkFactoryNumUnique" resultType="java.lang.Integer">
SELECT
count(1)
FROM
"idx_biz_jg_factory_info" ibjfi
JOIN idx_biz_jg_register_info ibjri ON ibjfi."RECORD" = ibjri."RECORD"
LEFT JOIN idx_biz_jg_use_info ibjui ON ibjri."RECORD" = ibjui."RECORD"
WHERE
ibjri."EQU_LIST" = '2000'
AND ibjri."EQU_CATEGORY" = '2300'
AND ibjfi."FACTORY_NUM" = #{factoryNum}
AND ibjui."USE_UNIT_CREDIT_CODE" = #{useUnitCreditCode}
</select>
<select id="useRegistrationCertificateAccountUnique" resultType="java.lang.Integer"> <select id="useRegistrationCertificateAccountUnique" resultType="java.lang.Integer">
SELECT COUNT( 1 ) SELECT COUNT( 1 )
FROM idx_biz_jg_register_info jri FROM idx_biz_jg_register_info jri
......
...@@ -204,6 +204,8 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -204,6 +204,8 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
private JgInstallationNoticeServiceImpl jgInstallationNoticeService; private JgInstallationNoticeServiceImpl jgInstallationNoticeService;
@Autowired @Autowired
private IdxBizJgConstructionInfoMapper constructionInfoMapper; private IdxBizJgConstructionInfoMapper constructionInfoMapper;
@Autowired
private SuperviseInfoMapper superviseInfoMapper;
/** /**
* @param auditPassDate 通过时间 * @param auditPassDate 通过时间
...@@ -2423,16 +2425,40 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD ...@@ -2423,16 +2425,40 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
jgUseRegistration.setNextExecuteUserIds(""); jgUseRegistration.setNextExecuteUserIds("");
jgUseRegistration.setPromoter(""); jgUseRegistration.setPromoter("");
this.updateById(jgUseRegistration); this.updateById(jgUseRegistration);
// 2.更新关联的业务
processElseDataByStatus(oldStatus, jgUseRegistration);
List<JgUseRegistrationEq> eqList = getJgUseRegistrationEqs(jgUseRegistration); List<JgUseRegistrationEq> eqList = getJgUseRegistrationEqs(jgUseRegistration);
List<String> records = eqList.stream().map(JgUseRegistrationEq::getEquId).collect(Collectors.toList());
//判断是否为批量导入数据,作废后删除设备信息
if("1".equals(jgUseRegistration.getRegType()) && "unit".equals(jgUseRegistration.getManageType())){
// 构建设备删除的 DTO 列表
List<ESEquipmentCategoryDto> esDtoList = records.stream().map(v -> {
ESEquipmentCategoryDto esDto = new ESEquipmentCategoryDto();
esDto.setSEQUENCE_NBR(v);
return esDto;
}).collect(Collectors.toList());
//删除涉及的19张表的数据
superviseInfoMapper.deleteDataAll(records);
//删除es中的数据
esEquipmentCategory.deleteAll(esDtoList);
}else{
// 处理非批量导入数据,更新关联业务状态
processElseDataByStatus(oldStatus, jgUseRegistration);
// 注册事务提交后的操作
registerAfterCommitTask(records);
}
return jgUseRegistration;
}
/**
* 注册事务提交后的同步操作
*/
private void registerAfterCommitTask(List<String> records) {
TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() { TransactionSynchronizationManager.registerSynchronization(new TransactionSynchronization() {
@Override @Override
public void afterCommit() { public void afterCommit() {
eventPublisher.publish(new CancellationEvent(this, eqList.stream().map(JgUseRegistrationEq::getEquId).collect(Collectors.toList()))); // 发布作废事件
eventPublisher.publish(new CancellationEvent(this, records));
} }
}); });
return jgUseRegistration;
} }
private void clearUseInfoOfEquip(JgUseRegistration jgUseRegistration) { private void clearUseInfoOfEquip(JgUseRegistration jgUseRegistration) {
......
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