forked from elmau/empresa-libre
Add product by warehouse
This commit is contained in:
parent
be75abeb54
commit
61a8937eb3
|
@ -4048,6 +4048,20 @@ class WareHouseProduct(BaseModel):
|
||||||
(('warehouse', 'product'), True),
|
(('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):
|
class RangosPrecios(BaseModel):
|
||||||
producto = ForeignKeyField(Productos)
|
producto = ForeignKeyField(Productos)
|
||||||
|
@ -9718,8 +9732,12 @@ class InventoryEntries(BaseModel):
|
||||||
result = {'ok': False, 'msg': msg}
|
result = {'ok': False, 'msg': msg}
|
||||||
return result
|
return result
|
||||||
|
|
||||||
cant = args['cant']
|
storage = None
|
||||||
|
if args['warehouse']:
|
||||||
|
storage = args['warehouse']
|
||||||
|
cant = Decimal(args['cant'])
|
||||||
values = dict(
|
values = dict(
|
||||||
|
storage = storage,
|
||||||
product = product,
|
product = product,
|
||||||
cant = cant,
|
cant = cant,
|
||||||
)
|
)
|
||||||
|
@ -9727,6 +9745,8 @@ class InventoryEntries(BaseModel):
|
||||||
msg = 'a {}'.format(obj.id)
|
msg = 'a {}'.format(obj.id)
|
||||||
_save_log(user.usuario, msg, 'IE')
|
_save_log(user.usuario, msg, 'IE')
|
||||||
|
|
||||||
|
WareHouseProduct.update_exists(values)
|
||||||
|
|
||||||
product.existencia += cant
|
product.existencia += cant
|
||||||
product.save()
|
product.save()
|
||||||
|
|
||||||
|
|
|
@ -727,6 +727,7 @@ function cmd_add_inventory_save_click(id, e, node){
|
||||||
var product_id = $$('txt_add_id').getValue()
|
var product_id = $$('txt_add_id').getValue()
|
||||||
//~ var product_key = $$('txt_add_key').getValue()
|
//~ var product_key = $$('txt_add_key').getValue()
|
||||||
var new_cant = $$('txt_new_cant').getValue()
|
var new_cant = $$('txt_new_cant').getValue()
|
||||||
|
var warehouse = $$('lst_warehouses').getValue()
|
||||||
|
|
||||||
if(new_cant<=0) {
|
if(new_cant<=0) {
|
||||||
msg = 'La cantidad no puede ser cero'
|
msg = 'La cantidad no puede ser cero'
|
||||||
|
@ -734,6 +735,14 @@ function cmd_add_inventory_save_click(id, e, node){
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($$('lst_warehouses').isVisible()){
|
||||||
|
if(!warehouse){
|
||||||
|
msg = 'Selecciona un almacen'
|
||||||
|
msg_error(msg)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
msg = '¿Estas seguro de guardar esta entrada? <br/><br/>\
|
msg = '¿Estas seguro de guardar esta entrada? <br/><br/>\
|
||||||
Esta acción no se puede deshacer'
|
Esta acción no se puede deshacer'
|
||||||
|
|
||||||
|
@ -745,7 +754,7 @@ function cmd_add_inventory_save_click(id, e, node){
|
||||||
text: msg,
|
text: msg,
|
||||||
callback:function(result){
|
callback:function(result){
|
||||||
if(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 = {
|
var data = {
|
||||||
product_id: product_id,
|
product_id: product_id,
|
||||||
cant: new_cant,
|
cant: new_cant,
|
||||||
|
warehouse: warehouse,
|
||||||
}
|
}
|
||||||
_add_entries_inventory_manual(product_id, data)
|
_add_entries_inventory_manual(product_id, data)
|
||||||
$$('win_add_inventory').close()
|
$$('win_add_inventory').close()
|
||||||
|
|
Loading…
Reference in New Issue