diff --git a/README.md b/README.md index c2e73b6..4cb9249 100644 --- a/README.md +++ b/README.md @@ -267,9 +267,11 @@ Only admin users have access to endoint Endpoint: `/api/v1/load_products/` +Only functional for users with a related company instance + For massive load of product data. -CSV headers: `id,nombre-producto,descripcion,imagen,url,precio,gastos-envio,cond-envio,descuento,stock,tags,categoria,identificadores` +CSV headers: `sku,nombre-producto,descripcion,imagen,url,precio,gastos-envio,cond-envio,descuento,stock,tags,categoria,identificadores` Only admin users have access to endoint diff --git a/datasets/products.AUREA.csv b/datasets/products.AUREA.csv index 924eb16..f29c130 100755 --- a/datasets/products.AUREA.csv +++ b/datasets/products.AUREA.csv @@ -1,4 +1,4 @@ -id,nombre-producto,descripcion,imagen,url,precio,gastos-envio,cond-envio,descuento,stock,tags,categoria,identificadores +sku,nombre-producto,descripcion,imagen,url,precio,gastos-envio,cond-envio,descuento,stock,tags,categoria,identificadores V0775M043822,Solución hidroalcohólica 100 ml spray,"Solución Hidroalcohólica 100 ml con vaporizador - spray. Todos los precios incluyen IVA, pero recuerda que según el RD 34/220 las entidades sin ánimo de lucro están exentos de IVA para este producto hasta el 30/4/2021",https://www.auriacosmetics.com/cdnassets/g-100-ml-ok_l.jpg,https://www.auriacosmetics.com/solucion-hidroalcoholica-100-ml-con-vaporizador-spray,"1,44 €","0,00 €",72horas- Envio gratuito a partir de 60 €. Importes inferiores: 10€. ,5,60000,"hidroalcohol, gel hidroalcohólico, solución hidroalcohòlica, desinfectante de manos",Salud y belleza/Cuidado personal/Cosméticos,Àuria Cosmetics V0775M133822,Solución hidroalcohólica 500 ml dosificador,"Solución Hidroal. Todos los precios incluyen IVA, pero recuerda que según el RD 34/220 las entidades sin ánimo de lucro están exentos de IVA para este producto hasta el 30/4/2021cohólica 500 ml con dosificador",https://www.auriacosmetics.com/cdnassets/g-500-ml.-dosificador-1200-1_l.jpg,https://www.auriacosmetics.com/solucion-hidroalcoholica-500-ml-con-dosificador,"3,57 €","0,00 €",72horas- Envio gratuito a partir de 60 €. Importes inferiores: 10€. ,5,39000,"hidroalcohol, gel hidroalcohólico, solución hidroalcohòlica, desinfectante de manos",Salud y belleza/Cuidado personal/Cosméticos,Àuria Cosmetics V0775M253822,Solución hidroalcohólica 1 litro dosificador,"Solución Hidroalcohólica 1 litro con dosificador. Todos los precios incluyen IVA, pero recuerda que según el RD 34/220 las entidades sin ánimo de lucro están exentos de IVA para este producto hasta el 30/4/2021",https://www.auriacosmetics.com/cdnassets/1000-ml-dosificador.png,https://www.auriacosmetics.com/solucion-hidroalcoholica-1-litro-con-dosificador,"4,83 €","0,00 €",72horas- Envio gratuito a partir de 60 €. Importes inferiores: 10€. ,5,300,"hidroalcohol, gel hidroalcohólico, solución hidroalcohòlica, desinfectante de manos",Salud y belleza/Cuidado personal/Cosméticos,Àuria Cosmetics diff --git a/datasets/test_products.csv b/datasets/test_products.csv index 68499ce..0257322 100644 --- a/datasets/test_products.csv +++ b/datasets/test_products.csv @@ -1,4 +1,4 @@ -id,nombre-producto,descripcion,imagen,url,precio,gastos-envio,cond-envio,descuento,stock,tags,categoria,identificadores +sku,nombre-producto,descripcion,imagen,url,precio,gastos-envio,cond-envio,descuento,stock,tags,categoria,identificadores ,,mi-descripcion,,coop.com,10.00,5.01,"condiciones de envio, una cosa, y la otra",4.05,1000,"color/rojo, talla/xxl", limpio, "alto, forma/redondo" ,mi-nombre,,,coop.com,10.00,5.01,"condiciones de envio, una cosa, y la otra",4.05,1000,"color/rojo, talla/xxl", limpio, "alto, forma/redondo" ,mi-nombre,mi-descripcion,,coop.com,,5.01,"condiciones de envio, una cosa, y la otra",4.05,1000,"color/rojo, talla/xxl", limpio, "alto, forma/redondo" diff --git a/products/tests.py b/products/tests.py index 2c23bc4..a4ab91f 100644 --- a/products/tests.py +++ b/products/tests.py @@ -829,6 +829,7 @@ class ProductSearchTest(TestCase): # first instance should be most recent self.assertTrue(dates[i] < dates[i+1]) + class MyProductsViewTest(APITestCase): """my_products tests """ diff --git a/products/utils.py b/products/utils.py index d0ad2e0..1690c62 100644 --- a/products/utils.py +++ b/products/utils.py @@ -206,17 +206,18 @@ def product_loader(csv_reader, user, company=None): # assemble instance data product_data = { 'company': company, - 'name': row['nombre-producto'].strip(), - 'description': row['descripcion'].strip(), + 'sku': row['sku'], + 'name': row['nombre-producto'], + 'description': row['descripcion'], 'url': row['url'].strip(), - 'price': float(row['precio'].strip().replace(',','.')), - 'shipping_cost': float(row['gastos-envio'].strip().replace(',','.')), - 'shipping_terms': row['cond-envio'].strip(), - 'discount': row['descuento'].strip(), - 'stock': row['stock'].strip(), - 'tags': row['tags'].strip(), - 'category': row['categoria'].strip(), - 'identifiers': row['identificadores'].strip(), + 'price': float(row['precio'].replace(',','.')), + 'shipping_cost': float(row['gastos-envio'].replace(',','.')), + 'shipping_terms': row['cond-envio'], + 'discount': row['descuento'], + 'stock': row['stock'], + 'tags': row['tags'], + 'category': row['categoria'], + 'identifiers': row['identificadores'], 'history': history, 'creator': user, }