Пример #1
0
 public ActionResult Post(VotacionWrapper entity)
 {
     try
     {
         var rta = this._votacionService.AddVotacion(entity);
         if (rta)
         {
             return(Ok(new { status = true, message = rta }));
         }
         else
         {
             return(BadRequest(new { status = false, message = "Error creando el objeto" }));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(new { status = true, message = ex.Message }));
     }
 }
Пример #2
0
        public Boolean AddVotacion(VotacionWrapper entity)
        {
            var registro = false;

            try
            {
                using (var transaction = this._applicationDBContext.Database.BeginTransaction())
                {
                    try
                    {
                        entity.Votacion.fechaCreacion  = DateTime.Now;
                        entity.Votacion.fechaEdicion   = DateTime.Now;
                        entity.Votacion.Id             = Guid.NewGuid();
                        entity.Votacion.EstadoRegistro = Data.Enums.HelpConstantes.EstadoRegistro.Activo;
                        entity.Votacion.Estado         = Data.Enums.HelpConstantes.EstadoVotacion.Abierta;
                        var votantes = (from v in entity.Votantes
                                        select new VotacionVotanteEntity
                        {
                            Id = Guid.NewGuid(),
                            IdVotacion = entity.Votacion.Id,
                            IdVotante = Guid.Parse(v),
                            ///////////////////////////////////////
                            EstadoRegistro = Data.Enums.HelpConstantes.EstadoRegistro.Activo,
                            fechaCreacion = DateTime.Now,
                            fechaEdicion = DateTime.Now,
                        }
                                        ).ToList();

                        var candidatos = (from c in entity.Candidatos
                                          select new VotacionCandidatoEntity
                        {
                            Id = Guid.NewGuid(),
                            IdVotacion = entity.Votacion.Id,
                            IdCandidato = Guid.Parse(c),
                            ///////////////////////////////////////
                            EstadoRegistro = Data.Enums.HelpConstantes.EstadoRegistro.Activo,
                            fechaCreacion = DateTime.Now,
                            fechaEdicion = DateTime.Now,
                        }
                                          ).ToList();

                        this._applicationDBContext.Add(entity.Votacion);
                        this._applicationDBContext.AddRange(votantes);
                        this._applicationDBContext.AddRange(candidatos);


                        this._applicationDBContext.SaveChanges();


                        transaction.Commit();
                        registro = true;
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        throw new Exception("hubo un error guardando el registro=>" + ex.Message);
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(registro);
        }