public FCCxCConcepto NEGOCIO_Select(int id) { try { FCCxCConcepto res = null; //inicialmente es nulo var resTemp = new DATOS_Concepto().DATOS_Select(id); if (resTemp != null) { res = new FCCxCConcepto() //lo instancia y asigna los valores { IdConcepto = resTemp.IdConcepto, DscTipo = resTemp.DscTipo, CodEstado = resTemp.CodEstado, CtaFinancieraDebito = resTemp.CtaFinancieraDebito, CtaFinancieraCredito = resTemp.CtaFinancieraCredito, UsarExpiracion = resTemp.UsarExpiracion, NumDiasExpira = resTemp.NumDiasExpira, EnviaNotificacion = resTemp.EnviaNotificacion }; } return(res); //lo retorna, sea nulo o el valor retornado por DAL } catch (Exception ex) { throw ex; } }
public List <FCCxCConcepto> NEGOCIO_SelectAll() { try { var resTemo = new DATOS_Concepto().DATOS_SelectAll().ToList(); List <FCCxCConcepto> res = new List <FCCxCConcepto>(); foreach (var r in resTemo) { FCCxCConcepto n = new FCCxCConcepto() { IdConcepto = r.IdConcepto, DscTipo = r.DscTipo, CodEstado = r.CodEstado, CtaFinancieraDebito = r.CtaFinancieraDebito, CtaFinancieraCredito = r.CtaFinancieraCredito, UsarExpiracion = r.UsarExpiracion, NumDiasExpira = r.NumDiasExpira, EnviaNotificacion = r.EnviaNotificacion }; res.Add(n); } return(res); } catch (Exception ex) { throw ex; } }
public void Concepto_Put_DebeModificarCorretamente() { // arrange var conceptoModif = new FCCxCConcepto() { IdConcepto = 20, DscTipo = "Modif " + DateTime.Now.ToShortTimeString(), CodEstado = "A", CtaFinancieraDebito = "1", UsarExpiracion = "N", NumDiasExpira = 0, EnviaNotificacion = "N" }; var ctrl = new ConceptoController(); ctrl.Request = new HttpRequestMessage(); ctrl.Configuration = new HttpConfiguration(); // act //invocar el put del controlador Api HttpResponseMessage result = ctrl.Put(conceptoModif); // assert Assert.AreNotEqual(result.StatusCode, System.Net.HttpStatusCode.InternalServerError, "Error en la inserción"); //TODO: validar que sea OK }
public void Concepto_Post_DebeInsertarCorretamente() { // arrange var conceptoNuevo = new FCCxCConcepto() { DscTipo = "Nuevo concepto csanabria", CodEstado = "A", CtaFinancieraDebito = "1", UsarExpiracion = "N", NumDiasExpira = 0, EnviaNotificacion = "N" }; var ctrl = new ConceptoController(); ctrl.Request = new HttpRequestMessage(); ctrl.Configuration = new HttpConfiguration(); // act //invocar el post del controlador Api HttpResponseMessage result = ctrl.Post(conceptoNuevo); //notas: 1. reporte de errores es pobre, negocios y datos solo retornan false si hubo error //en el api detecto error y genero un mensaje de tipo InternalServerError, pero no tengo más detalles, //no hay excepciones en las capas de datos y negocios, tuve que depurar para ver que era null exception //2. idealmente por buen diseño el api debería devolver un StatusCode.OK con el Id del nuevo registro creado, pero //la implementación de las capas no lo permiten // assert Assert.AreNotEqual(result.StatusCode, System.Net.HttpStatusCode.InternalServerError, "Error en la inserción"); //TODO: validar que sea OK }
// PUT: api/Concepto/ verbo Put y {CxCConcepto} en el header public HttpResponseMessage Put(FCCxCConcepto conceptoModif) { try { using (var negocio = new NEGOCIO_Concepto()) { var resNegocios = negocio.NEGOCIO_update(conceptoModif); //mensaje Http de respuesta del Api HttpResponseMessage res = null; if (resNegocios) { //crear respuesta de ok res = new HttpResponseMessage(HttpStatusCode.OK); } else { //crear respuesta de error res = new HttpResponseMessage(HttpStatusCode.InternalServerError); } return(res); } } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex)); } }
// POST: api/Concepto public HttpResponseMessage Post([FromBody] FCCxCConcepto nuevoConcepto) { try { using (var negocio = new NEGOCIO_Concepto()) { var resNegocios = negocio.NEGOCIO_insertar(nuevoConcepto); //mensaje Http de respuesta del Api HttpResponseMessage res = null; if (resNegocios) { //crear respuesta de ok res = new HttpResponseMessage(HttpStatusCode.OK); //no se puede obtener el Id del nuevo registro pues retorna un bool //var message = Request.CreateResponse(HttpStatusCode.Created, nuevoConcepto.IdConcepto); //message.Headers.Location = new Uri(Request.RequestUri + // nuevoConcepto.IdConcepto.ToString()); } else { //crear respuesta de error res = new HttpResponseMessage(HttpStatusCode.InternalServerError); } return(res); } } catch (Exception ex) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex)); } }
public bool NEGOCIO_update(FCCxCConcepto obj) { try { var res = new DATOS_Concepto().DATOS_update(obj); return(res); } catch (Exception ex) { throw ex; } }