Beispiel #1
0
        public ActionResult Details(string id)
        {
            if (Session["UserId"] != null && Session["Role"].ToString() == "0")
            {
                using (nominaDBEntities db = new nominaDBEntities())
                {
                    var user = db.User.FirstOrDefault(u => u.Id == id);

                    if (user != null)
                    {
                        UserModel uModel = new UserModel
                        {
                            Email       = user.Email,
                            Nombre      = String.Format("{0} {1} {2}", user.Nombre, user.ApellidoP, user.ApellidoM),
                            Role        = ((userRoles)user.Role).ToString(),
                            IngresoBase = (int)user.IngresoBase,
                            DedDesayuno = (int)user.DedDesayuno,
                            DedAhorro   = (int)user.DedAhorro,
                            Status      = ((userStatus)user.Status).ToString()
                        };
                        return(View(uModel));
                    }

                    return(RedirectToAction("UserAdminModule", "User"));
                }
            }
            return(View("Login"));
        }
Beispiel #2
0
 public ActionResult Delete(string id, FormCollection collection)
 {
     try
     {
         if (Session["UserId"] != null && Session["Role"].ToString() == "0")
         {
             using (nominaDBEntities db = new nominaDBEntities())
             {
                 var dUser = db.User.FirstOrDefault(u => u.Id == id);
                 if (dUser != null)
                 {
                     db.Entry(dUser).State = EntityState.Deleted;
                     db.SaveChanges();
                     ModelState.Clear();
                     return(RedirectToAction("UserAdminModule", "User"));
                 }
                 return(HttpNotFound());
             }
         }
         return(View("Login"));
     }
     catch (Exception ex)
     {
         return(View());
     }
 }
        public ActionResult ConsultarUser(string IdNom, string IdUser)
        {
            if (Session["UserId"] != null)
            {
                using (nominaDBEntities db = new nominaDBEntities())
                {
                    //Search all nom in selected month by id
                    var nom = db.NomUser.Where(n => n.IdNom == IdNom && n.IdUser == IdUser).FirstOrDefault();
                    if (nom != null)
                    {
                        var user = db.User.Where(u => u.Id == nom.IdUser).FirstOrDefault();

                        var tPer = user.IngresoBase + nom.DedPrestamo;
                        var tDed = nom.DedGas + user.DedAhorro + user.DedDesayuno;

                        NomUserDetailsModel nModel = new NomUserDetailsModel
                        {
                            IdNom       = nom.IdNom,
                            IdUser      = nom.IdUser,
                            Nombre      = String.Format("{0} {1} {2}", user.Nombre, user.ApellidoP, user.ApellidoM),
                            DedGas      = nom.DedGas,
                            DedPrestamo = nom.DedPrestamo,
                            IngresoBase = user.IngresoBase,
                            DedAhorro   = user.DedAhorro,
                            DedDesayuno = user.DedDesayuno,
                            TotalDeduc  = tDed,
                            TotalPercep = tPer,
                            Depositado  = tPer - tDed
                        };
                        return(View(nModel));
                    }
                }
            }
            return(View("LogIn"));
        }
Beispiel #4
0
        public ActionResult LogIn(UserLogInModel user)
        {
            if (ModelState.IsValid)
            {
                using (nominaDBEntities db = new nominaDBEntities())
                {
                    Encrypt pass    = new Encrypt();
                    var     encPass = pass.ComputeSha256Hash(user.Password);

                    var db_user = db.User.FirstOrDefault(u => u.Password == encPass && u.Email == user.Email);
                    if (db_user != null)
                    {
                        Session["UserID"] = db_user.Id.ToString();
                        Session["Role"]   = db_user.Role.ToString();
                        //check if user is admin or final
                        //0 for admin, 1 for final user
                        if (db_user.Role == 0)
                        {
                            return(RedirectToAction("UserAdminModule"));
                        }
                        else
                        {
                            return(RedirectToAction("UserFinalModule", "Nomina", new { id = db_user.Id }));
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("Password", Resources.Strings.LogInError);
                    }
                }
            }
            return(View());
        }
        public ActionResult UserFinalModule(string id)
        {
            if (Session["UserId"] != null)
            {
                using (nominaDBEntities db = new nominaDBEntities())
                {
                    var user = db.User.Where(u => u.Id == id).FirstOrDefault();
                    ViewBag.Nombre = String.Format("{0} {1} {2}", user.Nombre, user.ApellidoP, user.ApellidoM);

                    var nomina = (from n in db.Nomina
                                  join nu in db.NomUser
                                  on n.Id equals nu.IdNom
                                  where nu.IdUser == id
                                  select new
                    {
                        n.Mes,
                        n.Id
                    }).ToList();

                    List <NominaModel> nModel = new List <NominaModel>();
                    foreach (var nom in nomina)
                    {
                        nModel.Add(new NominaModel
                        {
                            Mes = nom.Mes,
                            Id  = nom.Id
                        });
                    }
                    return(View(nModel));
                }
            }
            return(View("LogIn"));
        }
Beispiel #6
0
        public ActionResult Create(UserModel user)
        {
            try
            {
                if (Session["UserId"] != null && Session["Role"].ToString() == "0")
                {
                    if (ModelState.IsValid)
                    {
                        //Encrypt password
                        Encrypt pass    = new Encrypt();
                        var     encPass = pass.ComputeSha256Hash(user.Password);

                        //Get role id
                        var rId = (int)Enum.Parse(typeof(userRoles), user.Role);

                        //Get status id
                        var sId = (int)Enum.Parse(typeof(userStatus), user.Status);

                        //Generate user id
                        string uId = Guid.NewGuid().ToString();

                        // TODO: Add insert logic here
                        using (nominaDBEntities db = new nominaDBEntities())
                        {
                            db.User.Add(new User
                            {
                                Id          = uId,
                                Nombre      = user.Nombre,
                                ApellidoM   = user.ApellidoM,
                                ApellidoP   = user.ApellidoP,
                                Email       = user.Email,
                                Role        = rId,
                                Status      = sId,
                                Password    = encPass,
                                IngresoBase = (int)user.IngresoBase,
                                DedDesayuno = (int)user.DedDesayuno,
                                DedAhorro   = (int)user.DedAhorro
                            });
                            db.SaveChanges();
                        }
                        ModelState.Clear();
                        return(RedirectToAction("Details", "User", new { id = uId }));
                    }
                    ViewBag.DropDownRole   = new SelectList(Enum.GetValues(typeof(userRoles)));
                    ViewBag.DropDownStatus = new SelectList(Enum.GetValues(typeof(userStatus)));
                    return(View());
                }
                return(View("Login"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("Password", String.Format(Resources.Strings.CreateUserError, ex.InnerException.InnerException.Message));
                ViewBag.DropDownRole   = new SelectList(Enum.GetValues(typeof(userRoles)));
                ViewBag.DropDownStatus = new SelectList(Enum.GetValues(typeof(userStatus)));
                return(View());
            }
        }
Beispiel #7
0
        public ActionResult Edit(UserModel user)
        {
            try
            {
                if (Session["UserId"] != null && Session["Role"].ToString() == "0")
                {
                    ModelState.Remove("Password");
                    if (ModelState.IsValid)
                    {
                        var modifiedUsername = Session["UserId"];
                        using (nominaDBEntities db = new nominaDBEntities())
                        {
                            //Add created by user
                            var cUser = db.User.FirstOrDefault(u => u.Id == user.Id);

                            if (user.Password != null)
                            {
                                //Encrypt new password
                                Encrypt ePass = new Encrypt();
                                cUser.Password = ePass.ComputeSha256Hash(user.Password);
                            }

                            //Get role and status id
                            var rId = (int)Enum.Parse(typeof(userRoles), user.Role);
                            var sId = (int)Enum.Parse(typeof(userStatus), user.Status);

                            cUser.Role      = rId;
                            cUser.Email     = user.Email;
                            cUser.Nombre    = user.Nombre;
                            cUser.ApellidoM = user.ApellidoM;
                            cUser.ApellidoP = user.ApellidoP;

                            cUser.IngresoBase = Decimal.Parse(user.IngresoBase.ToString(), System.Globalization.NumberStyles.Currency);
                            cUser.DedAhorro   = Decimal.Parse(user.DedAhorro.ToString(), System.Globalization.NumberStyles.Currency);
                            cUser.DedDesayuno = Decimal.Parse(user.DedDesayuno.ToString(), System.Globalization.NumberStyles.Currency);

                            db.Entry(cUser).State = EntityState.Modified;
                            db.SaveChanges();
                        }
                        ModelState.Clear();
                        return(RedirectToAction("Details", "User", new { id = user.Id }));
                    }
                    ViewBag.DropDownRole   = new SelectList(Enum.GetValues(typeof(userRoles)));
                    ViewBag.DropDownStatus = new SelectList(Enum.GetValues(typeof(userStatus)));
                    return(View());
                }
                return(View("Login"));
            }
            catch (Exception ex)
            {
                ModelState.AddModelError("Password", String.Format(Resources.Strings.CreateUserError, ex.InnerException.InnerException.Message));
                ViewBag.DropDownRole   = new SelectList(Enum.GetValues(typeof(userRoles)));
                ViewBag.DropDownStatus = new SelectList(Enum.GetValues(typeof(userStatus)));
                return(View());
            }
        }
Beispiel #8
0
 public ActionResult UserAdminModule()
 {
     if (Session["UserId"] != null && Session["Role"].ToString() == "0")
     {
         using (nominaDBEntities db = new nominaDBEntities())
         {
             var users = db.User.ToList();
             List <UserModel> uModel = new List <UserModel>();
             foreach (var user in users)
             {
                 uModel.Add(new UserModel
                 {
                     Nombre = String.Format("{0} {1} {2}", user.Nombre, user.ApellidoP, user.ApellidoM),
                     Id     = user.Id
                 });
             }
             return(View(uModel));
         }
     }
     return(View("LogIn"));
 }
 // GET: Nomina
 public ActionResult List()
 {
     if (Session["UserId"] != null)
     {
         using (nominaDBEntities db = new nominaDBEntities())
         {
             var nom = db.Nomina.ToList();
             List <NominaModel> nModel = new List <NominaModel>();
             foreach (var n in nom)
             {
                 nModel.Add(new NominaModel
                 {
                     Mes = n.Mes,
                     Id  = n.Id
                 });
             }
             return(View(nModel));
         }
     }
     return(View("LogIn"));
 }
Beispiel #10
0
 public ActionResult Delete(string id)
 {
     if (Session["UserId"] != null && Session["Role"].ToString() == "0")
     {
         using (nominaDBEntities db = new nominaDBEntities())
         {
             var user = db.User.Where(u => u.Id == id).FirstOrDefault();
             if (user != null)
             {
                 ViewBag.DeleteMessage = Resources.Strings.DeleteMessage;
                 return(View(new UserModel
                 {
                     Email = user.Email,
                     Nombre = String.Format("{0} {1} {2}", user.Nombre, user.ApellidoP, user.ApellidoM),
                     Role = ((userRoles)user.Role).ToString(),
                     Status = ((userStatus)user.Status).ToString()
                 }));
             }
             return(HttpNotFound());
         }
     }
     return(View("Login"));
 }
Beispiel #11
0
        public ActionResult Edit(string id)
        {
            if (Session["UserId"] != null && Session["Role"].ToString() == "0")
            {
                //Add types
                ViewBag.DropDownRole   = new SelectList(Enum.GetValues(typeof(userRoles)));
                ViewBag.DropDownStatus = new SelectList(Enum.GetValues(typeof(userStatus)));
                using (nominaDBEntities db = new nominaDBEntities())
                {
                    var user = db.User.Where(u => u.Id == id).FirstOrDefault();
                    if (user != null)
                    {
                        //Get role id
                        var rId = ((userRoles)user.Role).ToString();

                        //Get status id
                        var sId = ((userStatus)user.Status).ToString();
                        return(View(new UserModel
                        {
                            Nombre = user.Nombre,
                            ApellidoP = user.ApellidoP,
                            ApellidoM = user.ApellidoM,
                            Email = user.Email,
                            Role = rId,
                            Status = sId,
                            IngresoBase = (int)user.IngresoBase,
                            DedDesayuno = (int)user.DedDesayuno,
                            DedAhorro = (int)user.DedAhorro,
                            Password = "",
                            Id = user.Id
                        }));
                    }
                    return(HttpNotFound());
                }
            }
            return(View("Login"));
        }
        public ActionResult NomUserList(string id)
        {
            if (Session["UserId"] != null)
            {
                using (nominaDBEntities db = new nominaDBEntities())
                {
                    var userid = Session["UserId"].ToString();
                    //Check user role
                    var user = db.User.Where(u => u.Id == userid).FirstOrDefault();
                    if (user.Role == 1)
                    {
                        //For non admin users
                        return(RedirectToAction("ConsultarUser", "Nomina", new { IdNom = id, IdUser = Session["UserId"].ToString() }));
                    }

                    //Search all nom in selected month by id
                    var nom   = db.NomUser.Where(n => n.IdNom == id).ToList();
                    var nomId = db.Nomina.Where(n => n.Id == id).FirstOrDefault();

                    ViewBag.Fecha = nomId.Mes;

                    List <NomUserViewModel> nModel = new List <NomUserViewModel>();
                    foreach (var n in nom)
                    {
                        user = db.User.Where(u => u.Id == n.IdUser).FirstOrDefault();
                        nModel.Add(new NomUserViewModel
                        {
                            IdNom  = n.IdNom,
                            IdUser = n.IdUser,
                            Nombre = String.Format("{0} {1} {2}", user.Nombre, user.ApellidoP, user.ApellidoM),
                        });
                    }
                    return(View(nModel));
                }
            }
            return(View("LogIn"));
        }