private void AddQueryColumns() { entityColumnsMap = new Dictionary <string, object>(); EntitySchema entitySchema = UserConnection.EntitySchemaManager.GetInstanceByName(SchemaName); string primaryDisplayColumnName = entitySchema.FindPrimaryDisplayColumnName(); string primaryKeyColumnName = entitySchema.GetPrimaryColumnName(); string primaryColumnAlias = string.Empty; foreach (JObject columnItem in _columns) { string columnPath = DashboardDataUtils.GetColumnPath(columnItem); if (entityColumnsMap.ContainsKey(columnPath)) { continue; } EntitySchemaQueryColumn column = AddQueryColumn(columnItem, columnPath); Dictionary <string, object> map = MapColumn(column); entityColumnsMap[columnPath] = map; if (columnPath == primaryKeyColumnName) { primaryColumnAlias = (string)map["valueAlias"]; } } if (primaryColumnAlias.IsNullOrEmpty() && primaryKeyColumnName.IsNotNullOrEmpty()) { EntitySchemaQueryColumn primaryKeyColumn = Esq.AddColumn(primaryKeyColumnName); entityColumnsMap[primaryKeyColumnName] = MapColumn(primaryKeyColumn); } }
private JArray GetDefaultGridColumns(int serieIndex) { var columns = new JArray(); string schemaName = GetSchemaName(serieIndex); EntitySchema entitySchema = UserConnection.EntitySchemaManager.GetInstanceByName(schemaName); string primaryDisplayColumnName = entitySchema.FindPrimaryDisplayColumnName(); if (primaryDisplayColumnName != null) { columns.Add(GetGridColumnConfig(entitySchema, primaryDisplayColumnName)); } string xAxisColumn = Parameters.Value <string>("xAxisColumn"); if (xAxisColumn != primaryDisplayColumnName) { columns.Add(GetGridColumnConfig(entitySchema, xAxisColumn)); } string yAxisColumn = Parameters.Value <string>("yAxisColumn"); if (yAxisColumn != null && yAxisColumn != "Id") { columns.Add(GetGridColumnConfig(entitySchema, yAxisColumn)); } return(columns); }
private JArray GetColumns() { var columns = new JArray(); JArray items = GetGridConfigColumns(); EntitySchema entitySchema = UserConnection.EntitySchemaManager.GetInstanceByName(GetSchemaName()); string primaryDisplayColumnName = entitySchema.FindPrimaryDisplayColumnName(); string primaryKeyColumnName = entitySchema.GetPrimaryColumnName(); string primaryColumnAlias = string.Empty; foreach (JObject columnItem in items) { string columnPath = DashboardDataUtils.GetColumnPath(columnItem); string columnCaption = columnItem.Value <string>("caption"); if (string.IsNullOrEmpty(columnCaption)) { columnCaption = columnPath; } var columnConfig = new JObject(); columnConfig["name"] = columnPath; columnConfig["caption"] = columnCaption; columnConfig["type"] = columnItem.Value <string>("type"); columnConfig["position"] = columnItem["position"]; if (string.IsNullOrEmpty(columnItem.Value <string>("dataValueType"))) { Dictionary <string, object> map = (Dictionary <string, object>)selectBuilder.EntityColumnsMap[columnPath]; var type = (DataValueType)map["dataValueType"]; columnConfig["dataValueType"] = (int)Terrasoft.Nui.ServiceModel.Extensions.DataValueTypeExtension.ToEnum(type); } else { columnConfig["dataValueType"] = columnItem.Value <int>("dataValueType"); } if (columnPath != primaryDisplayColumnName) { columnConfig["referenceSchemaName"] = columnItem.Value <string>("referenceSchemaName"); } columns.Add(columnConfig); } return(columns); }
private JArray GetGridColumns() { var columns = new JArray(); string schemaName = GetSchemaName(); EntitySchema entitySchema = UserConnection.EntitySchemaManager.GetInstanceByName(schemaName); string primaryDisplayColumnName = entitySchema.FindPrimaryDisplayColumnName(); if (primaryDisplayColumnName != null) { columns.Add(DashboardDataUtils.GetGridColumnConfig(entitySchema, primaryDisplayColumnName)); } string columnPath = Parameters.Value <string>("columnName"); if (!string.IsNullOrEmpty(columnPath)) { columns.Add(DashboardDataUtils.GetGridColumnConfig(entitySchema, columnPath)); } if (columns.Count == 0) { columns.Add(DashboardDataUtils.GetGridColumnConfig(entitySchema, entitySchema.CreatedByColumn.Name)); columns.Add(DashboardDataUtils.GetGridColumnConfig(entitySchema, entitySchema.CreatedOnColumn.Name)); } return(columns); }