refactor: refs #7884 modified filter
gitea/salix/pipeline/pr-dev This commit looks good Details

This commit is contained in:
Jon Elias 2024-10-01 15:08:42 +02:00
parent c4f26094d5
commit b7b5334a99
1 changed files with 14 additions and 21 deletions

View File

@ -221,36 +221,29 @@ module.exports = Self => {
JOIN vn.currency cu ON cu.id = e.currencyFk`
);
stmt.merge(conn.makeWhere(filter.where));
const {daysAgo, daysOnward} = ctx.args;
if (daysAgo || daysOnward) {
let sql = '';
if (daysOnward || daysAgo) {
const params = [];
let today = 'util.VN_CURDATE()';
let from = today;
let to = today;
if (daysAgo && daysOnward) {
sql = `
AND t.shipped >= util.VN_CURDATE() - INTERVAL ? DAY
AND t.shipped <= util.VN_CURDATE() + INTERVAL ? DAY
`;
params.push(daysAgo, daysOnward);
} else if (daysAgo) {
sql = `
AND t.shipped >= util.VN_CURDATE() - INTERVAL ? DAY
AND t.shipped < util.VN_CURDATE()
`;
if (daysAgo) {
from += ' - INTERVAL ? DAY';
params.push(daysAgo);
} else if (daysOnward) {
sql = `
AND t.shipped <= util.VN_CURDATE() + INTERVAL ? DAY
AND t.shipped >= util.VN_CURDATE()
`;
}
if (daysOnward) {
to += ' + INTERVAL ? DAY';
params.push(daysOnward);
}
stmt.merge({sql, params});
const whereDays = (filter.where ? 'AND' : 'WHERE') + ` t.shipped BETWEEN ${from} AND ${to}`;
stmt.merge({sql: whereDays, params});
}
stmt.merge(conn.makeSuffix(filter));
stmt.merge(conn.makePagination(filter));
const itemsIndex = stmts.push(stmt) - 1;
const sql = ParameterizedSQL.join(stmts, ';');