CDSFacilityF.h 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419
  1. //---------------------------------------------------------------------------
  2. #ifndef CDSFacilityFH
  3. #define CDSFacilityFH
  4. //---------------------------------------------------------------------------
  5. #include <Classes.hpp>
  6. #include <ADODB.hpp>
  7. #include <DB.hpp>
  8. #include "ITSLibF.h"
  9. #include "ITSDbF.h"
  10. #include "CDSDsrcF.h"
  11. #include "CDSVdsCtlrF.h"
  12. #include "CDSAviF.h"
  13. #include "CDSEventF.h"
  14. #include "CDSVmsCtlrF.h"
  15. #include "CDSPrltCtlrF.h"
  16. #include "CDSPrkPlceF.h"
  17. #include "CDSCctvCtlrF.h"
  18. #include "CDSIncCctvCtlrF.h"
  19. #include "CDSWCamCtlrF.h"
  20. #include "CDSCCamCtlrF.h"
  21. #include "CDSCrossF.h"
  22. #include "CDSLprsF.h"
  23. //---------------------------------------------------------------------------
  24. #define str_state_normal "0"
  25. #define str_state_error "1"
  26. #define str_state_module "2"
  27. #define str_state_unknown "3"
  28. #define str_state_collect "4"
  29. #define str_state_default "5"
  30. /*
  31. * Rse class
  32. */
  33. class TItsRse : public TCDSObject
  34. {
  35. public:
  36. TItsRse(){}
  37. virtual ~TItsRse(){}
  38. String RSEID;
  39. String INSTDT;
  40. String CITYCD;
  41. String REGIONCD;
  42. String AREACD;
  43. String RSEIP;
  44. String COORDX;
  45. String COORDY;
  46. String RADIUS1;
  47. String RADIUS2;
  48. String COMPCD;
  49. String LOCATION;
  50. String RSECONFIGID;
  51. String OBEPARAMID;
  52. String PORT;
  53. String BRIDGE;
  54. String COMYN;
  55. };
  56. //---------------------------------------------------------------------------
  57. /*
  58. * Avi class
  59. */
  60. class TItsFAvi
  61. {
  62. public:
  63. TItsFAvi(){}
  64. virtual ~TItsFAvi(){}
  65. String AVI_CTLR_MNGM_NMBR; //VARCHAR2(20) N AVI 제어기 관리 번호
  66. String AVI_ID; //VARCHAR2(10) Y AVI ID
  67. String LINK_ID; //NUMBER(10) Y 링크 ID
  68. String AVI_LCTN_NM; //VARCHAR2(60) Y AVI 위치 명
  69. String AVI_VALD_YN; //CHAR(1) Y 'N' AVI 유효 여부
  70. String AVI_CTLR_IP; //VARCHAR2(20) Y AVI 제어기 아이피
  71. String AVI_CTLR_CMNC_PORT; //VARCHAR2(5) Y AVI 제어기 통신 포트
  72. String AVI_MAIN_CTLR_YN; //CHAR(1) Y 'N' AVI 주 제어기 여부
  73. String AVI_MNGM_LANE_NUM; //NUMBER(2) Y AVI 관리 차로 개수
  74. String AVI_CMRA_NUM; //NUMBER(2) Y AVI 카메라 개수
  75. String AVI_DTCT_NUM; //NUMBER(2) Y AVI 검지기 개수
  76. String AVI_DTCT_NM; //VARCHAR2(60) Y AVI 검지기 명
  77. String AVI_CLCT_CYCL; //NUMBER(3) Y AVI 수집 주기
  78. String AVI_LAMP_AUTO_YN; //CHAR(1) Y 'N' AVI 조명장치 자동 여부
  79. String AVI_LAMP_ON_HMS; //VARCHAR2(6) Y AVI 조명장치 ON 시각
  80. String AVI_LAMP_OFF_HMS; //VARCHAR2(6) Y AVI 조명장치 OFF 시각
  81. String AVI_LAMP_ON_YN; //CHAR(1) Y 'N' AVI 조명장치 ON 여부
  82. String X_CRDN; //NUMBER(11,8) Y X 좌표
  83. String Y_CRDN; //NUMBER(10,8) Y Y 좌표
  84. String RMRK; //VARCHAR2(600) Y 비고
  85. String DEL_YN; //CHAR(1) Y 'N' 삭제 여부
  86. };
  87. //---------------------------------------------------------------------------
  88. /*
  89. * Dsrc class
  90. */
  91. class TItsFDsrc
  92. {
  93. public:
  94. TItsFDsrc(){}
  95. virtual ~TItsFDsrc(){}
  96. String ID; //VARCHAR2(3) N 아이디
  97. String RSE_ID; //VARCHAR2(8) N RSE 아이디
  98. String ROAD_SPOT_ID; //VARCHAR2(30) N 도로 지점 아이디
  99. String LOG_CNNC_ID; //VARCHAR2(64) Y 로그 접속 아이디
  100. String LOG_CNNC_PW; //VARCHAR2(64) Y 로그 접속 비밀번호
  101. String ISTL_LCTN_NM; //VARCHAR2(40) Y 설치 위치 명
  102. String LCTN_X; //NUMBER(11,8) Y 위치 X
  103. String LCTN_Y; //NUMBER(10,8) Y 위치 Y
  104. String IP; //VARCHAR2(20) Y IP
  105. String PORT; //VARCHAR2(5) Y PORT
  106. String MNFC_CMPY_CD; //NUMBER(5) Y 제조 업체 코드
  107. String DEL_YN; //CHAR(1) Y 'N' 삭제 여부
  108. };
  109. //---------------------------------------------------------------------------
  110. /*
  111. * EtcFacility class
  112. */
  113. class TItsRegFacility
  114. {
  115. public:
  116. TItsRegFacility();
  117. virtual ~TItsRegFacility();
  118. void Clear();
  119. private:
  120. public:
  121. String Type;
  122. String Id;
  123. String Name;
  124. String DelYn;
  125. String UnRegisterd;
  126. int GridIndex;
  127. };
  128. //---------------------------------------------------------------------------
  129. /*
  130. * Facility class
  131. */
  132. class TItsFacility
  133. {
  134. public:
  135. TItsFacility();
  136. virtual ~TItsFacility();
  137. void Clear();
  138. private:
  139. int FEditMode;
  140. bool FModified;
  141. bool FCompleted;
  142. public:
  143. String FCLT_ID; // FCLT_ID VARCHAR(50 BYTE) NOT NULL, '시설물 ID';
  144. String RFID_ID; // RFID_ID VARCHAR(50 BYTE) NOT NULL, '시설물 ID';
  145. String FCLT_TYPE; // FCLT_TYPE VARCHAR(7 BYTE) NOT NULL, '시설물유형';
  146. String FCLT_LCTN; // FCLT_LCTN VARCHAR(100 BYTE), '시설물 위치';
  147. String RSCE_YN; // RSCE_YN CHAR(1 BYTE) DEFAULT 'N', '현장자산유무';
  148. String MDL_NM; // MDL_NM VARCHAR(30 BYTE), '모델명';
  149. String USE_YEAR; // USE_YEAR NUMBER(3), '사용년수';
  150. String INWR_DT; // INWR_DT VARCHAR(14 BYTE), '입고일시';
  151. String OTWR_DT; // OTWR_DT VARCHAR(14 BYTE), '출고일시';
  152. String ISTL_DT; // ISTL_DT VARCHAR(14 BYTE), '설치일시';
  153. String TAKT_DT; // TAKT_DT VARCHAR(14 BYTE), '반출일시';
  154. String TAKT_RESN; // TAKT_RESN VARCHAR(100 BYTE), '반출사유';
  155. String TAKN_DT; // TAKN_DT VARCHAR(14 BYTE), '반입일시';
  156. String ABDN_DT; // ABDN_DT VARCHAR(14 BYTE), '폐기일시';
  157. String ADTN_NM; // ADTN_NM VARCHAR(30 BYTE), '추가자명';
  158. String ADTN_DT; // ADTN_DT VARCHAR(14 BYTE), '추가일시';
  159. String CHNG_NM; // CHNG_NM VARCHAR(30 BYTE), '변경자명';
  160. String CHNG_DT; // CHNG_DT VARCHAR(14 BYTE), '변경일시';
  161. String AMT; // AMT NUMBER(15), '금액';
  162. String DEL_YN; // DEL_YN CHAR(1 BYTE) DEFAULT 'N', '삭제여부';
  163. String ISTL_CMPY_ID; // ISTL_CMPY_ID VARCHAR(30 BYTE), '설치업체ID';
  164. String MNFC_CMPY_ID; // PRDC_CMPY_ID VARCHAR(30 BYTE) '제조업체ID';
  165. String ISTL_LCTN_ADDR; // '설치 위치 주소'
  166. String FCommStatus; // 장비 통신상태값
  167. String FDoorStatus; // 장비 Door상태값
  168. String FComm;
  169. String FDoor;
  170. int FCBoxTmpr;
  171. int FCollCntBase;
  172. int FCollCntCurr;
  173. bool FCollError;
  174. String FCLT_KIND;
  175. String Sts00;
  176. String Sts01;
  177. String Sts02;
  178. String Sts03;
  179. String Sts04;
  180. String Sts05;
  181. String Sts06;
  182. String Sts07;
  183. String Sts08;
  184. String Sts09;
  185. String Sts10;
  186. String Deleted; // 마스터정보가 삭제된것
  187. int GridIndex; // 메인폼에 뿌려지는 그리드 인덱스
  188. int StatusGridIndex;
  189. TCDSObject *Object;
  190. String FOldComm;
  191. protected:
  192. public:
  193. __property bool Modified = {read = FModified};
  194. __property bool Completed = {read = FCompleted, write = FCompleted};
  195. __property int EditMode = {read = FEditMode, write = FEditMode };
  196. };
  197. //---------------------------------------------------------------------------
  198. class TFacilityStatus
  199. {
  200. public:
  201. TFacilityStatus()
  202. {
  203. Type = "";
  204. Total = 0;
  205. Normal = 0;
  206. Error = 0;
  207. Module = 0;
  208. Collect= 0;
  209. };
  210. virtual ~TFacilityStatus() {};
  211. String Type;
  212. int Total;
  213. int Normal;
  214. int Error;
  215. int Module;
  216. int Collect;
  217. };
  218. //---------------------------------------------------------------------------
  219. class TItsBit
  220. {
  221. public:
  222. TItsBit(){}
  223. virtual ~TItsBit(){}
  224. String FCLT_ID;
  225. String FCLT_LCTN;
  226. String BIT_ID;
  227. String X_CRDN;
  228. String Y_CRDN;
  229. String STOP_ID;
  230. String STOP_EXPLAIN;
  231. String LINK_ID;
  232. String BIT_TYPE;
  233. int FAN_MIN_TEMPERATURE;
  234. int FAN_MAX_TEMPERATURE;
  235. int HEATER_MIN_TEMPERATURE;
  236. int HEATER_MAX_TEMPERATURE;
  237. String INSTALL_STOP_ID;
  238. String SERVICE_ID;
  239. String STOP_TYPE;
  240. String STOP_NAME;
  241. String STOP_SHORTNAME;
  242. String DEL_YN;
  243. };
  244. //---------------------------------------------------------------------------
  245. class TItsSig
  246. {
  247. public:
  248. TItsSig(){}
  249. virtual ~TItsSig(){}
  250. String FCLT_ID;
  251. String FCLT_LCTN;
  252. String SIG_ID;
  253. String X_CRDN;
  254. String Y_CRDN;
  255. String MDL_NM;
  256. String DEL_YN;
  257. };
  258. //---------------------------------------------------------------------------
  259. class TItsSigDet
  260. {
  261. public:
  262. TItsSigDet(){}
  263. virtual ~TItsSigDet(){}
  264. String FCLT_ID;
  265. String FCLT_LCTN;
  266. String SDET_ID;
  267. String X_CRDN;
  268. String Y_CRDN;
  269. String SIG_ID;
  270. String MDL_NM;
  271. String DEL_YN;
  272. };
  273. //---------------------------------------------------------------------------
  274. class TItsPis
  275. {
  276. public:
  277. TItsPis(){}
  278. virtual ~TItsPis(){}
  279. String FCLT_ID;
  280. String FCLT_LCTN;
  281. String PIS_ID;
  282. String X_CRDN;
  283. String Y_CRDN;
  284. String SIG_ID;
  285. String MDL_NM;
  286. String DEL_YN;
  287. };
  288. //---------------------------------------------------------------------------
  289. class TItsPcs
  290. {
  291. public:
  292. TItsPcs(){}
  293. virtual ~TItsPcs(){}
  294. String FCLT_ID;
  295. String FCLT_LCTN;
  296. String PCS_ID;
  297. String X_CRDN;
  298. String Y_CRDN;
  299. String SIG_ID;
  300. String MDL_NM;
  301. String DEL_YN;
  302. };
  303. //---------------------------------------------------------------------------
  304. /*
  305. * Facility Manager
  306. */
  307. class TItsFacilityManager
  308. {
  309. public:
  310. TItsFacilityManager();
  311. virtual ~TItsFacilityManager();
  312. public:
  313. String CenterId;
  314. int FLocalCctvCnt;
  315. TItsMap<String, TItsFacility*> FLists;
  316. TItsMap<String, TItsRse*> FRseLists;
  317. TItsMap<String, TItsAvi*> FAviLists;
  318. TItsMap<String, TItsBit*> FBitLists;
  319. TItsMap<String, TItsSig*> FSigLists;
  320. TItsMap<String, TItsSigDet*> FSigDetLists;
  321. TItsMap<String, TItsPis*> FPisLists;
  322. TItsMap<String, TItsPcs*> FPcsLists;
  323. TItsMap<String, TItsRegFacility*> FRegLists;
  324. TItsMap<String, TFacilityStatus*> FListStatus;
  325. public:
  326. void SetCenterId(String ACenterId);
  327. bool LoadFromDb(TADOConnection *ADbConn=NULL);
  328. bool LoadFacilityReg(TADOConnection *ADbConn=NULL);
  329. bool LoadFacilityMaster(TADOConnection *ADbConn=NULL);
  330. bool LoadFacilityWebCam(TADOConnection *ADbConn=NULL);
  331. bool LoadFacilityCrsCam(TADOConnection *ADbConn=NULL);
  332. bool LoadFacilityCctv(TADOConnection *ADbConn=NULL);
  333. bool LoadFacilityIncCctv(TADOConnection *ADbConn=NULL);
  334. bool LoadFacilityVms(TADOConnection *ADbConn=NULL);
  335. bool LoadFacilityRse(TADOConnection *ADbConn=NULL);
  336. bool LoadFacilityVds(TADOConnection *ADbConn=NULL);
  337. bool LoadFacilityAvi(TADOConnection *ADbConn=NULL);
  338. bool LoadFacilityDsrc(TADOConnection *ADbConn=NULL);
  339. bool LoadFacilityBit(TADOConnection *ADbConn=NULL);
  340. bool LoadFacilitySig(TADOConnection *ADbConn=NULL);
  341. bool LoadFacilitySigDet(TADOConnection *ADbConn=NULL);
  342. bool LoadFacilityPvms(TADOConnection *ADbConn=NULL);
  343. bool LoadFacilityPvds(TADOConnection *ADbConn=NULL);
  344. bool LoadFacilityPark(TADOConnection *ADbConn=NULL);
  345. bool LoadFacilityCross(TADOConnection *ADbConn=NULL);
  346. bool LoadFacilityLprs(TADOConnection *ADbConn=NULL);
  347. bool CheckFacility();
  348. bool LoadFacilityStatusFromDb(TADOConnection *ADbConn=NULL);
  349. bool LoadDsrcCollectStatusFromDb(TADOConnection *ADbConn=NULL);
  350. bool LoadVdsCollectStatusFromDb(TADOConnection *ADbConn=NULL);
  351. bool LoadAviCollectStatusFromDb(TADOConnection *ADbConn=NULL);
  352. bool LoadDsrcCollectStatusFromDb_OLD(TADOConnection *ADbConn=NULL);
  353. bool LoadAviCollectStatusFromDb_OLD(TADOConnection *ADbConn=NULL);
  354. };
  355. //---------------------------------------------------------------------------
  356. extern TItsFacilityManager *ItsFacilityManager;
  357. //---------------------------------------------------------------------------
  358. #endif