Files
raven/server/AyaNova/DataList/WorkOrderStatusDataList.cs
2021-07-26 23:21:39 +00:00

84 lines
3.5 KiB
C#

using System.Collections.Generic;
using AyaNova.Biz;
namespace AyaNova.DataList
{
internal class WorkOrderStatusDataList : DataListProcessingBase
{
public WorkOrderStatusDataList()
{
DefaultListAType = AyaType.WorkOrderStatus;
SQLFrom = "from aworkorderstatus";
var RoleSet = BizRoles.GetRoleSet(DefaultListAType);
AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change;
DefaultColumns = new List<string>() { "StatusName", "SelectRoles", "RemoveRoles", "Active" };
DefaultSortBy = new Dictionary<string, string>() { { "StatusName", "+" } };
FieldDefinitions = new List<DataListFieldDefinition>();
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "StatusName",
FieldKey = "StatusName",
AType = (int)AyaType.WorkOrderStatus,
UiFieldDataType = (int)UiFieldDataType.Text,
SqlIdColumnName = "aworkorderstatus.id",
SqlValueColumnName = "aworkorderstatus.name",
SqlColorColumnName = "aworkorderstatus.color",
IsRowId = true
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "StatusNotes",
FieldKey = "StatusNotes",
UiFieldDataType = (int)UiFieldDataType.Text,
SqlValueColumnName = "aworkorderstatus.notes"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "Active",
FieldKey = "Active",
UiFieldDataType = (int)UiFieldDataType.Bool,
SqlValueColumnName = "aworkorderstatus.active"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "StatusCompleted",
FieldKey = "StatusCompleted",
UiFieldDataType = (int)UiFieldDataType.Bool,
SqlValueColumnName = "aworkorderstatus.completed"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "StatusLocked",
FieldKey = "StatusLocked",
UiFieldDataType = (int)UiFieldDataType.Bool,
SqlValueColumnName = "aworkorderstatus.locked"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "SelectRoles",
FieldKey = "SelectRoles",
UiFieldDataType = (int)UiFieldDataType.Roles,
//NOTE: not technically an enum list but this will trigger datagrid at client to fetch roles for special handling
EnumType = AyaNova.Util.StringUtil.TrimTypeName(typeof(AuthorizationRoles).ToString()),
SqlValueColumnName = "aworkorderstatus.selectroles"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "RemoveRoles",
FieldKey = "RemoveRoles",
UiFieldDataType = (int)UiFieldDataType.Roles,
//NOTE: not technically an enum list but this will trigger datagrid at client to fetch roles for special handling
EnumType = AyaNova.Util.StringUtil.TrimTypeName(typeof(AuthorizationRoles).ToString()),
SqlValueColumnName = "aworkorderstatus.removeroles"
});
}
}//eoc
}//eons