7129-fixFilter #2766
|
@ -91,11 +91,13 @@ module.exports = Self => {
|
|||
SELECT t.cmrFk,
|
||||
t.id ticketFk,
|
||||
t.routeFk,
|
||||
co.name country,
|
||||
co.id countryFk,
|
||||
co.name countryName,
|
||||
t.clientFk,
|
||||
IF(sub.id, TRUE, FALSE) hasCmrDms,
|
||||
DATE(t.shipped) shipped,
|
||||
t.warehouseFk
|
||||
t.warehouseFk,
|
||||
w.name warehouseName
|
||||
FROM ticket t
|
||||
JOIN ticketState ts ON ts.ticketFk = t.id
|
||||
JOIN state s ON s.id = ts.stateFk
|
||||
|
|
|
@ -91,25 +91,20 @@ module.exports = Self => {
|
|||
let where = buildFilter(ctx.args, (param, value) => {
|
||||
switch (param) {
|
||||
case 'search':
|
||||
return {'r.id': value};
|
||||
return {'id': value};
|
||||
case 'from':
|
||||
return {'r.created': {gte: value}};
|
||||
return {'created': {gte: value}};
|
||||
case 'to':
|
||||
return {'r.created': {lte: value}};
|
||||
case 'm3':
|
||||
return {'r.m3': value};
|
||||
return {'created': {lte: value}};
|
||||
case 'description':
|
||||
return {'r.description': {like: `%${value}%`}};
|
||||
return {'description': {like: `%${value}%`}};
|
||||
case 'isOk':
|
||||
case 'm3':
|
||||
case 'warehouseFk':
|
||||
param = `v.${param}`;
|
||||
return {[param]: value};
|
||||
case 'workerFk':
|
||||
case 'vehicleFk':
|
||||
case 'agencyModeFk':
|
||||
param = `r.${param}`;
|
||||
return {[param]: value};
|
||||
case 'isOk':
|
||||
return {'r.isOk': value};
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -119,34 +114,38 @@ module.exports = Self => {
|
|||
let stmt;
|
||||
|
||||
stmt = new ParameterizedSQL(
|
||||
`SELECT
|
||||
r.id,
|
||||
r.workerFk,
|
||||
r.created,
|
||||
r.vehicleFk,
|
||||
r.agencyModeFk,
|
||||
r.time,
|
||||
r.isOk,
|
||||
r.kmStart,
|
||||
r.kmEnd,
|
||||
r.started,
|
||||
r.finished,
|
||||
r.gestdocFk,
|
||||
r.cost,
|
||||
r.m3,
|
||||
r.description,
|
||||
am.name agencyName,
|
||||
u.name AS workerUserName,
|
||||
v.numberPlate AS vehiclePlateNumber,
|
||||
Date_format(r.time, '%H:%i') hour,
|
||||
eu.email
|
||||
FROM route r
|
||||
LEFT JOIN agencyMode am ON am.id = r.agencyModeFk
|
||||
LEFT JOIN agency a ON a.id = am.agencyFk
|
||||
LEFT JOIN vehicle v ON v.id = r.vehicleFk
|
||||
LEFT JOIN worker w ON w.id = r.workerFk
|
||||
LEFT JOIN account.user u ON u.id = w.id
|
||||
LEFT JOIN account.emailUser eu ON eu.userFk = r.workerFk`
|
||||
`SELECT *
|
||||
FROM(
|
||||
SELECT
|
||||
r.id,
|
||||
r.workerFk,
|
||||
r.created,
|
||||
r.vehicleFk,
|
||||
r.agencyModeFk,
|
||||
r.time,
|
||||
r.isOk,
|
||||
r.kmStart,
|
||||
r.kmEnd,
|
||||
r.started,
|
||||
r.finished,
|
||||
r.gestdocFk,
|
||||
r.cost,
|
||||
r.m3,
|
||||
r.description,
|
||||
am.name agencyName,
|
||||
u.name workerUserName,
|
||||
v.numberPlate vehiclePlateNumber,
|
||||
Date_format(r.time, '%H:%i') hour,
|
||||
eu.email,
|
||||
v.warehouseFk
|
||||
FROM route r
|
||||
LEFT JOIN agencyMode am ON am.id = r.agencyModeFk
|
||||
LEFT JOIN agency a ON a.id = am.agencyFk
|
||||
LEFT JOIN vehicle v ON v.id = r.vehicleFk
|
||||
LEFT JOIN worker w ON w.id = r.workerFk
|
||||
LEFT JOIN account.user u ON u.id = w.id
|
||||
LEFT JOIN account.emailUser eu ON eu.userFk = r.workerFk
|
||||
) sub`
|
||||
);
|
||||
|
||||
stmt.merge(conn.makeSuffix(filter));
|
||||
|
|
|
@ -28,11 +28,11 @@ module.exports = Self => {
|
|||
if (canViewAll) {
|
||||
const userConfig = await models.UserConfig.getUserConfig(ctx, myOptions);
|
||||
pablone marked this conversation as resolved
|
||||
filterGrant = {
|
||||
where: {'a.warehouseFk': userConfig.warehouseFk}
|
||||
where: {'warehouseFk': userConfig.warehouseFk}
|
||||
};
|
||||
} else {
|
||||
filterGrant = {
|
||||
where: {'r.workerFk': userId}
|
||||
where: {'workerFk': userId}
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -46,16 +46,16 @@ module.exports = Self => {
|
|||
and: [
|
||||
{
|
||||
or: [
|
||||
{'r.created': currentDate},
|
||||
{'r.created': nextDay}
|
||||
{'created': currentDate},
|
||||
{'created': nextDay}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
order: [
|
||||
'r.created ASC',
|
||||
'r.time ASC',
|
||||
'am.name ASC'
|
||||
'created ASC',
|
||||
'time ASC',
|
||||
'agencyName ASC'
|
||||
]
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Estas usando solo una propiedad del userConfig, a lo mejor desestructurarlo