public void CreateLienWaiver(LienWaiverGenerationKey lienWaiverGenerationKey, APPayment payment, ComplianceAttribute complianceAttribute) { generationKey = lienWaiverGenerationKey; CreateLienWaiver(payment, complianceAttribute); Cache.Update(lienWaiver); Cache.Persist(PXDBOperation.Insert); Cache.Persisted(false); }
private void SetJointLienWaiverAmount(ComplianceAttribute complianceAttribute, IReadOnlyCollection <PXResult <JointPayeePayment> > jointPayeePayments) { var jointLienWaiverAmount = GetJointLienWaiverAmount(jointPayeePayments, complianceAttribute.Value); lienWaiver.JointLienWaiverAmount = jointLienWaiverAmount == decimal.Zero ? null : jointLienWaiverAmount; }
private void SetJointPayeeVendorDependentFields(APPayment payment, ComplianceAttribute complianceAttribute) { var paymentExtension = PXCache <APPayment> .GetExtension <ApPaymentExt>(payment); lienWaiver.IsRequiredJointCheck = paymentExtension.IsJointCheck ?? false; lienWaiver.JointVendorInternalId = generationKey.JointPayeeVendorId; var jointPayeePayments = GetJointPayeePaymentsWithJointPayees(payment).ToList(); SetJointAmount(jointPayeePayments); SetJointLienWaiverAmount(complianceAttribute, jointPayeePayments); }
private void CreateLienWaiver(APPayment payment, ComplianceAttribute complianceAttribute) { lienWaiver = CreateLienWaiver(); lienWaiver.DocumentTypeValue = complianceAttribute.AttributeId; lienWaiver.Required = true; lienWaiver.IsCreatedAutomatically = true; SetProjectDependentFields(); SetCommitments(); SetVendorDependentFields(); SetTransactionDependentFields(payment, complianceAttribute); SetJointPayeeVendorDependentFields(payment, complianceAttribute); lienWaiver.ApPaymentMethodID = payment.PaymentMethodID; }
private void SetTransactionDependentFields(APPayment payment, ComplianceAttribute complianceAttribute) { var transactions = LienWaiverTransactionRetriever.GetTransactions(generationKey).ToList(); SetBillId(transactions); lienWaiver.LienWaiverAmount = GetLienWaiverAmount(transactions, complianceAttribute.Value); SetLienNoticeAmount(); SetAccountId(transactions); ComplianceDocumentRefNoteAttribute.SetComplianceDocumentReference <ComplianceDocument.apCheckId>( Cache, lienWaiver, payment.DocType, payment.RefNbr, payment.NoteID); lienWaiver.PaymentDate = payment.AdjDate; lienWaiver.ThroughDate = GetThroughDate(complianceAttribute.Value, payment, transactions); lienWaiver.SourceType = ComplianceDocumentSourceTypeAttribute.ApBill; }