コード例 #1
0
        public async Task SendAsync(WorkOrderAdapterModel workOrderAdapterModel)
        {
            if (workOrderAdapterModel.Status == MagicHelper.WorkOrderStatus完工)
            {
                var flowMasterAdapterModel = await FlowMasterService.GetSourceCodeAsync(workOrderAdapterModel.Code);

                if (flowMasterAdapterModel != null)
                {
                    await Task.Yield();

                    var checkTask = ConfirmMessageBox.ShowAsync("400px", "200px", "確認",
                                                                "這筆工單已經有送審過了,是否還要繼續送審", ConfirmMessageBox.HiddenAsync);
                    thisView.NeedRefresh();
                    var checkAgain = await checkTask;
                    if (checkAgain == false)
                    {
                        return;
                    }
                }
                CurrentRecord = workOrderAdapterModel;
                OnWorkOrderSendingDialog();
            }
            else
            {
                MessageBox.Show("400px", "200px", "警告", "派工單狀態必須是在完工狀態才可以送審",
                                MessageBox.HiddenAsync);
                await Task.Yield();

                thisView.NeedRefresh();
            }
        }
コード例 #2
0
        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
            }
        }
コード例 #3
0
        public async Task OnCommandClicked(CommandClickEventArgs <PolicyHeaderAdapterModel> args)
        {
            PolicyHeaderAdapterModel item = args.RowData as PolicyHeaderAdapterModel;

            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);

                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
            }
        }
コード例 #4
0
        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
            }
        }