Пример #1
0
        /// <summary>
        /// 初始化基本变量
        /// </summary>
        /// <returns></returns>
        static bool Init()
        {
            var serverUser = GeneralProcess.GetUserByLoginName(AppConfig.ServerAccount);

            if (serverUser == null)
            {
                Log("通信管理员账号信息错误,请检查配置!");
                return(false);
            }

            ProcessInvoke.SetupGlobalRepositoryContext(serverUser, serverUser.Domain);

            using (var context = new RepositoryDbContext())
            {
                foreach (var data in AppConfig.CommandDatas)
                {
                    ProduceDatas.Add(context.Set <CommandData>().First(obj => obj.DataName == data));
                }

                foreach (var data in AppConfig.RunningTimeDatas)
                {
                    RunningTimeDatas.Add(context.Set <CommandData>().First(obj => obj.DataName == data));
                }

                _hotelGuids = context.Set <HotelRestaurant>().ToList();
            }

            _produceEndDayHour = DateTime.Now.AddHours(-1).GetCurrentHour();
            _produceEndDay     = DateTime.Now.AddDays(-1).GetToday();

            Log($"【{DateTime.Now:yyyy-MM-dd HH:mm:ss}】系统初始化完成。");
            return(true);
        }
Пример #2
0
        /// <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);
        }
Пример #3
0
        static void Main()
        {
            var serverUser = GeneralProcess.GetUserByLoginName("CommnicationServer");

            if (serverUser == null)
            {
                Console.WriteLine(@"通信管理员账号信息错误,请检查配置!");
                return;
            }

            RepositoryBase.ContextGlobal = new RepositoryContext()
            {
                CurrentUser   = serverUser,
                CurrentDomain = serverUser.Domain
            };
        }
Пример #4
0
        public ActionResult Authority(Guid guid)
        {
            var role = ProcessInvoke <WdRoleProcess>().GetRole(guid);

            if (role == null)
            {
                return(Json(new JsonStruct()
                {
                    Message = "没有找到指定系统角色,请重新尝试!"
                },
                            JsonRequestBehavior.AllowGet));
            }

            var model = new AuthorityViewModel()
            {
                Role        = role,
                Permissions = GeneralProcess.GetSysPeremissions()
            };

            return(View(model));
        }
Пример #5
0
        protected override void OnStartup(StartupEventArgs e)
        {
            AppDomain.CurrentDomain.UnhandledException += UnhandledExceptionHandler;
            Current.DispatcherUnhandledException       += AppUnhandleExceptionHandler;

            //DbRepository.ConnectionName = "Lampblack_Platform";

            var serverUser = GeneralProcess.GetUserByLoginName(AppConfig.ServerAccount);

            if (serverUser == null)
            {
                MessageBox.Show("通信管理员账号信息错误,请检查配置!");
                return;
            }

            ProcessInvoke.SetupGlobalRepositoryContext(serverUser, serverUser.Domain);

            ActiveClientManager.Init(AppConfig.DeviceConnectionChevkInterval, AppConfig.DeviceDisconnectInterval);

            base.OnStartup(e);
        }