电能质量代码调整

This commit is contained in:
2022-07-16 11:22:12 +08:00
parent 966ab326e9
commit a7b252972a
20 changed files with 189 additions and 61 deletions

View File

@@ -78,8 +78,8 @@ public class PqsIntegrityJob {
log.error("补招时间格式错误"); log.error("补招时间格式错误");
return; return;
} else { } else {
startTime = startTime + " 00:00:00"; startTime = startTime + START_TIME;
endTime = endTime + " 23:59:59"; endTime = endTime + END_TIME;
} }
} }
List<LineDetail> lineDetail = lineFeignClient.getLineDetail(lineList).getData(); List<LineDetail> lineDetail = lineFeignClient.getLineDetail(lineList).getData();

View File

@@ -52,8 +52,6 @@ public class PqsOnlineRateJob {
private final LineFeignClient lineFeignClient; private final LineFeignClient lineFeignClient;
private final Integer DAY_MINUTE= 60*24;
@XxlJob("pqsOnlineRateJobHandler") @XxlJob("pqsOnlineRateJobHandler")
public void pqsOnlineRateJobHandler() throws ParseException { public void pqsOnlineRateJobHandler() throws ParseException {
List<PqsOnlineRate> result = new ArrayList<>(); List<PqsOnlineRate> result = new ArrayList<>();
@@ -79,8 +77,8 @@ public class PqsOnlineRateJob {
log.error("补招时间格式错误"); log.error("补招时间格式错误");
return; return;
} else { } else {
startTime = startTime + " 00:00:00"; startTime = startTime + START_TIME;
endTime = endTime + " 23:59:59"; endTime = endTime + END_TIME;
} }
} }
if (CollectionUtils.isEmpty(deviceList)){ if (CollectionUtils.isEmpty(deviceList)){

View File

@@ -35,6 +35,7 @@ public enum EnergyResponseEnum {
EXIST_ERROR("400","注册失败,存在已注册的装置"), EXIST_ERROR("400","注册失败,存在已注册的装置"),
CANCEL_ERROR("400","取消注册失败,存在未注册或者接入的装置,无法取消注册"), CANCEL_ERROR("400","取消注册失败,存在未注册或者接入的装置,无法取消注册"),
NO_MODEL_FIND("402","接入失败,模板未找到"), NO_MODEL_FIND("402","接入失败,模板未找到"),
MODEL_UPGRADE("402","接入失败,模板版本需升级"),
MISSING_MODEL("402","接入失败,模板数据缺失"), MISSING_MODEL("402","接入失败,模板数据缺失"),
MISSING_TOPIC("402","接入失败,缺少网关主题相关信息"), MISSING_TOPIC("402","接入失败,缺少网关主题相关信息"),
NO_DID_FIND("400","接入失败,需要接入的装置未找到"), NO_DID_FIND("400","接入失败,需要接入的装置未找到"),

View File

@@ -31,6 +31,13 @@ public class DevVersionParam{
@NotBlank(message = "网关id不可为空") @NotBlank(message = "网关id不可为空")
private String ndid; private String ndid;
/**
* 模板名称
*/
@ApiModelProperty(value = "模板名称",required = true)
@NotBlank(message = "模板名称不可为空")
private String name;
/** /**
* 设备类型0联网设备1逻辑设备 * 设备类型0联网设备1逻辑设备

View File

@@ -42,9 +42,12 @@ public interface ModelState {
/** /**
* 设备类型0联网设备1逻辑设备 * 设备类型0联网设备1逻辑设备
* 模板类型0联网设备模板1逻辑设备模板2用户模板3典表数据模板
*/ */
Integer NET_DEV = 0; Integer NET_DEV = 0;
Integer LOGIC_DEV = 1; Integer LOGIC_DEV = 1;
Integer USER = 2;
Integer DICTIONARY = 3;
/** /**
* 操作类型 * 操作类型

View File

@@ -16,6 +16,9 @@ import java.util.List;
@Data @Data
public class DevCfgDTO implements Serializable { public class DevCfgDTO implements Serializable {
@SerializedName("Name")
private String name;
@SerializedName("Version") @SerializedName("Version")
private String version; private String version;

View File

@@ -16,6 +16,9 @@ import java.util.List;
@Data @Data
public class NetDevDTO implements Serializable { public class NetDevDTO implements Serializable {
@SerializedName("Name")
private String name;
@SerializedName("Version") @SerializedName("Version")
private String version; private String version;

View File

@@ -16,6 +16,9 @@ import java.util.List;
@Data @Data
public class UserCfgDTO implements Serializable { public class UserCfgDTO implements Serializable {
@SerializedName("Name")
private String name;
@SerializedName("Version") @SerializedName("Version")
private String version; private String version;

View File

@@ -29,7 +29,12 @@ public class DevVersion {
private String ndid; private String ndid;
/** /**
* 设备类型0联网设备1逻辑设备 * 模板名称
*/
private String name;
/**
* 模板类型0联网设备模板1逻辑设备模板2用户模板3典表数据模板
*/ */
private Integer type; private Integer type;

View File

@@ -18,6 +18,8 @@ public class EleInformation {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
private String id;
/** /**
* 数据更新时间 * 数据更新时间
*/ */

View File

@@ -19,6 +19,7 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Objects; import java.util.Objects;
/** /**
@@ -59,4 +60,27 @@ public class DevVersionController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
} }
@PostMapping("/find")
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@ApiOperation("获取网关下所有模板")
@ApiImplicitParam(name = "nDId", value = "网关id", required = true)
public HttpResult<List<DevVersion>> find(@RequestParam String nDId){
String methodDescribe = getMethodDescribe("find");
LogUtil.njcnDebug(log, "{}网关id{}", methodDescribe, nDId);
List<DevVersion> list = IDevVersionService.findListById(nDId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
@PostMapping("/deleteById")
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
@ApiOperation("根据网关删除所有模板")
@ApiImplicitParam(name = "nDId", value = "网关id", required = true)
public HttpResult<Boolean> deleteById(@RequestParam String nDId){
String methodDescribe = getMethodDescribe("deleteById");
LogUtil.njcnDebug(log, "{}网关id{}", methodDescribe, nDId);
boolean result = IDevVersionService.deleteById(nDId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
} }

View File

@@ -258,16 +258,16 @@ public class LogicDeviceLineController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe); return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
} }
@DeleteMapping("/deleteByVersionId") // @DeleteMapping("/deleteByVersionId")
@OperateInfo(info = LogEnum.SYSTEM_COMMON,operateType = OperateType.DELETE) // @OperateInfo(info = LogEnum.SYSTEM_COMMON,operateType = OperateType.DELETE)
@ApiOperation("根据版本id删除逻辑设备") // @ApiOperation("根据版本id删除逻辑设备")
@ApiImplicitParam(name = "id", value = "逻辑设备版本id", required = true) // @ApiImplicitParam(name = "id", value = "逻辑设备版本id", required = true)
public HttpResult<Boolean> deleteByVersionId(@RequestParam String id){ // public HttpResult<Boolean> deleteByVersionId(@RequestParam String id){
String methodDescribe = getMethodDescribe("deleteByVersionId"); // String methodDescribe = getMethodDescribe("deleteByVersionId");
LogUtil.njcnDebug(log, "{}设备的did{}", methodDescribe, id); // LogUtil.njcnDebug(log, "{}设备的did{}", methodDescribe, id);
boolean result = iLogicDeviceLineService.deleteByVersionId(id); // boolean result = iLogicDeviceLineService.deleteByVersionId(id);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe); // return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
} // }
@GetMapping("/getLogicDevByVersionId") @GetMapping("/getLogicDevByVersionId")
@OperateInfo(info = LogEnum.SYSTEM_COMMON) @OperateInfo(info = LogEnum.SYSTEM_COMMON)

View File

@@ -3,6 +3,8 @@ package com.njcn.quality.service;
import com.njcn.quality.param.DevVersionParam; import com.njcn.quality.param.DevVersionParam;
import com.njcn.quality.pojo.po.DevVersion; import com.njcn.quality.pojo.po.DevVersion;
import java.util.List;
/** /**
* @author 徐扬 * @author 徐扬
*/ */
@@ -26,4 +28,22 @@ public interface IDevVersionService {
*/ */
boolean deleteDevVersion(String id); boolean deleteDevVersion(String id);
/**
* 功能描述: 获取网关下所有模板
* @author xy
* @param id 网关id
* @date 2022/7/13 15:58
* @return
*/
List<DevVersion> findListById(String id);
/**
* 功能描述: 根据网关删除所有模板
* @author xy
* @param id 网关id
* @date 2022/7/13 15:58
* @return
*/
boolean deleteById(String id);
} }

View File

@@ -164,14 +164,14 @@ public interface ILogicDeviceLineService {
List<LogicDev> getLogicDevByPid(List<String> list); List<LogicDev> getLogicDevByPid(List<String> list);
/** /**
* 功能描述: 根据版本id删除逻辑设备 * 功能描述: 根据网关id删除逻辑设备
* *
* @param id * @param id
* @return * @return
* @author xy * @author xy
* @date 2022/3/17 14:45 * @date 2022/3/17 14:45
*/ */
boolean deleteByVersionId(String id); boolean deleteByNDid(String id);
/** /**
* 功能描述: 根据版本id查询逻辑设备 * 功能描述: 根据版本id查询逻辑设备

View File

@@ -4,7 +4,6 @@ package com.njcn.quality.service;
import com.njcn.quality.param.UpdateDeviceVersion; import com.njcn.quality.param.UpdateDeviceVersion;
import java.util.List; import java.util.List;
import java.util.concurrent.CompletableFuture;
/** /**
* @author 徐扬 * @author 徐扬

View File

@@ -1,5 +1,6 @@
package com.njcn.quality.service.impl; package com.njcn.quality.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.enums.common.DataStateEnum; import com.njcn.common.pojo.enums.common.DataStateEnum;
import com.njcn.quality.mapper.DevVersionMapper; import com.njcn.quality.mapper.DevVersionMapper;
@@ -9,6 +10,8 @@ import com.njcn.quality.service.IDevVersionService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* 类的介绍: * 类的介绍:
* *
@@ -20,7 +23,6 @@ import org.springframework.stereotype.Service;
@Service @Service
public class DevVersionServiceImpl extends ServiceImpl<DevVersionMapper, DevVersion> implements IDevVersionService { public class DevVersionServiceImpl extends ServiceImpl<DevVersionMapper, DevVersion> implements IDevVersionService {
@Override @Override
public DevVersion addDevVersion(DevVersionParam devVersionParam) { public DevVersion addDevVersion(DevVersionParam devVersionParam) {
DevVersion devVersion = new DevVersion(); DevVersion devVersion = new DevVersion();
@@ -34,4 +36,18 @@ public class DevVersionServiceImpl extends ServiceImpl<DevVersionMapper, DevVers
public boolean deleteDevVersion(String id) { public boolean deleteDevVersion(String id) {
return this.removeById(id); return this.removeById(id);
} }
@Override
public List<DevVersion> findListById(String id) {
LambdaQueryWrapper<DevVersion> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(DevVersion::getNdid,id);
return this.baseMapper.selectList(lambdaQueryWrapper);
}
@Override
public boolean deleteById(String id) {
LambdaQueryWrapper<DevVersion> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(DevVersion::getNdid,id);
return this.remove(lambdaQueryWrapper);
}
} }

View File

@@ -53,7 +53,9 @@ public class EleInformationServiceImpl extends ServiceImpl<EleInformationMapper,
@Override @Override
public void addInformation(List<EleInformation> list) { public void addInformation(List<EleInformation> list) {
this.saveBatch(list); if (!CollectionUtils.isEmpty(list)){
list.forEach(this::save);
}
} }
@Override @Override

View File

@@ -572,9 +572,9 @@ public class LogicDeviceLineServiceImpl extends ServiceImpl<LogicDeviceLineMappe
} }
@Override @Override
public boolean deleteByVersionId(String id) { public boolean deleteByNDid(String id) {
QueryWrapper<LogicDev> logicDevQueryWrapper = new QueryWrapper<>(); QueryWrapper<LogicDev> logicDevQueryWrapper = new QueryWrapper<>();
logicDevQueryWrapper.eq("Version_Id", id); logicDevQueryWrapper.eq("Pid", id);
return this.remove(logicDevQueryWrapper); return this.remove(logicDevQueryWrapper);
} }

View File

@@ -311,18 +311,35 @@ public class ModelServiceImpl implements IModelService {
return gson.toJson(response); return gson.toJson(response);
} }
} }
//判断所有模板版本
List<TpListDTO> tpList = access.getParam().getTpList(); List<TpListDTO> tpList = access.getParam().getTpList();
tpList.forEach(item->{ if (CollectionUtils.isEmpty(tpList)){
versionSet.add(item.getName() + "+" +item.getVersion() + "+" + item.getTime()); response.setCode(Integer.parseInt(EnergyResponseEnum.NO_MODEL_FIND.getCode()));
}); response.setMsg(EnergyResponseEnum.NO_MODEL_FIND.getMessage());
for (String item: versionSet) { return gson.toJson(response);
QueryWrapper<DataMould> dataMouldQueryWrapper = new QueryWrapper<>(); } else {
dataMouldQueryWrapper.eq("Name",item.split("\\+")[0]).eq("Version", item.split("\\+")[1]).eq("Time", item.split("\\+")[2]); //获取当前网关下的所有模板
DataMould dataMould = dataMouldMapper.selectOne(dataMouldQueryWrapper); List<DevVersion> devVersions = devVersionService.findListById(ndid);
if (Objects.isNull(dataMould)) { if (CollectionUtils.isEmpty(devVersions)){
response.setCode(Integer.parseInt(EnergyResponseEnum.NO_MODEL_FIND.getCode())); response.setCode(Integer.parseInt(EnergyResponseEnum.NO_MODEL_FIND.getCode()));
response.setMsg(EnergyResponseEnum.NO_MODEL_FIND.getMessage()); response.setMsg(EnergyResponseEnum.NO_MODEL_FIND.getMessage());
return gson.toJson(response); return gson.toJson(response);
} else {
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
Map<String,String> map1 = new HashMap<>(),map2 = new HashMap<>();
tpList.forEach(item->{
map1.put(item.getName(),item.getName()+item.getVersion()+item.getTime());
});
devVersions.forEach(item->{
map2.put(item.getName(),item.getName()+item.getVersion()+df.format(item.getTime()));
});
for (String item:map1.keySet()) {
if (Objects.isNull(map2.get(item)) || !Objects.equals(map1.get(item),map2.get(item))){
response.setCode(Integer.parseInt(EnergyResponseEnum.MODEL_UPGRADE.getCode()));
response.setMsg(EnergyResponseEnum.MODEL_UPGRADE.getMessage());
return gson.toJson(response);
}
}
} }
} }
//将接入的装置添加模板装置id //将接入的装置添加模板装置id
@@ -377,10 +394,14 @@ public class ModelServiceImpl implements IModelService {
Gson gson = new Gson(); Gson gson = new Gson();
AskDataDTO.AskDataResponse response = gson.fromJson(json,AskDataDTO.AskDataResponse.class); AskDataDTO.AskDataResponse response = gson.fromJson(json,AskDataDTO.AskDataResponse.class);
if (Objects.equals(response.getCode(),Integer.parseInt(EnergyResponseEnum.SUCCESS.getCode()))){ if (Objects.equals(response.getCode(),Integer.parseInt(EnergyResponseEnum.SUCCESS.getCode()))){
NetDevDTO netDevDTO = response.getParam().getDataArray().get(0).getTemplate().getNetDev();
/**
* 删除模板记录
*/
devVersionService.deleteById(netDevDTO.getNDid());
/** /**
* 解析联网(网关)模板 * 解析联网(网关)模板
*/ */
NetDevDTO netDevDTO = response.getParam().getDataArray().get(0).getTemplate().getNetDev();
//获取联网设备信息 //获取联网设备信息
LambdaQueryWrapper<NetDev> netDevQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<NetDev> netDevQueryWrapper = new LambdaQueryWrapper<>();
netDevQueryWrapper.eq(NetDev::getNdid,netDevDTO.getNDid()).eq(NetDev::getState,DataStateEnum.ENABLE.getCode()); netDevQueryWrapper.eq(NetDev::getNdid,netDevDTO.getNDid()).eq(NetDev::getState,DataStateEnum.ENABLE.getCode());
@@ -388,10 +409,6 @@ public class ModelServiceImpl implements IModelService {
if(Objects.isNull(netDev)){ if(Objects.isNull(netDev)){
throw new BusinessException(EnergyResponseEnum.NET_DEV_MODEL_ERROR); throw new BusinessException(EnergyResponseEnum.NET_DEV_MODEL_ERROR);
} }
//根据网关的versionId判断如果存在更新的时候就先根据id删除版本表记录重新生成一个再给网关赋予这个id;如果不存在id就直接生成一个再赋予网关
if (StringUtils.isNotBlank(netDev.getVersionId())){
devVersionService.deleteDevVersion(netDev.getVersionId());
}
//新增系统版本表 //新增系统版本表
DevVersionParam devVersionParam = new DevVersionParam(); DevVersionParam devVersionParam = new DevVersionParam();
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
@@ -400,6 +417,7 @@ public class ModelServiceImpl implements IModelService {
devVersionParam.setVersion(netDevDTO.getVersion()); devVersionParam.setVersion(netDevDTO.getVersion());
devVersionParam.setTime(LocalDateTime.parse(netDevDTO.getTime(),df)); devVersionParam.setTime(LocalDateTime.parse(netDevDTO.getTime(),df));
devVersionParam.setCreateTime(LocalDateTime.now()); devVersionParam.setCreateTime(LocalDateTime.now());
devVersionParam.setName(netDevDTO.getName());
DevVersion netDevVersion = devVersionService.addDevVersion(devVersionParam); DevVersion netDevVersion = devVersionService.addDevVersion(devVersionParam);
//更新网关设备表 //更新网关设备表
netDev.setVersionId(netDevVersion.getId()); netDev.setVersionId(netDevVersion.getId());
@@ -426,34 +444,33 @@ public class ModelServiceImpl implements IModelService {
* 解析装置模板 * 解析装置模板
*/ */
List<DevDTO> devList = response.getParam().getDataArray().get(0).getTemplate().getDev(); List<DevDTO> devList = response.getParam().getDataArray().get(0).getTemplate().getDev();
Map<String,String> map = analyzeDev(devList); Map<String,String> map = analyzeDev(devList,netDevDTO.getNDid());
/** /**
* 解析逻辑模板 * 解析逻辑模板
*/ */
DevCfgDTO devCfgDTO = response.getParam().getDataArray().get(0).getTemplate().getDevCfg(); DevCfgDTO devCfgDTO = response.getParam().getDataArray().get(0).getTemplate().getDevCfg();
//获取当前网关下的逻辑设备版本信息
QueryWrapper<DevVersion> devVersionQueryWrapper = new QueryWrapper<>();
devVersionQueryWrapper.eq("NDID",netDevDTO.getNDid()).eq("Type",ModelState.LOGIC_DEV).eq("State",DataStateEnum.ENABLE.getCode());
DevVersion devCfgVersion = devVersionMapper.selectOne(devVersionQueryWrapper);
//如果版本信息为空,直接写入;如果不为空,就先删除之前的数据,然后重新录入信息
if (!Objects.isNull(devCfgVersion)){
List<String> logicList = logicDeviceLineService.getLogicDevByVersionId(devCfgVersion.getId()).stream().map(LogicDev::getId).collect(Collectors.toList());
//删除逻辑设备信息
logicDeviceLineService.deleteByVersionId(devCfgVersion.getId());
//删除逻辑设备版本信息
devVersionService.deleteDevVersion(devCfgVersion.getId());
//删除监测点信息
lineService.deleteByList(logicList);
//删除硬件信息
hardwareService.deleteHardware(logicList);
}
DevVersionParam devCfgVersionParam = new DevVersionParam(); DevVersionParam devCfgVersionParam = new DevVersionParam();
BeanUtil.copyProperties(devCfgDTO,devCfgVersionParam);
devCfgVersionParam.setType(ModelState.LOGIC_DEV);
devCfgVersionParam.setCreateTime(LocalDateTime.now());
devCfgVersionParam.setNdid(netDevDTO.getNDid()); devCfgVersionParam.setNdid(netDevDTO.getNDid());
devCfgVersionParam.setName(devCfgDTO.getName());
devCfgVersionParam.setType(ModelState.LOGIC_DEV);
devCfgVersionParam.setVersion(devCfgDTO.getVersion());
devCfgVersionParam.setTime(LocalDateTime.parse(devCfgDTO.getTime(),df));
devCfgVersionParam.setCreateTime(LocalDateTime.now());
//逻辑设备入库->设备版本信息表 //逻辑设备入库->设备版本信息表
DevVersion devVersion = devVersionService.addDevVersion(devCfgVersionParam); DevVersion devVersion = devVersionService.addDevVersion(devCfgVersionParam);
List<String> nDidList = Collections.singletonList(netDevService.findByNdid(netDevDTO.getNDid()).getId());
if (!CollectionUtils.isEmpty(nDidList)){
List<LogicDev> logicDevList =logicDeviceLineService.getLogicDevByPid(nDidList);
if (!CollectionUtils.isEmpty(logicDevList)){
List<String> list =logicDevList.stream().map(LogicDev::getId).collect(Collectors.toList());
//删除逻辑设备信息
logicDeviceLineService.deleteByNDid(nDidList.get(0));
//删除监测点信息
lineService.deleteByList(list);
//删除硬件信息
hardwareService.deleteHardware(list);
}
}
List<DeviceDTO> list = devCfgDTO.getCfg(); List<DeviceDTO> list = devCfgDTO.getCfg();
if (!CollectionUtils.isEmpty(list)){ if (!CollectionUtils.isEmpty(list)){
list.forEach(item->{ list.forEach(item->{
@@ -466,7 +483,10 @@ public class ModelServiceImpl implements IModelService {
} }
devCfgParam.setDid(item.getId()); devCfgParam.setDid(item.getId());
devCfgParam.setVersionId(devVersion.getId()); devCfgParam.setVersionId(devVersion.getId());
if (Objects.isNull(map.get(item.getName() + item.getVersion() + item.getTime()))){ // if (Objects.isNull(map.get(item.getName() + item.getVersion() + item.getTime()))){
// throw new BusinessException(EnergyResponseEnum.MODEL_ERROR);
// }
if (Objects.isNull(map.get(item.getName()))){
throw new BusinessException(EnergyResponseEnum.MODEL_ERROR); throw new BusinessException(EnergyResponseEnum.MODEL_ERROR);
} }
devCfgParam.setIdx(map.get(item.getName() + item.getVersion() + item.getTime())); devCfgParam.setIdx(map.get(item.getName() + item.getVersion() + item.getTime()));
@@ -500,6 +520,17 @@ public class ModelServiceImpl implements IModelService {
} }
}); });
} }
/**
* 解析用户模板
*/
UserCfgDTO userCfgDTO = response.getParam().getDataArray().get(0).getTemplate().getUserCfg();
DevVersionParam devCfgVersionParam2 = new DevVersionParam();
BeanUtil.copyProperties(userCfgDTO,devCfgVersionParam2);
devCfgVersionParam2.setType(ModelState.USER);
devCfgVersionParam2.setCreateTime(LocalDateTime.now());
devCfgVersionParam2.setNdid(netDevDTO.getNDid());
//逻辑设备入库->设备版本信息表
devVersionService.addDevVersion(devCfgVersionParam2);
} else { } else {
log.error("获取数据失败"); log.error("获取数据失败");
} }
@@ -652,9 +683,19 @@ public class ModelServiceImpl implements IModelService {
/** /**
* 解析设备模板 * 解析设备模板
*/ */
public Map<String,String> analyzeDev(List<DevDTO> devList){ public Map<String,String> analyzeDev(List<DevDTO> devList,String ndid){
Map<String,String> map = new HashMap<>(); Map<String,String> map = new HashMap<>();
devList.forEach(item->{ devList.forEach(item->{
//装置模板库录入
DevVersionParam devVersionParam = new DevVersionParam();
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
devVersionParam.setNdid(ndid);
devVersionParam.setName(item.getName());
devVersionParam.setType(ModelState.DICTIONARY);
devVersionParam.setVersion(item.getVersion());
devVersionParam.setTime(LocalDateTime.parse(item.getTime(),df));
devVersionParam.setCreateTime(LocalDateTime.now());
devVersionService.addDevVersion(devVersionParam);
//先将数据类型入库 //先将数据类型入库
addDataType(item); addDataType(item);
QueryWrapper<DataMould> dataMouldQueryWrapper = new QueryWrapper<>(); QueryWrapper<DataMould> dataMouldQueryWrapper = new QueryWrapper<>();
@@ -685,7 +726,8 @@ public class ModelServiceImpl implements IModelService {
if (!Objects.isNull(mould)){ if (!Objects.isNull(mould)){
logicDeviceLineService.updateLogicDevice(mould.getId(),dataMould.getId()); logicDeviceLineService.updateLogicDevice(mould.getId(),dataMould.getId());
} }
String tmp = item.getName() + item.getVersion() + item.getTime(); // String tmp = item.getName() + item.getVersion() + item.getTime();
String tmp = item.getName();
map.put(tmp,dataMould.getId()); map.put(tmp,dataMould.getId());
//入库->ele_data_set //入库->ele_data_set
if (!CollectionUtils.isEmpty(item.getDataSet())){ if (!CollectionUtils.isEmpty(item.getDataSet())){

View File

@@ -104,7 +104,7 @@ public class NetDevServiceImpl extends ServiceImpl<NetDevMapper, NetDev> impleme
public void offlineNetDev(String netDev) { public void offlineNetDev(String netDev) {
this.lambdaUpdate() this.lambdaUpdate()
.set(NetDev::getComFlag, ModelState.UNREGISTER) .set(NetDev::getComFlag, ModelState.UNREGISTER)
.eq(NetDev::getId,netDev) .eq(NetDev::getNdid,netDev)
.update(); .update();
} }