[WIP] Getting all Polygons in a game.

main
Umbra Sheep 7 years ago
parent 9cf06a7243
commit c6f28ab93a

@ -39,9 +39,30 @@ CREATE TABLE `polygonPoints` (
FOREIGN KEY (polygonID) REFERENCES polygonArea(polygonID)
);
DELIMITER //
CREATE PROCEDURE getPolygonPoints
(IN id VARCHAR(6))
BEGIN
SELECT * FROM `polygonPoints`
JOIN `polygonArea` ON
`polygonArea`.polygonID = polygonPoints.polygonID
JOIN (SELECT * FROM `userJoinedGames` WHERE gameID = id) AS userColour ON
`polygonArea`.userID = userColour.UserID
WHERE
polygonArea.gameID = id;
END //
DELIMITER ;
INSERT INTO `gameInstances` (gameID) VALUES ("samdum");
INSERT INTO `users` (userID, nickname) VALUES ("samded", "Lesmaux");
INSERT INTO `users` (userID, nickname) VALUES ("fanded", "Umbra Sheep");
INSERT INTO `polygonArea` (gameID, polygonID, userID, area) VALUES
("samdum", "someuniqueid", "samded", 100000.1);
INSERT INTO `polygonPoints` (polygonID, lat, lng) VALUES
("someuniqueid", -43.5623, 172.5655),
("someuniqueid", -43.5623, 172.5650),
("someuniqueid", -43.5628, 172.5650),
("someuniqueid", -43.5628, 172.5655);
-- TODO CREATE PROCEDURE FOR GENERATING GAME ID
-- concat(substring('ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', rand()*36+1, 1),
-- substring('ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', rand()*36+1, 1),

@ -6,7 +6,7 @@ module.exports = function (server) {
server.get("/polygons", function (req, res, next) {
if (versioner.currentVersion === 1) {
apiV1.getPolygons(res);
apiV1.getPolygons(req, res);
return next();
}
res.send(200);

@ -1,11 +1,17 @@
let db = require("../config/db.js");
module.exports = {
getPolygons : function (res) {
db.get().query("", function(err, rows){
if (err) return res.send(400);
res.send(rows);
return;
});
getPolygons : function (req, res) {
if (req.query.gameID != null) {
let query = "CALL getPolygonPoints(\"samdum\");";
console.log("hi");
db.get().query(query, function(err, rows){
if (err) return res.send(400);
res.send(rows[0]);
return;
});
} else {
res.send(500);
}
}
}
Loading…
Cancel
Save