public async Task <string> Create(MiembrosGI model) { try { if (!model.ExisteEn(_db.DbSetMiembrosGI.Where(e => e.ComiteGIId == model.ComiteGIId).Select(e => e.ClavePersona).ToList(), "ClavePersona")) { _db.DbSetMiembrosGI.Add(model); await _db.SaveChangesAsync(); //Verificamos la existencia del rol evaluador GI en la base de datos var roles = await _GENContext.dbSetRolPersona.Where(e => e.ClavePersona == model.ClavePersona && e.IdRol == 1029).AsNoTracking().ToListAsync(); if (roles.Count <= 0) { RolPersona nuevo = new RolPersona(); nuevo.Estado = 1; nuevo.IdRol = 1029; nuevo.ClavePersona = model.ClavePersona; await _RolPersonaRepo.Create(nuevo); } return("Registro creado exitosamente!"); } else { return("Ya existe un registro con ese nombre."); } } catch (Exception e) { throw new Exception(e.Message, e); } }
[HttpPost][Authorize] public async Task <IHttpActionResult> Create(RolPersona obj) { try { log.Info(new MDCSet(this.ControllerContext.RouteData)); await _repository.Create(obj); return(Ok("Rol de usuario creado correctamente!")); } catch (Exception e) { log.Error(new MDCSet(this.ControllerContext.RouteData), e); return(InternalServerError(e)); } }