コード例 #1
0
        private void InitSurveys()
        {
            // Read Settings
            var file = AssetsExtension.GetFile(LocalSurveys);

            if (file == null)
            {
                return;
            }

            try
            {
                using var reader = new StreamReader(file);

                items = JsonConvert.DeserializeObject <List <Survey> >(reader.ReadToEnd());
            }
            catch (Exception ex)
            {
                Debug.WriteLine("INIT_SURVEYS_ERROR:" + ex.GetBaseException().Message);
            }
        }
コード例 #2
0
        private void InitLocalSettings()
        {
            // Read Settings
            var file = AssetsExtension.GetFile("setting.json");

            if (file == null)
            {
                return;
            }

            try
            {
                using (var reader = new StreamReader(file))
                {
                    var defaultSetting = JsonConvert.DeserializeObject <List <DefaultSetting> >(reader.ReadToEnd(), App.DefaultDeserializeSettings);

                    foreach (var settings in defaultSetting)
                    {
                        foreach (var item in settings.Items)
                        {
                            if (App.LocalDb.Table <Setting>().ToList().FirstOrDefault(se => se.Name.Equals(item.Value.Name)) is Setting setting)
                            {
                                setting.UserId       = CurrentUserId;
                                setting.Category     = item.Value.Category;
                                setting.DefaultValue = item.Value.DefaultValue;
                                setting.Type         = item.Value.Type;
                                setting.Arrange      = item.Value.Arrange;
                                setting.Message      = item.Value.Message;
                                setting.Description  = item.Value.Description;
                                setting.Order        = item.Value.Order;
                                setting.EditDate     = DateTime.Now;

                                App.LocalDb.Update(setting);
                            }
                            else
                            {
                                App.LocalDb.Insert(new Setting
                                {
                                    Id           = Guid.NewGuid(),
                                    UserId       = CurrentUserId,
                                    Name         = item.Value.Name,
                                    Category     = item.Value.Category,
                                    Value        = item.Value.DefaultValue,
                                    DefaultValue = item.Value.DefaultValue,
                                    Type         = item.Value.Type,
                                    Arrange      = item.Value.Arrange,
                                    Message      = item.Value.Message,
                                    Description  = item.Value.Description,
                                    Order        = item.Value.Order,
                                    IsActif      = 1,
                                    AddDate      = DateTime.Now,
                                    EditDate     = DateTime.Now
                                });
                            }

                            if (item.Value.Arrange != null && item.Value.Arrange.Count > 0)
                            {
                                foreach (var oldArr in App.LocalDb.Table <SettingItem>().ToList().FindAll(si => si.Name.Equals(item.Value.Name) && !item.Value.Arrange.Contains(si.Value)))
                                {
                                    App.LocalDb.Delete(oldArr);
                                }

                                foreach (var arr in item.Value.Arrange)
                                {
                                    if (App.LocalDb.Table <SettingItem>().ToList().FirstOrDefault(si => si.Name.Equals(item.Value.Name) && si.Value.Equals(arr)) == null)
                                    {
                                        App.LocalDb.InsertOrReplace(new SettingItem
                                        {
                                            Id    = Guid.NewGuid(),
                                            Name  = item.Value.Name,
                                            Value = arr
                                        });
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine("INIT_LOCAL_SETTINGS_ERROR:" + ex.Message);
            }
        }