Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
module.exports = function(app) {
var Driver = require('./models/driver');
// server routes ===========================================================
// see available driver
app.get('/availabledriver', function(req, res){
Driver.find({"status" : "available"}, function(err, foundDriver){
res.json(foundDriver);
});
});
// driver want to find order
app.post('/findorder', function(req, res){
Driver.findOne({"idDriver" : req.body.id}, function(err, foundDriver){
if (err){
var response = {"status" : 503, "message" : "Database error detected"};
res.json(response);
}
else {
if (!foundDriver){
Driver.create({"idDriver" : req.body.id, "status" : "available"}, function(error, addDriver){
if(!error && addDriver){
var response = {"status" : 200, "message" : "Driver added to available driver list"};
res.json(response);
}
});
} else {
foundDriver["status"] = "available";
foundDriver.save();
var response = {"status" : 200, "message" : "Driver status has changed to available"};
res.json(response);
}
}
});
});
// user select certain driver
app.post('/selectdriver', function(req, res){
Driver.findOne({"idDriver" : req.body.id, "status" : "available"}, function(err, foundDriver){
if (!err && foundDriver){
foundDriver["status"] = "acceptorder";
foundDriver.save();
var response = {"status" : 200, "message" : "Driver has accepted an order"};
res.json(response);
}
else {
var response = {"status" : 503, "message" : "Database error detected"};
res.json(response);
}
});
});
// user finishes their order
app.post('/finishorder', function(req, res){
Driver.findOne({"idDriver" : req.body.id, "status" : "acceptorder"}, function(err, foundDriver){
if (!err && foundDriver){
foundDriver["status"] = "available";
foundDriver.save();
var response = {"status" : 200, "message" : "Driver has finished the order"};
res.json(response);
}
else {
var response = {"status" : 503, "message" : "Database error detected"};
res.json(response);
}
});
});
// frontend routes =========================================================
// route to handle all angular requests
app.get('*', function(req, res) {
res.send('./public/index.html');
});
};