示例#1
0
        public ActionResult Detail(int id)
        {
            int countReview = db.Tbl_Tasks.Where(r => r.TaskId == id && r.TaskName == "Review").Count();

            if (countReview == 0)
            {
                return(HttpNotFound());
            }
            int      TaskFor   = 0;
            int      TaskMaker = 0;
            int      userId    = Convert.ToInt32(Session["loginuserid"]);
            Tbl_Task task      = db.Tbl_Tasks.Where(r => r.TaskId == id && r.ActionDesc == "Submit").FirstOrDefault();

            TaskFor   = task.TaskFor;
            TaskMaker = task.TaskMaker;
            if (!(userId == TaskFor || userId == TaskMaker))
            {
                return(HttpNotFound());
            }
            var ReviewList = db.Trx_Perform_Reviews.Include(r => r.Mst_Perform_Detail).Include(r => r.Mst_Perform_Detail.Mst_Perform).Where(r => r.TaskId == id).OrderBy(r => r.Mst_Perform_Detail.PerformId);
            int ReviewFor  = db.Trx_Perform_Reviews.Where(r => r.TaskId == id).FirstOrDefault().ReviewFor;
            int ReviewBy   = db.Trx_Perform_Reviews.Where(r => r.TaskId == id).FirstOrDefault().ReviewBy;

            ViewBag.CekApprove = false;
            bool cekApprove = db.Tbl_Tasks.Where(r => r.TaskId == id && r.ActionDesc == "Approve" && r.IsAction == true).Any();

            if (cekApprove)
            {
                ViewBag.CekApprove = cekApprove;
            }

            ViewBag.nameReviewFor = db.Mst_Users.Where(r => r.UserId == ReviewFor).SingleOrDefault().FullName;
            ViewBag.nameReviewBy  = db.Mst_Users.Where(r => r.UserId == ReviewBy).SingleOrDefault().FullName;
            return(View(ReviewList));
        }
示例#2
0
        public ActionResult Detail(string submit, int id, string komentar)
        {
            //int id = Convert.ToInt32(stringId);
            Tbl_Task TaskSubmit = new Tbl_Task();

            TaskSubmit                 = db.Tbl_Tasks.Where(r => r.TaskId == id && r.ActionDesc == "Submit" && r.IsAction == false).FirstOrDefault();
            TaskSubmit.IsAction        = true;
            db.Entry(TaskSubmit).State = EntityState.Modified;
            db.SaveChanges();

            string action = "";

            if (submit == "Approve")
            {
                action = "Approve";
            }
            else if (submit == "Revise")
            {
                action = "Revise";
            }

            SaveComments(id, TaskSubmit.TaskFor, komentar, action);
            makeTaskApproveRevise(submit, TaskSubmit, komentar);

            return(RedirectToAction("Index", "Task"));
        }
示例#3
0
 public ActionResult Create(Tbl_Task task)
 {
     if (ModelState.IsValid)
     {
         using (var databaseContext = new TODOListDBEntities())
         {
             try
             {
                 if (Session["UserInfo"] != null)
                 {
                     loginUser = (Tbl_User)Session["UserInfo"];
                 }
                 task.UserId       = loginUser.Id;
                 task.CreatedDate  = DateTime.Now;
                 task.ModifiedDate = DateTime.Now;
                 databaseContext.Tbl_Task.Add(task);
                 databaseContext.SaveChanges();
             }
             catch (DbEntityValidationException e)
             {
                 ViewBag.Message = "All fields are compulsory";
                 return(View("Create"));
             }
         }
         ViewBag.Message = "Task Added";
         return(View("Create"));
     }
     else
     {
         return(View());
     }
 }
示例#4
0
        private void saveTaskSubmit(int tId, int tMaker, int reviewFor, string periode, DateTime date)
        {
            Tbl_Task Tbl_Task = new Tbl_Task();

            Tbl_Task.TaskId   = tId;
            Tbl_Task.TaskName = "Review";
            int tFor = (db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.Mst_Role.RoleName == "Management").SingleOrDefault()).UserId;

            Tbl_Task.TaskFor = tFor;
            string nameTaskFor = db.Mst_Users.Where(r => r.UserId == tFor).SingleOrDefault().FullName;

            Tbl_Task.TaskMaker = tMaker;
            string nameTaskMaker = db.Mst_Users.Where(r => r.UserId == tMaker).SingleOrDefault().FullName;
            string nameReviewFor = db.Mst_Users.Where(r => r.UserId == reviewFor).SingleOrDefault().FullName;
            string dateString    = date.ToShortDateString();

            Tbl_Task.Description = nameTaskMaker + " has submitted a performance review for " + nameReviewFor + " on " + dateString;
            Tbl_Task.IsAction    = false;
            Tbl_Task.ActionDesc  = "Submit";
            Tbl_Task.Periode     = periode;
            Tbl_Task.SubmitDate  = date;

            Tbl_Task taskReject  = new Tbl_Task();
            int      countReject = db.Tbl_Tasks.Where(r => r.TaskId == tId && r.ActionDesc == "Revise" && r.IsAction == false).Count();

            if (countReject != 0)
            {
                taskReject          = db.Tbl_Tasks.Where(r => r.TaskId == tId && r.ActionDesc == "Revise" && r.IsAction == false).FirstOrDefault();
                taskReject.IsAction = true;
            }

            db.Tbl_Tasks.Add(Tbl_Task);
            db.SaveChanges();
        }
示例#5
0
 //GET: EditToDo
 public ActionResult Edit(int id)
 {
     using (var dataContext = new TODOListDBEntities())
     {
         Tbl_Task editTask = dataContext.Tbl_Task.Where(query => query.Id == id).FirstOrDefault();
         return(View(editTask));
     }
 }
示例#6
0
 //POST: DeleteToDo
 public ActionResult Delete(int id)
 {
     using (var dataContext = new TODOListDBEntities())
     {
         Tbl_Task _Task = dataContext.Tbl_Task.Where(query => query.Id == id).FirstOrDefault();
         dataContext.Tbl_Task.Remove(_Task);
         dataContext.SaveChanges();
         return(RedirectToAction("ToDo"));
     }
 }
示例#7
0
 public ActionResult Edit(Tbl_Task task)
 {
     using (var dataContext = new TODOListDBEntities())
     {
         Tbl_Task editTask = dataContext.Tbl_Task.Where(query => query.Id == task.Id).FirstOrDefault();
         editTask.Id                       = task.Id;
         editTask.TaskName                 = task.TaskName;
         editTask.Description              = task.Description;
         editTask.IsCompleted              = task.IsCompleted;
         editTask.ModifiedDate             = DateTime.Now;
         dataContext.Entry(editTask).State = System.Data.Entity.EntityState.Modified;
         dataContext.SaveChanges();
     }
     ViewBag.Message = "Task Updated";
     return(View());
 }
示例#8
0
        private void makeTaskApproveRevise(string result, Tbl_Task task, string komentar)
        {
            Tbl_Task newTask = new Tbl_Task();

            newTask.TaskId     = task.TaskId;
            newTask.TaskFor    = task.TaskMaker;
            newTask.TaskMaker  = task.TaskFor;
            newTask.TaskName   = task.TaskName;
            newTask.Periode    = task.Periode;
            newTask.SubmitDate = task.SubmitDate;
            //newTask.Description = task.Description;

            int    ReviewFor      = db.Trx_Perform_Reviews.Where(r => r.TaskId == task.TaskId).FirstOrDefault().ReviewFor;
            string nameReviewFor  = db.Mst_Users.Find(ReviewFor).FullName;
            string emailFor       = db.Mst_Users.Find(task.TaskMaker).Email;
            string managementName = db.Mst_Users.Find(newTask.TaskMaker).FullName;
            string PMOName        = db.Mst_Users.Find(newTask.TaskFor).FullName;
            string subjek         = "";
            string deskripsi      = "";

            if (result == "Approve")
            {
                deskripsi = "Hi, " + PMOName + "." + "<br>" + managementName + " has approved your performance review for " + nameReviewFor
                            + "<br><br>" + "Comments :" + komentar + "<br><br>" + "Regards,<br>e-PRMS Admin";
                newTask.ActionDesc  = "Approve";
                newTask.IsAction    = true;
                subjek              = managementName + " Has Approved Your Performance Review";
                newTask.Description = subjek;
            }
            else if (result == "Revise")
            {
                deskripsi = "Hi, " + PMOName + "." + "<br>" + managementName + " need revision from your performance review for " + nameReviewFor
                            + "<br><br>" + "Comments :" + komentar + "<br><br>" + "<a href='http://localhost:53400/Mst_Performance_Review/Edit/" + newTask.TaskId + "'>Click here to take action</a>"
                            + "<br><br>" + "Regards,<br>e-PRMS Admin";
                newTask.ActionDesc  = "Revise";
                newTask.IsAction    = false;
                subjek              = managementName + " " + "Need Revision from Your Performance Review";
                newTask.Description = subjek;
            }

            db.Tbl_Tasks.Add(newTask);
            db.SaveChanges();

            SendEmail email = new SendEmail();

            email.Send(emailFor, subjek, deskripsi);
        }
示例#9
0
        public ActionResult commplan(FormCollection form)
        {
            //var task = db.Tbl_Tasks.Max(ax => ax.TaskId)+1;
            int      usrid    = Convert.ToInt32(Session["loginuserid"]);
            var      data     = db.Mst_Users.Include(rl => rl.Mst_Role).Where(ui => ui.UserId == usrid).Single();
            var      tsfo     = db.Mst_Users.Where(us => us.UserId == data.DirectReportId).Single();
            string   penerima = tsfo.Email;
            Tbl_Task tsk      = new Tbl_Task();

            string ActionDesc;

            int    kondisi = db.Tbl_Tasks.Count();
            string periode = form["periode"];

            tsk.Periode = periode;

            tsk.TaskName = "Commitment Plan";
            int reportid = Convert.ToInt32(data.DirectReportId);

            tsk.TaskFor   = reportid;
            tsk.TaskMaker = data.UserId;


            int cek = Convert.ToInt32(form["check"]);

            if (cek == 1)
            {
                ActionDesc      = "Save";
                tsk.Description = data.FullName + " has saved Commitment Plan for Periode " + periode;
                tsk.IsAction    = false;
            }
            else
            {
                ActionDesc      = "Submit";
                tsk.Description = data.FullName + " has submitted Commitment Plan for Periode " + periode;
                tsk.IsAction    = false;
            }
            tsk.ActionDesc = ActionDesc;
            if (kondisi == null || kondisi == 0)
            {
                tskawal = 1;
            }
            else
            {
                tskawal = db.Tbl_Tasks.Max(ax => ax.TaskId) + 1;
            }
            tsk.TaskId     = tskawal;
            tsk.SubmitDate = DateTime.Now.Date;
            string linknya   = "http://localhost:53400/Task/TrxCommPlan/" + tsk.TaskId;
            string deskripsi = "hi, " + tsfo.FullName + "<br>" + tsk.Description + "<a href=" + linknya + "><br>Click Here to Review</a><br><br><p>Regards,</p><p>e-PRMS Admin</p>";
            //return Json(tsk, JsonRequestBehavior.AllowGet);
            SendEmail email = new SendEmail();

            email.Send(penerima, tsk.Description, deskripsi);
            db.Tbl_Tasks.Add(tsk);
            db.SaveChanges();
            //DateTime submitDate = DateTime.Now.Date;
            int i = 0;

            for (i = 0; i <= form.Count; i++)
            {
                string hitung = i.ToString();
                if (form["detail_" + hitung] != null)
                {
                    string[]           detail   = form["detail_" + hitung].Split(char.Parse(","));
                    string[]           results  = form["resultan_" + hitung].Split(char.Parse(","));
                    string[]           complaid = form["complainid_" + hitung].Split(char.Parse(","));
                    HttpPostedFileBase file     = Request.Files["file_" + hitung];
                    string             a        = UploadFiles(file);
                    string             dtku     = detail[0];
                    string             hasil    = results[0];
                    string             com      = complaid[0];
                    Trx_Comm_Plan      trx      = new Trx_Comm_Plan();
                    trx.TaskId          = tskawal;
                    trx.CommPlanid      = Convert.ToInt16(com);
                    trx.DescriptionPlan = dtku;
                    trx.IsAchievable    = hasil;
                    trx.SubmitBy        = usrid;
                    trx.Periode         = periode;
                    trx.File            = a;
                    //trx.SubmitDate = submitDate;
                    db.Trx_Comm_Plans.Add(trx);
                    db.SaveChanges();
                }
            }

            return(RedirectToAction("Index", "Task"));
            //return Json(form, JsonRequestBehavior.AllowGet);
        }
示例#10
0
        public ActionResult TrxCommPlanEdit(FormCollection form, int id)
        {
            int    usrid      = Convert.ToInt32(Session["loginuserid"]);
            var    data       = db.Mst_Users.Where(ui => ui.UserId == usrid).Single();
            var    task       = db.Trx_Comm_Plans.Where(ts => ts.TaskId == id).First();
            int    taskid     = task.TaskId;
            var    atasan     = db.Mst_Users.Where(us => us.UserId == data.DirectReportId).FirstOrDefault();
            string penerima   = atasan.Email;
            string cekperiode = CekPeriode.CheckPeriode();
            //string periode = form["periode"] + " " + DateTime.Now.Year;

            Tbl_Task tsk = new Tbl_Task();

            int reportid = Convert.ToInt32(data.DirectReportId);

            tsk.TaskFor     = reportid;
            tsk.TaskMaker   = data.UserId;
            tsk.TaskName    = "Commitment Plan";
            tsk.Description = data.FullName + " has submitted Commitment Plan for Periode " + cekperiode;
            tsk.Periode     = cekperiode;
            int kondisi = db.Tbl_Tasks.Count();

            tsk.ActionDesc = "Submit";
            tsk.TaskId     = taskid;
            int cektgl = db.Tbl_Tasks.Where(ts => ts.TaskId == id && ts.Periode == cekperiode && ts.ActionDesc == "Submit" && ts.TaskName == "Commitment Plan").Count();

            if (cektgl != 0)
            {
                var cektanggalsubmit = db.Tbl_Tasks.Where(ts => ts.TaskId == id && ts.Periode == cekperiode && ts.ActionDesc == "Submit" && ts.TaskName == "Commitment Plan").FirstOrDefault();
                tsk.SubmitDate = cektanggalsubmit.SubmitDate;
            }
            else
            {
                tsk.SubmitDate = DateTime.Now;
            }


            db.Tbl_Tasks.Add(tsk);
            db.SaveChanges();
            int hit = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Revise" && ts.IsAction == false).Count();

            if (hit != 0)
            {
                var rm = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Revise" && ts.IsAction == false).First();
                rm.IsAction = true;
                db.SaveChanges();
            }
            int ceksave = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Save" && ts.IsAction == false).Count();

            if (ceksave != 0)
            {
                var rm = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Save" && ts.IsAction == false).First();
                rm.IsAction = true;
                db.SaveChanges();
            }

            string linknya   = "http://localhost:53400/Task/TrxCommPlan/" + tsk.TaskId;
            string deskripsi = "Hi, " + atasan.FullName + "<br><br>" + tsk.Description + "<a href=" + linknya + "><br><br>Click Here to Review</a><br><br><p>Regards,</p><p>e-PRMS Admin</p>";
            //return Json(tsk, JsonRequestBehavior.AllowGet);
            SendEmail email = new SendEmail();

            email.Send(penerima, tsk.Description, deskripsi);


            var trxc = db.Trx_Comm_Plans.Where(tr => tr.TaskId == taskid);

            db.Trx_Comm_Plans.RemoveRange(trxc);
            int i = 0;

            while (true)
            {
                string hitung = i.ToString();
                if (form["detail_" + hitung] == null)
                {
                    break;
                }
                string[]           detail   = form["detail_" + hitung].Split(char.Parse(","));
                string[]           results  = form["resultan_" + hitung].Split(char.Parse(","));
                string[]           complaid = form["complainid_" + hitung].Split(char.Parse(","));
                HttpPostedFileBase file     = Request.Files["file_" + hitung];
                if (file == null)
                {
                    filed = form["files_" + hitung].Split(char.Parse(","));
                    files = filed[0];
                }
                string        a     = UploadFiles(file);
                string        dtku  = detail[0];
                string        hasil = results[0];
                string        com   = complaid[0];
                Trx_Comm_Plan trx   = new Trx_Comm_Plan();
                trx.TaskId          = taskid;
                trx.CommPlanid      = Convert.ToInt16(com);
                trx.DescriptionPlan = dtku;
                trx.IsAchievable    = hasil;
                trx.SubmitBy        = usrid;
                trx.Periode         = cekperiode;
                if (file != null)
                {
                    trx.File = a;
                }
                else
                {
                    trx.File = files;
                }
                db.Trx_Comm_Plans.Add(trx);
                db.SaveChanges();

                i++;
            }

            return(RedirectToAction("Index", "Task"));
            //return Json(tsk, JsonRequestBehavior.AllowGet);
        }
示例#11
0
        public ActionResult TrxCommPlan(FormCollection form, int id)
        {
            int      usrid      = Convert.ToInt32(Session["loginuserid"]);
            var      data       = db.Mst_Users.Where(ui => ui.UserId == usrid).Single();
            var      task       = db.Trx_Comm_Plans.Include(us => us.Mst_User).Include(rl => rl.Mst_User.Mst_Role).Where(tt => tt.TaskId == id).FirstOrDefault();
            string   periodecek = CekPeriode.CheckPeriode();
            var      submit     = db.Tbl_Tasks.Where(ts => ts.TaskId == id && ts.ActionDesc == "Submit" && ts.Periode == periodecek).FirstOrDefault();
            DateTime submitDate = submit.SubmitDate.Date;
            string   penerima   = task.Mst_User.Email;
            int      taskid     = task.TaskId;
            string   nama       = task.Mst_User.FullName;
            int      userid     = task.Mst_User.UserId;
            var      tsfo       = db.Mst_Users.Where(us => us.UserId == task.Mst_User.DirectReportId).Single();
            string   atasan     = tsfo.Email;
            var      act        = db.Tbl_Tasks.Where(ts => ts.TaskId == task.TaskId).OrderByDescending(asx => asx.Id).First();

            ViewBag.ActionDesc = act.ActionDesc;
            var      management   = db.Mst_Users.Include(rl => rl.Mst_Role).Where(ll => ll.Mst_Role.RoleName == "Management").First();
            int      managementid = management.UserId;
            Tbl_Task tsk          = new Tbl_Task();

            tsk.SubmitDate = submitDate;
            int    kondisi = db.Tbl_Tasks.Count();
            string level   = Session["level"].ToString();
            //string periode = form["periode"] + " " + DateTime.Now.Year;
            string      periode  = CekPeriode.CheckPeriode();
            int         aksi     = Convert.ToInt32(form["check"]);
            string      komentar = form["komentar"];
            Tbl_Comment comment  = new Tbl_Comment();
            var         date     = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Submit").FirstOrDefault();

            tsk.SubmitDate = date.SubmitDate;
            int apprev = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Submit" && ts.Periode == periode && ts.IsAction == false || ts.TaskId == taskid && ts.ActionDesc == "Revise" && ts.Periode == periode && ts.IsAction == false || ts.TaskId == taskid && ts.ActionDesc == "Approve" && ts.Periode == periode && ts.IsAction == false).Count();

            /*--------------------------------------------------------FOR USER---------------------------------------------------------------*/

            if (level == "Senior Developer" || level == "Middle Developer" || level == "Junior Developer")
            {
                tsk.Periode  = periode;
                tsk.TaskId   = taskid;
                tsk.TaskName = "Commitment Plan";
                int reportid = Convert.ToInt32(data.DirectReportId);
                tsk.TaskFor     = reportid;
                tsk.TaskMaker   = data.UserId;
                tsk.ActionDesc  = "Submit";
                tsk.Description = data.FullName + " has submitted Commitment Plan for Periode " + periode;
                string linknya   = "http://localhost:53400/Task/TrxCommPlan/" + tsk.TaskId;
                string deskripsi = "Hi, " + tsfo.FullName + "<br><br>" + tsk.Description + "<a href=" + linknya + "><br><br>Click Here to Review</a><br><p>Regards</p><p>e-PRMS Admin</p>";
                var    app       = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Save").FirstOrDefault();
                kirim.Send(atasan, tsk.Description, deskripsi);
                app.IsAction = true;
                db.Tbl_Tasks.Add(tsk);
                db.SaveChanges();
                if (apprev != 0)
                {
                    var edit = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Submit" && ts.Periode == periode && ts.IsAction == false || ts.TaskId == taskid && ts.ActionDesc == "Revise" && ts.Periode == periode && ts.IsAction == false || ts.TaskId == taskid && ts.ActionDesc == "Save" && ts.Periode == periode && ts.IsAction == false).FirstOrDefault();
                    edit.IsAction = true;
                    db.SaveChanges();
                }
            }
            /*--------------------------------------------------------FOR MANAGEMENT----------------------------------------------------------*/

            if (level == "Management")
            {
                tsk.TaskId    = taskid;
                tsk.TaskName  = "Commitment Plan";
                tsk.TaskFor   = task.Mst_User.UserId;
                tsk.TaskMaker = usrid;
                tsk.Periode   = periode;
                if (aksi == 1)
                {
                    tsk.ActionDesc  = "Complete";
                    tsk.Description = "Your commitment plan has been approved by " + data.FullName;
                    string linknya   = "http://localhost:53400/Task/TrxCommPlan/" + tsk.TaskId;
                    string deskripsi = "Hi, " + task.Mst_User.FullName + "<br><br>" + tsk.Description + "<br><br>Komentar : " + komentar + "<br>" + "<a href=" + linknya + "><br>Click Here to Review</a><br><p>Regards</p><p>e-PRMS Admin</p>";
                    tsk.IsAction = true;
                    string role = task.Mst_User.Mst_Role.RoleName;
                    if (role != "Head of PMO" && role != "Head of Delivery")
                    {
                        string subject_atasan = data.FullName + " has approved commitment plan from " + task.Mst_User.FullName + " for Periode " + periode;
                        string body_atasan    = "Hi, " + tsfo.FullName + "<br><br>" + subject_atasan + "<a href=" + linknya + "><br><br>Click Here to Review</a><br><p>Regards</p><p>e-PRMS Admin</p>";
                        kirim.Send(tsfo.Email, subject_atasan, body_atasan);
                    }

                    kirim.Send(task.Mst_User.Email, tsk.Description, deskripsi);
                }
                else
                {
                    tsk.ActionDesc  = "Revise";
                    tsk.Description = data.FullName + " ask for revision from your commitment plan for " + periodecek;
                    string linknya   = "http://localhost:53400/Task/TrxCommPlanEdit/" + tsk.TaskId;
                    string deskripsi = "Hi, " + task.Mst_User.FullName + "<br><br>" + tsk.Description + "<br><br>Komentar : " + komentar + "<br>" + "<a href=" + linknya + "><br>Click Here to Review</a><br><p>Regards</p><p>e-PRMS Admin</p>";
                    tsk.IsAction = false;
                    string role = task.Mst_User.Mst_Role.RoleName;

                    if (role != "Head of PMO" && role != "Head of Delivery")
                    {
                        string subject_atasan = data.FullName + " ask for Revision from Commitment Plan of " + task.Mst_User.FullName + " for Periode " + periode;
                        string body_atasan    = "Hi, " + tsfo.FullName + "<br><br>" + subject_atasan + "<a href=" + linknya + "><br><br>Click Here to Review</a><br><p>Regards</p><p>e-PRMS Admin</p>";
                        kirim.Send(tsfo.Email, subject_atasan, body_atasan);
                    }
                    kirim.Send(task.Mst_User.Email, tsk.Description, deskripsi);
                }

                if (apprev != 0)
                {
                    var edit = db.Tbl_Tasks.OrderByDescending(ts => ts.Id).Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Approve" || ts.ActionDesc == "Submit" && ts.Periode == periode && ts.IsAction == false).FirstOrDefault();
                    edit.IsAction = true;
                    db.SaveChanges();
                }

                db.Tbl_Tasks.Add(tsk);
                db.SaveChanges();
            }
            if (level == "PMO" || level == "Team Leader")
            {
                /*--------------------------------------------------------FOR PMO/TEAM LEAD--------------------------------------------------------*/

                tsk.TaskId    = taskid;
                tsk.TaskName  = "Commitment Plan";
                tsk.TaskMaker = usrid;
                tsk.Periode   = periode;

                if (aksi == 1)
                {
                    tsk.TaskFor    = managementid;
                    tsk.ActionDesc = "Approve";
                    string subject_user = "******" + data.FullName;
                    tsk.Description = data.FullName + " forwarded commitment plan from " + task.Mst_User.FullName + " for " + periode;
                    string linknya        = "http://localhost:53400/Task/TrxCommPlan/" + tsk.TaskId;
                    string deskripsi_user = "******" + task.Mst_User.FullName + "<br><br>" + subject_user + "<br><br>Komentar : " + komentar + "<br>" + "<a href=" + linknya + "><br>Click Here to Review</a><br><p>Regards</p><p>e-PRMS Admin</p>";
                    tsk.IsAction = false;
                    string subject_management = tsk.Description;
                    string isi_email_manager  = "Hi, " + management.FullName + "<br><br>" + subject_management + "<a href=" + linknya + "><br><br>Click Here to Review</a><br><p>Regards</p><p>e-PRMS Admin</p>";
                    kirim.Send(management.Email, subject_management, isi_email_manager);
                    kirim.Send(task.Mst_User.Email, subject_user, deskripsi_user);
                }
                else
                {
                    tsk.TaskFor     = task.Mst_User.UserId;
                    tsk.ActionDesc  = "Revise";
                    tsk.Description = data.FullName + " ask for revision from your commitment plan for " + periodecek;
                    tsk.IsAction    = false;
                    string linknya   = "http://localhost:53400/Task/TrxCommPlanEdit/" + tsk.TaskId;
                    string deskripsi = "Hi, " + task.Mst_User.FullName + "<br><br>" + tsk.Description + "<br><br>Komentar : " + komentar + "<br>" + "<a href=" + linknya + "><br>Click Here to Review</a><br><p>Regards</p><p>e-PRMS Admin</p>";
                    kirim.Send(task.Mst_User.Email, tsk.Description, deskripsi);
                }
                db.Tbl_Tasks.Add(tsk);
                db.SaveChanges();
                if (apprev != 0)
                {
                    var edit = db.Tbl_Tasks.Where(ts => ts.TaskId == taskid && ts.ActionDesc == "Submit" && ts.Periode == periode && ts.IsAction == false || ts.TaskId == taskid && ts.ActionDesc == "Revise" && ts.Periode == periode && ts.IsAction == false || ts.TaskId == taskid && ts.ActionDesc == "Save" && ts.Periode == periode && ts.IsAction == false).FirstOrDefault();
                    edit.IsAction = true;
                    db.SaveChanges();
                }
            }
            comment.TaskId       = taskid;
            comment.CommentMaker = userid;
            comment.CommentText  = komentar;
            comment.Action       = tsk.ActionDesc;
            db.Tbl_Comments.Add(comment);
            db.SaveChanges();

            return(RedirectToAction("Index", "Task"));
        }
示例#12
0
        public ActionResult Create(Request_Ticket req)
        {
            try
            {
                Request_Ticket tiket  = new Request_Ticket();
                int            hitung = db.Tbl_Tasks.Count();
                int            userid = Convert.ToInt32(Session["loginuserid"]);
                tiket.UserId      = userid;
                tiket.Reason      = req.Reason;
                tiket.Date        = DateTime.Now.Date;
                tiket.RequestType = req.RequestType;
                if (hitung != 0)
                {
                    tiket.TaskId = db.Tbl_Tasks.Max(ax => ax.TaskId) + 1;
                }
                else
                {
                    tiket.TaskId = 1;
                }

                //return Json(tiket, JsonRequestBehavior.AllowGet);
                db.Request_Tickets.Add(tiket);
                db.SaveChanges();

                var      user       = db.Mst_Users.Include(rl => rl.Mst_Role).Where(rl => rl.Mst_Role.RoleName == "Admin").FirstOrDefault();
                var      loginuser  = db.Mst_Users.Where(us => us.UserId == userid).FirstOrDefault();
                string   cekperiode = CekPeriode.CheckPeriode();
                Tbl_Task tsk        = new Tbl_Task();
                tsk.TaskId     = tiket.TaskId;
                tsk.TaskMaker  = userid;
                tsk.TaskFor    = user.UserId;
                tsk.ActionDesc = "Request";
                tsk.IsAction   = false;
                if (req.RequestType == "Commitment Plan")
                {
                    tsk.Description = loginuser.FullName + " has request Commitment Plan ticket for Periode " + cekperiode;
                    tsk.TaskName    = "Commitment Plan";
                }
                else
                {
                    tsk.Description = loginuser.FullName + " has request Performance Review ticket for Periode " + cekperiode;
                    tsk.TaskName    = "Performance Review";
                }
                tsk.SubmitDate = DateTime.Now;
                tsk.Periode    = cekperiode;
                db.Tbl_Tasks.Add(tsk);
                db.SaveChanges();

                string tujuan    = user.Email;
                string deskripsi = "Hi, " + user.FullName + "." + "<br>" + tsk.Description
                                   + "<br><br>" + "Reason :" + tiket.Reason + "<br><br>" + "<a href='http://localhost:53400/Request/Detail/" + tiket.TaskId + "'>Click here to take action</a>"
                                   + "<br><br>" + "Regards,<br>" + loginuser.FullName;
                string subjek = tsk.Description;
                send.Send(tujuan, subjek, deskripsi);

                return(RedirectToAction("Index", "Task"));
            }
            catch
            {
                return(View());
            }
        }