package com.foreverwin.mesnac.equip.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.foreverwin.mesnac.equip.dto.ResourceInspectTaskDto;
import com.foreverwin.mesnac.equip.model.ResourceInspectTask;
import com.baomidou.mybatisplus.extension.service.IService;
import com.foreverwin.modular.core.util.FrontPage;

import java.util.List;

/**
 * <p>
 * 设备点检任务表 服务类
 * </p>
 *
 * @author pavel_liu
 * @since 2021-07-20
 */
public interface ResourceInspectTaskService extends IService<ResourceInspectTask> {

    /**
     *  分页查询
     * @param frontPage
     * @return
     */
    IPage<ResourceInspectTask> selectPage(FrontPage<ResourceInspectTask> frontPage, ResourceInspectTask resourceInspectTask);

    List<ResourceInspectTask> selectList(ResourceInspectTask resourceInspectTask);

    /**
     *  任务总览
     * @param resourceInspectTaskDto
     * @return
     */
    List<ResourceInspectTaskDto> findResourceInspectTaskList(ResourceInspectTaskDto resourceInspectTaskDto);

    /**获取检验任务明细
     *  判断状态；
     *  1、检验明细是否创建
     *  2、检验清单是否更新
     * **/
    ResourceInspectTask getResourceInspectTaskAll(ResourceInspectTask resourceInspectTask);

    /**
     * 开始或取消任务
     * @param resourceInspectTask
     * @return
     */
    ResourceInspectTask startOrCancelTask(ResourceInspectTask resourceInspectTask);

    /**
     * 点击保存：保存任务主表，检验项从表、备品从表
     * @param resourceInspectTaskDto
     */
    void saveOrUpdateTaskInfo(ResourceInspectTaskDto resourceInspectTaskDto);


    /**
     * 扫码设备编号，获取当天的点检任务
     * @param resourceInspectTaskDto
     * @return
     */
    ResourceInspectTask getInspectTaskByResource(ResourceInspectTaskDto resourceInspectTaskDto);


}