Ejemplo n.º 1
0
        public static IEnumerable<ChequesTransactionModel> GetForeignChequesByCurrency(int currencyId, PaymentType paymentType, DateTime today)
        {
            var tomm = today.AddDays(1);

            var query = from chq in Context.Cheques
                        join pymnt in Context.Payments.Where(entity => entity.PaymentTypeId == paymentType.Id)
                            on chq.PaymentId equals pymnt.Id
                        join assoc in Context.PaymentCurrencyAssocs on pymnt.Id equals assoc.PaymentId
                        where pymnt.EntryDate >= today && pymnt.EntryDate < tomm && assoc.CurrencyId == currencyId
                        select pymnt;

            List<ChequesTransactionModel> chequesDisbursedList = new List<ChequesTransactionModel>();

            foreach (var item in query)
            {
                chequesDisbursedList.Add(new ChequesTransactionModel(item));
            }

            return chequesDisbursedList;
        }
Ejemplo n.º 2
0
        public static IEnumerable<ChequesTransactionModel> GetPhilippineCheques(PaymentType paymentType, DateTime today)
        {
            var philCurrency = Currency.GetCurrencyBySymbol("PHP").Id;
            var tomm = today.AddDays(1);
            var query = from chq in Context.Cheques
                        join pymnt in Context.Payments.Where(entity => entity.PaymentTypeId == paymentType.Id)
                            on chq.PaymentId equals pymnt.Id
                        where pymnt.EntryDate >= today && pymnt.EntryDate < tomm
                        select pymnt;

            var foreign = from chq in Context.Cheques
                          join pymnt in Context.Payments.Where(entity => entity.PaymentTypeId == paymentType.Id)
                              on chq.PaymentId equals pymnt.Id
                          join assoc in Context.PaymentCurrencyAssocs on pymnt.Id equals assoc.PaymentId
                          where pymnt.EntryDate >= today && pymnt.EntryDate < tomm && assoc.CurrencyId != philCurrency
                          select pymnt;

            var cancelledpostdatedcheques = from chq in Context.Cheques
                                            join pymnt in Context.Payments.Where(entity => entity.PaymentTypeId == paymentType.Id)
                                            on chq.PaymentId equals pymnt.Id
                                            join chqassoc in Context.ChequeApplicationAssocs on chq.Id equals chqassoc.ChequeId
                                            join las in Context.LoanApplicationStatus on chqassoc.ApplicationId equals las.ApplicationId
                                            where las.IsActive == true && (las.LoanApplicationStatusType.Id
                                            == LoanApplicationStatusType.RejectedType.Id
                                            || las.LoanApplicationStatusType.Id == LoanApplicationStatusType.CancelledType.Id)
                                            select pymnt;
            List<ChequesTransactionModel> chequesDisbursedList = new List<ChequesTransactionModel>();

            var result = query.Except(foreign);
            result = result.Except(cancelledpostdatedcheques);
            foreach (var item in result)
            {
                chequesDisbursedList.Add(new ChequesTransactionModel(item));
            }
            return chequesDisbursedList;
        }
Ejemplo n.º 3
0
        public static IEnumerable<ChequesTransactionModel> GetAllCheques(PaymentType paymentType, DateTime today)
        {
            var tomm = today.AddDays(1);
            var query = from chq in Context.Cheques
                        join pymnt in Context.Payments.Where(entity => entity.PaymentTypeId == paymentType.Id)
                            on chq.PaymentId equals pymnt.Id
                        where pymnt.EntryDate >= today && pymnt.EntryDate < tomm
                        select pymnt;

            List<ChequesTransactionModel> chequesDisbursedList = new List<ChequesTransactionModel>();

            foreach (var item in query)
            {
                chequesDisbursedList.Add(new ChequesTransactionModel(item));
            }
            return chequesDisbursedList;
        }
Ejemplo n.º 4
0
        public static Payment CreatePayment(DateTime entryDate,
                                     DateTime transactionDate,
                                     int processedToPartyRoleId, 
                                     int processedByPartyRoleId,
                                     decimal totalAmount,
                                     PaymentType paymentType,
                                     PaymentMethodType paymentMethodType,
                                     SpecificPaymentType specificPaymentType,
                                     string paymentReferenceNumber)
        {
            Payment newPayment = new Payment();
            newPayment.EntryDate = entryDate;
            newPayment.TransactionDate = transactionDate;
            newPayment.ProcessedToPartyRoleId = processedToPartyRoleId;
            newPayment.ProcessedByPartyRoleId = processedByPartyRoleId;//partytroleID of teller
            newPayment.TotalAmount = totalAmount;
            newPayment.PaymentTypeId = paymentType.Id;
            newPayment.PaymentMethodTypeId = paymentMethodType.Id;
            newPayment.SpecificPaymentTypeId = specificPaymentType.Id;
            newPayment.PaymentReferenceNumber = paymentReferenceNumber;

            return newPayment;
        }
Ejemplo n.º 5
0
        public static IEnumerable<PaymentBreakdown> GetBreakdown(int parentPaymentId, PaymentType paymenttype)
        {
            var Payments = from p in Context.Payments
                           where p.ParentPaymentId == parentPaymentId
                           && p.PaymentTypeId == paymenttype.Id
                           select p;
            if (Payments.Count() == 0)
            {
                var parentPayment = from p in Context.Payments
                                    where p.Id == parentPaymentId
                                    select new PaymentBreakdown
                                    {
                                        PaymentMethod = p.PaymentMethodType.Name,
                                        TotalAmount = p.TotalAmount,
                                        CheckNumber = "N/A",
                                        Payment = p
                                    };
                return parentPayment;
            }
            else
            {

                var cashBreakdown = from p in Payments
                                    where p.PaymentMethodTypeId == PaymentMethodType.CashType.Id
                                    select new PaymentBreakdown
                                    {
                                        PaymentMethod = p.PaymentMethodType.Name,
                                        TotalAmount = p.TotalAmount,
                                        CheckNumber = "N/A",
                                        Payment = p
                                    };
                var atmBreakdown = from p in Payments
                                   where p.PaymentMethodTypeId == PaymentMethodType.ATMType.Id
                                   select new PaymentBreakdown
                                   {
                                       PaymentMethod = p.PaymentMethodType.Name,
                                       TotalAmount = p.TotalAmount,
                                       CheckNumber = p.PaymentReferenceNumber,
                                       Payment = p
                                   };

                var checkBreakDown = from p in Payments
                                     where (p.PaymentMethodTypeId == PaymentMethodType.PayCheckType.Id
                                    || p.PaymentMethodTypeId == PaymentMethodType.PersonalCheckType.Id)
                                     select new PaymentBreakdown
                                     {
                                         PaymentMethod = p.PaymentMethodType.Name,
                                         TotalAmount = p.TotalAmount,
                                         CheckNumber = p.PaymentReferenceNumber,
                                         Payment = p
                                     };
                var breakdown = cashBreakdown.Concat(atmBreakdown).Concat(checkBreakDown);
                return breakdown;
            }
        }
Ejemplo n.º 6
0
        public static Payment RetrieveAssociatedPayment(int receiptId, PaymentType type)
        {
            var payments = from rpa in Context.ReceiptPaymentAssocs
                           join p in Context.Payments on rpa.PaymentId equals p.Id
                           where p.PaymentTypeId == type.Id && rpa.ReceiptId == receiptId
                           select p;

            return payments.First();
        }
Ejemplo n.º 7
0
        public static List<Receipt> RetrieveAssociatedReceipts(Payment payment, PaymentType type)
        {
            var receipts = from rpa in Context.ReceiptPaymentAssocs
                           join p in Context.Payments on rpa.PaymentId equals p.Id
                           where p.PaymentTypeId == type.Id && rpa.PaymentId == payment.Id
                           select rpa.Receipt;

            return receipts.ToList();
        }