2017-05-26 11:17:32 -07:00
|
|
|
let fs = require('fs');
|
|
|
|
|
|
|
|
|
|
Meteor.methods({
|
2025-07-02 11:18:09 -07:00
|
|
|
"exportMissingSales": async function() {
|
2017-05-26 11:17:32 -07:00
|
|
|
try {
|
2025-07-02 11:18:09 -07:00
|
|
|
let products = await Products.find({}).fetchAsync();
|
|
|
|
|
let venues = await Venues.find({}).fetchAsync();
|
|
|
|
|
let measures = await Measures.find({}).fetchAsync();
|
2017-05-26 11:17:32 -07:00
|
|
|
let productNameMap = {};
|
|
|
|
|
let venueNameMap = {};
|
|
|
|
|
let measureNameMap = {};
|
2025-07-02 11:18:09 -07:00
|
|
|
let sales = await Sales.find({createdAt: {$gte: moment.utc("2017-01-28", "YYYY-MM-DD").toDate(), $lt: moment.utc("2017-01-29", "YYYY-MM-DD").toDate()}}).fetchAsync();
|
2017-05-26 11:17:32 -07:00
|
|
|
let output = "";
|
|
|
|
|
|
|
|
|
|
for(let i = 0; i < products.length; i++) {
|
|
|
|
|
productNameMap[products[i]._id] = products[i].name;
|
|
|
|
|
}
|
|
|
|
|
for(let i = 0; i < venues.length; i++) {
|
|
|
|
|
venueNameMap[venues[i]._id] = venues[i].name;
|
|
|
|
|
}
|
|
|
|
|
for(let i = 0; i < measures.length; i++) {
|
|
|
|
|
measureNameMap[measures[i]._id] = measures[i].name;
|
|
|
|
|
}
|
|
|
|
|
for(let i = 0; i < sales.length; i++) {
|
|
|
|
|
let sale = sales[i];
|
|
|
|
|
let saleOutput = '{\n\t"date": ' + sale.date + ',\n\t "amount": ' + sale.amount + ',\n\t "price": ' + sale.price + ',\n\t "venue": "' + venueNameMap[sale.venueId] + '",\n\t "product": "' + productNameMap[sale.productId] + '",\n\t "measure": "' + measureNameMap[sale.measureId] + '",\n\t "createdAt": "' + sale.createdAt + '"\n}';
|
|
|
|
|
|
|
|
|
|
if(output.length > 0) {
|
|
|
|
|
output += ",\n";
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
output = "[";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
output += saleOutput;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fs.writeFile("./exportedMissingSales.json", output, function(err) {
|
|
|
|
|
if(err) console.log(err);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
output += "]";
|
|
|
|
|
console.log(output);
|
|
|
|
|
} catch(err) {
|
|
|
|
|
console.log(err);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|