Files
storage-manager/server/server.js
T
2020-07-06 23:19:57 -05:00

60 lines
1.4 KiB
JavaScript

const express = require('express');
const cors = require('cors')
const mongoose = require('mongoose');
const app = express();
app.use(cors());
const port = process.env.PORT || 5000;
const MONGO_IP_ADDRESS = '192.168.1.2';
mongoose.connect(`mongodb://${MONGO_IP_ADDRESS}/storage`, {useNewUrlParser: true});
const db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
console.log(`connected to mongodb: ${MONGO_IP_ADDRESS}`);
// we're connected!
});
/*------------MODELS------------*/
//create schema
var itemSchema = new mongoose.Schema({
name: String,
quantity: Number,
description: String,
});
var boxSchema = new mongoose.Schema({
id: String,
name: String,
description: String,
item: [itemSchema],
});
//compile schema into model
var Box = mongoose.model('box', boxSchema, 'box');
/*------------MODELS------------*/
/*------------CONTROLLER------------*/
app.listen(port, () => console.log(`Listening on port ${port}`));
// get all boxes
app.get('/box', async (req, res) => {
const query = Box.find({});
const data = await query.exec();
console.log(data);
res.send(data);
});
// create new box
app.post('/box', async (req, res) => {
console.log(req);
const query = Box.create();
const data = await query.exec();
console.log(data);
res.send(data);
});
/*------------CONTROLLER------------*/