Merge pull request '#7323 worker/filter' (!2978) from 7323-fineTunningWorker into dev
gitea/salix/pipeline/head This commit looks good Details

Reviewed-on: #2978
Reviewed-by: Javi Gallego <jgallego@verdnatura.es>
This commit is contained in:
Jorge Penadés 2024-10-07 06:41:31 +00:00
commit 6d973fd4ff
2 changed files with 24 additions and 3 deletions

View File

@ -0,0 +1,3 @@
DELETE FROM salix.ACL
WHERE model = 'WorkerLog'
AND property = '*';

View File

@ -67,6 +67,12 @@ module.exports = Self => {
type: 'String', type: 'String',
description: 'The worker user name', description: 'The worker user name',
http: {source: 'query'} http: {source: 'query'}
},
{
arg: 'email',
type: 'String',
description: 'The user email',
http: {source: 'query'}
} }
], ],
returns: { returns: {
@ -99,6 +105,8 @@ module.exports = Self => {
return {'w.firstName': {like: `%${value}%`}}; return {'w.firstName': {like: `%${value}%`}};
case 'lastName': case 'lastName':
return {'w.lastName': {like: `%${value}%`}}; return {'w.lastName': {like: `%${value}%`}};
case 'nickname':
return {'u.nickname': {like: `%${value}%`}};
case 'extension': case 'extension':
return {'p.extension': value}; return {'p.extension': value};
case 'fi': case 'fi':
@ -107,6 +115,8 @@ module.exports = Self => {
return {'d.id': value}; return {'d.id': value};
case 'userName': case 'userName':
return {'u.name': {like: `%${value}%`}}; return {'u.name': {like: `%${value}%`}};
case 'email':
return {'eu.email': {like: `%${value}%`}};
} }
}); });
@ -116,15 +126,23 @@ module.exports = Self => {
let stmt; let stmt;
stmt = new ParameterizedSQL( stmt = new ParameterizedSQL(
`SELECT w.id, u.email, p.extension, u.name as userName, `SELECT w.id,
d.name AS department, w.lastName, u.nickname, mu.email w.lastName,
w.firstName,
u.email,
u.nickname,
p.extension,
u.name as userName,
d.name AS department,
eu.email,
c.fi
FROM worker w FROM worker w
LEFT JOIN workerDepartment wd ON wd.workerFk = w.id LEFT JOIN workerDepartment wd ON wd.workerFk = w.id
LEFT JOIN department d ON d.id = wd.departmentFk LEFT JOIN department d ON d.id = wd.departmentFk
LEFT JOIN client c ON c.id = w.id LEFT JOIN client c ON c.id = w.id
LEFT JOIN account.user u ON u.id = w.id LEFT JOIN account.user u ON u.id = w.id
LEFT JOIN pbx.sip p ON p.user_id = u.id LEFT JOIN pbx.sip p ON p.user_id = u.id
LEFT JOIN account.emailUser mu ON mu.userFk = u.id` LEFT JOIN account.emailUser eu ON eu.userFk = u.id`
); );
stmt.merge(conn.makeSuffix(filter)); stmt.merge(conn.makeSuffix(filter));