コード例 #1
0
ファイル: Gerenciador.cs プロジェクト: caiorrs/field-manager
        private Queue <Business.Agendamento> createCronogramaHorasSol(int horaInicial)
        {
            if (horaInicial > 24 || horaInicial < 0)
            {
                throw new Exception("hora invalida");
            }

            DateTime today = Natureza.Tempo.Instance.Now;

            Sistema_de_Previsão_do_Tempo.Previsao prev = new Sistema_de_Previsão_do_Tempo.Previsao(today);
            Queue <Business.Agendamento>          q    = new Queue <Business.Agendamento>();

            if (prev.iraChover())
            {
                for (int i = horaInicial; i < 24; i++)
                {
                    float p = 30; //como vai chover matenho a abertura em 30% para nao molhar demais a grama
                    Business.Agendamento a = new Business.Agendamento(i, p);
                    q.Enqueue(a);
                }
            }
            else
            {
                for (int i = horaInicial; i < 24; i++)
                {
                    float p;
                    //50% eh o padrao, mas entre as 14 e as 18, abro em 100 pra pegar sol%
                    if (i >= 14 && i <= 18)
                    {
                        p = 100;
                    }
                    else
                    {
                        p = 50;
                    }
                    Business.Agendamento a = new Business.Agendamento(i, p);
                    q.Enqueue(a);
                }
            }
            return(q);
        }
コード例 #2
0
        /*
         * cronograma de horas de sol. precisa saber se vai chover
         *
         */


        private Queue <Business.Agendamento> createCronogramaHorasSol()
        {
            Queue <Business.Agendamento> q = new Queue <Business.Agendamento>();

            Previsao prev = new Previsao(Natureza.Tempo.Instance.Now);

            if (prev.iraChover())
            {
                for (int i = 0; i < 24; i++)
                {
                    float p = 30;  //como vai chover matenho a abertura em 30% para nao molhar demais a grama
                    Business.Agendamento a = new Business.Agendamento(i, p);
                    q.Enqueue(a);
                }
            }
            else
            {
                for (int i = 0; i < 24; i++)
                {
                    //fake total
                    float p;
                    //50% eh o padrao, mas entre as 14 e as 18, abro em 100 pra pegar sol%
                    if (i >= 14 && i <= 18)
                    {
                        p = 100;
                    }
                    else
                    {
                        p = 50;
                    }
                    Business.Agendamento a = new Business.Agendamento(i, p);
                    q.Enqueue(a);
                }
            }
            return(q);
        }