refs #4856 maneja errores y notifica a los jefes
gitea/salix/pipeline/head There was a failure building this commit Details

This commit is contained in:
Vicent Llopis 2023-04-06 08:54:12 +02:00
parent a44a640d15
commit 041590e541
1 changed files with 14 additions and 18 deletions

View File

@ -84,7 +84,7 @@ module.exports = Self => {
stmt = new ParameterizedSQL('DROP TEMPORARY TABLE IF EXISTS tmp.`user`');
stmts.push(stmt);
stmt = new ParameterizedSQL('CREATE TEMPORARY TABLE tmp.`user` SELECT id userFk FROM account.user WHERE id = vUserFk', [args.workerId]);
stmt = new ParameterizedSQL('CREATE TEMPORARY TABLE tmp.`user` SELECT id userFk FROM account.user WHERE id = ?', [args.workerId]);
stmts.push(stmt);
} else {
await models.WorkerTimeControl.destroyAll({
@ -112,15 +112,26 @@ module.exports = Self => {
stmts.push(stmt);
stmt = new ParameterizedSQL(
`CALL vn.timeControl_getError(?, ?)
`CALL vn.timeBusiness_calculate(?, ?)
`, [started, ended]);
stmts.push(stmt);
stmt = new ParameterizedSQL(
`CALL vn.timeBusiness_calculate(?, ?)
`CALL vn.timeControl_getError(?, ?)
`, [started, ended]);
stmts.push(stmt);
stmt = new ParameterizedSQL(`INSERT INTO mail (receiver, subject, body)
SELECT CONCAT(u.name, '@verdnatura.es'),
CONCAT('Error registro de horas semana ', ?, ' año ', ?) ,
CONCAT('No se ha podido enviar el registro de horas al empleado/s: ', GROUP_CONCAT(DISTINCT CONCAT('<br>', w.id, ' ', w.firstName, ' ', w.lastName)))
FROM tmp.timeControlError tce
JOIN vn.workerTimeControl wtc ON wtc.id = tce.id
JOIN worker w ON w.id = wtc.userFK
JOIN account.user u ON u.id = w.bossFk
GROUP BY w.bossFk`, [args.week, args.year]);
stmts.push(stmt);
stmt = new ParameterizedSQL(`
SELECT CONCAT(u.name, '@verdnatura.es') receiver,
u.id workerFk,
@ -364,21 +375,6 @@ module.exports = Self => {
}
}
// await Self.rawSql('DROP TEMPORARY TABLE IF EXISTS tmp.`user`');
await Self.rawSql('CREATE TEMPORARY TABLE IF NOT EXISTS tmp.`user` SELECT userFk FROM vn.worker w JOIN account.`user` u ON u.id = w.userFk WHERE userFk IS NOT NULL');
await Self.rawSql(`CALL vn.timeControl_getError(?, ?);`, [started, ended]);
const query = `INSERT INTO mail (receiver, replyTo, subject, body)
SELECT CONCAT(u.name, '@verdnatura.es'),
CONCAT('Error registro de horas semana ', vWeek, ' año ', vYear) ,
CONCAT('No se ha podido enviar el registro de horas al empleado/s: ', GROUP_CONCAT(DISTINCT CONCAT('<br>', w.id, ' ', w.firstName, ' ', w.lastName)))
FROM tmp.timeControlError tce
JOIN vn.workerTimeControl wtc ON wtc.id = tce.id
JOIN worker w ON w.id = wtc.userFK
JOIN account.user u ON u.id = w.bossFk
GROUP BY w.bossFk;`;
await Self.rawSql(query, [previousWorkerFk, args.year, args.week]);
return true;
};