Browse Source

fix: 针对增量情况下的模型同步,插入device表时oldAreaId在redis可能读取不到从而值为0的问题

master
yinhuaiwei 1 month ago
parent
commit
1d43866363
1 changed files with 9 additions and 3 deletions
  1. +9
    -3
      inspect-metadata/src/main/java/com/inspect/metadata/montdatamqhandle/service/component/BasedataMontPatrolPointHandleComponent.java

+ 9
- 3
inspect-metadata/src/main/java/com/inspect/metadata/montdatamqhandle/service/component/BasedataMontPatrolPointHandleComponent.java View File

@ -602,10 +602,16 @@ public class BasedataMontPatrolPointHandleComponent {
String areaName = deviceKey.split(StringUtils.COLON)[3];
device.setOldDeviceId(sendCode + "_main_" + deviceId);
List<BasedataDevice> basedataDeviceList = this.basedataDeviceService.selectBasedataDeviceList(device);
Long pid;
Long pid = 0L;
if (CollectionUtils.isEmpty(basedataDeviceList)) {
++count1;
pid = (Long) this.redisTemplate.opsForValue().get(oldAreaId);
BaseDataArea area = new BaseDataArea();
area.setOldAreaId(sendCode + "_" + oldAreaId);
List<BaseDataArea> areaList = this.baseDataAreaService.selectAreaList(area);
if (!CollectionUtils.isEmpty(areaList)) {
BaseDataArea baseDataArea = areaList.get(0);
pid = baseDataArea.getAreaId();
}
device.setParentId(0L);
device.setOldAreaName(areaName);
device.setOldAreaId(sendCode + "_" + oldAreaId);
@ -699,7 +705,7 @@ public class BasedataMontPatrolPointHandleComponent {
bayData.setOldParentId(sendCode + "_" + oldPid);
this.baseDataAreaService.insertArea(bayData);
} else {
if(baseDataAreaList.size() > 0) {
if (baseDataAreaList.size() > 0) {
bayData = baseDataAreaList.get(0);
bayData.setAreaName(bayName);
this.baseDataAreaService.updateArea(bayData);


Loading…
Cancel
Save