fix: refs #7844 salesFilter and isTooLittle condition
This commit is contained in:
parent
7632f33322
commit
6f97d1b83a
|
@ -70,11 +70,15 @@ BEGIN
|
|||
LEFT(GROUP_CONCAT('RE: ', i.id, ' ', IFNULL(i.longName,'') SEPARATOR ', '), 250),
|
||||
NULL
|
||||
) hasRounding,
|
||||
IF(FIND_IN_SET('isTooLittle', t.problem), TRUE, FALSE) isTooLittle
|
||||
IF(FIND_IN_SET('isTooLittle', t.problem)
|
||||
AND util.VN_NOW() < (util.VN_CURDATE() + INTERVAL HOUR(zc.`hour`) HOUR) + INTERVAL MINUTE(zc.`hour`) MINUTE,
|
||||
TRUE, FALSE) isTooLittle
|
||||
FROM tmp.sale_getProblems sgp
|
||||
JOIN ticket t ON t.id = sgp.ticketFk
|
||||
LEFT JOIN sale s ON s.ticketFk = t.id
|
||||
LEFT JOIN item i ON i.id = s.itemFk
|
||||
LEFT JOIN zoneClosure zc ON zc.zoneFk = t.zoneFk
|
||||
AND zc.dated = util.VN_CURDATE()
|
||||
WHERE s.problem <> '' OR t.problem <> '' OR t.risk
|
||||
GROUP BY t.id, s.id;
|
||||
|
||||
|
|
|
@ -239,9 +239,8 @@ module.exports = Self => {
|
|||
stmts.push(`SET SESSION optimizer_search_depth = @_optimizer_search_depth`);
|
||||
|
||||
// Get client debt balance
|
||||
stmts.push('DROP TEMPORARY TABLE IF EXISTS tmp.clientGetDebt');
|
||||
stmts.push(`
|
||||
CREATE TEMPORARY TABLE tmp.clientGetDebt
|
||||
CREATE OR REPLACE TEMPORARY TABLE tmp.clientGetDebt
|
||||
(PRIMARY KEY (clientFk))
|
||||
ENGINE = MEMORY
|
||||
SELECT DISTINCT clientFk FROM tmp.filter`);
|
||||
|
@ -250,9 +249,8 @@ module.exports = Self => {
|
|||
stmts.push(stmt);
|
||||
stmts.push('DROP TEMPORARY TABLE tmp.clientGetDebt');
|
||||
|
||||
stmts.push('DROP TEMPORARY TABLE IF EXISTS tmp.tickets');
|
||||
stmt = new ParameterizedSQL(`
|
||||
CREATE TEMPORARY TABLE tmp.tickets
|
||||
CREATE OR REPLACE TEMPORARY TABLE tmp.tickets
|
||||
(PRIMARY KEY (id))
|
||||
ENGINE = MEMORY
|
||||
SELECT f.*, r.risk AS debt
|
||||
|
@ -279,10 +277,8 @@ module.exports = Self => {
|
|||
WHERE t.debt + t.credit >= 0
|
||||
`);
|
||||
|
||||
stmts.push('DROP TEMPORARY TABLE IF EXISTS tmp.sale_getProblems');
|
||||
|
||||
stmt = new ParameterizedSQL(`
|
||||
CREATE TEMPORARY TABLE tmp.sale_getProblems
|
||||
CREATE OR REPLACE TEMPORARY TABLE tmp.sale_getProblems
|
||||
(INDEX (ticketFk))
|
||||
ENGINE = MEMORY
|
||||
SELECT f.id ticketFk, f.clientFk, f.warehouseFk, f.shipped
|
||||
|
@ -303,14 +299,13 @@ module.exports = Self => {
|
|||
risk = t.debt + t.credit, totalProblems = totalProblems + 1
|
||||
`);
|
||||
|
||||
stmts.push('DROP TEMPORARY TABLE IF EXISTS tmp.sale_getWarnings');
|
||||
|
||||
stmt = new ParameterizedSQL(`
|
||||
CREATE TEMPORARY TABLE tmp.sale_getWarnings
|
||||
(INDEX (ticketFk, agencyModeFk))
|
||||
ENGINE = MEMORY
|
||||
SELECT f.id ticketFk, f.agencyModeFk
|
||||
FROM tmp.filter f`);
|
||||
CREATE OR REPLACE TEMPORARY TABLE tmp.sale_getWarnings
|
||||
(INDEX (ticketFk, agencyModeFk))
|
||||
ENGINE = MEMORY
|
||||
SELECT f.id ticketFk, f.agencyModeFk
|
||||
FROM tmp.filter f
|
||||
`);
|
||||
stmts.push(stmt);
|
||||
|
||||
stmts.push('CALL ticket_getWarnings()');
|
||||
|
@ -318,12 +313,12 @@ module.exports = Self => {
|
|||
stmt = new ParameterizedSQL(`
|
||||
SELECT t.*,
|
||||
tp.*,
|
||||
((tp.risk) + cc.riskTolerance < 0) AS hasHighRisk,
|
||||
tp.hasHighRisk,
|
||||
tw.*
|
||||
FROM tmp.tickets t
|
||||
LEFT JOIN tmp.ticket_problems tp ON tp.ticketFk = t.id
|
||||
LEFT JOIN tmp.ticket_warnings tw ON tw.ticketFk = t.id
|
||||
JOIN clientConfig cc`);
|
||||
`);
|
||||
|
||||
const hasProblems = args.problems;
|
||||
if (hasProblems != undefined && (!args.from && !args.to))
|
||||
|
|
Loading…
Reference in New Issue