Commit 6940b0f2 authored by suhuiguang's avatar suhuiguang

fix(大编辑):bug修复

1.车用气瓶判断使用登记证是否在使用,未校验空bug修改
parent 3a019bfc
...@@ -155,6 +155,8 @@ public interface CommonMapper extends BaseMapper<EquipmentCategory> { ...@@ -155,6 +155,8 @@ public interface CommonMapper extends BaseMapper<EquipmentCategory> {
String isRegistrationNumberUsedByOtherUnits(@Param("useRegistrationCode") String useRegistrationCode, @Param("companyCode") String companyCode); String isRegistrationNumberUsedByOtherUnits(@Param("useRegistrationCode") String useRegistrationCode, @Param("companyCode") String companyCode);
List<String> isRegistrationNumberUsedByOtherUnits2(@Param("useRegistrationCode") String useRegistrationCode, @Param("companyCode") String companyCode);
/** /**
* 查询维保超期的设备 * 查询维保超期的设备
*/ */
......
...@@ -1006,7 +1006,21 @@ ...@@ -1006,7 +1006,21 @@
AND joi.CLAIM_STATUS = '已认领' AND joi.CLAIM_STATUS = '已认领'
</where> </where>
</select> </select>
<select id="isRegistrationNumberUsedByOtherUnits2" resultType="java.lang.String">
SELECT jui."USE_UNIT_NAME"
FROM idx_biz_jg_register_info jri
LEFT JOIN idx_biz_jg_other_info joi ON joi."RECORD" = jri."RECORD"
LEFT JOIN idx_biz_jg_use_info jui ON jui."RECORD" = jri."RECORD"
<where>
<if test="useRegistrationCode != null and useRegistrationCode != ''">
jri."USE_ORG_CODE" = #{useRegistrationCode}
</if>
<if test="companyCode != null and companyCode != ''">
AND jui."USE_UNIT_CREDIT_CODE" <![CDATA[ <> ]]> #{companyCode}
</if>
AND joi.CLAIM_STATUS = '已认领'
</where>
</select>
<select id="isRegistrationNumberUsedByOtherUnits" resultType="java.lang.String"> <select id="isRegistrationNumberUsedByOtherUnits" resultType="java.lang.String">
SELECT jui."USE_UNIT_NAME" SELECT jui."USE_UNIT_NAME"
FROM idx_biz_jg_register_info jri FROM idx_biz_jg_register_info jri
......
...@@ -80,7 +80,7 @@ public class PieLineDataChangeServiceImpl { ...@@ -80,7 +80,7 @@ public class PieLineDataChangeServiceImpl {
equipChangeDataUpdateServiceImpl.updateRegisterEsDataPieLine(projectContraptionChangeDataDto); equipChangeDataUpdateServiceImpl.updateRegisterEsDataPieLine(projectContraptionChangeDataDto);
} }
public void deletePieLineBatch(List<PipelineChangeItemDto> deletedPieLines, List<FieldChangeMeta> allChangeColumns, String applyNo) { public void deletePieLineBatch(List<PipelineChangeItemDto> deletedPieLines, List<FieldChangeMeta> allChangeColumns, String projectContraptionId) {
// todo 构建日志 allChangeColumns afterData = null // todo 构建日志 allChangeColumns afterData = null
// todo 数据库管道删除 // todo 数据库管道删除
// todo es管道删除 // todo es管道删除
......
...@@ -14,7 +14,6 @@ import lombok.RequiredArgsConstructor; ...@@ -14,7 +14,6 @@ import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest; import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.util.*; import java.util.*;
...@@ -177,7 +176,7 @@ public class SingleEquipChangeProcess implements IEquipChangeDataProcessStrategy ...@@ -177,7 +176,7 @@ public class SingleEquipChangeProcess implements IEquipChangeDataProcessStrategy
// 产权单位信息 // 产权单位信息
if (StringUtils.isNotEmpty(useInfoNew.getEstateUnitCreditCode())) { if (StringUtils.isNotEmpty(useInfoNew.getEstateUnitCreditCode())) {
CompanyBo companyBo = commonEquipDataProcessService.getCommonMapper().queryCompanyByCode(useInfoNew.getEstateUnitCreditCode()); CompanyBo companyBo = commonEquipDataProcessService.getCommonMapper().queryCompanyByCode(useInfoNew.getEstateUnitCreditCode());
Optional.ofNullable(companyBo).ifPresent(item ->useInfoNew.setEstateUnitName(companyBo.getCompanyName())); Optional.ofNullable(companyBo).ifPresent(item -> useInfoNew.setEstateUnitName(companyBo.getCompanyName()));
} }
} }
...@@ -192,13 +191,13 @@ public class SingleEquipChangeProcess implements IEquipChangeDataProcessStrategy ...@@ -192,13 +191,13 @@ public class SingleEquipChangeProcess implements IEquipChangeDataProcessStrategy
} }
} }
} else { // 气瓶逻辑,使用单位下不能重复 } else { // 气瓶逻辑,使用单位下不能重复
if (StringUtils.isNotEmpty(useInfoOld.getUseUnitCreditCode())) { if (StringUtils.isNotEmpty(useInfoOld.getUseUnitCreditCode()) && StringUtils.isNotEmpty(registerInfoNew.getUseOrgCode())) {
// 需求 35094 历史设备(有使用登记证)需按证录入。录入时先录入使用登记证编号。 // 需求 35094 历史设备(有使用登记证)需按证录入。录入时先录入使用登记证编号。
// 需验证录入的使用登记证编号平台是否跟当前用户(使用单位类型)一致,如跟当前用户不一致,系统给出提示“该使用登记证编号”已被“单位名称“使用”,请确认后再录入”。 // 需验证录入的使用登记证编号平台是否跟当前用户(使用单位类型)一致,如跟当前用户不一致,系统给出提示“该使用登记证编号”已被“单位名称“使用”,请确认后再录入”。
// 历史设备不限制使用登记证编号在一个单位重复录入,但需验证使用登记证编号+单位内编号唯一。(下面方法checkFactoryNumUniqueWithGasCylinder中已经校验) // 历史设备不限制使用登记证编号在一个单位重复录入,但需验证使用登记证编号+单位内编号唯一。(下面方法checkFactoryNumUniqueWithGasCylinder中已经校验)
String occupiedUseUnitName = commonEquipDataProcessService.getCommonService().isRegistrationNumberUsedByOtherUnits(registerInfoNew.getUseOrgCode(), useInfoOld.getUseUnitCreditCode()); List<String> occupiedUseUnitNames = commonEquipDataProcessService.getCommonService().isRegistrationNumberUsedByOtherUnits(registerInfoNew.getUseOrgCode(), useInfoOld.getUseUnitCreditCode());
if (!ValidationUtil.isEmpty(occupiedUseUnitName)) { if (!occupiedUseUnitNames.isEmpty()) {
throw new BadRequest("该使用登记证编号已被【" + occupiedUseUnitName + "】使用,请确认后再录入!"); throw new BadRequest("该使用登记证编号已被【" + String.join(",", occupiedUseUnitNames) + "】使用,请确认后再录入!");
} }
} }
} }
......
...@@ -33,11 +33,11 @@ public class SingleProjectEquipChangeProcess implements IEquipChangeDataProcessS ...@@ -33,11 +33,11 @@ public class SingleProjectEquipChangeProcess implements IEquipChangeDataProcessS
@Override @Override
public List<FieldChangeMeta> handle(Map<String, Object> changeData, String defaultChangeId) { public List<FieldChangeMeta> handle(Map<String, Object> changeData, String projectContraptionId) {
JSONObject data = (JSONObject) changeData; JSONObject data = (JSONObject) changeData;
// 新增编辑的管道------------------tableData // 新增编辑的管道------------------tableData
JSONArray insertOrEditPieLines = data.getJSONArray(RequestChangeData.multiDataKey); JSONArray insertOrEditPieLines = data.getJSONArray(RequestChangeData.multiDataKey);
// 删除的管道---------------------deleteData // 删除的管道----------------------deleteData
JSONArray deletedPieLines = data.getJSONArray(RequestChangeData.deletedDataKey); JSONArray deletedPieLines = data.getJSONArray(RequestChangeData.deletedDataKey);
List<FieldChangeMeta> allChangeColumns = new ArrayList<>(); List<FieldChangeMeta> allChangeColumns = new ArrayList<>();
List<PipelineChangeItemDto> items = insertOrEditPieLines.toJavaList(PipelineChangeItemDto.class); List<PipelineChangeItemDto> items = insertOrEditPieLines.toJavaList(PipelineChangeItemDto.class);
...@@ -47,7 +47,7 @@ public class SingleProjectEquipChangeProcess implements IEquipChangeDataProcessS ...@@ -47,7 +47,7 @@ public class SingleProjectEquipChangeProcess implements IEquipChangeDataProcessS
} }
if (deletedPieLines != null && !deletedPieLines.isEmpty()) { if (deletedPieLines != null && !deletedPieLines.isEmpty()) {
List<PipelineChangeItemDto> deletedPieLinesJavaList = deletedPieLines.toJavaList(PipelineChangeItemDto.class); List<PipelineChangeItemDto> deletedPieLinesJavaList = deletedPieLines.toJavaList(PipelineChangeItemDto.class);
pieLineDataChangeService.deletePieLineBatch(deletedPieLinesJavaList, allChangeColumns, defaultChangeId); pieLineDataChangeService.deletePieLineBatch(deletedPieLinesJavaList, allChangeColumns, projectContraptionId);
} }
// 2.装置基本信息校验、保存(前端返回的装置信息为大写 需注意) // 2.装置基本信息校验、保存(前端返回的装置信息为大写 需注意)
ProjectContraptionChangeDataDto projectContraptionChangeDataDto = CommonEquipDataProcessService.castMap2Bean(changeData, ProjectContraptionChangeDataDto.class); ProjectContraptionChangeDataDto projectContraptionChangeDataDto = CommonEquipDataProcessService.castMap2Bean(changeData, ProjectContraptionChangeDataDto.class);
...@@ -58,7 +58,7 @@ public class SingleProjectEquipChangeProcess implements IEquipChangeDataProcessS ...@@ -58,7 +58,7 @@ public class SingleProjectEquipChangeProcess implements IEquipChangeDataProcessS
items.forEach(item -> { items.forEach(item -> {
String record = item.getRecord(); String record = item.getRecord();
if (record == null) { // 新增的管道逻辑 if (record == null) { // 新增的管道逻辑
pieLineDataChangeService.newPieLine(projectContraptionChangeDataDto.getProjectContraptionId(), item, allChangeColumns, defaultChangeId); pieLineDataChangeService.newPieLine(projectContraptionChangeDataDto.getProjectContraptionId(), item, allChangeColumns, projectContraptionId);
} else { // 更新逻辑 } else { // 更新逻辑
// 设计信息更新 // 设计信息更新
pieLineDataChangeService.saveDesignForPieLine(record, allChangeColumns, item); pieLineDataChangeService.saveDesignForPieLine(record, allChangeColumns, item);
......
...@@ -3039,9 +3039,9 @@ public class CommonServiceImpl implements ICommonService { ...@@ -3039,9 +3039,9 @@ public class CommonServiceImpl implements ICommonService {
* @param companyCode 使用登记证所在单位编码 * @param companyCode 使用登记证所在单位编码
* @return 使用的单位 * @return 使用的单位
*/ */
public String isRegistrationNumberUsedByOtherUnits(String useRegistrationCode, String companyCode) { public List<String> isRegistrationNumberUsedByOtherUnits(String useRegistrationCode, String companyCode) {
String companyCodeReal = companyCode.contains("_") ? companyCode.split("_")[1] : companyCode; String companyCodeReal = companyCode.contains("_") ? companyCode.split("_")[1] : companyCode;
return commonMapper.isRegistrationNumberUsedByOtherUnits(useRegistrationCode, companyCodeReal); return commonMapper.isRegistrationNumberUsedByOtherUnits2(useRegistrationCode, companyCodeReal);
} }
/** /**
......
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