电能质量代码调整
This commit is contained in:
@@ -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();
|
||||||
|
|||||||
@@ -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)){
|
||||||
|
|||||||
@@ -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","接入失败,需要接入的装置未找到"),
|
||||||
|
|||||||
@@ -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:逻辑设备)
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 操作类型
|
* 操作类型
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|
||||||
|
|||||||
@@ -18,6 +18,8 @@ public class EleInformation {
|
|||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
private String id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 数据更新时间
|
* 数据更新时间
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -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);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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)
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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查询逻辑设备
|
||||||
|
|||||||
@@ -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 徐扬
|
||||||
|
|||||||
@@ -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);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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())){
|
||||||
|
|||||||
@@ -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();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user