using Centron.DAO.Mappings.Accounts; using Centron.DAO.Mappings.CustomerArea; using Centron.DAO.UserTypes; using Centron.Data.Entities.Accounts; using Centron.Data.Entities.CustomerArea; using Centron.Data.Entities.ObjectTypes; using Centron.Data.Entities.Sales.Receipts; using Centron.Interfaces.Accounts; using Centron.Interfaces.CustomerArea; using Centron.Interfaces.Sales.CustomerAssets; using FluentNHibernate.Mapping; namespace Centron.Tests.BL.DatabaseMappings { /// /// IMPORTANT: This is a replacement class for the real class for running in-memory unit tests. /// Make sure to keep this class in sync with the real class. /// public class AccountCustomerMapsForTest : ClassMap { public AccountCustomerMapsForTest() { Table("AccountCustomers"); Id(m => m.I3D).Column("I3D"); Map(m => m.BookKeepingExportDate).Column("BookKeepingExportDate").Nullable(); Map(m => m.Number).Column("Number"); Map(m => m.ReceiptConditionOfferI3D).Column("ReceiptConditionOfferI3D").Nullable(); Map(m => m.ReceiptConditionOrderI3D).Column("ReceiptConditionOrderI3D").Nullable(); Map(m => m.ReceiptConditionDeliveryListI3D).Column("ReceiptConditionDeliveryListI3D").Nullable(); Map(m => m.ReceiptConditionPickupListI3D).Column("ReceiptConditionPickupListI3D").Nullable(); Map(m => m.InvoiceDeliveryKind).Column("InvoiceDeliveryKind").Nullable(); Map(m => m.AlternativeInvoiceMailRecipientI3D).Column("AlternativeInvoiceMailRecipientI3D").Nullable(); Map(m => m.SalesControllingI3D).Column("SalesControllingI3D").Nullable(); Map(m => m.RootDirI3D).Column("RootDirI3D").Nullable(); Map(m => m.AlternativeDeliveryAddressContactI3D).Column("AlternativeDeliveryAddressContactI3D").Nullable(); Map(m => m.ClassificationI3D).Column("ClassificationI3D").Nullable(); Map(m => m.BookKeepingExportEmployeeI3D).Column("BookKeepingExportEmployeeI3D").Nullable(); Map(m => m.SpecialAgreementI3D).Column("SpecialAgreementI3D").Nullable(); Map(m => m.WarehouseI3D).Column("WarehouseI3D").Nullable(); Map(m => m.PriceListFromDistributorI3D).Column("PriceListFromDistributorI3D").Nullable(); Map(m => m.LockOrderAfterDunningLevel).Column("LockOrderAfterDunningLevel").Nullable(); Map(m => m.AlternativeInvoiceAccountI3D).Column("AlternativeInvoiceAccountI3D").Nullable(); Map(m => m.AlternativeInvoiceAddressI3D).Column("AlternativeInvoiceAddressI3D").Nullable(); Map(m => m.AlternativeInvoiceAddressContactI3D).Column("AlternativeInvoiceAddressContactI3D").Nullable(); Map(m => m.AlternativeDeliveryAccountI3D).Column("AlternativeDeliveryAccountI3D").Nullable(); Map(m => m.AlternativeDeliveryAddressI3D).Column("AlternativeDeliveryAddressI3D").Nullable(); Map(m => m.PriceList).Column("PriceList").Nullable(); Map(m => m.DunningLetterRecipientPersonI3D).Column("DunningLetterRecipientPersonI3D").Nullable(); Map(m => m.DunningLetterUseAlternativeInvoiceAddress).Column("DunningLetterUseAlternativeInvoiceAddress").Not.Nullable(); Map(m => m.DunningLetterAfterDays1).Column("DunningLetterAfterDays1").Nullable(); Map(m => m.DunningLetterAfterDays2).Column("DunningLetterAfterDays2").Nullable(); Map(m => m.DunningLetterAfterDays3).Column("DunningLetterAfterDays3").Nullable(); Map(m => m.ReceiptConditionInvoiceI3D).Column("ReceiptConditionInvoiceI3D").Nullable(); Map(m => m.ReceiptConditionCreditVoucherI3D).Column("ReceiptConditionCreditVoucherI3D").Nullable(); Map(m => m.ReceiptConditionDeliveryI3D).Column("ReceiptConditionDeliveryI3D").Nullable(); Map(m => m.ReceiptConditionDeliveryOfferI3D).Column("ReceiptConditionDeliveryOfferI3D").Nullable(); Map(m => m.ReceiptConditionDeliveryOrderI3D).Column("ReceiptConditionDeliveryOrderI3D").Nullable(); Map(m => m.LimitCalculationKind).Column("LimitCalculationKind").Nullable(); //Map(m => m.IsAccountKind1).Column("IsAccountKind1"); //Map(m => m.IsAccountKind2).Column("IsAccountKind2"); //Map(m => m.IsAccountKind3).Column("IsAccountKind3"); //Map(m => m.IsAccountKind4).Column("IsAccountKind4"); //Map(m => m.IsAccountKind5).Column("IsAccountKind5"); Map(m => m.IsPurchaseOrderNumberRequired).Column("IsPurchaseOrderNumberRequired"); Map(m => m.PrintProductionConfiguration).Column("PrintProductionConfiguration"); Map(m => m.ShippingCostsDeaktivated).Column("ShippingCostsDeaktivated"); Map(m => m.HasTicketApproval).Column("HasTicketApproval").Nullable(); Map(m => m.IsExclusiveOfVAT).Column("IsExclusiveOfVAT"); Map(m => m.IsBookKeepingExportDone).Column("IsBookKeepingExportDone"); Map(m => m.IsBookKeepingExportDeaktivated).Column("IsBookKeepingExportDeaktivated"); Map(m => m.IsProjectNumberRequired).Column("IsProjectNumberRequired"); Map(m => m.IsDiscountTextVisibilityDeaktivated).Column("IsDiscountTextVisibilityDeaktivated"); Map(m => m.IsProductionConfigurationMandatory).Column("IsProductionConfigurationMandatory"); Map(m => m.Discount).Column("Discount"); // IMPORTANT: This is the problematic column that causes a syntax error in the SQLite in-memory database. // The original name of the column is 'Limit' which is a reserved keyword in SQLite. // This is changed here for 'CreditLimit' to avoid the syntax error. Map(m => m.Limit).Column("CreditLimit"); Map(m => m.ExtraChargeRetailPrice).Column("ExtraChargeRetailPrice"); Map(m => m.BookKeepingNumber).Column("BookKeepingNumber").Length(64); Map(m => m.DeliveryText).Column("DeliveryText").Length(500).Nullable(); Map(m => m.DunningLetterKind).Column("DunningLetterKind").Length(50).Nullable(); Map(m => m.AlternativeInvoiceReceiver).Column("AlternativeInvoiceReceiver").Length(500).Nullable(); Map(m => m.AlternativeDeliveryReceiver).Column("AlternativeDeliveryReceiver").Length(500).Nullable(); Map(m => m.CommentOffer).Column("CommentOffer").Length(int.MaxValue).Nullable(); Map(m => m.BookKeepingCollectionAccount).Column("BookKeepingCollectionAccount").Length(24).Nullable(); Map(m => m.ProductRecipientNumber).Column("ProductRecipientNumber").Length(50).Nullable(); Map(m => m.MailNotificationAtHelpdeskCC).Column("MailNotificationAtHelpdeskCC").Length(255).Nullable(); Map(m => m.MailNotificationAtHelpdeskBCC).Column("MailNotificationAtHelpdeskBCC").Length(255).Nullable(); Map(m => m.CommentOrder).Column("CommentOrder").Length(int.MaxValue).Nullable(); Map(m => m.CommentDeliveryList).Column("CommentDeliveryList").Length(int.MaxValue).Nullable(); Map(m => m.CommentPickupList).Column("CommentPickupList").Length(int.MaxValue).Nullable(); Map(m => m.CommentInvoice).Column("CommentInvoice").Length(int.MaxValue).Nullable(); Map(m => m.CommentCreditVoucher).Column("CommentCreditVoucher").Length(int.MaxValue).Nullable(); Map(m => m.CommentHelpdesk).Column("CommentHelpdesk").Length(int.MaxValue).Nullable(); Map(m => m.DeliveryOption).Column("DeliveryOption").CustomType().Nullable(); Map(m => m.CountServer).Column("CountServer").Nullable(); Map(m => m.CountPc).Column("CountPc").Nullable(); Map(m => m.ServerManufacturor).Column("ServerManufacturor").Length(80).Nullable(); Map(m => m.PcManufacturor).Column("PcManufacturor").Length(80).Nullable(); Map(m => m.PrinterManufacturor).Column("PrinterManufacturor").Length(80).Nullable(); Map(m => m.AcquisionComplete).Column("AcquisionComplete").Nullable(); Map(m => m.AcquisionImportant).Column("AcquisionImportant").Nullable(); Map(m => m.Vip).Column("Vip").Nullable(); Map(m => m.AdditionalInformation).Column("AdditionalInformation").Length(int.MaxValue).Nullable(); Map(m => m.BoughtByThusFar).Column("BoughtByThusFar").Length(80).Nullable(); Map(m => m.CrmText1).Column("CrmText1").Length(100).Nullable(); Map(m => m.CrmText2).Column("CrmText2").Length(100).Nullable(); Map(m => m.CrmText3).Column("CrmText3").Length(100).Nullable(); Map(m => m.CrmText4).Column("CrmText4").Length(100).Nullable(); Map(m => m.CrmText5).Column("CrmText5").Length(100).Nullable(); Map(m => m.CrmText6).Column("CrmText6").Length(100).Nullable(); Map(m => m.AcquisionFreeDate1).Column("AcquisionFreeDate1").Nullable(); Map(m => m.AcquisionFreeDate2).Column("AcquisionFreeDate2").Nullable(); Map(m => m.CoreDataComplete).Column("CoreDataComplete").Nullable(); Map(m => m.RiverbirdMsp).Column("RiverbirdMsp").Length(32).Nullable(); Map(m => m.HelpdeskClosingDontNotifyCustomer).Column("HelpdeskClosingDontNotifyCustomer").Nullable(); Map(m => m.ExportZUGFeRDDocument).Column("ExportZUGFeRDDocument").Nullable(); Map(m => m.LeitwegID).Column("LeitwegID").Length(50).Nullable(); Map(m => m.OwnSupplierNumber).Column("OwnSupplierNumber").Length(20).Nullable(); Map(m => m.ProvisionSchemaI3D).Column("ProvisionSchemaI3D").Nullable(); Map(m => m.CanSeeTicketsSBO).Column("CanSeeTicketsSBO").Not.Nullable(); Map(m => m.TicketsVisibleFromDateSBO).Column("TicketsVisibleFromDateSBO").Nullable(); Map(m => m.CustomerApprovalEnabledSBO).Column("CustomerApprovalEnabledSBO").Not.Nullable(); Map(m => m.DunningStop).Column("DunningStop").Nullable(); Map(m => m.DunningStopBegin).Column("DunningStopBegin").Nullable(); Map(m => m.DunningStopEnd).Column("DunningStopEnd").Nullable(); Map(m => m.DunningInfo).Column("DunningInfo").Length(int.MaxValue).Nullable(); Map(m => m.RiverbirdCustomerReference).Column("RiverbirdCustomerReference").Nullable(); Map(m => m.TelekomDiveCustomerNote).Column("TelekomDiveCustomerNote").Length(300).Nullable(); Map(m => m.ShowTelekomDiveCustomerNote).Column("ShowTelekomDiveCustomerNote").Nullable(); Map(m => m.MandatorBank).Column("MandatorBank").Nullable(); References(f => f.ReceiptReceiverDelivery).Column("ReceiptReceiverDeliveryI3D").Nullable().Fetch.Join().Cascade.All(); References(f => f.ReceiptReceiverInvoice).Column("ReceiptReceiverInvoiceI3D").Nullable().Fetch.Join().Cascade.All(); } } }