package com.njcn.supervision.service.device;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.bpm.pojo.param.instance.BpmProcessInstanceCancelParam;
import com.njcn.bpm.pojo.vo.TodoVO;
import com.njcn.bpm.service.IBpmService;
import com.njcn.supervision.pojo.param.device.CheckDeviceParam;
import com.njcn.supervision.pojo.po.device.CheckDevice;
import com.njcn.supervision.pojo.vo.device.CheckDeviceVo;

import java.util.List;

/**
 * <p>
 * 终端周期检测表 服务类
 * </p>
 *
 * @author xy
 * @since 2024-06-13
 */
public interface ICheckDeviceService extends IBpmService<CheckDevice> {

    /**
     * 每日定时查询需要检测的终端装置
     */
    void addCheckDevice();

    Page<CheckDeviceVo> getCheckDeviceList(CheckDeviceParam param);

    CheckDeviceVo getInfoById(String id);

    /**
     * 地市上传终端检测报告
     */
    void submitReport(CheckDeviceParam param);

    /**
     * 重新发起
     */
    void reloadReport(CheckDeviceParam param);

    /**
     * 取消
     */
    String cancel(BpmProcessInstanceCancelParam cancelReqVO);

    List<TodoVO> getTodoBusiness();
}
