93 lines
1.9 KiB
JavaScript
93 lines
1.9 KiB
JavaScript
const path = require("path");
|
|
const historyRepository = require(path.join(__dirname, "../history"));
|
|
|
|
const all = (req, res) => {
|
|
return historyRepository
|
|
.all()
|
|
.then(lotteries =>
|
|
res.send({
|
|
lotteries: lotteries,
|
|
success: true
|
|
})
|
|
)
|
|
.catch(error => {
|
|
const { statusCode, message } = error;
|
|
|
|
return res.status(statusCode || 500).send({
|
|
success: false,
|
|
message: message || "Unable to fetch history."
|
|
});
|
|
});
|
|
};
|
|
|
|
const latest = (req, res) => {
|
|
return historyRepository
|
|
.latest()
|
|
.then(lottery =>
|
|
res.send({
|
|
lottery: lottery,
|
|
success: true
|
|
})
|
|
)
|
|
.catch(error => {
|
|
const { statusCode, message } = error;
|
|
|
|
return res.status(statusCode || 500).send({
|
|
success: false,
|
|
message: message || "Unable to fetch latest history."
|
|
});
|
|
});
|
|
};
|
|
|
|
const byDate = (req, res) => {
|
|
let { date } = req.params;
|
|
date = new Date(new Date(parseInt(date)).setHours(0, 0, 0, 0)).getTime();
|
|
|
|
return historyRepository
|
|
.byEpochDate(date)
|
|
.then(winners =>
|
|
res.send({
|
|
date: date,
|
|
winners: winners,
|
|
success: true
|
|
})
|
|
)
|
|
.catch(error => {
|
|
const { statusCode, message } = error;
|
|
|
|
return res.status(statusCode || 500).send({
|
|
success: false,
|
|
message: message || "Unable to fetch history for date."
|
|
});
|
|
});
|
|
};
|
|
|
|
const byName = (req, res) => {
|
|
const { name } = req.params;
|
|
|
|
return historyRepository
|
|
.byName(name)
|
|
.then(lotteries =>
|
|
res.send({
|
|
name: name,
|
|
lotteries: lotteries,
|
|
success: true
|
|
})
|
|
)
|
|
.catch(error => {
|
|
const { statusCode, message } = error;
|
|
|
|
return res.status(statusCode || 500).send({
|
|
success: false,
|
|
message: message || "Unable to fetch history for name."
|
|
});
|
|
});
|
|
};
|
|
|
|
module.exports = {
|
|
all,
|
|
latest,
|
|
byDate,
|
|
byName
|
|
};
|