/// <summary> /// 初始化网站全局信息 /// </summary> private void GlobalInitial() { DbRepository.ConnectionName = "Lampblack_Platform"; GeneralProcess.LoadBaseInfomations(); var deviceModels = GeneralProcess.GetDeviceModels(); foreach (var model in deviceModels) { var rate = new CleanessRate(model); PlatformCaches.Add($"CleanessRate-{model.Id}", rate, false, "deviceModels"); } var configDictionary = new Dictionary <string, object> { { "deviceTypeGuid", ((IList <DeviceType>) GeneralProcess.GetConfig <DeviceType>(obj => obj.DeviceTypeCode == "WD_Lampblack")) .FirstOrDefault()?.Id }, { "firmwareSetGuid", ((IList <FirmwareSet>) GeneralProcess.GetConfig <FirmwareSet>(obj => obj.FirmwareSetName == "油烟协议第一版")) .FirstOrDefault()?.Id } }; var userDiscticts = (IList <SysDictionary>)GeneralProcess.GetConfig <SysDictionary>(c => c.ItemName == "userDistrict"); PlatformCaches.Add("userDistrict", userDiscticts, false, "SystemConfig"); LampblackConfig.InitConfig(configDictionary); WdControllerBase.LoginName = LampblackConfig.LoginName; PlatformCaches.Add("Cleaness", ProcessInvoke.Instance <HotelRestaurantProcess>().GetHotelCleanessList()); var updateCleaness = new WdScheduler(SchedulerType.Interval) { Interval = 120000 }; updateCleaness.OnExecuting += () => { PlatformCaches.Add("Cleaness", ProcessInvoke.Instance <HotelRestaurantProcess>().GetHotelCleanessList()); }; WdSchedulerManager.Register(updateCleaness); PlatformCaches.Add("HotelLocations", ProcessInvoke.Instance <HotelRestaurantProcess>().GetHotelLocations()); var updateLocations = new WdScheduler(SchedulerType.Interval) { Interval = 120000 }; updateLocations.OnExecuting += () => { PlatformCaches.Add("HotelLocations", ProcessInvoke.Instance <HotelRestaurantProcess>().GetHotelLocations()); }; WdSchedulerManager.Register(updateLocations); }
/// <summary> /// 获取清洁度等级 /// </summary> /// <param name="current"></param> /// <param name="rate"></param> /// <returns></returns> public static string GetCleanessRate(double?current, CleanessRate rate) { if (current == null) { return(CleanessRateResult.NoData); } if (current < rate.Fail) { return(CleanessRateResult.Fail); } if (current < rate.Worse) { return(CleanessRateResult.Worse); } return(current < rate.Qualified ? CleanessRateResult.Qualified : CleanessRateResult.Good); }