date drop added
This commit is contained in:
@@ -36,12 +36,39 @@ async function ordersRoutes(fastify, options) {
|
||||
limit: parseInt(req.query.limit, 10) || 50
|
||||
};
|
||||
|
||||
// Get today's date for stats
|
||||
const today = new Date();
|
||||
filters.date = today;
|
||||
const normalizeUnixSeconds = (v) => {
|
||||
const n = Number(v);
|
||||
if (!Number.isFinite(n) || n <= 0) return 0;
|
||||
// Accept both seconds and milliseconds.
|
||||
return n > 1e12 ? Math.floor(n / 1000) : Math.floor(n);
|
||||
};
|
||||
|
||||
let startDate = normalizeUnixSeconds(req.query.startDate);
|
||||
let endDate = normalizeUnixSeconds(req.query.endDate);
|
||||
|
||||
// Be resilient to inverted ranges
|
||||
if (startDate > 0 && endDate > 0 && startDate > endDate) {
|
||||
const tmp = startDate;
|
||||
startDate = endDate;
|
||||
endDate = tmp;
|
||||
}
|
||||
|
||||
if (startDate > 0 && endDate > 0) {
|
||||
filters.startDate = startDate;
|
||||
filters.endDate = endDate;
|
||||
} else if (startDate > 0) {
|
||||
filters.startDate = startDate;
|
||||
} else if (endDate > 0) {
|
||||
filters.endDate = endDate;
|
||||
} else {
|
||||
filters.date = new Date();
|
||||
}
|
||||
|
||||
const orders = database.getOrders(filters);
|
||||
const stats = database.getOrderStats();
|
||||
const stats = database.getOrderStats(
|
||||
filters.startDate || null,
|
||||
filters.endDate || null
|
||||
);
|
||||
|
||||
return { error: false, orders, stats };
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user