public ActionResult Editar(int ID) { Usuario UsuarioModel = UsuariosDAO.Carregar(ID); //Se o usuário logado for gestor pega apenas o setor do usuário atual, se não pega todos setor por ser usuário do tipo empresa if (Convert.ToString(Session["UsuarioTipo"]) == "Gestor") { Dictionary <int, string> SetorGestor = new Dictionary <int, string>(); //Faz um dicionário apenas com o setor do Gestor SetorGestor.Add(Convert.ToInt32(Session["SetorID"]), Database.DBBuscaInfo("Setores", "ID", Convert.ToString(Session["SetorID"]), "Nome")); //Cria o Select List com o setor do gestor ViewBag.Setores = SelectListMVC.CriaListaSelecao(SetorGestor); } else { UsuariosDAO UsuariosDAO = new UsuariosDAO(ConfigurationManager.ConnectionStrings["strConMain"].ConnectionString); //Busca os setores e retorna um dictionary contendo os dados var Setores = SelectListMVC.CriaListaSelecao(UsuariosDAO.Setores()); foreach (var item in Setores) { if (Convert.ToInt32(item.Value) == UsuarioModel.SetorID) { item.Selected = true; break; } } ViewBag.Setores = Setores; } return(View("Editar", UsuarioModel)); }
public ActionResult Funcionario() { var ViewModel = new ViewModelDashboardFuncionario(); UsuariosDAO UsuariosDAO = new UsuariosDAO(ConfigurationManager.ConnectionStrings["strConMain"].ConnectionString); ViewModel.Usuario = UsuariosDAO.Carregar(Convert.ToInt32(Session["UsuarioID"])); TarefasDAO TarefasDAO = new TarefasDAO(ConfigurationManager.ConnectionStrings["strConMain"].ConnectionString); //Busca as tarefa com status Fazer ViewModel.ListFazer = TarefasDAO.ListarTop(ConfigurationManager.AppSettings["Fazer"], 0, 3); CompetenciasDAO CompetenciasDAO = new CompetenciasDAO(ConfigurationManager.ConnectionStrings["strConMain"].ConnectionString); ViewModel.ListCompetencias = CompetenciasDAO.Listar(); foreach (var item in ViewModel.ListCompetencias) { item.Pontos = CompetenciasDAO.CompetenciaPontos(item.ID); } //Cria model com as propriedades da agenda ViewModel.ListAgenda = new List <Agenda>(); //Busca tarefas para montar a agenda com as mesmas, mesmo que não esteja integrado com Google as tarefas aparecem no calendário ViewModel.ListAgenda = TarefasDAO.ListarTarefasAgenda(); CalendarService service = OAuthService.OAuthLogged ( Convert.ToString(Session["UsuarioID"]), ConfigurationManager.ConnectionStrings["strConMain"].ConnectionString, ConfigurationManager.AppSettings["RedirectUriAgenda"] + "/Dashboard/SincronizarAgenda", "Calendar API", new[] { CalendarService.Scope.CalendarReadonly, CalendarService.Scope.Calendar } ); if (service != null) { ViewModel.ListAgenda = ViewModel.ListAgenda == null ? new List <Agenda>() : ViewModel.ListAgenda; //Cria serviço para buscar agendas do usuário var ListaAgendas = service.CalendarList.List(); //Pega todas as agendas do usuário var Agendas = ListaAgendas.Execute(); //Para cada agenda busca todos os eventos foreach (var item in Agendas.Items) { //Define os parâmetros do request. EventsResource.ListRequest request = service.Events.List(item.Id); //request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 10000; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; //Lista de eventos. Events events = request.Execute(); //Se encontrou eventos no calendário, pega os dados if (events.Items != null && events.Items.Count > 0) { foreach (var eventItem in events.Items) { ViewModel.ListAgenda.Add(new Agenda() { Titulo = !string.IsNullOrEmpty(eventItem.Summary) ? eventItem.Summary.Replace("'", "") : "", DataInicio = Convert.ToDateTime(eventItem.Start.DateTime), DataFim = Convert.ToDateTime(eventItem.End.DateTime), Cor = "#3a87ad" }); } ViewModel.IconeRefreshCor = "green"; } } } else { ViewModel.IconeRefreshCor = "red"; } return(View(ViewModel)); }