using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using Domain; using Service; using Newtonsoft.Json; using Newtonsoft.Json.Converters; namespace WebSite.Controllers { public class OverviewController : BaseController { public IHostManager HostManager { get; set; } public IOverviewManager OverviewManager { get; set; } public IHostFaultRecordsManager HostFaultRecordsManager { get; set; } #region Action /// /// 回路状态记录 /// /// [Authorize] public ActionResult HostModalRecords() { return View(); } /// /// 获取回路状态记录 /// /// /// 严重怀疑这里的调用有问题 /// /// /// /// /// /// /// /// /// /// public ActionResult LoadHostModalRecords(int? page, int? rows, string order, string sort, string roomNumber, string startTime, string endTime, DeviceType? deviceType, string modalIds) { long total = 0; var list = OverviewManager.LoadHostModalRecords(out total, 1, 100, order, sort, roomNumber, startTime, endTime, deviceType, modalIds, CurrentHotelID); var result = new { total = total, rows = list }; return Content(JsonConvert.SerializeObject(result, new DataTableConverter())); } /// /// 回路异常记录 /// /// [Authorize] public ActionResult HostAbnormalRecords() { return View(); } /// /// 获取异常类型 /// /// public ActionResult LoadAbnormalType() { IList result = new List(); result.Add(new { Value = 1, Name = "门磁超过2天无开关记录(表示门磁已坏)" }); result.Add(new { Value = 2, Name = "已取电,10小时内红外无打开记录(表示红外已坏)" }); result.Add(new { Value = 3, Name = "已取电,10秒内门磁无开关记录(表示取电异常)" }); return Json(result, JsonRequestBehavior.AllowGet); } /// /// 获取回路异常记录 /// /// /// /// /// /// /// public ActionResult LoadHostAbnormalRecords(int? page, int? rows, string order, string sort, int type) { //严重怀疑这里的代码有问题 long total = 0; var list = OverviewManager.LoadHostAbnormalRecords(type, CurrentHotelID); var result = new { total = total, rows = list }; return Content(JsonConvert.SerializeObject(result, new DataTableConverter())); } /// /// 外设异常记录 /// /// [Authorize] public ActionResult HostFaultRecords() { return View(); } /// /// 获取存在外设异常的房号 /// /// public ActionResult LoadRoomNumbers() { IList result = new List(); IList roomNumbers = HostFaultRecordsManager.LoadRoomNumbers(CurrentHotelID); foreach (string roomNumber in roomNumbers) { result.Add(new { Value = roomNumber, Name = roomNumber }); } result.Insert(0, new { Value = "", Name = HttpContext.InnerLanguage("CheckAll") }); return Json(result, JsonRequestBehavior.AllowGet); } /// /// 获取回路异常记录 /// /// /// /// /// /// /// /// /// /// /// public ActionResult LoadHostFaultRecords(int? page, int? rows, string order, string sort, string roomNumber, string startTime, string endTime, DeviceType? deviceType, string modalIds) { long total = 0; var list = HostFaultRecordsManager.LoadHostFaultRecords(out total, 1, 100, order, sort, roomNumber, startTime, endTime, deviceType, modalIds, CurrentHotelID); var result = new { total = total, rows = list }; return Content(JsonConvert.SerializeObject(result, new DataTableConverter())); } [Authorize] public ActionResult Index() { return View("SimonIndex"); } /// /// 加载RCU联网通讯状况 /// /// [Authorize] public ActionResult LoadRCUState() { var list = HostManager.LoadAll(CurrentHotelID); var state = new { Online = list.Count(r => r.Status == true), Offline = list.Count(r => r.Status == false), Total = list.Count() }; return Json(state, JsonRequestBehavior.AllowGet); } /// /// 加载客房房门开关状况 /// /// [Authorize] public ActionResult LoadDoorState() { return Json(OverviewManager.LoadDoorState(CurrentHotelID), JsonRequestBehavior.AllowGet); } /// /// 加载空调运行状况 /// /// [Authorize] public ActionResult LoadAirConditionState() { return Json(OverviewManager.LoadAirConditionState(CurrentHotelID), JsonRequestBehavior.AllowGet); } /// /// 加载客房出租状况 /// /// [Authorize] public ActionResult LoadRoomRentState() { return Json(OverviewManager.LoadRoomRentState(CurrentHotelID), JsonRequestBehavior.AllowGet); } /// /// 加载正在请求的服务状况 /// /// [Authorize] public ActionResult LoadRoomServiceState() { return Json(OverviewManager.LoadRoomServiceState(), JsonRequestBehavior.AllowGet); } /// /// 加载保险箱状况 /// /// [Authorize] public ActionResult LoadSafeBoxState() { return Json(OverviewManager.LoadSafeBoxState(), JsonRequestBehavior.AllowGet); } /// /// 加载客房状况 /// /// [Authorize] public ActionResult LoadRoomState() { return Json(OverviewManager.LoadRoomState(), JsonRequestBehavior.AllowGet); } /// /// 加载客房窗门状况 /// /// [Authorize] public ActionResult LoadWindowState() { var state = new { }; return Json(state, JsonRequestBehavior.AllowGet); } /// /// 加载客房阳台门状况 /// /// [Authorize] public ActionResult LoadBalconyDoorState() { var state = new { }; return Json(state, JsonRequestBehavior.AllowGet); } #endregion } }