feat: add maintenance plan and task repositories
This commit is contained in:
parent
305e09101a
commit
db41b5a8f5
|
|
@ -0,0 +1,17 @@
|
||||||
|
package com.ether.pms.mdm.repository;
|
||||||
|
|
||||||
|
import com.ether.pms.mdm.entity.MaintenancePlan;
|
||||||
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Optional;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
@Repository
|
||||||
|
public interface MaintenancePlanRepository extends JpaRepository<MaintenancePlan, UUID> {
|
||||||
|
List<MaintenancePlan> findByProjectIdAndStatus(UUID projectId, MaintenancePlan.Status status);
|
||||||
|
Optional<MaintenancePlan> findByPlanCode(String planCode);
|
||||||
|
List<MaintenancePlan> findByTriggerType(MaintenancePlan.TriggerType triggerType);
|
||||||
|
List<MaintenancePlan> findByStatusAndTriggerType(MaintenancePlan.Status status, MaintenancePlan.TriggerType triggerType);
|
||||||
|
boolean existsByPlanCode(String planCode);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,28 @@
|
||||||
|
package com.ether.pms.mdm.repository;
|
||||||
|
|
||||||
|
import com.ether.pms.mdm.entity.MaintenanceTask;
|
||||||
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
import org.springframework.data.jpa.repository.Query;
|
||||||
|
import org.springframework.data.repository.query.Param;
|
||||||
|
import org.springframework.stereotype.Repository;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Optional;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
@Repository
|
||||||
|
public interface MaintenanceTaskRepository extends JpaRepository<MaintenanceTask, UUID> {
|
||||||
|
List<MaintenanceTask> findByProjectIdAndStatus(UUID projectId, MaintenanceTask.Status status);
|
||||||
|
List<MaintenanceTask> findByAssignedToAndStatus(UUID assignedTo, MaintenanceTask.Status status);
|
||||||
|
List<MaintenanceTask> findByEquipmentIdAndStatusNot(UUID equipmentId, MaintenanceTask.Status status);
|
||||||
|
Optional<MaintenanceTask> findByTaskCode(String taskCode);
|
||||||
|
boolean existsByTaskCode(String taskCode);
|
||||||
|
|
||||||
|
@Query("SELECT t FROM MaintenanceTask t WHERE t.projectId = :projectId AND t.status IN :statuses")
|
||||||
|
List<MaintenanceTask> findByProjectIdAndStatusIn(@Param("projectId") UUID projectId, @Param("statuses") List<MaintenanceTask.Status> statuses);
|
||||||
|
|
||||||
|
@Query("SELECT t FROM MaintenanceTask t WHERE t.scheduledDate < :date AND t.status = 'PENDING'")
|
||||||
|
List<MaintenanceTask> findOverdueTasks(@Param("date") LocalDateTime date);
|
||||||
|
|
||||||
|
List<MaintenanceTask> findByEquipmentIdAndStatus(UUID equipmentId, MaintenanceTask.Status status);
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue