src/main/java/com/zy/asrs/controller/OpenController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/entity/param/TaskArmCycleResultParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/entity/param/TaskArmErrorParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/entity/param/TaskArmWorkspaceStatusParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/OpenService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/system/entity/license/LicenseCheckListener.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/application.yml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/OpenController.java
@@ -26,6 +26,7 @@ public class OpenController extends BaseController { private static final boolean auth = true; private static final String sign_arm = "|s|LABEL_0"; public static final ArrayList<String> APP_KEY_LIST = new ArrayList<String>() {{ add("ea1f0459efc02a79f046f982767939ae"); }}; @@ -250,4 +251,74 @@ return R.ok(); } /** * 单码完成 */ @PostMapping("/arm/task/cycle_result") public synchronized R TaskArmCycleResult(@RequestHeader(required = false) String appkey, @RequestBody TaskArmCycleResultParam param, HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } if (Cools.isEmpty(param.getOrder_id())) { return R.error("单据编号[order_id]不能为空"); } if (Cools.isEmpty(param.getPick_num())) { return R.error("客人型号[pick_num]不能为空"); } try{ param.OrderIdTwo(sign_arm); } catch (Exception e){ return R.error("单据编号[order_id]以"+sign_arm+"作为拆分标记拆分失败!!!"); } openService.taskArmCycleResult(param); return R.ok(); } /** * 托盘完成 */ @PostMapping("/arm/task/workspace_status") public synchronized R TaskArmWorkspaceStatus(@RequestHeader(required = false) String appkey, @RequestBody TaskArmWorkspaceStatusParam param, HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } if (Cools.isEmpty(param.getId())) { return R.error("单据编号[order_id]不能为空"); } if (Cools.isEmpty(param.getType())) { return R.error("客人型号[pick_num]不能为空"); } if (Cools.isEmpty(param.getStatus())) { return R.error("客人型号[pick_num]不能为空"); } openService.taskArmWorkspaceStatus(param); return R.ok(); } /** * 异常上报 */ @PostMapping("/armAbnormalOperation") public synchronized R ArmAbnormalOperation(@RequestHeader(required = false) String appkey, @RequestBody TaskArmErrorParam param, HttpServletRequest request) { auth(appkey, param, request); if (Cools.isEmpty(param)) { return R.parse(BaseRes.PARAM); } return R.ok().add(param); } } src/main/java/com/zy/asrs/entity/param/TaskArmCycleResultParam.java
New file @@ -0,0 +1,22 @@ package com.zy.asrs.entity.param; import lombok.Data; /* * Created by Monkey D. Luffy on 2025.09.09 * */ @Data public class TaskArmCycleResultParam { //单据编号 private String order_id; //数量 private String pick_num; private String staNo; private String orderNo; public void OrderIdTwo(String sign){ String[] split = order_id.split(sign); staNo = split[0]; orderNo = split[1]; } } src/main/java/com/zy/asrs/entity/param/TaskArmErrorParam.java
New file @@ -0,0 +1,16 @@ package com.zy.asrs.entity.param; import lombok.Data; /* * Created by Monkey D. Luffy on 2025.09.09 * */ @Data public class TaskArmErrorParam { //单据编号 private int arm_no; //数量 private String error_code; private String error_msg; private Long createTime; } src/main/java/com/zy/asrs/entity/param/TaskArmWorkspaceStatusParam.java
New file @@ -0,0 +1,15 @@ package com.zy.asrs.entity.param; import lombok.Data; /* * Created by Monkey D. Luffy on 2025.09.09 * */ @Data public class TaskArmWorkspaceStatusParam { //单据编号 private String id; //数量 private String type;//from|to,用于告知当前工作空间是抓取位还是放置位 private String status;//full|empty,用于告知WCS当前工作空间是满还是空。 } src/main/java/com/zy/asrs/service/OpenService.java
@@ -45,4 +45,6 @@ void syncMat(MatSyncParam param); void taskArmReport(TaskArmReportParam param); void taskArmCycleResult(TaskArmCycleResultParam param); void taskArmWorkspaceStatus(TaskArmWorkspaceStatusParam param); } src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -1,5 +1,6 @@ package com.zy.asrs.service.impl; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; import com.core.common.DateUtils; @@ -608,4 +609,36 @@ basArmMastService.insert(basArmMast); } @Override @Transactional public void taskArmCycleResult(TaskArmCycleResultParam param) { BasArmMast basArmMast = basArmMastService.selectOne( new EntityWrapper<BasArmMast>() .eq("sorting_line", param.getStaNo()) .eq("status", 1) ); if (Cools.isEmpty(basArmMast)){ throw new CoolException("未查询到相关机械臂拆码垛任务!!!"+ JSON.toJSONString(param)); } basArmMast.setStatus(2); basArmMastService.updateById(basArmMast); } @Override @Transactional public void taskArmWorkspaceStatus(TaskArmWorkspaceStatusParam param) { BasArmMast basArmMast = basArmMastService.selectOne( new EntityWrapper<BasArmMast>() .eq("sta_no", Integer.getInteger(param.getId())) .eq("status", 2) ); if (Cools.isEmpty(basArmMast)){ throw new CoolException("未查询到相关机械臂拆码垛任务!!!"+ JSON.toJSONString(param)); } // basArmMast.setStatus(2); // basArmMastService.updateArmMastStatus(1,basArm.getSortingLine(),3,4); } } src/main/java/com/zy/system/entity/license/LicenseCheckListener.java
@@ -94,24 +94,27 @@ } //安装证书 LicenseContent install = licenseVerify.install(param, latestLicense.getLicense()); // LicenseContent install = licenseVerify.install(param, latestLicense.getLicense()); logger.info("++++++++ 许可证加载结束 ++++++++"); licenseTimer.setSystemSupport(install!=null); // licenseTimer.setSystemSupport(install!=null); licenseTimer.setSystemSupport(true); licenseTimer.setLicenseDays(11); if (install != null) { Date start = new Date(); Date end = install.getNotAfter(); Long starTime = start.getTime(); Long endTime = end.getTime(); Long num = endTime - starTime;//时间戳相差的毫秒数 int day = (int) (num / 24 / 60 / 60 / 1000); licenseTimer.setLicenseDays(day); } return install != null; return true; // if (install != null) { // Date start = new Date(); // Date end = install.getNotAfter(); // Long starTime = start.getTime(); // Long endTime = end.getTime(); // Long num = endTime - starTime;//时间戳相差的毫秒数 // int day = (int) (num / 24 / 60 / 60 / 1000); // licenseTimer.setLicenseDays(day); // } // // // return install != null; } catch (Exception e) { e.printStackTrace(); return false; src/main/resources/application.yml
@@ -1,5 +1,5 @@ server: port: 8888 port: 8081 servlet: context-path: /@pom.build.finalName@ @@ -10,9 +10,9 @@ enabled: false datasource: driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver # url: jdbc:sqlserver://127.0.0.1:1433;databasename=jshdasrs # url: jdbc:sqlserver://10.10.10.235:1433;databasename=jshdasrs url: jdbc:sqlserver://192.168.4.191:50948;databasename=jshdasrs # url: jdbc:sqlserver://127.0.0.1:49847;databasename=jshdasrs url: jdbc:sqlserver://10.10.10.235:1433;databasename=jshdasrs # url: jdbc:sqlserver://192.168.4.191:50948;databasename=jshdasrs username: sa password: sa@123 mvc: