Filtro de facturas incluye cliente

This commit is contained in:
Mauricio Baeza 2019-02-16 22:38:58 -06:00
parent 8d7b42e368
commit da41bb272e
3 changed files with 25 additions and 25 deletions

View File

@ -3,6 +3,7 @@ v 1.28.0 [17-feb-2019]
- Mejora: Manejo de empaques para mensajeria - Mejora: Manejo de empaques para mensajeria
- Mejora: Usar concepto personalizado en deducciones de nómina 004 Otros - Mejora: Usar concepto personalizado en deducciones de nómina 004 Otros
- Mejora: Búsqueda en notas - Mejora: Búsqueda en notas
- Mejora: Soporte para el complemento de Divisas
* IMPORTANTE: * IMPORTANTE:
Es necesario realizar una migración, despues de actualizar. Es necesario realizar una migración, despues de actualizar.

View File

@ -3741,11 +3741,7 @@ class Facturas(BaseModel):
return filters return filters
def _get_by_notes(self, filters): def _get_invoices(self, filters):
notes = filters['notes']
filters = self._get_filters(self, filters)
filters &= (Facturas.notas.contains(notes))
rows = tuple(Facturas.select( rows = tuple(Facturas.select(
Facturas.id, Facturas.id,
Facturas.serie, Facturas.serie,
@ -3766,9 +3762,18 @@ class Facturas(BaseModel):
.join(Socios) .join(Socios)
.switch(Facturas).dicts() .switch(Facturas).dicts()
) )
return {'ok': True, 'rows': rows} return {'ok': True, 'rows': rows}
def _get_by_dates(self, filters):
filters = self._get_filters(self, filters)
return self._get_invoices(self, filters)
def _get_by_notes(self, filters):
notes = filters['notes']
filters = self._get_filters(self, filters)
filters &= (Facturas.notas.contains(notes))
return self._get_invoices(self, filters)
@classmethod @classmethod
def get_by(cls, filters): def get_by(cls, filters):
return getattr(cls, f"_get_by_{filters['by']}")(cls, filters) return getattr(cls, f"_get_by_{filters['by']}")(cls, filters)

View File

@ -1381,20 +1381,23 @@ function cmd_invoice_cancelar_click(){
} }
function get_invoices(rango){ function get_filters_invoices(){
if(rango == undefined){ var filters = $$('filter_dates').getValue()
var fy = $$('filter_year') filters['year'] = $$('filter_year').getValue()
var fm = $$('filter_month') filters['month'] = $$('filter_month').getValue()
filters['client'] = $$('grid_invoices').getFilter('cliente').value
return filters
}
var y = fy.getValue()
var m = fm.getValue() function get_invoices(){
rango = {'year': y, 'month': m} var filters = get_filters_invoices()
} filters['by'] = 'dates'
var grid = $$('grid_invoices') var grid = $$('grid_invoices')
grid.showProgress({type: 'icon'}) grid.showProgress({type: 'icon'})
webix.ajax().get('/invoices', rango, { webix.ajax().get('/invoices', filters, {
error: function(text, data, xhr) { error: function(text, data, xhr) {
msg_error('Error al consultar') msg_error('Error al consultar')
}, },
@ -1421,7 +1424,7 @@ function filter_month_change(nv, ov){
function filter_dates_change(range){ function filter_dates_change(range){
if(range.start != null && range.end != null){ if(range.start != null && range.end != null){
get_invoices(range) get_invoices()
} }
} }
@ -2272,15 +2275,6 @@ function txt_folio_custom_lost_focus(prev){
} }
function get_filters_invoices(){
var filters = $$('filter_dates').getValue()
filters['year'] = $$('filter_year').getValue()
filters['month'] = $$('filter_month').getValue()
filters['client'] = $$('grid_invoices').getFilter('cliente').value
return filters
}
function search_by(value){ function search_by(value){
var filters = get_filters_invoices() var filters = get_filters_invoices()
filters['by'] = 'notes' filters['by'] = 'notes'