|
|
@@ -6,6 +6,7 @@ import com.alibaba.fastjson2.JSONArray;
|
|
|
import com.alibaba.fastjson2.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.xunmei.common.core.constant.DictConstants;
|
|
|
import com.xunmei.common.core.constant.SecurityConstants;
|
|
|
@@ -244,39 +245,37 @@ public class IotSensorServiceImpl extends ServiceImpl<IotSensorMapper, IotSensor
|
|
|
Set<String> uniqueSet = new HashSet<>();
|
|
|
for (SensorDto sensorDto : sensorDtos) {
|
|
|
NorthError error = null;
|
|
|
- IotSensor domain = new IotSensor();
|
|
|
+ IotSensor domain = null;
|
|
|
|
|
|
if (StringUtils.isEmpty(sensorDto.getOrgCode())) {
|
|
|
- error = new NorthError(msgId, path
|
|
|
- , sensorDto, "参数非法:未传orgCode");
|
|
|
+ error = new NorthError(msgId, path, sensorDto, "参数非法:未传orgCode");
|
|
|
errors.add(error);
|
|
|
continue;
|
|
|
}
|
|
|
-
|
|
|
String key = sensorDto.getDeviceCode();
|
|
|
if (uniqueSet.contains(key)) {
|
|
|
- errors.add(new NorthError(msgId, path
|
|
|
- , sensorDto, "数据来源中,同机构中设备编号重复。"));
|
|
|
+ errors.add(new NorthError(msgId, path, sensorDto, "数据来源中,同机构中设备编号重复。"));
|
|
|
continue;
|
|
|
}
|
|
|
String deviceType = convertDeviceType(sensorDto.getDeviceType());
|
|
|
if (ObjectUtil.isNull(deviceType)) {
|
|
|
- errors.add(new NorthError(msgId, path
|
|
|
- , sensorDto, "无法识别的设备类型"));
|
|
|
+ errors.add(new NorthError(msgId, path, sensorDto, "无法识别的设备类型"));
|
|
|
continue;
|
|
|
}
|
|
|
uniqueSet.add(key);
|
|
|
List<IotSensor> exists = productDeviceMap.get(key);
|
|
|
- domain.setId(IDHelper.id());
|
|
|
- domain.setDeviceType(sensorDto.getDeviceType());
|
|
|
- domain.setDeleted(0);
|
|
|
- domain.setCreateTime(LocalDateTime.now());
|
|
|
- if (ObjectUtil.isNotEmpty(exists)) {
|
|
|
+ if (ObjectUtil.isEmpty(exists)){
|
|
|
+ domain=new IotSensor();
|
|
|
+ domain.setId(IdWorker.getId());
|
|
|
+ domain.setCreateTime(LocalDateTime.now());
|
|
|
+ }else {
|
|
|
if (exists.size() > 1) {
|
|
|
errors.add(new NorthError(msgId, path, sensorDto, "同机构下设备编号重复,将取第一条"));
|
|
|
}
|
|
|
domain = exists.get(0);
|
|
|
}
|
|
|
+ domain.setDeviceType(sensorDto.getDeviceType());
|
|
|
+ domain.setDeleted(0);
|
|
|
domain.setUpdateTime(LocalDateTime.now());
|
|
|
domain.setDeviceName(sensorDto.getDeviceName().replace("机房/基站环境", "物联环境"));
|
|
|
domain.setHostCode(sensorDto.getHostCode());
|