Skip to content

Latest commit

 

History

History
40 lines (32 loc) · 4.32 KB

README.md

File metadata and controls

40 lines (32 loc) · 4.32 KB

Web Site Url ( 배포 중단 )

https://hospital.jintam.site

프로젝트 개요

  • 해당 프로젝트는 한국교통대학교 진로탐색 학기제를 통해 팀을 구성하고 진행한 프로젝트
  • 모든 병원의 진료가 끝난 시간 구급차를 부르기에는 애매하고 함께 가줄 사람이 있는 경우의 사용자에게 주변 응급실 정보를 제공하기 위한 목적의 서비스
  • 필연적으로 응급실에 가야하는 응급상황이라면 AED 가 필요한 경우가 존재하고, 또한 응급상황 발생시 구급차가 오기전에 조취를 취해야 하는 경우 주변 AED 정보와 위치를 제공한다면 사용자에게 있어 좋은 영향을 줄 것이라고 판단

Main Page

1

Features

  • 주변 병원 탐색

    • Kakao Map Api 기본 기능을 활용해 현재 위치를 파악하고 그에 따른 주변 병원 탐색 2
  • 병원 이름으로 검색

    • Kakao Map Api 기본 기능을 활용해 사용자가 입력한 검색어를 바탕으로 결과 제공
      3

4

  • 반경 11km내의 응급실과 AED 탐색 (응급실 상세정보 페이지에는 실시간 가용 병상 수와 입원 가능 여부 표시, AED는 지도에 아이콘을 이용해 표시)
    • 공공 데이터 포털의 데이터를 활용해 병원 정보와 각 병원이 응급의료 기관을 가지고 있는지 등의 정보와 전국 AED 정보를 DB 에 적재
    • 사용자가 해당 페이지로 진입하면 Kakao Map Api 를 통해 현재 위치를 백엔드에게 제공
    • 백엔드에서 전달받은 사용자의 현재 위치를 기반으로 DB 에서 반경 11km 내의 응급의료 기관과 AED 를 조회
    • 조회된 응급의료 기관은 목록으로 제공, AED 는 마커를 이용해 지도에 표시하고 마커를 클릭하면 해당 AED 의 상세 위치 표출
    • 조회된 응급의료 기관 목록 중 사용자가 선택한 응급의료 기관의 이름을 백엔드에서 전달받아 해당 병원의 이름으로 DB 에서 주소 정보를 조회 후 공공데이터 포털의 실시간 응급실 가용병상 등의 실시간 정보를 크롤링
      • 실시간 응급실 가용병상 등의 실시간 정보는 공공데이터 포털의 Api 의 요청 변수가 시도, 시군구 이기에 사용자가 선택한 병원의 이름으로 바로 데이터를 크롤링 하면 DB 에 부하가 적어 좋겠지만 불가능함
      • 또한 이 로직에서 사용자 선택 병원으로 DB 조회 -> 조회된 병원의 주소 (데이터 정제, 병원마다 같은 서울이여도 서울특별시, 서울시 등 전부 다르게 등록되어 있음) -> 실시간 데이터 크롤링 -> 크롤링한 데이터에서 해당 병원의 기관 코드와 일치하는 병원 탐색 -> 사용자에게 반환
      • 이러한 데이터 제공에 있어 많은 과정이 진행되기에 수행 시간이 길다(이 부분은 ERD 설계를 통해 병원 정보를 조회할 때 조회되는 속성값을 줄임으로써 어느정도는 해소가 가능해 보임) 5

6

추가적으로 진행할 사항

  • 실시간 데이터를 제공함에 있어 로직 수행 시간을 단축시킬 필요성이 있음
  • 병원 데이터를 저장하는 테이블의 속성량이 너무 많기 때문에 조회시 쿼리 수행시간이 길어짐. ERD 설계를 통해 분리할 필요성이 존재
  • 현재 모든 api 의 요청 주소가 test 용도로 작성되어 있음 (restful 한 api 작성이 필요), 개발 당시 restful 이 무슨 말인지도 모르고 무작정 개발한 것이 문제
  • 프론트 백엔드 전부 실제적으로 배포까지 한 웹 서비스가 처음이기에 부족한 점이 많이 보임. 전체적인 구조의 개선이 필요함