public PolicyHeaderViewModel(IPolicyHeaderService CurrentService, BackendDBContext context, IMapper Mapper, TranscationResultHelper transcationResultHelper) { this.CurrentService = CurrentService; this.context = context; mapper = Mapper; TranscationResultHelper = transcationResultHelper; PolicyHeaderSort.Initialization(SortConditions); #region 工具列按鈕初始化 Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdAdd, Text = "新增", TooltipText = "新增", Type = ItemType.Button, PrefixIcon = "mdi mdi-plus-thick", Align = ItemAlign.Left, }); Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdRefresh, Text = "重新整理", TooltipText = "重新整理", PrefixIcon = "mdi mdi-refresh", Align = ItemAlign.Left, }); Toolbaritems.Add("Search"); #endregion }
public MailQueueViewModel(IMailQueueService CurrentService, BackendDBContext context, IMapper Mapper, TranscationResultHelper transcationResultHelper) { this.CurrentService = CurrentService; this.context = context; mapper = Mapper; TranscationResultHelper = transcationResultHelper; MailQueueSort.Initialization(SortConditions); MailQueueStatusCondition.Initialization(MailQueueStatusConditions); CurrentMailQueueStatusCondition.Id = MailQueueStatusConditions[0].Id; CurrentMailQueueStatusCondition.Title = MailQueueStatusConditions[0].Title; FilterMailQueueStatusCondition = CurrentMailQueueStatusCondition.Id; #region 工具列按鈕初始化 Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdAdd, Text = "新增", TooltipText = "新增", Type = ItemType.Button, PrefixIcon = "mdi mdi-plus-thick", Align = ItemAlign.Left, }); Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdRefresh, Text = "重新整理", TooltipText = "重新整理", PrefixIcon = "mdi mdi-refresh", Align = ItemAlign.Left, }); Toolbaritems.Add("Search"); #endregion }
public async Task OnRecordEditConfirm() { #region 進行 Form Validation 檢查驗證作業 if (LocalEditContext.Validate() == false) { return; } #endregion #region 檢查資料完整性 if (isNewRecordMode == true) { var checkedResult = await CurrentService .BeforeAddCheckAsync(CurrentRecord); if (checkedResult.Success == false) { MessageBox.Show("400px", "200px", "警告", VerifyRecordResultHelper.GetMessageString(checkedResult), MessageBox.HiddenAsync); thisView.NeedRefresh(); return; } } else { var checkedResult = await CurrentService .BeforeUpdateCheckAsync(CurrentRecord); if (checkedResult.Success == false) { MessageBox.Show("400px", "200px", "警告", VerifyRecordResultHelper.GetMessageString(checkedResult), MessageBox.HiddenAsync); thisView.NeedRefresh(); return; } } #endregion if (IsShowEditRecord == true) { if (isNewRecordMode == true) { var verifyRecordResult = await CurrentService.AddAsync(CurrentRecord); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } else { var verifyRecordResult = await CurrentService.UpdateAsync(CurrentRecord); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } IsShowEditRecord = false; } }
public async Task OnCommandClicked(CommandClickEventArgs <FlowInboxAdapterModel> args) { FlowInboxAdapterModel item = args.RowData as FlowInboxAdapterModel; if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdEdit) { #region 點選 修改紀錄 按鈕 await CurrentService.MailReadedAsync(item); CurrentRecord = item.Clone(); EditRecordDialogTitle = "修改紀錄"; IsShowEditRecord = true; isNewRecordMode = false; #endregion } else if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdDelete) { #region 點選 刪除紀錄 按鈕 CurrentNeedDeleteRecord = item; #region 檢查關聯資料是否存在 var checkedResult = await CurrentService .BeforeDeleteCheckAsync(CurrentNeedDeleteRecord); await Task.Delay(100); if (checkedResult.Success == false) { MessageBox.Show("400px", "200px", "警告", ErrorMessageMappingHelper.Instance.GetErrorMessage(checkedResult.MessageId), MessageBox.HiddenAsync); await Task.Yield(); thisView.NeedRefresh(); return; } #endregion #region 刪除這筆紀錄 await Task.Yield(); var checkTask = ConfirmMessageBox.ShowAsync("400px", "200px", "警告", "確認要刪除這筆紀錄嗎?", ConfirmMessageBox.HiddenAsync); thisView.NeedRefresh(); var checkAgain = await checkTask; if (checkAgain == true) { var verifyRecordResult = await CurrentService.DeleteAsync(CurrentNeedDeleteRecord.Id); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } #endregion #endregion } }
public async Task RemoveThisRecord(bool NeedDelete) { if (NeedDelete == true) { var verifyRecordResult = await CurrentService.DeleteAsync(CurrentNeedDeleteRecord.Id); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } ConfirmMessageBox.Hidden(); }
public FlowMasterViewModel(IFlowMasterService CurrentService, BackendDBContext context, IMapper Mapper, UserHelper currentUserHelper, TranscationResultHelper transcationResultHelper, CurrentUser currentUser) { this.CurrentService = CurrentService; this.context = context; mapper = Mapper; CurrentUserHelper = currentUserHelper; TranscationResultHelper = transcationResultHelper; CurrentUser = currentUser; FlowMasterSort.Initialization(SortConditions); #region 工具列按鈕初始化 Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdAdd, Text = "新增", TooltipText = "新增", Type = ItemType.Button, PrefixIcon = "mdi mdi-plus-thick", Align = ItemAlign.Left, }); Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdRefresh, Text = "重新整理", TooltipText = "重新整理", PrefixIcon = "mdi mdi-refresh", Align = ItemAlign.Left, }); Toolbaritems.Add("Search"); #endregion #region 互動式彈出功能表 ContextMenu 初始化 ContextMenuItems.Add(new ContextMenuItemModel { Text = "查看來源記錄", Target = ".e-content", Id = "查看來源記錄", IconCss = "mdi mdi-file-find", }); #endregion }
public FlowHistoryViewModel(IFlowHistoryService CurrentService, BackendDBContext context, IMapper Mapper, TranscationResultHelper transcationResultHelper) { this.CurrentService = CurrentService; this.context = context; mapper = Mapper; TranscationResultHelper = transcationResultHelper; FlowHistorySort.Initialization(SortConditions); #region 工具列按鈕初始化 Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdRefresh, Text = "重新整理", TooltipText = "重新整理", PrefixIcon = "mdi mdi-refresh", Align = ItemAlign.Left, }); Toolbaritems.Add("Search"); #endregion }
public MenuDataViewModel(IMenuDataService CurrentService, BackendDBContext context, IMapper Mapper, TranscationResultHelper transcationResultHelper) { this.CurrentService = CurrentService; this.context = context; mapper = Mapper; TranscationResultHelper = transcationResultHelper; MenuDataSort.Initialization(SortConditions); Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdAdd, Text = "新增", TooltipText = "新增", Type = ItemType.Button, PrefixIcon = "mdi mdi-plus-thick", Align = ItemAlign.Left, }); Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdRefresh, Text = "重新整理", TooltipText = "重新整理", PrefixIcon = "mdi mdi-refresh", Align = ItemAlign.Left, }); Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdReOrder, Text = "重新編號", TooltipText = "重新編號", PrefixIcon = "mdi mdi-order-numeric-ascending", Align = ItemAlign.Left, }); Toolbaritems.Add("Search"); }
public async Task OnRecordEditConfirm() { #region 進行 Form Validation 檢查驗證作業 if (LocalEditContext.Validate() == false) { return; } #endregion #region 檢查資料完整性 if (isNewRecordMode == true) { if (string.IsNullOrEmpty(CurrentRecord.PasswordPlaintext)) { MessageBox.Show("400px", "200px", "警告", ErrorMessageMappingHelper.Instance.GetErrorMessage(ErrorMessageEnum.密碼不能為空白), MessageBox.HiddenAsync); thisView.NeedRefresh(); return; } var checkedResult = await CurrentService .BeforeAddCheckAsync(CurrentRecord); if (checkedResult.Success == false) { MessageBox.Show("400px", "200px", "警告", VerifyRecordResultHelper.GetMessageString(checkedResult), MessageBox.HiddenAsync); thisView.NeedRefresh(); return; } CurrentRecord.Salt = Guid.NewGuid().ToString(); CurrentRecord.Password = PasswordHelper.GetPasswordSHA(CurrentRecord.Salt, CurrentRecord.PasswordPlaintext); } else { var checkedResult = await CurrentService .BeforeUpdateCheckAsync(CurrentRecord); if (checkedResult.Success == false) { MessageBox.Show("400px", "200px", "警告", VerifyRecordResultHelper.GetMessageString(checkedResult), MessageBox.HiddenAsync); thisView.NeedRefresh(); return; } if (string.IsNullOrEmpty(CurrentRecord.PasswordPlaintext) == false) { CurrentRecord.Password = PasswordHelper.GetPasswordSHA(CurrentRecord.Salt, CurrentRecord.PasswordPlaintext); } } #endregion if (IsShowEditRecord == true) { if (isNewRecordMode == true) { var verifyRecordResult = await CurrentService.AddAsync(CurrentRecord); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } else { var verifyRecordResult = await CurrentService.UpdateAsync(CurrentRecord); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } IsShowEditRecord = false; } }
public async Task OnCommandClicked(CommandClickEventArgs <WorkOrderAdapterModel> args) { WorkOrderAdapterModel item = args.RowData as WorkOrderAdapterModel; if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdEdit) { #region 點選 修改紀錄 按鈕 CurrentRecord = item.Clone(); EditRecordDialogTitle = "修改紀錄"; IsShowEditRecord = true; isNewRecordMode = false; await GetCategoryMainAdapterModels(); await GetCategorySubAdapterModels(item.CategoryMainId); thisView.NeedRefresh(); #endregion } else if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdDelete) { #region 點選 刪除紀錄 按鈕 CurrentNeedDeleteRecord = item; #region 檢查關聯資料是否存在 var checkedResult = await CurrentService .BeforeDeleteCheckAsync(CurrentNeedDeleteRecord); await Task.Delay(100); if (checkedResult.Success == false) { MessageBox.Show("400px", "200px", "警告", ErrorMessageMappingHelper.Instance.GetErrorMessage(checkedResult.MessageId), MessageBox.HiddenAsync); await Task.Yield(); thisView.NeedRefresh(); return; } #endregion #region 刪除這筆紀錄 await Task.Yield(); var checkTask = ConfirmMessageBox.ShowAsync("400px", "200px", "警告", "確認要刪除這筆紀錄嗎?", ConfirmMessageBox.HiddenAsync); thisView.NeedRefresh(); var checkAgain = await checkTask; if (checkAgain == true) { var verifyRecordResult = await CurrentService.DeleteAsync(CurrentNeedDeleteRecord.Id); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } #endregion #endregion } else if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdShowDetailOfMaster) { #region 點選 開啟多筆 CRUD 對話窗 按鈕 IsShowMoreDetailsRecord = true; ShowMoreDetailsRecordDialogTitle = MagicHelper.訂單明細管理功能名稱; MasterRecord masterRecord = new MasterRecord() { Id = item.Id }; Header = masterRecord; if (ShowMoreDetailsGrid != null) { await Task.Delay(100); // 使用延遲,讓 Header 的資料綁定可以成功 ShowMoreDetailsGrid.RefreshGrid(); } #endregion } }
public WorkOrderViewModel(IWorkOrderService CurrentService, BackendDBContext context, IMapper Mapper, TranscationResultHelper transcationResultHelper, IFlowMasterService flowMasterService, UserHelper currentUserHelper, CurrentUser currentUser, ICategoryMainService categoryMainService, ICategorySubService categorySubService) { this.CurrentService = CurrentService; this.context = context; mapper = Mapper; TranscationResultHelper = transcationResultHelper; FlowMasterService = flowMasterService; CurrentUserHelper = currentUserHelper; CurrentUser = currentUser; CategoryMainService = categoryMainService; CategorySubService = categorySubService; WorkOrderSort.Initialization(SortConditions); WorkOrderStatusCondition.Initialization(WorkOrderStatusConditions); CurrentWorkOrderStatusCondition.Id = WorkOrderStatusConditions[0].Id; CurrentWorkOrderStatusCondition.Title = WorkOrderStatusConditions[0].Title; FilterWorkOrderStatusCondition = CurrentWorkOrderStatusCondition.Id; WorkOrderStatusCondition.Initialization(WorkOrderStatusRecordConditions); WorkOrderStatusRecordConditions.RemoveAt(0); #region 工具列按鈕初始化 Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdAdd, Text = "新增", TooltipText = "新增", Type = ItemType.Button, PrefixIcon = "mdi mdi-plus-thick", Align = ItemAlign.Left, }); Toolbaritems.Add(new ItemModel() { Id = ButtonIdHelper.ButtonIdRefresh, Text = "重新整理", TooltipText = "重新整理", PrefixIcon = "mdi mdi-refresh", Align = ItemAlign.Left, }); Toolbaritems.Add("Search"); #endregion #region 互動式彈出功能表 ContextMenu 初始化 ContextMenuItems.Add(new ContextMenuItemModel { Text = "送審", Target = ".e-content", Id = "送審", IconCss = "mdi mdi-send-circle", }); ContextMenuItems.Add(new ContextMenuItemModel { Text = "查看送審記錄", Target = ".e-content", Id = "查看送審記錄", IconCss = "mdi mdi-file-find", }); #endregion }
public async Task OnCommandClicked(CommandClickEventArgs <FlowMasterAdapterModel> args) { FlowMasterAdapterModel item = args.RowData as FlowMasterAdapterModel; if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdEdit) { #region 點選 修改紀錄 按鈕 CurrentRecord = item.Clone(); EditRecordDialogTitle = "修改紀錄"; IsShowEditRecord = true; IsNewRecordMode = false; #endregion } else if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdDelete) { #region 點選 刪除紀錄 按鈕 CurrentNeedDeleteRecord = item; #region 檢查關聯資料是否存在 var checkedResult = await CurrentService .BeforeDeleteCheckAsync(CurrentNeedDeleteRecord); await Task.Delay(100); thisView.NeedRefresh(); if (checkedResult.Success == false) { var checkTask1 = ConfirmMessageBox.ShowAsync("400px", "200px", "警告", $"你確定真的要刪除與這筆紀錄相關紀錄嗎?例如:收件匣、簽呈使用者、簽成歷史紀錄 ({checkedResult.Message})", ConfirmMessageBox.HiddenAsync); thisView.NeedRefresh(); var checkAgain1 = await checkTask1; if (checkAgain1 == true) { var verifyRecordResult = await CurrentService.DeleteAsync(CurrentNeedDeleteRecord.Id); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } await Task.Yield(); thisView.NeedRefresh(); return; } #endregion #region 刪除這筆紀錄 await Task.Yield(); var checkTask = ConfirmMessageBox.ShowAsync("400px", "200px", "警告", "確認要刪除這筆紀錄嗎?", ConfirmMessageBox.HiddenAsync); thisView.NeedRefresh(); var checkAgain = await checkTask; if (checkAgain == true) { var verifyRecordResult = await CurrentService.DeleteAsync(CurrentNeedDeleteRecord.Id); await TranscationResultHelper.CheckDatabaseResult(MessageBox, verifyRecordResult); dataGrid.RefreshGrid(); } #endregion #endregion } else if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdShowFlowUser) { #region 點選 稽核使用者 對話窗 按鈕 IsShowFlowUserRecord = true; ShowMoreDetailsRecordDialogTitle = MagicHelper.簽核使用者明細; MasterRecord masterRecord = new MasterRecord() { Id = item.Id }; Header = masterRecord; if (ShowFlowUserGrid != null) { await Task.Delay(100); // 使用延遲,讓 Header 的資料綁定可以成功 ShowFlowUserGrid.RefreshGrid(); } #endregion } else if (args.CommandColumn.ButtonOption.IconCss == ButtonIdHelper.ButtonIdShowFlowHistory) { #region 點選 開啟多筆 CRUD 對話窗 按鈕 IsShowFlowHistoryRecord = true; ShowMoreDetailsRecordDialogTitle = MagicHelper.簽核歷史紀錄; MasterRecord masterRecord = new MasterRecord() { Id = item.Id }; Header = masterRecord; if (ShowFlowHistoryGrid != null) { await Task.Delay(100); // 使用延遲,讓 Header 的資料綁定可以成功 ShowFlowHistoryGrid.RefreshGrid(); } #endregion } }