public virtual IEnumerable <DNHSitemapAction> SearchData(SearchFilter value)
        {
            DNHSitemapActionCollection items = new DNHSitemapActionCollection();
            string key = string.Format(SETTINGS_Search_KEY, value.CompanyID, value.Keyword, value.Page, value.PageSize, value.OrderBy, value.OrderDirection, value.Condition);

            if (SystemConfig.AllowSearchCache)
            {
                object obj2 = HttpCache.Get(key);

                if ((obj2 != null))
                {
                    return((DNHSitemapActionCollection)obj2);
                }
            }

            using (var client = WebApiHelper.myclient(HouseEndpoint, SystemConst.APIJosonReturnValue))
            {
                HttpResponseMessage response = client.PostAsJsonAsync(Resource + "?method=search", value).GetAwaiter().GetResult();

                if (response.IsSuccessStatusCode)
                {
                    items = response.Content.ReadAsAsync <DNHSitemapActionCollection>().GetAwaiter().GetResult();
                }
            }

            if (SystemConfig.AllowSearchCache && items.Count > 0)
            {
                HttpCache.Max(key, items);
            }
            return(items);

            //   return Search(value);
        }
        public static DNHSitemapActionCollection GetById(int id, int CompanyID)
        {
            string key  = String.Format(SETTINGS_ID_KEY, id);
            object obj2 = HttpCache.Get(key);

            if (obj2 != null)
            {
                return((DNHSitemapActionCollection)obj2);
            }

            DNHSitemapActionCollection items = new DNHSitemapActionCollection();

            using (var client = WebApiHelper.myclient(HouseEndpoint, SystemConst.APIJosonReturnValue))
            {
                HttpResponseMessage response = client.GetAsync(string.Format(Resource + "?ID={0}&CompanyID={1}&action=get", id, CompanyID)).GetAwaiter().GetResult();

                if (response.IsSuccessStatusCode)
                {
                    items = response.Content.ReadAsAsync <DNHSitemapActionCollection>().GetAwaiter().GetResult();
                }
            }
            if (items != null && items.Count > 0)
            {
                HttpCache.Max(key, items);
            }
            return(items);
        }
Exemple #3
0
        public static DNHSitemapAction CheckActionPermission(DNHSiteMap objSiteMap, string ActionName)
        {
            //get NodeID role
            //acc Role permission
            DNHSitemapAction objItem = null;

            if (objSiteMap.Access != 0)
            {
                DNHSitemapActionCollection myCol = DNHSitemapActionManager.GetById(objSiteMap.Access, objSiteMap.CompanyID);
                bool isMatch = false;
                if (myCol.Count > 0)
                {
                    foreach (DNHSitemapAction myitem in myCol)
                    {
                        if (myitem.ActionName.ToLower() == ActionName.ToLower())
                        {
                            isMatch = true;
                            objItem = myitem;
                            break;
                        }
                    }
                }
                if (!isMatch)
                {
                    objItem = AddNewDefaultAction(objSiteMap, ActionName);
                }
            }
            else
            {
                objItem = AddNewDefaultAction(objSiteMap, ActionName);
                if (objItem != null)
                {
                    //objSiteMap.Access = objItem.ID;
                    DNHRoleSitemap RoleSitemap = DNHRoleSitemapManager.GetbyID(objSiteMap.NodeID.ToString(), objSiteMap.CompanyID, objSiteMap.RoleName);
                    if (RoleSitemap.NodeID != Guid.Empty)
                    {
                        RoleSitemap.Access     = objItem.ID;
                        RoleSitemap.CreateDate = SystemConfig.CurrentDate;
                        RoleSitemap            = DNHRoleSitemapManager.Update(RoleSitemap);
                        if (RoleSitemap.NodeID != Guid.Empty)
                        {
                            DNHSiteMapManager.RemoveCache(objSiteMap);
                        }
                    }
                }
            }
            return(objItem);
        }
        public virtual DataTable ImportData(DataTable objList)
        {
            IEnumerable <DNHSitemapAction> myList    = objList.ToList <DNHSitemapAction>();
            DNHSitemapActionCollection     ErrorList = new DNHSitemapActionCollection();

            foreach (DNHSitemapAction objitem in myList)
            {
                try
                {
                    Save(objitem);
                }
                catch (Exception objEx)
                {
                    objitem.ErrorMesssage = "<div class='error'>" + objEx.Message + "</div>";
                    ErrorList.Add(objitem);
                }
            }
            return(ErrorList.ToDataTable <DNHSitemapAction>());
        }