提交记录修改UI/ViewModels/CategoryPageVM.cs+38 −28看文件
| @@ -14,6 +14,7 @@ using UI.Controls; | ||
| 14 | 14 | using UI.Controls.Select; |
| 15 | 15 | using UI.Models; |
| 16 | 16 | using UI.Models.Category; |
| 17 | 新增:using UI.Servicers; | |
| 17 | 18 | using UI.Views; |
| 18 | 19 | |
| 19 | 20 | namespace UI.ViewModels |
| @@ -24,6 +25,8 @@ namespace UI.ViewModels | ||
| 24 | 25 | private readonly MainViewModel mainVM; |
| 25 | 26 | private readonly IAppData appData; |
| 26 | 27 | private readonly IWebData _webData; |
| 28 | 新增: private readonly IUIServicer _uiServicer; | |
| 29 | 新增: | |
| 27 | 30 | public Command GotoListCommand { get; set; } |
| 28 | 31 | /// <summary> |
| 29 | 32 | /// 打开编辑命令 |
| @@ -55,12 +58,13 @@ namespace UI.ViewModels | ||
| 55 | 58 | public Command DirectoriesCommand { get; set; } |
| 56 | 59 | |
| 57 | 60 | |
| 58 | 删除: public CategoryPageVM(ICategorys categorys, MainViewModel mainVM, IAppData appData, IWebData webData_) | |
| 61 | 新增: public CategoryPageVM(ICategorys categorys, MainViewModel mainVM, IAppData appData, IWebData webData_, IUIServicer uIServicer_) | |
| 59 | 62 | { |
| 60 | 63 | this.categorys = categorys; |
| 61 | 64 | this.mainVM = mainVM; |
| 62 | 65 | this.appData = appData; |
| 63 | 66 | _webData = webData_; |
| 67 | 新增: _uiServicer = uIServicer_; | |
| 64 | 68 | |
| 65 | 69 | GotoListCommand = new Command(new Action<object>(OnGotoList)); |
| 66 | 70 | EditCommand = new Command(new Action<object>(OnEdit)); |
| @@ -307,33 +311,37 @@ namespace UI.ViewModels | ||
| 307 | 311 | #endregion |
| 308 | 312 | |
| 309 | 313 | #region 删除分类 |
| 310 | 删除: private void DelAppCategory() | |
| 314 | 新增: private async void DelAppCategory() | |
| 311 | 315 | { |
| 312 | 316 | if (SelectedAppCategoryItem == null) |
| 313 | 317 | { |
| 314 | 318 | return; |
| 315 | 319 | } |
| 316 | 删除: var category = categorys.GetCategory(SelectedAppCategoryItem.Data.ID); | |
| 317 | 删除: if (category != null) | |
| 320 | 新增: bool isConfirm = await _uiServicer.ShowConfirmDialogAsync("删除分类", "是否确认删除该分类?"); | |
| 321 | 新增: if (isConfirm) | |
| 318 | 322 | { |
| 319 | 删除: categorys.Delete(category); | |
| 320 | 删除: var apps = appData.GetAppsByCategoryID(category.ID); | |
| 321 | 删除: foreach (var app in apps) | |
| 323 | 新增: var category = categorys.GetCategory(SelectedAppCategoryItem.Data.ID); | |
| 324 | 新增: if (category != null) | |
| 322 | 325 | { |
| 323 | 删除: app.CategoryID = 0; | |
| 324 | 删除: app.Category = null; | |
| 325 | 删除: appData.UpdateApp(app); | |
| 326 | 删除: } | |
| 326 | 新增: categorys.Delete(category); | |
| 327 | 新增: var apps = appData.GetAppsByCategoryID(category.ID); | |
| 328 | 新增: foreach (var app in apps) | |
| 329 | 新增: { | |
| 330 | 新增: app.CategoryID = 0; | |
| 331 | 新增: app.Category = null; | |
| 332 | 新增: appData.UpdateApp(app); | |
| 333 | 新增: } | |
| 327 | 334 | |
| 328 | 删除: // 从界面移除 | |
| 335 | 新增: // 从界面移除 | |
| 329 | 336 | |
| 330 | 删除: Data.Remove(SelectedAppCategoryItem); | |
| 331 | 删除: if (Data.Count == 0) | |
| 332 | 删除: { | |
| 333 | 删除: Data = new System.Collections.ObjectModel.ObservableCollection<CategoryModel>(); | |
| 334 | 删除: } | |
| 335 | 删除: mainVM.Toast("分类已删除", Controls.Window.ToastType.Success); | |
| 337 | 新增: Data.Remove(SelectedAppCategoryItem); | |
| 338 | 新增: if (Data.Count == 0) | |
| 339 | 新增: { | |
| 340 | 新增: Data = new System.Collections.ObjectModel.ObservableCollection<CategoryModel>(); | |
| 341 | 新增: } | |
| 342 | 新增: mainVM.Toast("分类已删除", Controls.Window.ToastType.Success); | |
| 336 | 343 | |
| 344 | 新增: } | |
| 337 | 345 | } |
| 338 | 346 | } |
| 339 | 347 | #endregion |
| @@ -443,23 +451,25 @@ namespace UI.ViewModels | ||
| 443 | 451 | #endregion |
| 444 | 452 | |
| 445 | 453 | #region 删除分类 |
| 446 | 删除: private void DelWebSiteCategory() | |
| 454 | 新增: private async void DelWebSiteCategory() | |
| 447 | 455 | { |
| 448 | 456 | if (SelectedWebCategoryItem == null) |
| 449 | 457 | { |
| 450 | 458 | return; |
| 451 | 459 | } |
| 452 | 删除: | |
| 453 | 删除: _webData.DeleteWebSiteCategory(SelectedWebCategoryItem.Data); | |
| 454 | 删除: | |
| 455 | 删除: // 从界面移除 | |
| 456 | 删除: WebCategoryData.Remove(SelectedWebCategoryItem); | |
| 457 | 删除: if (WebCategoryData.Count == 0) | |
| 460 | 新增: bool isConfirm = await _uiServicer.ShowConfirmDialogAsync("删除分类", "是否确认删除该分类?"); | |
| 461 | 新增: if (isConfirm) | |
| 458 | 462 | { |
| 459 | 删除: WebCategoryData = new System.Collections.ObjectModel.ObservableCollection<WebCategoryModel>(); | |
| 460 | 删除: } | |
| 461 | 删除: mainVM.Toast("分类已删除", Controls.Window.ToastType.Success); | |
| 463 | 新增: _webData.DeleteWebSiteCategory(SelectedWebCategoryItem.Data); | |
| 462 | 464 | |
| 465 | 新增: // 从界面移除 | |
| 466 | 新增: WebCategoryData.Remove(SelectedWebCategoryItem); | |
| 467 | 新增: if (WebCategoryData.Count == 0) | |
| 468 | 新增: { | |
| 469 | 新增: WebCategoryData = new System.Collections.ObjectModel.ObservableCollection<WebCategoryModel>(); | |
| 470 | 新增: } | |
| 471 | 新增: mainVM.Toast("分类已删除", Controls.Window.ToastType.Success); | |
| 472 | 新增: } | |
| 463 | 473 | } |
| 464 | 474 | #endregion |
| 465 | 475 | #endregion |

