CDSRepeatCongestF.h 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. //---------------------------------------------------------------------------
  2. #ifndef CDSRepeatCongestFH
  3. #define CDSRepeatCongestFH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <ADODB.hpp>
  7. #include <DB.hpp>
  8. #include "cxCustomData.hpp"
  9. #include "LibSTLF.hpp"
  10. #include "ITSDbF.h"
  11. //---------------------------------------------------------------------------
  12. /*
  13. * RepeatCongest class
  14. */
  15. class TItsRepeatCongest
  16. {
  17. public:
  18. TItsRepeatCongest();
  19. virtual ~TItsRepeatCongest();
  20. void Clear();
  21. private:
  22. bool FModified;
  23. bool FCompleted;
  24. public:
  25. String FIFSC_ID; // 정보제공구간 ID
  26. String FSTAT_YM; // 통계 년월
  27. String FDAY_TYPE_CD; // 요일 유형 코드
  28. String FCNFS_STRT_HM; // 혼잡 시작 시분
  29. String FCNFS_END_HM; // 혼잡 종료 시분
  30. String FAVRG_SPED; // 평균 속도
  31. String FAVRG_TRVL_HH; // 평균 통행 시간
  32. String FDCSN_YN; // 확정 여부
  33. String FCRTN_YMD; // 생성 일자
  34. String FREPT_CNGS_SECT_ORGN_CD; // 반복 정체 구간 원본 코드
  35. void SetValue(String &AOrgValue, String AValue);
  36. #if 0
  37. IFSC_ID NUMBER(10) NOT NULL,
  38. STAT_YM VARCHAR2(6) NOT NULL,
  39. DAY_TYPE_CD VARCHAR2(7) NOT NULL,
  40. CNFS_STRT_HM VARCHAR2(4) NOT NULL,
  41. CNFS_END_HM VARCHAR2(4),
  42. AVRG_SPED NUMBER(3) DEFAULT 0,
  43. AVRG_TRVL_HH NUMBER(6) DEFAULT 0,
  44. DCSN_YN CHAR(1) DEFAULT 'N',
  45. CRTN_YMD VARCHAR2(8),
  46. REPT_CNGS_SECT_ORGN_CD VARCHAR2(7)
  47. comment on table TB_REPT_CNGS_SECT is '반복 정체 구간';
  48. comment on column TB_REPT_CNGS_SECT.ifsc_id is '정보제공구간 ID';
  49. comment on column TB_REPT_CNGS_SECT.stat_ym is '통계 년월';
  50. comment on column TB_REPT_CNGS_SECT.day_type_cd is '요일 유형 코드';
  51. comment on column TB_REPT_CNGS_SECT.cnfs_strt_hm is '혼잡 시작 시분';
  52. comment on column TB_REPT_CNGS_SECT.cnfs_end_hm is '혼잡 종료 시분';
  53. comment on column TB_REPT_CNGS_SECT.avrg_sped is '평균 속도';
  54. comment on column TB_REPT_CNGS_SECT.avrg_trvl_hh is '평균 통행 시간';
  55. comment on column TB_REPT_CNGS_SECT.dcsn_yn is '확정 여부';
  56. comment on column TB_REPT_CNGS_SECT.crtn_ymd is '생성 일자';
  57. comment on column TB_REPT_CNGS_SECT.rept_cngs_sect_orgn_cd is '반복 정체 구간 원본 코드';
  58. #endif
  59. protected:
  60. void SetFIFSC_ID(String AValue); // 정보제공구간 ID
  61. void SetFSTAT_YM(String AValue); // 통계 년월
  62. void SetFDAY_TYPE_CD(String AValue); // 요일 유형 코드
  63. void SetFCNFS_STRT_HM(String AValue); // 혼잡 시작 시분
  64. void SetFCNFS_END_HM(String AValue); // 혼잡 종료 시분
  65. void SetFAVRG_SPED(String AValue); // 평균 속도
  66. void SetFAVRG_TRVL_HH(String AValue); // 평균 통행 시간
  67. void SetFDCSN_YN(String AValue); // 확정 여부
  68. void SetFCRTN_YMD(String AValue); // 생성 일자
  69. void SetFREPT_CNGS_SECT_ORGN_CD(String AValue); // 반복 정체 구간 원본 코드
  70. public:
  71. __property bool Modified = {read = FModified};
  72. __property bool Completed = {read = FCompleted, write = FCompleted};
  73. __property String IFSC_ID = {read = FIFSC_ID, write = SetFIFSC_ID }; // 정보제공구간 ID
  74. __property String STAT_YM = {read = FSTAT_YM, write = SetFSTAT_YM }; // 통계 년월
  75. __property String DAY_TYPE_CD = {read = FDAY_TYPE_CD, write = SetFDAY_TYPE_CD }; // 요일 유형 코드
  76. __property String CNFS_STRT_HM = {read = FCNFS_STRT_HM, write = SetFCNFS_STRT_HM }; // 혼잡 시작 시분
  77. __property String CNFS_END_HM = {read = FCNFS_END_HM, write = SetFCNFS_END_HM }; // 혼잡 종료 시분
  78. __property String AVRG_SPED = {read = FAVRG_SPED, write = SetFAVRG_SPED }; // 평균 속도
  79. __property String AVRG_TRVL_HH = {read = FAVRG_TRVL_HH, write = SetFAVRG_TRVL_HH }; // 평균 통행 시간
  80. __property String DCSN_YN = {read = FDCSN_YN, write = SetFDCSN_YN }; // 확정 여부
  81. __property String CRTN_YMD = {read = FCRTN_YMD, write = SetFCRTN_YMD }; // 생성 일자
  82. __property String REPT_CNGS_SECT_ORGN_CD = {read = FREPT_CNGS_SECT_ORGN_CD, write = SetFREPT_CNGS_SECT_ORGN_CD }; // 반복 정체 구간 원본 코드
  83. };
  84. //---------------------------------------------------------------------------
  85. class TItsRepeatCongestWthr
  86. {
  87. public:
  88. TItsRepeatCongestWthr() {};
  89. virtual ~TItsRepeatCongestWthr() {};
  90. void Clear();
  91. private:
  92. bool FModified;
  93. bool FCompleted;
  94. public:
  95. String IFSC_ID; // 정보제공구간 ID
  96. String CRTN_YMD; // 생성 일자
  97. String WTHR_TYPE_CD; // 기상 코드
  98. String CNFS_STRT_HM; // 혼잡 시작 시분
  99. String CNFS_END_HM; // 혼잡 종료 시분
  100. String AVRG_SPED; // 평균 속도
  101. String AVRG_TRVL_HH; // 평균 통행 시간
  102. String DCSN_YN; // 확정 여부
  103. String REPT_CNGS_SECT_ORGN_CD; // 반복 정체 구간 원본 코드
  104. public:
  105. __property bool Modified = {read = FModified};
  106. __property bool Completed = {read = FCompleted, write = FCompleted};
  107. };
  108. //---------------------------------------------------------------------------
  109. /*
  110. * RepeatCongest Manager
  111. */
  112. class TItsRepeatCongestManager
  113. {
  114. public:
  115. TItsRepeatCongestManager();
  116. virtual ~TItsRepeatCongestManager();
  117. public:
  118. ListMap<TItsRepeatCongest> FLists;
  119. ListMap<TItsRepeatCongest> FListsCnfm;
  120. int FDataSeq;
  121. ListMap<TItsRepeatCongestWthr> FListsWthr;
  122. ListMap<TItsRepeatCongestWthr> FListsCnfmWthr;
  123. int FDataSeqWthr;
  124. public:
  125. bool LoadFromDb(TADOConnection *ADbConn=NULL);
  126. bool LoadFromDbWthr(TADOConnection *ADbConn=NULL);
  127. bool LoadFromDbWthrCnfm(TADOConnection *ADbConn=NULL);
  128. };
  129. //---------------------------------------------------------------------------
  130. extern TItsRepeatCongestManager *ItsRepeatCongestManager;
  131. //---------------------------------------------------------------------------
  132. #endif