no message
parent
ad73ee2324
commit
99ee0a23eb
|
|
@ -63,11 +63,11 @@ public interface AgvTaskMapper extends BaseMapper<AgvTask> {
|
||||||
List<AgvTask> queryAgvTaskList(@Param("status") Integer status, @Param("agvVendor") String agvVendor);
|
List<AgvTask> queryAgvTaskList(@Param("status") Integer status, @Param("agvVendor") String agvVendor);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询当前点位最新的TES任务
|
* 根据容器查询Tes
|
||||||
*
|
*
|
||||||
* @param endCode 终点
|
* @param carrierCodes 容器
|
||||||
*/
|
*/
|
||||||
AgvTask queryByLastEndCode(@Param("endCode") String endCode);
|
List<AgvTask> queryByCarrierCode(@Param("carrierCodes") List<String> carrierCodes);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据业务ID查询AGV任务
|
* 根据业务ID查询AGV任务
|
||||||
|
|
|
||||||
|
|
@ -64,24 +64,6 @@
|
||||||
order by agv.id
|
order by agv.id
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="queryByLastEndCode" resultType="org.cpte.modules.agvTask.entity.AgvTask">
|
|
||||||
(SELECT * FROM data_agv_task
|
|
||||||
WHERE start_code = #{endCode}
|
|
||||||
AND type = 'INBOUND'
|
|
||||||
AND agv_vendor = 'TES'
|
|
||||||
ORDER BY create_time DESC
|
|
||||||
LIMIT 1)
|
|
||||||
UNION ALL
|
|
||||||
(SELECT * FROM data_agv_task
|
|
||||||
WHERE end_code = #{endCode}
|
|
||||||
AND type ='OUTBOUND'
|
|
||||||
AND agv_vendor = 'TES'
|
|
||||||
ORDER BY create_time DESC
|
|
||||||
LIMIT 1)
|
|
||||||
ORDER BY create_time DESC
|
|
||||||
LIMIT 1
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="pointTaskCountMap" resultType="java.util.Map">
|
<select id="pointTaskCountMap" resultType="java.util.Map">
|
||||||
SELECT
|
SELECT
|
||||||
bp.point_code,
|
bp.point_code,
|
||||||
|
|
@ -146,4 +128,14 @@
|
||||||
AND bp.iz_active = 1
|
AND bp.iz_active = 1
|
||||||
ORDER BY bp.col_num
|
ORDER BY bp.col_num
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="queryByCarrierCode" resultType="org.cpte.modules.agvTask.entity.AgvTask">
|
||||||
|
SELECT * FROM data_agv_task agv
|
||||||
|
WHERE agv.status in (1,2,3)
|
||||||
|
AND agv.agv_vendor = 'TES'
|
||||||
|
AND agv.carrier_code in
|
||||||
|
<foreach collection="carrierCodes" item="carrierCode" open="(" separator="," close=")">
|
||||||
|
#{carrierCode}
|
||||||
|
</foreach>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -8,6 +8,7 @@ import org.cpte.modules.agvTask.entity.AgvTask;
|
||||||
import org.cpte.modules.agvTask.mapper.AgvTaskMapper;
|
import org.cpte.modules.agvTask.mapper.AgvTaskMapper;
|
||||||
import org.cpte.modules.agvTask.service.IAgvTaskService;
|
import org.cpte.modules.agvTask.service.IAgvTaskService;
|
||||||
import org.cpte.modules.base.entity.*;
|
import org.cpte.modules.base.entity.*;
|
||||||
|
import org.cpte.modules.base.mapper.PointMapper;
|
||||||
import org.cpte.modules.base.service.IPointService;
|
import org.cpte.modules.base.service.IPointService;
|
||||||
import org.cpte.modules.constant.enums.*;
|
import org.cpte.modules.constant.enums.*;
|
||||||
import org.cpte.modules.conveyorLine.vo.Station;
|
import org.cpte.modules.conveyorLine.vo.Station;
|
||||||
|
|
@ -46,6 +47,9 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements IT
|
||||||
@Autowired
|
@Autowired
|
||||||
private AgvTaskMapper agvTaskMapper;
|
private AgvTaskMapper agvTaskMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private PointMapper pointMapper;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private IPointService pointService;
|
private IPointService pointService;
|
||||||
|
|
||||||
|
|
@ -272,7 +276,22 @@ public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements IT
|
||||||
|
|
||||||
//当前所有工作站正在执行的任务
|
//当前所有工作站正在执行的任务
|
||||||
Map<String, String> workStationTaskMap = getWorkStationTaskMap();
|
Map<String, String> workStationTaskMap = getWorkStationTaskMap();
|
||||||
|
|
||||||
|
//查询所有执行的任务
|
||||||
|
List<String> stockCodeList = taskList.stream().map(Task::getStockCode).distinct().toList();
|
||||||
|
List<AgvTask> agvTaskList = agvTaskMapper.queryByCarrierCode(stockCodeList);
|
||||||
|
Map<String, AgvTask> agvTaskMap = agvTaskList.stream().collect(Collectors.toMap(AgvTask::getCarrierCode, agvTask -> agvTask));
|
||||||
for (Task task : taskList) {
|
for (Task task : taskList) {
|
||||||
|
//根据容器找执行中的Tes任务
|
||||||
|
AgvTask agvTask = agvTaskMap.get(task.getStockCode());
|
||||||
|
if (agvTask != null) {
|
||||||
|
Point toPoint = pointMapper.queryByPointCode(agvTask.getEndCode());
|
||||||
|
task.setAgvTaskId(agvTask.getId());
|
||||||
|
task.setToPointCode(agvTask.getEndCode());
|
||||||
|
task.setToPointId(toPoint.getId());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
//起点
|
//起点
|
||||||
Point fromPoint = fromPointMap.get(task.getFromPointId());
|
Point fromPoint = fromPointMap.get(task.getFromPointId());
|
||||||
//出库单
|
//出库单
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue