package cn.cecep.talroad.service.analysis;

import cn.cecep.talroad.domain.analysis.SRaRealTimeAnalysisStop;
import cn.cecep.talroad.vo.EChartsVO;
import cn.cecep.talroad.vo.query.analysis.SRaRealTimeAnalysisStopQuery;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import freemarker.template.TemplateException;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
 * 企业装备停限产分析报(DCS)Service接口
 *
 * @author szhpt
 * @date 2023-03-24*/
public interface ISRaRealTimeAnalysisStopService extends IService<SRaRealTimeAnalysisStop>
{
    /**
     * 查询企业装备停限产分析报(DCS)列表
     *
     * @param sRaRealTimeAnalysisStop 企业装备停限产分析报(DCS)
     * @return 企业装备停限产分析报(DCS)集合
     */
    public List<SRaRealTimeAnalysisStop> selectSRaRealTimeAnalysisStopList(SRaRealTimeAnalysisStopQuery sRaRealTimeAnalysisStop);

    /**
     * 工序options
     * @param industryCategoryCode
     * @return
     */
    List<Map<String, Object>> pullWorkingProcedureOptions(String industryCategoryCode);

    IPage<SRaRealTimeAnalysisStop> selectSRaRealTimeAnalysisStopListPage(SRaRealTimeAnalysisStopQuery sRaRealTimeAnalysisStop);

    EChartsVO resultCurve(String deviceId, String monitoringStartTime, String monitoringEndTime);

    /**
     * 企业装备停限产分析报告导出
     * @param response
     * @param sRaRealTimeAnalysisStop
     */
    void exportWordReport(HttpServletResponse response, SRaRealTimeAnalysisStopQuery sRaRealTimeAnalysisStop) throws TemplateException, IOException;
}
