package com.northglass.repository;
|
|
import java.util.List;
|
|
import org.springframework.data.jpa.repository.JpaRepository;
|
import org.springframework.data.jpa.repository.Query;
|
|
import com.northglass.constants.ShelfTaskFlag;
|
import com.northglass.constants.ShelfTaskType;
|
import com.northglass.constants.StateConstants.ShelfTaskState;
|
import com.northglass.entity.ShelfTask;
|
|
public interface ShelfTaskDao extends JpaRepository<ShelfTask, Long> {
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.IN_WORK + "'")
|
public ShelfTask findInWorkTask();
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.IN_WORK + "'")
|
public List<ShelfTask> findInWorkTasks();
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.STOP + "'")
|
public ShelfTask findStopTask();
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.WAITING + "'"+ " and t.flag = ?1")
|
public List<ShelfTask> findWaitingTasksByFlag(String flag);
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.COMPLETED + "'"+ " and t.flag = ?1")
|
public List<ShelfTask> findCompletedTasksByFlag(String flag);
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.IN_WORK + "'"+ " and t.flag = ?1")
|
public ShelfTask findInWorkTasksByFlag(String flag);
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.WAITING + "'")
|
public List<ShelfTask> findWaitingTasks();
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.WAITING + "' or t.state = '" + ShelfTaskState.IN_WORK + "'")
|
public List<ShelfTask> findWaitingAndWorkingTasks();
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.IN_WORKING + "'")
|
public ShelfTask findInWorkingTask();
|
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.WARNING + "'")
|
public List<ShelfTask> findWarningTasks();
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.COMPLETED + "'")
|
public List<ShelfTask> findCompletedTasks();
|
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_SHELF_RACK_TO_LOAD_MACHINE_RACK + "'"
|
+ " and t.shelfRank.id = ?1 and t.loadMachineRack.id = ?2"
|
+ " and (t.state = '" + ShelfTaskState.IN_WORK + "' or t.state = '"
|
+ ShelfTaskState.WAITING +"' or t.state = '" +ShelfTaskState.IN_WORKING+ "' or t.state = '" + ShelfTaskState.WARNING + "')")
|
public ShelfTask findWorkingShelfTaskFromShelfRackToLoadMachineRack(Long shelfRankId, Long loadMachineRackId);
|
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_RANK_TO_HOIST + "'"
|
+ " and t.shelfRank.id = ?1 and t.shelfHoist.id = ?2"
|
+ " and (t.state = '" + ShelfTaskState.IN_WORK + "' or t.state = '"
|
+ ShelfTaskState.WAITING +"' or t.state = '" +ShelfTaskState.IN_WORKING+ "' or t.state = '" + ShelfTaskState.WARNING + "')")
|
public ShelfTask findWorkingShelfTaskFromShelfRackToHoist(Long shelfRankId, Long shelfHoistId);
|
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_LOAD_MACHINE_RACK_TO_SHELF_RACK + "'"
|
+ " and t.loadMachineRack.id = ?1 and t.shelfRank.id = ?2 "
|
+ " and (t.state = '" + ShelfTaskState.IN_WORK +"' or t.state = '"
|
+ ShelfTaskState.WAITING +"' or t.state = '" +ShelfTaskState.IN_WORKING+ "' or t.state = '" + ShelfTaskState.WARNING + "')")
|
public ShelfTask findShelfTaskFromLoadMachineRackToShelfRack(Long loadMachineRackId,Long shelfRankId);
|
|
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_LOAD_MACHINE_RACK_TO_HOIST + "'"
|
+ " and (t.loadMachineRack.id = ?1 and t.shelfHoist.id = ?2) and (t.state = '" + ShelfTaskState.IN_WORK +"' or t.state = '"
|
+ShelfTaskState.IN_WORKING+ "' or t.state = '"
|
+ ShelfTaskState.WAITING +"')")
|
public ShelfTask findShelfTaskFromLoadMachineRackToHoist(Long loadMachineRackId,Long shelfHoistId);
|
|
@Query("select t from ShelfTask t where (t.taskType = '" + ShelfTaskType.FROM_LOAD_MACHINE_RACK_TO_SHELF_RACK + "'"
|
+ " or t.taskType = '" + ShelfTaskType.FROM_SHELF_RACK_TO_LOAD_MACHINE_RACK + "')"
|
+ " and (t.loadMachineRack.id = ?1 or t.loadMachineRack.id = ?2) and (t.state = '" + ShelfTaskState.IN_WORK + "' or t.state = '"
|
+ ShelfTaskState.WAITING +"')")
|
public List<ShelfTask> findShelfTaskFromShelfRackToLoadMachineRack(Long loadMachineRackId1,Long loadMachineRackId2);
|
|
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_HOIST_TO_RANK + "'"
|
+ " and (t.shelfHoist.id = ?1 and t.shelfRank.id = ?2) and (t.state = '" + ShelfTaskState.IN_WORK +"' or t.state = '" +ShelfTaskState.IN_WORKING+ "' or t.state = '"
|
+ ShelfTaskState.WAITING +"')")
|
public ShelfTask findShelfTaskFromHoistToshelfRack(Long shelfHoistId,Long shelfRackId);
|
|
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_LOAD_MACHINE_RACK_TO_SHELF_RACK + "'"
|
+ " and t.loadMachineRack.id = ?1 and t.shelfRank.id = ?2"
|
+ " and (t.state = '" + ShelfTaskState.IN_WORK + "' or t.state = '"
|
+ ShelfTaskState.WAITING + "' or t.state = '" + ShelfTaskState.WARNING + "')")
|
public ShelfTask findExitShelfTaskFromLoadMachineRackToShelfRack(Long loadMachineRackId, Long shelfRankId);
|
|
|
@Query("select t from ShelfTask t where (t.taskType = '" + ShelfTaskType.FROM_HOIST_TO_RANK + "'"
|
+ " or t.taskType = '" + ShelfTaskType.FROM_EMPTY_RANK_TO_HOIST + "')"
|
+ " and t.state = '" + ShelfTaskState.WAITING + "'")
|
public List<ShelfTask> findShelfTaskFromShelfRackToHoist();
|
|
|
//--------------------以下都是上片任务(flag=1)
|
//从上片位到吊装位
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_LOAD_MACHINE_RACK_TO_HOIST + "'"
|
+ " and (t.loadMachineRack.id = ?1 and t.shelfHoist.id = ?2) and t.flag = '" + ShelfTaskFlag.LOAD_FLAG + "'"
|
+ " and (t.state = '" + ShelfTaskState.IN_WORK +"' or t.state = '" +ShelfTaskState.IN_WORKING+ "' or t.state = '"
|
+ ShelfTaskState.WAITING +"')")
|
public ShelfTask findExitShelfTaskFromLoadMachineRackToHoist(Long loadMachineRackId,Long shelfHoistId);
|
|
//从吊装位仓位
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_HOIST_TO_RANK + "'"
|
+ " and (t.shelfHoist.id = ?1 and t.shelfRank.id = ?2) and t.flag = '" + ShelfTaskFlag.LOAD_FLAG + "'"
|
+ "and (t.state = '" + ShelfTaskState.IN_WORK +"' or t.state = '" +ShelfTaskState.IN_WORKING+ "' or t.state = '"
|
+ ShelfTaskState.WAITING +"')")
|
public ShelfTask findExitShelfTaskFromHoistToshelfRack(Long shelfHoistId,Long shelfRackId);
|
|
|
//调度页面显示调度任务
|
@Query("select t from ShelfTask t where (t.taskType = '" + ShelfTaskType.FROM_LOAD_MACHINE_RACK_TO_SHELF_RACK + "'"
|
+ " or t.taskType = '" + ShelfTaskType.FROM_LOAD_MACHINE_RACK_TO_HOIST +"'"
|
+ " or t.taskType = '" + ShelfTaskType.FROM_HOIST_TO_LOAD_MACHINE_RACK +"'"
|
+ " or t.taskType = '" + ShelfTaskType.FROM_SHELF_RACK_TO_LOAD_MACHINE_RACK + "')"
|
+ " and (t.loadMachineRack.id = ?1 or t.loadMachineRack.id = ?2) and (t.state = '" + ShelfTaskState.IN_WORK + "' or t.state = '"
|
+ ShelfTaskState.WAITING +"')")
|
public List<ShelfTask> findDispatchTasks(Long loadMachineRackId1,Long loadMachineRackId2);
|
|
//找到产线中所有的等待中的上片任务
|
@Query("select t from ShelfTask t where t.flag = '" + ShelfTaskFlag.LOAD_FLAG + "'"
|
+ " and t.state = '" + ShelfTaskState.WAITING + "'")
|
public List<ShelfTask> findAllLoadTasks();
|
|
//从吊装位仓位
|
@Query("select t from ShelfTask t where t.taskType = '" + ShelfTaskType.FROM_HOIST_TO_RANK + "'"
|
+ " and t.shelfHoist.id = ?1 and t.flag = '" + ShelfTaskFlag.LOAD_FLAG + "'"
|
+ "and (t.state = '" + ShelfTaskState.IN_WORK +"' or t.state = '"
|
+ ShelfTaskState.WAITING +"')")
|
public List<ShelfTask> findtask(Long shelfHoistId);
|
|
@Query("select t from ShelfTask t where t.state = '" + ShelfTaskState.WAITING + "'")
|
public List<ShelfTask> findloadWaitingTasks();
|
}
|