Exemplo n.º 1
0
        public ActionResult Edit(int id, Mst_User mst_User)
        {
            try
            {
                // TODO: Add update logic here
                if (ModelState.IsValid)
                {
                    if (mst_User.DirectReportId != mst_User.UserId)
                    {
                        db.Entry(mst_User).State = EntityState.Modified;
                        db.SaveChanges();
                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        ViewBag.message = "Wrong Input. Direct Report is reporting to itself.";
                    }
                }

                ViewBag.RoleId         = new SelectList(db.Mst_Roles, "RoleId", "RoleName", mst_User.RoleId);
                ViewBag.RoleMapId      = new SelectList(db.Mst_RoleMaps, "RoleMapId", "RoleMapName", mst_User.RoleMapId);
                ViewBag.DirectReportId = new SelectList(db.Mst_Users, "UserId", "FullName", mst_User.DirectReportId);

                return(View(mst_User));
            }
            catch
            {
                return(View(mst_User));
            }
        }
Exemplo n.º 2
0
        public IActionResult Update(Mst_User _params)
        {
            var _r = this._context.Mst_User.SingleOrDefault(x => x.Id == _params.Id);

            if (ModelState.IsValid)
            {
                byte[] _salt    = Generate_Salt();
                string password = Generate_Password(_params.Password, _salt);
                try
                {
                    _r.Password      = password;
                    _r.User_Name     = _params.User_Name;
                    _r.Hostname      = _params.Hostname;
                    _r.Password_Salt = _salt;
                    this._context.SaveChanges();
                }
                catch
                {
                    ViewBag.error = "一意制約違反の可能性があります。";
                    var _result = this._context.Mst_User.Single(x => x.Id == _params.Id);
                    //ログインユーザ以外のパスワード等を変更できないようにする。
                    ViewBag.yourself = YourSelf_Check(_result.Login_Id);
                    return(View("EDIT", _result));
                }
            }
            else
            {
                var _result = this._context.Mst_User.Single(x => x.Id == _params.Id);
                //ログインユーザ以外のパスワード等を変更できないようにする。
                ViewBag.yourself = YourSelf_Check(_result.Login_Id);
                return(View("Edit", _result));
            }
            return(RedirectToAction("Index", "User"));
        }
Exemplo n.º 3
0
 public IActionResult Registrate(Mst_User _param)
 {
     if (ModelState.IsValid)
     {
         byte[] _salt    = Generate_Salt();
         string password = Generate_Password(_param.Password, _salt);
         try
         {
             this._context.Mst_User.Add(new Mst_User {
                 Login_Id           = _param.Login_Id,
                 User_Name          = _param.User_Name,
                 Hostname           = _param.Hostname,
                 Password           = password,
                 Password_Salt      = _salt,
                 DisconnectableFlag = true
             });
             this._context.SaveChanges();
         }
         catch
         {
             ViewBag.error = "一意制約違反の可能性があります。";
             return(View("New"));
         }
         return(RedirectToAction("Index", "User"));
     }
     else
     {
         ViewBag.error = "更新に失敗しました。";
         return(View("New"));
     }
 }
Exemplo n.º 4
0
 public ActionResult Delete(int id, Mst_User mst_User)
 {
     try
     {
         // TODO: Add delete logic here
         Mst_User mst_User2 = db.Mst_Users.Find(id);
         db.Mst_Users.Remove(mst_User2);
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     catch
     {
         return(View(mst_User));
     }
 }
Exemplo n.º 5
0
        public ActionResult Create(Mst_User mst_User)
        {
            try
            {
                // TODO: Add insert logic here
                if (ModelState.IsValid)
                {
                    db.Mst_Users.Add(mst_User);
                    db.SaveChanges();
                    return(RedirectToAction("Index"));
                }

                ViewBag.RoleId         = new SelectList(db.Mst_Roles, "RoleId", "RoleName", mst_User.RoleId);
                ViewBag.RoleMapId      = new SelectList(db.Mst_RoleMaps, "RoleMapId", "RoleMapName", mst_User.RoleMapId);
                ViewBag.DirectReportId = new SelectList(db.Mst_Users, "UserId", "FullName", mst_User.DirectReportId);

                return(View(mst_User));
            }
            catch
            {
                return(View());
            }
        }
Exemplo n.º 6
0
        public ActionResult Index(FormCollection form)
        {
            int      ReviewBy = Convert.ToInt32(Session["loginuserid"]);
            Mst_User mst_User = new Mst_User();
            string   role     = db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.UserId == ReviewBy).FirstOrDefault().Mst_Role.RoleName;

            if (role == "PMO")
            {
                ViewBag.UserId = new SelectList(db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.Mst_Role.RoleName != "Management" && r.Mst_Role.RoleName != "PMO"), "UserId", "FullName");
            }
            else if (role == "Team Leader")
            {
                ViewBag.UserId = new SelectList(db.Mst_Users.Where(r => r.DirectReportId == ReviewBy), "UserId", "FullName");
            }
            else if (role == "Head of PMO" || role == "Head of Delivery")
            {
                ViewBag.UserId = new SelectList(db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.Mst_Role.RoleName != "Management" && r.Mst_Role.RoleName != "Head of PMO" && r.Mst_Role.RoleName != "Head of Delivery"), "UserId", "FullName");
            }
            else if (role == "Management")
            {
                ViewBag.UserId = new SelectList(db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.Mst_Role.RoleName != "Management"), "UserId", "FullName");
            }

            int    ReviewFor = Convert.ToInt32(form["UserId"]);
            string Periode   = form["Periode"];
            int    TaskId    = 0;

            if (db.Tbl_Tasks.Count() == 0)
            {
                TaskId = 1;
            }
            else
            {
                TaskId = db.Tbl_Tasks.Max(r => r.TaskId) + 1;
            }

            DateTime now = DateTime.Now.Date;
            int      i   = 0;

            while (true)
            {
                string hitung = i.ToString();
                if (form["PerformDetId" + hitung] == null)
                {
                    break;
                }
                string[] PerformDetailIds   = form["PerformDetId" + hitung].Split(char.Parse(","));
                string   PerformDetailId    = PerformDetailIds[0];
                int      PerformDetailIdInt = Convert.ToInt32(PerformDetailId);
                string[] Scores             = form["ScoreSelect" + hitung].Split(char.Parse(","));
                string   Score    = Scores[0];
                int      ScoreInt = Convert.ToInt32(Score);
                string[] Notes    = form["NotesInput" + hitung].Split(char.Parse(","));
                string   Note     = Notes[0];
                //string[] Directories = form["UploadFile" + hitung].Split(char.Parse(","));
                //string Directory = Directories[0];
                string             Name = "";
                HttpPostedFileBase file = Request.Files["UploadFile" + i];
                if (file != null && file.ContentLength > 0)
                {
                    Name = saveFile(file, TaskId);
                }
                saveTrxPerformReview(PerformDetailIdInt, TaskId, ScoreInt, ReviewBy, ReviewFor, Periode, Note, Name);
                //Debug.WriteLine("file = "+file);
                i++;
            }

            saveTaskSubmit(TaskId, ReviewBy, ReviewFor, Periode, now.Date);

            string emailTujuan    = db.Mst_Users.Where(r => r.Mst_Role.RoleName == "Management").FirstOrDefault().Email;
            string managementName = db.Mst_Users.Where(r => r.Mst_Role.RoleName == "Management").FirstOrDefault().FullName;
            string ReviewByName   = db.Mst_Users.Find(ReviewBy).FullName;
            string ReviewForName  = db.Mst_Users.Find(ReviewFor).FullName;
            string deskripsi      = "Hi, " + managementName + "." + "<br><br>" + ReviewByName + " has submitted performance review for " + ReviewForName
                                    + "<br><br>" + "<a href='http://localhost:53400/Mst_Performance_Review/Detail/" + TaskId + "'>Click here to take action</a>"
                                    + "<br><br>" + "Regards,<br>e-PRMS Admin";
            string dateString = now.ToShortDateString();
            string subjek     = ReviewByName + " Submit Performance Review for " + ReviewForName + " on " + dateString;
            string id         = TaskId.ToString();

            SendEmail email = new SendEmail();

            email.Send(emailTujuan, subjek, deskripsi);

            return(View());
        }
Exemplo n.º 7
0
        // GET: Mst_Performance_Review
        public ActionResult Index()
        {
            int  userId           = Convert.ToInt32(Session["loginuserid"]);
            bool isPerfReviewOpen = Convert.ToBoolean(Session["performance"]);

            ViewBag.periode = CekPeriode.CheckPeriode();
            ViewBag.isopen  = isPerfReviewOpen;
            Mst_User mst_User = new Mst_User();
            string   role     = db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.UserId == userId).FirstOrDefault().Mst_Role.RoleName;

            if (role == "PMO")
            {
                ViewBag.UserId = new SelectList(db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.Mst_Role.RoleName != "Management" && r.Mst_Role.RoleName != "PMO" && r.Mst_Role.RoleName != "Head of PMO" && r.Mst_Role.RoleName != "Head of Delivery"), "UserId", "FullName");
            }
            else if (role == "Team Leader")
            {
                ViewBag.UserId = new SelectList(db.Mst_Users.Where(r => r.DirectReportId == userId), "UserId", "FullName");
            }
            else if (role == "Head of PMO" || role == "Head of Delivery")
            {
                ViewBag.UserId = new SelectList(db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.Mst_Role.RoleName != "Management" && r.Mst_Role.RoleName != "Head of PMO" && r.Mst_Role.RoleName != "Head of Delivery"), "UserId", "FullName");
            }
            else if (role == "Management")
            {
                ViewBag.UserId = new SelectList(db.Mst_Users.Include(r => r.Mst_Role).Where(r => r.Mst_Role.RoleName != "Management"), "UserId", "FullName");
            }

            if (Request.QueryString["UserId"] != null)
            {
                if (Request.QueryString["UserId"] != "0")
                {
                    string nama_r = "";
                    var    req    = Request.QueryString["UserId"];
                    int    id     = Convert.ToInt32(req);

                    var datasemua = db.Mst_Users.Include(r => r.Mst_Role).Include(r => r.Mst_RoleMap).Where(r => r.UserId == id).Single();
                    var data_r    = db.Mst_Users.Where(r => r.UserId == datasemua.DirectReportId).SingleOrDefault();

                    if (data_r != null)
                    {
                        nama_r = data_r.FullName.ToString();
                    }
                    else
                    {
                        nama_r = "";
                    }

                    string periode = CekPeriode.CheckPeriode();
                    bool   exist   = ExistReview(userId, id, periode);
                    Debug.WriteLine("periode = " + periode + " , exist = " + exist);
                    //string periodePotong = periode.Remove(periode.Length - 5);

                    return(Json(new { datasemua, nama_r, exist, periode }, JsonRequestBehavior.AllowGet));
                }
            }

            if (Request.QueryString["ReviewId"] != null)
            {
                if (Request.QueryString["ReviewId"] != "0")
                {
                    var req = Request.QueryString["ReviewId"];
                    int id  = Convert.ToInt32(req);

                    var data2 = db.Mst_Perform_Details.Include(r => r.Mst_Perform).Include(r => r.Mst_Perform.Mst_RoleMap).Where(r => r.Mst_Perform.Mst_RoleMap.RoleMapId == id).OrderBy(r => r.Mst_Perform.PerformId);
                    return(Json(data2, JsonRequestBehavior.AllowGet));
                }
            }

            return(View());
        }