This commit is contained in:
@@ -64,8 +64,8 @@ namespace AyaNova.Api.Controllers
|
||||
case "datatypes":
|
||||
{
|
||||
//Iterate the enum and get the values
|
||||
Type t = typeof(AyaUiFieldDataType);
|
||||
Enum.GetName(t, AyaUiFieldDataType.NoType);
|
||||
Type t = typeof(UiFieldDataType);
|
||||
Enum.GetName(t, UiFieldDataType.NoType);
|
||||
foreach (var dt in Enum.GetValues(t))
|
||||
{
|
||||
ReturnList.Add(new NameIdItem() { Name = Enum.GetName(t, dt), Id = (int)dt });
|
||||
|
||||
@@ -29,7 +29,7 @@ namespace AyaNova.DataList
|
||||
public Newtonsoft.Json.Linq.JArray GenerateMINIListColumnsJSON()
|
||||
{
|
||||
//return $"[ {{\"cm\":\"df\",\"dt\":0,\"ay\":{(int)DefaultListObjectType}}},{{\"cm\":\"Widget\",\"dt\":{(int)AyaUiFieldDataType.Text},\"ay\":{(int)DefaultListObjectType}}}]";
|
||||
return JArray.Parse($"[ {{\"cm\":\"df\",\"dt\":0,\"ay\":{(int)DefaultListObjectType}}},{{\"cm\":\"Widget\",\"dt\":{(int)AyaUiFieldDataType.Text},\"ay\":{(int)DefaultListObjectType}}}]");
|
||||
return JArray.Parse($"[ {{\"cm\":\"df\",\"dt\":0,\"ay\":{(int)DefaultListObjectType}}},{{\"cm\":\"Widget\",\"dt\":{(int)UiFieldDataType.Text},\"ay\":{(int)DefaultListObjectType}}}]");
|
||||
}
|
||||
|
||||
public Newtonsoft.Json.Linq.JArray GenerateListColumnsJSONFromTemplate(string template)
|
||||
|
||||
@@ -52,7 +52,7 @@ namespace AyaNova.DataList
|
||||
}
|
||||
#endif
|
||||
var SQLValueColumnName = DataListField.GetSqlValueColumnName();
|
||||
sb.Append(DataFilterToColumnCriteria(SQLValueColumnName, (AyaUiFieldDataType)dataType, opType, val, tagList, userId));
|
||||
sb.Append(DataFilterToColumnCriteria(SQLValueColumnName, (UiFieldDataType)dataType, opType, val, tagList, userId));
|
||||
if (i < FilterArray.Count - 1)
|
||||
{
|
||||
sb.Append(") AND ");
|
||||
@@ -65,7 +65,7 @@ namespace AyaNova.DataList
|
||||
/// <summary>
|
||||
/// Translate DataFilter to Postgres friendly SQL criteria
|
||||
/// </summary>
|
||||
private static string DataFilterToColumnCriteria(string SqlColumnNameToFilter, AyaUiFieldDataType DataType, string sOperator, string sValue, List<string> sTags, long userId)//, bool IsCompound)
|
||||
private static string DataFilterToColumnCriteria(string SqlColumnNameToFilter, UiFieldDataType DataType, string sOperator, string sValue, List<string> sTags, long userId)//, bool IsCompound)
|
||||
{
|
||||
bool TagFilter = sTags.Count < 0;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
@@ -79,7 +79,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
switch (DataType)
|
||||
{
|
||||
case AyaUiFieldDataType.Text:
|
||||
case UiFieldDataType.Text:
|
||||
{
|
||||
if (sOperator == DataListFilterComparisonOperator.Equality)
|
||||
{
|
||||
@@ -156,7 +156,7 @@ namespace AyaNova.DataList
|
||||
#region Build for specific type
|
||||
switch (DataType)
|
||||
{
|
||||
case AyaUiFieldDataType.Text:
|
||||
case UiFieldDataType.Text:
|
||||
//escape any pre-existing apostrophes
|
||||
//i.e. "O'Flaherty's pub"
|
||||
sValue = sValue.Replace("'", "''");
|
||||
@@ -255,7 +255,7 @@ namespace AyaNova.DataList
|
||||
}
|
||||
#endregion build text ops criteria
|
||||
break;
|
||||
case AyaUiFieldDataType.Bool:
|
||||
case UiFieldDataType.Bool:
|
||||
{
|
||||
switch (sOperator)
|
||||
{
|
||||
@@ -283,9 +283,9 @@ namespace AyaNova.DataList
|
||||
break;
|
||||
|
||||
//Note there are three types here for display purposes but all are stored in the db as a timestamp the same with date and time components
|
||||
case AyaUiFieldDataType.Date:
|
||||
case AyaUiFieldDataType.DateTime:
|
||||
case AyaUiFieldDataType.Time:
|
||||
case UiFieldDataType.Date:
|
||||
case UiFieldDataType.DateTime:
|
||||
case UiFieldDataType.Time:
|
||||
{
|
||||
//Note: it is assumed all dates come into here from the CLIENT in UTC iso8601 format
|
||||
//suitable for the database to handle as all database dates are in UTC
|
||||
@@ -729,18 +729,18 @@ namespace AyaNova.DataList
|
||||
}
|
||||
}
|
||||
break;
|
||||
case AyaUiFieldDataType.Enum://enums are just ints to the db, but it's a special type so the client can recognize it
|
||||
case AyaUiFieldDataType.Decimal:
|
||||
case AyaUiFieldDataType.Currency:
|
||||
case AyaUiFieldDataType.Integer: //whole numbers, not only integer
|
||||
case UiFieldDataType.Enum://enums are just ints to the db, but it's a special type so the client can recognize it
|
||||
case UiFieldDataType.Decimal:
|
||||
case UiFieldDataType.Currency:
|
||||
case UiFieldDataType.Integer: //whole numbers, not only integer
|
||||
{
|
||||
//case 1795 - it's numeric, convert to locale independant format
|
||||
//RAVEN NOTE: this code looks suspect to me, but I'll leave it in for now
|
||||
NumberFormatInfo nfi = System.Globalization.CultureInfo.CurrentCulture.NumberFormat;
|
||||
switch (DataType)
|
||||
{
|
||||
case AyaUiFieldDataType.Decimal:
|
||||
case AyaUiFieldDataType.Currency:
|
||||
case UiFieldDataType.Decimal:
|
||||
case UiFieldDataType.Currency:
|
||||
{
|
||||
if (nfi.CurrencyDecimalSeparator != ".")
|
||||
{
|
||||
@@ -749,7 +749,7 @@ namespace AyaNova.DataList
|
||||
}
|
||||
}
|
||||
break;
|
||||
case AyaUiFieldDataType.Integer:
|
||||
case UiFieldDataType.Integer:
|
||||
{
|
||||
if (nfi.NumberDecimalSeparator != ".")
|
||||
{
|
||||
@@ -795,7 +795,7 @@ namespace AyaNova.DataList
|
||||
}
|
||||
break;
|
||||
}
|
||||
case AyaUiFieldDataType.Tags:
|
||||
case UiFieldDataType.Tags:
|
||||
{
|
||||
//Build tags filter fragment
|
||||
//for initial release a tag filter is inclusive of all tags only
|
||||
|
||||
@@ -28,7 +28,7 @@ namespace AyaNova.DataList
|
||||
LtKey = "WidgetName",
|
||||
FieldKey = "widgetname",
|
||||
AyaObjectType = (int)AyaType.Widget,
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Text,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
SqlIdColumnName = "awidget.id",
|
||||
SqlValueColumnName = "awidget.name"
|
||||
});
|
||||
@@ -36,28 +36,28 @@ namespace AyaNova.DataList
|
||||
{
|
||||
LtKey = "WidgetSerial",
|
||||
FieldKey = "widgetserial",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Integer,
|
||||
UiFieldDataType = (int)UiFieldDataType.Integer,
|
||||
SqlValueColumnName = "awidget.serial"
|
||||
});
|
||||
FieldDefinitions.Add(new AyaDataListFieldDefinition
|
||||
{
|
||||
LtKey = "WidgetDollarAmount",
|
||||
FieldKey = "widgetdollaramount",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Currency,
|
||||
UiFieldDataType = (int)UiFieldDataType.Currency,
|
||||
SqlValueColumnName = "awidget.dollaramount"
|
||||
});
|
||||
FieldDefinitions.Add(new AyaDataListFieldDefinition
|
||||
{
|
||||
LtKey = "WidgetCount",
|
||||
FieldKey = "widgetcount",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Integer,
|
||||
UiFieldDataType = (int)UiFieldDataType.Integer,
|
||||
SqlValueColumnName = "awidget.count"
|
||||
});
|
||||
FieldDefinitions.Add(new AyaDataListFieldDefinition
|
||||
{
|
||||
LtKey = "WidgetRoles",
|
||||
FieldKey = "widgetroles",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Enum,
|
||||
UiFieldDataType = (int)UiFieldDataType.Enum,
|
||||
EnumType = typeof(AuthorizationRoles).ToString(),
|
||||
SqlValueColumnName = "awidget.roles"
|
||||
});
|
||||
@@ -65,21 +65,21 @@ namespace AyaNova.DataList
|
||||
{
|
||||
LtKey = "WidgetStartDate",
|
||||
FieldKey = "widgetstartdate",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.DateTime,
|
||||
UiFieldDataType = (int)UiFieldDataType.DateTime,
|
||||
SqlValueColumnName = "awidget.startdate"
|
||||
});
|
||||
FieldDefinitions.Add(new AyaDataListFieldDefinition
|
||||
{
|
||||
LtKey = "WidgetEndDate",
|
||||
FieldKey = "widgetenddate",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.DateTime,
|
||||
UiFieldDataType = (int)UiFieldDataType.DateTime,
|
||||
SqlValueColumnName = "awidget.enddate"
|
||||
});
|
||||
FieldDefinitions.Add(new AyaDataListFieldDefinition
|
||||
{
|
||||
LtKey = "WidgetNotes",
|
||||
FieldKey = "widgetnotes",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Text,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
SqlValueColumnName = "awidget.notes"
|
||||
});
|
||||
|
||||
@@ -88,7 +88,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
FieldKey = "username",
|
||||
LtKey = "User",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Text,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
AyaObjectType = (int)AyaType.User,
|
||||
SqlIdColumnName = "auser.id",
|
||||
SqlValueColumnName = "auser.name"
|
||||
@@ -97,14 +97,14 @@ namespace AyaNova.DataList
|
||||
{
|
||||
LtKey = "Active",
|
||||
FieldKey = "widgetactive",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Bool,
|
||||
UiFieldDataType = (int)UiFieldDataType.Bool,
|
||||
SqlValueColumnName = "awidget.active"
|
||||
});
|
||||
FieldDefinitions.Add(new AyaDataListFieldDefinition
|
||||
{
|
||||
LtKey = "Tags",
|
||||
FieldKey = "widgettags",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Tags,
|
||||
UiFieldDataType = (int)UiFieldDataType.Tags,
|
||||
SqlValueColumnName = "awidget.tags"
|
||||
});
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
FieldKey = "widgetname",
|
||||
LtKey = "WidgetName",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Text,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
AyaObjectType = (int)AyaType.Widget,
|
||||
SqlIdColumnName = "awidget.id",
|
||||
SqlValueColumnName = "awidget.name"
|
||||
@@ -42,7 +42,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
FieldKey = "username",
|
||||
LtKey = "User",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Text,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
AyaObjectType = (int)AyaType.User,
|
||||
SqlIdColumnName = "auser.id",
|
||||
SqlValueColumnName = "auser.name"
|
||||
@@ -52,14 +52,14 @@ namespace AyaNova.DataList
|
||||
LtKey = "UserEmailAddress",
|
||||
FieldKey = "emailaddress",
|
||||
SqlValueColumnName = "auseroptions.emailaddress",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.EmailAddress
|
||||
UiFieldDataType = (int)UiFieldDataType.EmailAddress
|
||||
});
|
||||
FieldDefinitions.Add(new AyaDataListFieldDefinition
|
||||
{
|
||||
LtKey = "Active",
|
||||
FieldKey = "widgetactive",
|
||||
SqlValueColumnName = "awidget.active",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Bool
|
||||
UiFieldDataType = (int)UiFieldDataType.Bool
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ namespace AyaNova.DataList
|
||||
LtKey = "User",
|
||||
FieldKey = "username",
|
||||
AyaObjectType = (int)AyaType.User,
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Text,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
SqlIdColumnName = "auser.id",
|
||||
SqlValueColumnName = "auser.name"
|
||||
});
|
||||
@@ -36,7 +36,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
LtKey = "Active",
|
||||
FieldKey = "useractive",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Bool,
|
||||
UiFieldDataType = (int)UiFieldDataType.Bool,
|
||||
SqlValueColumnName = "auser.active"
|
||||
});
|
||||
|
||||
@@ -44,7 +44,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
LtKey = "AuthorizationRoles",
|
||||
FieldKey = "userroles",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Enum,
|
||||
UiFieldDataType = (int)UiFieldDataType.Enum,
|
||||
EnumType = typeof(AuthorizationRoles).ToString(),
|
||||
SqlValueColumnName = "auser.roles"
|
||||
});
|
||||
@@ -53,7 +53,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
LtKey = "UserUserType",
|
||||
FieldKey = "usertype",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Enum,
|
||||
UiFieldDataType = (int)UiFieldDataType.Enum,
|
||||
EnumType = typeof(UserType).ToString(),
|
||||
SqlValueColumnName = "auser.usertype"
|
||||
});
|
||||
@@ -62,7 +62,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
LtKey = "UserEmployeeNumber",
|
||||
FieldKey = "useremployeenumber",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Text,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
SqlValueColumnName = "auser.employeenumber"
|
||||
});
|
||||
|
||||
@@ -70,7 +70,7 @@ namespace AyaNova.DataList
|
||||
{
|
||||
LtKey = "UserNotes",
|
||||
FieldKey = "usernotes",
|
||||
UiFieldDataType = (int)AyaUiFieldDataType.Text,
|
||||
UiFieldDataType = (int)UiFieldDataType.Text,
|
||||
SqlValueColumnName = "auser.notes"
|
||||
});
|
||||
|
||||
|
||||
@@ -18,14 +18,14 @@ namespace AyaNova.Biz
|
||||
get
|
||||
{
|
||||
var ret = new List<int>();
|
||||
ret.Add((int)AyaUiFieldDataType.Currency);
|
||||
ret.Add((int)AyaUiFieldDataType.Date);
|
||||
ret.Add((int)AyaUiFieldDataType.Time);
|
||||
ret.Add((int)AyaUiFieldDataType.DateTime);
|
||||
ret.Add((int)AyaUiFieldDataType.Text);
|
||||
ret.Add((int)AyaUiFieldDataType.Decimal);
|
||||
ret.Add((int)AyaUiFieldDataType.Integer);
|
||||
ret.Add((int)AyaUiFieldDataType.Bool);
|
||||
ret.Add((int)UiFieldDataType.Currency);
|
||||
ret.Add((int)UiFieldDataType.Date);
|
||||
ret.Add((int)UiFieldDataType.Time);
|
||||
ret.Add((int)UiFieldDataType.DateTime);
|
||||
ret.Add((int)UiFieldDataType.Text);
|
||||
ret.Add((int)UiFieldDataType.Decimal);
|
||||
ret.Add((int)UiFieldDataType.Integer);
|
||||
ret.Add((int)UiFieldDataType.Bool);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace AyaNova.Biz
|
||||
// }
|
||||
|
||||
//DataTypes used to format display properly and for custom fields definition etc
|
||||
public enum AyaUiFieldDataType : int
|
||||
public enum UiFieldDataType : int
|
||||
{
|
||||
NoType = 0,
|
||||
DateTime = 1,
|
||||
Reference in New Issue
Block a user