김시환

Merge branch 'sihwan' of http://khuhub.khu.ac.kr/2019102158/emergency_room_ChatBot into sihwan

......@@ -6,22 +6,30 @@ globalThis.fetch = fetch.fetch;
var AddressList = new Array();
function getAddress(currQuery) {
fetch('https://dapi.kakao.com/v2/local/search/address.json?' + new URLSearchParams({
query: currQuery
}), {
method: "GET",
headers: {"Authorization": "KakaoAK c14234ba46c574c73715276c5644f397"}
})
.then(response => response.json())
.then(data => {
console.log(response)
AddressList = data.documents.map(({road_address})=>({road_address}));
console.log(AddressList)
return AddressList
})
function getAddress(currQuery, cb = ()=> {}) {
setTimeout(function () {
fetch('https://dapi.kakao.com/v2/local/search/address.json?' + new URLSearchParams({
query: currQuery
}), {
method: "GET",
headers: { "Authorization": "KakaoAK c14234ba46c574c73715276c5644f397" }
})
.then(response => response.json())
.then(data => {
//console.log(response)
AddressList = data.documents.map(({ road_address }) => ({ road_address }));
//console.log(AddressList)
cb(AddressList);
});
},100)
}
/*
getAddress('석수동길', function (address) {
console.log(address[0].road_address.address_name);
})
*/
......
const express= require('express');
const app = express();
var request = require('request');
const got = require('got');
//필요한 주소 정보 (data 형식 확정 x )
let addresses = {
let addresses = `{
"current_address" : { "address" : "현재 위치 주소", "x" : 127.1058342, "y" : 37.359708},
"number" : 10,
"number" : 2,
"hospital_data" :[
{"name" : "병원명", "address" : "병원 주소", "x" : 129.075986, "y" : 35.179470, "distance" : 0, "duration" : 0},
{"name" : "병원명", "address" : "병원 주소", "x" : 127.1058342, "y" : 37.359708, "distance" : 0, "duration" : 0}
]
}
}`
const address = JSON.parse(addresses)
var options = {
'method': 'GET',
......@@ -19,26 +22,41 @@ var options = {
'headers': {
'X-NCP-APIGW-API-KEY-ID': '12rhzhzq7g',
'X-NCP-APIGW-API-KEY': 'FhD45P91TxG2820MadrsiPOUjI6bQMJhddnHZIeI'
}
},
};
const ID = '12rhzhzq7g';
const KEY = 'FhD45P91TxG2820MadrsiPOUjI6bQMJhddnHZIeI';
function direction(data){
async function direction(data){
var num = data.number;
for (let i = 0; i< num;i++){
const _url = 'https://naveropenapi.apigw.ntruss.com/map-direction-15/v1/driving?start='+data.current_address.x+','+data.current_address.y+'&goal='+data.hospital_data[i].x+','+data.hospital_data[i].y+'&option=trafast';
options.url = _url;
request(options,function(error, respose){
var a = []
for (let i =0; i<num; i++){
a.push('https://naveropenapi.apigw.ntruss.com/map-direction-15/v1/driving?start='+data.current_address.x+','+data.current_address.y+'&goal='+data.hospital_data[i].x+','+data.hospital_data[i].y+'&option=trafast')
}
console.log(a)
const PromiseList = a.map(async (e)=> {
const _url = 'https://naveropenapi.apigw.ntruss.com/map-direction-15/v1/driving?start='+data.current_address.x+','+data.current_address.y+'&goal='+data.hospital_data[i].x+','+data.hospital_data[i].y+'&option=trafast';
options.url = _url;
return await request(options,function(error, respose){
console.log("11111111111111111")
var databody = JSON.parse(respose.body);
if (databody.code !=1){
console.log("2222222222222222")
console.log(databody)
var distance = databody.route.trafast[0].summary.distance/1000; // km 단위
var duration = databody.route.trafast[0].summary.duration/1000/60; // 분 단위dy
data.hospital_data[count].distance = distance;
data.hospital_data[count].duration = duration;
}
)
}
return data}
data.hospital_data[i].distance = distance;
console.log(data.hospital_data[i].distance)
data.hospital_data[i].duration = duration;}
})
})
const result = await Promise.all(PromiseList)
console.log(result)
return result}
console.log(direction(address))
\ No newline at end of file
......