FRAME_IncidentProcessF.h 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335
  1. //---------------------------------------------------------------------------
  2. #ifndef FRAME_IncidentProcessFH
  3. #define FRAME_IncidentProcessFH
  4. //---------------------------------------------------------------------------
  5. #include "CDSCodeF.h"
  6. #include "CDSIncidentF.h"
  7. #include "cxButtons.hpp"
  8. #include "cxCalc.hpp"
  9. #include "cxCalendar.hpp"
  10. #include "cxCheckBox.hpp"
  11. #include "cxClasses.hpp"
  12. #include "cxContainer.hpp"
  13. #include "cxControls.hpp"
  14. #include "cxCustomData.hpp"
  15. #include "cxData.hpp"
  16. #include "cxDataStorage.hpp"
  17. #include "cxDropDownEdit.hpp"
  18. #include "cxEdit.hpp"
  19. #include "cxFilter.hpp"
  20. #include "cxGraphics.hpp"
  21. #include "cxGrid.hpp"
  22. #include "cxGridCustomTableView.hpp"
  23. #include "cxGridCustomView.hpp"
  24. #include "cxGridLevel.hpp"
  25. #include "cxGridTableView.hpp"
  26. #include "cxGroupBox.hpp"
  27. #include "cxLabel.hpp"
  28. #include "cxLookAndFeelPainters.hpp"
  29. #include "cxLookAndFeels.hpp"
  30. #include "cxMaskEdit.hpp"
  31. #include "cxSpinEdit.hpp"
  32. #include "cxSplitter.hpp"
  33. #include "cxStyles.hpp"
  34. #include "cxTextEdit.hpp"
  35. #include "dxGDIPlusClasses.hpp"
  36. #include "dxSkinBlack.hpp"
  37. #include "dxSkinBlue.hpp"
  38. #include "dxSkinsCore.hpp"
  39. #include "dxSkinscxPCPainter.hpp"
  40. #include <Classes.hpp>
  41. #include <Controls.hpp>
  42. #include <ExtCtrls.hpp>
  43. #include <Menus.hpp>
  44. #include <StdCtrls.hpp>
  45. //---------------------------------------------------------------------------
  46. #define YONGIN_INC
  47. #define MAX_INCLINK 100
  48. typedef struct ST_INCLINKINFO_tag
  49. {
  50. String sIncidentId;
  51. String sLinkId;
  52. double FPosX;
  53. double FPosY;
  54. } ST_INCLINKINFO;
  55. typedef struct ST_INCLINK_tag
  56. {
  57. int nSelLink;
  58. ST_INCLINKINFO info[MAX_INCLINK];
  59. } ST_INCLINK;
  60. class TFRAMEIncidentProcess : public TFrame
  61. {
  62. __published: // IDE-managed Components
  63. TcxGroupBox *cxGroupBox2;
  64. TcxSplitter *cxSplitter1;
  65. TPanel *PnlTitle;
  66. TcxGroupBox *cxGroupBox3;
  67. TPanel *Panel1;
  68. TcxButton *BtnSave;
  69. TcxGroupBox *cxGroupBox4;
  70. TImage *ImgDesc01;
  71. TcxLabel *cxLabel1;
  72. TcxTextEdit *EdINCD_OCRR_ID;
  73. TcxLabel *cxLabel2;
  74. TImage *ImgDesc02;
  75. TcxTextEdit *EdRGST_DT;
  76. TcxLabel *cxLabel3;
  77. TImage *ImgDesc03;
  78. TcxComboBox *CbINCD_ORGN_CD;
  79. TImage *ImgDesc04;
  80. TcxLabel *cxLabel4;
  81. TcxTextEdit *EdOCRR_LCTN_NM;
  82. TcxLabel *cxLabel5;
  83. TImage *ImgDesc05;
  84. TcxTextEdit *EdINCD_EXPL;
  85. TcxLabel *cxLabel6;
  86. TImage *ImgDesc06;
  87. TcxComboBox *CbCMTR_GRAD_CD;
  88. TcxGroupBox *cxGroupBox5;
  89. TcxLabel *cxLabel10;
  90. TcxLabel *cxLabel11;
  91. TcxLabel *cxLabel12;
  92. TcxLabel *cxLabel13;
  93. TcxLabel *cxLabel20;
  94. TcxLabel *cxLabel21;
  95. TImage *ImgDesc15;
  96. TcxTextEdit *EdLINK_ID;
  97. TImage *ImgDesc16;
  98. TcxLabel *cxLabel22;
  99. TcxLabel *cxLabel23;
  100. TcxButton *BtnSelect;
  101. TPopupMenu *PopupSelLink;
  102. TMenuItem *MnuListAdd;
  103. TMenuItem *MnuGisAdd;
  104. TcxLabel *cxLabel24;
  105. TcxLabel *cxLabel25;
  106. TPanel *Panel2;
  107. TcxGroupBox *cxGroupBox7;
  108. TcxGroupBox *cxGroupBox6;
  109. TcxCheckBox *ChkVMS_DSPL_YN;
  110. TPanel *PnlVms;
  111. TImage *Image1;
  112. TcxTextEdit *EdEND_LCTN_NM;
  113. TcxLabel *cxLabel_VMS_INCD_TYPE_CD;
  114. TcxTextEdit *EdSTRT_LCTN_NM;
  115. TcxComboBox *CbVMS_INCD_TYPE_CD;
  116. TcxComboBox *CbVMS_INCD_DETL_TYPE_CD;
  117. TImage *ImgDesc07;
  118. TImage *ImgDesc08;
  119. TImage *ImgDesc09;
  120. TImage *ImgDesc10;
  121. TImage *ImgDesc11;
  122. TImage *ImgDesc13;
  123. TImage *ImgDesc14;
  124. TcxLabel *cxLabel19;
  125. TcxLabel *cxLabel7;
  126. TcxLabel *cxLabel8;
  127. TcxLabel *cxLabel9;
  128. TcxTextEdit *EdIFMR_NM;
  129. TcxComboBox *CbINCD_CNFM_MTHD_CD;
  130. TcxComboBox *CbINCD_SERN_CD;
  131. TcxLabel *cxLabel14;
  132. TcxLabel *cxLabel15;
  133. TcxComboBox *CbINCD_TYPE_CLSF_CD;
  134. TcxComboBox *CbINCD_TYPE_CD;
  135. TcxLabel *cxLabel17;
  136. TcxLabel *cxLabel18;
  137. TcxDateEdit *DtINCD_STRT_DT;
  138. TcxDateEdit *DtINCD_END_PRAR_DT;
  139. TcxLabel *cxLabel27;
  140. TImage *ImgDesc17;
  141. TcxTextEdit *EdINCD_TITL;
  142. TcxLabel *cxLabel28;
  143. TcxLabel *cxLabel29;
  144. TcxLabel *cxLabel31;
  145. TcxLabel *cxLabel16;
  146. TImage *ImgDesc18;
  147. TcxLabel *cxLabel26;
  148. TcxLabel *cxLabel30;
  149. TcxLabel *cxLabel32;
  150. TImage *ImgDesc19;
  151. TcxLabel *cxLabel33;
  152. TcxCheckBox *ChkINCD_OCRR_LANE_Extra;
  153. TcxCheckBox *ChkINCD_OCRR_LANE_1;
  154. TcxCheckBox *ChkINCD_OCRR_LANE_2;
  155. TcxCheckBox *ChkINCD_OCRR_LANE_4;
  156. TcxCheckBox *ChkINCD_OCRR_LANE_3;
  157. TcxCheckBox *ChkINCD_OCRR_LANE_5;
  158. TcxLabel *cxLabel34;
  159. TcxCheckBox *ChkINCD_CLSR_LANE_Extra;
  160. TcxCheckBox *ChkINCD_CLSR_LANE_1;
  161. TcxCheckBox *ChkINCD_CLSR_LANE_2;
  162. TcxCheckBox *ChkINCD_CLSR_LANE_4;
  163. TcxCheckBox *ChkINCD_CLSR_LANE_3;
  164. TcxCheckBox *ChkINCD_CLSR_LANE_5;
  165. TcxLabel *cxLabel35;
  166. TcxLabel *cxLabel36;
  167. TcxSpinEdit *SeSMLT_VHCL_UNUM;
  168. TcxSpinEdit *SeINJR_PNUM;
  169. TcxLabel *cxLabel37;
  170. TcxLabel *cxLabel38;
  171. TcxSpinEdit *SeMDLT_VHCL_UNUM;
  172. TcxSpinEdit *SeFTLT_PNUM;
  173. TcxLabel *cxLabel39;
  174. TcxComboBox *CbWTHR_CD;
  175. TImage *ImgDesc20;
  176. TcxLabel *cxLabel40;
  177. TcxSpinEdit *SeDELY_LNGT;
  178. TcxLabel *cxLabel41;
  179. TcxSpinEdit *SeINCD_LNGT;
  180. TcxLabel *cxLabel42;
  181. TImage *ImgDesc22;
  182. TcxCheckBox *ChkTRUB_VHCL_YN;
  183. TcxCheckBox *ChkFALT_YN;
  184. TcxCheckBox *ChkFRWT_YN;
  185. TPanel *PnlControl;
  186. TcxLabel *cxLabel43;
  187. TImage *ImgDesc23;
  188. TcxComboBox *CbTRVL_LMNT_TYPE_CD;
  189. TImage *ImgDesc21;
  190. TcxLabel *cxLabel44;
  191. TcxComboBox *CbRESP_LVL_CD;
  192. TcxLabel *cxLabel45;
  193. TImage *ImgDesc24;
  194. TcxCheckBox *ChkUTIS_CNCT_YN;
  195. TImage *ImgDesc25;
  196. TPanel *Panel3;
  197. TcxGroupBox *cxGroupBox1;
  198. TPanel *PnlBottom;
  199. TLabel *LblRecords;
  200. TLabel *LbDef;
  201. TcxButton *BtnExlSave;
  202. TcxButton *BtnInfoCancel;
  203. TcxButton *BtnMissInfo;
  204. TcxLabel *cxLabel46;
  205. TcxTextEdit *EdRegDt;
  206. TcxSpinEdit *SePosX;
  207. TcxSpinEdit *SePosY;
  208. TcxTextEdit *EdLinkId;
  209. TcxButton *BtnMoveGis;
  210. TcxGrid *CxList;
  211. TcxGridTableView *TvList;
  212. TcxGridColumn *Column01;
  213. TcxGridColumn *Column02;
  214. TcxGridColumn *Column04;
  215. TcxGridColumn *Column03;
  216. TcxGridColumn *Column14;
  217. TcxGridColumn *Column15;
  218. TcxGridColumn *Column16;
  219. TcxGridColumn *Column05;
  220. TcxGridColumn *Column09;
  221. TcxGridColumn *Column10;
  222. TcxGridColumn *Column11;
  223. TcxGridColumn *Column12;
  224. TcxGridColumn *Column13;
  225. TcxGridColumn *Column35;
  226. TcxGridColumn *Column17;
  227. TcxGridColumn *Column18;
  228. TcxGridColumn *Column06;
  229. TcxGridColumn *Column07;
  230. TcxGridColumn *Column08;
  231. TcxGridColumn *Column19;
  232. TcxGridColumn *Column20;
  233. TcxGridColumn *Column21;
  234. TcxGridColumn *Column22;
  235. TcxGridColumn *Column23;
  236. TcxGridColumn *Column24;
  237. TcxGridColumn *Column25;
  238. TcxGridColumn *Column26;
  239. TcxGridColumn *Column27;
  240. TcxGridColumn *Column28;
  241. TcxGridColumn *Column29;
  242. TcxGridColumn *Column30;
  243. TcxGridColumn *Column31;
  244. TcxGridColumn *Column32;
  245. TcxGridColumn *Column33;
  246. TcxGridColumn *Column34;
  247. TcxGridColumn *Column99;
  248. TcxGridLevel *GlList;
  249. TcxButton *BtnVmsTarget;
  250. TImage *ImgDesc26;
  251. TcxComboBox *CbVMS_INCD_RSTR_TYPE_CD;
  252. TcxLabel *cxLabel48;
  253. TcxLabel *lblFileName;
  254. void __fastcall TvListDataControllerFilterChanged(TObject *Sender);
  255. void __fastcall BtnExlSaveClick(TObject *Sender);
  256. void __fastcall CbINCD_TYPE_CLSF_CDClick(TObject *Sender);
  257. void __fastcall BtnSaveClick(TObject *Sender);
  258. void __fastcall TvListCellDblClick(TcxCustomGridTableView *Sender, TcxGridTableDataCellViewInfo *ACellViewInfo, TMouseButton AButton,
  259. TShiftState AShift, bool &AHandled);
  260. void __fastcall BtnSelectClick(TObject *Sender);
  261. void __fastcall CbVMS_INCD_TYPE_CDClick(TObject *Sender);
  262. void __fastcall BtnInfoCancelClick(TObject *Sender);
  263. void __fastcall BtnMissInfoClick(TObject *Sender);
  264. void __fastcall MnuListAddClick(TObject *Sender);
  265. void __fastcall MnuGisAddClick(TObject *Sender);
  266. void __fastcall BtnMoveGisClick(TObject *Sender);
  267. void __fastcall BtnVmsTargetClick(TObject *Sender);
  268. void __fastcall CbVMS_INCD_DETL_TYPE_CDClick(TObject *Sender);
  269. private: // User declarations
  270. String FTitle;
  271. int FOcrrType;
  272. ST_INCLINK FSelLink;
  273. TItsCode *FCodeIST; //돌발상황 원본 코드 : IST
  274. TItsCode *FCodeLTCU; //소통 등급 코드 : LTCU
  275. TItsCode *FCodeICM; //돌발상황 확인 방법 코드 : ICM
  276. TItsCode *FCodeIDTU; //돌발상황 유형 분류 코드 : IDTU
  277. TItsCode *FCodeACTU; //돌발상황 유형 코드 : ACTU, CRTU, EVTU, WETU 중 하나
  278. TItsCode *FCodeCRTU; //돌발상황 유형 코드 : ACTU, CRTU, EVTU, WETU 중 하나
  279. TItsCode *FCodeEVTU; //돌발상황 유형 코드 : ACTU, CRTU, EVTU, WETU 중 하나
  280. TItsCode *FCodeWETU; //돌발상황 유형 코드 : ACTU, CRTU, EVTU, WETU 중 하나
  281. TItsCode *FCodeSRLU; //돌발상황 심각도 코드 : SRLU
  282. TItsCode *FCodePRTU; //통행 제한 유형 코드 : PRTU
  283. TItsCode *FCodeRSL; //대응 수준 코드 : RSL
  284. TItsCode *FCodeISS; //돌발상황 진행 단계 코드 : ISS
  285. //TItsCode *FCodeICM; //돌발상황 종료 확인 방법 코드 : ICM
  286. TItsCode *FCodeDFW; //기상 코드 : DFW
  287. TItsCode *FCodeVIT; //VMS 돌발 유형 코드 : VIT
  288. TItsCode *FCodeIDT; //VMS 돌발 유형 세부 코드 : IDT
  289. TItsCode *FCodeEDT; //VMS 돌발 유형 세부 코드 : EDT
  290. TItsCode *FCodeVRT; //VMS 돌발 통제 코드 : VRT
  291. String FLinkId;
  292. String FINCD_OCRR_ID;
  293. public:
  294. void __fastcall InitForm();
  295. void __fastcall InitScreen();
  296. void __fastcall UpdateList();
  297. void __fastcall DisplayIncidentInfo();
  298. bool __fastcall UpdateMissIncident(String AINCD_OCRR_ID);
  299. bool __fastcall InsertAutoIncident(String AINCD_OCRR_ID, String ARGST_DT);
  300. bool __fastcall UpdateAutoIncident(String AINCD_OCRR_ID, String ARGST_DT);
  301. bool __fastcall InsertToDb(String AINCD_OCRR_ID, //돌발ID
  302. String AINCD_ORGN_CD, //돌발상황 원본 코드 : IST
  303. String AOCRR_LCTN_NM, //발생 위치 명
  304. String AINCD_EXPL, //돌발상황 설명
  305. String ACMTR_GRAD_CD, //소통 등급 코드 : LTCU
  306. String AIFMR_NM, //제보자 명
  307. String AINCD_CNFM_MTHD_CD, //돌발상황 확인 방법 코드 : ICM
  308. String AINCD_SERN_CD, //돌발상황 심각도 코드 : SRLU
  309. String AINCD_TYPE_CLSF_CD, //돌발상황 유형 분류 코드 : IDTU
  310. String AINCD_TYPE_CD, //돌발상황 유형 코드 : ACTU, CRTU, EVTU, WETU 중 하나
  311. String AINCD_CNFM_DT, //돌발상황 확인 일시
  312. String AINCD_STRT_DT, //돌발상황 시작 일시
  313. String AINCD_END_PRAR_DT, //돌발상황 종료 예정 일시
  314. String ALINK_ID,
  315. String AINCD_TITL); //돌발제목
  316. public: // User declarations
  317. __fastcall TFRAMEIncidentProcess(TComponent* Owner);
  318. };
  319. //---------------------------------------------------------------------------
  320. extern PACKAGE TFRAMEIncidentProcess *FRAMEIncidentProcess;
  321. //---------------------------------------------------------------------------
  322. #endif