diff --git a/source/app/controllers/main.py b/source/app/controllers/main.py
index e60462c..0238f9d 100644
--- a/source/app/controllers/main.py
+++ b/source/app/controllers/main.py
@@ -698,20 +698,20 @@ class AppInventoryEntries(object):
resp.status = falcon.HTTP_200
-class AppWhareHouse(object):
+class AppWareHouse(object):
def __init__(self, db):
self._db = db
def on_get(self, req, resp):
values = req.params
- req.context['result'] = self._db.wharehouse_get(values)
+ req.context['result'] = self._db.warehouse_get(values)
resp.status = falcon.HTTP_200
def on_post(self, req, resp):
values = req.params
user = req.env['beaker.session']['userobj']
- req.context['result'] = self._db.wharehouse_post(values, user)
+ req.context['result'] = self._db.warehouse_post(values, user)
resp.status = falcon.HTTP_200
diff --git a/source/app/main.py b/source/app/main.py
index 9206d5e..560e89c 100644
--- a/source/app/main.py
+++ b/source/app/main.py
@@ -20,7 +20,7 @@ from controllers.main import (AppEmpresas,
AppSATFormaPago, AppSATLeyendaFiscales, AppCert, AppSucursales,
AppPartnerProducts,
AppInventoryEntries,
- AppWhareHouse,
+ AppWareHouse,
AppUsers,
)
@@ -70,7 +70,7 @@ api.add_route('/cert', AppCert(db))
api.add_route('/sucursales', AppSucursales(db))
api.add_route('/partnerproducts', AppPartnerProducts(db))
api.add_route('/inventoryentries', AppInventoryEntries(db))
-api.add_route('/wharehouse', AppWhareHouse(db))
+api.add_route('/warehouse', AppWareHouse(db))
api.add_route('/users', AppUsers(db))
diff --git a/source/app/models/db.py b/source/app/models/db.py
index 94b929e..52ab501 100644
--- a/source/app/models/db.py
+++ b/source/app/models/db.py
@@ -487,10 +487,10 @@ class StorageEngine(object):
def inventory_entries_post(self, filters, user):
return main.InventoryEntries.post(filters, user)
- def wharehouse_get(self, filters):
+ def warehouse_get(self, filters):
return main.Almacenes.get_data(filters)
- def wharehouse_post(self, values, user):
+ def warehouse_post(self, values, user):
return main.Almacenes.post(values, user)
def users_get(self, filters, user):
diff --git a/source/app/models/main.py b/source/app/models/main.py
index 1d52e4c..0350d7d 100644
--- a/source/app/models/main.py
+++ b/source/app/models/main.py
@@ -3428,7 +3428,7 @@ class Almacenes(BaseModel):
class Sucursales(BaseModel):
- wharehouse = ForeignKeyField(Almacenes, null=True)
+ warehouse = ForeignKeyField(Almacenes, null=True)
nombre = TextField(default='')
direccion = TextField(default='')
serie_facturas = TextField(default='')
@@ -3945,15 +3945,15 @@ class Productos(BaseModel):
return bool(q.execute())
-class WhareHouseProduct(BaseModel):
- wharehouse = ForeignKeyField(Almacenes)
+class WareHouseProduct(BaseModel):
+ warehouse = ForeignKeyField(Almacenes)
product = ForeignKeyField(Productos)
exists = DecimalField(default=0.0, max_digits=18, decimal_places=2,
auto_round=True)
class Meta:
indexes = (
- (('wharehouse', 'product'), True),
+ (('warehouse', 'product'), True),
)
@@ -9860,7 +9860,7 @@ def _crear_tablas(rfc):
PartnerProducts,
InventoryEntries,
PartnerInvoices,
- WhareHouseProduct,
+ WareHouseProduct,
]
log.info('Creando tablas...')
database_proxy.create_tables(tablas, True)
@@ -9917,7 +9917,7 @@ def _migrate_tables(rfc=''):
PartnerProducts,
InventoryEntries,
PartnerInvoices,
- WhareHouseProduct,
+ WareHouseProduct,
]
log.info('Creando tablas nuevas...')
database_proxy.create_tables(tablas, True)
@@ -10069,9 +10069,9 @@ def _migrate_tables(rfc=''):
table = 'sucursales'
columns = [c.name for c in database_proxy.get_columns(table)]
- if not 'wharehouse_id' in columns:
- wharehouse = ForeignKeyField(Almacenes, null=True, to_field=Almacenes.id)
- migrations.append(migrator.add_column(table, 'wharehouse', wharehouse))
+ if not 'warehouse_id' in columns:
+ warehouse = ForeignKeyField(Almacenes, null=True, to_field=Almacenes.id)
+ migrations.append(migrator.add_column(table, 'warehouse', warehouse))
if migrations:
with database_proxy.atomic() as txn:
diff --git a/source/static/js/controller/admin.js b/source/static/js/controller/admin.js
index 48e2019..8b4fdee 100644
--- a/source/static/js/controller/admin.js
+++ b/source/static/js/controller/admin.js
@@ -96,7 +96,8 @@ var controllers = {
$$('chk_config_precio_con_impuestos').attachEvent('onItemClick', chk_config_item_click)
$$('chk_llevar_inventario').attachEvent('onItemClick', chk_config_item_click)
$$('chk_multi_stock').attachEvent('onItemClick', chk_config_item_click)
- $$('cmd_add_wharehouse').attachEvent('onItemClick', cmd_add_wharehouse_click)
+ $$('cmd_add_warehouse').attachEvent('onItemClick', cmd_add_warehouse_click)
+ $$('grid_warehouse').attachEvent('onItemClick', grid_warehouse_click)
//~ $$('chk_use_packing').attachEvent('onItemClick', chk_config_item_click)
//~ Complements
@@ -2513,26 +2514,24 @@ function admin_config_other_options(id){
}else{
$$('chk_multi_stock').setValue(0)
$$('chk_multi_stock').disable()
- set_visible_wharehouse(false)
+ set_visible_warehouse(false)
disable_config_option('chk_multi_stock')
}
}else if(id=='chk_multi_stock'){
- set_visible_wharehouse(value)
+ set_visible_warehouse(value)
}
}
-function set_visible_wharehouse(value){
+function set_visible_warehouse(value){
if(value){
- //~ $$('template_add_wharehouse').show()
- $$('txt_add_wharehouse').show()
- $$('cmd_add_wharehouse').show()
- $$('grid_warehouse').load('/wharehouse?opt=all')
+ $$('txt_add_warehouse').show()
+ $$('cmd_add_warehouse').show()
+ $$('grid_warehouse').load('/warehouse?opt=all')
$$('grid_warehouse').show()
}else{
- //~ $$('template_add_wharehouse').hide()
- $$('txt_add_wharehouse').hide()
- $$('cmd_add_wharehouse').hide()
+ $$('txt_add_warehouse').hide()
+ $$('cmd_add_warehouse').hide()
$$('grid_warehouse').hide()
}
}
@@ -2963,8 +2962,8 @@ function disable_config_option(id){
}
-function cmd_add_wharehouse_click(){
- var value = $$('txt_add_wharehouse').getValue().trim()
+function cmd_add_warehouse_click(){
+ var value = $$('txt_add_warehouse').getValue().trim()
if(!value){
msg = 'El nombre del almacen es requerido'
@@ -2981,20 +2980,20 @@ function cmd_add_wharehouse_click(){
text: msg,
callback:function(result){
if(result){
- add_wharehouse(value)
+ add_warehouse(value)
}
}
})
}
-function add_wharehouse(name){
+function add_warehouse(name){
var grid = $$('grid_warehouse')
var data = {
opt: 'create',
values: {name: name},
}
- webix.ajax().post('/wharehouse', data, {
+ webix.ajax().post('/warehouse', data, {
error:function(text, data, XmlHttpRequest){
msg = 'Ocurrio un error, consulta a soporte técnico'
msg_error(msg)
@@ -3002,7 +3001,7 @@ function add_wharehouse(name){
success:function(text, data, XmlHttpRequest){
var values = data.json()
if(values.ok){
- $$('txt_add_wharehouse').setValue('')
+ $$('txt_add_warehouse').setValue('')
if(values.msg){
msg_ok(values.msg)
}else{
@@ -3016,3 +3015,42 @@ function add_wharehouse(name){
})
}
+
+function grid_warehouse_click(id, e, node){
+ if(id.column != 'delete'){
+ return
+ }
+
+ var data = {
+ opt: 'delete',
+ values: {id: id.row},
+ }
+
+ msg = '¿Estás seguro de borrar el almacen seleccionado?
ESTA ACCIÓN NO SE PUEDE DESHACER'
+ webix.confirm({
+ title: 'Borrar Almacen',
+ ok: 'Si',
+ cancel: 'No',
+ type: 'confirm-error',
+ text: msg,
+ callback:function(result){
+ if(result){
+ webix.ajax().post('/warehouse', data, {
+ error:function(text, data, XmlHttpRequest){
+ msg = 'Ocurrio un error, consulta a soporte técnico'
+ msg_error(msg)
+ },
+ success:function(text, data, XmlHttpRequest){
+ var values = data.json()
+ if(values.ok){
+ $$('grid_warehouse').remove(id.row)
+ msg_ok('Almacen eliminado correctamente')
+ }else{
+ msg_error(values.msg)
+ }
+ }
+ })
+ }
+ }
+ })
+}
diff --git a/source/static/js/ui/admin.js b/source/static/js/ui/admin.js
index 3d949cd..c22dd6e 100644
--- a/source/static/js/ui/admin.js
+++ b/source/static/js/ui/admin.js
@@ -800,11 +800,11 @@ var options_admin_products = [
{cols: [{maxWidth: 30}, {view: 'checkbox', id: 'chk_multi_stock', labelWidth: 15,
labelRight: 'Multialmacen', disabled: true}]},
{cols: [{maxWidth: 30}, {rows: [
- {template: 'Agregar Almacen', type: 'section', id: 'template_add_wharehouse'},
+ {template: 'Agregar Almacen', type: 'section', id: 'template_add_warehouse'},
{cols: [
- {view: 'text', id: 'txt_add_wharehouse', label: 'Nombre: ',
+ {view: 'text', id: 'txt_add_warehouse', label: 'Nombre: ',
labelPosition: 'left', required: true},
- {view: 'button', id: 'cmd_add_wharehouse', label: 'Agregar',
+ {view: 'button', id: 'cmd_add_warehouse', label: 'Agregar',
autowidth: true, type: 'iconButton', icon: 'plus'},
]},
{template: 'Almacenes', type: 'section'},