Files
dashboard/backend/index.js

41 lines
1.4 KiB
JavaScript

const express = require('express')
const app = express();
const status = require('http-status');
var mysql = require('mysql');
var connection = mysql.createConnection({
host: 'localhost',
user: 'simcompanies',
password: '',
database: 'simcompanies'
});
const mockDataDay = require('./mockdata-test/day.json')
app.get('/API/day', function (req, res) {
var date = new Date(req.query.date);
const kind = parseInt(req.query.kind);
if (date instanceof Date && Number.isInteger(kind)) {
//Mock Data:
if (kind === -1) return res.send(mockDataDay);
if (!isNaN(date.getTime()) && kind >= 1 && kind <= 113) {
const daybegin = `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`;
date.setDate(date.getDate() + 1);
const dayend = `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}`;
const querystring = `SELECT time, price FROM market WHERE kind = ${kind} AND time > "${daybegin}" AND time < "${dayend}"`
connection.query(querystring, function (error, results, fields) {
if (error) {
throw error;
}
res.send(results);
});
}
else
res.status(status.BAD_REQUEST).send("invalid data provided");
}
else
res.status(status.BAD_REQUEST).send("invalid data provided");
});
app.listen(3001);