CDSPrltCtlrF.h 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. //---------------------------------------------------------------------------
  2. #ifndef CDSPrltCtlrFH
  3. #define CDSPrltCtlrFH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <ADODB.hpp>
  7. #include <DB.hpp>
  8. #include "ITSLibF.h"
  9. #include "CDSObjectF.h"
  10. //---------------------------------------------------------------------------
  11. #include "CenterCommF.h"
  12. //---------------------------------------------------------------------------
  13. /*
  14. * 주차장 실시간 정보
  15. */
  16. class TPrltRtInfr
  17. {
  18. public:
  19. TPrltRtInfr(){}
  20. virtual ~TPrltRtInfr(){}
  21. public:
  22. String PRLT_CTLR_NMBR; // N NUMBER(10) N 주차장 제어기 번호
  23. String FLOR_NMBR; // N VARCHAR2(20) N 층 번호
  24. String UPDT_DT; // N VARCHAR2(14) Y 갱신 일시
  25. int GNRL_RMND_PRZN_NUM; // N NUMBER(3) Y 0 일반 잔여 주차구역 개수
  26. int LGVH_RMND_PRZN_NUM; // N NUMBER(3) Y 0 경차 잔여 주차구역 개수
  27. int HVVH_RMND_PRZN_NUM; // N NUMBER(3) Y 0 대형 잔여 주차구역 개수
  28. int EMVH_RMND_PRZN_NUM; // N NUMBER(3) Y 0 긴급차량 잔여 주차구역 개수
  29. int HNDC_RMND_PRZN_NUM; // N NUMBER(3) Y 0 장애인 잔여 주차구역 개수
  30. int WMON_RMND_PRZN_NUM; // N NUMBER(3) Y 0 여성전용 잔여 주차구역 개수
  31. int ELVH_RMND_PRZN_NUM; // N NUMBER(3) Y 0 전기차 잔여 주차구역 개수
  32. int ETC_RMND_PRZN_NUM; // N NUMBER(3) Y 0 기타 잔여 주차구역 개수
  33. };
  34. //---------------------------------------------------------------------------
  35. /*
  36. * 주차장 제어기
  37. */
  38. class TPrltCtlr : public TCDSObject
  39. {
  40. public:
  41. TPrltCtlr();
  42. virtual ~TPrltCtlr();
  43. public:
  44. #if 0
  45. String CTLR_NMBR; // N NUMBER(10) N VMS 제어기 번호
  46. String CTLR_ID; // N VARCHAR2(10) Y VMS 제어기 ID
  47. String NAME; // N VARCHAR2(40) Y VMS 명칭
  48. String CTLR_IP; // N VARCHAR2(20) Y VMS 제어기 아이피
  49. int CTLR_PORT; // N NUMBER(5) Y 0 VMS 제어기 포트
  50. int CTLR_LOCAL_NO; // N NUMBER(5) Y 0 VMS 제어기 지역번호
  51. String TYPE_CD; // N VARCHAR2(7) Y VMS 유형 코드
  52. String ISTL_LCTN_NM; // N VARCHAR2(40) Y 설치 위치 명
  53. String ISTL_LCTN_ADDR; // N VARCHAR2(200) Y 설치 위치 주소
  54. double X_CRDN; // N NUMBER(11,8) Y X 좌표
  55. double Y_CRDN; // N NUMBER(10,8) Y Y 좌표
  56. String DEL_YN; // N CHAR(1) Y 'N' 삭제 여부
  57. #endif
  58. //182 POT 주차장 운영 구분 Parking Lot Operation Type Y
  59. // 1 POT0 POT 공영 Y
  60. // 2 POT1 POT 민영 Y
  61. // 3 POT2 POT 해상케이블카 Y
  62. //183 PFT 주차장 시설 유형 구분 Parking Lot Facility Type Y
  63. // 1 PFT0 PFT 노상 Y
  64. // 2 PFT1 PFT 노외 Y
  65. // 3 PFT2 PFT 부설 Y
  66. String PRLT_OPER_DVSN_CD; // N VARCHAR2(7) Y 주차장 운영 구분 코드
  67. String PRLT_TYPE_DVSN_CD; // N VARCHAR2(7) Y 주차장 유형 구분 코드
  68. String PRLT_TEL; // N VARCHAR2(128) Y 전화번호
  69. int WHOL_NPLS; // N NUMBER(3) Y 0 전체 주차면수
  70. int GNRL_NPLS; // N NUMBER(3) Y 0 일반 주차면수
  71. int LGVH_NPLS; // N NUMBER(3) Y 0 경차 주차면수
  72. int HVVH_NPLS; // N NUMBER(3) Y 0 대형 주차면수
  73. int EMVH_NPLS; // N NUMBER(3) Y 0 긴급차량 주차면수
  74. int HNDC_NPLS; // N NUMBER(3) Y 0 장애인 주차면수
  75. int WMON_NPLS; // N NUMBER(3) Y 0 여성전용 주차면수
  76. int ELVH_NPLS; // N NUMBER(3) Y 0 전기차 주차면수
  77. int ETC_NPLS; // N NUMBER(3) Y 0 기타 주차면수
  78. int CNGT_NPLS; // N NUMBER(3) Y 10 혼잡기준차 주차면수
  79. String PRLT_CHARGE_DESC; // N VARCHAR2(512) Y 요금정보
  80. String PRLT_OPER_DESC; // N VARCHAR2(512) Y 운영정보
  81. String PRLT_ETC_DESC; // N VARCHAR2(512) Y 기타부가정보
  82. String REAL_DATA_YN; // N CHAR(1) Y 실시간주차정보제공여부
  83. int CTLR_CLCT_CYCL; // N NUMBER(3) Y 0 제어기 수집 주기
  84. int CTLR_STTS_CYCL; // N NUMBER(3) Y 0 제어기 상태 주기
  85. String CHNG_DT; // N VARCHAR2(14) Y to_char(sysdate, 'yyyymmddhh24miss') 정보등록(수정)일자
  86. //실시간주차정보, 일반주차정보
  87. //주차장명
  88. //전화번호
  89. //주소
  90. //지번
  91. //전체주차면(총주차대수, 일반, 경차, 대형, 긴급차량, 장애인, 여성, 기타)
  92. //요금정보
  93. //운영정보
  94. //기타정보
  95. //정보등록(수정)일자
  96. public:
  97. INT_PARK_STATE STATE;
  98. public:
  99. __property String PRLT_CTLR_NMBR = { read = CTLR_NMBR, write = CTLR_NMBR };
  100. __property String PRLT_CTLR_ID = { read = CTLR_ID, write = CTLR_ID };
  101. __property String PRLT_NM = { read = NAME, write = NAME };
  102. __property String PRLT_CTLR_IP = { read = CTLR_IP, write = CTLR_IP };
  103. __property int PRLT_CTLR_PORT = { read = CTLR_PORT, write = CTLR_PORT };
  104. __property int PRLT_CTLR_LOCAL_NO = { read = CTLR_LOCAL_NO, write = CTLR_LOCAL_NO };
  105. __property String PRLT_TYPE_CD = { read = TYPE_CD, write = TYPE_CD };
  106. };
  107. //---------------------------------------------------------------------------
  108. /*
  109. * Prlt Manager
  110. */
  111. class TPrltCtlrManager
  112. {
  113. public:
  114. TPrltCtlrManager();
  115. virtual ~TPrltCtlrManager();
  116. public:
  117. TItsMap<String, TPrltCtlr*> FLists;
  118. public:
  119. bool LoadFromDb(TADOConnection *ADbConn=NULL);
  120. bool LoadStatusFromDb(TADOConnection *ADbConn=NULL);
  121. bool GetNextPrltId(int &ANmbr, int &AId, TADOConnection *ADbConn=NULL);
  122. bool DeletePrlt(TPrltCtlr *AObj, TADOConnection *ADbConn=NULL);
  123. bool InsertPrlt(TPrltCtlr *AObj, TADOConnection *ADbConn=NULL);
  124. bool UpdatePrlt(TPrltCtlr *AObj, TADOConnection *ADbConn=NULL);
  125. bool MergePrlt(TPrltCtlr *AObj, TADOConnection *ADbConn=NULL);
  126. bool MergeFcltInfo(TPrltCtlr *AObj, TADOConnection *ADbConn=NULL);
  127. };
  128. //---------------------------------------------------------------------------
  129. extern TPrltCtlrManager *PrltCtlrManager;
  130. //---------------------------------------------------------------------------
  131. #endif