public ActionResult DropOutEdit([Bind(Include = "FormID,Class,MethodPayment,DropOutDate,Reason")] DropOutForm dropOutForm, Form form,
                                 FormCollection collection)
 {
     if (ModelState.IsValid)
     {
         form              = db.Forms.Find(dropOutForm.FormID);
         form.FormDetails  = "Drop Out: " + dropOutForm.Reason;
         form.Type         = "Drop Out";
         form.Date         = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("SE Asia Standard Time"));
         form.CurrentDesk  = "Academic-Staff";
         form.Flow         = "Academic-Staff,";
         form.SemesterName = Helper.Help.GetCurrentSemester();
         if (dropOutForm.Reason.Equals("Other"))
         {
             dropOutForm.Reason = "Other: " + collection["displayFor"];
         }
         db.Entry(dropOutForm).State = EntityState.Modified;
         db.Entry(form).State        = EntityState.Modified;
         db.SaveChanges();
         if (DAL.UserInfo.Role.Equals("Student"))
         {
             return(RedirectToAction("Index", "Student"));
         }
         else if (DAL.UserInfo.Role.Contains("Staff"))
         {
             return(RedirectToAction("Index", "Staff"));
         }
         else
         {
             return(RedirectToAction("Index", "Home"));
         }
     }
     ViewBag.FormID = new SelectList(db.Forms, "ID", "Type", dropOutForm.FormID);
     return(View(dropOutForm));
 }
        public ActionResult DropOutCreate([Bind(Include = "Class,MethodPayment,DropOutDate,Reason")] DropOutForm dropOutForm, Form form,
                                          FormCollection collection)
        {
            if (ModelState.IsValid)
            {
                //Form form = new Form();
                form.Type         = "Drop Out";
                form.Date         = TimeZoneInfo.ConvertTime(DateTime.Now, TimeZoneInfo.FindSystemTimeZoneById("SE Asia Standard Time"));
                form.CurrentDesk  = "Academic-Staff";
                form.Flow         = "Academic-Staff,";
                form.SemesterName = Helper.Help.GetCurrentSemester();
                if (dropOutForm.Reason.Equals("Other"))
                {
                    dropOutForm.Reason = "Other: " + collection["displayFor"];
                }
                ArrayList UserDetails = DAL.Users.GetUser();
                form.StudentRollNo = Users.GetStudentRollNo(UserDetails[0].ToString(), UserDetails[1].ToString());
                form.StudentEmail  = UserDetails[2].ToString();
                form.StudentName   = UserDetails[0].ToString();
                form.FormDetails   = "Drop Out: " + dropOutForm.Reason;
                form.Status        = "New";
                db.Forms.Add(form);
                db.SaveChanges();
                dropOutForm.FormID = form.ID;
                db.DropOutForms.Add(dropOutForm);
                db.SaveChanges();
                return(RedirectToAction("Index", "Student"));
            }

            ViewBag.FormID = new SelectList(db.Forms, "ID", "Type", dropOutForm.FormID);
            return(View(dropOutForm));
        }
        // GET: DropOutForms/Edit/5
        public ActionResult DropOutEdit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DropOutForm dropOutForm = db.DropOutForms.Find(id);

            if (dropOutForm == null)
            {
                return(HttpNotFound());
            }
            ViewBag.FormID = new SelectList(db.Forms, "ID", "Type", dropOutForm.FormID);
            return(View(dropOutForm));
        }
        // GET: DropOutForms/Details/5
        public ActionResult DropOutDetails(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DropOutForm dropOutForm = db.DropOutForms.Find(id);
            Form        form        = db.Forms.Find(id);

            if (dropOutForm == null)
            {
                return(HttpNotFound());
            }
            return(View(dropOutForm));
        }
        // GET: DropOutForms/Delete/5
        public ActionResult DropOutDelete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DropOutForm dropOutForm = db.DropOutForms.Find(id);
            Form        form        = db.Forms.Find(id);

            if (!form.Status.Equals("New"))
            {
                return(RedirectToAction("Details", new { id = id }));
            }
            if (dropOutForm == null)
            {
                return(HttpNotFound());
            }
            return(View(dropOutForm));
        }
Exemple #6
0
        public ActionResult DropOutEndorsement(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            DropOutForm dropOutForm = db.DropOutForms.Find(id);

            AllFormModel allFormModels = new AllFormModel()
            {
                Form = db.Forms.Find(id),
                SuspendSubjectForm = db.SuspendSubjectForms.Find(id)
            };

            if (dropOutForm == null)
            {
                return(HttpNotFound());
            }
            ViewBag.Comment = new List <FormComment>(db.FormComments.Where(fc => fc.FormID == id));
            ViewBag.FormID  = new SelectList(db.Forms, "ID", "Type", dropOutForm.FormID);
            return(View(dropOutForm));
        }
        public ActionResult DropOutDeleteConfirmed(int id)
        {
            DropOutForm dropOutForm = db.DropOutForms.Find(id);

            db.DropOutForms.Remove(dropOutForm);
            Form form = db.Forms.Find(id);

            db.Forms.Remove(form);
            db.SaveChanges();
            if (DAL.UserInfo.Role.Equals("Student"))
            {
                return(RedirectToAction("Index", "Student"));
            }
            else if (DAL.UserInfo.Role.Contains("Staff"))
            {
                return(RedirectToAction("Index", "Staff"));
            }
            else
            {
                return(RedirectToAction("Index", "Home"));
            }
        }
Exemple #8
0
        public async Task <ActionResult> DropOutEndorsement([Bind(Include = "FormID")]
                                                            DropOutForm dropOutForm, FormCollection collection)
        {
            string      ForwardTo           = collection["ForwardTo"] + "";
            string      FormStatus          = collection["FormStatus"] + "";
            string      IsWeekBefore        = collection["IsWeekBefore"] + "";
            string      AcademicHeadEndorse = collection["AcademicHeadEndorse"] + "";
            string      formComment         = collection["formComment"] + "";
            string      TuitionFee          = collection["TuitionFee"] + "";
            string      AccountStatus       = collection["AccountStatus"] + "";
            string      LibraryStatus       = collection["LibraryStatus"] + "";
            DropOutForm dof = db.DropOutForms.Find(dropOutForm.FormID);
            Form        f   = db.Forms.Find(dropOutForm.FormID);
            FormComment fC  = new FormComment();

            if (!formComment.Equals(""))
            {
                fC.FormID  = dropOutForm.FormID;
                fC.Comment = formComment;
                fC.RoleID  = Helper.Help.GetRoleId(DAL.UserInfo.Role);
                db.FormComments.Add(fC);
            }
            if (FormStatus.Equals(""))
            {
                f.Status = "Inprogress";
            }
            else
            {
                f.Status = FormStatus;
            }
            string getCurrentDesk = "";

            if (ForwardTo != "")
            {
                getCurrentDesk = Helper.Help.GetCurrentDesk(Int32.Parse(ForwardTo));
            }
            if (getCurrentDesk.Equals("Student"))
            {
                //send mail to notify student
                string notifyMessage = "<p>Please provide more information like: </p>"
                                       + "<p>====================================</p>" + fC.Comment;
                await SendNotification(notifyMessage, DAL.UserInfo.Email, f.StudentEmail);

                //Set status To new
                f.Status      = "New";
                f.CurrentDesk = "Student";
                f.Flow        = f.Flow + "Student,";
            }
            else if (getCurrentDesk.Length > 4)
            {
                f.CurrentDesk = getCurrentDesk;
                f.Flow        = f.Flow + f.CurrentDesk + ",";
            }

            dof.AcademicHeadEndorse = AcademicHeadEndorse;
            dof.AccountStatus       = AccountStatus;
            dof.LibraryStatus       = LibraryStatus;

            if (f.Status.Equals("Approved"))
            {
                f.ApprovalDate = DateTime.Now.ToString();
            }

            db.Entry(dof).State = EntityState.Modified;
            db.SaveChanges();
            if (f.Status.Equals("Approved") || f.Status.Equals("Rejected"))
            {
                f.ApprovalDate = DateTime.Now.ToString();
                f.ApprovalBy   = DAL.UserInfo.Role;
                Helper.Notify notify = new Helper.Notify();

                string notifyMessage = "<p>Your form:       " + f.Type + "</p> "
                                       + "<p>Student Name:   " + f.StudentName + "</p>"
                                       + "<p>Student RollNo: " + f.StudentRollNo + "</p>"
                                       + "<p>Student Email:  " + f.StudentEmail + "</p>"
                                       + "<p>Student Phone:  " + f.StudentPhone + "</p>"
                                       + "<p>Semester:       " + f.SemesterName + "</p>"
                                       + "<p>Class:          " + dof.Class + "</p>"
                                       + "<p>Drop out date:  " + dof.DropOutDate + "</p>"
                                       + "<p>Payment Method: " + dof.MethodPayment + "</p>"
                                       + "<p>Drop out Reason:" + dof.Reason + "</p>"
                                       + " has been <b>" + f.Status + "</b>";
                await SendNotification(notifyMessage, DAL.UserInfo.Email, f.StudentEmail);
            }
            return(RedirectToAction("Index", "Staff"));
        }