Example #1
0
        private OrganizationList GetOrganizationByOperation(List <ResourceOperation> list, Organization organization)
        {
            OrganizationList orgList = new OrganizationList();

            orgList.AutoTreeIndexEnabled = false;

            DataConstraintRule constraintRule = DataConstraintRule.All;

            if (null != list)
            {
                foreach (var operation in list)
                {
                    DataConstraintRule currentConstraintRule;
                    currentConstraintRule = System.Enum.TryParse(operation.OperationName, out currentConstraintRule) ? currentConstraintRule : DataConstraintRule.Own;
                    var value = constraintRule.CompareTo(currentConstraintRule);
                    if (value < 0)
                    {
                        constraintRule = currentConstraintRule;
                    }
                }
            }

            if (constraintRule == DataConstraintRule.OwnCompany)
            {
                orgList.Add(organization);
            }
            else if (constraintRule == DataConstraintRule.Lower)
            {
                orgList.AddRange(HierarchicalStructureDataCache.OrganizationList.Where(o => o.TreeIndex.StartsWith(organization.TreeIndex)));
            }
            else if (constraintRule == DataConstraintRule.All)
            {
                orgList.AddRange(HierarchicalStructureDataCache.OrganizationList);
            }

            return(orgList);
        }
 internal static OrganizationList getOrganizationList(HttpResponseMessage response)
 {
     var organizationList = new OrganizationList();
     var jsonObj = JsonConvert.DeserializeObject<Dictionary<string, object>>(response.Content.ReadAsStringAsync().Result);
     if (jsonObj.ContainsKey("organizations"))
     {
         var organizationArray = JsonConvert.DeserializeObject<List<object>>(jsonObj["organizations"].ToString());
         foreach(var organizationObj in organizationArray)
         {
             var organization = new Organization();
             organization = JsonConvert.DeserializeObject<Organization>(organizationObj.ToString());
             organizationList.Add(organization);
         }
     }
     return organizationList;
 }