안지영

Add some functions

......@@ -7,8 +7,22 @@ require('dotenv').config();
let SIGUN_CODE;
let SIGUNDONG_CODE;
var express = require('express');
var router = express.Router();
var request = require('request');
require('dotenv').config();
/* GET home page. */
let SIGUN_CODE;
let SIGUNDONG_CODE;
let x=0;
let y=0;
var GyeongGi_apikey=process.env.GyeongGi_apikey;
// 사용자가 index 페이지에서 주소를 입력하고 넘어오면
router.post('/', function(req, res) {
router.post('/', function (req, res) {
console.log(req.body);
let userLocation = req.body.userLocation;
// let userSi = req.body.si
// let userDong = req.body.dong;
......@@ -31,31 +45,208 @@ router.post('/', function(req, res) {
if (!err && res.statusCode == 200) {
var result = JSON.parse(body);
console.log('result', result);
xyList.push(result.documents[0].address.x);
xyList.push(result.documents[0].address.y);
console.log(xyList);
x=result.documents[0].address.x;
y=result.documents[0].address.y;
}
})
res.render('category', { userLocation: req.body.userLocation });
});
router.get('/food', function(req, res) {
router.get('/food', function (req, res) {
res.send('This is food');
});
router.get('/school', function(req, res) {
router.get('/school', function (req, res) {
var academynum = 0;
var librarynum = 0;
var total_academic = 0;
function callback(cb) {
cb();
}
let AcademyOptions = {
url: "https://openapi.gg.go.kr/TninsttInstutM?Type=json&SIGUN_CD=" + SGCD + "&Key=" + GyeongGi_apikey,
}
request(AcademyOptions, function (err, res, body) {
if (!err && res.statusCode == 200) {
var academy_result = JSON.parse(body);
if (academy_result.TninsttInstutM[0].head[1].RESULT.CODE == 'INFO-000') {
academynum = academy_result.TninsttInstutM[0].head[0].list_total_count;
console.log(academynum + "개의 학원이 존재합니다.");
}
else {
"학원이 존재하지 않습니다.";
}
}
})
let LibraryOptions = {
url: "https://openapi.gg.go.kr/Tbggibllbrm?Type=json&SIGUN_CD=" + SGCD + "&Key=" + GyeongGi_apikey,
}
request(LibraryOptions, function (err, res, body) {
if (!err && res.statusCode == 200) {
var library_result = JSON.parse(body);
//console.log(result.Tbggibllbrm[0].head[0].list_total_count);
library_result = library_result.Tbggibllbrm[0];
if (result.head[1].RESULT.CODE == 'INFO-000') {
librarynum = library_result.head[0].list_total_count;
console.log(librarynum + "개의 도서관이 존재합니다.");
}
else {
"도서관이 존재하지 않습니다.";
}
}
})
callback(function () {
total_academic = librarynum + academynum;
})
res.send('This is school');
});
router.get('/park', function(req, res) {
router.get('/park', function (req, res) {
var cityparknum = 0;
let ParkOptions = {
url: "https://openapi.gg.go.kr/CityPark?Type=json&SIGUN_CD=" + SGCD + "&Key=" + GyeongGi_apikey,
}
request(ParkOptions, function (err, res, body) {
if (!err && res.statusCode == 200) {
var park_result = JSON.parse(body);
if (park_result.CityPark[0].head[1].RESULT.CODE == 'INFO-000') {
cityparknum = park_result.CityPark[0].head[0].list_total_count;
console.log(cityparknum + "개의 도시공원이 존재합니다.");
}
else {
console.log("주변에 도시공원이 없습니다.");
}
}
})
res.send('This is park');
});
router.get('/transport', function(req, res) {
res.send('This is transport');
router.get('/transport', function (req, res) {
function callback(cb) {
cb();
}
var BusCnt = 0;
var busStationList = [];
var subwayStationList = [];
var SubwayCnt = 0;
var TotalCnt = 0;
// res.send('This is transport');
var apikey=process.env.ODSAY_APIKEY
let BusOptions = {
url: 'https://api.odsay.com/v1/api/pointSearch?lang=0&x=' + x + '&y=' + y + '&radius=500&stationClass=1&apiKey=' + apikey,
encoding: 'UTF-8',
}
request(BusOptions, function (err, res, body) {
if (!err && res.statusCode == 200) {
var bus_result = JSON.parse(body);
BusCnt = info_result.result.count;
console.log("버스정류장 개수:" + BusCnt);
for (var i = 0; i < BusCnt; i++) {
busStationList.push(bus_result.result.station[i].stationName);
}
console.log(busStationList);
callback(function () {
let SubwayOptions = {
url: 'https://api.odsay.com/v1/api/pointSearch?lang=0&x=' + x + '&y=' + y + '&radius=1000&stationClass=2&apiKey=' + apikey,
encoding: 'UTF-8',
}
request(BusOptions, function (err, res, body) {
if (!err && res.statusCode == 200) {
var subway_result = JSON.parse(body);
SubwayCnt = subway_result.result.count;
console.log("지하철역 개수:" + SubwayCnt);
for (var i = 0; i < SubwayCnt; i++) {
subwayStationList.push(subway_result.result.station[i].stationName);
}
console.log(subwayStationList);
callback(function () {
//console.log(BusCnt,SubwayCnt);
TotalCnt = BusCnt + SubwayCnt;
console.log("총 정류장 개수:", TotalCnt);
})
}
})
})
}
})
res.send(BusCnt);
});
router.get('/safe', function(req, res) {
router.get('/safe', function (req, res) {
var secretlightnum = 0; //보안등
var safebellnum = 0; //비상벨
var cctvnum = 0; //cctv개수
var total_safe = 0;
function callback(cb) {
cb();
}
let SecretLightOptions = {
url: "https://openapi.gg.go.kr/SECRTLGT?Type=json&SIGUN_CD=" + SGCD + "&Key=" + GyeongGi_apikey;
encoding: 'UTF-8',
}
request(SecretLightOptions, function (err, res, body) {
if (!err && res.statusCode == 200) {
secretlight_result = JSON.parse(xhr.responseText);
if (secretlight_result.SECRTLGT[0].head[1].RESULT.CODE == 'INFO-000') {
secretlightnum = secretlight_result.SECRTLGT[0].head[0].list_total_count;
console.log(secretlightnum + "개의 보안등이 존재합니다.");
}
else {
console.log("주변에 보안등이 없습니다.");
}
}
})
let SafeBellOptions = {
url: "https://openapi.gg.go.kr/Safeemrgncbell?Type=json&SIGUN_CD=" + SGCD + "&Key=" + GyeongGi_apikey,
}
request(SafeBellOptions, function (err, res, body) {
if (!err && res.statusCode == 200) {
safebell_result = JSON.parse(body);
if (safebell_result.Safeemrgncbell[0].head[1].RESULT.CODE == 'INFO-000') {
safebellnum = safebell_result.Safeemrgncbell[0].head[0].list_total_count;
console.log(safebellnum + "개의 안전 비상벨이 존재합니다.");
}
else {
console.log("주변에 안전 비상벨이 없습니다.");
}
}
})
let CCTVOptions = {
url: url = "https://openapi.gg.go.kr/CCTV?Type=json&SIGUN_CD=" + SGCD + "&Key=" + GyeongGi_apikey,
}
request(CCTVOptions, function (err, res, body) {
if (!err && res.statusCode == 200) {
cctv_result = JSON.parse(body);
if (cctv_result.CCTV[0].head[1].RESULT.CODE == 'INFO-000') {
cctvnum = cctv_result.CCTV[0].head[0].list_total_count;
console.log(cctvnum + "개의 CCTV가 존재합니다.");
}
else {
console.log("주변에 CCTV가 없습니다.");
}
}
})
callback(function () {
total_safe = safebellnum + secretlightnum + cctvnum;
})
res.send('This is safe');
});
router.get('/culture', function(req, res) {
router.get('/culture', function (req, res) {
res.send('This is culture');
});
......