From 2b5d7566fe0a8eb49cb0b17b9d21babeb2bb7747 Mon Sep 17 00:00:00 2001 From: "David P.G" Date: Sat, 5 Jul 2025 00:04:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=88=A0=E5=8D=95=E4=B8=AA?= =?UTF-8?q?=E5=8F=98=E9=87=8F=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ViewModels/VariableTableViewModel.cs | 45 ++++++++++++++++++++++++---- Views/VariableTableView.xaml | 7 +++++ 2 files changed, 47 insertions(+), 5 deletions(-) diff --git a/ViewModels/VariableTableViewModel.cs b/ViewModels/VariableTableViewModel.cs index 6ae272d..a8ae70f 100644 --- a/ViewModels/VariableTableViewModel.cs +++ b/ViewModels/VariableTableViewModel.cs @@ -198,13 +198,9 @@ partial class VariableTableViewModel : ViewModelBase varData.VariableTableId = variableTable.Id; // 更新数据库 - await _varDataRepository.UpdateAsync(varData); + await _varDataRepository.AddAsync(varData); // 更新当前页面的 DataVariables.Add(varData); - var index = variableTable.DataVariables.IndexOf(SelectedVariableData); - // 更新变量表中的 - if (index >= 0 && index < variableTable.DataVariables.Count) - variableTable.DataVariables[index] = varData; NotificationHelper.ShowMessage($"添加变量成功:{varData?.Name}", NotificationType.Success); } catch (Exception e) @@ -215,6 +211,45 @@ partial class VariableTableViewModel : ViewModelBase } } + [RelayCommand] + private async void DeleteVarData() + { + if (SelectedVariableData == null) + { + NotificationHelper.ShowMessage("请选择要删除的变量", NotificationType.Warning); + return; + } + + var confirm = await _dialogService.ShowConfrimeDialog( + "删除确认", + $"确定要删除变量 \"{SelectedVariableData.Name}\" 吗?", + "删除"); + + if (!confirm) + return; + + try + { + var result = await _varDataRepository.DeleteAsync(SelectedVariableData); + if (result > 0) + { + var dataName = SelectedVariableData.Name; + DataVariables.Remove(SelectedVariableData); + NotificationHelper.ShowMessage($"变量 \"{dataName}\" 删除成功", NotificationType.Success); + } + else + { + NotificationHelper.ShowMessage($"变量 \"{SelectedVariableData.Name}\" 删除失败", NotificationType.Error); + } + } + catch (Exception e) + { + string msg = $"删除变量的过程中发生了不可预期的错误:"; + Logger.Error(msg + e); + NotificationHelper.ShowMessage(msg + e.Message, NotificationType.Error); + } + } + // [RelayCommand] // private async void ImportFromExcel() // { diff --git a/Views/VariableTableView.xaml b/Views/VariableTableView.xaml index 56d4181..eb7f62b 100644 --- a/Views/VariableTableView.xaml +++ b/Views/VariableTableView.xaml @@ -69,6 +69,13 @@ + + + + + +