package com.pqs9900.service.webtool;

import com.njcn.pojo.commons.device.Tree;

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

public interface CsvDataService {
    /**
     * @Author chendaofei
     * @Description
     * @Date 16:31 2020/4/20
     **/
    String getCsvAsSession(Integer lineid, Date beginTime, Date endTime, HttpServletResponse response, HttpServletRequest request)throws IOException;

    /**
     * @Author chendaofei
     * @Description
     * @Date 9:02 2020/4/24
     **/
    Map<String,Object> flushProgress(HttpServletRequest request, HttpServletResponse response);

    /**
     * @Author chendaofei
     * @Description
     * @Date 13:40 2020/4/8
     **/
    Map<String,Object> getAllInfo(Integer lineid,Integer page,Integer pageSize,Date beginTime, Date endTime);

    /**
     * @Author chendaofei
     * @Description 批量导出
     * @Date 13:40 2020/4/8
     **/
    String getCsvBatch(List<Integer> list, Date beginTime, Date endTime, HttpServletResponse response) throws IOException;

    /**
     * @Author chendaofei
     * @Description 完整性任务手动操作
     * @Date 10:30 2020/4/26
     **/
    String startHistoryTask(Integer lineNo,Date startTime,Date endTime);

    /**
     * @Author chendaofei
     * @Description 设备树pq9900专用
     * @Date 15:41 2020/6/5
     **/
    List<Tree> getTree();


    String getAllWavedataToCsv(String startTIme,String endTime, int flag,Integer type);

    void downloadDataZip(HttpServletResponse response);
}
