Inventario: campo de precio de venta editable (faltaba en la UI)
El modelo tenia el campo price y el POS lo usa para cobrar, pero ni el formulario de alta lo capturaba ni existia modal de edicion: los 170 articulos tenian precio en 0 y recepcion tecleaba el precio a mano en cada venta. - Backend: inventory_create acepta price; inventory_update lo permite entre los campos editables (con conversion float). - Frontend: columna 'Precio venta' en la tabla, campo en el alta y modal nuevo 'Editar articulo' (nombre, precio, costo, SKU, categoria, unidad, niveles y notas). La existencia sigue cambiando solo via Ajustar para dejar registro del movimiento.
This commit is contained in:
@@ -6426,6 +6426,7 @@ class SkeenFrontendController(http.Controller):
|
||||
'qty_optimal': float(data.get('qty_optimal', 0) or 0),
|
||||
'qty_min': float(data.get('qty_min', 0) or 0),
|
||||
'cost': float(data.get('cost', 0) or 0),
|
||||
'price': float(data.get('price', 0) or 0),
|
||||
'expiry_date': data.get('expiry_date') or False,
|
||||
'notes': data.get('notes', ''),
|
||||
}
|
||||
@@ -6444,12 +6445,12 @@ class SkeenFrontendController(http.Controller):
|
||||
return json_response({'status': 'error', 'message': 'Item no encontrado'}, 404)
|
||||
data = _parse_json_body()
|
||||
allowed = ['name', 'kind', 'sku', 'category', 'unit', 'qty_optimal', 'qty_min',
|
||||
'cost', 'expiry_date', 'notes', 'active', 'genera_monedero']
|
||||
'cost', 'price', 'expiry_date', 'notes', 'active', 'genera_monedero']
|
||||
vals = {}
|
||||
for k in allowed:
|
||||
if k in data:
|
||||
vals[k] = data[k]
|
||||
for f in ('qty_optimal', 'qty_min', 'cost'):
|
||||
for f in ('qty_optimal', 'qty_min', 'cost', 'price'):
|
||||
if f in vals:
|
||||
vals[f] = float(vals[f] or 0)
|
||||
item.write(vals)
|
||||
|
||||
Reference in New Issue
Block a user