public void FillPayments(entity.payment_schedual schedual) { this.PaymentType = entity.DebeHaber.PaymentTypes.Normal; if (schedual.payment_detail.payment_type.payment_behavior == entity.payment_type.payment_behaviours.CreditNote) { this.PaymentType = entity.DebeHaber.PaymentTypes.CreditNote; } else if (schedual.payment_detail.payment_type.payment_behavior == entity.payment_type.payment_behaviours.WithHoldingVAT) { this.PaymentType = entity.DebeHaber.PaymentTypes.VATWithHolding; } this.Parent = schedual.parent.sales_invoice != null ? schedual.parent.sales_invoice.number : (schedual.parent.purchase_invoice != null ? schedual.parent.purchase_invoice.number : ""); this.CompanyName = schedual.payment_detail.payment.contact != null ? schedual.payment_detail.payment.contact.name : ""; this.Gov_Code = schedual.payment_detail.payment.contact != null ? schedual.payment_detail.payment.contact.gov_code : ""; this.DocCode = schedual.payment_detail.payment.app_document_range != null ? schedual.payment_detail.payment.app_document_range.code : ""; this.DocExpiry = schedual.payment_detail.payment.app_document_range != null ? schedual.payment_detail.payment.app_document_range.expire_date : DateTime.Now; this.DocNumber = schedual.payment_detail.payment.number; this.Account = schedual.payment_detail.app_account != null ? schedual.payment_detail.app_account.name : ""; this.Value = schedual.payment_detail.value; this.Currency = schedual.payment_detail.app_currencyfx.app_currency.name; this.TransDate = schedual.payment_detail.payment.trans_date; this.Account = schedual.payment_detail.app_account.name; this.Value = schedual.debit; }
private void PaymentSync() { //entity.DebeHaber.Transactions Transactions = new entity.DebeHaber.Transactions(); entity.DebeHaber.Transactions PaymentError = new entity.DebeHaber.Transactions(); //Loop through foreach (entity.payment payments in db.payments.Local.Where(x => x.IsSelected && x.is_accounted == false)) { entity.DebeHaber.Transactions Transactions = new entity.DebeHaber.Transactions(); Transactions.HashIntegration = RelationshipHash; foreach (entity.payment_detail payment_detail in payments.payment_detail.ToList()) { entity.DebeHaber.Payments Payment = new entity.DebeHaber.Payments(); //Loads Data from Sales entity.payment_schedual schedual = db.payment_schedual.Where(x => x.id_payment_detail == payment_detail.id_payment_detail).FirstOrDefault(); Payment.FillPayments(schedual); Transactions.Payments.Add(Payment); } try { var Json = new JavaScriptSerializer().Serialize(Transactions); Send2API(Json); payments.is_accounted = true; } catch (Exception) { payments.is_accounted = false; } finally { db.SaveChanges(); } } }