using System.Collections.Generic; using System.Linq; using AyaNova.Biz; using AyaNova.Models; namespace AyaNova.DataList { internal class QuoteItemUnitDataList : DataListProcessingBase, IDataListInternalCriteria { public QuoteItemUnitDataList(long translationId) { DefaultListAType = AyaType.Quote; SQLFrom = "from aquote " + "left join aquotestatus on (aquote.laststatusid = aquotestatus.id) " + "left join acustomer on (aquote.customerid = acustomer.id) " + "left join aheadoffice on (acustomer.headofficeid = aheadoffice.id) " + "left join aproject on (aquote.projectid = aproject.id) " + "left join auser as aprepuser on (aquote.preparedbyid = aprepuser.id) " + "left join acontract on (aquote.contractid = acontract.id)" + "left join aquoteitem on aquote.id=aquoteitem.quoteid " + "left join aworkorderitemstatus on (aquoteitem.workorderitemstatusid = aworkorderitemstatus.id) " + "left join aworkorderitempriority on (aquoteitem.workorderitempriorityid = aworkorderitempriority.id) " //workorder item unit + "left join aquoteitemunit on aquoteitem.id=aquoteitemunit.quoteitemid " + "left join aunit on (aquoteitemunit.unitid=aunit.id) " ; var RoleSet = BizRoles.GetRoleSet(DefaultListAType); AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change; DefaultColumns = new List() { "QuoteSerialNumber", "WorkOrderItemSequence", "WorkOrderItemSummary", "Customer", "QuoteQuoteRequestDate", "WorkOrderItemUnit", "WorkOrderItemUnitNotes" }; DefaultSortBy = new Dictionary() { { "QuoteSerialNumber", "-" }, { "WorkOrderItemSequence", "+" }, { "WorkOrderItemUnit", "-" } }; FieldDefinitions = new List(); /* ██╗ ██╗███╗ ██╗██╗████████╗ ██║ ██║████╗ ██║██║╚══██╔══╝ ██║ ██║██╔██╗ ██║██║ ██║ ██║ ██║██║╚██╗██║██║ ██║ ╚██████╔╝██║ ╚████║██║ ██║ ╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═╝ */ #region WorkOrderItemUnit fields FieldDefinitions.Add(new DataListFieldDefinition { TKey = "Unit", FieldKey = "WorkOrderItemUnit", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.QuoteItemUnit, SqlIdColumnName = "aquoteitemunit.id", SqlValueColumnName = "aunit.serial", IsRowId = true }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitNotes", FieldKey = "WorkOrderItemUnitNotes", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.QuoteItemUnit, SqlIdColumnName = "aquoteitemunit.id", SqlValueColumnName = "aquoteitemunit.notes" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom1", FieldKey = "workorderitemunitcustom1", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom2", FieldKey = "workorderitemunitcustom2", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom3", FieldKey = "workorderitemunitcustom3", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom4", FieldKey = "workorderitemunitcustom4", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom5", FieldKey = "workorderitemunitcustom5", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom6", FieldKey = "workorderitemunitcustom6", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom7", FieldKey = "workorderitemunitcustom7", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom8", FieldKey = "workorderitemunitcustom8", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom9", FieldKey = "workorderitemunitcustom9", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom10", FieldKey = "workorderitemunitcustom10", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom11", FieldKey = "workorderitemunitcustom11", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom12", FieldKey = "workorderitemunitcustom12", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom13", FieldKey = "workorderitemunitcustom13", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom14", FieldKey = "workorderitemunitcustom14", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom15", FieldKey = "workorderitemunitcustom15", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemUnitCustom16", FieldKey = "workorderitemunitcustom16", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitemunit.customfields", TKeySection = "WorkOrderItemUnit" }); //META columns FieldDefinitions.Add(new DataListFieldDefinition { FieldKey = "metaquoteitemunitid", UiFieldDataType = (int)UiFieldDataType.InternalId, SqlIdColumnName = "aquoteitemunit.id", SqlValueColumnName = "aquoteitemunit.id", IsMeta = true }); FieldDefinitions.Add(new DataListFieldDefinition { FieldKey = "metaunit", UiFieldDataType = (int)UiFieldDataType.InternalId, SqlIdColumnName = "aquoteitemunit.unitid", SqlValueColumnName = "aquoteitemunit.unitid", IsMeta = true }); FieldDefinitions.Add(new DataListFieldDefinition { FieldKey = "metaunitmodel", UiFieldDataType = (int)UiFieldDataType.InternalId, SqlIdColumnName = "aunit.unitmodelid", SqlValueColumnName = "aunit.unitmodelid", IsMeta = true }); #endregion /* ██╗████████╗███████╗███╗ ███╗███████╗ ██║╚══██╔══╝██╔════╝████╗ ████║██╔════╝ ██║ ██║ █████╗ ██╔████╔██║███████╗ ██║ ██║ ██╔══╝ ██║╚██╔╝██║╚════██║ ██║ ██║ ███████╗██║ ╚═╝ ██║███████║ ╚═╝ ╚═╝ ╚══════╝╚═╝ ╚═╝╚══════╝ */ #region QuoteItem fields FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemSummary", FieldKey = "WorkOrderItemSummary", AType = (int)AyaType.QuoteItem, UiFieldDataType = (int)UiFieldDataType.Text, SqlIdColumnName = "aquoteitem.id", SqlValueColumnName = "aquoteitem.notes" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "Sequence", FieldKey = "WorkOrderItemSequence", AType = (int)AyaType.QuoteItem, UiFieldDataType = (int)UiFieldDataType.Integer, SqlIdColumnName = "aquoteitem.id", SqlValueColumnName = "aquoteitem.sequence" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemTechNotes", FieldKey = "WorkOrderItemTechNotes", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquoteitem.technotes" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemTags", FieldKey = "WorkOrderItemTags", UiFieldDataType = (int)UiFieldDataType.Tags, SqlValueColumnName = "aquoteitem.tags" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemWorkOrderStatusID", FieldKey = "WorkOrderItemWorkOrderStatusID", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.WorkOrderItemStatus, SqlIdColumnName = "aquoteitem.workorderitemstatusid", SqlColorColumnName = "aworkorderitemstatus.color", SqlValueColumnName = "aworkorderitemstatus.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemPriorityID", FieldKey = "WorkOrderItemPriorityID", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.WorkOrderItemPriority, SqlIdColumnName = "aquoteitem.workorderitempriorityid", SqlColorColumnName = "aworkorderitempriority.color", SqlValueColumnName = "aworkorderitempriority.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemRequestDate", FieldKey = "WorkOrderItemRequestDate", UiFieldDataType = (int)UiFieldDataType.DateTime, SqlValueColumnName = "aquoteitem.requestdate" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemWarrantyService", FieldKey = "WorkOrderItemWarrantyService", UiFieldDataType = (int)UiFieldDataType.Bool, SqlValueColumnName = "aquoteitem.warrantyservice" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom1", FieldKey = "workorderitemcustom1", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom2", FieldKey = "workorderitemcustom2", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom3", FieldKey = "workorderitemcustom3", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom4", FieldKey = "workorderitemcustom4", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom5", FieldKey = "workorderitemcustom5", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom6", FieldKey = "workorderitemcustom6", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom7", FieldKey = "workorderitemcustom7", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom8", FieldKey = "workorderitemcustom8", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom9", FieldKey = "workorderitemcustom9", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom10", FieldKey = "workorderitemcustom10", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom11", FieldKey = "workorderitemcustom11", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom12", FieldKey = "workorderitemcustom12", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom13", FieldKey = "workorderitemcustom13", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom14", FieldKey = "workorderitemcustom14", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom15", FieldKey = "workorderitemcustom15", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderItemCustom16", FieldKey = "workorderitemcustom16", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquoteitem.customfields", TKeySection = "WorkOrderItem" }); //META column FieldDefinitions.Add(new DataListFieldDefinition { FieldKey = "metaquoteitemid", UiFieldDataType = (int)UiFieldDataType.InternalId, SqlIdColumnName = "aquoteitem.id", SqlValueColumnName = "aquoteitem.id", IsMeta = true }); #endregion workorderitem fields /* Quote */ #region Quote Header fields FieldDefinitions.Add(new DataListFieldDefinition { TKey = "QuoteSerialNumber", FieldKey = "QuoteSerialNumber", AType = (int)AyaType.Quote, UiFieldDataType = (int)UiFieldDataType.Integer, SqlIdColumnName = "aquote.id", SqlValueColumnName = "aquote.serial" }); FieldDefinitions.Add(new DataListFieldDefinition { FieldKey = "Customer", TKey = "Customer", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.Customer, SqlIdColumnName = "acustomer.id", SqlValueColumnName = "acustomer.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "HeadOffice", FieldKey = "workorderheadoffice", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.HeadOffice, SqlIdColumnName = "aheadoffice.id", SqlValueColumnName = "aheadoffice.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "QuotePreparedByID", FieldKey = "QuotePreparedByID", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.User, SqlIdColumnName = "aquote.preparedbyid", SqlValueColumnName = "aprepuser.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "QuoteQuoteStatusType", FieldKey = "QuoteQuoteStatusType", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.QuoteStatus, SqlIdColumnName = "aquote.laststatusid", SqlColorColumnName = "aquotestatus.color", SqlValueColumnName = "aquotestatus.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderSummary", FieldKey = "workordernotes", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.notes" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "Tags", FieldKey = "workordertags", UiFieldDataType = (int)UiFieldDataType.Tags, SqlValueColumnName = "aquote.tags" }); FieldDefinitions.Add(new DataListFieldDefinition { FieldKey = "Project", TKey = "Project", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.Project, SqlIdColumnName = "aproject.id", SqlValueColumnName = "aproject.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "Contract", FieldKey = "Contract", UiFieldDataType = (int)UiFieldDataType.Text, AType = (int)AyaType.Contract, SqlIdColumnName = "acontract.id", SqlValueColumnName = "acontract.name" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderInternalReferenceNumber", FieldKey = "WorkOrderInternalReferenceNumber", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.internalreferencenumber" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustomerReferenceNumber", FieldKey = "WorkOrderCustomerReferenceNumber", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.customerreferencenumber" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustomerContactName", FieldKey = "WorkOrderCustomerContactName", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.customercontactname" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "QuoteQuoteRequestDate", FieldKey = "QuoteQuoteRequestDate", UiFieldDataType = (int)UiFieldDataType.DateTime, SqlValueColumnName = "aquote.requested" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "QuoteValidUntilDate", FieldKey = "QuoteValidUntilDate", UiFieldDataType = (int)UiFieldDataType.DateTime, SqlValueColumnName = "aquote.validuntil" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "QuoteDateSubmitted", FieldKey = "QuoteDateSubmitted", UiFieldDataType = (int)UiFieldDataType.DateTime, SqlValueColumnName = "aquote.submitted" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "QuoteDateApproved", FieldKey = "QuoteDateApproved", UiFieldDataType = (int)UiFieldDataType.DateTime, SqlValueColumnName = "aquote.approved" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "QuoteIntroduction", FieldKey = "QuoteIntroduction", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.introduction" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderOnsite", FieldKey = "WorkOrderOnsite", UiFieldDataType = (int)UiFieldDataType.Bool, SqlValueColumnName = "aquote.onsite" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressPostalDeliveryAddress", FieldKey = "workorderpostaddress", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.postaddress" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressPostalCity", FieldKey = "workorderpostcity", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.postcity" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressPostalStateProv", FieldKey = "workorderpostregion", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.postregion" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressPostalCountry", FieldKey = "workorderpostcountry", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.postcountry" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressPostalPostal", FieldKey = "workorderpostcode", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.postcode" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressDeliveryAddress", FieldKey = "workorderaddress", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.address" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressCity", FieldKey = "workordercity", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.city" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressStateProv", FieldKey = "workorderregion", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.region" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressCountry", FieldKey = "workordercountry", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.country" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressPostal", FieldKey = "workorderaddresspostal", UiFieldDataType = (int)UiFieldDataType.Text, SqlValueColumnName = "aquote.addresspostal" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressLatitude", FieldKey = "workorderlatitude", UiFieldDataType = (int)UiFieldDataType.Decimal, SqlValueColumnName = "aquote.latitude" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "AddressLongitude", FieldKey = "workorderlongitude", UiFieldDataType = (int)UiFieldDataType.Decimal, SqlValueColumnName = "aquote.longitude" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom1", FieldKey = "workordercustom1", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom2", FieldKey = "workordercustom2", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom3", FieldKey = "workordercustom3", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom4", FieldKey = "workordercustom4", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom5", FieldKey = "workordercustom5", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom6", FieldKey = "workordercustom6", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom7", FieldKey = "workordercustom7", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom8", FieldKey = "workordercustom8", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom9", FieldKey = "workordercustom9", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom10", FieldKey = "workordercustom10", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom11", FieldKey = "workordercustom11", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom12", FieldKey = "workordercustom12", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom13", FieldKey = "workordercustom13", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom14", FieldKey = "workordercustom14", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom15", FieldKey = "workordercustom15", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); FieldDefinitions.Add(new DataListFieldDefinition { TKey = "WorkOrderCustom16", FieldKey = "workordercustom16", IsCustomField = true, IsFilterable = false, IsSortable = false, SqlValueColumnName = "aquote.customfields" }); #endregion } public List DataListInternalCriteria(long currentUserId, AuthorizationRoles userRoles, string clientCriteria) { List ret = new List(); //This is required to filter out rows where there are no matching scheduled user otherwise we'd get all workorders and items regardless { DataListFilterOption FilterOption = new DataListFilterOption() { Column = "metaquoteitemunitid" }; FilterOption.Items.Add(new DataListColumnFilter() { value = "*NULL*", op = DataListFilterComparisonOperator.NotEqual }); ret.Add(FilterOption); } //This is an optional filter generated at client to restrict to particular item's workorders //ClientCriteria format for this list is "OBJECTID,AYATYPE" var crit = (clientCriteria ?? "").Split(',').Select(z => z.Trim()).ToArray(); if (crit.Length > 1) { int nType = 0; if (!int.TryParse(crit[1], out nType)) return ret; AyaType forType = (AyaType)nType; if (forType != AyaType.Unit && forType != AyaType.UnitModel) return ret; long lId = 0; if (!long.TryParse(crit[0], out lId)) return ret; if (lId == 0) return ret; //Have valid type, have an id, so filter away switch (forType) { case AyaType.Unit: { DataListFilterOption FilterOption = new DataListFilterOption() { Column = "metaunit" }; FilterOption.Items.Add(new DataListColumnFilter() { value = crit[0], op = DataListFilterComparisonOperator.Equality }); ret.Add(FilterOption); } break; case AyaType.UnitModel: { DataListFilterOption FilterOption = new DataListFilterOption() { Column = "metaunitmodel" }; FilterOption.Items.Add(new DataListColumnFilter() { value = crit[0], op = DataListFilterComparisonOperator.Equality }); ret.Add(FilterOption); } break; } } return ret; } }//eoc }//eons