diff --git a/db/versions/11242-whiteAnthurium/00-firstScript.sql b/db/versions/11242-whiteAnthurium/00-firstScript.sql new file mode 100644 index 000000000..43dccf374 --- /dev/null +++ b/db/versions/11242-whiteAnthurium/00-firstScript.sql @@ -0,0 +1,3 @@ +DELETE FROM salix.ACL + WHERE model = 'WorkerLog' + AND property = '*'; \ No newline at end of file diff --git a/modules/worker/back/methods/worker/filter.js b/modules/worker/back/methods/worker/filter.js index 2f328d28f..52c60572a 100644 --- a/modules/worker/back/methods/worker/filter.js +++ b/modules/worker/back/methods/worker/filter.js @@ -67,6 +67,12 @@ module.exports = Self => { type: 'String', description: 'The worker user name', http: {source: 'query'} + }, + { + arg: 'email', + type: 'String', + description: 'The user email', + http: {source: 'query'} } ], returns: { @@ -99,6 +105,8 @@ module.exports = Self => { return {'w.firstName': {like: `%${value}%`}}; case 'lastName': return {'w.lastName': {like: `%${value}%`}}; + case 'nickname': + return {'u.nickname': {like: `%${value}%`}}; case 'extension': return {'p.extension': value}; case 'fi': @@ -107,6 +115,8 @@ module.exports = Self => { return {'d.id': value}; case 'userName': return {'u.name': {like: `%${value}%`}}; + case 'email': + return {'eu.email': {like: `%${value}%`}}; } }); @@ -116,15 +126,23 @@ module.exports = Self => { let stmt; stmt = new ParameterizedSQL( - `SELECT w.id, u.email, p.extension, u.name as userName, - d.name AS department, w.lastName, u.nickname, mu.email + `SELECT w.id, + 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 LEFT JOIN workerDepartment wd ON wd.workerFk = w.id LEFT JOIN department d ON d.id = wd.departmentFk LEFT JOIN client c ON c.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 account.emailUser mu ON mu.userFk = u.id` + LEFT JOIN account.emailUser eu ON eu.userFk = u.id` ); stmt.merge(conn.makeSuffix(filter));