123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227 |
- //---------------------------------------------------------------------------
- #ifndef CDSVilgFrcsFH
- #define CDSVilgFrcsFH
- //---------------------------------------------------------------------------
- #include <Classes.hpp>
- #include <ADODB.hpp>
- #include <DB.hpp>
- #include "ITSLibF.h"
- //---------------------------------------------------------------------------
- #define VILG_NONE "-"
- #define VILG_WARNING "주의보"
- #define VILG_ALARM "경보"
- #define ATMP_NONE "진행중"
- #define ATMP_GOOD "좋음"
- #define ATMP_NORMAL "보통"
- #define ATMP_BAD "나쁨"
- #define ATM_VERY_BAD "매우나쁨"
- /*
- * TB_VILG_SHPR(초단기실황)
- */
- typedef struct tagVilgShpr
- {
- String VILG_FRCS_ZONE_CD; // N NUMBER(14) N 동네 예보 구역 코드
- String ANNC_DT; // N VARCHAR2(14) Y 발표 일시
- String TMPR; // N NUMBER(6,3) Y 온도
- String PRAM_1HH; // N NUMBER(5,2) Y 0 강수량 1시간
- String ATMP_STTS; // N NUMBER(2) Y 대기 상태
- String ESWS_WNSP; // N NUMBER(5,2) Y 0 동서 풍속
- String NRST_WNSP; // N NUMBER(5,2) Y 0 남북 풍속
- String HMDT; // N NUMBER(5,2) Y 0 습도
- String PRCP_STTS; // N NUMBER(3) Y 0 강수 상태
- String THND_STTS; // N NUMBER(2) Y 낙뢰 상태
- String WNDR; // N NUMBER(2) Y 풍향
- String WNSP; // N NUMBER(5,2) Y 0 풍속
- String ATMP_STTS_NM; // 하늘상태 - 맑음(1), 구름조금(2), 구름많음(3), 흐림(4)
- String ESWS_WNSP_NM; // 동서바람성분(m/s) - 동(+), 서(-)
- String NRST_WNSP_NM; // 남북바람성분(m/s) - 북(+), 남(-)
- String PRCP_STTS_NM; // 강수형태 - 없음(0), 비(1), 비/눈(2), 눈(3)
- String THND_STTS_NM; // 낙뢰 - 없음(0), 있음(1)
- String WNDR_NM; // N NUMBER(2) Y 풍향
- String WNSP_ALARM; // 강풍알람
- } VILG_SHPR;
- /*
- * VilgFrcs class
- */
- class TItsVilgFrcs
- {
- public:
- TItsVilgFrcs() {};
- ~TItsVilgFrcs() {};
- private:
- public:
- String VILG_FRCS_ZONE_CD; // N NUMBER(14) N 동네 예보 구역 코드
- String VILG_FRCS_ZONE_NM; // N VARCHAR2(40) Y 동네 예보 구역 명
- String X_CRDN;
- String Y_CRDN;
- String ANNC_DT; // N VARCHAR2(14) N 발표 일시
- String ORD; // N NUMBER(3) N 0 순서
- String HH; // N NUMBER(3) Y 0 시간
- String DD; // N NUMBER(3) Y 0 일
- String PRST_TMPR; // N NUMBER(6,3) Y 현재 온도
- String HGHS_TMPR; // N NUMBER(6,3) Y 최고 온도
- String LWST_TMPR; // N NUMBER(6,3) Y 최저 온도
- String ATMP_STTS; // N NUMBER(2) Y 대기 상태
- String WTCD_KOR_NM; // N VARCHAR2(20) Y 날씨 한글 명
- String PRCP_STTS; // N NUMBER(3) Y 0 강수 상태
- String WTCD_ENGL_NM; // N VARCHAR2(20) Y 날씨 영문 명
- String PRCP_PR; // N NUMBER(5,2) Y 0 강수 확률
- String ESTM_PRAM_12HH; // N NUMBER(5,2) Y 0 예상 강수량 12시간
- String ESTM_SNOW_AMUT_12HH; // N NUMBER(5,2) Y 0 예상 눈 량 12시간
- String WNSP; // N NUMBER(5,2) Y 0 풍속
- String WNDR; // N NUMBER(2) Y 풍향
- String WNDR_KOR_NM; // N VARCHAR2(20) Y 풍향 한글 명
- String WNDR_ENGL_NM; // N VARCHAR2(20) Y 풍향 영문 명
- String HMDT; // N NUMBER(5,2) Y 0 습도
- String ESTM_PRCP_AMUT_6HH; // N NUMBER(5,2) Y 0 예상 강수 량 6시간
- String ESTM_SNOW_AMUT_6HH; // N NUMBER(5,2) Y 0 예상 눈 량 6시간
- String WTCD_KOR_CD;
- String PRCP_ALARM; // 호우알람
- String SNOW_ALARM; // 대설알람
- VILG_SHPR shpr;
- protected:
- public:
- };
- //---------------------------------------------------------------------------
- /*
- * TB_ATMP_PLTN_RT_PNST(대기 오염 실시간 현황)
- */
- typedef struct tagAtmpPltnRtPnst
- {
- String ATMP_STTN_NM; // N VARCHAR2(30) N 측정소 명
- String MSRM_DT; // N VARCHAR2(14) Y 측정 일시
- String MSRM_SYST_NM; // N VARCHAR2(10) Y 측정 시스템 명
- String CO_VAL; // N VARCHAR2(10) Y CO 값
- String SO2_VAL; // N VARCHAR2(10) Y SO2 값
- String NO2_VAL; // N VARCHAR2(10) Y NO2 값
- String O3_VAL; // N VARCHAR2(10) Y O3 값
- String PM10_VAL; // N VARCHAR2(10) Y PM10 값
- String PM10_24HH_VAL; // N VARCHAR2(10) Y PM10 24시간 값
- String PM25_VAL; // N VARCHAR2(10) Y PM25 값
- String PM25_24HH_VAL; // N VARCHAR2(10) Y PM25 24시간 값
- String INTG_ATMP_VAL; // N VARCHAR2(10) Y 통합 대기 값
- String INTG_ATMP_GRAD; // N VARCHAR2(10) Y 통합 대기 등급
- String SO2_GRAD; // N VARCHAR2(10) Y SO2 등급
- String CO_GRAD; // N VARCHAR2(10) Y CO 등급
- String O3_GRAD; // N VARCHAR2(10) Y O3 드급
- String NO2_GRAD; // N VARCHAR2(10) Y NO2 등급
- String PM10_24HH_GRAD; // N VARCHAR2(10) Y PM10 24시간 등급
- String PM25_24HH_GRAD; // N VARCHAR2(10) Y PM25 24시간 등급
- String PM10_1HH_GRAD; // N VARCHAR2(10) Y PM10 1시간 등급
- String PM25_1HH_GRAD; // N VARCHAR2(10) Y PM25 1시간 등급
- String INTG_ATMP_GRAD_NM; // N VARCHAR2(10) Y 통합 대기 등급
- String SO2_GRAD_NM; // N VARCHAR2(10) Y SO2 등급
- String CO_GRAD_NM; // N VARCHAR2(10) Y CO 등급
- String O3_GRAD_NM; // N VARCHAR2(10) Y O3 드급
- String NO2_GRAD_NM; // N VARCHAR2(10) Y NO2 등급
- String PM10_24HH_GRAD_NM; // N VARCHAR2(10) Y PM10 24시간 등급
- String PM25_24HH_GRAD_NM; // N VARCHAR2(10) Y PM25 24시간 등급
- String PM10_1HH_GRAD_NM; // N VARCHAR2(10) Y PM10 1시간 등급
- String PM25_1HH_GRAD_NM; // N VARCHAR2(10) Y PM25 1시간 등급
- String UPDT_DT; // N VARCHAR2(14) Y 갱신 일시
- } ATMP_PLTN_RT_PNST;
- /*
- * AtmpPltn class(미세먼지 클래스)
- */
- class TItsAtmpPltn
- {
- public:
- TItsAtmpPltn() {};
- ~TItsAtmpPltn() {};
- private:
- public:
- String ATMP_STTN_NMBR; // N NUMBER(10) N 측정소 번호
- String ATMP_STTN_NM; // N VARCHAR2(30) N 측정소 명
- String ATMP_STTN_ADDR; // N VARCHAR2(200) Y 측정소 주소
- String ISTL_YY; // N VARCHAR2(4) Y 설치 년도
- String MNGM_INTN_NM; // N VARCHAR2(100) Y 관리 기관 명
- String MSRM_SYST_NM; // N VARCHAR2(10) Y 측정 시스템 명
- String MSRM_ITEM; // N VARCHAR2(100) Y 측정 항목
- String X_CRDN; // N NUMBER(11,8) Y X 좌표
- String Y_CRDN; // N NUMBER(10,8) Y Y 좌표
- ATMP_PLTN_RT_PNST pnst;
- protected:
- public:
- };
- //---------------------------------------------------------------------------
- /*
- * 대기오염특보 클래스
- */
- class TItsAtmpSprp
- {
- public:
- TItsAtmpSprp() {};
- ~TItsAtmpSprp() {};
- private:
- public:
- String ATMP_PLTN_KIND; // N VARCHAR2(1) N 대기 오염 종류(1:미세먼지, 2:초미세먼지)
- String ANNC_DT; // N VARCHAR2(14) Y Update 시간
- String REGN_CD; // N VARCHAR2(1) Y 2 권역 코드(1:북부권, 2:동부권, 3:중부권, 4:남부권) 남양주=동부권
- String ANNC_YMD; // N VARCHAR2(8) Y 발표 일자(4)
- String ANNC_HH; // N VARCHAR2(2) Y 발표 시간(2)
- String ANNC_GRAD; // N VARCHAR2(1) Y 발표 등급(1:주의보, 2:경보, 5:황사경보)
- String ANNC_DVSN; // N VARCHAR2(1) Y 발표 구분(1:발령, 0:해제, 2:발령내역없음)
- protected:
- public:
- };
- //---------------------------------------------------------------------------
- /*
- * VilgFrcs Manager
- */
- class TItsVilgFrcsManager
- {
- public:
- TItsVilgFrcsManager();
- ~TItsVilgFrcsManager();
- public:
- TItsMap<String, TItsVilgFrcs*> FLists;
- TItsMap<String, TItsAtmpPltn*> FAtmpLists;
- TItsMap<String, TItsAtmpSprp*> FSprpLists;
- public:
- String GetGradeDesc(String &ACode);
- bool LoadFromDb(TADOConnection *ADbConn=NULL);
- bool LoadFromDbAtmp(TADOConnection *ADbConn=NULL);
- bool LoadVilgFrcsInfo(TADOConnection *ADbConn=NULL);
- bool LoadVilgShprInfo(TADOConnection *ADbConn=NULL);
- bool LoadAtmpPltnInfo(TADOConnection *ADbConn=NULL);
- bool LoadAtmpSprpInfo(TADOConnection *ADbConn=NULL);
- };
- //---------------------------------------------------------------------------
- extern TItsVilgFrcsManager *ItsVilgFrcsManager;
- //---------------------------------------------------------------------------
- #endif
|