Пример #1
0
        private void btnSearch_Click(object sender, EventArgs e)
        {
            string targetText = txtTarget.Text;

            if (targetText.Length < 0)
            {
                MessageBox.Show("请填写检索内容!", "问昂管理系统", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                return;
            }
            if (!searchKeyword.Checked && !searchFullText.Checked)
            {
                MessageBox.Show("请选择检索方式!", "文档管理系统", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                return;
            }

            SearchForm searchForm = new SearchForm();

            searchForm.CurrentUser = _currentUser;
            List <String>            searchScope = new List <string>();
            List <CSearchResultItem> result      = new List <CSearchResultItem>();

            try
            {
                if (searchKeyword.Checked)
                {
                    searchForm.SearchKeyword(targetText);
                    result = searchForm.SearchResult;
                }
                else if (searchFullText.Checked)
                {
                    List <CACLEntity> myAclst = new List <CACLEntity>();
                    myAclst = _currentUser.GetAllACLs();
                    foreach (CACLEntity acl in myAclst)
                    {
                        /* CResourceEntity res = new CResourceEntity().Load(acl.Acl_Resource);
                         * string scope = res.MakeFullPath();
                         * _search.SearchFullText(targetText, scope);
                         */
                        if (acl.Acl_Operation == (int)ACLOPERATION.READ)
                        {
                            searchForm.SearchFullText(targetText, acl.Acl_Resource);
                        }
                    }
                    result = searchForm.SearchResult;
                }
                this._searchList.Init(result);
                if (result.Count <= 0)
                {
                    MessageBox.Show("搜索结果为空!", "文档管理系统", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    ActiveRigthPanel(_searchList);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("系统错误:" + ex.Message, "文档管理系统", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }