CDSBlackBoxF.cpp 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365
  1. //---------------------------------------------------------------------------
  2. #pragma hdrstop
  3. #include "CDSBlackBoxF.h"
  4. #include "AppGlobalF.h"
  5. //---------------------------------------------------------------------------
  6. #pragma package(smart_init)
  7. TBlackBox::TBlackBox()
  8. {
  9. FCompleted = false;
  10. FEditMode = DB_INIT;
  11. FGridIndex = -1;
  12. MEM_DEL = "N";
  13. //Clear();
  14. }
  15. //---------------------------------------------------------------------------
  16. void TBlackBox::Clear()
  17. {
  18. }
  19. //---------------------------------------------------------------------------
  20. TBlackBox::~TBlackBox()
  21. {
  22. }
  23. //---------------------------------------------------------------------------
  24. //---------------------------------------------------------------------------
  25. TBlackBoxManager *BlackBoxManager = NULL;
  26. //---------------------------------------------------------------------------
  27. /*
  28. * BlackBox Manager
  29. */
  30. TBlackBoxManager::TBlackBoxManager()
  31. {
  32. }
  33. //---------------------------------------------------------------------------
  34. TBlackBoxManager::~TBlackBoxManager()
  35. {
  36. FLists.RemoveAll();
  37. }
  38. //---------------------------------------------------------------------------
  39. bool TBlackBoxManager::LoadFromDb(TADOConnection *ADbConn/*=NULL*/)
  40. {
  41. try
  42. {
  43. FLists.Lock();
  44. FLists.RemoveAll();
  45. }
  46. __finally
  47. {
  48. FLists.UnLock();
  49. }
  50. LoadBlackBoxTrmn(ADbConn);
  51. return true;
  52. }
  53. //---------------------------------------------------------------------------
  54. bool TBlackBoxManager::LoadBlackBoxTrmn(TADOConnection *ADbConn/*=NULL*/)
  55. {
  56. String sQry;
  57. TADOQuery *pADO = NULL;
  58. sQry = "SELECT * \r\n"
  59. " FROM TB_BDS_TRMN \r\n";
  60. try
  61. {
  62. FLists.Lock();
  63. FLists.RemoveAll();
  64. try
  65. {
  66. pADO = new TADOQuery(NULL);
  67. pADO->Close();
  68. pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection();
  69. pADO->SQL->Clear();
  70. pADO->SQL->Text = sQry;
  71. pADO->Open();
  72. for( ; !pADO->Eof; pADO->Next())
  73. {
  74. TBlackBox *pObj = new TBlackBox();
  75. pObj->BDS_MNGM_NMBR = pADO->FieldByName("BDS_MNGM_NMBR")->AsInteger;
  76. pObj->OPNC_NMBR = pADO->FieldByName("OPNC_NMBR")->AsString;
  77. pObj->MDM_NMBR = pADO->FieldByName("MDM_NMBR")->AsString;
  78. pObj->USIM_NMBR = pADO->FieldByName("USIM_NMBR")->AsString;
  79. pObj->VHCL_NMBR = pADO->FieldByName("VHCL_NMBR")->AsString;
  80. pObj->OWNR_NM = pADO->FieldByName("OWNR_NM")->AsString;
  81. pObj->PRCT_NM = pADO->FieldByName("PRCT_NM")->AsString;
  82. FLists.Push(pObj->BDS_MNGM_NMBR, pObj);
  83. }
  84. }
  85. catch(EDatabaseError &E)
  86. {
  87. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  88. DBERRORMSG("블랙박스단말기정보조회", String(E.ClassName()), E.Message, sQry);
  89. throw Exception(String(E.ClassName()) + E.Message);
  90. }
  91. catch(Exception &exception)
  92. {
  93. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  94. DBERRORMSG("블랙박스단말기정보조회", String(exception.ClassName()), exception.Message, sQry);
  95. throw Exception(String(exception.ClassName()) + exception.Message);
  96. }
  97. }
  98. __finally
  99. {
  100. if (pADO)
  101. {
  102. pADO->Close();
  103. delete pADO;
  104. }
  105. FLists.UnLock();
  106. }
  107. return true;
  108. }
  109. //---------------------------------------------------------------------------
  110. bool TBlackBoxManager::GetNextBlackBoxId(String &ANewId, TADOConnection *ADbConn/*=NULL*/)
  111. {
  112. String sQry;
  113. TADOQuery *pADO = NULL;
  114. #if 0
  115. sQry = "SELECT NVL(MAX(TO_NUMBER(BDS_MNGM_NMBR))+1, 1) AS NEWID \r\n"
  116. " FROM TB_BDS_TRMN \r\n";
  117. #else
  118. sQry = "SELECT NVL(MAX((BDS_MNGM_NMBR))+1, 1) AS NEWID \r\n"
  119. " FROM TB_BDS_TRMN \r\n";
  120. #endif
  121. ANewId = "";
  122. try
  123. {
  124. try
  125. {
  126. pADO = new TADOQuery(NULL);
  127. pADO->Close();
  128. pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection();
  129. pADO->SQL->Clear();
  130. pADO->SQL->Text = sQry;
  131. pADO->Open();
  132. ANewId = pADO->FieldByName("NEWID")->AsString;
  133. // ANewId = "PAR" + pADO->FieldByName("NEWID")->AsString;
  134. return true;
  135. }
  136. catch(EDatabaseError &E)
  137. {
  138. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  139. DBERRORMSG("블랙박스신규관리번호조회", String(E.ClassName()), E.Message, sQry);
  140. throw Exception(String(E.ClassName()) + E.Message);
  141. }
  142. catch(Exception &exception)
  143. {
  144. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  145. DBERRORMSG("블랙박스신규관리번호조회", String(exception.ClassName()), exception.Message, sQry);
  146. throw Exception(String(exception.ClassName()) + exception.Message);
  147. }
  148. }
  149. __finally
  150. {
  151. if (pADO)
  152. {
  153. pADO->Close();
  154. delete pADO;
  155. }
  156. }
  157. return false;
  158. }
  159. //---------------------------------------------------------------------------
  160. bool TBlackBoxManager::DeleteBlackBox(TBlackBox *AObj, TADOConnection *ADbConn/*=NULL*/)
  161. {
  162. String sQry;
  163. TADOQuery *pADO = NULL;
  164. sQry = "DELETE TB_BDS_TRMN \r\n"
  165. " WHERE BDS_MNGM_NMBR = :p01 \r\n";
  166. try
  167. {
  168. //FLists.Lock();
  169. try
  170. {
  171. pADO = new TADOQuery(NULL);
  172. pADO->Close();
  173. pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection();
  174. pADO->SQL->Clear();
  175. pADO->SQL->Text = sQry;
  176. pADO->Parameters->ParamByName("p01")->Value = AObj->BDS_MNGM_NMBR;
  177. pADO->ExecSQL();
  178. return true;
  179. }
  180. catch(EDatabaseError &E)
  181. {
  182. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  183. DBERRORMSG("블랙박스정보삭제", String(E.ClassName()), E.Message, sQry);
  184. throw Exception(String(E.ClassName()) + E.Message);
  185. }
  186. catch(Exception &exception)
  187. {
  188. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  189. DBERRORMSG("블랙박스정보삭제", String(exception.ClassName()), exception.Message, sQry);
  190. throw Exception(String(exception.ClassName()) + exception.Message);
  191. }
  192. }
  193. __finally
  194. {
  195. if (pADO)
  196. {
  197. pADO->Close();
  198. delete pADO;
  199. }
  200. //FLists.UnLock();
  201. }
  202. return true;
  203. }
  204. //---------------------------------------------------------------------------
  205. bool TBlackBoxManager::UpdateBlackBox(TBlackBox *AObj, TADOConnection *ADbConn/*=NULL*/)
  206. {
  207. String sQry;
  208. TADOQuery *pADO = NULL;
  209. sQry = "UPDATE TB_BDS_TRMN \r\n"
  210. " SET OPNC_NMBR = :p02, \r\n"
  211. " MDM_NMBR = :p03, \r\n"
  212. " USIM_NMBR = :p04, \r\n"
  213. " VHCL_NMBR = :p05, \r\n"
  214. " OWNR_NM = :p06, \r\n"
  215. " PRCT_NM = :p07 \r\n"
  216. " WHERE BDS_MNGM_NMBR = :p01 \r\n";
  217. try
  218. {
  219. //FLists.Lock();
  220. try
  221. {
  222. pADO = new TADOQuery(NULL);
  223. pADO->Close();
  224. pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection();
  225. pADO->SQL->Clear();
  226. pADO->SQL->Text = sQry;
  227. pADO->Parameters->ParamByName("p01")->Value = AObj->BDS_MNGM_NMBR;
  228. pADO->Parameters->ParamByName("p02")->Value = AObj->OPNC_NMBR;
  229. pADO->Parameters->ParamByName("p03")->Value = AObj->MDM_NMBR;
  230. pADO->Parameters->ParamByName("p04")->Value = AObj->USIM_NMBR;
  231. pADO->Parameters->ParamByName("p05")->Value = AObj->VHCL_NMBR;
  232. pADO->Parameters->ParamByName("p06")->Value = AObj->OWNR_NM;
  233. pADO->Parameters->ParamByName("p07")->Value = AObj->PRCT_NM;
  234. pADO->ExecSQL();
  235. return true;
  236. }
  237. catch(EDatabaseError &E)
  238. {
  239. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  240. DBERRORMSG("블랙박스정보수정", String(E.ClassName()), E.Message, sQry);
  241. throw Exception(String(E.ClassName()) + E.Message);
  242. }
  243. catch(Exception &exception)
  244. {
  245. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  246. DBERRORMSG("블랙박스정보수정", String(exception.ClassName()), exception.Message, sQry);
  247. throw Exception(String(exception.ClassName()) + exception.Message);
  248. }
  249. }
  250. __finally
  251. {
  252. if (pADO)
  253. {
  254. pADO->Close();
  255. delete pADO;
  256. }
  257. //FLists.UnLock();
  258. }
  259. return true;
  260. }
  261. //---------------------------------------------------------------------------
  262. bool TBlackBoxManager::InsertBlackBox(TBlackBox *AObj, TADOConnection *ADbConn/*=NULL*/)
  263. {
  264. String sQry;
  265. TADOQuery *pADO = NULL;
  266. sQry = "INSERT INTO TB_BDS_TRMN ( \r\n"
  267. " BDS_MNGM_NMBR, \r\n"
  268. " OPNC_NMBR, \r\n"
  269. " MDM_NMBR, \r\n"
  270. " USIM_NMBR, \r\n"
  271. " VHCL_NMBR, \r\n"
  272. " OWNR_NM, \r\n"
  273. " PRCT_NM \r\n"
  274. " ) \r\n"
  275. " VALUES(:p01, :p02, :p03, :p04, :p05, \r\n"
  276. " :p06, :p07 ) \r\n";
  277. try
  278. {
  279. //FLists.Lock();
  280. try
  281. {
  282. pADO = new TADOQuery(NULL);
  283. pADO->Close();
  284. pADO->Connection = (NULL != ADbConn) ? ADbConn : ITSDb_GetConnection();
  285. pADO->SQL->Clear();
  286. pADO->SQL->Text = sQry;
  287. pADO->Parameters->ParamByName("p01")->Value = AObj->BDS_MNGM_NMBR;
  288. pADO->Parameters->ParamByName("p02")->Value = AObj->OPNC_NMBR;
  289. pADO->Parameters->ParamByName("p03")->Value = AObj->MDM_NMBR;
  290. pADO->Parameters->ParamByName("p04")->Value = AObj->USIM_NMBR;
  291. pADO->Parameters->ParamByName("p05")->Value = AObj->VHCL_NMBR;
  292. pADO->Parameters->ParamByName("p06")->Value = AObj->OWNR_NM;
  293. pADO->Parameters->ParamByName("p07")->Value = AObj->PRCT_NM;
  294. pADO->ExecSQL();
  295. return true;
  296. }
  297. catch(EDatabaseError &E)
  298. {
  299. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  300. DBERRORMSG("블랙박스정보입력", String(E.ClassName()), E.Message, sQry);
  301. throw Exception(String(E.ClassName()) + E.Message);
  302. }
  303. catch(Exception &exception)
  304. {
  305. ::PostMessage(Application->MainForm->Handle, (UINT)(WM_USER+0xF4), (WPARAM)0xB2, (LPARAM)0xB2);
  306. DBERRORMSG("블랙박스정보입력", String(exception.ClassName()), exception.Message, sQry);
  307. throw Exception(String(exception.ClassName()) + exception.Message);
  308. }
  309. }
  310. __finally
  311. {
  312. if (pADO)
  313. {
  314. pADO->Close();
  315. delete pADO;
  316. }
  317. //FLists.UnLock();
  318. }
  319. return true;
  320. }
  321. //---------------------------------------------------------------------------