From a14d14287e3502a46e2894770b5d2d9df6dd8e1f Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期二, 20 九月 2022 14:35:53 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/controller/SiteController.java | 37 ++++++++++++++++++ src/main/webapp/views/pipeline.html | 40 ++++++++++--------- src/main/java/com/zy/core/thread/SiemensDevpThread.java | 4 + 3 files changed, 61 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/SiteController.java b/src/main/java/com/zy/asrs/controller/SiteController.java index 9f78842..122b07c 100644 --- a/src/main/java/com/zy/asrs/controller/SiteController.java +++ b/src/main/java/com/zy/asrs/controller/SiteController.java @@ -16,6 +16,7 @@ import com.zy.core.model.protocol.StaProtocol; import com.zy.core.properties.SlaveProperties; import com.zy.core.DevpThread; +import com.zy.core.thread.SiemensDevpThread; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -37,6 +38,42 @@ @Autowired private BasDevpService basDevpService; + @GetMapping("/io/mode/info/site") + @ManagerAuth(memo = "鍏呯數妯″紡") + public R ioMode(){ + List<Map<String, Object>> res = new ArrayList<>(); + for (DevpSlave devp : slaveProperties.getDevp()) { + SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); + Map<String, Object> map1 = new HashMap<>(); + map1.put("floor", 1); + map1.put("modeVal", devpThread.charge0); + map1.put("modeDesc", devpThread.charge0?"鍏呯數涓�":"鍏抽棴"); + res.add(map1); + Map<String, Object> map2 = new HashMap<>(); + map2.put("floor", 2); + map2.put("modeVal", devpThread.charge1); + map2.put("modeDesc", devpThread.charge1?"鍏呯數涓�":"鍏抽棴"); + res.add(map2); + Map<String, Object> map3 = new HashMap<>(); + map3.put("floor", 3); + map3.put("modeVal", devpThread.charge2); + map3.put("modeDesc", devpThread.charge2?"鍏呯數涓�":"鍏抽棴"); + res.add(map3); + } + return R.ok().add(res); + } + + @PostMapping("/io/mode/action/site") + @ManagerAuth(memo = "鍏呯數鎺у埗") + public R ioModeAction(@RequestParam("floor") Integer floor, @RequestParam("charge") Boolean charge){ + for (DevpSlave devp : slaveProperties.getDevp()) { + SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); + boolean res = devpThread.charge(floor - 1, charge); + return res?R.ok():R.error(); + } + return R.ok(); + } + @PostMapping("/table/site") @ManagerAuth(memo = "绔欑偣淇℃伅琛�") public R siteTable(){ diff --git a/src/main/java/com/zy/core/thread/SiemensDevpThread.java b/src/main/java/com/zy/core/thread/SiemensDevpThread.java index 10463f9..93566d9 100644 --- a/src/main/java/com/zy/core/thread/SiemensDevpThread.java +++ b/src/main/java/com/zy/core/thread/SiemensDevpThread.java @@ -268,11 +268,13 @@ * @param index 鍏呯數妗╁簭鍙� 0 寮�濮� * @param open true 寮�濮嬪厖鐢碉紱false 缁撴潫鍏呯數 */ - public void charge(int index, boolean open) { + public boolean charge(int index, boolean open) { OperateResult write = siemensS7Net.Write("DB102.50." + index + 3, open); if (!write.IsSuccess) { log.error("杈撻�佺嚎plc缂栧彿={} {}鍙峰厖鐢垫々{}鎺у埗澶辫触", slave.getId(), index + 1, open?"鎵撳紑":"鍏抽棴"); + return false; } + return true; } @Override diff --git a/src/main/webapp/views/pipeline.html b/src/main/webapp/views/pipeline.html index 8361771..8ab209f 100644 --- a/src/main/webapp/views/pipeline.html +++ b/src/main/webapp/views/pipeline.html @@ -215,26 +215,28 @@ if (ioModeData != null && ioModeData.length > 1) { ioModeData.forEach(function(e) { if (e.floor === Number(floor)) { - if (e.modeVal === 3 || e.modeVal === 4) { - layer.confirm('纭畾鍒囨崲涓哄叆搴撴ā寮忓悧锛�',function () { - $.ajax({ - url: baseUrl+ "/site/io/mode/action/site", - headers: {'token': localStorage.getItem('token')}, - data: {floor: e.floor}, - method: 'POST', - success: function (res) { - if (res.code === 200){ - layer.msg("鏆傛椂涓嶈兘鍒囨崲锛�", {icon: 1}) - } else if (res.code === 403){ - window.location.href = baseUrl+"/login"; - } else { - console.log(res.msg); - } + console.log() + layer.confirm('纭畾鍒囨崲鍏呯數鐘舵�佸悧锛�',function () { + $.ajax({ + url: baseUrl+ "/site/io/mode/action/site", + headers: {'token': localStorage.getItem('token')}, + data: { + floor: e.floor, + charge: !e.modeVal + }, + method: 'POST', + success: function (res) { + if (res.code === 200){ + layer.msg(res.msg, {icon: 1}) + } else if (res.code === 403){ + window.location.href = baseUrl+"/login"; + } else { + console.log(res.msg); } - }); - layer.closeAll(); - }) - } + } + }); + layer.closeAll(); + }) } }); } -- Gitblit v1.9.1