定时任务:发送任务给wcs。

This commit is contained in:
梁州 2025-03-01 19:55:02 +08:00
parent d02d14c3d3
commit 3d82800c17
3 changed files with 70 additions and 71 deletions

View File

@ -50,10 +50,10 @@
</dependency> </dependency>
<!-- 定时任务--> <!-- 定时任务-->
<dependency> <!-- <dependency>-->
<groupId>com.ruoyi</groupId> <!-- <groupId>com.ruoyi</groupId>-->
<artifactId>ruoyi-quartz</artifactId> <!-- <artifactId>ruoyi-quartz</artifactId>-->
</dependency> <!-- </dependency>-->
<!-- 代码生成--> <!-- 代码生成-->
<dependency> <dependency>

View File

@ -38,6 +38,12 @@
<groupId>com.ruoyi</groupId> <groupId>com.ruoyi</groupId>
<artifactId>ruoyi-system</artifactId> <artifactId>ruoyi-system</artifactId>
</dependency> </dependency>
<dependency>
<groupId>com.ruoyi</groupId>
<artifactId>ruoyi-admin</artifactId>
<version>3.8.9</version>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>

View File

@ -1,6 +1,5 @@
package com.ruoyi.quartz.task; package com.ruoyi.quartz.task;
import cn.hutool.crypto.Padding;
import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSON;
import com.ruoyi.app.domain.*; import com.ruoyi.app.domain.*;
import com.ruoyi.app.service.*; import com.ruoyi.app.service.*;
@ -8,8 +7,8 @@ import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.http.HttpUtils; import com.ruoyi.common.utils.http.HttpUtils;
import com.ruoyi.common.utils.uuid.IdUtils; import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.system.service.ISysConfigService; import com.ruoyi.system.service.ISysConfigService;
import io.netty.util.internal.ObjectUtil; import com.ruoyi.web.domain.WcsCommonResponse;
import org.apache.ibatis.javassist.compiler.ast.Variable; import com.ruoyi.web.domain.WcsStackerTaskRequest;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@ -50,6 +49,7 @@ public class TaskExecutor {
* 解析wms任务 * 解析wms任务
* 任务状态为0 * 任务状态为0
*/ */
@Transactional(rollbackFor = Exception.class)
public void executeWmsTask() { public void executeWmsTask() {
// 查询所有的任务 // 查询所有的任务
List<AppTask> wmsTaskList = appTaskService.selectAppTaskList(new AppTask()); List<AppTask> wmsTaskList = appTaskService.selectAppTaskList(new AppTask());
@ -99,69 +99,62 @@ public class TaskExecutor {
* 发送wcs任务 * 发送wcs任务
* 任务状态为0 * 任务状态为0
*/ */
@Transactional(rollbackFor = Exception.class)
public void sendWcsTask() { public void sendWcsTask() {
// // 查询出所有的待下发的wcs任务 // 查询出所有的待下发的wcs任务
// AppWcsTask wcsTaskQuery = new AppWcsTask(); AppWcsTask wcsTaskQuery = new AppWcsTask();
// wcsTaskQuery.setWcsTaskStatus(0); wcsTaskQuery.setWcsTaskStatus(0);
// List<AppWcsTask> wcsTaskList = appWcsTaskService.selectAppWcsTaskList(wcsTaskQuery); List<AppWcsTask> wcsTaskList = appWcsTaskService.selectAppWcsTaskList(wcsTaskQuery);
// if (wcsTaskList == null || wcsTaskList.isEmpty()) { if (wcsTaskList == null || wcsTaskList.isEmpty()) {
// // 没有待下发的任务跳过任务 // 没有待下发的任务跳过任务
// return; return;
// } }
// // 获取请求地址 // 获取请求地址
// String url = sysConfigService.selectConfigByKey("wcs.url"); String url = sysConfigService.selectConfigByKey("wcs.url");
// if (StringUtils.isEmpty(url)) { if (StringUtils.isEmpty(url)) {
// // 查询不到wcs任务发送地址 // 查询不到wcs任务发送地址
// return; return;
// } }
// for (AppWcsTask appWcsTask : wcsTaskList) { for (AppWcsTask appWcsTask : wcsTaskList) {
// // 添加wcs任务请求 // 添加wcs任务请求
// WcsStackerTaskRequest wcsStackerTaskRequest = getWcsStackerTaskRequest(appWcsTask); WcsStackerTaskRequest wcsStackerTaskRequest = getWcsStackerTaskRequest(appWcsTask);
// // 发送http请求---请求5次 // 发送http请求---请求5次
// for (int i = 0; i < 5; i++) { for (int i = 0; i < 5; i++) {
// try { WcsCommonResponse wcsCommonResponse = JSON.parseObject(HttpUtils.sendPost(url, JSON.toJSONString(wcsStackerTaskRequest)), WcsCommonResponse.class);
// WcsCommonResponse wcsCommonResponse = JSON.parseObject(HttpUtils.sendPost(url, JSON.toJSONString(wcsStackerTaskRequest)), WcsCommonResponse.class); if (wcsCommonResponse == null) {
// continue;
// if (wcsCommonResponse == null) { }
// continue; if (wcsCommonResponse.getCode() == 0) {
// } // 返回ok
// if (wcsCommonResponse.getCode() == 0) { appWcsTask.setWcsTaskStatus(1);// 已经发送成功
// // 返回ok } else {
// appWcsTask.setWcsTaskStatus(1);// 已经发送成功 // 返回error
// } else { appWcsTask.setWcsTaskStatus(999);// 任务异常
// // 返回error }
// appWcsTask.setWcsTaskStatus(999);// 任务异常 appWcsTask.setSendTime(new Date());
// } appWcsTaskService.updateAppWcsTask(appWcsTask);
// appWcsTask.setSendTime(new Date()); // 请求成功不再发送
// appWcsTaskService.updateAppWcsTask(appWcsTask); break;
// // 请求成功不再发送 }
// break; }
// } catch (Exception e) {
// logger.error("任务发送异常。{}", JSON.toJSONString(e));
// }
// }
// }
} }
// /** /**
// * 创建wcs请求 * 创建wcs请求
// * @param appWcsTask 任务 *
// * @return 请求详情 * @param appWcsTask 任务
// */ * @return 请求详情
// private WcsStackerTaskRequest getWcsStackerTaskRequest(AppWcsTask appWcsTask) { */
// WcsStackerTaskRequest wcsStackerTaskRequest = new WcsStackerTaskRequest(); private WcsStackerTaskRequest getWcsStackerTaskRequest(AppWcsTask appWcsTask) {
// wcsStackerTaskRequest.setTaskId(appWcsTask.getWcsTaskId()); WcsStackerTaskRequest wcsStackerTaskRequest = new WcsStackerTaskRequest();
// wcsStackerTaskRequest.setTaskType(appWcsTask.getWcsTaskType()); wcsStackerTaskRequest.setTaskId(appWcsTask.getWcsTaskId());
// wcsStackerTaskRequest.setPriority(appWcsTask.getTaskPriority()); wcsStackerTaskRequest.setTaskType(appWcsTask.getWcsTaskType());
// wcsStackerTaskRequest.setOrigin(appWcsTask.getOrigin()); wcsStackerTaskRequest.setPriority(appWcsTask.getTaskPriority());
// wcsStackerTaskRequest.setDestination(appWcsTask.getDestination()); wcsStackerTaskRequest.setOrigin(appWcsTask.getOrigin());
// wcsStackerTaskRequest.setVehicleNo(appWcsTask.getVehicleId()); wcsStackerTaskRequest.setDestination(appWcsTask.getDestination());
// return wcsStackerTaskRequest; wcsStackerTaskRequest.setVehicleNo(appWcsTask.getVehicleId());
// } return wcsStackerTaskRequest;
}
@Transactional @Transactional
public void completeWmsTask() { public void completeWmsTask() {
@ -172,8 +165,8 @@ public class TaskExecutor {
if (appTasks == null || appTasks.isEmpty()) { if (appTasks == null || appTasks.isEmpty()) {
return; return;
} }
for(AppTask task : appTasks) { for (AppTask task : appTasks) {
if(task.getTaskType().compareTo(1) == 0) { if (task.getTaskType().compareTo(1) == 0) {
// 从码盘表内拉出数据 // 从码盘表内拉出数据
AppPendingStorage appPendingStorage = new AppPendingStorage(); AppPendingStorage appPendingStorage = new AppPendingStorage();
appPendingStorage.setVehicleNo(task.getVehicleId()); appPendingStorage.setVehicleNo(task.getVehicleId());
@ -181,7 +174,7 @@ public class TaskExecutor {
if (appPendingStorages == null) { if (appPendingStorages == null) {
return; return;
} }
if(appPendingStorages.isEmpty()){ if (appPendingStorages.isEmpty()) {
AppTask updateRemark = new AppTask(); AppTask updateRemark = new AppTask();
updateRemark.setTaskId(task.getTaskId()); updateRemark.setTaskId(task.getTaskId());
updateRemark.setRemark("该载具似乎未进行过码盘"); updateRemark.setRemark("该载具似乎未进行过码盘");
@ -192,7 +185,7 @@ public class TaskExecutor {
appTaskService.deleteAppTaskByTaskId(task.getTaskId()); // 删除旧数据 appTaskService.deleteAppTaskByTaskId(task.getTaskId()); // 删除旧数据
return; return;
} }
for(AppPendingStorage pendingStorage : appPendingStorages) { for (AppPendingStorage pendingStorage : appPendingStorages) {
// 插入库存 // 插入库存
AppStock appStock = new AppStock(); AppStock appStock = new AppStock();
appStock.setStockId(pendingStorage.getListId()); appStock.setStockId(pendingStorage.getListId());