Add filter by sucursal
This commit is contained in:
commit
a202f12a17
|
@ -1,4 +1,9 @@
|
|||
|
||||
v 1.35.0 [24-feb-2020]
|
||||
----------------------
|
||||
- Mejora: Filtrado de documentos por sucursal
|
||||
|
||||
|
||||
v 1.34.1 [09-feb-2020]
|
||||
----------------------
|
||||
- Error: Al timbrar nómina de asimilados
|
||||
|
|
|
@ -38,7 +38,7 @@ try:
|
|||
from .conf import DEBUG, AUTH
|
||||
except ImportError:
|
||||
DEBUG = False
|
||||
log.error('Need make conf.py')
|
||||
log.debug('Need make conf.py')
|
||||
|
||||
|
||||
TIMEOUT = 10
|
||||
|
|
|
@ -302,7 +302,8 @@ class AppInvoices(object):
|
|||
|
||||
def on_get(self, req, resp):
|
||||
values = req.params
|
||||
req.context['result'] = self._db.get_invoices(values)
|
||||
session = req.env['beaker.session']
|
||||
req.context['result'] = self._db.get_invoices(values, session['userobj'])
|
||||
resp.status = falcon.HTTP_200
|
||||
|
||||
def on_post(self, req, resp):
|
||||
|
@ -356,7 +357,8 @@ class AppTickets(object):
|
|||
|
||||
def on_get(self, req, resp):
|
||||
values = req.params
|
||||
req.context['result'] = self._db.get_tickets(values)
|
||||
session = req.env['beaker.session']
|
||||
req.context['result'] = self._db.get_tickets(values, session['userobj'])
|
||||
resp.status = falcon.HTTP_200
|
||||
|
||||
def on_post(self, req, resp):
|
||||
|
|
|
@ -378,12 +378,12 @@ class StorageEngine(object):
|
|||
if opt == 'print':
|
||||
return main.Tickets.printer(values)
|
||||
|
||||
def get_tickets(self, values):
|
||||
return main.Tickets.get_by(values)
|
||||
def get_tickets(self, values, user):
|
||||
return main.Tickets.get_by(values, user)
|
||||
|
||||
def get_invoices(self, filters):
|
||||
def get_invoices(self, filters, user):
|
||||
if filters.get('by', ''):
|
||||
return main.Facturas.get_by(filters)
|
||||
return main.Facturas.get_by(filters, user)
|
||||
return main.Facturas.get_(filters)
|
||||
|
||||
def get_preinvoices(self, values):
|
||||
|
|
|
@ -2640,7 +2640,7 @@ class Socios(BaseModel):
|
|||
SATUsoCfdi.key.alias('uso_cfdi'))
|
||||
.join(SATFormaPago, JOIN.LEFT_OUTER).switch(Socios)
|
||||
.join(SATUsoCfdi, JOIN.LEFT_OUTER).switch(Socios)
|
||||
.where((Socios.es_cliente==True) &
|
||||
.where((Socios.es_cliente==True & Socios.es_activo==True) &
|
||||
(Socios.rfc.contains(name) |
|
||||
Socios.nombre.contains(name)))
|
||||
.dicts())
|
||||
|
@ -3788,7 +3788,14 @@ class Facturas(BaseModel):
|
|||
|
||||
return filters
|
||||
|
||||
def _get_invoices(self, filters):
|
||||
def _get_invoices(self, filters, user):
|
||||
filter_serie = False
|
||||
if not user.sucursal is None and not user.sucursal.serie_facturas is None:
|
||||
filter_serie = (Facturas.serie==user.sucursal.serie_facturas)
|
||||
|
||||
if filter_serie:
|
||||
filters &= filter_serie
|
||||
|
||||
rows = tuple(Facturas.select(
|
||||
Facturas.id,
|
||||
Facturas.serie,
|
||||
|
@ -3811,19 +3818,19 @@ class Facturas(BaseModel):
|
|||
)
|
||||
return {'ok': True, 'rows': rows}
|
||||
|
||||
def _get_by_dates(self, filters):
|
||||
def _get_by_dates(self, filters, user):
|
||||
filters = self._get_filters(self, filters)
|
||||
return self._get_invoices(self, filters)
|
||||
return self._get_invoices(self, filters, user)
|
||||
|
||||
def _get_by_notes(self, filters):
|
||||
def _get_by_notes(self, filters, user):
|
||||
notes = filters['notes']
|
||||
filters = self._get_filters(self, filters)
|
||||
filters &= (Facturas.notas.contains(notes))
|
||||
return self._get_invoices(self, filters)
|
||||
return self._get_invoices(self, filters, user)
|
||||
|
||||
@classmethod
|
||||
def get_by(cls, filters):
|
||||
return getattr(cls, f"_get_by_{filters['by']}")(cls, filters)
|
||||
def get_by(cls, filters, user):
|
||||
return getattr(cls, f"_get_by_{filters['by']}")(cls, filters, user)
|
||||
|
||||
@classmethod
|
||||
def filter_years(cls):
|
||||
|
@ -7220,9 +7227,16 @@ class Tickets(BaseModel):
|
|||
return
|
||||
|
||||
@classmethod
|
||||
def get_by(cls, values):
|
||||
def get_by(cls, values, user):
|
||||
filter_serie = False
|
||||
if not user.sucursal is None and not user.sucursal.serie_tickets is None:
|
||||
filter_serie = (Tickets.serie==user.sucursal.serie_tickets)
|
||||
|
||||
filters = cls._get_filters(cls, values)
|
||||
|
||||
if filter_serie:
|
||||
filters = filters & filter_serie
|
||||
|
||||
rows = tuple(Tickets
|
||||
.select(
|
||||
Tickets.id,
|
||||
|
|
|
@ -47,7 +47,7 @@ except ImportError:
|
|||
|
||||
|
||||
DEBUG = DEBUG
|
||||
VERSION = '1.34.1'
|
||||
VERSION = '1.35.0'
|
||||
EMAIL_SUPPORT = ('soporte@empresalibre.mx',)
|
||||
TITLE_APP = '{} v{}'.format(TITLE_APP, VERSION)
|
||||
|
||||
|
|
Loading…
Reference in New Issue