Commit 2dabb51d authored by 刘林's avatar 刘林

fix(jg):一个工程装置分多次告知,第二批告知管道录入后会自动纳入到第一批已经告知完成的装置中

parent 85479cff
......@@ -16,6 +16,7 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
......@@ -242,7 +243,7 @@ public class DataDockServiceImpl {
} catch (Exception e) {
esEquipmentCategory.deleteById(record);
e.printStackTrace();
log.error("{}数据:保存时出现异常,对应数据:{}", dataSource, JSONObject.toJSONString(equ));
log.error("{}数据:保存时出现异常,对应数据:{}", dataSource, toJSONString(equ));
log.error("异常信息:{}", e.getMessage());
throw new RuntimeException(e);
}
......@@ -1025,6 +1026,8 @@ public class DataDockServiceImpl {
* @param rowError 错误集合
*/
private void commonFieldCheck(EquipInfoExcelDto data, StringBuffer rowError, String remark) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
CompanyBo company = reginParams.getCompany();
boolean isYLRQ = !ObjectUtils.isEmpty(data.getEquList()) && EquipmentClassifityEnum.YLRQ.getCode().equals(data.getEquList());// 是否压力容器
boolean isYLGD = !ObjectUtils.isEmpty(data.getEquList()) && EquipmentClassifityEnum.YLGD.getCode().equals(data.getEquList());// 是否压力管道
boolean isDT = !ObjectUtils.isEmpty(data.getEquList()) && EquipmentClassifityEnum.DT.getCode().equals(data.getEquList());// 是否电梯
......@@ -1086,27 +1089,35 @@ public class DataDockServiceImpl {
}
// 同一工程装置下管道编号不能重复
if (!ValidationUtil.isEmpty(data.getProjectContraption())) {
String useUnitCode = null, useUnit = null,uscUnitCode = null,uscUnitName = null;
if (company != null) {
if ("使用单位".equals(company.getCompanyType())) {
useUnitCode = company.getCompanyCode();
useUnit = company.getCompanyName();
} else if ("安装改造维修单位".equals(company.getCompanyType())) {
uscUnitCode = company.getCompanyCode();
uscUnitName = company.getCompanyName();
}
}
// 默认使用导入的数据
if (useUnitCode == null && uscUnitCode == null) {
useUnitCode = String.valueOf(data.getUseUnitCode()).trim();
}
String useUnitCode = String.valueOf(data.getUseUnitCode()).trim();// 使用单位Code
String useUnit = String.valueOf(data.getUseUnit()).trim();// 使用单位名称
String proConName = data.getProjectContraption().trim();// 工程装置名称
String proConNo = data.getProjectContraptionNo().trim();
// 查询该企业下工程装置名称
IdxBizJgProjectContraption oldContraption = idxBizJgProjectContraptionService.lambdaQuery()
.eq(IdxBizJgProjectContraption::getUseUnitCreditCode, useUnitCode)
.eq(IdxBizJgProjectContraption::getUseUnitName, useUnit)
.eq(IdxBizJgProjectContraption::getProjectContraption, proConName)
IdxBizJgProjectContraption oldContraption =
idxBizJgProjectContraptionService.lambdaQuery()
.eq(StringUtils.isNotBlank(useUnitCode), IdxBizJgProjectContraption::getUseUnitCreditCode, useUnitCode)
.eq(StringUtils.isNotBlank(uscUnitCode), IdxBizJgProjectContraption::getUscUnitCreditCode, uscUnitCode)
.eq(IdxBizJgProjectContraption::getProjectContraptionNo, proConNo)
.list().stream().findFirst().orElse(null);
Optional.ofNullable(oldContraption).ifPresent(old -> {
List<String> pipelineNumberList = idxBizJgProjectContraptionServiceImpl.getBaseMapper()
.selectEquipList(String.valueOf(old.getSequenceNbr()))
.stream()
.map(item -> (String) item.get("pipelineNumber"))
.collect(Collectors.toList());
// if (pipelineNumberList.contains(data.getPipelineNumber())) {
// rowError.append(String.format("系统中工程装置(%s)下已经存在管道编号(%s);", data.getProjectContraption(), data.getPipelineNumber()));
// }
});
if (!ObjectUtils.isEmpty(oldContraption)) {
String unit = uscUnitName != null ? uscUnitName : useUnit;
rowError.append(String.format("该单位(%s)下已存在已纳管工程装置编号为(%s),不能导入该装置;",unit, proConNo));
}
List<String> list = projectContraptionMap.get(data.getProjectContraption());
if (null != list) {
......@@ -2654,7 +2665,7 @@ public class DataDockServiceImpl {
}
if (resultObj instanceof Map) {
Map<String, Object> result = (Map<String, Object>) resultObj;
inUseRecordSet.add(JSONObject.toJSONString(result));
inUseRecordSet.add(toJSONString(result));
}
} catch (LocalBadRequest e) {
inUseRecordSet.add(e.getMessage());
......@@ -2760,7 +2771,7 @@ public class DataDockServiceImpl {
errorResult.put("type", "error");
errorResult.put("msg", errorMessage);
errorResult.put("traceInfo", traceInfo);
throw new LocalBadRequest(JSON.toJSONString(errorResult));
throw new LocalBadRequest(toJSONString(errorResult));
}
}
......
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