public TestSubscriber(SignalDevice pub, Quadro inputQuadro)
 {
     //quadro = inputQuadro;
     quadro = inputQuadro;
     // Subscribe to the event using C# 2.0 syntax
     pub.OnTemporizedSignal += HandleCustomEvent;
 }
        public ActionResult ExpoQuadro()
        {
            ViewBag.Quadro = "Quadro Bonito!.";
            List <Quadro> quadros = new List <Quadro>();
            Quadro        quadro1 = new Quadro();

            quadro1.Autor         = "Gustavo";
            quadro1.AnoLancamento = 2019;
            quadro1.Descricao     = "Quadro de rede";

            Quadro quadro2 = new Quadro();

            quadro2.Autor         = "Bruno";
            quadro2.AnoLancamento = 2019;
            quadro2.Descricao     = "Quadro de musica";

            Quadro quadro3 = new Quadro();

            quadro3.Autor         = "Vacca";
            quadro3.AnoLancamento = 2019;
            quadro3.Descricao     = "Quadro de pizza";

            quadros.Add(quadro1);
            quadros.Add(quadro2);
            quadros.Add(quadro3);

            ViewBag.Quadros = quadros;// passando o Array pra viewbag

            return(View());
        }
        public async Task <IActionResult> Edit(int id, [Bind("Id,EscalaId,Data,EventoId,Destaque")] Quadro Quadro)
        {
            if (id != Quadro.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try{
                    _context.Update(Quadro);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException) {
                    if (!QuadroExists(Quadro.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(Quadro));
        }
        public ActionResult ExpoQuadro()
        {
            ViewBag.Quadro = "Quadro Bonito!.";
            List <Quadro> quadros = new List <Quadro>();
            Quadro        quadro1 = new Quadro();

            //quadro1.Autor
            quadro1.AnoLancamento = 2019;
            quadro1.Descricao     = "Quadro de rede";

            Quadro quadro2 = new Quadro();

            //quadro2.Autor = "Bruno";
            quadro2.AnoLancamento = 2019;
            quadro2.Descricao     = "Quadro de musica";

            Quadro quadro3 = new Quadro();

            //quadro3.Autor = "Vacca";
            quadro3.AnoLancamento = 2019;
            quadro3.Descricao     = "Quadro de pizza";

            quadros.Add(quadro1);
            quadros.Add(quadro2);
            quadros.Add(quadro3);


            List <Autor> autores = new List <Autor>();

            Autor a1 = new Autor();

            a1.Nome     = "Gustavo";
            a1.Cpf      = "000";
            a1.Aquarela = true;
            //a1.PintaAquarela(true);
            Autor a2 = new Autor();

            a2.Nome     = "Gildete";
            a2.Cpf      = "111";
            a2.Aquarela = false;
            //a2.PintaAquarela(false);
            Autor a3 = new Autor();

            a3.Nome     = "Thiago";
            a3.Cpf      = "222";
            a3.Aquarela = true;
            //a3.PintaAquarela(true);

            autores.Add(a1);
            autores.Add(a2);
            autores.Add(a3);

            quadro1.Autor = a1;
            quadro2.Autor = a2;
            quadro3.Autor = a3;

            ViewBag.Autores = autores;
            ViewBag.Quadros = quadros;// passando o Array pra viewbag
            return(View());
        }
        public async Task <IActionResult> Create([Bind("Id,EscalaId,Data,EventoId,Destaque")] Quadro Quadro)
        {
            _context.Add(Quadro);
            await _context.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Esempio n. 6
0
        public ActionResult DeleteConfirmed(int id)
        {
            Quadro quadro = db.Quadros.Find(id);

            db.Quadros.Remove(quadro);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 7
0
        public void Otimizar(FObjetivo funcao, Extremo extremo = Extremo.Minimizar)
        {
            Console.WriteLine();
            Console.WriteLine("Quantidade variaveis: {0} Quantidade restricoes: {1}", funcao.Variaveis.Count, funcao.Restricoes.Count);
            Console.WriteLine();
            funcao.Extremo = extremo;

            if (!funcao.Normalizado)
            {
                _swNormalizacao = Stopwatch.StartNew();
                funcao.normalizar();
                _quadro = new Quadro(funcao);
                _swNormalizacao.Stop();
            }

            _qtdIteracoes = 1;
            _historico.Clear();

            //mostrar quadro apos a troca
            //Console.WriteLine(_quadro.ToString());

            _statusSimplex = StatusSimplex.PrimeiraEtapa;

            _swOtimizacao    = Stopwatch.StartNew();
            _swtempoIteracao = Stopwatch.StartNew();

            while (_statusSimplex != StatusSimplex.SolucaoIlimitada &&
                   _statusSimplex != StatusSimplex.SolucaoOtima &&
                   _statusSimplex != StatusSimplex.SolucaoImpossivel)
            {
                _historico.Push(_statusSimplex);

                switch (_statusSimplex)
                {
                case StatusSimplex.PrimeiraEtapa:
                    _statusSimplex = this.AlgoritmoPrimeiraEtapa();
                    break;

                case StatusSimplex.SegundaEtapa:
                    _statusSimplex = this.AlgoritmoSegundaEtapa();
                    break;

                case StatusSimplex.AlgoritmoTroca:
                    _swtempoIteracao.Stop();
                    //if (_qtdIteracoes % 100 == 0)
                    Console.WriteLine(string.Format("Linha: {0}\tColuna: {1}\tIteracoes: {2}\tTempo: {3}s", _linhaPerm, _colunaPerm, _qtdIteracoes, _swtempoIteracao.Elapsed.TotalSeconds));
                    _swtempoIteracao = Stopwatch.StartNew();
                    _statusSimplex   = this.AlgoritmoTroca();
                    _qtdIteracoes++;
                    break;
                }
            }
            //fim otimizacao
            _swOtimizacao.Stop();

            _historico.Push(_statusSimplex);
        }
Esempio n. 8
0
 public ActionResult Edit([Bind(Include = "Id,RlGlobalFita,RlGlobalTubo,RlGlobalFiotec,RlGlobalGxpuro,RlGlobalGxgraf,RlGlobalGraxa,RlGlobalRevenda,RlPropriaFita,RlPropriaTubo,RlPropriaFiotec,RlPropriaGxpuro,RlPropriaGxgraf,RlPropriaGraxa,RlPropriaRevenda,RlTerceirosFita,RlTerceirosTubo,RlTerceirosFiotec,RlTerceirosGxpuro,RlTerceirosGxgraf,RlTerceirosGraxa,RlTerceirosRevenda,PlGlobalFita,PlGlobalTubo,PlGlobalFiotec,PlGlobalGxpuro,PlGlobalGxgraf,PlGlobalGraxa,PlGlobalRevenda,PlPropriaFita,PlPropriaTubo,PlPropriaFiotec,PlPropriaGxpuro,PlPropriaGxgraf,PlPropriaGraxa,PlPropriaRevenda,PlTerceirosFita,PlTerceirosTubo,PlTerceirosFiotec,PlTerceirosGxpuro,PlTerceirosGxgraf,PlTerceirosGraxa,PlTerceirosRevenda,HmGlobalFita,HmGlobalTubo,HmGlobalFiotec,HmGlobalGxpuro,HmGlobalGxgraf,HmGlobalGraxa,HmGlobalRevenda,HmPropriaFita,HmPropriaTubo,HmPropriaFiotec,HmPropriaGxpuro,HmPropriaGxgraf,HmPropriaGraxa,HmPropriaRevenda,HmTerceirosFita,HmTerceirosTubo,HmTerceirosFiotec,HmTerceirosGxpuro,HmTerceirosGxgraf,HmTerceirosGraxa,HmTerceirosRevenda,QipGloballFita,QipGloballTubo,QipGloballFiotec,QipGloballGxpuro,QipGloballGxgraf,QipGloballGraxa,QipGloballRevenda,QipPropriaFita,QipPropriaTubo,QipPropriaFiotec,QipPropriaGxpuro,QipPropriaGxgraf,QipPropriaGraxa,QipPropriaRevenda,QipTerceirosFita,QipTerceirosTubo,QipTerceirosFiotec,QipTerceirosGxpuro,QipTerceirosGxgraf,QipTerceirosGraxa,QipTerceirosRevenda")] Quadro quadro)
 {
     if (ModelState.IsValid)
     {
         db.Entry(quadro).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(quadro));
 }
Esempio n. 9
0
 public ActionResult Edit([Bind(Include = "QuadroID,Nome,Preco")] Quadro quadro)
 {
     if (ModelState.IsValid)
     {
         db.Entry(quadro).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(quadro));
 }
Esempio n. 10
0
        public ActionResult Create([Bind(Include = "QuadroID,Nome,Preco")] Quadro quadro)
        {
            if (ModelState.IsValid)
            {
                db.Quadros.Add(quadro);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(quadro));
        }
Esempio n. 11
0
        public void dis()
        {
            double a        = 5;
            double b        = 3;
            double c        = 7;
            double expected = -131;
            Quadro q        = new Quadro(a, b, c);
            double actual   = q.dis();

            Assert.AreEqual(expected, actual);
        }
Esempio n. 12
0
 public string RetornarCalculoTempo(Quadro quadro)
 {
     if (quadro.UltimaHora != "")
     {
         TimeSpan ultimaHora = TimeSpan.Parse(quadro.UltimaHora);
         return(CalcularTempo(Convert.ToDateTime(quadro.UltimaData), ultimaHora));
     }
     else
     {
         TimeSpan horaAbertura = TimeSpan.Parse(quadro.HoraAbertura);
         return(CalcularTempo(Convert.ToDateTime(quadro.DataAbertura), horaAbertura));
     }
 }
Esempio n. 13
0
        // GET: Quadros/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Quadro quadro = db.Quadros.Find(id);

            if (quadro == null)
            {
                return(HttpNotFound());
            }
            return(View(quadro));
        }
        // GET: Quadro/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Quadro quadro = db.Quadroes.Find(id);

            if (quadro == null)
            {
                return(HttpNotFound());
            }
            ViewBag.fk_disciplina_id = new SelectList(db.Disciplinas, "disciplina_id", "titulo", quadro.fk_disciplina_id);
            ViewBag.fk_professor_id  = new SelectList(db.Professors, "professor_id", "nome", quadro.fk_professor_id);
            return(View(quadro));
        }
Esempio n. 15
0
    public List <Quadro> proximos()
    {
        if (atual != null)
        {
            Dictionary <string, string> links = atual.obterLinks();
            List <Quadro> linksPossiveis      = new List <Quadro>();
            List <Quadro> quadrosLinks        = new List <Quadro>();
            foreach (var link in links)
            {
                Quadro quadro = null;
                foreach (Quadro q in quadros)
                {
                    if (q.obterChave() == link.Key)
                    {
                        quadro = q;
                        break;
                    }
                }
                if (quadro == null)
                {
                    throw new Exception("Não encontrado quadro com link: " + link.Key);
                }
                quadrosLinks.Add(quadro);
            }

            foreach (Quadro qLink in quadrosLinks)
            {
                Dictionary <string, string> condicoes = qLink.obterCondicoes();
                bool adicionar = true;

                foreach (var condicao in condicoes)
                {
                    if (!variaveis.ContainsKey(condicao.Key) || variaveis[condicao.Key] != condicao.Value)
                    {
                        adicionar = false;
                        break;
                    }
                }
                if (adicionar)
                {
                    linksPossiveis.Add(qLink);
                }
            }
            return(linksPossiveis);
        }
        return(null);
    }
Esempio n. 16
0
        public IEnumerable <Quadro> QuadroChamado(int idUsuario, int idRevenda, EnumChamado tipo)
        {
            var sb = new StringBuilder();

            if (tipo == EnumChamado.Chamado)
            {
                sb.AppendLine(RetornarChamadoQuadro(idUsuario, idRevenda));
            }
            else
            {
                sb.AppendLine(RetornarAtividadeQuadro(idUsuario, idRevenda));
            }

            var lista = new List <Quadro>();

            using (var db = new BancoADO())
            {
                db.RetornoReader(sb.ToString());

                while (db.Read())
                {
                    var model = new Quadro
                    {
                        QuadroTela           = db.CampoStr("Quadro"),
                        DataAbertura         = db.CampoData("DataAbertura").ToString("dd/MM/yyyy"),
                        NomeCliente          = db.CampoStr("NomeCliente"),
                        Tempo                = db.CampoStr("Tempo"),
                        HoraAbertura         = db.CampoStr("HoraAbertura"),
                        Id                   = db.CampoInt32("Id"),
                        NivelDescricao       = db.CampoStr("NivelDescricao"),
                        Nivel                = db.CampoStr("Nivel"),
                        UsuarioAtendeAtualId = db.CampoInt32("UsuarioAtendeAtualId"),
                        CodigoStatus         = db.CampoInt32("CodigoStatus"),
                        CodigoCliente        = db.CampoInt32("CodigoCliente"),
                        NomeTipo             = db.CampoStr("NomeTipo"),
                        UltimaData           = db.CampoStr("UltimaData"),
                        UltimaHora           = db.CampoStr("UltimaHora"),
                        HoraAtendeAtual      = db.CampoStr("HoraAtendeAtual"),
                        NomeUsuario          = db.CampoStr("NomeUsuario"),
                        CodigoParametro      = db.CampoStr("CodigoParametro"),
                    };
                    lista.Add(model);
                }
                db.CloseReader();
            }
            return(lista);
        }
Esempio n. 17
0
 public void chamarQuadro(string quadroAChamar)
 {
     atual = null;
     foreach (Quadro quadro in quadros)
     {
         if (quadro.obterChave() == quadroAChamar)
         {
             atual = quadro;
             break;
         }
     }
     if (atual == null)
     {
         throw new Exception("Tentativa de chamar quadro inexistente: " + quadroAChamar);
     }
     mostraQuadroAtual();
 }
        public ActionResult Edit([Bind(Include = "quadro_id,fk_professor_id,fk_disciplina_id")] Quadro quadro)
        {
            //Chama o validador de duplicidade
            if (Duplicado(quadro))
            {
                DuplicidadeError();
            }

            if (ModelState.IsValid)
            {
                db.Entry(quadro).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            ViewBag.fk_disciplina_id = new SelectList(db.Disciplinas, "disciplina_id", "titulo", quadro.fk_disciplina_id);
            ViewBag.fk_professor_id  = new SelectList(db.Professors, "professor_id", "nome", quadro.fk_professor_id);
            return(View(quadro));
        }
        public async Task <IActionResult> CreateTodosDias(int EscalaId, int EventoId, DateTime dataInicial, DateTime dataFinal)
        {
            int quantidadeDias = (dataFinal).Subtract(dataInicial).Days;

            for (int i = 0; i <= quantidadeDias; i++)
            {
                Quadro quadro = new Quadro();
                quadro.Data     = dataInicial;
                quadro.EscalaId = EscalaId;
                quadro.EventoId = EventoId;
                _context.Add(quadro);
                await _context.SaveChangesAsync();

                dataInicial = dataInicial.AddDays(1);
            }

            return(RedirectToAction("Index"));
        }
Esempio n. 20
0
        public async Task <Object> Remove(RhNetContext rhNetContext, QuadroModel quadroModel)
        {
            Quadro quadro = await rhNetContext.Quadros.FindAsync(quadroModel.Id);

            if (quadro == null)
            {
                return("Quadro não encontrado.");
            }

            try
            {
                rhNetContext.Entry(quadro).State = EntityState.Deleted;
                await rhNetContext.SaveChangesAsync();

                return(quadroModel);
            }
            catch (DbUpdateException ex)
            {
                return(ex.InnerException.ToString());
            }
        }
Esempio n. 21
0
        public async Task <object> AddAtoNormativo(RhNetContext rhNetContext, Quadro_Ato_NormativoModel quadro_Ato_NormativoModel)
        {
            Quadro quadro = await rhNetContext.Quadros.FindAsync(quadro_Ato_NormativoModel.Quadro_Id);

            if (quadro == null)
            {
                return("Quadro não encontrado.");
            }

            Ato_Normativo ato_normativo = await rhNetContext.Atos_Normativos.FindAsync(quadro_Ato_NormativoModel.Ato_Normativo_Id);

            if (ato_normativo == null)
            {
                return("Ato Normativo não encontrado.");
            }

            Quadro_Ato_Normativo quadro_ato_normativo = new Quadro_Ato_Normativo()
            {
                Ato_Normativo_Id = quadro_Ato_NormativoModel.Ato_Normativo_Id,
                Quadro_Id        = quadro_Ato_NormativoModel.Quadro_Id
            };


            Boolean exist = await(from x in rhNetContext.Quadros_Atos_Normativos
                                  where x.Ato_Normativo_Id == quadro_Ato_NormativoModel.Ato_Normativo_Id &&
                                  x.Quadro_Id == quadro_Ato_NormativoModel.Quadro_Id
                                  select x).CountAsync() > 0;

            if (exist)
            {
                return("Ato normativo já adicionado ao Quadro");
            }


            rhNetContext.Entry(quadro_ato_normativo).State = EntityState.Added;
            await rhNetContext.SaveChangesAsync();

            return(quadro_Ato_NormativoModel);
        }
Esempio n. 22
0
        public async Task <Object> Add(RhNetContext rhNetContext, SubquadroModel subquadroModel)
        {
            if (subquadroModel.Quadro == null)
            {
                return("Quadro não informado.");
            }


            Quadro quadro = await rhNetContext.Quadros.FindAsync(subquadroModel.Quadro.Id);

            if (quadro == null)
            {
                return("Quadro não encontrado.");
            }

            Subquadro subquadro = new Subquadro()
            {
                Sigla     = subquadroModel.Sigla,
                Descricao = subquadroModel.Descricao,
                Quadro    = quadro
            };

            try
            {
                rhNetContext.Entry(subquadro).State = EntityState.Added;
                await rhNetContext.SaveChangesAsync();

                await rhNetContext.Entry(subquadro).ReloadAsync();

                subquadroModel.Id = subquadro.Id;

                return(subquadroModel);
            }
            catch (DbUpdateException ex)
            {
                return(ex.InnerException.ToString());
            }
        }
Esempio n. 23
0
        public async Task <object> Add(RhNetContext rhNetContext, QuadroModel quadroModel)
        {
            Quadro quadro = new Quadro()
            {
                Descricao = quadroModel.Descricao
            };

            try
            {
                rhNetContext.Entry(quadro).State = EntityState.Added;
                await rhNetContext.SaveChangesAsync();

                await rhNetContext.Entry(quadro).ReloadAsync();

                quadroModel.Id = quadro.Id;

                return(quadroModel);
            }
            catch (DbUpdateException ex)
            {
                return(ex.InnerException.ToString());
            }
        }
Esempio n. 24
0
        public async Task <Object> Update(RhNetContext rhNetContext, SubquadroModel subquadroModel)
        {
            if (subquadroModel.Quadro == null)
            {
                return("Quadro não informado.");
            }


            Quadro quadro = await rhNetContext.Quadros.FindAsync(subquadroModel.Quadro.Id);

            if (quadro == null)
            {
                return("Quadro não encontrado.");
            }

            Subquadro subquadro = await rhNetContext.Subquadros.FindAsync(subquadroModel.Id);

            if (subquadro == null)
            {
                return("Subquadro não encontrado.");
            }
            subquadro.Descricao = subquadroModel.Descricao;
            subquadro.Sigla     = subquadroModel.Sigla;
            subquadro.Quadro    = quadro;

            try
            {
                rhNetContext.Entry(subquadro).State = EntityState.Modified;
                await rhNetContext.SaveChangesAsync();

                return(subquadroModel);
            }
            catch (DbUpdateException ex)
            {
                return(ex.InnerException.ToString());
            }
        }
Esempio n. 25
0
        public IReadOnlyCollection <Notification> RegerarListaAtual(int congregacaoAtual)
        {
            var model = new Quadro();

            using (RepositorySession dalSession = new RepositorySession(Runtime.JWInstance))
            {
                IUnitOfWork unitOfWork = dalSession.UnitOfWork;
                unitOfWork.Begin();
                try
                {
                    var congregacao = _repositoryCongregacao.ListAll(ref unitOfWork).ToList().Find(x => x.Codigo == congregacaoAtual);

                    if (congregacao == null)
                    {
                        model.AddNotification("Congregacao", "Não existe nenhuma congregação cadastrada");
                        unitOfWork.Rollback();
                        return(model.Notifications);
                    }

                    var      quadroAtual   = _repositoryQuadro.ObterQuadroAtual(ref unitOfWork, congregacaoAtual);
                    var      proximoQuadro = _repositoryQuadro.ObterProximoQuadro(ref unitOfWork, congregacaoAtual);
                    int      quadro        = 0;
                    DateTime dataInicioLista;

                    if (proximoQuadro > 0)
                    {
                        quadro = proximoQuadro;
                    }
                    else
                    {
                        quadro = quadroAtual;
                    }

                    dataInicioLista = _repositoryQuadroDetalhe.ObterDataInicioQuadro(ref unitOfWork, quadro);


                    var      tipolistas     = _repositoryTipoLista.ListAll(ref unitOfWork, congregacaoAtual);
                    DateTime dataFinalLista = _repositoryQuadroDetalhe.ObterDataFimQuadro(ref unitOfWork, quadro);
                    //Apaga Lista Atual
                    _repositoryQuadroDetalhe.ApagaDetalhesQuadro(ref unitOfWork, quadro);

                    // Caso a próxima lista ainda não foi gerada, a lista atual será gerada até a última reunião antes da data atual
                    if (proximoQuadro == 0)
                    {
                        // Gera lista até data atual
                        GeraListas(ref unitOfWork, ref tipolistas, ref congregacao, dataInicioLista, quadro, DateTime.Now, true, true);

                        // Atualiza o Controle da lista com base nas atribuições atuais dos irmãos
                        AtualizarControleLista(ref unitOfWork, congregacao.Codigo, false);

                        // Continua a geração da lista da data atual até o final da lista
                        GeraListas(ref unitOfWork, ref tipolistas, ref congregacao, DateTime.Now.AddDays(1), quadro, dataFinalLista, false, false);
                    }
                    else
                    {
                        // Recupera Backup das lista
                        foreach (var item in tipolistas)
                        {
                            _repositoryControleLista.RecuperaBackupListaAtual(ref unitOfWork, (int)item.Codigo, congregacaoAtual);
                        }

                        // Atualiza o Controle da lista com base nas atribuições atuais dos irmãos
                        AtualizarControleLista(ref unitOfWork, congregacao.Codigo, false);

                        // Gera lista até data atual
                        GeraListas(ref unitOfWork, ref tipolistas, ref congregacao, dataInicioLista, quadro, dataFinalLista, true, false);
                    }

                    unitOfWork.Commit();
                }
                catch
                {
                    unitOfWork.Rollback();
                    throw;
                }
            }

            return(model.Notifications);
        }
Esempio n. 26
0
        public IReadOnlyCollection <Notification> GeraLista(int congregacaoAtual)
        {
            var model = new Quadro();

            using (RepositorySession dalSession = new RepositorySession(Runtime.JWInstance))
            {
                IUnitOfWork unitOfWork = dalSession.UnitOfWork;
                unitOfWork.Begin();
                try
                {
                    var congregacao = _repositoryCongregacao.ListAll(ref unitOfWork).ToList().Find(x => x.Codigo == congregacaoAtual);

                    if (congregacao == null)
                    {
                        model.AddNotification("Congregacao", "Não existe nenhuma congregação cadastrada");
                        unitOfWork.Rollback();
                        return(model.Notifications);
                    }

                    DateTime dataInicioLista;
                    if (DateTime.Now.Date < Convert.ToDateTime(congregacao.DataPrimeiraLista).Date)
                    {
                        dataInicioLista = Convert.ToDateTime(congregacao.DataPrimeiraLista).Date;
                    }
                    else
                    {
                        var ultimareuniao = _repositoryQuadro.ObterUltimoQuadro(ref unitOfWork, congregacao.Codigo);
                        dataInicioLista = ultimareuniao.DataFimLista.Date.AddDays(1);
                    }

                    if (DateTime.Now.Date < dataInicioLista.Date.AddDays(congregacao.DiasAntecedenciaGerarLista * -1))
                    {
                        model.AddNotification("Congregacao", $"A lista somente pode ser gerada a partir de + " +
                                              $"'{dataInicioLista.Date.AddDays(congregacao.DiasAntecedenciaGerarLista * -1).Date}'");
                        unitOfWork.Rollback();
                        return(model.Notifications);
                    }

                    var tipolistas = _repositoryTipoLista.ListAll(ref unitOfWork, congregacao.Codigo);
                    int quadro     = 0;
                    int codQuadro  = 0;
                    if (tipolistas.Count() > 0)
                    {
                        quadro = _repositoryQuadro.ObterCodigoProximoQuadro(ref unitOfWork);
                        // Incluir / retirar irmãos da lista / atualiza designações
                        AtualizarControleLista(ref unitOfWork, congregacao.Codigo, true);
                    }
                    DateTime dataFinalLista = DateTime.MinValue;

                    foreach (var itemTipoLista in tipolistas)
                    {
                        DateTime dataControle = dataInicioLista;
                        _repositoryControleLista.BackupListaAtual(ref unitOfWork, (int)itemTipoLista.Codigo, dataInicioLista, itemTipoLista.CongregacaoId);
                        codQuadro = _repositoryQuadro.InserirNovoQuadro(ref unitOfWork, congregacao.Codigo, quadro, (int)itemTipoLista.Codigo);

                        int i = 0;
                        while (i < itemTipoLista.QuantidadeDatas)
                        {
                            bool assembleia = false;
                            switch (itemTipoLista.Codigo)
                            {
                            case Core.Domain.enums.eTipoLista.Indicador:
                                if (dataControle.DayOfWeek == congregacao.DiaReuniaoSentinela || dataControle.DayOfWeek == congregacao.DiaReuniaoServico)
                                {
                                    for (int iIndicador = 0; iIndicador < congregacao.QuantidadeIndicadores; iIndicador++)
                                    {
                                        if (!assembleia)
                                        {
                                            assembleia = InsereDetalheQuadro(ref unitOfWork, dataControle, congregacao, codQuadro, itemTipoLista);
                                        }
                                    }
                                    i++;
                                }
                                break;

                            case Core.Domain.enums.eTipoLista.AudioVideo:
                                if (dataControle.DayOfWeek == congregacao.DiaReuniaoSentinela || dataControle.DayOfWeek == congregacao.DiaReuniaoServico)
                                {
                                    for (int iSistemaSonoro = 0; iSistemaSonoro < congregacao.QuantidadeSistemaSonoro; iSistemaSonoro++)
                                    {
                                        if (!assembleia)
                                        {
                                            assembleia = InsereDetalheQuadro(ref unitOfWork, dataControle, congregacao, codQuadro, itemTipoLista);
                                        }
                                    }
                                    i++;
                                }
                                break;

                            case Core.Domain.enums.eTipoLista.Microfonista:
                                if (dataControle.DayOfWeek == congregacao.DiaReuniaoSentinela || dataControle.DayOfWeek == congregacao.DiaReuniaoServico)
                                {
                                    for (int iMicrofonistas = 0; iMicrofonistas < congregacao.QuantidadeMicrofonistas; iMicrofonistas++)
                                    {
                                        if (!assembleia)
                                        {
                                            assembleia = InsereDetalheQuadro(ref unitOfWork, dataControle, congregacao, codQuadro, itemTipoLista);
                                        }
                                    }
                                    i++;
                                }
                                break;

                            case Core.Domain.enums.eTipoLista.OracaoFinal:
                            case Core.Domain.enums.eTipoLista.OracaoInicial:
                                if (dataControle.DayOfWeek == congregacao.DiaReuniaoSentinela || dataControle.DayOfWeek == congregacao.DiaReuniaoServico)
                                {
                                    InsereDetalheQuadro(ref unitOfWork, dataControle, congregacao, codQuadro, itemTipoLista);
                                    i++;
                                }
                                break;

                            case Core.Domain.enums.eTipoLista.LeitorJW:
                                if (dataControle.DayOfWeek == congregacao.DiaReuniaoSentinela)
                                {
                                    InsereDetalheQuadro(ref unitOfWork, dataControle, congregacao, codQuadro, itemTipoLista);
                                    i = i + 2;
                                }
                                break;

                            case Core.Domain.enums.eTipoLista.LeitorELC:
                                if (dataControle.DayOfWeek == congregacao.DiaReuniaoServico)
                                {
                                    InsereDetalheQuadro(ref unitOfWork, dataControle, congregacao, codQuadro, itemTipoLista);
                                    i = i + 2;
                                }
                                break;

                            default:
                                break;
                            }
                            dataControle = dataControle.AddDays(1);
                        }
                        if (dataFinalLista == DateTime.MinValue)
                        {
                            dataFinalLista = dataControle.AddDays(-1);
                        }
                    }

                    unitOfWork.Commit();
                }
                catch
                {
                    unitOfWork.Rollback();
                    throw;
                }
            }

            return(model.Notifications);
        }
Esempio n. 27
0
    public void inicializar()
    {
        leitor    = GetComponent <LeitorArquivos>();
        variaveis = new Dictionary <string, string>();
        leitor.inicializar();
        //busca o primeiro quadro e coloca ele na propriedade "atual"
        quadros = leitor.quadrosCarregados;
        string jogoSalvo = PlayerPrefs.GetString("jogo_salvo");
        string bgmSalvo  = PlayerPrefs.GetString("bgm");

        if (jogoSalvo != "") // Se encontrou um jogo salvo, o atual passa a ser o jogo salvo
        {
            foreach (var quadro in quadros)
            {
                if (quadro.obterChave() == jogoSalvo)
                {
                    atual = quadro;
                    break;
                }
            }
        }
        else  // Se não encontrou um jogo salvo, o atual passa a ser aquele que tem o sinal de inicio
        {
            foreach (var quadro in quadros)
            {
                if (quadro.eOInicio())
                {
                    atual = quadro;
                    break;
                }
            }
        }

        if (bgmSalvo != "") // Se encontrou um jogo salvo, o atual passa a ser o jogo salvo
        {
            foreach (var quadro in quadros)
            {
                if (quadro.obterChave() == bgmSalvo)
                {
                    atual = quadro;
                    break;
                }
            }
        }
        else  // Se não encontrou um jogo salvo, o atual passa a ser aquele que tem o sinal de inicio
        {
            foreach (var quadro in quadros)
            {
                if (quadro.eOInicio())
                {
                    atual = quadro;
                    break;
                }
            }
        }

        /* if(bgmSalvo != ""){
         *  tocaBgm(bgmSalvo);
         * }*/

        mostraQuadroAtual();
    }
 //Verificação de Duplicidade do nome
 public bool Duplicado(Quadro q)
 {
     return(db.Quadroes.Where(a => a.fk_disciplina_id == q.fk_disciplina_id).Where(b => b.fk_professor_id == q.fk_professor_id).Any());
 }
    public void carregarQuadros()
    {
        TextAsset asset        = Resources.Load <TextAsset>(arquivoQuadros);
        string    quadrosTexto = asset.text;

        string[] linhas = quadrosTexto.Split('\n');

        List <Quadro> quadros = new List <Quadro>();
        Quadro        quadro  = null;

        for (int i = 0; i < linhas.Length; i++)
        {
            string linha        = linhas[i];
            string linhaEditar  = linha;
            int    ignorarEnter = linha.IndexOf('\r');
            if (ignorarEnter >= 0)
            {
                linhaEditar = linha.Remove(ignorarEnter);
            }
            if (linhaEditar.Contains(Sinais.chaves["INICIO_QUADRO"]))
            {
                quadro = new Quadro();
            }
            else if (linhaEditar.Contains(Sinais.chaves["FIM_QUADRO"]))
            {
                quadros.Add(quadro);
                quadro = null;
            }
            else if (linhaEditar.Contains(Sinais.chaves["CHAVE_TRADUCAO"]))
            {
                quadro.adicionarTraducao(linhaEditar);
            }
            else if (linhaEditar.Contains(Sinais.chaves["TEXTO"]))
            {
                quadro.adicionarTexto(linhaEditar);
            }
            else if (linhaEditar.Contains(Sinais.chaves["LINK"]))
            {
                quadro.adicionarLink(linhaEditar);
            }
            else if (linhaEditar.Contains(Sinais.chaves["VARIAVEL"]))
            {
                quadro.criarAlterarVariavel(linhaEditar);
            }
            else if (linhaEditar.Contains(Sinais.chaves["CONDICAO"]))
            {
                quadro.adicionarCondicao(linhaEditar);
            }
            else if (linhaEditar.Contains(Sinais.chaves["CHAVE"]))
            {
                quadro.insereChave(linhaEditar);
            }
            else if (linhaEditar.Contains(Sinais.chaves["INICIO_HISTORIA"]))
            {
                quadro.marcarInicio();
            }
            else if (linhaEditar.Contains(Sinais.chaves["IMAGEM"]))
            {
                quadro.setarImagem(linhaEditar);
            }
            else if (linhaEditar.Contains(Sinais.chaves["AUDIO"]))
            {
                quadro.setarAudio(linhaEditar);
            }
            else if (linhaEditar.Contains(Sinais.chaves["BGM"]))
            {
                quadro.setarBgm(linhaEditar);
            }
        }

        quadrosCarregados = quadros;
    }