/// <summary> /// Realiza una baja lógica de Producto /// <param name="idProducto"/>Id de Producto a eliminar /// </summary> /// <returns>Regresa un 1 en caso exitoso, 0 si ocurre algún error</returns> public async Task <int> EliminarProductoAsync(int idProducto) { //Se inicializan variables int resultado = 0; try { CtProducto objDelete = context.CtProducto.Where(o => o.PKIdProducto == idProducto).FirstOrDefault(); if (objDelete != null) { objDelete.Activo = false; await context.SaveChangesAsync(); resultado = 1; } } catch (Exception ex) { var message = $"Ocurrió un error al eliminar al Producto."; throw new IOException(message, ex); } //Devuelve resultado return(await Task.FromResult <int>(resultado)); }
/// <summary> /// Inserta un registro de Producto en base de datos /// </summary> /// <param name="Producto">Objeto de tipo Producto con la información ingresada</param> /// <returns>Variable de tipo entero indicando el identificador de Producto si se insertó correctamente</returns> public async Task <long> AgregaProductoJsonAsync(Producto producto) { long resultado = 0; try { var itemProducto = new CtProducto { SKU = producto.SKU, Descripcion = producto.Descripcion, PrecioVenta = producto.PrecioVenta, Costo = producto.Costo, Imagen = producto.Imagen, FKIdProveedor = producto.IdProveedor, FKIdCategoria = producto.IdCategoria, FKIdMarca = producto.IdMarca, FKIdUnidadMedida = producto.IdUnidadMedida, Activo = producto.Activo }; context.CtProducto.Add(itemProducto); await context.SaveChangesAsync(); resultado = itemProducto.PKIdProducto; } catch (Exception e) { var message = $"Ocurrió un error al registrar la Producto : {producto.Descripcion}"; throw new IOException(message, e); } return(resultado); }
/// <summary> /// Realiza la actualización de datos de un registro de Producto /// </summary> /// <param name="Producto">Objeto de tipo Producto con la información actualizada</param> /// <returns>Regresa el identificador del registro actualizado en caso exitoso</returns> public async Task <long> EditarProductoJsonAsync(Producto producto) { long resultado = 0; try { CtProducto objProducto = context.CtProducto.Where(x => x.PKIdProducto == producto.IdProducto).FirstOrDefault(); //objProducto.PKIdProducto = producto.IdProducto; objProducto.SKU = producto.SKU; objProducto.Descripcion = producto.Descripcion; objProducto.PrecioVenta = producto.PrecioVenta; objProducto.Costo = producto.Costo; objProducto.Imagen = producto.Imagen; objProducto.FKIdProveedor = producto.IdProveedor; objProducto.FKIdCategoria = producto.IdCategoria; objProducto.FKIdMarca = producto.IdMarca; objProducto.FKIdUnidadMedida = producto.IdUnidadMedida; objProducto.Activo = producto.Activo; await context.SaveChangesAsync(); resultado = objProducto.PKIdProducto; } catch (Exception e) { var message = $"Ocurrió un error al actualizar al Producto."; throw new IOException(message, e); } return(resultado); }