public async Task <IActionResult> RegistrarKeyword([FromBody] List <GuardarKeywordResource> resources) { foreach (var resource in resources) { var keyword = _mapper.Map <GuardarKeywordResource, Keyword>(resource); var result = await _palabrasClavesUseCase.RegistrarKeyword(keyword); if (!result.Success) { return(BadRequest(new ErrorResource(result.Message))); } } return(Ok(new { mensaje = "Guardado satisfactoriamente" })); }
public async Task <IActionResult> RegistrarProyecto([FromBody] Data data) { if (data.Proyecto != null && data.Paper != null) { MappingData(data); PaperResponse resultPaper = await _paperUseCase.RegistrarPaper(_paper); if (!resultPaper.Success) { return(BadRequest(new ErrorResource(resultPaper.Message))); } else { _proyecto.IdPaper = resultPaper.Resource.IdPaper; ProyectoResponse resultProyecto = await _proyectoUseCase.RegistrarProyecto(_proyecto); if (!resultProyecto.Success) { return(BadRequest(new ErrorResource(resultProyecto.Message))); } else { GuardarDocumento(data.Proyecto, data.Doc); if (data.Keywords != null) { foreach (var keyword in _keywords) { var result = await _palabrasClavesUseCase.RegistrarKeyword(keyword); if (!result.Success) { return(BadRequest(new ErrorResource(result.Message))); } _proyectoKeywords.Add(new ProyectoKeyword { IdKeyword = result.Resource.IdKeyword }); } } foreach (var proyectoKeyword in _proyectoKeywords) { proyectoKeyword.IdProyecto = resultProyecto.Resource.IdProyecto; var result = await _proyectoKeywordUseCase.RegistrarProyectoKeyword(proyectoKeyword); if (!result.Success) { return(BadRequest(new ErrorResource(result.Message))); } } if (data.Autores.Count != 0) { foreach (var autor in _autores) { var result = await _autorUseCase.RegistrarAutor(autor); if (!result.Success) { return(BadRequest(new ErrorResource(result.Message))); } _proyectoAutores.Add(new ProyectoAutor { IdAutor = result.Resource.IdAutor }); } } foreach (var proyectoAutor in _proyectoAutores) { proyectoAutor.IdProyecto = resultProyecto.Resource.IdProyecto; var result = await _proyectoAutorUseCase.RegistrarProyectoAutor(proyectoAutor); if (!result.Success) { return(BadRequest(new ErrorResource(result.Message))); } } return(Ok(new { mensaje = "Guardado." })); } } } else { BadRequest(new ErrorResource("Faltan datos.")); } return(Ok()); }