/*
 * Author: wangjian
 * 生成Service
 */
package com.tofly.dispatch.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.tofly.dispatch.dto.EmergencyDTO;
import com.tofly.dispatch.dto.EmergencyQuery;
import com.tofly.dispatch.entity.Emergency;
import com.tofly.dispatch.vo.EmergencyVO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Set;

/**
 * 应急事件（处置预案、事件分析）
 *
 * @author xqf
 * @date Mon Apr 25 00:00:00 CST 2022
 */
public interface EmergencyService extends IService<Emergency> {

    /**
     * 新增应急事件（处置预案、事件分析）
     * @param emergencyDTO
     */
    void insert(EmergencyDTO emergencyDTO,List<MultipartFile> fileList);

    /**
     * 修改应急事件（处置预案、事件分析）
     * @param emergencyDTO
     */
    void edit(EmergencyDTO emergencyDTO,List<MultipartFile> fileList);

    /**
     * 批量删除应急事件（处置预案、事件分析）
     * @param ids 数据ID
     */
    void delete(Set<Long> ids);

    /**
     * 分页查询
     * @param query 查询条件
     * @return 分页列表
     */
    Page<EmergencyVO> pageList(Page page, EmergencyQuery query);

    /**
     * 查询所有应急事件（处置预案、事件分析），支持模糊搜索
     * @param query 查询条件
     * @return 应急事件（处置预案、事件分析）列表
     */
    List<Emergency> all(EmergencyQuery query);

    /**
     * 获取详情信息-应急事件（处置预案、事件分析
     * @param id 事件ID
     * @return 事件详情
     */
    EmergencyVO get(Long id);
}
