public bool Detail(DetailViewModel detail) { #region 參數宣告 bool result = false; IProjectPriceSellService projectPriceSellService = new ProjectPriceSellService(); _BaseDetailRequestViewModel.EnumActiveType enumActiveType; #endregion #region 流程 if (!_authState.IsAuth) { throw new Exception(_authState.AuthDescription); } // 參數驗證 VerifyParams(detail); try { enumActiveType = detail.ActiveType.ConvertToEnum <_BaseDetailRequestViewModel.EnumActiveType>(); VerifyActiveType(enumActiveType, detail); //處理新增/編輯/刪除資料 switch (enumActiveType) { case _BaseDetailRequestViewModel.EnumActiveType.ADD: projectPriceSellService.AddDetail(detail); result = true; break; case _BaseDetailRequestViewModel.EnumActiveType.EDIT: projectPriceSellService.EditDetail(detail); result = true; break; case _BaseDetailRequestViewModel.EnumActiveType.DELETE: projectPriceSellService.DeleteDetail(detail); result = true; break; } } catch (Exception ex) { throw ex; } #endregion return(result); }
public ViewDetailViewModel ViewDetail(DetailRequestViewModel detailRequest) { #region 參數宣告 ViewDetailViewModel viewDetail = new ViewDetailViewModel(); IProjectPriceSellService projectPriceSellService = new ProjectPriceSellService(); _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 = projectPriceSellService.QueryDetail(detailRequest); //驗證編輯權限 VerifyActiveType(enumActiveType, ref viewDetail); } //取得明細下拉選單項目 viewDetail.DetailOption = projectPriceSellService.QueryDetailOption(); } catch (Exception ex) { throw ex; } #endregion return(viewDetail); }
public SearchListViewModel SearchList(SearchInfoViewModel searchInfo) { #region 參數宣告 SearchListViewModel searchList = new SearchListViewModel(); IProjectPriceSellService projectPriceSellService = new ProjectPriceSellService(); IAuthorityService authorityService = new AuthorityService(); #endregion #region 流程 //檢查是否驗證通過 if (!_authState.IsAuth) { throw new Exception(_authState.AuthDescription); } // 參數驗證 VerifyParams(searchInfo); try { //取得查詢結果 searchList = projectPriceSellService.QuerySearchList(searchInfo); //檢查資料編輯權限 searchList.SearchItemList.ForEach(item => item.HasEditPermission = authorityService.HasDataPermission(_authState.UserID, item.DepartmentCD)); } catch (Exception ex) { throw ex; } #endregion return(searchList); }