Ejemplo n.º 1
0
        public async Task <IActionResult> PostReuniao(Reuniao reuniao)
        {
            //int count = 0;
            reuniao.Id = new Guid();

            DateTime start = new DateTime(reuniao.data.Value.Year, reuniao.data.Value.Month, reuniao.data.Value.Day, reuniao.start.Hour, reuniao.start.Minute, reuniao.start.Second);
            DateTime end   = new DateTime(reuniao.data.Value.Year, reuniao.data.Value.Month, reuniao.data.Value.Day, reuniao.end.Hour, reuniao.end.Minute, reuniao.end.Second);

            reuniao.start = start;
            reuniao.end   = end;

            var listaDeReunioes = await _context.Reunioes.ToListAsync();

            var reuniaoDuplicada =
                (from reun in listaDeReunioes
                 where reun.sala == reuniao.sala && reun.local == reuniao.local &&
                 start > reun.start && start <reun.end || end> reun.start && end < reun.end
                 select reun.Id).Count();

            if (reuniaoDuplicada > 0)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, "Banco de Dados Falhou"));
            }
            _context.Add(reuniao);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetReuniao", new { id = reuniao.Id }, reuniao));
        }
 public Reuniao AdicionarReuniao(Programa programa, Funcionario representante,
     string local, string assunto, DateTime realizacao, StatusDaReunicao status)
 {
     var reuniao = new Reuniao(programa, representante, local, assunto, realizacao, status);
     _reuniaoRepositorio.Adicionar(reuniao);
     return reuniao;
 }
        private void add(object sender, RoutedEventArgs e)
        {
            string titulo    = tbTitulo.Text;
            string descricao = tbDesc.Text;
            string ata       = tbAta.Text;

            if (string.IsNullOrEmpty(titulo))
            {
                ErrorBorder.Visibility = Visibility.Visible;
                ErrorLabel.Content     = "Os campos marcados com '*' são de preenchimento obrigatório.";
                return;
            }
            if (string.IsNullOrEmpty(descricao))
            {
                descricao = null;
            }
            if (string.IsNullOrEmpty(ata))
            {
                ata = null;
            }

            List <Condomino> selectedCond = new List <Condomino>();

            Reuniao re = new Reuniao(p.ID, dt, titulo, descricao, ata: ata);

            foreach (Condomino selected in selectedCondominos.SelectedItems)
            {
                re.add_Condomino(selected);
            }

            re.save();
            vm.changeViewAgendaPage(p);
        }
Ejemplo n.º 4
0
        public async Task <IHttpActionResult> PutReuniao(int id, Reuniao reuniao)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != reuniao.Id)
            {
                return(BadRequest());
            }

            db.Entry(reuniao).State = EntityState.Modified;
            db.DadoAlterado.Add(new DadoAlterado {
                Entidade = reuniao.GetType().Name, IdDado = reuniao.Id
            });
            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ReuniaoExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Ejemplo n.º 5
0
        // GET: Reunioes/ExibirReubiaoViewModel
        public IActionResult ExibirReuniaoViewModel()
        {
            //Exercício com ViewModel

            /*Fazer uma caixa de seleção com a relação das reuniões existentes e a partir de ID daquela selecionada relacionar os convidados.
             * Por hora mostra uma reunião com ID em hardcoding e todos os visitantes cadastrados
             */

            var reunioes = from m in _context.Reunioes.Include("Visitados").Include("Convites").Include("Visitantes") select m;

            //Selecionar uma reunião
            Reuniao reuniao = _context.Reunioes.FirstOrDefault(x => x.ReuniaoID == 68);

            //Criar uma lista para os convidados daquela reunião
            var visitantes = new List <Visitante>(from m in _context.Visitantes select m);


            var ViewModel = new ReuniaoViewModel
            {
                Reuniao         = (Reuniao)reuniao,
                qtdVisitantes   = 3,
                listaVisitantes = visitantes
            };

            return(View(ViewModel));
        }
        public Reuniao AdicionarReuniao(Programa programa, Funcionario representante,
                                        string local, string assunto, DateTime realizacao, StatusDaReunicao status)
        {
            var reuniao = new Reuniao(programa, representante, local, assunto, realizacao, status);

            _reuniaoRepositorio.Adicionar(reuniao);
            return(reuniao);
        }
Ejemplo n.º 7
0
        public Reuniao Alocacao(Reuniao reuniao)
        {
            List <Reuniao> reunioesSala = _reuniaoRepository.GetReuniaoBySalaId(reuniao.Sala.Id);

            reuniao.Sala.ConsultarDisponibilidadeSala(reunioesSala, reuniao);

            return(_reuniaoRepository.Save(reuniao));
        }
Ejemplo n.º 8
0
        public ActionResult DeleteConfirmed(Guid id)
        {
            Reuniao reuniao = db.Reuniaos.Find(id);

            db.Reuniaos.Remove(reuniao);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 9
0
 public LogoutMeetingView(Reuniao reuniao)
 {
     InitializeComponent();
     viewmodel         = new LogoutViewModel();
     viewmodel.Reuniao = reuniao;
     BindingContext    = viewmodel;
     Api = new ApiServices();
 }
Ejemplo n.º 10
0
        public void Realocacao(Reuniao reuniao)
        {
            List <Reuniao> reunioesSala = _reuniaoRepository.GetReuniaoBySalaId(reuniao.Sala.Id);

            reuniao.Sala.ConsultarDisponibilidadeSala(reunioesSala, reuniao);

            _reuniaoRepository.Update(reuniao);
        }
        public void Delete(Reuniao reuniao)
        {
            var parms = new Dictionary <string, object> {
                { "id_reuniao", reuniao.Id }
            };

            Db.Delete(SqlDeletaReuniao, parms);
        }
        public void ReuniaoRepositoryTestSetUp()
        {
            BaseSqlTest.SeedDeleteDatabase();
            BaseSqlTest.SeedInsertDatabase();

            _reuniaoRepository = new ReuniaoRepository();
            _reuniaoDefault    = ReuniaoObjectMother.Default;
        }
        public void ConsigoAdicionarAtasEmUmaReuniao()
        {
            var reuniao = new Reuniao(new Programa(), _funcionario, _local, "ASsunto", _data, StatusDaReunicao.Concluido);

            var ata = new Ata(_funcionario);
            reuniao.AdicionarAta(ata);

            CollectionAssert.Contains(reuniao.Atas, ata);
        }
Ejemplo n.º 14
0
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            Reuniao reuniao = await db.reuniao.FindAsync(id);

            db.reuniao.Remove(reuniao);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Ejemplo n.º 15
0
        public Reuniao GetReuniao(int id)
        {
            Reuniao listaTodasReunioes = _context.Reunioes.
                                         Include("Visitados").
                                         Include("Convites").
                                         Include("Convites.Visitantes").
                                         FirstOrDefault(x => x.ReuniaoID == id);

            return(listaTodasReunioes);
        }
Ejemplo n.º 16
0
 public ActionResult Edit([Bind(Include = "Id,DataInicio,HoraInicio,DataFim,HoraFim")] Reuniao reuniao)
 {
     if (ModelState.IsValid)
     {
         db.Entry(reuniao).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(reuniao));
 }
        public void ReunioeserviceTestSetUp()
        {
            _reuniaoRepositoryMockObject = new Mock <IReuniaoRepository>();

            _salaFake = new Mock <Sala>();

            _Reunioeservice       = new ReuniaoService(_reuniaoRepositoryMockObject.Object);
            _reuniaoDefaultWithId = ReuniaoObjectMother.DefaultWithId;
            _reuniaoDefault       = ReuniaoObjectMother.Default;
        }
Ejemplo n.º 18
0
        public void ConsigoAdicionarAtasEmUmaReuniao()
        {
            var reuniao = new Reuniao(new Programa(), _funcionario, _local, "ASsunto", _data, StatusDaReunicao.Concluido);

            var ata = new Ata(_funcionario);

            reuniao.AdicionarAta(ata);

            CollectionAssert.Contains(reuniao.Atas, ata);
        }
Ejemplo n.º 19
0
        private async Task <Unit> ProcederComAAtualizacaoDaReuniaoAsync(Reuniao reuniao)
        {
            reuniaoWriteOnlyRepository.Update(reuniao);

            await reuniaoWriteOnlyRepository.UnitOfWork.SaveEntitiesAsync();

            await auditTrailProvider.AddTrailsAsync(AuditOperation.Update, userPrincipalBuilder.UserPrincipal.UserName, new AuditableObjects <Reuniao>(reuniao.Id.ToString(), reuniao));

            return(Unit.Value);
        }
Ejemplo n.º 20
0
        public ActionResult Create([Bind(Include = "Id,DataInicio,HoraInicio,DataFim,HoraFim,Internet,NumeroSala,Pessoas,Computador,Televisor")] Reuniao reuniao)
        {
            if (ModelState.IsValid)
            {
                if (reuniao.DataInicio.Equals(DateTime.Today))
                {
                    ModelState.AddModelError("DataInicio", "A reunião deve ser marcada com pelo menos 1 dia de antecedencia.");
                    return(View(reuniao));
                }
                else if (reuniao.DataInicio.Subtract(DateTime.Today).TotalDays >= 40)
                {
                    ModelState.AddModelError("DataInicio", "A reunião deve ser marcada com no máximo 40 dias de antecedencia");
                    return(View(reuniao));
                }
                else if (reuniao.DataInicio < DateTime.Today || reuniao.DataFim < reuniao.DataInicio)
                {
                    ModelState.AddModelError("DataInicio", "A reunião deve ser marcada com uma data válida");
                    return(View(reuniao));
                }
                if ((reuniao.DataInicio.DayOfWeek == DayOfWeek.Saturday || reuniao.DataInicio.DayOfWeek == DayOfWeek.Sunday) ||
                    reuniao.DataFim.DayOfWeek == DayOfWeek.Saturday || reuniao.DataFim.DayOfWeek == DayOfWeek.Sunday)
                {
                    ModelState.AddModelError("DataInicio", "A reunião deve ser marcada em dias úteis");
                    return(View(reuniao));
                }
                else
                if (reuniao.HoraFim.Subtract(reuniao.HoraInicio).TotalHours > 8)
                {
                    ModelState.AddModelError("DataInicio", "A reunião deve ter no máximo 8 horas de duração");
                    return(View(reuniao));
                }

                reuniao = service.VerificacaoDeSala(reuniao);
                if (reuniao.NumeroSala == 0)
                {
                    ModelState.AddModelError("DataInicio", "Sala não encontrada, verifique a entrada dos dados e tente novamente");
                    return(View(reuniao));
                }

                reuniao.Id = Guid.NewGuid();
                db.Reuniaos.Add(reuniao);
                db.SaveChanges();

                string       path = @"C:\Users\Public\reuniao.txt";
                StreamWriter sw   = new StreamWriter(path);

                sw.WriteLine("Reunião marcada para " + reuniao.DataInicio.GetDateTimeFormats('D').FirstOrDefault() + " e terminará " + reuniao.DataFim.Date.GetDateTimeFormats('D').FirstOrDefault() + ". \nA reunião vai começar as " + reuniao.HoraInicio + " e vai terminar as " + reuniao.HoraFim + " e será na sala número " + reuniao.NumeroSala);
                sw.Close();
                return(RedirectToAction("Index"));
            }


            return(View(reuniao));
        }
Ejemplo n.º 21
0
        public async Task <ActionResult> Edit([Bind(Include = "IdReuniao,Data_reuniao,Horario_inicio,Horario_fim,Local_reuniao")] Reuniao reuniao)
        {
            if (ModelState.IsValid)
            {
                db.Entry(reuniao).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(reuniao));
        }
Ejemplo n.º 22
0
        public async Task <IHttpActionResult> GetReuniao(int id)
        {
            Reuniao reuniao = await db.reuniao.FindAsync(id);

            if (reuniao == null)
            {
                return(NotFound());
            }

            return(Ok(reuniao));
        }
Ejemplo n.º 23
0
        public void Reuniao_Deveria_Retornar_Excessao_HoraInicio_For_Maio_Que_HoraFinal()
        {
            //Arrange
            Reuniao reuniaoHorarioInvalido = ReuniaoObjectMother.HoraInicioMaiorHoraFinal;

            //Action
            Action actionValidaHorarios = () => reuniaoHorarioInvalido.ValidaHorarios();

            //Assert
            actionValidaHorarios.Should().Throw <HorarioInvalidoExcessao>();
        }
Ejemplo n.º 24
0
        public void Reuniao_Deveria_Retornar_HorarioFinal_Atualizado_Com_A_Mesma_Data_Informada()
        {
            //Arrange
            DateTime data = DateTime.Now.AddDays(2);

            //Action
            Reuniao reuniao = ReuniaoObjectMother.DefaultDataHoraFinalDiferenteData;

            //Assert
            reuniao.HorarioFinalAtualizado.Should().Be(new DateTime(data.Year, data.Month, data.Day, 12, 0, 0));
        }
        protected void btnEnviarEmail_Click(object sender, EventArgs e)
        {
            try
            {
                spsWrapper2 objWrapper = new spsWrapper2();

                //Carrega a Reunião
                Reuniao objReuniao = CarregaReuniao(Convert.ToInt32(btnEnviarEmail.CommandArgument));

                if (!(objReuniao.Participantes.Count > 0))
                {
                    throw new Exception("Nenhum participante localizado!");
                }

                //Carrega o ListItem para capturar os anxos
                SPListItem objItem = objWrapper.RetornaItem("Reunioes", objReuniao.ID_Reuniao, SPContext.Current.Web.ID);

                //Verifica se existe o anexo para ser enviado.
                if (!(objItem.Attachments.Count > 0))
                {
                    throw new Exception("ATA não gerada! você deve gerar a ATA da reunião antes de enviar!");
                }


                //Cria o anexo
                Dictionary <string, Byte[]> objAnexo = new Dictionary <string, byte[]>();

                /*
                 * SPFolder folder = web.Folders["Lists"].SubFolders[strListName].SubFolders["Attachments"].SubFolders[item.ID.ToString()];
                 *          foreach(SPFile file in folder.Files)
                 */
                foreach (SPFile arquivo in SPContext.Current.Web.Folders["Lists"].SubFolders[objItem.ParentList.Title].SubFolders["Attachments"].SubFolders[objItem.ID.ToString()].Files)
                {
                    objAnexo.Add(arquivo.Name, arquivo.OpenBinary());
                }

                //Para cada participante da reunião com o e-mail preenchido
                foreach (Participante participante in objReuniao.Participantes.Where(f => f.Email != string.Empty))
                {
                    //Cria o corpo e o assunto montando os campos dinâmicos
                    string strAssunto = Assunto.Replace("@titulo", objReuniao.Titulo).Replace("@dt_reuniao", objReuniao.dt_reuniao.ToString("dd/MM/yyyy")).Replace("@nome", participante.Nome);
                    string strCorpo   = Corpo.Replace("@titulo", objReuniao.Titulo).Replace("@dt_reuniao", objReuniao.dt_reuniao.ToString("dd/MM/yyyy")).Replace("@nome", participante.Nome);

                    spsWrapper.Utilidades.EnviaEmail(participante.Email, strAssunto, strCorpo, objAnexo);
                }

                this.lblResultado.Text = "ATA enviada com sucesso!";
            }
            catch (Exception ex)
            {
                this.lblErro.Text    = ex.Message;
                this.pnlErro.Visible = true;
            }
        }
Ejemplo n.º 26
0
        public void Sala_Nao_Deveria_Retornar_Excessao_Quando_Consultado_Data_E_Horarios_Disponiveis()
        {
            //arrange
            List <Reuniao> listReunioesSala = ReuniaoObjectMother.DefaultList;
            Reuniao        reuniaoDefaultHoursNotAvailable = ReuniaoObjectMother.Default;

            //Action
            Action actionConsultarDiponibilidadeSala = () => _salaDefault.ConsultarDisponibilidadeSala(listReunioesSala, reuniaoDefaultHoursNotAvailable);

            //Assert
            actionConsultarDiponibilidadeSala.Should().NotThrow <SalaNaoDisponivelExcessao>();
        }
 private Dictionary <string, object> GetParametros(Reuniao reuniao)
 {
     return(new Dictionary <string, object>
     {
         { "id_reuniao", reuniao.Id },
         { "funcionario_id", reuniao.Funcionario.Id },
         { "sala_id", reuniao.Sala.Id },
         { "data", reuniao.Data },
         { "hora_inicio", reuniao.HorarioInicioAtualizado },
         { "hora_final", reuniao.HorarioFinalAtualizado }
     });
 }
        public void Save_Deveria_Gravar_Um_Novo_Reuniao()
        {
            //Action-Arrange
            Reuniao resultReuniao = _reuniaoRepository.Save(_reuniaoDefault);

            //Assert
            Reuniao resultGet = _reuniaoRepository.Get(resultReuniao.Id);

            resultReuniao.Should().NotBeNull();
            resultGet.Should().NotBeNull();
            resultGet.Id.Should().Be(resultReuniao.Id);
        }
Ejemplo n.º 29
0
        public async Task <IHttpActionResult> PostReuniao(Reuniao reuniao)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.reuniao.Add(reuniao);
            await db.SaveChangesAsync();

            return(CreatedAtRoute("DefaultApi", new { id = reuniao.Id }, reuniao));
        }
        public async Task <CriarCommandResult> Handle(CriarReuniaoCommand request, CancellationToken cancellationToken)
        {
            var reuniao = new Reuniao(userPrincipalBuilder.UserPrincipal.UserName, request.CipaId, request.MesDeReferencia, request.DataPrevista, request.Local, request.Extraordinaria);

            reuniaoWriteOnlyRepository.Insert(reuniao);

            await reuniaoWriteOnlyRepository.UnitOfWork.SaveEntitiesAsync();

            await auditTrailProvider.AddTrailsAsync(AuditOperation.Create, userPrincipalBuilder.UserPrincipal.UserName, new AuditableObjects <Reuniao>(reuniao.Id.ToString(), reuniao));

            return(new CriarCommandResult(reuniao.Id));
        }
Ejemplo n.º 31
0
        public async Task <ActionResult> Create([Bind(Include = "Id,Data_reuniao,Horario_inicio,Horario_fim,Local_reuniao")] Reuniao reuniao)
        {
            if (ModelState.IsValid)
            {
                db.reuniao.Add(reuniao);
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            return(View(reuniao));
        }
Ejemplo n.º 32
0
        public void Sistema_Deveria_Buscar_Um_Reuniao_Pelo_Id()
        {
            //Arrange
            Reuniao resultReuniao = _reuniaoService.Alocacao(_reuniaoDefault);

            //Action
            Reuniao resultGet = _reuniaoService.Get(resultReuniao.Id);

            //Assert
            resultGet.Should().NotBeNull();
            resultGet.Id.Should().Be(resultReuniao.Id);
            resultGet.Should().Equals(resultReuniao);
        }
Ejemplo n.º 33
0
 public void AddToReunioes(Reuniao reuniao)
 {
     base.AddObject("Reunioes", reuniao);
 }
Ejemplo n.º 34
0
 public static Reuniao CreateReuniao(int ID, global::System.DateTime data)
 {
     Reuniao reuniao = new Reuniao();
     reuniao.Id = ID;
     reuniao.Data = data;
     return reuniao;
 }