protected override DataListDefinition GetSourceDefinition(DataListContext context) { var c = (PickerListContext)context; var service = new PickerListService(); return(service.GetListDefn(c.DataSource)); }
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); } }
public IActionResult GetRelatedListData([FromBody] ListRequestinfo request) { var context = new DataListContext(this.WebAppContext, RequestQuery, request); var builder = new EntityListBuilder(); builder.Build(context); var res = builder.GetResponse(context); return(CreateResult(res)); }
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); } }
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() }); }
public virtual DataListResponse GetResponse(DataListContext context) { var resp = new DataListResponse() { Data = Data, }; if (context.ListRequest.RequestType == DataListRequestType.SchemaWithData) { resp.Fields = context.Fields; resp.IdColumn = context.IdColumn; resp.ItemViewField = context.ItemViewField; } return(resp); }
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); } }
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; }
public virtual void Build(DataListContext context) { var defn = GetSourceDefinition(context); try { OnBuildInit(context, defn); Compile(context, defn); ExecutePrepareData(context, defn); } catch (Exception ex) { Status = AnyStatus.InvalidData; Status.Message = ex.Message; return; } }
protected void AddField(DataListContext context, FormContext formContext, TField tField, bool isHidden = false) { BaseField field = null; field = context.SourceEntity.GetFieldSchema(tField.FieldId); if (field != null && !context.Fields.ContainsKey(tField.FieldId)) { var w = BuildWidget(formContext, field, tField); w.IsHidden = isHidden; context.Fields.Add(tField.FieldId.ToUpper(), w); } else { context.Fields[tField.FieldId].IsHidden = isHidden; } }
public IActionResult List([FromBody] ListRequestinfo request) { DataListContext context = null; if (!string.IsNullOrEmpty(this.RequestQuery.RelationField)) { context = new RelatedEntityListContext(this.WebAppContext, RequestQuery, request); } else { context = new DataListContext(this.WebAppContext, RequestQuery, request); } var builder = new EntityListBuilder(); builder.Build(context); var res = builder.GetResponse(context); return(CreateResult(res)); }
protected override void BuildDataRowActions(DataListContext context, DynamicObj row) { var rowId = row.Get(ViewConstant.RowId, 0); var actions = new List <ActionInfo>(); if (context.Context.UserInfo.HasAccess(context.SourceEntityId, AccessType.Update)) { var actionContext = new ActionContext(null, ActionType.Edit, "BTN_EDIT"); actionContext.Query = new RequestQueryString(); actionContext.Query.EntityId = context.SourceEntityId; actionContext.Query.ItemId = rowId; var ac = PageActionCreator.Create(actionContext); ac.LinkTarget = "POPUP"; actions.Add(ac); } row.Add("_RowActions", actions); }
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); }
protected override void Compile(DataListContext context, DataListDefinition defn) { base.Compile(context, defn); this.InsertDependentFields(context, defn); }
protected virtual void BeforePrepareData(DataListContext context, DataListDefinition defn) { }
public virtual void OnBuildInit(DataListContext context, DataListDefinition defn) { context.BuildSource(defn); }
protected virtual void BuildHeader(DataListContext context, DataListDefinition defn) { }
protected virtual void PrepareLinkDefinition(DataListContext context, DataListDefinition defn) { }
protected virtual void Compile(DataListContext context, DataListDefinition defn) { this.BuildHeader(context, defn); }
protected override void BuildDataRowActions(DataListContext context, DynamicObj row) { }
protected override void PrepareLinkDefinition(DataListContext context, DataListDefinition defn) { //add ActionDefinition }
protected virtual DataListDefinition GetSourceDefinition(DataListContext context) { return(null); }
protected virtual void BuildDataRowActions(DataListContext context, DynamicObj row) { }
protected virtual void OnPrepareRow(DataListContext context, DataListDefinition defn, DynamicObj row, DbObject dataRow) { BuildDataRowActions(context, row); }
protected override DataListDefinition GetSourceDefinition(DataListContext context) { return(EntityListService.GetEntityListDefn(context.Context, context.SourceEntityId)); }
protected override void Compile(DataListContext context, DataListDefinition defn) { base.Compile(context, defn); PrepareFields(context, defn); }