Skip to content

Commit 78890ef

Browse files
authored
Merge pull request #15 from ucfcs/feature/post-requests
Feature/post requests
2 parents 0729e83 + 6826262 commit 78890ef

9 files changed

Lines changed: 78 additions & 24 deletions

File tree

.gitignore

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
1-
/duct-drone-app/node_modules
2-
/duct-drone-app/test/js
3-
/duct-drone-app/test/browsertest/js
4-
/duct-drone-app/test/fixtures/temp-cache-fixture
5-
/duct-drone-app/benchmark/js
6-
/benchmark/fixtures
7-
/duct-drone-app/examples/**/dist
8-
/duct-drone-app/coverage
9-
/duct-drone-app/.DS_Store
10-
/duct-drone-app/*.log
11-
/duct-drone-app/.idea
12-
/duct-drone-app/.vscode
13-
/duct-drone-app/.eslintcache
14-
/duct-drone-app/package-lock.json
15-
/Documents/*
16-
/duct-drone-app/.vs/
17-
duct-drone-app/src/.vs/
18-
/.vs/
19-
/duct-drone-app/build/
1+
/duct-drone-app/node_modules
2+
/duct-drone-app/test/js
3+
/duct-drone-app/test/browsertest/js
4+
/duct-drone-app/test/fixtures/temp-cache-fixture
5+
/duct-drone-app/benchmark/js
6+
/benchmark/fixtures
7+
/duct-drone-app/examples/**/dist
8+
/duct-drone-app/coverage
9+
/duct-drone-app/.DS_Store
10+
/duct-drone-app/*.log
11+
/duct-drone-app/.idea
12+
/duct-drone-app/.vscode
13+
/duct-drone-app/.eslintcache
14+
/duct-drone-app/package-lock.json
15+
/duct-drone-app/server/mocks.json
16+
/Documents/*
17+
/duct-drone-app/.vs/
18+
duct-drone-app/src/.vs/
19+
/.vs/
20+
/duct-drone-app/build/

duct-drone-app/package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
"webpack-dev-server": "^3.2.1"
3232
},
3333
"dependencies": {
34+
"body-parser": "^1.19.0",
3435
"express": "^4.16.4",
3536
"mongodb": "^3.2.2",
3637
"mongoose": "^5.4.22",

duct-drone-app/server/controllers/entryController.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,29 @@
11
const Entry = require('../daos/entrydao');
22

3+
exports.createEntry = function (req, res, next) {
4+
const entry = {
5+
time: req.body.time,
6+
temperature: req.body.temperature,
7+
air_velocity: req.body.air_velocity,
8+
coordinates:
9+
{
10+
x: req.body.coordinates.x,
11+
y: req.body.coordinates.y,
12+
z: req.body.coordinates.z,
13+
},
14+
};
15+
Entry.create(entry, (err, entry) => {
16+
if (err) {
17+
res.json({
18+
error: err,
19+
});
20+
}
21+
res.json({
22+
message: 'Entry created successfully',
23+
});
24+
});
25+
};
26+
327
exports.getEntries = function (req, res, next) {
428
Entry.get({}, (err, entry) => {
529
if (err) {

duct-drone-app/server/controllers/mapController.js

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,27 @@
1-
const map = require('../daos/mapdao');
1+
const Map = require('../daos/mapdao');
2+
3+
exports.createMap = function (req, res, next) {
4+
console.log(req.body);
5+
const map = {
6+
name: req.body.name,
7+
map_link: req.body.map_link,
8+
date: req.body.date,
9+
sensorData: req.body.sensorData,
10+
};
11+
Map.create(map, (err, map) => {
12+
if (err) {
13+
res.json({
14+
error: err,
15+
});
16+
}
17+
res.json({
18+
message: 'Map created successfully',
19+
});
20+
});
21+
};
222

323
exports.getMaps = function (req, res, next) {
4-
map.get({}, (err, map) => {
24+
Map.get({}, (err, map) => {
525
if (err) {
626
res.json({
727
error: err,

duct-drone-app/server/index.js

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
const express = require('express');
22
const path = require('path');
33
const mongoose = require('mongoose');
4-
4+
const bodyParser = require('body-parser');
55
const entryRoute = require('./routes/entry');
66
const mapRoute = require('./routes/map');
77

@@ -10,6 +10,9 @@ const server = '127.0.0.1:27017'; // DB SERVER
1010
const database = 'test'; // DB NAME
1111
const port = process.env.PORT || 5000;
1212

13+
14+
const bodyParserJSON = bodyParser.json();
15+
const bodyParserURLEncoded = bodyParser.urlencoded({ extended: true });
1316
// respond with "hello world" when a GET request is made to the homepage
1417
app.use(express.static(path.join(__dirname, '../build')));
1518

@@ -24,6 +27,8 @@ const db = mongoose.connection;
2427
db.on('error', console.error.bind(console, 'MongoDB connection error:'));
2528

2629
const router = express.Router();
30+
app.use(bodyParserJSON);
31+
app.use(bodyParserURLEncoded);
2732
app.use('/api', router);
2833
entryRoute(router);
2934
mapRoute(router);

duct-drone-app/server/models/entrymodel.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ const mongoose = require('mongoose');
22

33
const { Schema } = mongoose;
44
const entrySchema = new Schema({
5-
coordinate: [{ x: Number, y: Number, z: Number }],
5+
coordinates: { x: Number, y: Number, z: Number },
66
time: Date,
77
temperature: Schema.Types.Decimal128,
88
air_velocity: Schema.Types.Decimal128,
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
const mongoose = require('mongoose');
2+
const entrySchema = require('./entrymodel');
23

34
const { Schema } = mongoose;
45

56
const mapSchema = new Schema({
67
name: String,
78
map_link: String,
89
date: Date,
9-
sensorData: [{ type: Schema.Types.ObjectId, ref: 'Entry' }],
10+
sensorData: [entrySchema],
1011
});
1112

1213
module.exports = mapSchema;

duct-drone-app/server/routes/entry.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@ const Entry = require('../controllers/entryController');
22

33
module.exports = function (router) {
44
router.get('/get/entries', Entry.getEntries);
5+
router.post('/create/entry', Entry.createEntry);
56
};

duct-drone-app/server/routes/map.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@ const Map = require('../controllers/mapController');
22

33
module.exports = function (router) {
44
router.get('/get/maps', Map.getMaps);
5+
router.post('/create/map', Map.createMap);
56
};

0 commit comments

Comments
 (0)