package com.aegis.emergency.dispatch.service;

import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.aegis.emergency.dispatch.domain.DispatchTaskLog;

/**
 * 调度任务操作日志 Service 接口
 *
 * 负责记录与查询调度任务的关键操作日志
 *
 * @author aegis
 */
public interface IDispatchTaskLogService extends IService<DispatchTaskLog> {

    /**
     * 根据任务ID查询日志列表
     *
     * @param taskId 任务ID
     * @return 日志集合
     */
    List<DispatchTaskLog> listByTaskId(Long taskId);

    /**
     * 记录日志
     *
     * @param taskId 任务ID
     * @param action 操作类型
     * @param payload 操作内容（JSON 字符串）
     * @param operatorId 操作人ID
     * @param operatorName 操作人姓名
     * @return 是否成功
     */
    boolean recordLog(Long taskId, String action, String payload, Long operatorId, String operatorName);
}