protected override void PrepareFilter(DbQuery query, DataListDefinition defn)
        {
            var reqInfo = ListRequest.RequestInfo;

            if (defn.FixedFilter == null)
            {
                return;
            }

            var formContext = new EditFormContext(this.Context, RelatedEntityId, new RequestQueryString()
            {
            });

            formContext.Build();

            formContext.PrepareLinkedData(reqInfo);

            if (reqInfo.Properties != null)
            {
                var sourceParams = reqInfo.Properties.Get <DynamicObj>("PickerSourceParams", null);
                if (sourceParams != null)
                {
                    formContext.AddEntityModelInfo("Parameters", sourceParams);
                }
            }

            var filters = defn.FixedFilter.DeepClone();

            ValueResolver.ResolveFilterExpressionValue(ref filters, formContext);

            query.SetFixedFilter(filters);
        }
 private void SetEntityOpenLink(DataListContext context, DataListDefinition defn, DynamicObj row, IDisplayWidget widget)
 {
     if (!String.IsNullOrEmpty(defn.ItemViewField) && widget.WidgetId.ToLower() == defn.ItemViewField.ToLower())
     {
         widget.SetAdditionalValue(ViewConstant.ViewLink, StackErp.Model.AppLinkProvider.GetDetailPageLink(defn.DataSource.Entity, row.Get(ViewConstant.RowId, 0)).Url);
     }
 }
        protected override void PrepareFilter(DbQuery query, DataListDefinition defn)
        {
            var itemId    = RequestQuery.ItemId;
            var filterExp = new FilterExpression(SourceEntityId);
            var relField  = (RelationalField)EntityField;

            filterExp.Add(new FilterExpField(relField.RefFieldName, FilterOperationType.Equal, itemId));

            query.SetFixedFilter(filterExp);
        }
Exemple #4
0
        private void InsertDependentFields(DataListContext context, DataListDefinition defn)
        {
            var pickerContext = context as PickerListContext;

            if (pickerContext.FormModelMapping != null)
            {
                foreach (var c in pickerContext.FormModelMapping)
                {
                    context.DbQuery.AddField(c.Value.ToString(), true);
                }
            }
        }
        protected void PrepareFields(DataListContext context, DataListDefinition defn)
        {
            var formContext = new DetailFormContext(context.Context, context.SourceEntityId, context.Context.RequestQuery);

            formContext.Build();
            //AddField(context, formContext, new TField { FieldId = context.IdColumn }, true);

            foreach (var lField in defn.Layout.GetLayoutFields())
            {
                AddField(context, formContext, lField);
            }
        }
Exemple #6
0
        protected virtual object OnPrepareCell(DataListContext context, DataListDefinition defn, string fieldName, object fieldValue, DynamicObj row)
        {
            if (!context.Fields.ContainsKey(fieldName))
            {
                return new { Value = fieldValue }
            }
            ;

            context.Fields[fieldName].ClearValue();

            context.Fields[fieldName].SetValue(fieldValue);
            //SetEntityOpenLink(context, defn, row, context.Fields[fieldName]);

            return(new { FormatedValue = context.Fields[fieldName].FormatedValue, AdditionalValue = context.Fields[fieldName].AdditionalValue == null? null: context.Fields[fieldName].AdditionalValue.CloneData() });
        }
Exemple #7
0
        protected override void OnPrepareRow(DataListContext context, DataListDefinition defn, DynamicObj row, DbObject dataRow)
        {
            var pickerContext = context as PickerListContext;

            if (pickerContext.FormModelMapping != null)
            {
                var mapping = new DynamicObj();
                foreach (var c in pickerContext.FormModelMapping)
                {
                    mapping.Add(c.Key, dataRow.Get <object>(c.Value.ToString(), null));
                }

                row.Add("_ModelMapping", mapping);
            }
        }
Exemple #8
0
        protected virtual void ExecutePrepareData(DataListContext context, DataListDefinition defn)
        {
            this.BeforePrepareData(context, defn);

            var data = EntityListService.ExecuteData(context.Context, context.DbQuery);

            var records = new List <DynamicObj>();

            foreach (var dataRow in data)
            {
                records.Add(PrepareRowData(dataRow, context, defn));
            }

            this.Data = records;
        }
Exemple #9
0
        private TList PrepareLayout(DataListDefinition ds, IDBEntity entity)
        {
            var fields = new String[] { ds.ItemIdField, ds.ItemViewField };
            var tList  = new TList();

            tList.Fields = new List <TListField>();
            foreach (var f in fields)
            {
                var tfield = new TListField()
                {
                    FieldId = f
                };
                tList.Fields.Add(tfield);
            }

            return(tList);
        }
Exemple #10
0
        public DataListDefinition GetEntityListDefn(FieldDataSource source)
        {
            var defn = new DataListDefinition();
            var ds   = source;

            defn.DataSource = ds;

            var _Entity = Core.EntityMetaData.Get(ds.Entity);

            defn.ItemIdField   = "Id";
            defn.ItemViewField = _Entity.GetFieldSchema(_Entity.TextField).ViewName;

            defn.Layout   = PrepareLayout(defn, _Entity);
            defn.PageSize = 25;
            if (ds.Domain != null)
            {
                defn.FixedFilter = ds.Domain;
            }

            return(defn);
        }
Exemple #11
0
 protected virtual void BeforePrepareData(DataListContext context, DataListDefinition defn)
 {
 }
Exemple #12
0
 public virtual void OnBuildInit(DataListContext context, DataListDefinition defn)
 {
     context.BuildSource(defn);
 }
Exemple #13
0
 protected virtual void BuildHeader(DataListContext context, DataListDefinition defn)
 {
 }
Exemple #14
0
 protected virtual void PrepareLinkDefinition(DataListContext context, DataListDefinition defn)
 {
 }
Exemple #15
0
 protected virtual void Compile(DataListContext context, DataListDefinition defn)
 {
     this.BuildHeader(context, defn);
 }
Exemple #16
0
 protected override void Compile(DataListContext context, DataListDefinition defn)
 {
     base.Compile(context, defn);
     this.InsertDependentFields(context, defn);
 }
 protected override void Compile(DataListContext context, DataListDefinition defn)
 {
     base.Compile(context, defn);
     PrepareFields(context, defn);
 }
 protected override void PrepareLinkDefinition(DataListContext context, DataListDefinition defn)
 {
     //add ActionDefinition
 }
Exemple #19
0
        protected DynamicObj PrepareRowData(DbObject dataRow, DataListContext context, DataListDefinition defn)
        {
            var row = new DynamicObj();

            row.Add(ViewConstant.RowId, dataRow.Get(context.DbQuery.ItemIdField, 0));
            foreach (var field in context.DbQuery.Fields)
            {
                var val = field.Field.ResolveDbValue(dataRow);
                if (context.Fields.Keys.Contains(field.FieldName))
                {
                    row.Add(context.Fields[field.FieldName].WidgetId, OnPrepareCell(context, defn, field.FieldName, val, row), true);
                }
                else
                {
                    row.Add(field.FieldName, val);
                }
            }
            OnPrepareRow(context, defn, row, dataRow);

            return(row);
        }
Exemple #20
0
 protected virtual void OnPrepareRow(DataListContext context, DataListDefinition defn, DynamicObj row, DbObject dataRow)
 {
     BuildDataRowActions(context, row);
 }