public async Task <Response> InsertarCandidato([FromBody] ViewModelSeleccionPersonal viewModelSeleccionPersonal) { try { var respuesta = Existe(viewModelSeleccionPersonal); if (!respuesta.IsSuccess) { using (var transaction = await db.Database.BeginTransactionAsync()) { var candidato = new Candidato { Identificacion = viewModelSeleccionPersonal.identificacion, Nombre = viewModelSeleccionPersonal.nombres.ToString().ToUpper(), Apellido = viewModelSeleccionPersonal.Apellidos.ToString().ToUpper() }; await db.Candidato.AddAsync(candidato); //await db.SaveChangesAsync(); var candidatoConcurso = new CandidatoConcurso { IdCandidato = candidato.IdCandidato, IdPartidasFase = viewModelSeleccionPersonal.IdPartidaFase }; await db.CandidatoConcurso.AddAsync(candidatoConcurso); await db.SaveChangesAsync(); transaction.Commit(); viewModelSeleccionPersonal.IdCandidato = candidato.IdCandidato; viewModelSeleccionPersonal.IdCandidatoConcurso = candidatoConcurso.IdCandidatoConcurso; return(new Response { IsSuccess = true, Resultado = viewModelSeleccionPersonal, Message = Mensaje.GuardadoSatisfactorio }); } } return(new Response { IsSuccess = false, Message = Mensaje.ExisteRegistro, }); } catch (Exception ex) { return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }
public async Task <Response> InsertarCandidatoConcurso([FromBody] ViewModelSeleccionPersonal viewModelSeleccionPersonal) { try { var a = await db.CandidatoConcurso .Where(x => x.IdCandidato == viewModelSeleccionPersonal.IdCandidato && x.IdPartidasFase == viewModelSeleccionPersonal.IdPartidaFase ) .FirstOrDefaultAsync(); if (a != null) { return(new Response { IsSuccess = true }); } else { var candidatoConcurso = new CandidatoConcurso { IdCandidato = viewModelSeleccionPersonal.IdCandidato, IdPartidasFase = viewModelSeleccionPersonal.IdPartidaFase, Estado = 0 }; db.CandidatoConcurso.Add(candidatoConcurso); await db.SaveChangesAsync(); return(new Response { IsSuccess = true }); } } catch (Exception ex) { return(new Response { IsSuccess = false, Message = Mensaje.Error, }); } }