示例#1
0
        public IEnumerable <IAssociationOption> GetCostCentersByPrimaryUser(OptionFieldProviderParameters parameters)
        {
            var subCustomer = (string)parameters.OriginalEntity.GetAttribute("fromlocation");
            var itcOfAsset  = (string)parameters.OriginalEntity.GetAttribute("asset_.primaryuser_.personid");

            return(LocationManager.FindCostCentersOfITC(subCustomer, itcOfAsset));
        }
        public override IEnumerable <IAssociationOption> GetHlagUserLocations(OptionFieldProviderParameters parameters)
        {
            var baseList = base.GetHlagUserLocations(parameters);

            if (parameters.OptionField.Attribute.Equals("itcassetlocation"))
            {
                return(baseList.Select(hlagGroupedLocation => new HlagGroupedLocationsNoPrefixDecorator((HlagGroupedLocation)hlagGroupedLocation)).ToList());
            }
            return(baseList);
        }
示例#3
0
        public IEnumerable <IAssociationOption> GetHlagUserLocations(OptionFieldProviderParameters parameters)
        {
            var options            = base.GetHlagUserLocations(parameters);
            var multivaluedOptions = new List <IAssociationOption>();
            var selected           = new Dictionary <string, object> {
                { "isSelected", true }
            };

            foreach (var option in options)
            {
                multivaluedOptions.Add(new MultiValueAssociationOption(option.Value, option.Label, selected));
            }
            return(multivaluedOptions);
        }
示例#4
0
        public IEnumerable <IAssociationOption> GetIncidentStatus(OptionFieldProviderParameters parameters)
        {
            var options            = parameters.OptionField.Options;
            var multivaluedOptions = new List <IAssociationOption>();
            var selected           = new Dictionary <string, object> {
                { "isSelected", true }
            };
            var selectedStatus = new string[] { "CANCELLED", "HISTEDIT", "INPROG", "NEW", "PENDING", "REJECTED", "SLAHOLD", "QUEUED" };

            foreach (var option in options)
            {
                multivaluedOptions.Add(new MultiValueAssociationOption(option.Value, option.Label, selected));
            }
            return(multivaluedOptions);
        }
        public virtual IEnumerable <IAssociationOption> GetHlagUserLocations(OptionFieldProviderParameters parameters)
        {
            var currentLocations  = LocationManager.FindAllLocationsOfCurrentUser(parameters.ApplicationMetadata);
            var hlagUserlocations = currentLocations as HlagGroupedLocation[] ?? currentLocations.ToArray();

            if (CollectionExtensions.IsNullOrEmpty(hlagUserlocations))
            {
                Log.Warn(HapagErrorCatalog.Err001);
                return(hlagUserlocations);
            }
            if (parameters.OptionField.Options != null)
            {
                return(hlagUserlocations.Union(parameters.OptionField.Options));
            }
            return(hlagUserlocations);
        }
示例#6
0
        public IEnumerable <IAssociationOption> GetInfrastructureAssetToChange(OptionFieldProviderParameters parameters)
        {
            var entityMetadata   = MetadataProvider.Entity("ci");
            var result           = EntityRepository.Get(entityMetadata, new SearchRequestDto());
            var attributeHolders = result as AttributeHolder[] ?? result.ToArray();
            var options          = new HashSet <IAssociationOption>();

            foreach (var attributeHolder in attributeHolders)
            {
                var ciname = attributeHolder.GetAttribute("ciname");
                if (!DataSetUtil.IsValid(ciname, typeof(String)))
                {
                    continue;
                }
                options.Add(new AssociationOption((string)attributeHolder.GetAttribute("cinum"), (string)ciname));
            }

            return(options);
        }
        public IEnumerable <IAssociationOption> GetHlagAllCostCenters(OptionFieldProviderParameters parameters)
        {
            ISet <IAssociationOption> costcenters = new SortedSet <IAssociationOption>();
            var currentLocations = LocationManager.FindAllLocations();
            var hlagLocations    = currentLocations as HlagGroupedLocation[] ?? currentLocations.ToArray();

            if (CollectionExtensions.IsNullOrEmpty(hlagLocations))
            {
                Log.Warn(HapagErrorCatalog.Err001);
                return(costcenters);
            }

            foreach (var hlagLocation in hlagLocations)
            {
                foreach (var costcenter in hlagLocation.CostCenters)
                {
                    var result = new AssociationOption(costcenter, costcenter);
                    costcenters.Add(result);
                }
            }
            return(costcenters);
        }
        public IEnumerable <IAssociationOption> GetHlagUserLocationAndCostCenter(OptionFieldProviderParameters parameters)
        {
            ISet <IAssociationOption> costcenters = new SortedSet <IAssociationOption>();
            var currentLocations  = LocationManager.FindAllLocationsOfCurrentUser(parameters.ApplicationMetadata);
            var hlagUserlocations = currentLocations as HlagGroupedLocation[] ?? currentLocations.ToArray();

            if (CollectionExtensions.IsNullOrEmpty(hlagUserlocations))
            {
                Log.Warn(HapagErrorCatalog.Err001);
                return(costcenters);
            }

            foreach (var hlaguserlocation in hlagUserlocations)
            {
                foreach (var costcenter in hlaguserlocation.CostCenters)
                {
                    var result = new AssociationOption(hlaguserlocation.SubCustomerSuffix + "-" + costcenter, hlaguserlocation.Label + " - " + costcenter);
                    costcenters.Add(result);
                }
            }
            return(costcenters);
        }
示例#9
0
        public IEnumerable <IAssociationOption> GetAssetCommodities(OptionFieldProviderParameters parameters)
        {
            var assetnum = parameters.OriginalEntity.GetAttribute("asset") as String;
            var user     = SecurityFacade.CurrentUser();
            //TODO: Improve this query
            var applicationMetadata = MetadataProvider
                                      .Application("commodities")
                                      .ApplyPolicies(new ApplicationMetadataSchemaKey("detail"), user, ClientPlatform.Web);
            var entityMetadata = MetadataProvider.SlicedEntityMetadata(applicationMetadata);
            var searchDto      = new PaginatedSearchRequestDto(100, PaginatedSearchRequestDto.DefaultPaginationOptions);

            searchDto.AppendSearchEntry("commodity", new[] { "HLC-0003", "HLC-0005", "HLC-0006", "HLC-0007", "HLC-0008", "HLC-0786" });

            // This value is added due to a inserted parameter in a relatioship clause (from 'commodities' to 'assetloccomm')
            searchDto.ValuesDictionary["commodityassetnum"] = new SearchParameter(assetnum);

            var entities = _maximoConnectorEngine.Find(entityMetadata, searchDto);

            var options = new HashSet <IAssociationOption>();

            foreach (var commodity in entities)
            {
                var desc       = commodity.GetAttribute("description") as String;
                var isSelected = commodity.GetAttribute("selectedcommodities_.assetnum") != null;

                if (!String.IsNullOrWhiteSpace(desc))
                {
                    options.Add(new MultiValueAssociationOption(desc, desc,
                                                                new Dictionary <string, object> {
                        { "isSelected", isSelected }
                    }));
                }
            }

            return(options);
        }
 public virtual IEnumerable <IAssociationOption> GetHlagAllLocations(OptionFieldProviderParameters parameters)
 {
     return(LocationManager.FindAllLocations());
 }
示例#11
0
        public override IEnumerable <IAssociationOption> GetHlagAllLocations(OptionFieldProviderParameters parameters)
        {
            var baseList = base.GetHlagAllLocations(parameters);

            return(baseList.Select(hlagGroupedLocation => new HlagGroupedLocationsNoPrefixDecorator((HlagGroupedLocation)hlagGroupedLocation)).ToList());
        }
示例#12
0
 public IEnumerable <IAssociationOption> GetRoomFromLocation(OptionFieldProviderParameters parameters)
 {
     return(GetRoom(parameters.OriginalEntity.GetAttribute("fromlocation") as String,
                    parameters.OriginalEntity.GetAttribute("building") as String,
                    parameters.OriginalEntity.GetAttribute("floor") as String));
 }
示例#13
0
 public IEnumerable <IAssociationOption> GetBuildingToLocation(OptionFieldProviderParameters parameters)
 {
     return(GetBuilding(parameters.OriginalEntity.GetAttribute("tolocation") as String));
 }
示例#14
0
 public IEnumerable <IAssociationOption> GetCostCentersByToItc(OptionFieldProviderParameters parameters)
 {
     return(LocationManager.FindCostCentersOfITC((string)parameters.OriginalEntity.GetAttribute("tolocation"),
                                                 (string)parameters.OriginalEntity.GetAttribute("toitc")));
 }
示例#15
0
 public IEnumerable <IAssociationOption> GetSelectableITCsFromLocation(OptionFieldProviderParameters parameters)
 {
     return(LocationManager.FindDefaultITCsOfLocation((string)parameters.OriginalEntity.GetAttribute("fromlocation")));
 }