package com.fkzy.warn.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fkzy.warn.model.Report;
import com.fkzy.warn.common.request.RequestParameter;
import com.fkzy.warn.common.response.ApiResponse;
import com.fkzy.warn.model.params.GenerateReportParams;

import java.util.List;
import java.util.Map;

/**
 * @author zhangjing
 * @date 2023/10/16 18:17
 * @description
 */
public interface ReportService extends IService<Report> {

    /**
     * 保存
     * @param entity
     * @return
     */
    ApiResponse saveModel(Report entity,String ticket);

    /**
     * 修改
     * @param entity
     * @return
     */
    ApiResponse updateModel(Report entity,String ticket);

    /**
     * 删除
     * @param ids
     * @return
     */
    ApiResponse deleteModel(List<String> ids);

    /**
     * 分页查询
     * @param parameter
     * @return
     */
    Page<Report> queryPage(RequestParameter parameter);


    Map<String,Object> generateReport(GenerateReportParams params, String ticket);
    /**
     * 季度报告生成
     * @return
     */
    void quarterlyReport();

}
