public ActionResult Perfil(int id) { var ViewModel = new ViewModelPerfil(); ViewModel.Usuario = UsuariosDAO.Carregar(id); TarefasDAO TarefasDAO = new TarefasDAO(ConfigurationManager.ConnectionStrings["strConMain"].ConnectionString); //Busca as tarefa com status finalizada ViewModel.ListFinalizadas = TarefasDAO.ListarTop(ConfigurationManager.AppSettings["Finalizada"], 0, 5); ViewModel.TarefasMes = new List <int>(); for (int i = 1; i <= 12; i++) { ViewModel.TarefasMes.Add(TarefasDAO.QuantidadeTarefasMes(i)); } CompetenciasDAO CompetenciasDAO = new CompetenciasDAO(ConfigurationManager.ConnectionStrings["strConMain"].ConnectionString); ViewModel.ListCompetencias = CompetenciasDAO.Listar(); foreach (var item in ViewModel.ListCompetencias) { item.Pontos = CompetenciasDAO.CompetenciaPontos(item.ID); } return(View(ViewModel)); }
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)); }