Esempio n. 1
0
        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;
        }
Esempio n. 2
0
        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();
                }
            }
        }