using System; using System.Collections.Generic; using System.Threading.Tasks; using Microsoft.AspNetCore.Mvc; using NPP.SmartSchedue.Api.Contracts.Services.Integration.Output; namespace NPP.SmartSchedue.Api.Contracts.Services.Equipment; /// /// 设备服务接口 /// 提供设备查询和可用性检查等功能 /// public interface IEquipmentService { /// /// 获取指定日期的可用设备列表 /// /// 查询日期 /// 工序ID(可选) /// 可用设备列表 Task> GetAvailableEquipmentAsync(DateTime date, long? processId = null); /// /// 检查指定设备在指定日期是否可用 /// /// 设备ID /// 检查日期 /// 是否可用 Task IsEquipmentAvailableAsync(long equipmentId, DateTime date); /// /// 获取指定日期范围内的设备使用统计 /// /// 开始日期 /// 结束日期 /// 设备使用统计 Task GetEquipmentUsageStatisticsAsync(DateTime startDate, DateTime endDate); /// /// 批量检查设备可用性 /// /// 设备ID列表 /// 检查日期 /// 设备可用性结果字典 Task> BatchCheckEquipmentAvailabilityAsync(List equipmentIds, DateTime date); }