Mostrar unidad predeterminada en productos

This commit is contained in:
Mauricio Baeza 2018-02-24 20:04:44 -06:00
parent 900176a13b
commit 2d45a8258f
3 changed files with 44 additions and 29 deletions

View File

@ -3015,7 +3015,8 @@ class Productos(BaseModel):
Productos.clave, Productos.clave,
Productos.descripcion, Productos.descripcion,
SATUnidades.name.alias('unidad'), SATUnidades.name.alias('unidad'),
Productos.valor_unitario) Productos.valor_unitario,
Productos.existencia)
.join(SATUnidades) .join(SATUnidades)
.dicts() .dicts()
) )

View File

@ -1,3 +1,26 @@
var cfg_products = new Object()
function products_default_config(){
webix.ajax().get('/config', {'fields': 'productos'}, {
error: function(text, data, xhr) {
msg = 'Error al consultar'
msg_error(msg)
},
success: function(text, data, xhr) {
var values = data.json()
cfg_products['inventario'] = values.chk_llevar_inventario
cfg_products['predial'] = values.chk_config_cuenta_predial
cfg_products['codigo_barras'] = values.chk_config_codigo_barras
cfg_products['con_impuestos'] = values.chk_config_precio_con_impuestos
cfg_products['default_unit'] = values.default_unidad
cfg_products['default_tax'] = values.default_tax
if(cfg_products['inventario']){
$$('grid_products').showColumn('existencia')
}
}
})
}
var products_controllers = { var products_controllers = {
@ -14,31 +37,18 @@ var products_controllers = {
$$('precio_con_impuestos').attachEvent('onTimedKeyPress', precio_con_impuestos_key_up); $$('precio_con_impuestos').attachEvent('onTimedKeyPress', precio_con_impuestos_key_up);
$$("chk_inventario").attachEvent("onChange", chk_inventario_change) $$("chk_inventario").attachEvent("onChange", chk_inventario_change)
$$('grid_products').attachEvent('onItemDblClick', cmd_edit_product_click) $$('grid_products').attachEvent('onItemDblClick', cmd_edit_product_click)
products_default_config()
} }
} }
function configurar_productos(is_new){ function configurar_producto(){
webix.ajax().get('/config', {'fields': 'productos'}, { show('cuenta_predial', cfg_products['predial'])
error: function(text, data, xhr) { show('codigo_barras', cfg_products['codigo_barras'])
msg = 'Error al consultar' show('precio_con_impuestos', cfg_products['con_impuestos'])
msg_error(msg) show('chk_inventario', cfg_products['inventario'])
}, show('txt_existencia', cfg_products['inventario'])
success: function(text, data, xhr) { show('txt_minimo', cfg_products['inventario'])
var values = data.json()
//~ showvar(values)
show('cuenta_predial', values.chk_config_cuenta_predial)
show('codigo_barras', values.chk_config_codigo_barras)
show('precio_con_impuestos', values.chk_config_precio_con_impuestos)
show('chk_inventario', values.chk_llevar_inventario)
show('txt_existencia', values.chk_llevar_inventario)
show('txt_minimo', values.chk_llevar_inventario)
$$('unidad').setValue(values.default_unidad)
if(is_new){
$$('grid_product_taxes').select(values.default_tax)
}
}
})
} }
@ -70,21 +80,24 @@ function get_products(){
function cmd_new_product_click(id, e, node){ function cmd_new_product_click(id, e, node){
get_taxes() get_taxes()
configurar_productos(true) $$('unidad').getList().load('/values/unidades')
configurar_producto()
$$('form_product').setValues({ $$('form_product').setValues({
id: 0, es_activo_producto: true}) id: 0, es_activo_producto: true})
add_config({'key': 'id_product', 'value': ''}) add_config({'key': 'id_product', 'value': ''})
get_new_key() get_new_key()
get_categorias() get_categorias()
$$('unidad').setValue(cfg_products['default_unit'])
$$('grid_product_taxes').select(cfg_products['default_tax'])
$$('grid_products').clearSelection() $$('grid_products').clearSelection()
$$('unidad').getList().load('/values/unidades')
$$("multi_products").setValue("product_new") $$("multi_products").setValue("product_new")
} }
function cmd_edit_product_click(){ function cmd_edit_product_click(){
get_taxes() get_taxes()
configurar_productos(false) $$('unidad').getList().load('/values/unidades')
configurar_producto()
var grid = $$('grid_products') var grid = $$('grid_products')
var row = grid.getSelectedItem() var row = grid.getSelectedItem()
if(row == undefined){ if(row == undefined){
@ -93,8 +106,6 @@ function cmd_edit_product_click(){
} }
$$('categoria').getList().load('/values/categorias') $$('categoria').getList().load('/values/categorias')
$$('unidad').getList().load('/values/unidades')
webix.ajax().get('/products', {id:row['id']}, { webix.ajax().get('/products', {id:row['id']}, {
error: function(text, data, xhr) { error: function(text, data, xhr) {
msg_error() msg_error()

View File

@ -23,8 +23,11 @@ var grid_products_cols = [
fillspace:true, sort: 'string', footer: 'Productos y Servicios'}, fillspace:true, sort: 'string', footer: 'Productos y Servicios'},
{ id: "unidad", header: ["Unidad", {content: "selectFilter"}], width: 150, { id: "unidad", header: ["Unidad", {content: "selectFilter"}], width: 150,
sort:"string" }, sort:"string" },
{ id: "valor_unitario", header: ["Precio", {content: "numberFilter"}], width: 150, { id: "valor_unitario", header: ["Precio", {content: "numberFilter"}],
sort:"int", format: webix.i18n.priceFormat, css: "right" }, width: 150, sort: 'int', format: webix.i18n.priceFormat, css: "right" },
{ id: 'existencia', header: ['Existencia', {content: 'numberFilter'}],
width: 100, sort: 'int', format: webix.i18n.numberFormat,
hidden: true, css: 'right' },
] ]