// [Productos] ------------------------- #region Productos public Producto Convert_ProductoCmd_To_Producto(ProductoCmd productoCmd) { Producto p = new Producto(); p.CodigoCatalogo = productoCmd.CodigoCatalogo; p.Nombre = productoCmd.Nombre; p.Descripcion = productoCmd.Descripcion; p.TipoProducto = productoCmd.TipoProducto; p.Proveedor = this.Convert_ProveedorCmd_To_Proveedor(null); p.Prioridad = productoCmd.Prioridad; p.SKU = productoCmd.SKU; p.CodigoProducto = productoCmd.CodigoProducto; p.iva = productoCmd.iva; p.PesoKg = productoCmd.PesoKg; p.ValorUnitario = productoCmd.ValorUnitario; p.TipoSeguimiento = productoCmd.TipoSeguimiento; p.NivelInventario = productoCmd.NivelInventario; p.NivelAdvertencia = productoCmd.NivelAdvertencia; p.Descuento = this.Convert_DescuentoCmd_To_Descuento(productoCmd.Descuentos); p.Multimedia = this.Convert_MultimediaCmd_To_Multimedia(productoCmd.Multimedia); p.Marca = productoCmd.Marca; p.Estado = productoCmd.Estado; p.EnAlmacen = productoCmd.EnAlmacen(); p.Sinonimos = productoCmd.Sinonimos; p.Calificacion = 0; p.Sinonimos = p.Sinonimos.ConvertAll(d => d.ToUpper()); return(p); }
public ProductoQuery AgregarProducto(ProductoCmd productoCmd) { ProductoQuery productoQ = null; try { Producto producto = this._utils.Convert_ProductoCmd_To_Producto(productoCmd); producto.CodigoProducto = this.GenerarCodigoProducto(producto.IndExterno); _ufwProductos.Repository <Producto>().InsertOne(producto); productoQ = this._utils.Convert_Producto_To_Query(producto); } catch (Exception e) { throw e; } return(productoQ); }
public ProductoQuery ActualizarProducto(ProductoCmd productoCmd) { ProductoQuery productoQ = null; try { Catalogo catalogo = _ufwCatalogos.Repository <Catalogo>().Find(new CatalogoSpecification(productoCmd.CodigoCatalogo)).FirstOrDefault(); if (catalogo != null) { Producto doc = _ufwProductos.Repository <Producto>().Find(new ProductoCodigoSpecification(productoCmd.CodigoProducto)).FirstOrDefault(); if (doc != null) { Producto producto = this._utils.Convert_ProductoCmd_To_Producto(productoCmd); producto.Id = doc.Id; producto.IndExterno = catalogo.IndExterno; producto.Proveedor = catalogo.Proveedor; producto.NombreCatalogo = catalogo.Nombre; _ufwProductos.Repository <Producto>().ReplaceOne(producto); productoQ = this._utils.Convert_Producto_To_Query(producto); } else { throw new Exception("El producto es inváldo"); } } else { throw new Exception("El catálogo es inváldo"); } } catch (Exception e) { throw e; } return(productoQ); }
public ProductoQuery AgregarProducto(ProductoCmd productoCmd) { ProductoQuery productoQ = null; try { Catalogo catalogo = _ufwCatalogos.Repository <Catalogo>().Find(new CatalogoSpecification(productoCmd.CodigoCatalogo)).FirstOrDefault(); if (catalogo != null) { if (_ufwProductos.Repository <Producto>().Contains(new ProductoSKUSpecification(productoCmd.SKU))) { throw new Exception("Ya existe un producto con el SKU"); } Producto producto = this._utils.Convert_ProductoCmd_To_Producto(productoCmd); producto.IndExterno = catalogo.IndExterno; producto.Proveedor = catalogo.Proveedor; producto.NombreCatalogo = catalogo.Nombre; producto.CodigoProducto = this.GenerarCodigoProducto(producto.IndExterno); _ufwProductos.Repository <Producto>().InsertOne(producto); productoQ = this._utils.Convert_Producto_To_Query(producto); //_ufwCatalogos.Commit(); } else { throw new Exception("El catálogo es inváldo"); } } catch (Exception e) { throw e; } return(productoQ); }