no message

main
HUOJIN\92525 2024-05-11 11:42:00 +08:00
parent 995e83deca
commit 6517591973
4 changed files with 18 additions and 33 deletions

View File

@ -1,7 +1,5 @@
package com.youchain.businessdata.rest; package com.youchain.businessdata.rest;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.youchain.annotation.Log; import com.youchain.annotation.Log;
import com.youchain.annotation.AnonymousAccess; import com.youchain.annotation.AnonymousAccess;
import com.youchain.appupdate.inputJson.MissionStateCallback; import com.youchain.appupdate.inputJson.MissionStateCallback;
@ -29,24 +27,15 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.scheduling.annotation.Async;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.sql.Timestamp; import java.sql.Timestamp;
import java.util.Date; import java.util.*;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import static org.springframework.http.HttpStatus.BAD_REQUEST;
import static org.springframework.http.HttpStatus.OK;
@RestController @RestController
@RequiredArgsConstructor @RequiredArgsConstructor
@ -87,36 +76,34 @@ public class KMReSController {
} }
private void asnTask(String id, String missionStatus) { public void asnTask(String id, String missionStatus) {
//执行第一个任务后 可以继续执行第二个任务 并携带第一个任务的返回值 第二个任务执行完没有返回值
AgvTaskDto agvTaskDto = agvTaskService.findById(Integer.parseInt(id)); AgvTaskDto agvTaskDto = agvTaskService.findById(Integer.parseInt(id));
AgvTask agvTask = agvTaskService.toEntity(agvTaskDto); AgvTask agvTask = agvTaskService.toEntity(agvTaskDto);
Task task = getFirstTask(agvTask.getId()); Task task = getFirstTask(agvTask.getId());
if (task == null) {
throw new RuntimeException("任务不存在!");
}
agvTaskService.agvTaskCallback(agvTask, task, missionStatus); agvTaskService.agvTaskCallback(agvTask, task, missionStatus);
returnMo(task.getBillCode());// 回传MO信息
CompletableFuture<Void> returnMoFuture = CompletableFuture.runAsync(() -> {
returnMo(task.getBillCode());// 回传MO信息
});
} }
private void pickTask(String id, String containerCode, String missionStatus) throws Exception { public void pickTask(String id, String containerCode, String missionStatus) {
if ("CANCELED".equals(missionStatus)) { if ("CANCELED".equals(missionStatus)) {
cancelAgvTasks(id); cancelAgvTasks(id);
} else { } else {
AgvTask agvTask = agvTaskService.findByjobCode(id, containerCode); AgvTask agvTask = agvTaskService.findByjobCode(id, containerCode);
Task task = getFirstTask(agvTask.getId()); Task task = getFirstTask(agvTask.getId());
if (task == null) {
throw new RuntimeException("任务不存在!");
}
returnIssue(task);// 叫料结果回传
agvTaskService.agvTaskCallback(agvTask, missionStatus, containerCode); agvTaskService.agvTaskCallback(agvTask, missionStatus, containerCode);
CompletableFuture<Void> returnIssueFuture = CompletableFuture.runAsync(() -> {
returnIssue(task);// 叫料结果回传
});
} }
} }
private void cancelAgvTasks(String id) { public void cancelAgvTasks(String id) {
List<AgvTask> agvTaskList = agvTaskService.findByjobCode(id); List<AgvTask> agvTaskList = agvTaskService.findByjobCode(id);
for (AgvTask agvTask : agvTaskList) { for (AgvTask agvTask : agvTaskList) {
if (!agvTask.getStatus().equals(BizStatus.FINISH)) { if (!agvTask.getStatus().equals(BizStatus.FINISH)) {
@ -127,7 +114,7 @@ public class KMReSController {
} }
} }
private Task getFirstTask(Integer agvTaskId) { public Task getFirstTask(Integer agvTaskId) {
List<Task> taskList = taskRepository.getAgvTaskList(agvTaskId); List<Task> taskList = taskRepository.getAgvTaskList(agvTaskId);
return taskList.isEmpty() ? null : taskList.get(0); return taskList.isEmpty() ? null : taskList.get(0);
} }

View File

@ -4,6 +4,8 @@ import com.youchain.annotation.Log;
import com.youchain.businessdata.inputJson.*; import com.youchain.businessdata.inputJson.*;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import java.util.concurrent.ExecutionException;
/** /**
* MLS * MLS
*/ */

View File

@ -22,7 +22,6 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.*; import java.util.*;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service @Service
@ -330,8 +329,6 @@ public class MlsServiceImpl implements MlsService {
batchCreateOrUpdate.batchUpdate(mosToUpdate); batchCreateOrUpdate.batchUpdate(mosToUpdate);
} }
}); });
} }
/** /**
@ -482,7 +479,7 @@ public class MlsServiceImpl implements MlsService {
}); });
CompletableFuture<Void> pickDetailFuture = inventoryFuture.runAsync(() -> { CompletableFuture<Void> pickDetailFuture = inventoryFuture.thenRun(() -> {
//批量生成叫料明细 //批量生成叫料明细
if (!pickDetailToCreate.isEmpty()) { if (!pickDetailToCreate.isEmpty()) {
batchCreateOrUpdate.batchCreate(pickDetailToCreate); batchCreateOrUpdate.batchCreate(pickDetailToCreate);
@ -503,7 +500,6 @@ public class MlsServiceImpl implements MlsService {
} }
}); });
} }
/** /**