示例#1
0
        // GET: t_usuarios/Details/5
        public ActionResult Details(string empleado)
        {
            MyDirects     ndirect = new MyDirects();
            empleadoTress add     = new empleadoTress();

            add = add.datosTress(empleado.Substring(3, empleado.Length - 3), empleado.Substring(0, 3));

            t_empleados t_empleados = db.t_empleados.Find(empleado);

            ndirect.nombre   = t_empleados.nombre;
            ndirect.empleado = t_empleados.empleado;
            ndirect.usuario  = t_empleados.t_usuarios.usuario;
            ndirect.sextra1  = t_empleados.t_usuarios.email;
            ndirect.depto    = add.depto;
            ndirect.puesto   = add.puesto;
            try
            {
                ndirect.manager1 = t_empleados.t_empleados21.nombre;
            }
            catch
            {
                ndirect.manager1 = "";
            }

            ViewBag.details = ndirect;

            return(View());
        }
示例#2
0
        public ActionResult DirectReports()
        {
            if (!Login())
            {
                return(RedirectToAction("NoUser", "Home", null));
            }

            string empleado = Convert.ToString(Session["EmployeeNo"]);

            //Si el empleado que quiere ingresar no esta como supervisor y el año de los objetivos no es el actual, regresar al menu
            var t_merit = db.t_merit.Include(t => t.t_empleados).Include(t => t.t_empleados1).Where(x => x.supervisor == empleado && x.axo == System.DateTime.Now.Year).ToList();

            if (!t_merit.Any())
            {
                return(RedirectToAction("Index", "Home", null));
            }

            var t_meridet = db.t_meridet.Include(t => t.t_califica).Include(t => t.t_empleados).Include(t => t.t_jobcode).Include(t => t.t_merit).Where(x => x.supervisor == empleado && x.axo == System.DateTime.Today.Year).ToList();

            var directs = new List <MyDirects>();

            string estado = "";

            foreach (var item in t_meridet)
            {
                switch (item.estatus)
                {
                case "PE":
                    estado = "Waiting For Aproval";
                    break;

                case "AP":
                    estado = "Approved";
                    break;

                default:
                    estado = "No Merit";
                    break;
                }

                MyDirects     ndirect = new MyDirects();
                empleadoTress add     = new empleadoTress();
                add = add.datosTress(item.empleado.Substring(3, item.empleado.Length - 3), item.empleado.Substring(0, 3));
                ndirect.empleado  = item.empleado;
                ndirect.nombre    = item.nombre;
                ndirect.estatusm4 = estado;
                ndirect.axom4     = item.axo;
                ndirect.puesto    = add.puesto;
                ndirect.foto      = add.btImagen;
                ndirect.meritrec  = Convert.ToDecimal(item.sugerido_porc);
                directs.Add(ndirect);
            }


            ViewBag.Directos = directs;
            return(View());
        }
示例#3
0
        // GET: t_usuarios/Delete/5
        public ActionResult Delete(string empleado)
        {
            if (!Login())
            {
                return(RedirectToAction("NoUser", "Home", null));
            }

            t_usuarios user = db.t_usuarios.Find(Convert.ToString(Session["userAccount"]));

            if (user.rol != "ADMCO")
            {
                return(RedirectToAction("Index", "Home", null));
            }

            MyDirects     ndirect = new MyDirects();
            empleadoTress add     = new empleadoTress();

            add = add.datosTress(empleado.Substring(3, empleado.Length - 3), empleado.Substring(0, 3));

            t_empleados t_empleados = db.t_empleados.Find(empleado);

            ndirect.nombre   = t_empleados.nombre;
            ndirect.empleado = t_empleados.empleado;
            ndirect.usuario  = t_empleados.t_usuarios.usuario;
            ndirect.sextra1  = t_empleados.t_usuarios.email;
            ndirect.depto    = add.depto;
            ndirect.puesto   = add.puesto;
            try
            {
                ndirect.manager1 = t_empleados.t_empleados21.nombre;
            }
            catch
            {
                ndirect.manager1 = "";
            }

            ViewBag.details = ndirect;

            return(View());
        }
示例#4
0
        public ActionResult IndexModule4D()
        {
            if (!Login())
            {
                return(RedirectToAction("NoUser", "Home", null));
            }

            string planta = Convert.ToString(Session["Plant"]);

            var configplanta = db.t_plantas.Find(planta);

            if (Convert.ToString(Session["userAccount"]) != configplanta.direct_email)
            {
                return(RedirectToAction("Index", "Home", null));
            }

            string empleado = Convert.ToString(Session["EmployeeNo"]);

            var t_merit    = db.t_merit.Include(t => t.t_empleados).Include(t => t.t_empleados1).Where(x => x.axo == System.DateTime.Now.Year && (x.autoriza == empleado || x.supervisor == empleado)).OrderBy(x => x.supervisor).ToList();
            var t_meridet  = db.t_meridet.Include(t => t.t_califica).Include(t => t.t_empleados).Include(t => t.t_jobcode).Include(t => t.t_merit).Where(x => x.supervisor == empleado && x.axo == System.DateTime.Today.Year).OrderBy(x => x.supervisor).ToList();
            var t_meridet2 = db.t_meridet.Include(t => t.t_califica).Include(t => t.t_empleados).Include(t => t.t_jobcode).Include(t => t.t_merit).Where(x => x.axo == System.DateTime.Today.Year && x.supervisor.Substring(0, 3) == planta).OrderBy(x => x.supervisor).ToList();


            double  approve        = 0;
            decimal totalbudget    = 0;
            decimal totalspent     = 0;
            decimal totalavailable = 0;
            bool    mstatus        = true;
            string  smstatus       = "";
            string  istatus        = "";
            string  estado         = "";
            string  iconocal       = "";
            string  colorcal       = "";
            var     departments    = new List <MyDirects>();
            var     directs        = new List <MyDirects>();

            foreach (var item in t_meridet2)
            {
                if (item.estatus == "AP")
                {
                    approve++;
                }
            }

            foreach (var item in t_merit)
            {
                totalbudget = Convert.ToDecimal(totalbudget + item.budget_imp);
                totalspent  = Convert.ToDecimal(totalspent + item.budget_spen);

                switch (item.estatus)
                {
                case "PE":
                    istatus = "In Process";
                    mstatus = false;
                    break;

                case "AP":
                    istatus = "Completed";
                    mstatus = false;
                    break;

                default:
                    istatus = "Autorized";
                    break;
                }

                MyDirects     ndirect = new MyDirects();
                empleadoTress add     = new empleadoTress();
                add = add.datosTress(item.supervisor.Substring(3, item.supervisor.Length - 3), item.supervisor.Substring(0, 3));

                ndirect.empleado  = item.supervisor;
                ndirect.depto     = item.depto;
                ndirect.nombre    = item.nombre;
                ndirect.foto      = add.btImagen;
                ndirect.dextra1   = Convert.ToDecimal(item.budget_imp);
                ndirect.dextra2   = Convert.ToDecimal(item.budget_spen);
                ndirect.estatusm4 = istatus;
                ndirect.sextra1   = (Math.Round((ndirect.dextra2 / ndirect.dextra1) * 100)).ToString() + "%";
                departments.Add(ndirect);
            }

            if (mstatus)
            {
                smstatus = "Completed";
            }
            else
            {
                smstatus = "In Process";
            }

            foreach (var item in t_meridet)
            {
                switch (item.estatus)
                {
                case "PE":
                    estado = "Pending";
                    break;

                case "AP":
                    estado = "Approved";
                    break;

                default:
                    estado = "No Merit";
                    break;
                }

                switch (item.calificacion)
                {
                case "EE":
                    iconocal = "<i class='fas fa-medal'></i>";
                    colorcal = "warning-color-dark";
                    break;

                case "ME":
                    iconocal = "<i class='fas fa-thumbs-up'></i>";
                    colorcal = "success-color";
                    break;

                case "NI":
                    iconocal = "<i class='fas fa-exclamation'></i>";
                    colorcal = "warning-color";
                    break;

                case "FE":
                    iconocal = "<i class='fas fa-thumbs-down'></i>";
                    colorcal = "danger-color";
                    break;

                default:
                    iconocal = "<i class='fas fa-minus'></i>";
                    colorcal = "stylish-color";
                    break;
                }

                MyDirects     ndirect = new MyDirects();
                empleadoTress add     = new empleadoTress();
                add = add.datosTress(item.empleado.Substring(3, item.empleado.Length - 3), item.empleado.Substring(0, 3));
                ndirect.manager1         = item.supervisor;
                ndirect.empleado         = item.empleado;
                ndirect.nombre           = item.nombre;
                ndirect.estatusm4        = estado;
                ndirect.axom4            = item.axo;
                ndirect.puesto           = item.puesto;
                ndirect.foto             = add.btImagen;
                ndirect.meritrec         = Convert.ToDecimal(item.sugerido_porc);
                ndirect.iconoresult      = iconocal;
                ndirect.coloriconoresult = colorcal;
                ndirect.lump             = Convert.ToDecimal(item.lump_imp);
                directs.Add(ndirect);
            }

            totalavailable      = totalbudget - totalspent;
            ViewBag.budgetper   = t_merit.ElementAt(0).budget_porc;
            ViewBag.tbudget     = totalbudget;
            ViewBag.tspent      = totalspent;
            ViewBag.tavailable  = totalavailable;
            ViewBag.statusmerit = smstatus;

            ViewBag.ApproveCount = approve;
            string aper = Math.Round((approve / t_meridet2.Count) * 100).ToString() + "%";

            ViewBag.ApprovePer = aper;
            ViewBag.MCount     = t_meridet2.Count;

            ViewBag.percent     = Math.Round((ViewBag.tspent / ViewBag.tbudget) * 100);
            ViewBag.departments = departments;
            ViewBag.directs     = directs;


            return(View());
        }
示例#5
0
        public ActionResult IndexModule4(string empleado = "")
        {
            if (!Login())
            {
                return(RedirectToAction("NoUser", "Home", null));
            }

            if (empleado == "")
            {
                empleado = Convert.ToString(Session["EmployeeNo"]);

                var configplanta = db.t_plantas.Find(Convert.ToString(Session["Plant"]));

                if (Convert.ToString(Session["userAccount"]) == configplanta.direct_email)
                {
                    return(RedirectToAction("IndexModule4D", "t_merit", null));
                }
            }


            var t_merit = db.t_merit.Include(t => t.t_empleados).Include(t => t.t_empleados1).Where(x => x.supervisor == empleado && x.axo == System.DateTime.Now.Year).ToList();

            if (!t_merit.Any())
            {
                return(RedirectToAction("Index", "Home", null));
            }

            var t_meridet = db.t_meridet.Include(t => t.t_califica).Include(t => t.t_empleados).Include(t => t.t_jobcode).Include(t => t.t_merit).Where(x => x.supervisor == empleado && x.axo == System.DateTime.Today.Year).ToList();
            var directs   = new List <MyDirects>();

            string estado   = "";
            string iconocal = "";
            string colorcal = "";

            double approve = 0;

            foreach (var item in t_meridet)
            {
                switch (item.estatus)
                {
                case "PE":
                    estado = "Pending";
                    break;

                case "AP":
                    estado = "Approved";
                    approve++;
                    break;

                default:
                    estado = "No Merit";
                    break;
                }

                switch (item.calificacion)
                {
                case "EE":
                    iconocal = "<i class='fas fa-medal'></i>";
                    colorcal = "warning-color-dark";
                    break;

                case "ME":
                    iconocal = "<i class='fas fa-thumbs-up'></i>";
                    colorcal = "success-color";
                    break;

                case "NI":
                    iconocal = "<i class='fas fa-exclamation'></i>";
                    colorcal = "warning-color";
                    break;

                case "FE":
                    iconocal = "<i class='fas fa-thumbs-down'></i>";
                    colorcal = "danger-color";
                    break;

                default:
                    iconocal = "<i class='fas fa-minus'></i>";
                    colorcal = "stylish-color";
                    break;
                }

                MyDirects     ndirect = new MyDirects();
                empleadoTress add     = new empleadoTress();
                add = add.datosTress(item.empleado.Substring(3, item.empleado.Length - 3), item.empleado.Substring(0, 3));
                ndirect.manager1         = item.supervisor;
                ndirect.empleado         = item.empleado;
                ndirect.nombre           = item.nombre;
                ndirect.estatusm4        = estado;
                ndirect.axom4            = item.axo;
                ndirect.puesto           = item.puesto;
                ndirect.foto             = add.btImagen;
                ndirect.meritrec         = Convert.ToDecimal(item.sugerido_porc);
                ndirect.iconoresult      = iconocal;
                ndirect.coloriconoresult = colorcal;
                ndirect.lump             = Convert.ToDecimal(item.lump_imp);
                directs.Add(ndirect);
            }

            ViewBag.ApproveCount = approve;
            ViewBag.Directos     = directs;
            string aper = Math.Round((approve / directs.Count) * 100).ToString() + "%";

            ViewBag.ApprovePer = aper;

            ViewBag.merit     = t_merit.ElementAt(0);
            ViewBag.available = t_merit.ElementAt(0).budget_imp - t_merit.ElementAt(0).budget_spen;
            ViewBag.percent   = Convert.ToString(Math.Round(Convert.ToDouble((t_merit.ElementAt(0).budget_spen / t_merit.ElementAt(0).budget_imp) * 100)));

            string statusmerit = "";

            switch (t_merit.ElementAt(0).estatus)
            {
            case "PE":
                statusmerit = "In Process";
                break;

            case "AP":
                statusmerit = "Completed";
                break;

            case "AU":
                statusmerit = "Autorized";
                break;

            case "AA":
                statusmerit = "Aplied";
                break;

            default:
                statusmerit = "No Merit";
                break;
            }



            ViewBag.statusmerit = statusmerit;

            return(View());
        }
示例#6
0
        public ActionResult MeritProcess(string empleado, decimal axo, string supervisor)
        {
            if (!Login())
            {
                return(RedirectToAction("NoUser", "Home", null));
            }

            var t_merit = db.t_merit.Include(t => t.t_empleados).Include(t => t.t_empleados1).Where(x => x.supervisor == supervisor && x.axo == System.DateTime.Now.Year).ToList();

            if (!t_merit.Any())
            {
                return(RedirectToAction("Index", "Home", null));
            }


            ViewBag.spent     = t_merit.ElementAt(0).budget_spen;
            ViewBag.available = t_merit.ElementAt(0).budget_imp - t_merit.ElementAt(0).budget_spen;
            ViewBag.percent   = Convert.ToString(Math.Round((ViewBag.available / t_merit.ElementAt(0).budget_imp) * 100));

            var t_meridet = db.t_meridet.Find(supervisor, axo, empleado);

            MyDirects     ndirect = new MyDirects();
            empleadoTress add     = new empleadoTress();

            add = add.datosTress(empleado.Substring(3, empleado.Length - 3), empleado.Substring(0, 3));
            ndirect.empleado = empleado;
            ndirect.nombre   = t_meridet.nombre;
            ndirect.depto    = add.depto;
            ndirect.puesto   = add.puesto;
            ndirect.foto     = add.btImagen;
            string iconocal = "";
            string colorcal = "";

            switch (t_meridet.calificacion)
            {
            case "EE":
                iconocal = "<i class='fas fa-medal'></i>";
                colorcal = "warning-color-dark";
                break;

            case "ME":
                iconocal = "<i class='fas fa-thumbs-up'></i>";
                colorcal = "success-color";
                break;

            case "NI":
                iconocal = "<i class='fas fa-exclamation'></i>";
                colorcal = "warning-color";
                break;

            case "FE":
                iconocal = "<i class='fas fa-thumbs-down'></i>";
                colorcal = "danger-color";
                break;

            default:
                iconocal = "<i class='fas fa-minus'></i>";
                colorcal = "stylish-color";
                break;
            }

            ViewBag.colorcal = colorcal;
            ViewBag.iconocal = iconocal;

            try
            {
                ndirect.manager1 = t_meridet.t_empleados.t_empleados2.nombre;
            }
            catch
            {
                ndirect.manager1 = null;
            }
            try
            {
                ndirect.manager2 = t_meridet.t_empleados.t_empleados2.t_empleados2.nombre;
            }
            catch
            {
                ndirect.manager2 = null;
            }

            ViewBag.direct   = ndirect;
            ViewBag.merit    = t_meridet;
            ViewBag.bamount  = Math.Truncate(100 * (Convert.ToDouble((t_meridet.salario_axo * t_meridet.budget_porc) / 100))) / 100;
            ViewBag.maxmerit = ViewBag.bamount * 2;


            decimal meritg1 = Convert.ToDecimal((t_meridet.t_califica.rango_ini * t_merit.ElementAt(0).budget_porc)) / 100;
            decimal meritg2 = Convert.ToDecimal((t_meridet.t_califica.rango_fin * t_merit.ElementAt(0).budget_porc)) / 100;

            ViewBag.merithstatus = t_merit.ElementAt(0).estatus;
            ViewBag.meritg1      = meritg1;
            ViewBag.meritg2      = meritg2;
            return(View());
        }