package cn.service.atv;

import java.util.List;
import java.util.Map;
import cn.common.page.response.Result;
import cn.orm.sqltoy.model.Page;
import cn.pojo.atv.AtvBroadcast;
import cn.pojo.atv.AtvTts;
import cn.pojo.atv.vo.AtvEquipmentOnlineStatus;
import io.swagger.v3.oas.annotations.parameters.RequestBody;
import org.springframework.web.multipart.MultipartFile;

public interface IAtvService
{
	boolean playVoice(String id, MultipartFile files) throws Exception ;
	Boolean downloadLog(Map<String,Object> whereMap);
	Boolean rebootAll(Map<String,Object> whereMap);
	Boolean rebootOne(Map<String,Object> whereMap); 
	Boolean upgradeOne(Map<String,Object> whereMap); 
	Result<?> upgradeAll(Map<String,Object> whereMap);

	boolean uploadText(AtvBroadcast entity);
	boolean uploadTts(AtvTts entity);
	boolean playTts(String id);

	/**根据时间查询日志数量*/
    Long logCount(String trainId, String startTime, String endTime);

    /**根据车辆查询开始事件前设备最后在线状态
     * @param trainId   车辆ID
     * @param startTime 开始时间
     */
    List<AtvEquipmentOnlineStatus> findOnlineStatus(String trainId, String startTime);
    /**
     * 根据列车获取给定天的日志
     * @param trainId   列车ID
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @param number    数量（从哪条开始）
     * @param pageSize  获取数量
     */
	Page<?> logPlayback(String trainId, String startTime, String endTime, Integer number, Integer pageSize);
}
