using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using Domain;

namespace Service
{
	public interface IOverviewManager
	{
		object LoadRoomServiceState();

        object LoadRoomRentState(int hotelID);

		/// <summary>
		/// 客房状况
		/// </summary>
		/// <returns></returns>
		object LoadRoomState();

        object LoadDoorState(int hotelID);

        object LoadSafeBoxState();

		/// <summary>
		/// 空调状况
		/// </summary>
		/// <returns></returns>
        object LoadAirConditionState(int hotelID);
        /// <summary>
        /// 回路记录
        /// </summary>
        /// <param name="total"></param>
        /// <param name="page"></param>
        /// <param name="rows"></param>
        /// <param name="order"></param>
        /// <param name="sort"></param>
        /// <param name="roomNumber"></param>
        /// <param name="startTime"></param>
        /// <param name="endTime"></param>
        /// <param name="deviceType"></param>
        /// <param name="modalIds"></param>
        /// <param name="hotelID"></param>
        /// <returns></returns>
        DataTable LoadHostModalRecords(out long total, int page, int rows, string order, string sort, string roomNumber, string startTime, string endTime, DeviceType? deviceType, string modalIds, int hotelID);
        /// <summary>
        /// 回路异常记录
        /// </summary>
        /// <param name="type"></param>
        /// <param name="hotelID"></param>
        /// <returns></returns>
        DataTable LoadHostAbnormalRecords(int type, int hotelID);
        /// <summary>
        /// 获取所有异常客房
        /// </summary>
        /// <returns></returns>
        DataSet LoadHostAbnormalRecordsAll(int type);

		/// <summary>
		/// 加载能量统计
		/// </summary>
		/// <returns></returns>
		DataTable LoadEnergyStatitics(string roomNumbers, DateTimeUnit dateUnit, string startDate, string endDate, DeviceType? deviceType, string modalIds);
	}
}
