From 5cebe0369cbacc9ded99096aef358459a8059a81 Mon Sep 17 00:00:00 2001 From: liuhanqing Date: Wed, 16 Jul 2025 16:02:25 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=82=E5=BC=8Fctu=E5=85=A5=E5=BA=93=20?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/api/controller/AgvController.java | 12 +-- .../GenAgvSchedulingTaskRequest.java | 2 +- .../com/ruoyi/api/service/IApiService.java | 4 +- .../api/service/impl/ApiServiceImpl.java | 101 +++++++++--------- .../service/impl/RequestLogServiceImpl.java | 4 +- .../main/java/com/ruoyi/common/Constant.java | 5 +- .../com/ruoyi/schedule/ScheduleThread.java | 10 +- .../ruoyi/schedule/plcRead/ssj/PlcRead.java | 4 +- .../scheduleTask/ssj/bs/BsInSsjThread.java | 57 +++++----- .../mapper/device/AgvQueueMapper.xml | 2 + .../framework/config/SecurityConfig.java | 4 +- 11 files changed, 108 insertions(+), 97 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/controller/AgvController.java b/ruoyi-admin/src/main/java/com/ruoyi/api/controller/AgvController.java index 00c1632..97cc9e0 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/controller/AgvController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/controller/AgvController.java @@ -40,9 +40,9 @@ public class AgvController extends BaseController { * @param mydoJob * @return */ - @PostMapping("/pushOutMydoJob") - public AjaxResult PushOutMydoJob(@RequestBody MydoJob mydoJob) { - return apiService.PushOutMydoJob(mydoJob); + @PostMapping("/receiveOutMydoJob") + public AjaxResult receiveOutMydoJob(@RequestBody MydoJob mydoJob) { + return apiService.receiveOutMydoJob(mydoJob); } /** @@ -50,9 +50,9 @@ public class AgvController extends BaseController { * @param genAgvSchedulingTaskRequest * @return */ - @PostMapping("/agvMoveJob") - public AjaxResult agvMoveJob(@RequestBody GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest) { - return apiService.agvMoveJob(genAgvSchedulingTaskRequest); + @PostMapping("/receiveAgvMoveJob") + public AjaxResult receiveAgvMoveJob(@RequestBody GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest) { + return apiService.receiveAgvMoveJob(genAgvSchedulingTaskRequest); } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/domain/agv/genAgvSchedulingTask/GenAgvSchedulingTaskRequest.java b/ruoyi-admin/src/main/java/com/ruoyi/api/domain/agv/genAgvSchedulingTask/GenAgvSchedulingTaskRequest.java index 5a12700..46bea8d 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/domain/agv/genAgvSchedulingTask/GenAgvSchedulingTaskRequest.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/domain/agv/genAgvSchedulingTask/GenAgvSchedulingTaskRequest.java @@ -23,7 +23,7 @@ public class GenAgvSchedulingTaskRequest { * 请求时间 * 格式: “yyyy-MM-dd HH:mm:ss” */ - private String reqTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")).toString(); + private String reqTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); /** * 客户端编号 * 客户端编号,如PDA,HCWMS等 diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/service/IApiService.java b/ruoyi-admin/src/main/java/com/ruoyi/api/service/IApiService.java index c7c7de0..5342f8f 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/service/IApiService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/service/IApiService.java @@ -46,7 +46,7 @@ public interface IApiService * WMS出库任务推送 * @param mydoJob */ - public AjaxResult PushOutMydoJob(MydoJob mydoJob); + public AjaxResult receiveOutMydoJob(MydoJob mydoJob); /** * 取消AGV任务 @@ -83,7 +83,7 @@ public interface IApiService * @param genAgvSchedulingTaskRequest * @return */ - AjaxResult agvMoveJob(GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest); + AjaxResult receiveAgvMoveJob(GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest); RequestLog finishMydoJob(String agvFinishUrl, String point, Map param); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ApiServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ApiServiceImpl.java index 182daf6..63b3e9f 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ApiServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/ApiServiceImpl.java @@ -31,6 +31,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -54,10 +55,15 @@ public class ApiServiceImpl implements IApiService { @Override public MydoJob requestEnter(MydoJob mydoJob) { - RequestLog requestLog = requestLogService.getRequestLog(GET_MYDOJOB_URL, "请求入库", JSONUtil.toJsonStr(mydoJob)); - String responseBody = requestLog.getResponseBody(); - InterfaceReceive bean = JSONUtil.toBean(responseBody, InterfaceReceive.class); - return JSONUtil.toBean(JSONUtil.toJsonStr(bean.getData()), MydoJob.class); + RequestLog requestLog = requestLogService.getRequestLog(REQUEST_ENTER, "请求入库", JSONUtil.toJsonStr(mydoJob)); + if ("1".equals(requestLog.getIsSuccessful())) { + String responseBody = requestLog.getResponseBody(); + InterfaceReceive bean = JSONUtil.toBean(responseBody, InterfaceReceive.class); + return JSONUtil.toBean(JSONUtil.toJsonStr(bean.getData()), MydoJob.class); + } else { + return null; + } + } @Override @@ -78,7 +84,7 @@ public class ApiServiceImpl implements IApiService { @Transactional(rollbackFor = Exception.class) public AgvCallbackResponse agvCallback(AgvCallbackRequest request) { RequestLog requestLog = requestLogService.getRequestLog(JSONUtil.toJsonStr(request), "AGV任务执行通知"); - requestLog.setRequestUrl("http://10.214.18.61:8089/external/log/outStockJob"); + //requestLog.setRequestUrl("http://10.214.18.61:8089/external/log/outStockJob"); AgvCallbackResponse response = new AgvCallbackResponse(0, "成功", ""); try { agvCallbackInfo(request); @@ -97,12 +103,12 @@ public class ApiServiceImpl implements IApiService { } @Override - public AjaxResult agvMoveJob(GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest) { + public AjaxResult receiveAgvMoveJob(GenAgvSchedulingTaskRequest genAgvSchedulingTaskRequest) { //todo 生成agvQueue队列 AgvQueue agvQueue = new AgvQueue(); agvQueueService.insertAgvQueue(agvQueue); GenAgvSchedulingTaskResponse genAgvSchedulingTaskResponse = genAgvSchedulingTask(genAgvSchedulingTaskRequest); - if (genAgvSchedulingTaskResponse.getCode() == 0){ + if (genAgvSchedulingTaskResponse.getCode() == 0) { return AjaxResult.success(); } return AjaxResult.error(genAgvSchedulingTaskResponse.getMessage()); @@ -141,55 +147,52 @@ public class ApiServiceImpl implements IApiService { Map param = new HashMap<>(); param.put("wmsType", agvQueue.getWmsTaskType()); - if ("1".equals(agvQueue.getWmsTaskType()) || "2".equals(agvQueue.getWmsTaskType())){ - //通知wms 任务结束 - MydoJob mydoJobParam = new MydoJob(); - mydoJobParam.setTaskNo(agvQueue.getWmsTaskNo()); - mydoJobParam.setTrayCode(agvQueue.getWmsTraycode()); - List mydoJobList = getMydoJobList(mydoJobParam); - if (CollUtil.isNotEmpty(mydoJobList)) { - MydoJob mydoJob = mydoJobList.get(0); - param.put("taskNo", agvQueue.getWmsTaskNo()); - param.put("trayCode", agvQueue.getWmsTraycode()); - if (Convert.toInt(mydoJob.getInOrOut()) < 20) { - //入库任务 暂无特殊逻辑 - RequestLog requestLog = requestLogService.getRequestLog(AGV_FINISH_URL, "agv任务完成", JSONUtil.toJsonStr(param)); - if ("1".equals(requestLog.getIsSuccessful())){ - //插入历史 - agvQueueService.insertHistory(agvQueue.getReqCode()); - //删除队列 - agvQueueService.deleteAgvQueueByReqCode(agvQueue.getReqCode()); - log.info("【AGV入库任务结束】任务号:{}", taskCode); - } - } else { - //写入对应的plc 任务号 - DeviceSsj deviceSsj = PlcRead.deviceMap.get(mydoJob.getExitId()); - if (ObjUtil.isNotNull(deviceSsj)){ - SendData rwh = new SendData(Tools.DINT, mydoJob.getTaskNo()); - byte[] bytes = Tools.sendData(rwh); - //写入信息 取货完成 - int i = PlcRead.WriteToSSJ(deviceSsj.getPlcDbWriteAddress(), bytes); - if (i==1){ - //插入历史 - agvQueueService.insertHistory(agvQueue.getReqCode()); - //删除队列 - agvQueueService.deleteAgvQueueByReqCode(agvQueue.getReqCode()); - log.info("【AGV出库任务结束】任务号:{}", taskCode); - } - } - } - } else { - log.info("【AGV任务结束】任务号:{},wms不存在对应的作业", taskCode); + if ("1".equals(agvQueue.getWmsTaskType())) { + param.put("taskNo", agvQueue.getWmsTaskNo()); + param.put("trayCode", agvQueue.getWmsTraycode()); + //入库任务 暂无特殊逻辑 + RequestLog requestLog = requestLogService.getRequestLog(AGV_FINISH_URL, "agv任务完成", JSONUtil.toJsonStr(param)); + if ("1".equals(requestLog.getIsSuccessful())) { + agvQueue.setFinishTime(DateUtil.formatDateTime(new Date())); + agvQueueService.updateAgvQueue(agvQueue); + //插入历史 + agvQueueService.insertHistory(agvQueue.getReqCode()); + //删除队列 + agvQueueService.deleteAgvQueueByReqCode(agvQueue.getReqCode()); + log.info("【AGV入库任务结束】任务号:{}", taskCode); + } - }else if ("3".equals(agvQueue.getWmsTaskType())){ + } else if ("2".equals(agvQueue.getWmsTaskType())) { + //通知wms 任务结束 + param.put("taskNo", agvQueue.getWmsTaskNo()); + param.put("trayCode", agvQueue.getWmsTraycode()); + //写入对应的plc 任务号 + DeviceSsj deviceSsj = PlcRead.deviceMap.get(agvQueue.getPositionCode2()); + if (ObjUtil.isNotNull(deviceSsj)) { + SendData rwh = new SendData(Tools.DINT, agvQueue.getWmsTaskNo()); + byte[] bytes = Tools.sendData(rwh); + //写入信息 取货完成 + int i = PlcRead.WriteToSSJ(deviceSsj.getPlcDbWriteAddress(), bytes); + if (i == 1) { + agvQueue.setFinishTime(DateUtil.formatDateTime(new Date())); + agvQueueService.updateAgvQueue(agvQueue); + //插入历史 + agvQueueService.insertHistory(agvQueue.getReqCode()); + //删除队列 + agvQueueService.deleteAgvQueueByReqCode(agvQueue.getReqCode()); + log.info("【AGV出库任务结束】任务号:{}", taskCode); + } + } + + } else if ("3".equals(agvQueue.getWmsTaskType())) { param.put("positionCode1", agvQueue.getPositionCode1()); param.put("positionCode2", agvQueue.getPositionCode2()); param.put("containerCode", agvQueue.getWmsTraycode()); //绑定点位和料架 RequestLog requestLog = requestLogService.getRequestLog(AGV_FINISH_URL, "agv任务完成", JSONUtil.toJsonStr(param)); - if ("1".equals(requestLog.getIsSuccessful())){ + if ("1".equals(requestLog.getIsSuccessful())) { //插入历史 agvQueueService.insertHistory(agvQueue.getReqCode()); //删除队列 @@ -226,7 +229,7 @@ public class ApiServiceImpl implements IApiService { } @Override - public AjaxResult PushOutMydoJob(MydoJob mydoJob) { + public AjaxResult receiveOutMydoJob(MydoJob mydoJob) { AgvQueue agvQueue = new AgvQueue(); String reqCode = IdUtil.fastSimpleUUID(); agvQueue.setReqCode(reqCode); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/RequestLogServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/RequestLogServiceImpl.java index df85625..27a7a18 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/RequestLogServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/api/service/impl/RequestLogServiceImpl.java @@ -108,7 +108,7 @@ public class RequestLogServiceImpl implements IRequestLogService * @return requestLog */ @Override - public RequestLog getRequestLog(String url, String param, String endPoint) { + public RequestLog getRequestLog(String url, String endPoint,String param) { RequestLog requestLog = new RequestLog(); Date requestTime = new Date(); requestLog.setRequestTime(DateUtil.format(requestTime, "yyyy-MM-dd HH:mm:ss")); @@ -124,7 +124,7 @@ public class RequestLogServiceImpl implements IRequestLogService requestLog.setResponseBody(resStr); InterfaceReceive bean = JSONUtil.toBean(resStr, InterfaceReceive.class); Date responseTime =new Date(); - if (bean.getCode() == 0) { + if (bean.getCode() == 200) { requestLog.setResponseTime(DateUtil.format(responseTime, "yyyy-MM-dd HH:mm:ss")); requestLog.setResponseStatus("1"); requestLog.setDuration(Convert.toStr(DateUtil.between(requestTime, responseTime, DateUnit.MS))); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/common/Constant.java b/ruoyi-admin/src/main/java/com/ruoyi/common/Constant.java index 47abde7..65efa69 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/common/Constant.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/common/Constant.java @@ -19,9 +19,10 @@ public class Constant { public static final String BASEURL_AGV = BASEURL + "/rcms-dps/rest/queryAgvStatus/"; - public static final String GET_MYDOJOB_URL = "http://127.0.0.1:8081/rcms-dps/rest/queryAgvStatus/"; + public static final String GET_MYDOJOB_URL = "http://localhost:8080/api2wms/inJob"; + public static final String REQUEST_ENTER = "http://localhost:8080/api2wms/requestEnter"; public static final String UPDATE_MYDOJOB_URL = "http://127.0.0.1:8081/rcms-dps/rest/queryAgvStatus/"; - public static final String AGV_FINISH_URL = "http://127.0.0.1:8081/rcms-dps/rest/queryAgvStatus/"; + public static final String AGV_FINISH_URL = "http://localhost:8080/api2wms/jobFinish"; public static final String CONTINUE_TASK_URL = "http://127.0.0.1:8081/rcms-dps/rest/queryAgvStatus/"; public static final String CANCEL_TASK_URL = "http://127.0.0.1:8081/rcms-dps/rest/queryAgvStatus/"; public static final String GEN_AGV_SCHEDULING_TASK = "http://127.0.0.1:8081/rcms-dps/rest/queryAgvStatus/"; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/ScheduleThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/ScheduleThread.java index c3b9399..72cc161 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/ScheduleThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/ScheduleThread.java @@ -78,15 +78,15 @@ public class ScheduleThread { //臂式入库线程调度 bsInSsjThread.getThread().start(); //剪式入库线程调度 - jsInSsjThread.getThread().start(); + //jsInSsjThread.getThread().start(); //臂式出库线程调度 - bsOutSsjThread.getThread().start(); + //bsOutSsjThread.getThread().start(); //剪式出库线程调度 - jsOutSsjThread.getThread().start(); + //jsOutSsjThread.getThread().start(); //臂式出库到位线程调度-wms电子屏交互 - bsPickSsjThread.getThread().start(); + //bsPickSsjThread.getThread().start(); //剪上出库到位线程调度-wms电子屏交互 - jsPickSsjThread.getThread().start(); + //jsPickSsjThread.getThread().start(); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/plcRead/ssj/PlcRead.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/plcRead/ssj/PlcRead.java index 218b864..095d605 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/plcRead/ssj/PlcRead.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/plcRead/ssj/PlcRead.java @@ -226,7 +226,7 @@ public class PlcRead implements Runnable { break; case "G1003": // 处理 G1003 - readAddress = "DB501." + baseOffset; + readAddress = "DB501.0"; writeAddress = ""; break; case "G1009": @@ -479,7 +479,7 @@ public class PlcRead implements Runnable { ssjDevice.setDw(ParseUtil.optInt(2, ddsx1)); ssjDevice.setRkqq(ParseUtil.optInt(4, ddsx1)); ssjDevice.setTaskNo(ParseUtil.optDInt(6, ddsx1)); - ssjDevice.setTrayCode(ParseUtil.optString(10, ddsx1)); + ssjDevice.setTrayCode(ParseUtil.optString(12, ddsx1)); } } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/bs/BsInSsjThread.java b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/bs/BsInSsjThread.java index 3c99adb..8cbe921 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/bs/BsInSsjThread.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/schedule/scheduleTask/ssj/bs/BsInSsjThread.java @@ -61,10 +61,10 @@ public class BsInSsjThread implements Runnable { @Override public void run() { init(); - while (isRun){ + while (isRun) { for (String type : ssjCodeList.keySet()) { - switch ( type){ + switch (type) { case "ssjIn": //正常入库 for (String ssjCode : ssjCodeList.get(type)) { @@ -75,7 +75,7 @@ public class BsInSsjThread implements Runnable { log.error("设备不存在 ssjCode{}", ssjCode); } } catch (RuntimeException e) { - log.error(e.getMessage(),e); + log.error(e.getMessage(), e); } } @@ -84,9 +84,9 @@ public class BsInSsjThread implements Runnable { //流利架 空料箱入库 for (String lljCode : ssjCodeList.get(type)) { try { - inLljDispatch(lljCode); + //inLljDispatch(lljCode); } catch (RuntimeException e) { - log.error(e.getMessage(),e); + log.error(e.getMessage(), e); } } @@ -105,6 +105,7 @@ public class BsInSsjThread implements Runnable { /** * 流利架空料箱入库 + * * @param lljCode */ private void inLljDispatch(String lljCode) { @@ -136,8 +137,8 @@ public class BsInSsjThread implements Runnable { apiService.updateMydoJob(mydoJob); } } - }else { - if (ObjUtil.isNull(mydoJob)){ + } else { + if (ObjUtil.isNull(mydoJob)) { log.info("无入库库作业 lljCode:{}", lljCode); } if ("6".equals(mydoJob.getExecutionPhase())) { @@ -148,27 +149,26 @@ public class BsInSsjThread implements Runnable { /** * 输送线入库 + * * @param inSsjDevice */ public void inDispatch(DeviceSsj inSsjDevice) { //如果入库请求1 并且 托盘码不为空 if (inSsjDevice.getRkqq() == 1 && StrUtil.isNotEmpty(inSsjDevice.getTrayCode())) { - //根据入口,查询对应的入库作业 - MydoJob mydoJobParam = new MydoJob(); - mydoJobParam.setStatus("1"); - mydoJobParam.setTrayCode(inSsjDevice.getTrayCode()); - MydoJob mydoJob = apiService.requestEnter(mydoJobParam); - if (ObjUtil.isNotNull(mydoJob) && !"6".equals(mydoJob.getExecutionPhase())){ - //通知wms 当前料箱的入库口 - mydoJob.setEntranceId(inSsjDevice.getDeviceCode()); - apiService.updateMydoJob(mydoJob); - //判断是否生成队列 - AgvQueue agvQueueParam = new AgvQueue(); - agvQueueParam.setWmsTaskNo(mydoJob.getTaskNo()); - agvQueueParam.setPositionCode1(inSsjDevice.getDeviceCode()); - agvQueueParam.setStatus("0"); - List agvQueues = agvQueueService.selectAgvQueueList(agvQueueParam); - if (CollUtil.isEmpty(agvQueues)) { + //判断是否生成队列 + AgvQueue agvQueueParam = new AgvQueue(); + agvQueueParam.setWmsTraycode(inSsjDevice.getTrayCode()); + agvQueueParam.setStatus("0"); + List agvQueues = agvQueueService.selectAgvQueueList(agvQueueParam); + if (CollUtil.isEmpty(agvQueues)) { + //根据入口,查询对应的入库作业 + MydoJob mydoJobParam = new MydoJob(); + mydoJobParam.setStatus("1"); + mydoJobParam.setTrayCode(inSsjDevice.getTrayCode()); + mydoJobParam.setEntranceId(inSsjDevice.getDeviceCode()); + MydoJob mydoJob = apiService.requestEnter(mydoJobParam); + if (ObjUtil.isNotNull(mydoJob)) { + //生成agv队列 AgvQueue agvQueue = createAgvQueue(inSsjDevice.getDeviceCode(), mydoJob); //请求任务生成 @@ -179,13 +179,11 @@ public class BsInSsjThread implements Runnable { agvQueue.setStatus("1"); agvQueueService.updateAgvQueue(agvQueue); log.info("向CTU下入库库作业"); - //修改mydoJob执行阶段 - mydoJob.setExecutionPhase("6"); - apiService.updateMydoJob(mydoJob); + } + } } - } } @@ -200,6 +198,7 @@ public class BsInSsjThread implements Runnable { //生成ctu执行队列 AgvQueue agvQueue = new AgvQueue(); String reqCode = IdUtil.fastSimpleUUID(); + String taskCode = IdUtil.fastSimpleUUID(); agvQueue.setReqCode(reqCode); agvQueue.setReqTime(DateUtil.formatDateTime(DateUtil.date())); agvQueue.setAgvType("CTU"); @@ -215,6 +214,8 @@ public class BsInSsjThread implements Runnable { agvQueue.setWmsTraycode(mydoJob.getTrayCode()); agvQueue.setWmsTaskNo(mydoJob.getTaskNo()); agvQueue.setStatus("0"); + agvQueue.setTaskCode(taskCode); + agvQueue.setWmsTaskType("1"); agvQueueService.insertAgvQueue(agvQueue); return agvQueue; } @@ -239,6 +240,8 @@ public class BsInSsjThread implements Runnable { genAgvSchedulingTaskRequest.setGroupId(mydoJob.getTaskNo()); genAgvSchedulingTaskRequest.setAgvTyp("CTU"); genAgvSchedulingTaskRequest.setPositionSelStrategy("0"); + genAgvSchedulingTaskRequest.setTaskCode(agvQueue.getTaskCode()); + return apiService.genAgvSchedulingTask(genAgvSchedulingTaskRequest); } } diff --git a/ruoyi-admin/src/main/resources/mapper/device/AgvQueueMapper.xml b/ruoyi-admin/src/main/resources/mapper/device/AgvQueueMapper.xml index d9936d9..f9e4d00 100644 --- a/ruoyi-admin/src/main/resources/mapper/device/AgvQueueMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/device/AgvQueueMapper.xml @@ -81,6 +81,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" wms_task_no, status, task_code, + wms_task_type, #{reqCode}, @@ -100,6 +101,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{wmsTaskNo}, #{status}, #{taskCode}, + #{wmsTaskType}, diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java index d1ee224..17b1797 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java @@ -114,8 +114,10 @@ public class SecurityConfig requests.antMatchers("/login", "/register", "/captchaImage").permitAll() // 静态资源,可匿名访问 .antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll() - .antMatchers("/swagger-ui.html","/changeLanguage", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**","/pda/**").permitAll() + .antMatchers("/swagger-ui.html", "/changeLanguage", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**", "/pda/**").permitAll() .antMatchers("/device/api/**").permitAll() + .antMatchers("/device/operation/**").permitAll() + .antMatchers("/agv/api/**").permitAll() // 除上面外的所有请求全部需要鉴权认证 .anyRequest().authenticated(); })