65 lines
2.8 KiB
Java
65 lines
2.8 KiB
Java
|
|
package com.klp.aps.mapper;
|
|||
|
|
|
|||
|
|
import com.klp.aps.domain.entity.ApsScheduleChangeLogEntity;
|
|||
|
|
import com.klp.aps.domain.entity.ApsScheduleOperationEntity;
|
|||
|
|
import com.klp.aps.domain.row.ApsLineCapabilityRow;
|
|||
|
|
import com.klp.aps.domain.row.ApsLineMetaRow;
|
|||
|
|
import com.klp.aps.domain.row.ApsOrderDetailRow;
|
|||
|
|
import com.klp.aps.domain.row.ApsPlanDetailRow;
|
|||
|
|
import com.klp.aps.domain.row.ApsProductMetaRow;
|
|||
|
|
import com.klp.aps.domain.row.ApsSchedulePlanRow;
|
|||
|
|
import com.klp.aps.domain.row.ApsShiftSlotRow;
|
|||
|
|
import org.apache.ibatis.annotations.Param;
|
|||
|
|
|
|||
|
|
import java.time.LocalDateTime;
|
|||
|
|
import java.time.LocalDate;
|
|||
|
|
import java.util.List;
|
|||
|
|
|
|||
|
|
public interface ApsAutoScheduleMapper {
|
|||
|
|
|
|||
|
|
ApsSchedulePlanRow selectPlanByIdForUpdate(@Param("planId") Long planId);
|
|||
|
|
|
|||
|
|
List<ApsOrderDetailRow> selectOrderDetailsByOrderId(@Param("orderId") Long orderId);
|
|||
|
|
|
|||
|
|
List<ApsPlanDetailRow> selectPlanDetailsByPlanId(@Param("planId") Long planId);
|
|||
|
|
|
|||
|
|
List<ApsLineCapabilityRow> selectLineCandidatesByProductAndLine(@Param("productId") Long productId,
|
|||
|
|
@Param("lineId") Long lineId);
|
|||
|
|
|
|||
|
|
ApsLineMetaRow selectLineMetaById(@Param("lineId") Long lineId);
|
|||
|
|
|
|||
|
|
ApsProductMetaRow selectProductMetaById(@Param("productId") Long productId);
|
|||
|
|
|
|||
|
|
List<ApsShiftSlotRow> selectAvailableShifts(@Param("lineId") Long lineId,
|
|||
|
|
@Param("startDate") LocalDate startDate,
|
|||
|
|
@Param("endDate") LocalDate endDate);
|
|||
|
|
|
|||
|
|
Long selectPlanDetailId(@Param("planId") Long planId, @Param("taskId") Long taskId);
|
|||
|
|
|
|||
|
|
int deleteUnlockedOperationsByPlanId(@Param("planId") Long planId);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 返回冲突记录的 end_time(若无冲突返回 null)
|
|||
|
|
*/
|
|||
|
|
LocalDateTime selectFirstConflictEndTime(@Param("lineId") Long lineId,
|
|||
|
|
@Param("startTime") LocalDateTime startTime,
|
|||
|
|
@Param("endTime") LocalDateTime endTime,
|
|||
|
|
@Param("excludeOperationId") Long excludeOperationId);
|
|||
|
|
|
|||
|
|
/**
|
|||
|
|
* 返回命中锁定的 lock_end_time(若未命中返回 null)
|
|||
|
|
*/
|
|||
|
|
LocalDateTime selectFirstHitLockEndTime(@Param("lineId") Long lineId,
|
|||
|
|
@Param("startTime") LocalDateTime startTime,
|
|||
|
|
@Param("endTime") LocalDateTime endTime,
|
|||
|
|
@Param("planId") Long planId,
|
|||
|
|
@Param("excludeOperationId") Long excludeOperationId);
|
|||
|
|
|
|||
|
|
int insertOperation(ApsScheduleOperationEntity op);
|
|||
|
|
|
|||
|
|
int insertChangeLog(ApsScheduleChangeLogEntity log);
|
|||
|
|
|
|||
|
|
int updatePlanStatus(@Param("planId") Long planId, @Param("status") Integer status, @Param("updateBy") String updateBy);
|
|||
|
|
}
|
|||
|
|
|