This commit is contained in:
parent
361d60a8a8
commit
1d47690bb4
|
@ -106,10 +106,15 @@ module.exports = Self => {
|
||||||
description: `The to shipped date filter`
|
description: `The to shipped date filter`
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
arg: 'days',
|
arg: 'daysOnward',
|
||||||
type: 'number',
|
type: 'number',
|
||||||
description: `N days interval`
|
description: `N days interval`
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
arg: 'daysAgo',
|
||||||
|
type: 'number',
|
||||||
|
description: `N days ago interval`
|
||||||
|
},
|
||||||
{
|
{
|
||||||
arg: 'invoiceAmount',
|
arg: 'invoiceAmount',
|
||||||
type: 'number',
|
type: 'number',
|
||||||
|
@ -216,15 +221,26 @@ module.exports = Self => {
|
||||||
JOIN vn.currency cu ON cu.id = e.currencyFk`
|
JOIN vn.currency cu ON cu.id = e.currencyFk`
|
||||||
);
|
);
|
||||||
|
|
||||||
if (ctx.args.days) {
|
if (ctx.args.daysOnward) {
|
||||||
stmt.merge({
|
stmt.merge({
|
||||||
sql: `
|
sql: `
|
||||||
AND t.shipped <= util.VN_CURDATE() + INTERVAL ? DAY
|
AND t.shipped <= util.VN_CURDATE() + INTERVAL ? DAY
|
||||||
AND t.shipped >= util.VN_CURDATE()
|
AND t.shipped >= util.VN_CURDATE()
|
||||||
`,
|
`,
|
||||||
params: [ctx.args.days]
|
params: [ctx.args.daysOnward]
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ctx.args.daysAgo) {
|
||||||
|
stmt.merge({
|
||||||
|
sql: `
|
||||||
|
AND t.shipped >= util.VN_CURDATE() - INTERVAL ? DAY
|
||||||
|
AND t.shipped < util.VN_CURDATE()
|
||||||
|
`,
|
||||||
|
params: [ctx.args.daysAgo]
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
stmt.merge(conn.makeSuffix(filter));
|
stmt.merge(conn.makeSuffix(filter));
|
||||||
const itemsIndex = stmts.push(stmt) - 1;
|
const itemsIndex = stmts.push(stmt) - 1;
|
||||||
|
|
||||||
|
|
|
@ -49,13 +49,13 @@ describe('Entry filter()', () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
describe('should return the entry matching the supplier', () => {
|
describe('should return the entry matching the supplier', () => {
|
||||||
it('when userId is supplier ', async() => {
|
it('when userId is supplier and searching days onward', async() => {
|
||||||
const tx = await models.Entry.beginTransaction({});
|
const tx = await models.Entry.beginTransaction({});
|
||||||
const options = {transaction: tx};
|
const options = {transaction: tx};
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const ctx = {
|
const ctx = {
|
||||||
args: {days: 6},
|
args: {daysOnward: 6},
|
||||||
req: {accessToken: {userId: 1102}}
|
req: {accessToken: {userId: 1102}}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -70,6 +70,27 @@ describe('Entry filter()', () => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('when userId is supplier and searching days ago', async() => {
|
||||||
|
const tx = await models.Entry.beginTransaction({});
|
||||||
|
const options = {transaction: tx};
|
||||||
|
|
||||||
|
try {
|
||||||
|
const ctx = {
|
||||||
|
args: {daysAgo: 31},
|
||||||
|
req: {accessToken: {userId: 1102}}
|
||||||
|
};
|
||||||
|
|
||||||
|
const result = await models.Entry.filter(ctx, options);
|
||||||
|
|
||||||
|
expect(result.length).toEqual(6);
|
||||||
|
|
||||||
|
await tx.rollback();
|
||||||
|
} catch (e) {
|
||||||
|
await tx.rollback();
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
it('when userId is supplier fetching other supplier', async() => {
|
it('when userId is supplier fetching other supplier', async() => {
|
||||||
const tx = await models.Entry.beginTransaction({});
|
const tx = await models.Entry.beginTransaction({});
|
||||||
const options = {transaction: tx};
|
const options = {transaction: tx};
|
||||||
|
|
Loading…
Reference in New Issue