Newer
Older
module.exports = function(app) {
var Driver = require('./models/driver');
var FcmToken = require('./models/fcmtoken');
var Chat = require('./models/chat');
// ====================== SERVER ROUTES ============================
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
// 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);
}
});
});
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
// FOR HANDLING FCM TOKEN USER
// add user fcm token
app.post('/addfcmtoken', function(req, res){
FcmToken.findOne({"id" : req.body.id}, function(err, foundUser){
if (err){
var response = {"status" : 503, "message" : "Database error detected"};
res.json(response);
}
else {
if (!foundUser){
FcmToken.create({"id" : req.body.id, "status" : "available"}, function(error, addUser){
if(!error && addUser){
var response = {"status" : 200, "message" : "User token has been added to token list"};
res.json(response);
}
});
} else {
foundUser["token"] = req.body.token;
foundUser.save();
var response = {"status" : 200, "message" : "User token has been updated"};
res.json(response);
}
}
});
});
// delete user fcm token
app.post('/deletefcmtoken', function(req, res){
FcmToken.findOne({"id" : req.body.id}, function(err, foundUser){
if (err){
var response = {"status" : 503, "message" : "Database error detected"};
res.json(response);
}
else {
foundUser.remove();
var response = {"status" : 200, "message" : "User token has been deleted"};
res.json(response);
}
});
});
// Chat Service
// ====================== FRONTEND ROUTES ============================