Esempio n. 1
0
        public Guid AddPayment(PaymentTypeName model, List <PaymentTypeViewModel> ptvm, int[] noMonth)
        {
            Payment payment = new Payment();

            payment.Id              = Guid.NewGuid();
            payment.InvoiceNo       = RandomString(5);
            payment.StudentId       = model.StudentId;
            payment.GrandTotal      = model.TotalSemesterFees;
            payment.Discount        = model.Discount;
            payment.PaidAmount      = model.PaidAmount;
            payment.Due             = model.Due;
            payment.PaymentDate     = model.PaymentDate;
            payment.PaymentMethodId = model.PaymentMethodId;
            payment.SemesterId      = model.SemesterId;
            if (model.PaymentMethodId == 2)
            {
                payment.BankId    = model.BankId;
                payment.CheckNo   = model.CheckNo;
                payment.CheckDate = model.CheckDate;
            }
            else
            {
                payment.BankId    = 0;
                payment.CheckNo   = null;
                payment.CheckDate = null;
            }

            _context.Payments.Add(payment);

            var stdSemester = from std in _context.Students.ToList()
                              join smt in _context.Semesters.ToList() on std.SemesterId equals smt.Id
                              where std.Id == model.StudentId
                              select new { SemesterId = std.SemesterId };

            foreach (var item in ptvm)
            {
                if ((item.Amount > 0 && item.IsChecked == true))
                {
                    if (item.Id == 3)
                    {
                        foreach (var pMonth in noMonth)
                        {
                            PaymentDetail pd = new PaymentDetail();
                            pd.PaymentTypeID = item.Id;
                            pd.PayAmount     = item.Amount;
                            pd.PaymentsId    = payment.Id;
                            pd.PayMonth      = pMonth;
                            _context.PaymentDetails.Add(pd);
                        }
                    }
                    else
                    {
                        PaymentDetail pd = new PaymentDetail();
                        pd.PaymentTypeID = item.Id;
                        pd.PayAmount     = item.Amount;
                        pd.PaymentsId    = payment.Id;
                        _context.PaymentDetails.Add(pd);
                    }
                }
            }

            _context.SaveChanges();

            return(payment.Id);
        }
Esempio n. 2
0
 public Guid AddPayment(PaymentTypeName model, List <PaymentTypeViewModel> ptvm, int[] noMonth)
 {
     return(_iPayment.AddPayment(model, ptvm, noMonth));
 }