设备列表-设备增删改查

This commit is contained in:
2025-07-12 14:48:35 +08:00
parent 7dc664446e
commit 118be05c8a
10 changed files with 222 additions and 23 deletions

View File

@ -11,7 +11,7 @@ import com.xzzn.common.annotation.Excel;
* Modbus设备配置对象 ems_devices_setting
*
* @author xzzn
* @date 2025-07-02
* @date 2025-07-12
*/
public class EmsDevicesSetting extends BaseEntity
{
@ -102,6 +102,10 @@ public class EmsDevicesSetting extends BaseEntity
@Excel(name = "设备类别例如“STACK/CLUSTER/PCS等”")
private String deviceCategory;
/** 设备图像地址 */
@Excel(name = "设备图像地址")
private String pictureUrl;
public void setId(Long id)
{
this.id = id;
@ -312,6 +316,16 @@ public class EmsDevicesSetting extends BaseEntity
return deviceCategory;
}
public void setPictureUrl(String pictureUrl)
{
this.pictureUrl = pictureUrl;
}
public String getPictureUrl()
{
return pictureUrl;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
@ -336,6 +350,7 @@ public class EmsDevicesSetting extends BaseEntity
.append("deviceId", getDeviceId())
.append("parentId", getParentId())
.append("deviceCategory", getDeviceCategory())
.append("pictureUrl", getPictureUrl())
.toString();
}
}

View File

@ -19,6 +19,10 @@ public class SiteDeviceListVo {
private String communicationStatus;
/** 设备类型 */
private String deviceCategory;
/** 设备类型 */
private String pictureUrl;
/** 唯一标识 */
private String id;
public String getSiteId() {
return siteId;
@ -75,4 +79,20 @@ public class SiteDeviceListVo {
public void setDeviceCategory(String deviceCategory) {
this.deviceCategory = deviceCategory;
}
public String getPictureUrl() {
return pictureUrl;
}
public void setPictureUrl(String pictureUrl) {
this.pictureUrl = pictureUrl;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}

View File

@ -76,17 +76,12 @@ public interface EmsDevicesSettingMapper
*/
public List<Map<String, Object>> getDeviceInfosBySiteIdAndCategory(@Param("siteId")String siteId, @Param("deviceCategory")String deviceCategory);
/**
* 获取该设备的详细数据
* @param deviceId
* @return
*/
public EmsDevicesSetting getDeviceDetailInfo(String deviceId);
/**
* 获取该设备下的总表
* @param siteId
* @return
*/
public List<Map<String, Object>> getLoadNameList(String siteId);
public EmsDevicesSetting getDeviceBySiteAndDeviceId(@Param("deviceId")String deviceId, @Param("siteId")String siteId);
}

View File

@ -1,7 +1,10 @@
package com.xzzn.ems.service;
import com.xzzn.common.enums.DeviceCategory;
import com.xzzn.ems.domain.EmsDevicesSetting;
import java.util.List;
/**
* 设备信息 服务层
*
@ -9,5 +12,13 @@ import com.xzzn.ems.domain.EmsDevicesSetting;
public interface IEmsDeviceSettingService
{
public EmsDevicesSetting getDeviceDetailInfo(String deviceId);
public EmsDevicesSetting getDeviceDetailInfo(Long deviceId);
public int addDevice(EmsDevicesSetting devicesSetting);
public int updateDevice(EmsDevicesSetting emsDevicesSetting);
public int deleteEmsDevicesSettingById(Long id);
public List<DeviceCategory> getDeviceCategory();
}

View File

@ -1,11 +1,17 @@
package com.xzzn.ems.service.impl;
import com.xzzn.common.enums.DeviceCategory;
import com.xzzn.common.utils.DateUtils;
import com.xzzn.common.utils.StringUtils;
import com.xzzn.ems.domain.EmsDevicesSetting;
import com.xzzn.ems.mapper.EmsDevicesSettingMapper;
import com.xzzn.ems.service.IEmsDeviceSettingService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.List;
/**
* 站点信息 服务层实现
*
@ -18,11 +24,86 @@ public class EmsDeviceSettingServiceImpl implements IEmsDeviceSettingService
/**
* 获取设备详细信息
* @param deviceId
* @param id
* @return
*/
@Override
public EmsDevicesSetting getDeviceDetailInfo(String deviceId) {
return emsDevicesMapper.getDeviceDetailInfo(deviceId);
public EmsDevicesSetting getDeviceDetailInfo(Long id) {
return emsDevicesMapper.selectEmsDevicesSettingById(id);
}
/**
* 新增设备
* @param devicesSetting
* @return
*/
@Override
public int addDevice(EmsDevicesSetting devicesSetting) {
boolean flag = checkDeviceExist(devicesSetting);
if (flag) {
return -1;
}
devicesSetting.setCreateTime(DateUtils.getNowDate());
return emsDevicesMapper.insertEmsDevicesSetting(devicesSetting);
}
/**
* 更新设备
* @param devicesSetting
* @return
*/
@Override
public int updateDevice(EmsDevicesSetting devicesSetting) {
boolean checkExist = false;
if (devicesSetting.getId() != null) {
// 根据id判断该数据是否存在
EmsDevicesSetting existDevice = emsDevicesMapper.selectEmsDevicesSettingById(devicesSetting.getId());
if (existDevice == null) {
return -1;
}
// 存在判断是否修改deviceId和siteId
String deviceId = existDevice.getDeviceId();
String siteId = existDevice.getSiteId();
if (!deviceId.equals(devicesSetting.getDeviceId())
|| !siteId.equals(devicesSetting.getSiteId())) {
checkExist = checkDeviceExist(devicesSetting);
}
}
// 已修改校验修改后数据是否存在
if (checkExist) {
return -2;
}
devicesSetting.setUpdateTime(DateUtils.getNowDate());
return emsDevicesMapper.updateEmsDevicesSetting(devicesSetting);
}
private boolean checkDeviceExist(EmsDevicesSetting devicesSetting) {
String deviceId = devicesSetting.getDeviceId();
String siteId = devicesSetting.getSiteId();
if (!StringUtils.isEmpty(deviceId) && !StringUtils.isEmpty(siteId)) {
EmsDevicesSetting emsDevicesSetting = emsDevicesMapper.getDeviceBySiteAndDeviceId(deviceId, siteId);
if (emsDevicesSetting != null) {
return true;
}
}
return false;
}
/**
* 删除设备配置信息
*
* @param id Modbus设备配置主键
* @return 结果
*/
@Override
public int deleteEmsDevicesSettingById(Long id){
return emsDevicesMapper.deleteEmsDevicesSettingById(id);
}
@Override
public List<DeviceCategory> getDeviceCategory() {
List<DeviceCategory> deviceList = Arrays.asList(DeviceCategory.values());
return deviceList;
}
}

View File

@ -402,7 +402,8 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
} else if (AMMETER_DEVICE_METE.equals(ammeterId)) {
AmmeterMeteDataVo ammeterMeteDataVo = new AmmeterMeteDataVo();
ammeterMeteDataVo.setDeviceName(ammeterDevice.get("deviceName").toString());
ammeterMeteDataVo.setEmsCommunicationStatus(ammeterDevice.get("communicationStatus").toString());
ammeterMeteDataVo.setEmsCommunicationStatus(ammeterDevice.get("communicationStatus") == null? "" :
ammeterDevice.get("communicationStatus").toString());
// 处理储能表数据
dealAmmeterMeteData(ammeterData,ammeterMeteDataVo);
ammeterResponse.setAmmeterMeteDataVoList(ammeterMeteDataVo);