public ActionResult DeleteConfirmed(int id) { AspNetFeeChallan aspNetFeeChallan = db.AspNetFeeChallans.Find(id); db.AspNetFeeChallans.Remove(aspNetFeeChallan); db.SaveChanges(); return(RedirectToAction("Index")); }
public List <AspNetStudent_Payment> getStudentPayAbleFee(AspNetFeeChallan aspNetFeeChallan) { int challanformId = db.AspNetFeeChallans.Max(item => item.Id); List <AspNetStudent_Payment> studentsPayments = new List <AspNetStudent_Payment>(); List <AspNetUser> students = (from student in db.AspNetUsers join student_subject in db.AspNetStudent_Subject on student.Id equals student_subject.StudentID join subject in db.AspNetSubjects on student_subject.SubjectID equals subject.Id where subject.ClassID == aspNetFeeChallan.ClassID select student).Distinct().ToList(); foreach (var item in students) { AspNetStudent_Payment student_payment = new AspNetStudent_Payment(); student_payment.FeeChallanID = challanformId; student_payment.StudentID = item.Id; int?discountSum = db.AspNetStudent_Discount.Where(x => x.StudentID == item.Id).Sum(x => x.Percentage); if (discountSum == null) { discountSum = 0; } int? tuitionFee = db.AspNetClass_FeeType.Where(x => x.AspNetFeeType.TypeName == "Tuition Fee").Select(x => x.Amount).FirstOrDefault(); int? discount = tuitionFee * discountSum / 100; int payableAmount = Convert.ToInt32(tuitionFee - discount); string FeeDurationTypeName = db.AspNetDurationTypes.Where(x => x.Id == aspNetFeeChallan.DurationTypeID).Select(x => x.TypeName).FirstOrDefault(); int? totalAmount = (from class_fee in db.AspNetClass_FeeType where class_fee.ClassID == aspNetFeeChallan.ClassID select class_fee.Amount).Sum(); if (FeeDurationTypeName == "Monthly") { int others = Convert.ToInt32(totalAmount - tuitionFee); payableAmount = payableAmount + others; } else if (FeeDurationTypeName == "Quarterly") { int others = Convert.ToInt32(totalAmount - tuitionFee); payableAmount = payableAmount + others; payableAmount = payableAmount * 4; } else if (FeeDurationTypeName == "6 Months") { int others = Convert.ToInt32(totalAmount - tuitionFee); payableAmount = payableAmount + others; payableAmount = payableAmount * 6; } else if (FeeDurationTypeName == "Yearly") { int others = Convert.ToInt32(totalAmount - tuitionFee); payableAmount = payableAmount + others; payableAmount = payableAmount * 12; } student_payment.PaymentAmount = payableAmount; studentsPayments.Add(student_payment); } return(studentsPayments); }
// GET: AspNetFeeChallan/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AspNetFeeChallan aspNetFeeChallan = db.AspNetFeeChallans.Find(id); if (aspNetFeeChallan == null) { return(HttpNotFound()); } return(View(aspNetFeeChallan)); }
// GET: AspNetFeeChallan/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AspNetFeeChallan aspNetFeeChallan = db.AspNetFeeChallans.Find(id); if (aspNetFeeChallan == null) { return(HttpNotFound()); } ViewBag.ClassID = new SelectList(db.AspNetClasses, "Id", "ClassName", aspNetFeeChallan.ClassID); ViewBag.DurationTypeID = new SelectList(db.AspNetDurationTypes, "Id", "TypeName", aspNetFeeChallan.DurationTypeID); return(View(aspNetFeeChallan)); }
public ActionResult Edit([Bind(Include = "Id,ClassID,DueDate,DurationTypeID,TotalAmount,StartDate,EndDate")] AspNetFeeChallan aspNetFeeChallan) { if (ModelState.IsValid) { db.Entry(aspNetFeeChallan).State = EntityState.Modified; db.SaveChanges(); var student_payments = (from studentpayment in db.AspNetStudent_Payment where studentpayment.FeeChallanID == aspNetFeeChallan.Id select studentpayment).ToList(); var studentspayments = getStudentPayAbleFee(aspNetFeeChallan); int x = 0; foreach (var item in student_payments) { AspNetStudent_Payment studentpayment = (from student_payment in db.AspNetStudent_Payment where student_payment.Id == item.Id select student_payment).SingleOrDefault(); studentpayment.FeeChallanID = item.FeeChallanID; studentpayment.Id = item.Id; if (item.PaymentDate == null) { studentpayment.PaymentAmount = studentspayments[x].PaymentAmount; } else { studentpayment.PaymentAmount = studentspayments[x].PaymentAmount - item.PaymentAmount; if (studentpayment.PaymentAmount < 0) { studentpayment.PaymentAmount = studentpayment.PaymentAmount * (-1); } studentpayment.PaymentDate = null; } studentpayment.StudentID = item.StudentID; x++; db.SaveChanges(); } return(RedirectToAction("Index")); } ViewBag.ClassID = new SelectList(db.AspNetClasses, "Id", "ClassName", aspNetFeeChallan.ClassID); ViewBag.DurationTypeID = new SelectList(db.AspNetDurationTypes, "Id", "TypeName", aspNetFeeChallan.DurationTypeID); return(View(aspNetFeeChallan)); }
public ActionResult Create([Bind(Include = "Id,ClassID,DueDate,DurationTypeID,TotalAmount,StartDate,EndDate")] AspNetFeeChallan aspNetFeeChallan) { if (ModelState.IsValid) { db.AspNetFeeChallans.Add(aspNetFeeChallan); db.SaveChanges(); var studenstPayments = getStudentPayAbleFee(aspNetFeeChallan); foreach (var item in studenstPayments) { db.AspNetStudent_Payment.Add(item); db.SaveChanges(); } return(RedirectToAction("Index")); } ViewBag.ClassID = new SelectList(db.AspNetClasses, "Id", "ClassName", aspNetFeeChallan.ClassID); ViewBag.DurationTypeID = new SelectList(db.AspNetDurationTypes, "Id", "TypeName", aspNetFeeChallan.DurationTypeID); return(View(aspNetFeeChallan)); }