コード例 #1
0
        DataTable IPicklistManager.GetPicklistValues(Guid tenantId, string name, QueryContext queryContext)
        {
            var result = GetPicklists();

            if (result != null)
            {
                TypeInfo picklist = null;
                foreach (var item in result)
                {
                    if (!item.BaseType.Equals(typeof(ExtendedPicklist)))
                    {
                        var pluralName = Utility.GetPluralName(item);
                        if (pluralName.ToLower().Equals(name.ToLower()) || item.Name.ToLower().Equals(name.ToLower()))
                        {
                            picklist = item;
                            break;
                        }
                    }
                }
                if (picklist != null)
                {
                    PicklistBase pickListBase     = (PicklistBase)Activator.CreateInstance(picklist);
                    var          isCustomizeValue = Utility.CustomizeValue(picklist);
                    if (isCustomizeValue)
                    {
                        IPicklistQueryManager iPicklistQueryManager = new PicklistQueryManager();
                        return(iPicklistQueryManager.GetResult(tenantId, name, queryContext));
                    }
                    return(pickListBase.GetValues());
                }
            }
            throw new ArgumentException("Picklists not found");
        }
コード例 #2
0
        DataTable IPicklistManager.GetPicklistValueDetails(Guid tenantId, string name, Guid id, LayoutType type, LayoutContext context)
        {
            QueryContext   query          = MetadataHelper.GetQueryContext(name, 0, 0, "InternalId=" + id);
            ILayoutManager iLayoutManager = new LayoutManager();
            var            fields         = iLayoutManager.GetDesignFieldsFromDefaultLayoutForPickList(tenantId, name, type, (int)context);

            if (fields != null && fields.Any())
            {
                query.Fields = string.Join(",", fields);
            }
            IPicklistQueryManager iPicklistQueryManager = new PicklistQueryManager();

            return(iPicklistQueryManager.GetResultById(tenantId, name, id, query));
        }
コード例 #3
0
        private PicklistObject GetPicklistModel(Type item, Guid tenantId, bool getvalues = true, int pageIndex = 1, int pageSize = 10, string filters = "")
        {
            var picklist = new PicklistObject {
                Name        = item.Name,
                PluralName  = Utility.GetPluralName(item),
                DisplayName = Utility.GetDisplayName(item)
            };

            picklist.FixedValueList = picklist.IsStandard = (typeof(SimplePicklist).IsAssignableFrom(item));
            picklist.CustomizeValue = Utility.CustomizeValue(item);  //(typeof(ComplexPicklist).IsAssignableFrom(item));
            PicklistBase pickListBase = (PicklistBase)Activator.CreateInstance(item);

            picklist.Id = pickListBase.PicklistContext.GetContext();
            if (item.BaseType != null)
            {
                picklist.Type = item.BaseType.Name;
            }
            if (!getvalues)
            {
                return(picklist);
            }

            picklist.Values = new List <PicklistValueV1> ();
            DataTable picklistValues = null;

            if (picklist.FixedValueList)
            {
                picklistValues = pickListBase.GetValues();
            }
            else
            {
                IPicklistQueryManager iEntityResourceManager = new PicklistQueryManager();
                QueryContext          query = MetadataHelper.GetQueryContext(item.Name, pageIndex, pageSize, filters);
                picklistValues = iEntityResourceManager.GetResult(tenantId, item.Name.ToLower(), query);
            }
            if (picklistValues == null)
            {
                return(picklist);
            }
            List <PicklistValueV1> lists = Utility.ConvertDataTable <PicklistValueV1> (picklistValues);

            foreach (var list in lists)
            {
                list.PicklistId = picklist.Id;
            }
            picklist.Values.AddRange(lists);
            return(picklist);
        }
コード例 #4
0
        bool IPicklistManager.DeletePickListValueById(Guid tenantId, string name, Guid id)
        {
            IPicklistQueryManager queryManager = new PicklistQueryManager();

            return(queryManager.DeleteResult(tenantId, name, id));
        }
コード例 #5
0
        bool IPicklistManager.UpdatePicklistValueDetails(Guid tenantId, string name, Guid id, JObject resource)
        {
            IPicklistQueryManager queryManager = new PicklistQueryManager();

            return(queryManager.UpdateResult(tenantId, id, name, resource, ""));
        }
コード例 #6
0
        Guid IPicklistManager.SavePicklistValue(Guid tenantId, Guid userId, string name, JObject resource)
        {
            IPicklistQueryManager queryManager = new PicklistQueryManager();

            return(queryManager.SaveResult(tenantId, userId, name, resource, string.Empty));
        }