package com.aegis.emergency.alert.service;

import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.aegis.emergency.alert.domain.DutyAlert;

/**
 * 警情Service接口
 * 
 * @author aegis
 */
public interface DutyAlertService extends IService<DutyAlert> {
    
    /**
     * 根据条件查询警情列表
     * 
     * @param condition 警情信息
     * @return 警情集合
     */
    List<DutyAlert> listByCondition(DutyAlert condition);
    
    /**
     * 根据警情编号查询警情
     * 
     * @param alertNo 警情编号
     * @return 警情信息
     */
    DutyAlert getByAlertNo(String alertNo);
    
    /**
     * 提交警情（从草稿状态变为已接警状态）
     * 
     * @param id 警情ID
     * @param alertData 警情更新数据（可选，如果提供则先更新数据再改变状态）
     * @return 是否提交成功
     */
    boolean submitAlert(Long id, DutyAlert alertData);
    
    /**
     * 关闭警情（将状态变为已关闭）
     * 
     * @param id 警情ID
     * @return 是否关闭成功
     */
    boolean closeAlert(Long id);
}