Browse Source

资产导入问题处理

master
review512jwy@163.com 15 hours ago
parent
commit
919fb98d89
  1. 24
      data-center-business-service/src/main/java/com/techsor/datacenter/business/service/impl/MonitoringAssetServiceImpl.java

24
data-center-business-service/src/main/java/com/techsor/datacenter/business/service/impl/MonitoringAssetServiceImpl.java

@ -573,13 +573,13 @@ public class MonitoringAssetServiceImpl implements MonitoringAssetService {
MonitoringAssetSearchParams assetSearchParam = new MonitoringAssetSearchParams();
assetSearchParam.setCompanyIdList(subCompanyList);
List<MonitoringAssetPageVO> dbAssetList = basicMonitoringAssetMapperExt.getListPage4Import(assetSearchParam);
Set<String> udfAssetIdSet = dbAssetList.stream()
.map(vo -> vo.getUdfBuildingId() + "$" + vo.getSymbol())
.collect(Collectors.toSet());
// Set<String> udfAssetIdSet = dbAssetList.stream()
// .map(vo -> vo.getUdfBuildingId() + "$" + vo.getSymbol())
// .collect(Collectors.toSet());
Map<String, MonitoringAssetPageVO> udfAssetIdMap = dbAssetList.stream()
.filter(vo -> StringUtils.isNotBlank(vo.getSymbol()))
.collect(Collectors.toMap(
vo -> vo.getUdfBuildingId() + "$" +vo.getUdfSpaceId() + "$" +vo.getSymbol(),
vo -> vo.getUdfBuildingId() + "$" +vo.getSymbol(),
vo -> vo,
(existing, replacement) -> replacement//用后来的值替换原有值
));
@ -696,12 +696,7 @@ public class MonitoringAssetServiceImpl implements MonitoringAssetService {
// Check if [company name + asset symbol] in the spreadsheet duplicates any existing assets in the database.
int assetOptFlag = 1;// 1 indicates insert, 2 indicates update
if (StringUtils.isNotBlank(buildingExcelCn.getSymbol()) &&
(udfAssetIdMap.containsKey(compBuilding+ "$" + buildingExcelCn.getUdfSpaceId()+ "$" + buildingExcelCn.getSymbol())
||
udfAssetIdSet.contains(compBuilding + "$" + buildingExcelCn.getSymbol())
)
) {
if (StringUtils.isNotBlank(buildingExcelCn.getSymbol()) && udfAssetIdMap.containsKey(compBuilding+ "$" + buildingExcelCn.getSymbol())) {
if (assetDuplicateOptType == 1) {
lineError = true;
commonOpt.appendMsg(lineMsg, msgLanguageChange.getParameterMapByCode(languageType, "dbAssetDuplicate"));
@ -722,12 +717,9 @@ public class MonitoringAssetServiceImpl implements MonitoringAssetService {
// Process asset
if (StringUtils.isNotBlank(buildingExcelCn.getSymbol())) {
String compAsset = buildingExcelCn.getUdfBuildingId()
+ "$" + buildingExcelCn.getUdfSpaceId()
+ "$" + buildingExcelCn.getSymbol();
BasicMonitoringAsset basicMonitoringAsset = new BasicMonitoringAsset();
basicMonitoringAsset.setCompanyId(companyId);
basicMonitoringAsset.setCreateTime(currentUnix);
basicMonitoringAsset.setCreatorId(userId);
basicMonitoringAsset.setName(buildingExcelCn.getAssetName());
if (StringUtils.isNotBlank(buildingExcelCn.getClassBig())) {
basicMonitoringAsset.setClassBigId(
@ -763,11 +755,15 @@ public class MonitoringAssetServiceImpl implements MonitoringAssetService {
String compSpace = buildingExcelCn.getUdfBuildingId()
+ "$" + buildingExcelCn.getUdfSpaceId();
basicMonitoringAsset.setSpaceId(udfSpaceIdMap.get(compSpace).getSpaceId());
noAssetDul.add(compAsset);
if(1 == assetOptFlag) {
if (!insertAssetInfo.containsKey(compSpace)) {
List<BasicMonitoringAsset> asset = new ArrayList<>();
basicMonitoringAsset.setCreateTime(currentUnix);
basicMonitoringAsset.setCreatorId(userId);
asset.add(basicMonitoringAsset);
insertAssetInfo.put(compSpace, asset);
} else {
@ -776,6 +772,8 @@ public class MonitoringAssetServiceImpl implements MonitoringAssetService {
} else {
if (!updateAssetInfo.containsKey(compAsset)) {
List<BasicMonitoringAsset> asset = new ArrayList<>();
basicMonitoringAsset.setModifyTime(currentUnix);;
basicMonitoringAsset.setModifierId(userId);
asset.add(basicMonitoringAsset);
updateAssetInfo.put(compAsset, asset);
} else {

Loading…
Cancel
Save