public IHttpActionResult PutParticipanteEvento(int id, ParticipanteEvento participanteEvento) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != participanteEvento.EventoID) { return(BadRequest()); } db.Entry(participanteEvento).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!ParticipanteEventoExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult PostParticipanteEvento(ParticipanteEvento participanteEvento) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.ParticipanteEvento.Add(participanteEvento); try { db.SaveChanges(); } catch (DbUpdateException) { if (ParticipanteEventoExists(participanteEvento.EventoID)) { return(Conflict()); } else { throw; } } return(CreatedAtRoute("DefaultApi", new { id = participanteEvento.EventoID }, participanteEvento)); }
public static void Seed(this ModelBuilder modelBuilder) { //Funcionario var geovane = new Funcionario("Geovane Paz", "*****@*****.**", "Dev .Net", "TI"); var jonas = new Funcionario("Jonas", "*****@*****.**", "Dev .Net", "TI"); var rodrigo = new Funcionario("Rodrigo", "*****@*****.**", "Dev .Net", "TI"); var roger = new Funcionario("Roger", "*****@*****.**", "Dev .Net", "TI"); modelBuilder.Entity <Funcionario>().HasData(geovane, jonas, rodrigo, roger); //convidado var deise = new Convidado(geovane.Id, "Deise - Irmã Geovane", "*****@*****.**"); var maria = new Convidado(jonas.Id, "Maria - Namorada Jonas", "*****@*****.**"); modelBuilder.Entity <Convidado>().HasData(maria, deise); //Evento var chursas = new Evento("Churras ano que vem", DateTime.Now.AddDays(365), 100, 100); modelBuilder.Entity <Evento>().HasData(chursas); //ParicipanteEvento var participante1 = new ParticipanteEvento(chursas.Id, geovane.Id, deise.Id, 20, 20, true, true); var participante2 = new ParticipanteEvento(chursas.Id, jonas.Id, maria.Id, 20, 0, false, false); var participante3 = new ParticipanteEvento(chursas.Id, rodrigo.Id, null, 10, 10, false, true); modelBuilder.Entity <ParticipanteEvento>().HasData(participante1, participante2, participante3); }
public async Task <Guid> AdicionarParticipanteAsync(ParticipanteEventoRequest request) { ParticipanteEvento model = ConverterParticipanteParaModel(request); ValidacoesParticipanteEvento(model); await _repository.InsertParticipantes(model); return(model.Id); }
/// <summary> /// Busca Participante. /// Caso não encontre, retorna Exception. /// </summary> /// <param name="participanteId"></param> private ParticipanteEvento ObterParticipante(Guid participanteId) { ParticipanteEvento participante = _repository.ObterParticipante(participanteId).Result; if (participante == null) { throw new DomainException("Participante não encontrado."); } return(participante); }
public ActionResult DeleteConfirmed(int id) { if (User.Identity.IsAuthenticated) { ParticipanteEvento participanteEvento = db.ParticipanteEventoes.Find(id); db.ParticipanteEventoes.Remove(participanteEvento); db.SaveChanges(); } return(RedirectToAction("Index")); }
public async Task <ParticipanteEvento> InsertParticipantes(ParticipanteEvento entity, bool autoCommit = true) { await _context.ParticipanteEvento.AddAsync(entity); if (autoCommit) { await _context.SaveChangesAsync(); } return(entity); }
public IHttpActionResult GetParticipanteEvento(int id) { ParticipanteEvento participanteEvento = db.ParticipanteEvento.Find(id); if (participanteEvento == null) { return(NotFound()); } return(Ok(participanteEvento)); }
public string InscricaoEvento(InscricaoParticipanteEvento model) { try { var evento = Db.Evento.Find(model.EventoId); var eventoAluno = Db.ParticipanteEvento.Where(x => x.ParticipanteId == model.ParticipanteId).ToList(); if (evento == null) { throw new Exception("Evento não encotrado."); } else if (evento.NumeroVagas == 0) { throw new Exception("Numero de vagas esgotadas"); } else if (evento.Cancelado == true) { throw new Exception("Evento cancelado, nâo e possivel realizar a inscrição."); } foreach (var item in eventoAluno) { if (item.Evento.DataInicio == evento.DataInicio) { throw new Exception("Não e possivel realizar a inscrição em eventos que occoram na mesma hora."); } } string codigo = CodigoUnico(); ParticipanteEvento alunoEvento = new ParticipanteEvento() { InscricaoPrevia = true, ConfirmacaoPresenca = false, ParticipanteId = model.ParticipanteId, EventoId = model.EventoId, CodigoValidacao = codigo }; evento.NumeroVagas = evento.NumeroVagas - 1; Db.ParticipanteEvento.Add(alunoEvento); Db.SaveChanges(); return("OK"); } catch (Exception e) { return(e.Message); } }
public ActionResult Edit([Bind(Include = "ParticipanteEventoId,PartcipanteNomeCompleto,ParticipanteRg,ParticipanteEmail,ParticipanteTelefone,ParticipanteIdade,IgrejaId,EventoId")] ParticipanteEvento participanteEvento) { if (ModelState.IsValid && User.Identity.IsAuthenticated) { participanteEvento.UserId = dbUser.Users.Where(x => x.UserName.Equals(User.Identity.Name)).FirstOrDefault().Id; db.Entry(participanteEvento).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.EventoId = new SelectList(db.Eventoes, "EventoId", "EventoDescricao", participanteEvento.EventoId); ViewBag.IgrejaId = new SelectList(db.Igrejas, "IgrejaId", "IgrejaDescricao", participanteEvento.IgrejaId); return(View(participanteEvento)); }
// GET: ParticipanteEventoes/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ParticipanteEvento participanteEvento = db.ParticipanteEventoes.Find(id); if (participanteEvento == null) { return(HttpNotFound()); } return(View(participanteEvento)); }
public IHttpActionResult DeleteParticipanteEvento(int id) { ParticipanteEvento participanteEvento = db.ParticipanteEvento.Find(id); if (participanteEvento == null) { return(NotFound()); } db.ParticipanteEvento.Remove(participanteEvento); db.SaveChanges(); return(Ok(participanteEvento)); }
/// <summary> /// Faz validações sobre a regra de inserção do participante no evento. /// caso tenha erro, retorna Exception /// </summary> /// <param name="model"></param> private void ValidacoesParticipanteEvento(ParticipanteEvento model) { ValidaSeExisteEvento(model.EventoId); ValidaSeExisteFuncionario(model.FuncionarioId); if (model.ConvidadoId.HasValue) { ValidaSeExisteConvidado(model.ConvidadoId.Value); } ValidaFuncionarioNovento(model.FuncionarioId, model.EventoId); if (model.ConvidadoId.HasValue) { ValidaConvidadoNoEvento(model.ConvidadoId.Value, model.EventoId); } }
// GET: ParticipanteEventoes/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ParticipanteEvento participanteEvento = db.ParticipanteEventoes.Find(id); if (participanteEvento == null) { return(HttpNotFound()); } ViewBag.EventoId = new SelectList(db.Eventoes, "EventoId", "EventoDescricao", participanteEvento.EventoId); ViewBag.IgrejaId = new SelectList(db.Igrejas, "IgrejaId", "IgrejaDescricao", participanteEvento.IgrejaId); return(View(participanteEvento)); }
public void RemoverConvidado_InserindoValoresValidos_RetornaSucesso() { // Arrange var osDoisBebendo = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: Guid.NewGuid(), valorComida: 20, valorBebida: 20, convidadoComBebida: true, funcionarioComBebida: true ); var convidadoBebendo = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: Guid.NewGuid(), valorComida: 20, valorBebida: 10, convidadoComBebida: true, funcionarioComBebida: false ); var funcionarioBebendo = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: Guid.NewGuid(), valorComida: 20, valorBebida: 10, convidadoComBebida: false, funcionarioComBebida: true ); // Act osDoisBebendo.RemoverConvidado(); convidadoBebendo.RemoverConvidado(); funcionarioBebendo.RemoverConvidado(); //Assert Assert.True(osDoisBebendo.ConvidadoId == null && osDoisBebendo.ValorComida == 10 && osDoisBebendo.ValorBebida == 10); Assert.True(convidadoBebendo.ConvidadoId == null && convidadoBebendo.ValorComida == 10 && convidadoBebendo.ValorBebida == 0); Assert.True(funcionarioBebendo.ConvidadoId == null && funcionarioBebendo.ValorComida == 10 && funcionarioBebendo.ValorBebida == 10); }
public ActionResult Create([Bind(Include = "PartcipanteNomeCompleto,ParticipanteRg,ParticipanteEmail,ParticipanteTelefone,ParticipanteIdade,IgrejaId,EventoId")] ParticipanteEvento participanteEvento) { if (ModelState.IsValid && User.Identity.IsAuthenticated) { if (db.Eventoes.Where(x => x.EventoId == participanteEvento.EventoId).FirstOrDefault().EventoLimitePessoas <= db.ParticipanteEventoes.Count()) { new NotImplementedException("A quantidade de pessoas limite para o evento foi alcançada! Não é possivel cadastrar mais!"); } else { participanteEvento.UserId = dbUser.Users.Where(x => x.UserName.Equals(User.Identity.Name)).FirstOrDefault().Id; db.ParticipanteEventoes.Add(participanteEvento); db.SaveChanges(); return(RedirectToAction("Index")); } } ViewBag.EventoId = new SelectList(db.Eventoes, "EventoId", "EventoDescricao", participanteEvento.EventoId); ViewBag.IgrejaId = new SelectList(db.Igrejas, "IgrejaId", "IgrejaDescricao", participanteEvento.IgrejaId); return(View(participanteEvento)); }
public void Construtor_InserindoValoresValidos_RetornaSucesso() { // Arrange & Act var comConvidao = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: Guid.NewGuid(), valorComida: 20, valorBebida: 20, convidadoComBebida: true, funcionarioComBebida: true ); var comConvidaoSemBebida = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: Guid.NewGuid(), valorComida: 20, valorBebida: 0, convidadoComBebida: false, funcionarioComBebida: false ); var apenasConvidadoComBebida = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: Guid.NewGuid(), valorComida: 20, valorBebida: 10, convidadoComBebida: true, funcionarioComBebida: false ); var apenasFuncionarioComBebida = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: Guid.NewGuid(), valorComida: 20, valorBebida: 10, convidadoComBebida: false, funcionarioComBebida: true ); var semConvidado = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: null, valorComida: 10, valorBebida: 0, convidadoComBebida: false, funcionarioComBebida: false ); var semConvidadoComBebida = new ParticipanteEvento ( eventoId: Guid.NewGuid(), funcionarioId: Guid.NewGuid(), convidadoId: null, valorComida: 10, valorBebida: 10, convidadoComBebida: true, funcionarioComBebida: false ); //Assert Assert.NotNull(comConvidao); Assert.NotNull(comConvidaoSemBebida); Assert.NotNull(apenasConvidadoComBebida); Assert.NotNull(apenasFuncionarioComBebida); Assert.NotNull(semConvidado); Assert.NotNull(semConvidadoComBebida); }
public async Task RemoverParticipante(ParticipanteEvento participante) { _context.ParticipanteEvento.Remove(participante); await _context.SaveChangesAsync(); }
public async Task AtualizarParticipante(ParticipanteEvento participante) { _context.ParticipanteEvento.Update(participante); await _context.SaveChangesAsync(); }