src/main/java/com/zy/asrs/controller/ConsoleController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/controller/OpenController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/task/TaskLogScheduler.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/webapp/views/index.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/ConsoleController.java
@@ -38,6 +38,8 @@ import com.zy.core.thread.BarcodeThread; import com.zy.core.thread.ScaleThread; import com.zy.core.thread.SiemensCrnThread; import com.zy.system.entity.Config; import com.zy.system.service.ConfigService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -70,6 +72,8 @@ private DeviceErrorService deviceErrorService; @Autowired private BasCrnpService basCrnpService; @Autowired private ConfigService configService; @PostMapping("/system/running/status") @ManagerAuth(memo = "系统运行状态") @@ -96,6 +100,48 @@ return R.ok().add(Cools.add("status", SystemProperties.WCS_RUNNING_STATUS.get())); } @GetMapping("/switchDemo") public R switchDemo() { //切换演示模式 Config demoEnableConfig = configService.selectByCode("demoEnable"); if(demoEnableConfig == null){ return R.error("演示模式参数不存在"); } HashMap<String, Object> map = new HashMap<>(); if (demoEnableConfig.getValue().equals("true")) { //开启状态,变更关闭 demoEnableConfig.setValue("false"); configService.updateById(demoEnableConfig); map.put("status", false); }else { //关闭状态,变更开启 demoEnableConfig.setValue("true"); configService.updateById(demoEnableConfig); map.put("status", true); } return R.ok().add(map); } @GetMapping("/getDemoStatus") public R getDemoStatus() { //切换演示模式 Config demoEnableConfig = configService.selectByCode("demoEnable"); if(demoEnableConfig == null){ return R.error("演示模式参数不存在"); } HashMap<String, Object> map = new HashMap<>(); boolean status = false; if(demoEnableConfig.getValue().equals("true")){ status = true; } map.put("status", status); return R.ok().add(map); } /****************************************************************/ /************************** 实时数据 ******************************/ /****************************************************************/ src/main/java/com/zy/asrs/controller/OpenController.java
@@ -12,9 +12,11 @@ import com.zy.asrs.entity.param.*; import com.zy.asrs.service.*; import com.zy.asrs.utils.Utils; import com.zy.common.utils.HttpHandler; import com.zy.common.web.BaseController; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; @@ -48,6 +50,11 @@ @Autowired private BasCrnErrorService basCrnErrorService; @Value("${agv.url}") private String agvUrl; @Value("${agv.bindPodAndBerth}") private String bindPodAndBerth; private static final boolean auth = true; public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{ @@ -65,8 +72,46 @@ return R.error("任务不存在"); } if (taskWrk.getTargetPoint().equals("0900601")) { HashMap<String, Object> requestParam = new HashMap<>(); int nextInt = new Random().nextInt(100); requestParam.put("reqCode", taskWrk.getTaskNo() + "-" + nextInt); requestParam.put("podCode", param.get("podCode")); requestParam.put("positionCode", taskWrk.getTargetPoint()); requestParam.put("indBind", 0); String response = null; boolean requestStatus = false; try { log.info("WCS解绑AGV货架={}", taskWrk); response = new HttpHandler.Builder() .setUri(agvUrl) .setPath(bindPodAndBerth) .setJson(JSON.toJSONString(requestParam)) .build() .doPost(); JSONObject jsonObject = JSON.parseObject(response); if (jsonObject.get("code").equals("0")) { requestStatus = true; } } catch (Exception e) { log.error("WCS派发任务给AGV失败{},返回值={}", taskWrk, response); } finally { apiLogService.save("WCS派发任务给AGV" , agvUrl + bindPodAndBerth , null , "127.0.0.1" , JSON.toJSONString(requestParam) , response , requestStatus ); } } taskWrk.setStatus(TaskStatusType.COMPLETE.id); taskWrk.setModiTime(new Date()); taskWrk.setBarcode(param.get("podCode").toString()); taskWrkService.updateById(taskWrk); return R.ok(); } src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -198,6 +198,7 @@ taskWrk.setIoPri(100);//优先级 taskWrk.setStartPoint(locMast1.getLocNo()); taskWrk.setTargetPoint("101");//终点 taskWrk.setBarcode(locMast1.getBarcode()); boolean result = taskWrkService.insert(taskWrk); locMast1.setLocSts("R"); @@ -257,6 +258,7 @@ taskWrk.setOriginStartPoint("1"); taskWrk.setOriginTargetPoint(String.valueOf(Utils.getLev(locMast1.getLocNo()))); taskWrk.setTargetPoint(locMast1.getLocNo());//终点 taskWrk.setBarcode(locMast.getBarcode()); boolean result = taskWrkService.insert(taskWrk); locMast1.setLocSts("S"); src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -127,6 +127,7 @@ taskWrk.setIoType(4);//AGV搬运 taskWrk.setStartPoint(param.getOriginPoint());//取货点 taskWrk.setTargetPoint(param.getTargetPoint());//放货点 taskWrk.setBarcode(startLocMast.getBarcode()); boolean insert = taskWrkService.insert(taskWrk); if (!insert) { src/main/java/com/zy/asrs/task/TaskLogScheduler.java
@@ -122,6 +122,7 @@ //更新源库位状态为在库 LocMast locMast = locMastService.selectByLocNo("0900601"); locMast.setLocSts("F"); locMast.setBarcode(taskWrk.getBarcode()); locMastService.updateById(locMast); } @@ -144,6 +145,7 @@ //更新源库状态为在库 LocMast locMast2 = locMastService.selectByLocNo(taskWrk.getStartPoint()); locMast2.setLocSts("F"); locMast2.setBarcode(taskWrk.getBarcode()); locMastService.updateById(locMast2); taskWrk.setModiTime(now);//操作时间 @@ -153,6 +155,7 @@ //更新源库位状态为在库 LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint()); locMast.setLocSts("F"); locMast.setBarcode(taskWrk.getBarcode()); locMastService.updateById(locMast); //更新目标库状态为空库位 src/main/resources/application.yml
@@ -72,4 +72,5 @@ agv: url: 10.10.20.160:8181 applyTask: /rcms/services/rest/hikRpcService/genAgvSchedulingTask applyTask: /rcms/services/rest/hikRpcService/genAgvSchedulingTask bindPodAndBerth: /rcms/services/rest/hikRpcService/bindPodAndBerth src/main/webapp/views/index.html
@@ -43,6 +43,9 @@ <!-- <li class="layui-nav-item" lay-unselect>--> <!-- <a ew-event="note" title="便签"><i class="layui-icon layui-icon-note"></i></a>--> <!-- </li>--> <li class="layui-nav-item" lay-unselect id="demoButton"> <div style="color: red;" id="demoText">演示模式-已关闭</div> </li> <li class="layui-nav-item" lay-unselect id="licenseShow" style="display: none;user-select: none;"> <div style="color: red;">许可证有效期:<span id="licenseDays">29</span>天</div> </li> @@ -121,6 +124,48 @@ } $.ajax({ url: baseUrl + "/console/getDemoStatus", headers: {'token': localStorage.getItem('token')}, method: 'GET', success: function (res) { if (res.code === 200) { let data = res.data; if (data.status) { $("#demoText").text("演示模式-运行中") }else { $("#demoText").text("演示模式-已关闭") } } else if (res.code === 403) { top.location.href = baseUrl + "/login"; } else { layer.msg(res.msg, {icon: 2}); } } }); $("#demoButton").on("click",() => { $.ajax({ url: baseUrl + "/console/switchDemo", headers: {'token': localStorage.getItem('token')}, method: 'GET', success: function (res) { if (res.code === 200) { let data = res.data; if (data.status) { $("#demoText").text("演示模式-运行中") }else { $("#demoText").text("演示模式-已关闭") } } else if (res.code === 403) { top.location.href = baseUrl + "/login"; } else { layer.msg(res.msg, {icon: 2}); } } }); }) $.ajax({ url: baseUrl + "/menu/auth", headers: {'token': localStorage.getItem('token')}, method: 'POST',