Exemplo n.º 1
0
        private bool VerifyActiveType(_BaseDetailRequestViewModel.EnumActiveType enumActiveType, ref ViewDetailViewModel viewDetail)
        {
            #region 參數宣告
            IAuthorityService authorityService = new AuthorityService();
            #endregion

            #region 流程處理

            if (enumActiveType.Equals(_BaseDetailRequestViewModel.EnumActiveType.EDIT))
            {
                //先檢查是否有資料編輯權限
                if (!authorityService.HasDataPermission(_authState.UserID, viewDetail.Detail.DepartmentCD))
                {
                    throw new Exception("無資料編輯權限");
                }
                //額外處理各功能有關初始化明細頁時, 與增改查有關的驗證
            }

            return(true);

            #endregion
        }
Exemplo n.º 2
0
        public SearchListViewModel SearchList(SearchInfoViewModel searchInfo)
        {
            #region 參數宣告
            SearchListViewModel searchList       = new SearchListViewModel();
            IaaaService         aaaService       = new aaaService();
            IAuthorityService   authorityService = new AuthorityService();
            #endregion

            #region 流程

            //檢查是否驗證通過
            if (!_authState.IsAuth)
            {
                throw new Exception(_authState.AuthDescription);
            }

            // 參數驗證
            VerifyParams(searchInfo);

            try
            {
                //取得查詢結果
                searchList = aaaService.QuerySearchList(searchInfo);

                //檢查資料編輯權限
                searchList.SearchItemList.ForEach(item => item.HasEditPermission = authorityService.HasDataPermission(_authState.UserID, item.DepartmentCD));
            }
            catch (Exception ex)
            {
                throw ex;
            }

            #endregion

            return(searchList);
        }