Untitled
unknown
plain_text
3 years ago
10 kB
3
Indexable
Never
map.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous"> <title>Document</title> <style> #map { height: 500px; width: 100%; } </style> </head> <body style="background-color:rgb(141, 179, 179);"> <h3 style="color:darkblue; margin-right: 10%;margin-left: 10%;margin-top: 2%;">WELCOME</h3> <form id="form" action="/search" enctype="form-data" method="post" ion="/search" style=" margin-right: 10%;margin-left: 10%;margin-top: 2%;"> <label for="user">Choose Car Id </label>  <select name="id" id="id"> <option value="1">1</option> <option value="2">2</option> </select>  <label for="user">Choose Time </label>   <select name="time" id="time"> <option value="0:30">00:30</option> <option value="1:00">01:00</option> <option value="1:30">01:30</option> <option value="2:00">02:00</option> <option value="2:30">02:30</option> <option value="3:00">03:00</option> <option value="3:30">03:30</option> <option value="4:00">04:00</option> <option value="4:30">04:30</option> <option value="5:00">05:00</option> <option value="5:30">05:30</option> <option value="6:00">06:00</option> <option value="6:30">06:30</option> <option value="7:00">07:00</option> <option value="7:30">07:30</option> <option value="8:00">08:00</option> <option value="8:30">08:30</option> <option value="9:00">09:00</option> <option value="9:30">09:30</option> <option value="10:00">10:00</option> <option value="10:30">10:30</option> <option value="11:00">11:00</option> <option value="11:30">11:30</option> <option value="12:00">12:00</option> <option value="12:30">12:30</option> <option value="13:00">13:00</option> <option value="13:30">13:30</option> <option value="14:00">14:00</option> <option value="14:30">14:30</option> <option value="15:00">15:00</option> <option value="15:30">15:30</option> <option value="16:00">16:00</option> <option value="16:30">16:30</option> <option value="17:00">17:00</option> <option value="17:30">17:30</option> <option value="18:00">18:00</option> <option value="18:30">18:30</option> <option value="19:00">19:00</option> <option value="19:30">19:30</option> <option value="20:00">20:00</option> <option value="20:30">20:30</option> <option value="21:00">21:00</option> <option value="21:30">21:30</option> <option value="22:00">22:00</option> <option value="22:30">22:30</option> <option value="23:00">23:00</option> <option value="23:30">23:30</option> </select>   <button id="search" onclick="myFunction()">Search</button> <br> <label for="user">Choose Car Id </label>  <select name="id" id="id"> <option value="1">1</option> <option value="2">2</option> </select>  <label for="user">Choose Time </label>   <select name="time" id="time"> <option value="12:00">12:00</option> <option value="12:30">12:30</option> <option value="13:00">13:00</option> <option value="13:30">13:30</option> <option value="14:00">14:00</option> <option value="14:30">14:30</option> <option value="15:00">15:00</option> <option value="15:30">15:30</option> <option value="16:00">16:00</option> <option value="16:30">16:30</option> <option value="17:00">17:00</option> <option value="17:30">17:30</option> </select>   <button id="search" onclick="myFunction()">Search</button> <br> <br> <div id='map'> <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB5BI6-6K96G5EKZNSGPR7B-3qV5HdLJgY&callback=initMap" async></script> <script> var map,marker,poly; var coord = []; function initMap() { var options = { zoom: 10, center: { lat: 59.334591, lng: 18.063240 }, } map = new google.maps.Map(document.getElementById("map"), options); } function myFunction() { let url = "http://localhost:3000/files"; fetch(url).then(response => response.json()) .then((result) => { console.log(result[0].lat) console.log(typeof result[0].lat) var options = { zoom: 14, center: { lat: result[result.length-1].lat, lng: result[result.length-1].long }, } map = new google.maps.Map(document.getElementById("map"), options); for (let i = 0; i < result.length; i++) { marker = new google.maps.Marker({ position: new google.maps.LatLng(result[i].lat, result[i].long), map: map }); coord.push({lat:result[i].lat,lng: result[i].long}) }; poly = new google.maps.Polyline({ path:coord, strokeColor:"#FF0000", strokeOpacity:0.8, strokeWeight:2 }); poly.setMap(map); alert("test")}) .catch(error => console.log('error:', error)); } </script> </div> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js" integrity="sha384-7+zCNj/IqJ95wo16oMtfsKbZ9ccEh31eOz1HGyDuCQ6wgnyJNSYdrPa03rtR1zdB" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js" integrity="sha384-QJHtvGhmr9XOIpI6YVutG+2QOK9T+ZnN4kzFN1RtK3zEFEIsxhlmWl5/YESvpZ13" crossorigin="anonymous"></script> </form> </body> </html> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js" integrity="sha384-7+zCNj/IqJ95wo16oMtfsKbZ9ccEh31eOz1HGyDuCQ6wgnyJNSYdrPa03rtR1zdB" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js" integrity="sha384-QJHtvGhmr9XOIpI6YVutG+2QOK9T+ZnN4kzFN1RtK3zEFEIsxhlmWl5/YESvpZ13" crossorigin="anonymous"></script> </form> </body> </html> main.js const express = require('express'); const mongoose = require('mongoose') const csv = require('csv-parser') const fs= require('fs') const app =express(); const path =require('path'); const mysql = require('mysql2'); const bodyParser = require('body-parser'); const user = require('./data.js') app.use(express.json()); app.use(express.urlencoded({ extended: true })) app.use(bodyParser.json()); app.use(bodyParser.raw()) app.use(bodyParser.urlencoded({ extended: true })); app.listen(3000) const result =[] const zmq = require('zeromq') /*fs.createReadStream('car1_data.csv').pipe(csv({})).on('data',(data)=>result.push(data)).on('end',() => {}); const sock = new zmq.Push(); run(); async function run () { await sock.bind("tcp://127.0.0.1:3000"); console.log("Server is ready listening on port 3000"); console.log("Press any key to start sending the jobs!") process.stdin.once("data", send); } //sending the jobs to the workers async function send () { console.log("About to send jobs!"); for (let i = 0 ;i < result.length; i++) { await sock.send(JSON.stringify(result[i])); //wait 500ms await new Promise(resolve => setTimeout(resolve, 200)) } }*/ var connection = mysql.createConnection({ connectionLimit:10, host: 'localhost', user: 'root', password: '3005', database: 'user' }); connection.connect(function(error){ if(error){ console.log("err") } else{ console.log('connected') } }) app.get('/',(req,res)=>{ res.sendFile(path.join(__dirname,'index.html')); }); app.get('/map',(req,res)=>{ res.sendFile(path.join(__dirname,'map.html')); }); var userID,time,id; app.post("/search", (req, res, next) => { time=req.body.time; id=req.body.id; }); app.get('/files',async (req,res,next)=>{ const l = await user.find({time:time,id:id}).exec(); const t= JSON.stringify(l) const a=JSON.parse(t) const l1 = await user.find({int:{$gt : a[0].int-0.020833 ,$lte : a[0].int }}).exec(); const t1= JSON.stringify(l1) const a1=JSON.parse(t1) res.json(a1) }); app.post("/submit", (req, res, next) => { userID=req.body.password; if(req.body.password==" "&& req.body.name==" "){ return res.status(500).json({ message:"Make sure there isn't any empty field" }); } else if(req.body.password==""|| req.body.name==""){ return res.status(500).json({ message:"Make sure there isn't any empty field" }); } else{ connection.query('SELECT * FROM `login`' , (err, rows) => { if (err) { console.log("Error") } else{ console.log("success") for(let i=0;i<rows.length;i++){ if(rows[i].username==req.body.name && rows[i].password==req.body.password ) { res.redirect('/map') } else { res.sendFile(path.join(__dirname,'msg.html')) }} } }) } })