/// <summary> /// 保存用户设置 /// </summary> /// <param name="token"></param> /// <returns></returns> public bool SaveUserSettingByToken(string token, MySettingInfo mySetting) { bool result = false; try { string apiName = "setting"; UpdateSettingRequest settingRequest = new UpdateSettingRequest(); settingRequest.notSelectedType = new List <string>(); settingRequest.imageActive = mySetting.IsCheckPicInDucument; settingRequest.customActive = mySetting.IsUseCustumCi; foreach (var item in mySetting.CategoryInfos) { if (!item.CheckedState) { settingRequest.notSelectedType.Add(item.Code); } } string json = JsonConvert.SerializeObject(settingRequest); string resultStr = HttpHelper.HttpUrlSend(apiName, "PATCH", json, token); CommonResponse resultInfo = JsonConvert.DeserializeObject <CommonResponse>(resultStr); if (resultInfo != null && resultInfo.state) { result = true; } } catch (Exception ex) { WPFClientCheckWordUtil.Log.TextLog.SaveError(ex.Message); } return(result); }
private async void InitData() { Task task = new Task(() => { EventAggregatorRepository.EventAggregator.GetEvent <SettingWindowBusyIndicatorEvent>().Publish(new AppBusyIndicator { IsBusy = true }); try { APIService service = new APIService(); MySettingInfo settingInfo = service.GetUserSettingByToken(UtilSystemVar.UserToken); if (settingInfo != null) { viewModel.IsCheckPicInDucument = settingInfo.IsCheckPicInDucument; viewModel.IsUseCustumCi = settingInfo.IsUseCustumCi; viewModel.CategoryInfos = new System.Collections.ObjectModel.ObservableCollection <CategorySelectInfo>(settingInfo.CategoryInfos.ToList()); EventAggregatorRepository.EventAggregator.GetEvent <WriteToSettingInfoEvent>().Publish(new MySettingInfo { IsCheckPicInDucument = viewModel.IsCheckPicInDucument, IsUseCustumCi = viewModel.IsUseCustumCi, CategoryInfos = viewModel.CategoryInfos.ToList() }); } else { string mySettingInfo = string.Format(@"{0}\MySettingInfo.xml", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\WordAndImgOCR\\LoginInOutInfo\\"); var ui = CheckWordUtil.DataParse.ReadFromXmlPath <string>(mySettingInfo); if (ui != null && ui.ToString() != "") { try { var mySetting = JsonConvert.DeserializeObject <MySettingInfo>(ui.ToString()); if (mySetting != null) { viewModel.IsCheckPicInDucument = mySetting.IsCheckPicInDucument; viewModel.IsUseCustumCi = mySetting.IsUseCustumCi; viewModel.CategoryInfos = new System.Collections.ObjectModel.ObservableCollection <CategorySelectInfo>(settingInfo.CategoryInfos.ToList()); } } catch { } } } } catch (Exception ex) { } System.Threading.Thread.Sleep(500); EventAggregatorRepository.EventAggregator.GetEvent <SettingWindowBusyIndicatorEvent>().Publish(new AppBusyIndicator { IsBusy = false }); }); task.Start(); await task; }
/// <summary> /// 获取用户设置 /// </summary> /// <param name="token"></param> /// <returns></returns> public MySettingInfo GetUserSettingByToken(string token) { MySettingInfo result = null; try { result = new MySettingInfo { IsCheckPicInDucument = true, IsUseCustumCi = true }; //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "通用类目", Code = "111" }); //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "母婴", Code = "222" }); //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "房地产", Code = "333" }); //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "美妆", Code = "444" }); //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "食品", Code = "555" }); //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "医疗", Code = "666" }); //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "教育", Code = "777" }); //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "保健品", Code = "888" }); //result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = true, Name = "其它", Code = "999" }); string apiName = "setting"; string resultStr = HttpHelper.HttpUrlGet(apiName, "Get", token); CommonResponse resultInfo = JsonConvert.DeserializeObject <CommonResponse>(resultStr); if (resultInfo != null && resultInfo.state) { MySettingModel mySettingModel = JsonConvert.DeserializeObject <MySettingModel>(resultInfo.result); if (mySettingModel != null) { result.IsCheckPicInDucument = mySettingModel.imageActive; result.IsUseCustumCi = mySettingModel.customActive; if (mySettingModel.types != null) { foreach (var item in mySettingModel.types) { result.CategoryInfos.Add(new CategorySelectInfo { CheckedState = item.selected, Name = item.typeName, Code = item.typeId }); } } } } } catch (Exception ex) { WPFClientCheckWordUtil.Log.TextLog.SaveError(ex.Message); result = null; } return(result); }
private void ApplySettingBtn_Click(object sender, RoutedEventArgs e) { //调用接口上传设置 Task task = new Task(() => { EventAggregatorRepository.EventAggregator.GetEvent <SettingWindowBusyIndicatorEvent>().Publish(new AppBusyIndicator { IsBusy = true }); bool b = false; try { EventAggregatorRepository.EventAggregator.GetEvent <WriteToSettingInfoEvent>().Publish(new MySettingInfo { IsCheckPicInDucument = viewModel.IsCheckPicInDucument, IsUseCustumCi = viewModel.IsUseCustumCi, CategoryInfos = viewModel.CategoryInfos.ToList() }); var info = new MySettingInfo { IsCheckPicInDucument = viewModel.IsCheckPicInDucument, IsUseCustumCi = viewModel.IsUseCustumCi, CategoryInfos = viewModel.CategoryInfos.ToList() }; APIService service = new APIService(); b = service.SaveUserSettingByToken(UtilSystemVar.UserToken, info); if (b) { EventAggregatorRepository.EventAggregator.GetEvent <GetWordsEvent>().Publish(true); } } catch (Exception ex) { } EventAggregatorRepository.EventAggregator.GetEvent <SettingWindowBusyIndicatorEvent>().Publish(new AppBusyIndicator { IsBusy = false }); if (b) { ShowTipsInfo("应用设置成功"); } else { ShowTipsInfo("应用设置失败"); } }); task.Start(); }