public ActionResult DeleteConfirmed(int id)
        {
            TeacherSalaryRecords teacherSalaryRecords = db.TeacherSalaryRecords.Find(id);

            db.TeacherSalaryRecords.Remove(teacherSalaryRecords);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        // GET: TeacherSalaryRecords/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TeacherSalaryRecords teacherSalaryRecords = db.TeacherSalaryRecords.Find(id);

            if (teacherSalaryRecords == null)
            {
                return(HttpNotFound());
            }
            return(View(teacherSalaryRecords));
        }
 public ActionResult Edit([Bind(Include = "Id,Name,FatherName,SubmissionDate,PayingAmount,OverTime,PaymentMethod,checkNo,GrossTotalAmount,Recievingstatus,Year,Remarks,TeacherId")] TeacherSalaryRecords teacherSalaryRecords)
 {
     if (ModelState.IsValid)
     {
         teacherSalaryRecords.GrossTotalAmount = teacherSalaryRecords.PayingAmount + teacherSalaryRecords.OverTime;
         int depid = (from alias in db.Teachers where alias.Id == teacherSalaryRecords.TeacherId select alias.DesignationId).FirstOrDefault();
         teacherSalaryRecords.TeacherDepartment = (from alias in db.teacherdesignationcategory where alias.Id == depid select alias.DepartmentName).FirstOrDefault();
         db.Entry(teacherSalaryRecords).State   = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.TeacherId = new SelectList(db.Teachers, "Id", "TeacherName", teacherSalaryRecords.TeacherId);
     return(View(teacherSalaryRecords));
 }
        // GET: TeacherSalaryRecords/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TeacherSalaryRecords teacherSalaryRecords = db.TeacherSalaryRecords.Find(id);

            if (teacherSalaryRecords == null)
            {
                return(HttpNotFound());
            }
            ViewBag.TeacherId = new SelectList(db.Teachers, "Id", "TeacherName", teacherSalaryRecords.TeacherId);
            return(View(teacherSalaryRecords));
        }
        // GET: TeacherSalaryRecords/Create
        public ActionResult Create()
        {
            ViewBag.TeacherId = db.Teachers.Select(c => new SelectListItem {
                Value = c.Id.ToString(), Text = c.Id.ToString()
            })
                                .ToList();
            var view = new TeacherSalaryRecords
            {
                Year           = System.DateTime.Now.Year,
                SubmissionDate = DateTime.Now.Date,
                Remarks        = " Full Salary Paid",
                PaymentMethod  = "Cash"
            };

            return(View(view));
        }
        public ActionResult PrintSalarySlip()
        {
            int id = Convert.ToInt32(TempData["salid"]);

            if (id == 0)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            TeacherSalaryRecords teachersalaryRecords = db.TeacherSalaryRecords.Find(Convert.ToInt32(id));

            if (teachersalaryRecords == null)
            {
                return(HttpNotFound());
            }

            return(View(teachersalaryRecords));
        }
        public ActionResult Create(TeacherSalaryRecords teacherSalaryRecords)
        {
            if (ModelState.IsValid)
            {
                teacherSalaryRecords.GrossTotalAmount = teacherSalaryRecords.PayingAmount + teacherSalaryRecords.OverTime;
                teacherSalaryRecords.Name             = (from alias in db.Teachers where alias.Id == teacherSalaryRecords.TeacherId select alias.TeacherName).FirstOrDefault();
                teacherSalaryRecords.FatherName       = (from alias in db.Teachers where alias.Id == teacherSalaryRecords.TeacherId select alias.FatherName).FirstOrDefault();
                teacherSalaryRecords.Recievingstatus  = "Salary Recieved";
                int depid = (from alias in db.Teachers where alias.Id == teacherSalaryRecords.TeacherId select alias.DesignationId).FirstOrDefault();
                teacherSalaryRecords.TeacherDepartment = (from alias in db.teacherdesignationcategory where alias.Id == depid select alias.DepartmentName).FirstOrDefault();
                if (teacherSalaryRecords.checkNo == null)
                {
                    teacherSalaryRecords.checkNo = "N/A";
                }
                if (teacherSalaryRecords.Remarks == null)
                {
                    teacherSalaryRecords.Remarks = "N/A";
                }
                teacherSalaryRecords.AddedOn = DateTime.UtcNow.AddHours(5);
                db.TeacherSalaryRecords.Add(teacherSalaryRecords);
                db.SaveChanges();
                db.Entry(teacherSalaryRecords).GetDatabaseValues();
                int salaryrecid = teacherSalaryRecords.Id;
                TempData["salid"] = salaryrecid;
                //here inserting expense out come transaction records
                ExpenseOutgoingRecords expensetransection = new ExpenseOutgoingRecords();
                expensetransection.RecordId          = salaryrecid;
                expensetransection.Personid          = teacherSalaryRecords.TeacherId;
                expensetransection.PersonName        = teacherSalaryRecords.Name;
                expensetransection.TransactionType   = "Teacher Salary";
                expensetransection.TransactionDate   = teacherSalaryRecords.SubmissionDate;
                expensetransection.TransactionYear   = teacherSalaryRecords.Year;
                expensetransection.TransactionAmount = teacherSalaryRecords.GrossTotalAmount;

                db.ExpenseOutgoingRecords.Add(expensetransection);
                db.SaveChanges();
                return(RedirectToAction("PrintSalarySlip"));
            }

            ViewBag.TeacherId = new SelectList(db.Teachers, "Id", "TeacherName", teacherSalaryRecords.TeacherId);
            return(View(teacherSalaryRecords));
        }