Commit 3849b2f8553807f6ac8556db39125a197b9f367a

Authored by 易文鹏
1 parent dd1c8518

补充入库没有明细,wms任务就不下发给wcs

src/main/java/com/huaheng/pc/monitor/job/task/RyTask.java
... ... @@ -252,25 +252,18 @@ public class RyTask extends BaseController {
252 252 .ne(TaskHeader::getExceptionCode, "取货错误")
253 253 .eq(TaskHeader::getStatus, QuantityConstant.TASK_STATUS_BUILD));
254 254  
255   - // 获取所有任务头的ID集合
256   - List<Integer> taskHeaderIds = taskHeaderList.stream().map(TaskHeader::getId).collect(Collectors.toList());
257   -
258   - // 查询这些任务头中有任务明细的ID
259   - List<Integer> taskDetailIds = taskDetailService.list(
260   - new LambdaQueryWrapper<TaskDetail>().in(TaskDetail::getTaskId, taskHeaderIds) // 过滤出匹配的任务明细
261   - ).stream()
262   - .map(TaskDetail::getTaskId)
263   - .distinct() // 去重以防同一任务有多条明细
264   - .collect(Collectors.toList());
265   -
266   - // 过滤掉没有任务明细的任务头
267   - List<TaskHeader> filteredTaskHeaderList = taskHeaderList.stream()
268   - .filter(taskHeader -> taskDetailIds.contains(taskHeader.getId()))
269   - .collect(Collectors.toList());
270 255  
  256 + List<TaskHeader> excluded = new ArrayList<>();
  257 + for (TaskHeader taskHeader : taskHeaderList) {
  258 + List<TaskDetail> details = taskDetailService.list(new LambdaQueryWrapper<TaskDetail>().eq(TaskDetail::getTaskId, taskHeader.getId()));
  259 + if (details.isEmpty() && taskHeader.getTaskType() == 200) {
  260 + excluded.add(taskHeader);
  261 + }
  262 + }
  263 + taskHeaderList.removeAll(excluded);
271 264  
272 265 System.out.println("===============================自动下发任务===========" + taskHeaderList.size());
273   - for (TaskHeader taskHeader : filteredTaskHeaderList) {
  266 + for (TaskHeader taskHeader : taskHeaderList) {
274 267 try {
275 268 taskHeaderService.sendTaskToWcs(Convert.toIntArray(String.valueOf(taskHeader.getId())));
276 269 } catch (Exception e) {
... ...
src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java
... ... @@ -334,10 +334,10 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
334 334 }
335 335  
336 336  
337   - List<TaskDetail> list = taskDetailService.list(new LambdaQueryWrapper<TaskDetail>().eq(TaskDetail::getTaskId, taskId));
338   - if (list.isEmpty()) {
339   - return AjaxResult.error("任务没有明细");
340   - }
  337 + //List<TaskDetail> list = taskDetailService.list(new LambdaQueryWrapper<TaskDetail>().eq(TaskDetail::getTaskId, taskId));
  338 + //if (list.isEmpty()) {
  339 + // return AjaxResult.error("任务没有明细");
  340 + //}
341 341  
342 342 // 给wcs传递任务
343 343 AjaxResult ajaxResult = taskAssignService.wcsTaskAssign(task);
... ...