This commit is contained in:
2020-01-15 20:21:43 +00:00
parent 45ff762e84
commit 879c9c7368
2 changed files with 36 additions and 4 deletions

View File

@@ -144,11 +144,41 @@ namespace AyaNova.Biz
//convert to strings (https://stackoverflow.com/a/33836599/8939)
var fullFields = ((JArray)jtemplate["full"]).ToObject<string[]>();
// var jsonObj = new {
// name = taskName,
// products = new[] {
// new { product = "ndvi_image", actions = new [] { new { mapbox = "processed" } },
// new { product = "true_color", actions = new [] { new { mapbox = "processed" } }
// },
// recurring = true,
// query = new {
// date_from = dateFromString,
// date_to = dateToString,
// aoi = polygon
// },
// aoi_coverage_percentage = 90
// };
// var jsonString = JsonConvert.SerializeObject(jsonObj);
//Generate JSON fragment to return with column definitions
StringBuilder sb = new StringBuilder();
// ColumnsJSON=@"""columns"":[ {""cm"":""Widget"",""dt"":""text"",""ay"":"+ AyaType.Widget.ToString()+ "},{..etc..}]";
sb.Append("\"columns\":[");
//GOAL: This works in javascript:
//JSON.parse( "{\"columns\": [{\"cm\":\"WidgetName\",\"dt\":\"4\"},{\"cm\":\"WidgetSerial\",\"dt\":\"5\"},{\"cm\":\"WidgetDollarAmount\",\"dt\":\"8\"},{\"cm\":\"WidgetRoles\",\"dt\":\"10\"},{\"cm\":\"WidgetStartDate\",\"dt\":\"1\"},{\"cm\":\"Active\",\"dt\":\"6\"}]}")
//\"columns\": [{\"cm\":\"WidgetName\",\"dt\":\"4\"},{\"cm\":\"WidgetSerial\",\"dt\":\"5\"},{\"cm\":\"WidgetDollarAmount\",\"dt\":\"8\"},{\"cm\":\"WidgetRoles\",\"dt\":\"10\"},{\"cm\":\"WidgetStartDate\",\"dt\":\"1\"},{\"cm\":\"Active\",\"dt\":\"6\"}]
//CURRENTLY: this is what is actually coming out:
// "columns": "[{\"cm\":\"WidgetName\",\"dt\":\"4\"},{\"cm\":\"WidgetSerial\",\"dt\":\"5\"},{\"cm\":\"WidgetDollarAmount\",\"dt\":\"8\"},{\"cm\":\"WidgetRoles\",\"dt\":\"10\"},{\"cm\":\"WidgetStartDate\",\"dt\":\"1\"},{\"cm\":\"Active\",\"dt\":\"6\"}]"
sb.Append("[");
var isFirstColumn = true;
foreach (string s in fullFields)
{
@@ -161,11 +191,11 @@ namespace AyaNova.Biz
}
sb.Append("{");
//Build required part of column definition
sb.Append($"\"cm\":\"{o.Key}\",\"dt\":\"{o.DataType}\"");
sb.Append($"\"cm\":\"{o.Key}\",\"dt\":{(int)o.DataType}");
//Has a AyObjectType (linkable / openable?)
if (o.AyObjectType != 0)
sb.Append($",\"ay\":{o.AyObjectType}");
sb.Append($",\"ay\":{(int)o.AyObjectType}");
sb.Append("}");
isFirstColumn = false;

View File

@@ -334,7 +334,9 @@ namespace AyaNova.Biz
string ColumnsJSON=string.Empty;
if(listOptions.Mini){
//all mini lists will have an id so include the type to open
ColumnsJSON=@"""columns"":[ {""cm"":""Widget"",""dt"":""text"",""ay"":"+ AyaType.Widget.ToString()+ "}]";
ColumnsJSON=@"[ {""cm"":""Widget"",""dt"":""text"",""ay"":"+ AyaType.Widget.ToString()+ "}]";
//"{\"columns\":[{\"cm\":\"Widget\",\"dt\":\"text\",\"ay\":2}]}"
// "columns": "[ {\"cm\":\"Widget\",\"dt\":\"text\",\"ay\":Widget}]"
}else{
ColumnsJSON=ObjectFields.GenerateListColumnJSONFromTemplate(ObjectFields.WIDGET_KEY,MOCK_WIDGET_DISPLAY_TEMPLATE_JSON);
}