IWcsTaskService.java 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. package com.ruoyi.ams.task.service;
  2. import java.util.List;
  3. import com.ruoyi.ams.agv.ndc.entity.CallbackResult;
  4. import com.ruoyi.ams.task.domain.WcsTask;
  5. import com.ruoyi.ams.task.dto.WcsTaskLocationDTO;
  6. import com.ruoyi.common.core.domain.AjaxResult;
  7. /**
  8. * AGV任务Service接口
  9. *
  10. * @author andy
  11. * @date 2022-03-10
  12. */
  13. public interface IWcsTaskService {
  14. /**
  15. * 查询AGV任务
  16. *
  17. * @param taskNo AGV任务主键
  18. * @return AGV任务
  19. */
  20. WcsTask selectWcsTaskByTaskNo(String taskNo);
  21. /**
  22. * 查询AGV任务列表
  23. *
  24. * @param wcsTask AGV任务
  25. * @return AGV任务集合
  26. */
  27. List<WcsTask> selectWcsTaskList(WcsTask wcsTask);
  28. /**
  29. * 查询待下发的任务
  30. *
  31. * @param warehouseId
  32. * @return
  33. */
  34. List<WcsTask> selectWcsUnallocated(Long warehouseId);
  35. /**
  36. * 查询AGV任务
  37. *
  38. * @param wcsTask AGV任务
  39. * @return AGV任务集合
  40. */
  41. WcsTask selectWcsTaskByModel(WcsTask wcsTask);
  42. /**
  43. * 新增AGV任务
  44. *
  45. * @param wcsTask AGV任务
  46. * @return 结果
  47. */
  48. int insertWcsTask(WcsTask wcsTask);
  49. /**
  50. * 修改AGV任务
  51. *
  52. * @param wcsTask AGV任务
  53. * @return 结果
  54. */
  55. int updateWcsTask(WcsTask wcsTask);
  56. /**
  57. * 批量删除AGV任务
  58. *
  59. * @param taskNos 需要删除的AGV任务主键集合
  60. * @return 结果
  61. */
  62. int deleteWcsTaskByTaskNos(String[] taskNos);
  63. /**
  64. * 新增充电任务
  65. * @return
  66. */
  67. AjaxResult addChargingTask(Integer agvNo, Integer chargingSite, Integer index);
  68. /**
  69. * 删除AGV任务信息
  70. *
  71. * @param taskNo AGV任务主键
  72. * @return 结果
  73. */
  74. int deleteWcsTaskByTaskNo(String taskNo);
  75. /**
  76. * 取货完成回调
  77. *
  78. * @param wcsTask
  79. */
  80. void callBackPickup(WcsTask wcsTask);
  81. /**
  82. * 任务完成回调
  83. *
  84. * @param wcsTask
  85. */
  86. void callBackTaskComplete(WcsTask wcsTask);
  87. /**
  88. * 取消任务
  89. *
  90. * @param wcsTask
  91. */
  92. AjaxResult cancelTask(WcsTask wcsTask);
  93. /**
  94. * 库存处理
  95. *
  96. * @param wcsTask 任务单号
  97. * @param result 处理结果
  98. */
  99. void invDisposition(WcsTask wcsTask, String result);
  100. /**
  101. * 事件回调
  102. *
  103. * @param wcsTask
  104. */
  105. void eventCallBack(String code, WcsTask wcsTask);
  106. /**
  107. * 查询同列的任务
  108. *
  109. * @param colNo 列号
  110. * @param colIndex 列索引
  111. * @param zoneId 区域
  112. * @param warehouseId 仓库id
  113. * @return
  114. */
  115. List<WcsTaskLocationDTO> selectTaskByColNo(String colNo, Long colIndex, Long zoneId, Long warehouseId);
  116. /**
  117. * 查询同列任务是否有优先级
  118. *
  119. * @param colNo
  120. * @param colIndex
  121. * @param zoneId
  122. * @param warehouseId
  123. * @return
  124. */
  125. List<WcsTaskLocationDTO> selectTaskByColNoAfter(String colNo, Long colIndex, Long zoneId, Long warehouseId);
  126. /**
  127. * 任务回调
  128. *
  129. * @param taskNo
  130. * @param state
  131. * @param carNo
  132. */
  133. void callBack(String taskNo, Integer state, Integer carNo);
  134. /**
  135. * 将起点库存放到中间缓存位置
  136. *
  137. * @param wcsTask
  138. * @return
  139. */
  140. AjaxResult moveStartingPointToMiddleCache(WcsTask wcsTask);
  141. /**
  142. * 将中间缓存位库存放到终点位置
  143. *
  144. * @param wcsTask
  145. * @return
  146. */
  147. AjaxResult moveMiddleCacheToDestination(WcsTask wcsTask);
  148. /**
  149. * 入库将起始点库存放到终点位置
  150. *
  151. * @param wcsTask
  152. * @return
  153. */
  154. AjaxResult moveStartingPointToDestination(WcsTask wcsTask);
  155. /**
  156. * 出库将起始点库存放到终点位置
  157. *
  158. * @param wcsTask
  159. * @return
  160. */
  161. AjaxResult moveStartingPointToDestinationout(WcsTask wcsTask);
  162. }