Пример #1
0
 public void ConfigCalendario(Indigo_ConfigCalendario calendario)
 {
     try
     {
         var context = new Indigo_Controle_Licenca();
         context.Indigo_ConfigCalendario.AddOrUpdate(calendario);
         context.SaveChanges();
     }
     catch (Exception) { }
 }
Пример #2
0
        public ActionResult HorasProjeto()
        {
            try
            {
                Indigo_ConfigCalendario     retorno_calendario = new Indigo_ConfigCalendario();
                List <RetornoTargetUsuario> retorno            = new List <RetornoTargetUsuario>();

                int dias_uteis = 0;

                if (DateTime.Now.Day == 1)
                {
                    dias_uteis = DiasUteis();
                }
                else
                {
                    retorno_calendario = dataInterface.BuscaCalendario().FirstOrDefault(x => x.id_qt == 1);
                    dias_uteis         = Convert.ToInt32(retorno_calendario.qt_diaUtil);
                }

                ViewBag.carga_horas = dias_uteis * 8;
                int idusuario      = Convert.ToInt32(Session["IDUSUARIO"]);
                int target_mes_seg = (dias_uteis * 8) * 3600;

                retorno = dataInterface.RetornaTarget(target_mes_seg, idusuario);

                foreach (var reg in retorno)
                {
                    ViewBag.horas_atual = reg.target_atual;
                    ViewBag.carga_horas = reg.target_total;

                    if (reg.target_atual > 0)
                    {
                        double carga_atuals = Convert.ToDouble(reg.target_atual) / Convert.ToDouble(reg.target_total);
                        carga_atuals         = carga_atuals * 100;
                        ViewBag.carga_atuals = string.Format("{0:0.00}", carga_atuals).Replace(",", ".");
                    }
                    else
                    {
                        ViewBag.carga_atuals = "0";
                    }
                }

                return(View());
            }
            catch (Exception ex)
            {
                log(ex.Message + " -- " + ex.StackTrace);
                return(View());
            }
        }
Пример #3
0
        public int DiasUteis()
        {
            UserCredential credential;

            string path = Server.MapPath(@"~/Scripts/Google/").ToString();

            using (var stream =
                       new FileStream(path + "client_secret.json", FileMode.Open, FileAccess.Read))
            {
                credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                    GoogleClientSecrets.Load(stream).Secrets,
                    Scopes,
                    "Check-in-out",
                    CancellationToken.None,
                    new FileDataStore(path, true)).Result;
            }


            // Create Google Calendar API service.
            var service = new CalendarService(new BaseClientService.Initializer()
            {
                HttpClientInitializer = credential,
                ApplicationName       = ApplicationName,
            });

            // Define parameters of request.
            EventsResource.ListRequest request = service.Events.List("en.brazilian#[email protected]");
            //request.TimeMin = DateTime.Now;
            request.ShowDeleted  = false;
            request.SingleEvents = true;
            request.MaxResults   = 100;
            request.OrderBy      = EventsResource.ListRequest.OrderByEnum.StartTime;
            request.TimeZone     = "America/Sao_Paulo";

            // List events.
            Events events = new Events();

            events = request.Execute();

            List <string> h = new List <string>();

            if (events.Items != null && events.Items.Count > 0)
            {
                foreach (var eventItem in events.Items)
                {
                    if (eventItem.Start.Date.ToString().Contains(DateTime.Now.ToString("yyyy-MM")))
                    {
                        h.Add(eventItem.Description);

                        DateTime data = Convert.ToDateTime(eventItem.Start.Date);

                        if (data.Day == 1)
                        {
                            var calendar = new Indigo_Calendario();
                            calendar.id_data = data.Day;
                            calendar.data    = Convert.ToDateTime(eventItem.Start.Date);
                            dataInterface.Calendario(calendar);
                        }
                    }
                }
            }

            int dias       = DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month);
            int dias_uteis = 0;


            dias_uteis = dias - RetornarDiasNutil(dias);

            var calendario = new Indigo_ConfigCalendario();

            calendario.id_qt          = 1;
            calendario.qt_diaUtil     = dias_uteis;
            calendario.qt_diaFeriado  = h.Count;
            calendario.qt_FimDeSemana = dias - dias_uteis;
            calendario.qt_targetTotal = (dias_uteis - h.Count()) * 8;

            dataInterface.ConfigCalendario(calendario);

            return(dias_uteis - h.Count());
        }