using System.Collections.Generic; using Newtonsoft.Json.Linq; using AyaNova.Models; using AyaNova.Biz; namespace AyaNova.DataList { internal class ServiceBankDataList : DataListProcessingBase { public ServiceBankDataList() { DefaultListObjectType = AyaType.ServiceBank; SQLFrom = "from aservicebank"; var RoleSet = BizRoles.GetRoleSet(DefaultListObjectType); AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change; // //######## DEFAULT VIEW WHEN NO VIEW CHOSEN ############ // //Default ListView // dynamic dlistView = new JArray(); // dynamic cm = null; // cm = new JObject(); // cm.fld = "ServiceBankCreated"; // cm.sort = "-"; // dlistView.Add(cm); // cm = new JObject(); // cm.fld = "Object"; // dlistView.Add(cm); // cm = new JObject(); // cm.fld = "ServiceBankCurrency"; // dlistView.Add(cm); // cm = new JObject(); // cm.fld = "ServiceBankCurrencyBalance"; // dlistView.Add(cm); // cm = new JObject(); // cm.fld = "ServiceBankIncidents"; // dlistView.Add(cm); // cm = new JObject(); // cm.fld = "ServiceBankIncidentsBalance"; // dlistView.Add(cm); // cm = new JObject(); // cm.fld = "ServiceBankHours"; // dlistView.Add(cm); // cm = new JObject(); // cm.fld = "ServiceBankHoursBalance"; // dlistView.Add(cm); // cm = new JObject(); // cm.fld = "ServiceBankDescription"; // dlistView.Add(cm); // DefaultListView = dlistView.ToString(Newtonsoft.Json.Formatting.None); DefaultColumns = new List() { "ServiceBankCreated", "Object", "ServiceBankCurrency", "ServiceBankCurrencyBalance", "ServiceBankIncidents", "ServiceBankIncidentsBalance", "ServiceBankHours", "ServiceBankHoursBalance", "ServiceBankDescription" }; DefaultSortBy = new Dictionary() { { "ServiceBankCreated", "-" } }; //NOTE: Due to the join, all the sql id and name fields that can conflict with the joined table need to be specified completely FieldDefinitions = new List(); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankSourceRootObjectType", FieldKey = "ServiceBankSourceRootObjectType", UiFieldDataType = (int)UiFieldDataType.Text, SqlIdColumnName = "aservicebank.sourceid", SqlValueColumnName = "AYGETNAME(aservicebank.sourceid, aservicebank.sourcetype)", SqlAyTypeColumnName = "aservicebank.sourcetype" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "Object", FieldKey = "Object", UiFieldDataType = (int)UiFieldDataType.Text, SqlIdColumnName = "aservicebank.objectid", SqlValueColumnName = "AYGETNAME(aservicebank.objectid, aservicebank.objecttype)", SqlAyTypeColumnName = "aservicebank.objecttype" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AyaType", FieldKey = "AyaType", UiFieldDataType = (int)UiFieldDataType.Enum, EnumType = AyaNova.Util.StringUtil.TrimTypeName(typeof(AyaType).ToString()), SqlValueColumnName = "aservicebank.objecttype" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankDescription", FieldKey = "ServiceBankDescription", AyaObjectType = (int)AyaType.ServiceBank, UiFieldDataType = (int)UiFieldDataType.Text, SqlIdColumnName = "aservicebank.id", SqlValueColumnName = "aservicebank.name", IsRowId = true }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankCreated", FieldKey = "ServiceBankCreated", UiFieldDataType = (int)UiFieldDataType.DateTime, SqlValueColumnName = "aservicebank.entrydate" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankCurrency", FieldKey = "ServiceBankCurrency", UiFieldDataType = (int)UiFieldDataType.Currency, SqlValueColumnName = "aservicebank.currency" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankCurrencyBalance", FieldKey = "ServiceBankCurrencyBalance", UiFieldDataType = (int)UiFieldDataType.Currency, SqlValueColumnName = "aservicebank.currencybalance" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankIncidents", FieldKey = "ServiceBankIncidents", UiFieldDataType = (int)UiFieldDataType.Decimal, SqlValueColumnName = "aservicebank.incidents" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankIncidentsBalance", FieldKey = "ServiceBankIncidentsBalance", UiFieldDataType = (int)UiFieldDataType.Decimal, SqlValueColumnName = "aservicebank.incidentsbalance" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankHours", FieldKey = "ServiceBankHours", UiFieldDataType = (int)UiFieldDataType.Decimal, SqlValueColumnName = "aservicebank.hours" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "ServiceBankHoursBalance", FieldKey = "ServiceBankHoursBalance", UiFieldDataType = (int)UiFieldDataType.Decimal, SqlValueColumnName = "aservicebank.hoursbalance" }); //META object id column FieldDefinitions.Add(new DataListFieldDefinition { FieldKey = "metaservicebankobjectid", UiFieldDataType = (int)UiFieldDataType.InternalId, SqlIdColumnName = "aservicebank.objectid", SqlValueColumnName = "aservicebank.objectid", IsMeta = true }); } /* //TODO: support the clientCriteria if (vm.objectId && vm.objectId != 0 && vm.objectType) { // //DYNAMIC FILTER // vm.metaView = JSON.stringify([ // { // fld: "metaservicebankobjectid", // filter: { // items: [{ op: "=", value: vm.objectId }] // } // }, // { // fld: "AyaType", // filter: { // items: [{ op: "=", value: vm.objectType }] // } // } // ]); // vm.name = await window.$gz.api.fetchBizObjectName( // vm.objectType, // vm.objectId // ); //OBJECTID,AYATYPE vm.clientCriteria = `${vm.objectId},${vm.objectType}`; } */ }//eoc }//eons