public ViewDetailViewModel ViewDetail(DetailRequestViewModel detailRequest) { #region 參數宣告 ViewDetailViewModel viewDetail = new ViewDetailViewModel(); IActorSettingService actorSettingService = new ActorSettingService(); _BaseDetailRequestViewModel.EnumActiveType enumActiveType; #endregion #region 流程 if (!_authState.IsAuth) { throw new Exception(_authState.AuthDescription); } // 參數驗證 VerifyParams(detailRequest); try { enumActiveType = detailRequest.ActiveType.ConvertToEnum <_BaseDetailRequestViewModel.EnumActiveType>(); //判斷為EDIT 或 VIEW時需抓資料並檢查編輯權限 if (enumActiveType.Equals(_BaseDetailRequestViewModel.EnumActiveType.VIEW) || enumActiveType.Equals(_BaseDetailRequestViewModel.EnumActiveType.EDIT)) { //取得明細資料 viewDetail.Detail = actorSettingService.QueryDetail(detailRequest); //驗證編輯權限 VerifyActiveType(enumActiveType, ref viewDetail); } //取得明細下拉選單項目 viewDetail.DetailOption = actorSettingService.QueryDetailOption(); } catch (Exception ex) { throw ex; } #endregion return(viewDetail); }