/// <summary> /// Metodo que sirve para Obtener la lista de tipo Producto /// </summary> /// <param name="pProducto">Filtro de tipo Producto</param> /// <returns></returns> public RespuestaProducto ObtenerProducto(Producto pProducto) { var respuesta = new RespuestaProducto(); try { var respObtenerProducto = dal.ObtenerProducto(pProducto); respuesta.Producto = respObtenerProducto.ListaProducto != null || respObtenerProducto.ListaProducto.Count > 0 ? respObtenerProducto.ListaProducto.FirstOrDefault() : null; return(respuesta.Producto != null ? new RespuestaProducto { Respuesta = new Respuesta(string.Empty, Respuesta.CodExitoso), Producto = respuesta.Producto } : new RespuestaProducto { Respuesta = new Respuesta(Respuestas.GI03, Respuesta.CodExitoso), Producto = new Producto() }); } catch (Exception ex) { ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, pProducto); BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.ErrorExcepcion, TraceData.Utilities.Enums.TypeTrace.Exception, ex, MethodBase.GetCurrentMethod().Name); return(new RespuestaProducto { Respuesta = new Respuesta(TipoRespuesta.Excepcion, ex.Message, Respuesta.CodNoValido) }); } }
/// <summary> /// Metodo para insertar un valor de tipo Producto /// </summary> /// <param name="pProducto"></param> /// <returns></returns> public RespuestaProducto InsertarProducto(Producto pProducto) { var respuesta = new RespuestaProducto(); try { //Registra en bd respuesta = dal.InsertarProducto(pProducto); //Registra bitacora BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.RespuestaInsertar, TraceData.Utilities.Enums.TypeTrace.Info, respuesta, MethodBase.GetCurrentMethod().Name); return(respuesta); } catch (Exception ex) { ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, pProducto); BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.ErrorExcepcion, TraceData.Utilities.Enums.TypeTrace.Exception, ex, MethodBase.GetCurrentMethod().Name); return(new RespuestaProducto { Respuesta = new Respuesta(TipoRespuesta.Excepcion, ex.Message, Respuesta.CodNoValido) }); } }
public JsonResult BuscarProducto(string codigoBarra) { var respuesta = new RespuestaProducto(); try { //****envíamos a buscar el producto respuesta = servicio.ObtenerProductoPorCodigo(codigoBarra); //**** //respuesta exitosa return(Json(new { CodError = respuesta.Respuesta.CodMensaje, Data = respuesta.Producto })); } catch (Exception ex) { //registra error ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, codigoBarra); //respuesta error return(Json(new { CodError = Respuesta.CodNoValido })); } //prueba }
/// <summary> /// Metodo que se encarga de eliminar o desactivar un registro de la tabla Producto /// </summary> /// <param name="pProducto"></param> /// <returns></returns> public RespuestaProducto EliminarProducto(Producto pProducto) { int filasAfectadas; RespuestaProducto respuesta = new RespuestaProducto(); //STRORE PROCEDURE DEFINITION DbCommand dbCommand = database1.GetStoredProcCommand(defaultSchema + StoredProcedure.EliminarProducto); //IN PARAMETERS database1.AddInParameter(dbCommand, parameterName(Producto.idProperty), DbType.Int32, pProducto.Id); //OUT PARAMETERS database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.codErrorProperty), DbType.String, Constantes.BaseDatos.codErrorTamano); database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.mensajeProperty), DbType.String, Constantes.BaseDatos.mensajeTamano); filasAfectadas = database1.ExecuteNonQuery(dbCommand); //ERROR CODE AND MESSAGE COLLECTOR respuesta.Respuesta = new Respuesta(); respuesta.Respuesta.CodMensaje = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.codErrorProperty))); respuesta.Respuesta.Mensaje = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.mensajeProperty))); if (respuesta.Respuesta.CodMensaje == Respuesta.CodExitoso) { respuesta.Respuesta = new Respuesta(Mensajes.bmDeleteProducto, respuesta.Respuesta.CodMensaje); } return(respuesta); }
/// <summary> /// Inserta informacion en la tabla Producto /// </summary> /// <param name="pProducto"></param> /// <returns></returns> public RespuestaProducto InsertarProducto(Producto pProducto) { int filasAfectadas; RespuestaProducto respuesta = new RespuestaProducto(); //STRORE PROCEDURE DEFINITION DbCommand dbCommand = database1.GetStoredProcCommand(defaultSchema + StoredProcedure.InsertarProducto); //IN PARAMETERS database1.AddInParameter(dbCommand, parameterName(Producto.idEntidadProperty), DbType.Int64, pProducto.IdEntidad); database1.AddInParameter(dbCommand, parameterName(Producto.idProveedorProperty), DbType.Int32, pProducto.IdProveedor); database1.AddInParameter(dbCommand, parameterName(Producto.idCategoriaProperty), DbType.Int32, pProducto.IdCategoria); database1.AddInParameter(dbCommand, parameterName(Producto.nombreProperty), DbType.String, pProducto.Nombre); database1.AddInParameter(dbCommand, parameterName(Producto.precioCostoProperty), DbType.Decimal, pProducto.PrecioCosto); database1.AddInParameter(dbCommand, parameterName(Producto.precioVentaProperty), DbType.Decimal, pProducto.PrecioVenta); database1.AddInParameter(dbCommand, parameterName(Producto.utilidadProperty), DbType.Decimal, pProducto.Utilidad); database1.AddInParameter(dbCommand, parameterName(Producto.impuestoProperty), DbType.Decimal, pProducto.Impuesto); database1.AddInParameter(dbCommand, parameterName(Producto.stockProperty), DbType.Int32, pProducto.Stock); database1.AddInParameter(dbCommand, parameterName(Producto.existenciaProperty), DbType.Int32, pProducto.Existencia); database1.AddInParameter(dbCommand, parameterName(Producto.descuentoProperty), DbType.Decimal, pProducto.Descuento); database1.AddInParameter(dbCommand, parameterName(Producto.codigoBarraProperty), DbType.String, pProducto.CodigoBarra); database1.AddInParameter(dbCommand, parameterName(BaseEntidad.usrCreacionProperty), DbType.String, pProducto.UsrCreacion); //OUT PARAMETERS database1.AddOutParameter(dbCommand, parameterName(Producto.idProperty), DbType.Int32, 32); database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.codErrorProperty), DbType.String, Constantes.BaseDatos.codErrorTamano); database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.mensajeProperty), DbType.String, Constantes.BaseDatos.mensajeTamano); //EXECUTE PROCEDURE filasAfectadas = database1.ExecuteNonQuery(dbCommand); //ERROR CODE AND MESSAGE COLLECTOR pProducto.Id = DBHelper.ReadNullSafeInt(database1.GetParameterValue(dbCommand, parameterName(Producto.idProperty))); respuesta.Respuesta = new Respuesta(); respuesta.Respuesta.CodMensaje = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.codErrorProperty))); respuesta.Respuesta.Mensaje = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.mensajeProperty))); respuesta.Producto = pProducto; if (respuesta.Respuesta.CodMensaje == Respuesta.CodExitoso) { respuesta.Respuesta = new Respuesta(Mensajes.bmCreateProducto, respuesta.Respuesta.CodMensaje); } return(respuesta); }
/// <summary> /// Obtiene producto por código barras /// </summary> /// <param name="codigoBarra"></param> /// <returns></returns> public RespuestaProducto ObtenerProductoPorCodigo(string codigoBarra) { var respuesta = new RespuestaProducto(); try { using (var servicio = new HttpClient()) { //seteamos la url base donde se encuentra publicado el web api servicio.BaseAddress = new Uri(urlBase); //le pasamos los parametros por query string string paramMetodo = $"Productos/ObtenerPorCodigo?codigoBarra={codigoBarra}"; //consumimos el método del web api var respProducto = servicio.GetAsync(paramMetodo); //esperamos la respuesta respProducto.Wait(); //obtenemos el resultado var result = respProducto.Result; //validamos que todo fue correcto if (result.IsSuccessStatusCode) { //obtenemos los datos respuesta = result.Content.ReadAsAsync <RespuestaProducto>().Result; } else { //ocurrió un erro respuesta.Respuesta = new Respuesta(Respuesta.CodError, "Error de comunicación"); } } } catch (Exception ex) { //ocurrió una exepción respuesta.Respuesta = new Respuesta(Respuesta.CodNoValido); } return(respuesta); }