Ejemplo n.º 1
0
        public ActionResult Badges()
        {
            var ViewModel = new ViewModelGraficoBadges();

            if (Convert.ToString(Session["UsuarioTipo"]) == "Empresa")
            {
                //Busca todos os setores e retorna um dictionary contendo os dados e retorna o select list
                ViewBag.Setores = SelectListMVC.CriaListaSelecao(GraficosDAO.Setores());
            }

            int usuarioID = 0;

            //Busca todos os usuários e retorna um dictionary contendo os dados e retorna o select list
            var Usuarios = SelectListMVC.CriaListaSelecao(GraficosDAO.Usuarios(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : 0));

            foreach (var item in Usuarios)
            {
                if (Convert.ToInt32(item.Value) == Convert.ToInt32(Session["UsuarioID"]))
                {
                    item.Selected = true;
                    usuarioID     = Convert.ToInt32(item.Value);
                    break;
                }
            }

            ViewBag.Usuarios = Usuarios;

            ViewModel.ListBadgeBasicas        = GraficosDAO.Badges("Basica", !string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : 0);
            ViewModel.ListBadgeIntermediarias = GraficosDAO.Badges("Intermediaria", !string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : 0);
            ViewModel.ListBadgeAvancadas      = GraficosDAO.Badges("Avancada", !string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : 0);

            //Busca o total de usuário da empresa, caso o usuário logado seja gestor ou funcionário busca o total de usuários do setor correspondente
            ViewModel.TotalUsuarios = GraficosDAO.TotalUsuarios(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : 0);

            foreach (var item in ViewModel.ListBadgeBasicas)
            {
                ViewModel.TotalBadgesAdquiridas = GraficosDAO.BadgeAdquiridas(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : 0, usuarioID, item.ID);

                if (ViewModel.TotalBadgesAdquiridas != 0)
                {
                    item.Adquirida = true;
                    item.Progresso = Math.Round(((double)ViewModel.TotalBadgesAdquiridas / ViewModel.TotalUsuarios) * 100, 0);
                }
                else
                {
                    if (usuarioID == 0)
                    {
                        item.Adquirida = true;
                    }
                }
            }

            foreach (var item in ViewModel.ListBadgeIntermediarias)
            {
                ViewModel.TotalBadgesAdquiridas = GraficosDAO.BadgeAdquiridas(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : 0, usuarioID, item.ID);

                if (ViewModel.TotalBadgesAdquiridas != 0)
                {
                    item.Adquirida = true;
                    item.Progresso = Math.Round(((double)ViewModel.TotalBadgesAdquiridas / ViewModel.TotalUsuarios) * 100, 0);
                }
                else
                {
                    if (usuarioID == 0)
                    {
                        item.Adquirida = true;
                    }
                }
            }

            foreach (var item in ViewModel.ListBadgeAvancadas)
            {
                ViewModel.TotalBadgesAdquiridas = GraficosDAO.BadgeAdquiridas(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : 0, usuarioID, item.ID);

                if (ViewModel.TotalBadgesAdquiridas != 0)
                {
                    item.Adquirida = true;
                    item.Progresso = Math.Round(((double)ViewModel.TotalBadgesAdquiridas / ViewModel.TotalUsuarios) * 100, 0);
                }
                else
                {
                    if (usuarioID == 0)
                    {
                        item.Adquirida = true;
                    }
                }
            }

            ViewBag.UsuarioID = usuarioID;

            return(View(ViewModel));
        }
Ejemplo n.º 2
0
        public ActionResult Badges(int FiltroSetor = 0, int FiltroUsuario = 0)
        {
            var ViewModel = new ViewModelGraficoBadges();

            ViewModel.ListBadgeBasicas        = GraficosDAO.Badges("Basica", !string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : FiltroSetor);
            ViewModel.ListBadgeIntermediarias = GraficosDAO.Badges("Intermediaria", !string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : FiltroSetor);
            ViewModel.ListBadgeAvancadas      = GraficosDAO.Badges("Avancada", !string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : FiltroSetor);

            //Busca o total de usuário da empresa, caso o usuário logado seja gestor ou funcionário busca o total de usuários do setor correspondente
            ViewModel.TotalUsuarios = GraficosDAO.TotalUsuarios(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : FiltroSetor);

            foreach (var item in ViewModel.ListBadgeBasicas)
            {
                ViewModel.TotalBadgesAdquiridas = GraficosDAO.BadgeAdquiridas(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : FiltroSetor, FiltroUsuario, item.ID);

                if (ViewModel.TotalBadgesAdquiridas != 0)
                {
                    item.Adquirida = true;
                    item.Progresso = Math.Round(((double)ViewModel.TotalBadgesAdquiridas / ViewModel.TotalUsuarios) * 100, 0);
                }
                else
                {
                    if (FiltroUsuario == 0)
                    {
                        item.Adquirida = true;
                    }
                }
            }

            foreach (var item in ViewModel.ListBadgeIntermediarias)
            {
                ViewModel.TotalBadgesAdquiridas = GraficosDAO.BadgeAdquiridas(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : FiltroSetor, FiltroUsuario, item.ID);

                if (ViewModel.TotalBadgesAdquiridas != 0)
                {
                    item.Adquirida = true;
                    item.Progresso = Math.Round(((double)ViewModel.TotalBadgesAdquiridas / ViewModel.TotalUsuarios) * 100, 0);
                }
                else
                {
                    if (FiltroUsuario == 0)
                    {
                        item.Adquirida = true;
                    }
                }
            }

            foreach (var item in ViewModel.ListBadgeAvancadas)
            {
                ViewModel.TotalBadgesAdquiridas = GraficosDAO.BadgeAdquiridas(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : FiltroSetor, FiltroUsuario, item.ID);

                if (ViewModel.TotalBadgesAdquiridas != 0)
                {
                    item.Adquirida = true;
                    item.Progresso = Math.Round(((double)ViewModel.TotalBadgesAdquiridas / ViewModel.TotalUsuarios) * 100, 0);
                }
                else
                {
                    if (FiltroUsuario == 0)
                    {
                        item.Adquirida = true;
                    }
                }
            }

            ViewBag.UsuarioID = FiltroUsuario;

            //Recarrega o dropdownlist de setores setando o valor que havia sido usado como filtro
            var Setores = SelectListMVC.CriaListaSelecao(GraficosDAO.Setores());

            foreach (var item in Setores)
            {
                if (Convert.ToInt32(item.Value) == FiltroSetor)
                {
                    item.Selected = true;
                    break;
                }
            }

            ViewBag.Setores = Setores;

            //Recarrega o dropdownlist de usuários setando o valor que havia sido usado como filtro
            var Usuarios = SelectListMVC.CriaListaSelecao(GraficosDAO.Usuarios(!string.IsNullOrEmpty(Convert.ToString(Session["SetorID"])) ? Convert.ToInt32(Session["SetorID"]) : FiltroSetor));

            foreach (var item in Usuarios)
            {
                if (Convert.ToInt32(item.Value) == FiltroUsuario)
                {
                    item.Selected = true;
                    break;
                }
            }

            ViewBag.Usuarios = Usuarios;

            return(View(ViewModel));
        }