Commit d06703a1 authored by wanghao's avatar wanghao

1 测试 501 502 503 端口号

parent 15140a8e
......@@ -104,6 +104,14 @@ public class TStoreyInfoController extends BaseController
return tStoreyInfoService.batchReadingCabinetStatus(fEquipmentCode);
}
/**
* 批量读取寄存器
*/
@GetMapping(value = "/handleReadingHoldingRegister/{ipAndPort}")
public AjaxResult handleReadingHoldingRegister(@PathVariable("ipAndPort") String ipAndPort) {
return tStoreyInfoService.handleReadingHoldingRegister(ipAndPort);
}
/**
* 给所有设备下电
*/
......
......@@ -45,6 +45,8 @@ public interface ITStoreyInfoService
public AjaxResult batchReadingCabinetStatus(String fEquipmentCode);
public AjaxResult handleReadingHoldingRegister(String ipAndPort);
public AjaxResult powerOffAllStore();
public AjaxResult powerOnAllStore();
......
......@@ -11,6 +11,8 @@ import com.zehong.system.domain.TEquipmentInfo;
import com.zehong.system.domain.TStoreyInfo;
import com.zehong.system.mapper.TEquipmentInfoMapper;
import com.zehong.system.mapper.TStoreyInfoMapper;
import com.zehong.system.modbus.business.DeviceStatusReaderAndTimeSetter;
import com.zehong.system.modbus.handler.ModbusResultHandler;
import com.zehong.system.modbus.util.Modbus4jUtils;
import com.zehong.system.service.IRobotArmCommandService;
import com.zehong.system.service.ITStoreyInfoService;
......@@ -44,6 +46,9 @@ public class TStoreyInfoServiceImpl implements ITStoreyInfoService
@Resource
private IRobotArmCommandService robotArmCommandService;
@Resource
private DeviceStatusReaderAndTimeSetter deviceStatusReaderAndTimeSetter;
private final ExecutorService executorService = Executors.newFixedThreadPool(10);
/**
......@@ -317,6 +322,29 @@ public class TStoreyInfoServiceImpl implements ITStoreyInfoService
return AjaxResult.success();
}
@Override
public AjaxResult handleReadingHoldingRegister(String ipAndPort) {
if(StringUtils.isBlank(ipAndPort) || ipAndPort.split("-").length != 2) {
return AjaxResult.error("ip和端口格式错误!!!");
}
String[] split = ipAndPort.split("-");
List<Integer> registerOffset ;
if("501".equals(split[1])) {
registerOffset = Arrays.asList(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27);
} else if("502".equals(split[1])) {
registerOffset = Arrays.asList(28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,49, 50, 51, 52, 53,54);
} else {
registerOffset = Arrays.asList(55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72);
}
ModbusResultHandler modbusResultHandler = new ModbusResultHandler();
deviceStatusReaderAndTimeSetter.startMultiDeviceMonitoring(split[0], Integer.parseInt(split[1]),registerOffset, modbusResultHandler, null);
return null;
}
/**
* 批量读取设备状态
* @param fEquipmentCode f
......
......@@ -97,6 +97,12 @@ export function batchReadingCabinetStatus(fEquipmentCode) {
})
}
export function readingHoldingRegister(ipAndPort) {
return request({
url: '/storey/handleReadingHoldingRegister/' + ipAndPort,
method: 'get'
})
}
export function powerOnAllStore() {
return request({
url: '/storey/powerOnAllStore',
......
......@@ -63,6 +63,16 @@
@click="handleReading"
>批量读取设备状态</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="info"
plain
icon="el-icon-reading"
size="mini"
@click="handleHoldingRegister"
>测试501端口</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
......@@ -236,7 +246,7 @@
import { listStorey, getStorey, delStorey, addStorey, updateStorey,
exportStorey,PowerOn,PowerOutage ,
batchReadingCabinetStatus,powerOnAllStore,powerOffAllStore,
feeding, blanking} from "@/api/storey/storey";
feeding, blanking,readingHoldingRegister} from "@/api/storey/storey";
import {sendHomeCommand, sendStopCommand} from "@/api/robotArm/robotArmCommand";
export default {
......@@ -456,6 +466,20 @@ export default {
this.msgSuccess("删除成功");
}).catch(() => {});
},
// 测试 某个设备的 501,502,503端口号
handleHoldingRegister() {
this.$prompt('请输入ip加端口号 逗号分隔', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
}).then(({ value }) => {
readingHoldingRegister(value).then(response => {
if(response.code === 200) {
this.msgSuccess("msg = " + response.data);
}
})
}).catch(() => {
});
},
handleReading() {
this.$prompt('请输入老化柜编号', '提示', {
confirmButtonText: '确定',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment