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 })); } }
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); }