Compare commits

...

3 Commits

Author SHA1 Message Date
weitang
2df7cbd1ea Merge remote-tracking branch 'origin/master' 2025-04-29 14:29:23 +08:00
weitang
e44db147af 优化设备和网关机批量操作请求参数 2025-04-29 14:29:00 +08:00
weitang
1442a9e113 优化辅控设备逻辑 2025-04-29 11:12:08 +08:00
6 changed files with 68 additions and 14 deletions

View File

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yfd.platform.annotation.Log;
import com.yfd.platform.config.ResponseResult;
import com.yfd.platform.modules.auxcontrol.domain.GatewayDevice;
import com.yfd.platform.modules.auxcontrol.domain.GatewayDeviceRequest;
import com.yfd.platform.modules.auxcontrol.service.IGatewayDeviceService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -132,11 +133,11 @@ public class GatewayDeviceController {
@Log(module = "数据变电站系统设备", value = "根据ID删除变电站网关设备", type = "1")
@PostMapping("/batchDeleteGateway")
@ApiOperation("根据ID批量删除变电站网关设备")
public ResponseResult batchDeleteGateway(@RequestBody List<String> ids) {
if (ids.size() <= 0) {
public ResponseResult batchDeleteGateway(@RequestBody GatewayDeviceRequest gatewayDeviceRequest) {
if (gatewayDeviceRequest.getIds() == null || gatewayDeviceRequest.getIds().size() <= 0) {
return ResponseResult.error("参数为空");
}
boolean isOk = gatewayDeviceService.removeByIds(ids);
boolean isOk = gatewayDeviceService.removeByIds(gatewayDeviceRequest.getIds());
if (isOk) {
return ResponseResult.success();
} else {

View File

@ -5,15 +5,14 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yfd.platform.annotation.Log;
import com.yfd.platform.config.ResponseResult;
import com.yfd.platform.modules.auxcontrol.domain.MeterDeviceRequest;
import com.yfd.platform.modules.auxcontrol.domain.MeterDevice;
import com.yfd.platform.modules.auxcontrol.service.IMeterDeviceService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@ -119,12 +118,15 @@ public class MeterDeviceController {
@Log(module = "数据变电站辅控设备", value = "批量修改变电站辅控设备信息", type = "1")
@PostMapping("/batchUpdateMeterDeviceIp")
@ApiOperation("批量修改变电站辅控设备信息")
public ResponseResult batchUpdateMeterDeviceIp(@RequestParam String ids, @RequestParam String ip) {
public ResponseResult batchUpdateMeterDeviceIp(@RequestBody MeterDeviceRequest batchUpdateIpRequest) {
if (StrUtil.isBlank(ids) || StrUtil.isBlank(ip)) {
if (batchUpdateIpRequest.getIds() == null || batchUpdateIpRequest.getIds().size() <= 0) {
return ResponseResult.error("参数为空");
}
boolean isOk = meterDeviceService.batchUpdateDeviceIp(ids, ip);
if (StrUtil.isBlank(batchUpdateIpRequest.getIp())) {
return ResponseResult.error("参数为空");
}
boolean isOk = meterDeviceService.batchUpdateDeviceIp(batchUpdateIpRequest.getIds(), batchUpdateIpRequest.getIp());
if (isOk) {
return ResponseResult.success();
} else {

View File

@ -0,0 +1,15 @@
package com.yfd.platform.modules.auxcontrol.domain;
import lombok.Data;
import java.util.List;
/**
* @Date: 2025/4/29 14:26
* @Description:
*/
@Data
public class GatewayDeviceRequest {
private List<String> ids;
}

View File

@ -0,0 +1,14 @@
package com.yfd.platform.modules.auxcontrol.domain;
import lombok.Data;
import java.util.List;
@Data
public class MeterDeviceRequest {
private String ip;
private List<String> ids;
}

View File

@ -49,7 +49,7 @@ public interface IMeterDeviceService extends IService<MeterDevice> {
* 参数说明 ip 设备ip
* 返回值说明: boolean
***********************************/
boolean batchUpdateDeviceIp(String ids, String ip);
boolean batchUpdateDeviceIp(List<String> ids, String ip);
/**********************************
* 用途说明: 根据系统编号查询设备

View File

@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yfd.platform.modules.auxcontrol.domain.GatewayDevice;
import com.yfd.platform.modules.auxcontrol.domain.MeterDevice;
import com.yfd.platform.modules.auxcontrol.mapper.MeterDeviceMapper;
import com.yfd.platform.modules.auxcontrol.service.IMeterDeviceService;
@ -30,7 +31,12 @@ public class MeterDeviceServiceImpl extends ServiceImpl<MeterDeviceMapper, Meter
@Override
public Page<MeterDevice> getDevicePage(String deviceName, String deviceModel, String deviceType, String status,
String systemcode, Page<MeterDevice> page) {
return null;
LambdaQueryWrapper<MeterDevice> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.like(StrUtil.isNotBlank(deviceName), MeterDevice::getDeviceName, deviceName);
queryWrapper.like(StrUtil.isNotBlank(deviceModel), MeterDevice::getDeviceModel, deviceModel);
queryWrapper.eq(StrUtil.isNotBlank(deviceType), MeterDevice::getDeviceType, deviceType);
queryWrapper.eq(StrUtil.isNotBlank(systemcode), MeterDevice::getSystemcode, systemcode).orderByAsc(MeterDevice::getDeviceCode);
return this.page(page, queryWrapper);
}
/**********************************
@ -40,6 +46,14 @@ public class MeterDeviceServiceImpl extends ServiceImpl<MeterDeviceMapper, Meter
***********************************/
@Override
public boolean addMeterDevice(MeterDevice meterDevice) {
if (StrUtil.isNotBlank(meterDevice.getIpAddr())) {
LambdaQueryWrapper<MeterDevice> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(MeterDevice::getIpAddr, meterDevice.getIpAddr());
int count = this.count(queryWrapper);
if (count > 0) {
throw new RuntimeException("当前ip已经有设备绑定");
}
}
meterDevice.setLastmodifier(SecurityUtils.getCurrentUsername());
//当前操作时间 最近修改时间
meterDevice.setLastmodifydate(new Timestamp(System.currentTimeMillis()));
@ -53,6 +67,15 @@ public class MeterDeviceServiceImpl extends ServiceImpl<MeterDeviceMapper, Meter
***********************************/
@Override
public boolean updateMeterDevice(MeterDevice meterDevice) {
if (StrUtil.isNotBlank(meterDevice.getIpAddr())) {
LambdaQueryWrapper<MeterDevice> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.ne(MeterDevice::getDeviceId, meterDevice.getDeviceId()).eq(MeterDevice::getIpAddr,
meterDevice.getIpAddr());
int count = this.count(queryWrapper);
if (count > 0) {
throw new RuntimeException("当前ip已经有设备绑定");
}
}
meterDevice.setLastmodifier(SecurityUtils.getCurrentUsername());
//当前操作时间 最近修改时间
meterDevice.setLastmodifydate(new Timestamp(System.currentTimeMillis()));
@ -66,10 +89,9 @@ public class MeterDeviceServiceImpl extends ServiceImpl<MeterDeviceMapper, Meter
* 返回值说明: boolean
***********************************/
@Override
public boolean batchUpdateDeviceIp(String ids, String ip) {
List<String> idList = StrUtil.split(ids, ",");
public boolean batchUpdateDeviceIp(List<String> ids, String ip) {
LambdaUpdateWrapper<MeterDevice> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.in(MeterDevice::getDeviceId, idList).set(MeterDevice::getNetdeviceIp, ip);
updateWrapper.in(MeterDevice::getDeviceId, ids).set(MeterDevice::getNetdeviceIp, ip);
return this.update(updateWrapper);
}
@ -82,7 +104,7 @@ public class MeterDeviceServiceImpl extends ServiceImpl<MeterDeviceMapper, Meter
@Override
public List<Map<String, Object>> getMeterDeviceByCode(String stationId, String systemCode) {
LambdaQueryWrapper<MeterDevice> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(StrUtil.isNotBlank(stationId), MeterDevice::getStationId, stationId).eq(StrUtil.isNotBlank(systemCode), MeterDevice::getSystemcode, systemCode).select(MeterDevice::getDeviceId, MeterDevice::getDeviceName);
queryWrapper.eq(StrUtil.isNotBlank(stationId), MeterDevice::getStationId, stationId).eq(StrUtil.isNotBlank(systemCode), MeterDevice::getSystemcode, systemCode).select(MeterDevice::getDeviceId, MeterDevice::getDeviceName).orderByAsc(MeterDevice::getDeviceCode);
return this.listMaps(queryWrapper);
}
}