108 lines
3.2 KiB
JavaScript
108 lines
3.2 KiB
JavaScript
const ObjectId = require('mongodb').ObjectID
|
|
|
|
const { getDB } = require('../../utils/mongo')
|
|
|
|
const ingredients = require('./collections/ingredients.json')
|
|
const cakeshape = require('./collections/cakeshape.json')
|
|
const cakesweight = require('./collections/cakesweight.json')
|
|
const adminstats = require('./collections/adminstats.json')
|
|
|
|
const INGREDIENTS_COLLECTION = 'ingredients'
|
|
const CAKESHAPE_COLLECTION = 'cakeshape'
|
|
const CAKESWEIGHT_COLLECTION = 'cakeswaight'
|
|
const ADMINSTATS_COLLECTION = 'adminstats'
|
|
|
|
let db = null
|
|
|
|
const connect = async () => {
|
|
db = await getDB('sugarbundb')
|
|
}
|
|
|
|
const init = async () => {
|
|
await connect()
|
|
const ingredientsCollection = db.collection(INGREDIENTS_COLLECTION)
|
|
const findingredients = await ingredientsCollection.find({
|
|
}).toArray()
|
|
// console.log(findingredients)
|
|
if (findingredients.length === 0) {
|
|
await ingredientsCollection.insertMany(ingredients)
|
|
}
|
|
const cakeshapeCollection = db.collection(CAKESHAPE_COLLECTION)
|
|
const findcakeshape = await cakeshapeCollection.find({
|
|
}).toArray()
|
|
if (findcakeshape.length === 0) {
|
|
await cakeshapeCollection.insertMany(cakeshape)
|
|
}
|
|
const cakesweightCollection = db.collection(CAKESWEIGHT_COLLECTION)
|
|
const findcakesweight = await cakesweightCollection.find({
|
|
}).toArray()
|
|
if (findcakesweight.length === 0) {
|
|
await cakesweightCollection.insertMany(cakesweight)
|
|
}
|
|
const adminstatsCollection = db.collection(ADMINSTATS_COLLECTION)
|
|
const findadminstats = await adminstatsCollection.find({
|
|
}).toArray()
|
|
if (findadminstats.length === 0) {
|
|
await adminstatsCollection.insertMany(adminstats.adminstats)
|
|
}
|
|
}
|
|
|
|
init()
|
|
|
|
const getIngredients = async () => {
|
|
if (db === null) throw new Error('no db connection')
|
|
try {
|
|
const ingredientsCollection = db.collection(INGREDIENTS_COLLECTION)
|
|
const defaultIngredients = await ingredientsCollection.find({
|
|
available: true,
|
|
}).toArray()
|
|
return (defaultIngredients)
|
|
} catch (e) {
|
|
throw new Error(e)
|
|
}
|
|
}
|
|
|
|
const getCakeshape = async () => {
|
|
if (db === null) throw new Error('no db connection')
|
|
try {
|
|
const cakeshapeCollection = db.collection(CAKESHAPE_COLLECTION)
|
|
const defaultCakeshapes = await cakeshapeCollection.find({
|
|
available: true,
|
|
}).toArray()
|
|
return (defaultCakeshapes)
|
|
} catch (e) {
|
|
throw new Error(e)
|
|
}
|
|
}
|
|
|
|
const getCakesweight = async () => {
|
|
if (db === null) throw new Error('no db connection')
|
|
try {
|
|
const cakesweightCollection = db.collection(CAKESWEIGHT_COLLECTION)
|
|
const defaultCakesweights = await cakesweightCollection.find({
|
|
available: true,
|
|
}).toArray()
|
|
return (defaultCakesweights)
|
|
} catch (e) {
|
|
throw new Error(e)
|
|
}
|
|
}
|
|
|
|
const getStats = async () => {
|
|
if (db === null) throw new Error('no db connection')
|
|
try {
|
|
const adminstatsCollection = db.collection(ADMINSTATS_COLLECTION)
|
|
const defaultStats = await adminstatsCollection.find().toArray()
|
|
return (defaultStats)
|
|
} catch (e) {
|
|
throw new Error(e)
|
|
}
|
|
}
|
|
|
|
module.exports = {
|
|
getIngredients,
|
|
getCakeshape,
|
|
getCakesweight,
|
|
getStats,
|
|
}
|