增加空值的补充写入

This commit is contained in:
黎润豪 2026-03-13 14:44:14 +08:00
parent bd4e522f2c
commit cfc058769f
1 changed files with 29 additions and 64 deletions

View File

@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.chinaweal.aiccs.aiccs.abnormal.entity.EBaseinfo; import com.chinaweal.aiccs.aiccs.abnormal.entity.EBaseinfo;
import com.chinaweal.aiccs.aiccs.abnormal.service.EBaseinfoService; import com.chinaweal.aiccs.aiccs.abnormal.service.EBaseinfoService;
import com.chinaweal.aiccs.aiccs.dict.entity.CmsDictCode;
import com.chinaweal.aiccs.aiccs.dict.service.CmsDictCodeService; import com.chinaweal.aiccs.aiccs.dict.service.CmsDictCodeService;
import com.chinaweal.aiccs.aiccs.susnate.dto.EntBaseWithFalPerInfoQueryDTO; import com.chinaweal.aiccs.aiccs.susnate.dto.EntBaseWithFalPerInfoQueryDTO;
import com.chinaweal.aiccs.aiccs.susnate.dto.FalPerInfoAddDTO; import com.chinaweal.aiccs.aiccs.susnate.dto.FalPerInfoAddDTO;
@ -17,8 +16,11 @@ import com.chinaweal.aiccs.aiccs.susnate.entity.EFalPerInfo;
import com.chinaweal.aiccs.aiccs.susnate.mapper.EFalPerInfoMapper; import com.chinaweal.aiccs.aiccs.susnate.mapper.EFalPerInfoMapper;
import com.chinaweal.aiccs.aiccs.susnate.service.IEFalPerInfoService; import com.chinaweal.aiccs.aiccs.susnate.service.IEFalPerInfoService;
import com.chinaweal.aiccs.aiccs.susnate.vo.EntBaseWithFalPerInfoVO; import com.chinaweal.aiccs.aiccs.susnate.vo.EntBaseWithFalPerInfoVO;
import com.chinaweal.aiccs.aiccs.system.service.TRBaseCodeService;
import com.chinaweal.aiccs.common.constant.CommonConstants; import com.chinaweal.aiccs.common.constant.CommonConstants;
import com.chinaweal.aiccs.common.util.StringUtils; import com.chinaweal.aiccs.common.util.StringUtils;
import com.chinaweal.aiccs.org.entity.OrgUnits;
import com.chinaweal.aiccs.org.service.AicorgService;
import com.chinaweal.aicorg.model.AICUser; import com.chinaweal.aicorg.model.AICUser;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -36,9 +38,15 @@ public class EFalPerInfoServiceImpl extends ServiceImpl<EFalPerInfoMapper, EFalP
@Autowired @Autowired
private EBaseinfoService eBaseinfoService; private EBaseinfoService eBaseinfoService;
@Autowired
private TRBaseCodeService trBaseCodeService;
@Autowired @Autowired
private CmsDictCodeService cmsDictCodeService; private CmsDictCodeService cmsDictCodeService;
@Autowired
private AicorgService aicorgService;
@Override @Override
public EFalPerInfo addFalPerInfo(FalPerInfoAddDTO dto, AICUser curUser) { public EFalPerInfo addFalPerInfo(FalPerInfoAddDTO dto, AICUser curUser) {
EFalPerInfo entity = new EFalPerInfo(); EFalPerInfo entity = new EFalPerInfo();
@ -58,41 +66,19 @@ public class EFalPerInfoServiceImpl extends ServiceImpl<EFalPerInfoMapper, EFalP
entity.setSExtFromNode("150000"); entity.setSExtFromNode("150000");
// BUG修复通过 uniscid 或 regno 获取 pripid // BUG修复通过 uniscid 或 regno 获取 pripid
if (StringUtils.isNotBlank(dto.getUniscid())) { if (StringUtils.isBlank(entity.getPripid()) && StringUtils.isNotBlank(dto.getUniscid())) {
try {
EBaseinfo baseinfo = eBaseinfoService.getEntBaseInfoByCode(dto.getUniscid()); EBaseinfo baseinfo = eBaseinfoService.getEntBaseInfoByCode(dto.getUniscid());
if (baseinfo != null) { if (baseinfo != null) {
entity.setPripid(baseinfo.getPripid()); entity.setPripid(baseinfo.getPripid());
} }
} catch (Exception e) {
// 如果根据 uniscid 查询失败,尝试使用 regno
if (StringUtils.isNotBlank(dto.getRegno())) {
try {
EBaseinfo baseinfo = eBaseinfoService.getEntBaseInfoByCode(dto.getRegno());
if (baseinfo != null) {
entity.setPripid(baseinfo.getPripid());
} }
} catch (Exception ex) { // BUG修复通过 judAuth 获取 judAuthCn
// 忽略查询异常
}
}
}
} else if (StringUtils.isNotBlank(dto.getRegno())) {
try {
EBaseinfo baseinfo = eBaseinfoService.getEntBaseInfoByCode(dto.getRegno());
if (baseinfo != null) {
entity.setPripid(baseinfo.getPripid());
}
} catch (Exception e) {
// 忽略查询异常
}
}
// BUG修复通过 judAuth 获取 judAuthCn字典表类型为 CA11
if (StringUtils.isNotBlank(dto.getJudAuth())) { if (StringUtils.isNotBlank(dto.getJudAuth())) {
CmsDictCode dictCode = cmsDictCodeService.getList("CA11", dto.getJudAuth()); String code = StringUtils.fillZeroSuffix(StringUtils.clearRegionZero(dto.getJudAuth()), 6);
if (dictCode != null) { OrgUnits one = aicorgService.lambdaQuery().eq(OrgUnits::getOrgNumber, code).eq(OrgUnits::getUnitType, "1")
entity.setJudAuthCn(dictCode.getLabel()); .eq(OrgUnits::getDeleted, CommonConstants.FALSE_0).last("limit 1").one();
if (one != null) {
entity.setJudAuthCn(one.getOrgUnitName());
} }
} }
@ -117,41 +103,20 @@ public class EFalPerInfoServiceImpl extends ServiceImpl<EFalPerInfoMapper, EFalP
entity.setSExtDataTime(LocalDateTime.now()); entity.setSExtDataTime(LocalDateTime.now());
// BUG修复通过 uniscid 或 regno 获取 pripid // BUG修复通过 uniscid 或 regno 获取 pripid
if (StringUtils.isNotBlank(dto.getUniscid())) { if (StringUtils.isBlank(entity.getPripid()) && StringUtils.isNotBlank(dto.getUniscid())) {
try {
EBaseinfo baseinfo = eBaseinfoService.getEntBaseInfoByCode(dto.getUniscid()); EBaseinfo baseinfo = eBaseinfoService.getEntBaseInfoByCode(dto.getUniscid());
if (baseinfo != null) { if (baseinfo != null) {
entity.setPripid(baseinfo.getPripid()); entity.setPripid(baseinfo.getPripid());
} }
} catch (Exception e) {
// 如果根据 uniscid 查询失败,尝试使用 regno
if (StringUtils.isNotBlank(dto.getRegno())) {
try {
EBaseinfo baseinfo = eBaseinfoService.getEntBaseInfoByCode(dto.getRegno());
if (baseinfo != null) {
entity.setPripid(baseinfo.getPripid());
}
} catch (Exception ex) {
// 忽略查询异常
}
}
}
} else if (StringUtils.isNotBlank(dto.getRegno())) {
try {
EBaseinfo baseinfo = eBaseinfoService.getEntBaseInfoByCode(dto.getRegno());
if (baseinfo != null) {
entity.setPripid(baseinfo.getPripid());
}
} catch (Exception e) {
// 忽略查询异常
}
} }
// BUG修复通过 judAuth 获取 judAuthCn(字典表类型为 CA11 // BUG修复通过 judAuth 获取 judAuthCn
if (StringUtils.isNotBlank(dto.getJudAuth())) { if (StringUtils.isNotBlank(dto.getJudAuth())) {
CmsDictCode dictCode = cmsDictCodeService.getList("CA11", dto.getJudAuth()); String code = StringUtils.fillZeroSuffix(StringUtils.clearRegionZero(dto.getJudAuth()), 6);
if (dictCode != null) { OrgUnits one = aicorgService.lambdaQuery().eq(OrgUnits::getOrgNumber, code).eq(OrgUnits::getUnitType, "1")
entity.setJudAuthCn(dictCode.getLabel()); .eq(OrgUnits::getDeleted, CommonConstants.FALSE_0).last("limit 1").one();
if (one != null) {
entity.setJudAuthCn(one.getOrgUnitName());
} }
} }