diff --git a/source/app/models/main.py b/source/app/models/main.py
index 43eccdc..3ad1ce3 100644
--- a/source/app/models/main.py
+++ b/source/app/models/main.py
@@ -4048,6 +4048,20 @@ class WareHouseProduct(BaseModel):
(('warehouse', 'product'), True),
)
+ @classmethod
+ def update_exists(cls, args):
+ if args['storage'] is None:
+ return
+
+ values = dict(
+ warehouse = args['storage'],
+ product = args['product'],
+ )
+ obj, created = WareHouseProduct.get_or_create(**values)
+ obj.exists += args['cant']
+ obj.save()
+ return
+
class RangosPrecios(BaseModel):
producto = ForeignKeyField(Productos)
@@ -9718,8 +9732,12 @@ class InventoryEntries(BaseModel):
result = {'ok': False, 'msg': msg}
return result
- cant = args['cant']
+ storage = None
+ if args['warehouse']:
+ storage = args['warehouse']
+ cant = Decimal(args['cant'])
values = dict(
+ storage = storage,
product = product,
cant = cant,
)
@@ -9727,6 +9745,8 @@ class InventoryEntries(BaseModel):
msg = 'a {}'.format(obj.id)
_save_log(user.usuario, msg, 'IE')
+ WareHouseProduct.update_exists(values)
+
product.existencia += cant
product.save()
diff --git a/source/static/js/controller/products.js b/source/static/js/controller/products.js
index 3049bc5..67031c3 100644
--- a/source/static/js/controller/products.js
+++ b/source/static/js/controller/products.js
@@ -727,6 +727,7 @@ function cmd_add_inventory_save_click(id, e, node){
var product_id = $$('txt_add_id').getValue()
//~ var product_key = $$('txt_add_key').getValue()
var new_cant = $$('txt_new_cant').getValue()
+ var warehouse = $$('lst_warehouses').getValue()
if(new_cant<=0) {
msg = 'La cantidad no puede ser cero'
@@ -734,6 +735,14 @@ function cmd_add_inventory_save_click(id, e, node){
return
}
+ if($$('lst_warehouses').isVisible()){
+ if(!warehouse){
+ msg = 'Selecciona un almacen'
+ msg_error(msg)
+ return
+ }
+ }
+
msg = '¿Estas seguro de guardar esta entrada?
\
Esta acción no se puede deshacer'
@@ -745,7 +754,7 @@ function cmd_add_inventory_save_click(id, e, node){
text: msg,
callback:function(result){
if(result){
- add_product_stock(product_id, new_cant)
+ add_product_stock(product_id, new_cant, warehouse)
}
}
})
@@ -753,10 +762,11 @@ function cmd_add_inventory_save_click(id, e, node){
}
-function add_product_stock(product_id, new_cant){
+function add_product_stock(product_id, new_cant, warehouse){
var data = {
product_id: product_id,
cant: new_cant,
+ warehouse: warehouse,
}
_add_entries_inventory_manual(product_id, data)
$$('win_add_inventory').close()