public IActionResult Delete(string tabla, int id) { try { if (ModelState.IsValid) { //instanciamos la RN dynamic rn = CUtilsApi.GetInstance("Integrate.SisMed.Api.Services.Dal.Modelo.Rn" + tabla); if (rn == null) { return(BadRequest()); } //instanciamos la Entidad dynamic obj = CUtilsApi.GetInstance("Integrate.SisMed.Api.BusinessObjects.Ent" + tabla); if (obj == null) { return(BadRequest()); } //Verificamos que el objeto exista obj = rn.ObtenerObjeto(id); if (obj == null) { return(NotFound()); } rn.Delete(obj, true); return(new OkResult()); } return(BadRequest()); } catch (Exception exp) { var strMensaje = ""; var strCausa = ""; var strAccion = ""; var strComentario = ""; var strOrigen = ""; CUtilsApi.CargarError(exp, out strMensaje, out strCausa, out strAccion, out strComentario, out strOrigen); return(BadRequest(new { error = strMensaje, causa = strCausa, accion = strAccion, comentario = strComentario, origen = strOrigen })); } }
public IActionResult Get(string id, int idValue) { try { //instanciamos la RN dynamic rn = CUtilsApi.GetInstance("Integrate.SisMed.Api.Services.Dal.Modelo.Rn" + id); if (rn == null) { return(BadRequest()); } var result = rn.ObtenerObjeto(idValue); //var formattedCustomObject = JsonConvert.SerializeObject(result, Formatting.Indented); //return Ok(formattedCustomObject); //En Startup.cs ConfigureServices se define el JSON por defecto //KB: https://stackoverflow.com/questions/42360139/asp-net-core-return-json-with-status-code return(Ok(result)); } catch (Exception exp) { var strMensaje = ""; var strCausa = ""; var strAccion = ""; var strComentario = ""; var strOrigen = ""; CUtilsApi.CargarError(exp, out strMensaje, out strCausa, out strAccion, out strComentario, out strOrigen); return(BadRequest(new { error = strMensaje, causa = strCausa, accion = strAccion, comentario = strComentario, origen = strOrigen })); } }
public IActionResult Update(int id, [FromBody] JObject value) { try { if (value == null) { return(BadRequest()); } if (ModelState.IsValid) { dynamic jsonData = value; string nombreTabla = jsonData.nombre; JObject datos = jsonData.datos; //instanciamos la RN dynamic rn = CUtilsApi.GetInstance("Integrate.SisMed.Api.Services.Dal.Modelo.Rn" + nombreTabla); if (rn == null) { return(BadRequest()); } //instanciamos la Entidad dynamic obj = CUtilsApi.GetInstance("Integrate.SisMed.Api.BusinessObjects.Ent" + nombreTabla); if (obj == null) { return(BadRequest()); } //Verificamos que el objeto exista obj = rn.ObtenerObjeto(id); if (obj == null) { return(NotFound()); } //Apropiamos valores foreach (JProperty property in datos.Properties()) { obj.GetType().GetProperty(property.Name).SetValue(obj, rn.GetColumnType(property.Value.ToString(), property.Name.ToString()), null); } rn.Update(obj, true); return(new OkResult()); } return(BadRequest()); } catch (Exception exp) { var strMensaje = ""; var strCausa = ""; var strAccion = ""; var strComentario = ""; var strOrigen = ""; CUtilsApi.CargarError(exp, out strMensaje, out strCausa, out strAccion, out strComentario, out strOrigen); return(BadRequest(new { error = strMensaje, causa = strCausa, accion = strAccion, comentario = strComentario, origen = strOrigen })); } }