/// <summary> /// Returns true if self and the provided entity have the same Id values /// and the Ids are not of the default Id value /// </summary> protected bool HasSameNonDefaultIdAs(Intermediary compareTo) { return(!this.IsTransient() && !compareTo.IsTransient() && this.Id.Equals(compareTo.Id)); }
/// <summary> /// Copies the current object to a new instance /// </summary> /// <param name="deep">Copy members that refer to objects external to this class (not dependent)</param> /// <param name="copiedObjects">Objects that should be reused</param> /// <param name="asNew">Copy the current object as a new one, ready to be persisted, along all its members.</param> /// <param name="reuseNestedObjects">If asNew is true, this flag if set, forces the reuse of all external objects.</param> /// <param name="copy">Optional - An existing [Intermediary] instance to use as the destination.</param> /// <returns>A copy of the object</returns> public virtual Intermediary Copy(bool deep = false, Hashtable copiedObjects = null, bool asNew = false, bool reuseNestedObjects = false, Intermediary copy = null) { if (copiedObjects == null) { copiedObjects = new Hashtable(); } if (copy == null && copiedObjects.Contains(this)) { return((Intermediary)copiedObjects[this]); } copy = copy ?? new Intermediary(); if (!asNew) { copy.TransientId = this.TransientId; copy.Id = this.Id; } copy.OtherDescription = this.OtherDescription; copy.IntermediaryType = this.IntermediaryType; copy.Company = this.Company; copy.EMail = this.EMail; copy.GUID = this.GUID; if (!copiedObjects.Contains(this)) { copiedObjects.Add(this, copy); } copy.orders = new List <Order>(); if (deep && this.orders != null) { foreach (var __item in this.orders) { if (!copiedObjects.Contains(__item)) { if (asNew && reuseNestedObjects) { copy.AddOrders(__item); } else { copy.AddOrders(__item.Copy(deep, copiedObjects, asNew)); } } else { copy.AddOrders((Order)copiedObjects[__item]); } } } copy.transactions = new List <Transaction>(); if (deep && this.transactions != null) { foreach (var __item in this.transactions) { if (!copiedObjects.Contains(__item)) { if (asNew && reuseNestedObjects) { copy.AddTransactions(__item); } else { copy.AddTransactions(__item.Copy(deep, copiedObjects, asNew)); } } else { copy.AddTransactions((Transaction)copiedObjects[__item]); } } } return(copy); }
public void Order_persistence_test() { DateTime now = DateTime.Now; // Get datetime without milliseconds now = new DateTime(now.Ticks - (now.Ticks % TimeSpan.TicksPerSecond), now.Kind); var _agreement_commercialagreement_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.CommercialAgreement { ProductCategory = "CommercialAgreement_ProductCategory", PaymentTerms = "CommercialAgreement_PaymentTerms", }; var _order_orderproducts_order = new DSS5_SupplyChainFinancialsOptimisation.BO.OrderProduct { Code = "OrderProduct_Code", Quantity = 222222.22M, Description = "OrderProduct_Description", UnitValue = "OrderProduct_UnitValue", MeasurementUnit = "OrderProduct_MeasurementUnit", Price = 222222.22M, LineTotalPrice = 222222.22M, }; var _order_orderproducts_order2 = new DSS5_SupplyChainFinancialsOptimisation.BO.OrderProduct { Code = "OrderProduct_Code", Quantity = 222222.22M, Description = "OrderProduct_Description", UnitValue = "OrderProduct_UnitValue", MeasurementUnit = "OrderProduct_MeasurementUnit", Price = 222222.22M, LineTotalPrice = 222222.22M, }; var _order_proofofdeliveries_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.ProofOfDelivery { PODNumber = "ProofOfDelivery_PODNumber", DateIssued = now, QualityStatus = "ProofOfDelivery_QualityStatus", QuantityStatus = "ProofOfDelivery_QuantityStatus", DeliveryStatus = "ProofOfDelivery_DeliveryStatus", PODAttachment = "ProofOfDelivery_PODAttachment", Comments = "ProofOfDelivery_Comments", }; var _order_proofofdeliveries_orders2 = new DSS5_SupplyChainFinancialsOptimisation.BO.ProofOfDelivery { PODNumber = "ProofOfDelivery_PODNumber", DateIssued = now, QualityStatus = "ProofOfDelivery_QualityStatus", QuantityStatus = "ProofOfDelivery_QuantityStatus", DeliveryStatus = "ProofOfDelivery_DeliveryStatus", PODAttachment = "ProofOfDelivery_PODAttachment", Comments = "ProofOfDelivery_Comments", }; var _order_invoices_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.Invoice { InvoiceNumber = "Invoice_InvoiceNumber", Description = "Invoice_Description", DateIssued = now, Amount = 2222222222222.22M, CustomerType = "Invoice_CustomerType", CumulativeBalance = 222222.22M, TotalPrice = 222222.22M, DescriptionTwo = "Invoice_DescriptionTwo", Attribute = "Invoice_Attribute", InvoiceAttachment = "Invoice_InvoiceAttachment", }; var _order_invoices_orders2 = new DSS5_SupplyChainFinancialsOptimisation.BO.Invoice { InvoiceNumber = "Invoice_InvoiceNumber", Description = "Invoice_Description", DateIssued = now, Amount = 2222222222222.22M, CustomerType = "Invoice_CustomerType", CumulativeBalance = 222222.22M, TotalPrice = 222222.22M, DescriptionTwo = "Invoice_DescriptionTwo", Attribute = "Invoice_Attribute", InvoiceAttachment = "Invoice_InvoiceAttachment", }; var _order_deliverynotes_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.DeliveryNote { DeliveryNoteNumber = "DeliveryNote_DeliveryNoteNumber", Description = "DeliveryNote_Description", DateIssued = now, Amount = 2222222222222.22M, TotalPrice = 222222.22M, DNoteAttachment = "DeliveryNote_DNoteAttachment", }; var _order_deliverynotes_orders2 = new DSS5_SupplyChainFinancialsOptimisation.BO.DeliveryNote { DeliveryNoteNumber = "DeliveryNote_DeliveryNoteNumber", Description = "DeliveryNote_Description", DateIssued = now, Amount = 2222222222222.22M, TotalPrice = 222222.22M, DNoteAttachment = "DeliveryNote_DNoteAttachment", }; var _order_orderstatus_order = new DSS5_SupplyChainFinancialsOptimisation.BO.OrderStatus { OrderdDateOccured = now, Status = "OrderStatus_Status", PaymentStatus = true, InitialOrdered = true, FinalOrdered = true, }; var _order_finalacceptancecertificate_order = new DSS5_SupplyChainFinancialsOptimisation.BO.FinalAcceptanceCertificate { Certificate = "FinalAcceptanceCertificate_Certificate", }; var _order_creditnotes_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.CreditNote { CreditNoteNumber = "CreditNote_CreditNoteNumber", Description = "CreditNote_Description", DateIssued = now, Amount = 2222222222.22222M, TotalPrice = 2222222222.22222M, CreditNoteDocument = "CreditNote_CreditNoteDocument", CNoteAttachment = "CreditNote_CNoteAttachment", }; var _order_creditnotes_orders2 = new DSS5_SupplyChainFinancialsOptimisation.BO.CreditNote { CreditNoteNumber = "CreditNote_CreditNoteNumber", Description = "CreditNote_Description", DateIssued = now, Amount = 2222222222.22222M, TotalPrice = 2222222222.22222M, CreditNoteDocument = "CreditNote_CreditNoteDocument", CNoteAttachment = "CreditNote_CNoteAttachment", }; var _order_orderpayment_order = new DSS5_SupplyChainFinancialsOptimisation.BO.OrderPayment { PaymentAmount = 2222222222.22222M, DateIssued = now, }; var _order_orderpayment_order2 = new DSS5_SupplyChainFinancialsOptimisation.BO.OrderPayment { PaymentAmount = 2222222222.22222M, DateIssued = now, }; var _order_letterofcredits_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.LetterOfCredit { ValueOfLoC = 222222.22M, IssuingBank = "LetterOfCredit_IssuingBank", Detail = "LetterOfCredit_Detail", UploadOfScan = "LetterOfCredit_UploadOfScan", Calculated = 222222.22M, DateOfValidity = now, DateOfExpiry = now, }; var _order_letterofcredits_orders2 = new DSS5_SupplyChainFinancialsOptimisation.BO.LetterOfCredit { ValueOfLoC = 222222.22M, IssuingBank = "LetterOfCredit_IssuingBank", Detail = "LetterOfCredit_Detail", UploadOfScan = "LetterOfCredit_UploadOfScan", Calculated = 222222.22M, DateOfValidity = now, DateOfExpiry = now, }; var _order_billoflandings_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.BillOfLanding { LandingPlace = "BillOfLanding_LandingPlace", LandingDate = now, DeliveryPlace = "BillOfLanding_DeliveryPlace", DeliveryDate = now, DOCNumber = 5961, ReceivingPartyId = 7650, IsBuyerReceiving = true, }; var _order_billoflandings_orders2 = new DSS5_SupplyChainFinancialsOptimisation.BO.BillOfLanding { LandingPlace = "BillOfLanding_LandingPlace", LandingDate = now, DeliveryPlace = "BillOfLanding_DeliveryPlace", DeliveryDate = now, DOCNumber = 8301, ReceivingPartyId = 2374, IsBuyerReceiving = true, }; var _order_intermediaries_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary { OtherDescription = "Intermediary_OtherDescription", Company = "Intermediary_Company", EMail = "Intermediary_EMail", GUID = "Intermediary_GUID", }; var _order_intermediaries_orders2 = new DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary { OtherDescription = "Intermediary_OtherDescription", Company = "Intermediary_Company", EMail = "Intermediary_EMail", GUID = "Intermediary_GUID", }; var _transaction_transaction_orders = new DSS5_SupplyChainFinancialsOptimisation.BO.Transaction { TransactionDateOccured = now, TransactionValue = 2222222222.22222M, FundedAmount = 2222222222.22222M, ToBePaidAmount = 2222222222.22222M, InvoicedDate = now, PaymentStatus = "Transaction_PaymentStatus", PaymentDate = now, RestPaymentAmount = 2222222222.22222M, PaidByBuyer = true, }; new PersistenceSpecification <DSS5_SupplyChainFinancialsOptimisation.BO.Order>(Session) .CheckProperty(p => p.OrderNumber, "Order_OrderNumber") .CheckProperty(p => p.EstimatedDateOfDelivery, now) .CheckProperty(p => p.PaymentTerms, "Order_PaymentTerms") .CheckProperty(p => p.IntermediateParty, true) .CheckProperty(p => p.IsCancelled, true) .CheckProperty(p => p.DateOfOrder, now) .CheckProperty(p => p.OrderAmount, 2222222222.22222M) .CheckProperty(p => p.TotalPrice, 2222222222.22222M) .CheckProperty(p => p.From, "Order_From") .CheckProperty(p => p.DeliveryTo, "Order_DeliveryTo") .CheckProperty(p => p.OrderAttachment, "Order_OrderAttachment") .CheckReference(p => p.CommercialAgreement, _agreement_commercialagreement_orders) .CheckBag(p => p.OrderProducts, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.OrderProduct> { _order_orderproducts_order, _order_orderproducts_order2 })) .CheckBag(p => p.ProofOfDeliveries, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.ProofOfDelivery> { _order_proofofdeliveries_orders, _order_proofofdeliveries_orders2 })) .CheckBag(p => p.Invoices, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.Invoice> { _order_invoices_orders, _order_invoices_orders2 })) .CheckBag(p => p.DeliveryNotes, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.DeliveryNote> { _order_deliverynotes_orders, _order_deliverynotes_orders2 })) .CheckReference(p => p.OrderStatus, _order_orderstatus_order) .CheckReference(p => p.FinalAcceptanceCertificate, _order_finalacceptancecertificate_order) .CheckBag(p => p.CreditNotes, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.CreditNote> { _order_creditnotes_orders, _order_creditnotes_orders2 })) .CheckBag(p => p.OrderPayment, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.OrderPayment> { _order_orderpayment_order, _order_orderpayment_order2 })) .CheckBag(p => p.LetterOfCredits, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.LetterOfCredit> { _order_letterofcredits_orders, _order_letterofcredits_orders2 })) .CheckBag(p => p.BillOfLandings, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.BillOfLanding> { _order_billoflandings_orders, _order_billoflandings_orders2 })) .CheckBag(p => p.Intermediaries, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary> { _order_intermediaries_orders, _order_intermediaries_orders2 })) .CheckReference(p => p.Transaction, _transaction_transaction_orders) .VerifyTheMappings(); }
public SignUpViewModel() { Intermediary = new DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary(); }
/*<ControllerActionImplementation:Save:1/>*/ public ActionResult ExecuteSave() { ActionResult _result = null; DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary newIntermediary = new DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary(); newIntermediary.Company = @model.Company; if (((((@model.EMail == null ? false : CSharpVerbalExpressions.VerbalExpressions.DefaultExpression.Add(CSharpVerbalExpressions.CommonRegex.Email).Test(@model.EMail))) == false))) { ClientCommand(ClientCommands.SHOW_MESSAGE, "Please give a valid e-mail address.", MessageType.Error); return(null); } newIntermediary.EMail = @model.EMail; switch (@model.ChosenIntermediaryType) { case "ThirdPartyLogisticsProvider": { newIntermediary.IntermediaryType = DSS5_SupplyChainFinancialsOptimisation.BO.IntermediaryType.ThirdPartyLogisticsProviders; break; } case "TransportationCompany": { newIntermediary.IntermediaryType = DSS5_SupplyChainFinancialsOptimisation.BO.IntermediaryType.TransportationCompanies; break; } case "CustomsAgent": { newIntermediary.IntermediaryType = DSS5_SupplyChainFinancialsOptimisation.BO.IntermediaryType.CustomsAgents; break; } case "ShippingAgent": { newIntermediary.IntermediaryType = DSS5_SupplyChainFinancialsOptimisation.BO.IntermediaryType.ShippingAgent; break; } case "Other": { newIntermediary.IntermediaryType = DSS5_SupplyChainFinancialsOptimisation.BO.IntermediaryType.Other; break; } } if ((@model.ChosenIntermediaryType == "Other")) { newIntermediary.OtherDescription = @model.Description; } try { new DSS5_SupplyChainFinancialsOptimisation.DAL.Repository().Save <DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary>(newIntermediary); } catch (System.Exception x) { zAppDev.DotNet.Framework.Utilities.DebugHelper.Log(zAppDev.DotNet.Framework.Utilities.DebugMessageType.Error, "SlideIntermidiary", DSS5_SupplyChainFinancialsOptimisation.Hubs.EventsHub.RaiseDebugMessage, x); ClientCommand(ClientCommands.SHOW_MESSAGE, "Something went wrong.", MessageType.Error); } Guid? verificationGuid = Guid.NewGuid(); string code = (verificationGuid?.ToString() ?? ""); newIntermediary.GUID = code; string link = (!string.IsNullOrEmpty(System.Configuration.ConfigurationManager.AppSettings["ServerExternalPath"]) ? System.Configuration.ConfigurationManager.AppSettings["ServerExternalPath"] : zAppDev.DotNet.Framework.Utilities.Web.GetApplicationPathUri(false)) + "/SignUp/IntermediaryRender" + "?id=" + System.Web.HttpUtility.UrlEncode(code); zAppDev.DotNet.Framework.Utilities.EMailMessage emailMessage = new zAppDev.DotNet.Framework.Utilities.EMailMessage(); emailMessage.To = new List <string> { @model.EMail }.ToList(); emailMessage.Subject = "TOME Finance Invitation"; emailMessage.Body = "You have been added to TOME Finance Platform as intermediary. Click <a href='" + link + "'>here</a> to sign up."; emailMessage.IsBodyHtml = true; zAppDev.DotNet.Framework.Utilities.Email.SendMail(emailMessage, true); _result = CloseForm(); return(_result); }
public void Transaction_persistence_test() { DateTime now = DateTime.Now; // Get datetime without milliseconds now = new DateTime(now.Ticks - (now.Ticks % TimeSpan.TicksPerSecond), now.Kind); var _agreement_commercialagreement_transactions = new DSS5_SupplyChainFinancialsOptimisation.BO.CommercialAgreement { ProductCategory = "CommercialAgreement_ProductCategory", PaymentTerms = "CommercialAgreement_PaymentTerms", }; var _transaction_orders_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.Order { OrderNumber = "Order_OrderNumber", EstimatedDateOfDelivery = now, PaymentTerms = "Order_PaymentTerms", IntermediateParty = true, IsCancelled = true, DateOfOrder = now, OrderAmount = 2222222222.22222M, TotalPrice = 2222222222.22222M, From = "Order_From", DeliveryTo = "Order_DeliveryTo", OrderAttachment = "Order_OrderAttachment", }; var _transaction_orders_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.Order { OrderNumber = "Order_OrderNumber", EstimatedDateOfDelivery = now, PaymentTerms = "Order_PaymentTerms", IntermediateParty = true, IsCancelled = true, DateOfOrder = now, OrderAmount = 2222222222.22222M, TotalPrice = 2222222222.22222M, From = "Order_From", DeliveryTo = "Order_DeliveryTo", OrderAttachment = "Order_OrderAttachment", }; var _transaction_creditnotes_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.CreditNote { CreditNoteNumber = "CreditNote_CreditNoteNumber", Description = "CreditNote_Description", DateIssued = now, Amount = 2222222222.22222M, TotalPrice = 2222222222.22222M, CreditNoteDocument = "CreditNote_CreditNoteDocument", CNoteAttachment = "CreditNote_CNoteAttachment", }; var _transaction_creditnotes_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.CreditNote { CreditNoteNumber = "CreditNote_CreditNoteNumber", Description = "CreditNote_Description", DateIssued = now, Amount = 2222222222.22222M, TotalPrice = 2222222222.22222M, CreditNoteDocument = "CreditNote_CreditNoteDocument", CNoteAttachment = "CreditNote_CNoteAttachment", }; var _transaction_deliverynotes_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.DeliveryNote { DeliveryNoteNumber = "DeliveryNote_DeliveryNoteNumber", Description = "DeliveryNote_Description", DateIssued = now, Amount = 2222222222222.22M, TotalPrice = 222222.22M, DNoteAttachment = "DeliveryNote_DNoteAttachment", }; var _transaction_deliverynotes_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.DeliveryNote { DeliveryNoteNumber = "DeliveryNote_DeliveryNoteNumber", Description = "DeliveryNote_Description", DateIssued = now, Amount = 2222222222222.22M, TotalPrice = 222222.22M, DNoteAttachment = "DeliveryNote_DNoteAttachment", }; var _transaction_invoices_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.Invoice { InvoiceNumber = "Invoice_InvoiceNumber", Description = "Invoice_Description", DateIssued = now, Amount = 2222222222222.22M, CustomerType = "Invoice_CustomerType", CumulativeBalance = 222222.22M, TotalPrice = 222222.22M, DescriptionTwo = "Invoice_DescriptionTwo", Attribute = "Invoice_Attribute", InvoiceAttachment = "Invoice_InvoiceAttachment", }; var _transaction_invoices_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.Invoice { InvoiceNumber = "Invoice_InvoiceNumber", Description = "Invoice_Description", DateIssued = now, Amount = 2222222222222.22M, CustomerType = "Invoice_CustomerType", CumulativeBalance = 222222.22M, TotalPrice = 222222.22M, DescriptionTwo = "Invoice_DescriptionTwo", Attribute = "Invoice_Attribute", InvoiceAttachment = "Invoice_InvoiceAttachment", }; var _transaction_proofofdeliveries_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.ProofOfDelivery { PODNumber = "ProofOfDelivery_PODNumber", DateIssued = now, QualityStatus = "ProofOfDelivery_QualityStatus", QuantityStatus = "ProofOfDelivery_QuantityStatus", DeliveryStatus = "ProofOfDelivery_DeliveryStatus", PODAttachment = "ProofOfDelivery_PODAttachment", Comments = "ProofOfDelivery_Comments", }; var _transaction_proofofdeliveries_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.ProofOfDelivery { PODNumber = "ProofOfDelivery_PODNumber", DateIssued = now, QualityStatus = "ProofOfDelivery_QualityStatus", QuantityStatus = "ProofOfDelivery_QuantityStatus", DeliveryStatus = "ProofOfDelivery_DeliveryStatus", PODAttachment = "ProofOfDelivery_PODAttachment", Comments = "ProofOfDelivery_Comments", }; var _transaction_transactionstatus_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.TransactionStatus { TransactionDateOccured = now, Status = "TransactionStatus_Status", Shipped = true, Invoiced = true, ShippedDateOccured = now, InvoicedDateOccured = now, Cancelled = true, InTransit = true, Picked = true, PaymentStatus = true, InitialOrderDate = now, FinalOrderDate = now, Delivered = true, Ordered = true, }; var _transaction_supplier_transactions = new DSS5_SupplyChainFinancialsOptimisation.BO.Supplier { SupplierId = 5635, Company = "Supplier_Company", CompanyLogo = "Supplier_CompanyLogo", Business = "Supplier_Business", CurrentAmount = "Supplier_CurrentAmount", AverageAmount = "Supplier_AverageAmount", PercentageOfCreditNotes = "Supplier_PercentageOfCreditNotes", PrimaryPhone = "Supplier_PrimaryPhone", SecondaryPhone = "Supplier_SecondaryPhone", Fax = "Supplier_Fax", WebSite = "Supplier_WebSite", AcceptedPolicyTerms = true, SupplierStatus = "Supplier_SupplierStatus", DomainFocus = "Supplier_DomainFocus", EvaluationResult = "Supplier_EvaluationResult", EvaluationCountResult = 7465, AnnualTurnover = true, BEnvironment = true, PTerms = true, Average = true, InvoiceValue = true, EqRatio = true, Prefix = "Supplier_Prefix", VATNumber = "Supplier_VATNumber", MarketSegment = "Supplier_MarketSegment", AdditionalComments = "Supplier_AdditionalComments", AdditionalCommentsStep2 = "Supplier_AdditionalCommentsStep2", AdditionalCommentsStep3 = "Supplier_AdditionalCommentsStep3", UserName = "******", PasswordHash = "Supplier_PasswordHash", SecurityStamp = "Supplier_SecurityStamp", EmailConfirmed = true, LockoutEnabled = true, PhoneNumberConfirmed = true, TwoFactorEnabled = true, AccessFailedCount = 2744, Name = "Supplier_Name", Email = "Supplier_Email", PhoneNumber = "Supplier_PhoneNumber", LockoutEndDate = now, }; var _transaction_importedbuyer_transactions = new DSS5_SupplyChainFinancialsOptimisation.BO.ImportedBuyer { Code = "ImportedBuyer_Code", VATNumber = "ImportedBuyer_VATNumber", Company = "ImportedBuyer_Company", AddressOne = "ImportedBuyer_AddressOne", AddressTwo = "ImportedBuyer_AddressTwo", Phone = "ImportedBuyer_Phone", }; var _transaction_letterofcredits_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.LetterOfCredit { ValueOfLoC = 222222.22M, IssuingBank = "LetterOfCredit_IssuingBank", Detail = "LetterOfCredit_Detail", UploadOfScan = "LetterOfCredit_UploadOfScan", Calculated = 222222.22M, DateOfValidity = now, DateOfExpiry = now, }; var _transaction_letterofcredits_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.LetterOfCredit { ValueOfLoC = 222222.22M, IssuingBank = "LetterOfCredit_IssuingBank", Detail = "LetterOfCredit_Detail", UploadOfScan = "LetterOfCredit_UploadOfScan", Calculated = 222222.22M, DateOfValidity = now, DateOfExpiry = now, }; var _transaction_intermediaries_transactions = new DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary { OtherDescription = "Intermediary_OtherDescription", Company = "Intermediary_Company", EMail = "Intermediary_EMail", GUID = "Intermediary_GUID", }; var _transaction_intermediaries_transactions2 = new DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary { OtherDescription = "Intermediary_OtherDescription", Company = "Intermediary_Company", EMail = "Intermediary_EMail", GUID = "Intermediary_GUID", }; var _transaction_partialproofofdeliveries_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.PartialProofOfDelivery { PODNumber = "PartialProofOfDelivery_PODNumber", DateIssued = now, QualityStatus = "PartialProofOfDelivery_QualityStatus", QuantityStatus = "PartialProofOfDelivery_QuantityStatus", DeliveryStatus = "PartialProofOfDelivery_DeliveryStatus", PODAttachment = "PartialProofOfDelivery_PODAttachment", Comments = "PartialProofOfDelivery_Comments", }; var _transaction_partialproofofdeliveries_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.PartialProofOfDelivery { PODNumber = "PartialProofOfDelivery_PODNumber", DateIssued = now, QualityStatus = "PartialProofOfDelivery_QualityStatus", QuantityStatus = "PartialProofOfDelivery_QuantityStatus", DeliveryStatus = "PartialProofOfDelivery_DeliveryStatus", PODAttachment = "PartialProofOfDelivery_PODAttachment", Comments = "PartialProofOfDelivery_Comments", }; var _transaction_customsclearingdocumentations_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.CustomsClearingDocumentation { CustomsClearingDate = now, ExportingCountry = "CustomsClearingDocumentation_ExportingCountry", ImportingCountry = "CustomsClearingDocumentation_ImportingCountry", BuyerName = "CustomsClearingDocumentation_BuyerName", }; var _transaction_customsclearingdocumentations_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.CustomsClearingDocumentation { CustomsClearingDate = now, ExportingCountry = "CustomsClearingDocumentation_ExportingCountry", ImportingCountry = "CustomsClearingDocumentation_ImportingCountry", BuyerName = "CustomsClearingDocumentation_BuyerName", }; var _transaction_billoflandings_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.BillOfLanding { LandingPlace = "BillOfLanding_LandingPlace", LandingDate = now, DeliveryPlace = "BillOfLanding_DeliveryPlace", DeliveryDate = now, DOCNumber = 5377, ReceivingPartyId = 8383, IsBuyerReceiving = true, }; var _transaction_billoflandings_transaction2 = new DSS5_SupplyChainFinancialsOptimisation.BO.BillOfLanding { LandingPlace = "BillOfLanding_LandingPlace", LandingDate = now, DeliveryPlace = "BillOfLanding_DeliveryPlace", DeliveryDate = now, DOCNumber = 1637, ReceivingPartyId = 8022, IsBuyerReceiving = true, }; var _transaction_transactionoverview_transaction = new DSS5_SupplyChainFinancialsOptimisation.BO.TransactionOverview { DeliveryDate = now, OrderQuantity = 2222222222.22222M, OrderDate = now, InvoiceId = 7059, InvoiceDate = now, FundedRate = 2222222222.22222M, InterestRate = 2222222222.22222M, TotalValue = 2222222222.22222M, FundingValue = 2222222222.22222M, PaymentId = 4011, PayementDate = now, CreditNoteNumber = "TransactionOverview_CreditNoteNumber", }; new PersistenceSpecification <DSS5_SupplyChainFinancialsOptimisation.BO.Transaction>(Session) .CheckProperty(p => p.TransactionDateOccured, now) .CheckProperty(p => p.ToBePaidAmount, 2222222222.22222M) .CheckProperty(p => p.InvoicedDate, now) .CheckProperty(p => p.PaymentStatus, "Transaction_PaymentStatus") .CheckProperty(p => p.PaymentDate, now) .CheckProperty(p => p.RestPaymentAmount, 2222222222.22222M) .CheckProperty(p => p.PaidByBuyer, true) .CheckReference(p => p.CommercialAgreement, _agreement_commercialagreement_transactions) .CheckBag(p => p.Orders, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.Order> { _transaction_orders_transaction, _transaction_orders_transaction2 })) .CheckBag(p => p.CreditNotes, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.CreditNote> { _transaction_creditnotes_transaction, _transaction_creditnotes_transaction2 })) .CheckBag(p => p.DeliveryNotes, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.DeliveryNote> { _transaction_deliverynotes_transaction, _transaction_deliverynotes_transaction2 })) .CheckBag(p => p.Invoices, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.Invoice> { _transaction_invoices_transaction, _transaction_invoices_transaction2 })) .CheckBag(p => p.ProofOfDeliveries, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.ProofOfDelivery> { _transaction_proofofdeliveries_transaction, _transaction_proofofdeliveries_transaction2 })) .CheckReference(p => p.TransactionStatus, _transaction_transactionstatus_transaction) .CheckReference(p => p.Supplier, _transaction_supplier_transactions) .CheckReference(p => p.ImportedBuyer, _transaction_importedbuyer_transactions) .CheckBag(p => p.LetterOfCredits, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.LetterOfCredit> { _transaction_letterofcredits_transaction, _transaction_letterofcredits_transaction2 })) .CheckBag(p => p.Intermediaries, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.Intermediary> { _transaction_intermediaries_transactions, _transaction_intermediaries_transactions2 })) .CheckBag(p => p.PartialProofOfDeliveries, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.PartialProofOfDelivery> { _transaction_partialproofofdeliveries_transaction, _transaction_partialproofofdeliveries_transaction2 })) .CheckBag(p => p.CustomsClearingDocumentations, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.CustomsClearingDocumentation> { _transaction_customsclearingdocumentations_transaction, _transaction_customsclearingdocumentations_transaction2 })) .CheckBag(p => p.BillOfLandings, (new List <DSS5_SupplyChainFinancialsOptimisation.BO.BillOfLanding> { _transaction_billoflandings_transaction, _transaction_billoflandings_transaction2 })) .CheckReference(p => p.TransactionOverview, _transaction_transactionoverview_transaction) .VerifyTheMappings(); }