EquipDataManager.cpp 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329
  1. /**************************************************************************************************
  2. 版本所有(C), 2021-2022, 北京普达迪泰
  3. ***************************************************************************************************
  4. 文 件 名:EquipDataManager.cpp
  5. 版 本 号: 1.00初版
  6. 作 者: HYF
  7. 生成日期:2021-12-20
  8. 最近修改:
  9. 功能描述: 设备静态数据
  10. 函数列表:
  11. 修改历史:
  12. 1.日 期 : 2021-12-20
  13. 作 者 : HYF
  14. 修改内容 : 创建文件
  15. **************************************************************************************************/
  16. #include "pch.h"
  17. #include "EquipDataManager.h"
  18. #include "CppSQLite3.h"
  19. #include "DBFactory.h"
  20. #include "EquipData.h"
  21. EquipDataManager::EquipDataManager()
  22. {
  23. }
  24. EquipDataManager::~EquipDataManager()
  25. {
  26. }
  27. /**************************************************************************************************
  28. 函 数 名 :QueryAll
  29. 功能描述 :查询
  30. 输出参数 :略
  31. 返 回 值 :CppSQLite3Query
  32. **************************************************************************************************/
  33. CppSQLite3Query EquipDataManager::Query()
  34. {
  35. try
  36. {
  37. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  38. return pDB->execQuery(_T("SELECT * FROM equip_data;"));
  39. }
  40. catch (CppSQLite3Exception& e)
  41. {
  42. LOG::E(e.errorMessage());
  43. }
  44. }
  45. CppSQLite3Query EquipDataManager::Query(DWORD iTaskId) {
  46. try
  47. {
  48. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  49. char szCmd[256];
  50. sprintf_s(szCmd, "SELECT * FROM equip_data WHERE task_id ='%d';", iTaskId);
  51. return pDB->execQuery(szCmd);
  52. }
  53. catch (CppSQLite3Exception& e)
  54. {
  55. LOG::E(e.errorMessage());
  56. }
  57. }
  58. CppSQLite3Query EquipDataManager::Query(DWORD iTaskId, LPCTSTR szEquipCode)
  59. {
  60. try
  61. {
  62. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  63. char szCmd[256];
  64. sprintf_s(szCmd, "SELECT * FROM equip_data WHERE task_id=%d AND equip_code ='%s';", iTaskId, szEquipCode);
  65. return pDB->execQuery(szCmd);
  66. }
  67. catch (CppSQLite3Exception& e)
  68. {
  69. LOG::E(e.errorMessage());
  70. }
  71. }
  72. CppSQLite3Query EquipDataManager::Query(DWORD iTaskId, LPCTSTR szEquipCode, DWORD iItemId)
  73. {
  74. try
  75. {
  76. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  77. char szCmd[256];
  78. sprintf_s(szCmd, "SELECT * FROM equip_data WHERE task_id=%d AND equip_code=%s AND item_id =%d;", iTaskId, szEquipCode, iItemId);
  79. return pDB->execQuery(szCmd);
  80. }
  81. catch (CppSQLite3Exception& e)
  82. {
  83. LOG::E(e.errorMessage());
  84. }
  85. }
  86. /**************************************************************************************************
  87. 函 数 名 :Add
  88. 功能描述 :增加
  89. 输入参数 :略
  90. 输出参数 :略
  91. 返 回 值 :TRUE 成功;FALSE 失败
  92. **************************************************************************************************/
  93. BOOL EquipDataManager::Add(const EquipData& data)
  94. {
  95. DWORD iTaskId = data.GetTaskId();
  96. CString szEquipCode = data.GetEquipCode();
  97. DWORD iItemId = data.GetItemId();
  98. CString szItemTitle = data.GetItemTitle();
  99. CString szItemCode = data.GetItemCode();
  100. int iItemType = data.GetItemType();
  101. CString szItemDesc = data.GetItemDesc();
  102. try
  103. {
  104. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  105. CppSQLite3Buffer bufSQL;
  106. bufSQL.format("INSERT INTO equip_data ( "
  107. " task_id, "
  108. " equip_code, "
  109. " item_id, "
  110. " item_code , "
  111. " item_title, "
  112. " item_type , "
  113. " item_desc ) "
  114. " VALUES (%d, %Q, %d, %Q, %Q, %d, %Q); ",
  115. iTaskId,
  116. szEquipCode,
  117. iItemId,
  118. szItemCode,
  119. szItemTitle,
  120. iItemType,
  121. szItemDesc);
  122. pDB->execDML("begin transaction;");
  123. pDB->execDML(bufSQL);
  124. pDB->execDML("commit transaction;");
  125. bufSQL.clear();
  126. }
  127. catch (CppSQLite3Exception& e)
  128. {
  129. LOG::E(e.errorMessage());
  130. return FALSE;
  131. }
  132. return TRUE;
  133. }
  134. /**************************************************************************************************
  135. 函 数 名 :Update
  136. 功能描述 :更新
  137. 输入参数 :略
  138. 输出参数 :略
  139. 返 回 值 :TRUE 成功;FALSE 失败
  140. **************************************************************************************************/
  141. BOOL EquipDataManager::Update(const EquipData& data)
  142. {
  143. DWORD iTaskId = data.GetTaskId();
  144. CString szEquipCode = data.GetEquipCode();
  145. DWORD iItemId = data.GetItemId();
  146. CString szItemTitle = data.GetItemTitle();
  147. CString szItemCode = data.GetItemCode();
  148. int iItemType = data.GetItemType();
  149. CString szItemDesc = data.GetItemDesc();
  150. try
  151. {
  152. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  153. CppSQLite3Buffer bufSQL;
  154. bufSQL.format(" UPDATE equip_data "
  155. " SET item_code = %Q, "
  156. " item_title = %Q, "
  157. " item_desc = %Q "
  158. " WHERE task_id=%d AND equip_code=%Q AND item_id=%d; ",
  159. szItemCode,
  160. szItemTitle,
  161. szItemDesc,
  162. iTaskId,
  163. szEquipCode,
  164. iItemId );
  165. pDB->execDML("begin transaction;");
  166. int affected = pDB->execDML(bufSQL);
  167. pDB->execDML("commit transaction;");
  168. bufSQL.clear();
  169. }
  170. catch (CppSQLite3Exception& e)
  171. {
  172. LOG::E(e.errorMessage());
  173. return FALSE;
  174. }
  175. return TRUE;
  176. }
  177. /**************************************************************************************************
  178. 函 数 名 :Update
  179. 功能描述 :更新
  180. 输入参数 :略
  181. 输出参数 :略
  182. 返 回 值 :TRUE 成功;FALSE 失败
  183. **************************************************************************************************/
  184. BOOL EquipDataManager::UpdateTitle(DWORD iTaskId, LPCTSTR szEquipCode, DWORD iItemId, LPCTSTR szItemTitle)
  185. {
  186. try
  187. {
  188. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  189. CppSQLite3Buffer bufSQL;
  190. bufSQL.format("UPDATE equip_data SET item_title = %Q WHERE task_id=%d AND equip_code=%Q AND item_id=%d;",
  191. szItemTitle, iTaskId, szEquipCode, iItemId);
  192. pDB->execDML("begin transaction;");
  193. int affected = pDB->execDML(bufSQL);
  194. pDB->execDML("commit transaction;");
  195. bufSQL.clear();
  196. }
  197. catch (CppSQLite3Exception& e)
  198. {
  199. LOG::E(e.errorMessage());
  200. return FALSE;
  201. }
  202. return TRUE;
  203. }
  204. /**************************************************************************************************
  205. 函 数 名 :Delete
  206. 功能描述 :删除
  207. 输入参数 :略
  208. 输出参数 :略
  209. 返 回 值 :TRUE 成功;FALSE 失败
  210. **************************************************************************************************/
  211. BOOL EquipDataManager::Delete(DWORD iTaskId)
  212. {
  213. try
  214. {
  215. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  216. CppSQLite3Buffer bufSQL;
  217. bufSQL.format("DELETE FROM equip_data WHERE task_id=%d;", iTaskId);
  218. pDB->execDML("begin transaction;");
  219. pDB->execDML(bufSQL);
  220. pDB->execDML("commit transaction;");
  221. bufSQL.clear();
  222. }
  223. catch (CppSQLite3Exception& e)
  224. {
  225. LOG::E(e.errorMessage());
  226. return FALSE;
  227. }
  228. return TRUE;
  229. }
  230. BOOL EquipDataManager::Delete(DWORD iTaskId, LPCTSTR szEquipCode)
  231. {
  232. try
  233. {
  234. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  235. CppSQLite3Buffer bufSQL;
  236. bufSQL.format("DELETE FROM equip_data WHERE task_id=%d AND equip_code=%Q;", iTaskId, szEquipCode);
  237. pDB->execDML("begin transaction;");
  238. pDB->execDML(bufSQL);
  239. pDB->execDML("commit transaction;");
  240. bufSQL.clear();
  241. }
  242. catch (CppSQLite3Exception& e)
  243. {
  244. LOG::E(e.errorMessage());
  245. return FALSE;
  246. }
  247. return TRUE;
  248. }
  249. BOOL EquipDataManager::Delete(DWORD iTaskId, LPCTSTR szEquipCode, DWORD iItemId)
  250. {
  251. try
  252. {
  253. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  254. CppSQLite3Buffer bufSQL;
  255. bufSQL.format("DELETE FROM equip_data WHERE task_id=%d AND equip_code=%Q AND item_id=%d;", iTaskId, szEquipCode, iItemId);
  256. pDB->execDML("begin transaction;");
  257. pDB->execDML(bufSQL);
  258. pDB->execDML("commit transaction;");
  259. bufSQL.clear();
  260. }
  261. catch (CppSQLite3Exception& e)
  262. {
  263. LOG::E(e.errorMessage());
  264. return FALSE;
  265. }
  266. return TRUE;
  267. }
  268. /**************************************************************************************************
  269. 函 数 名 :ClearAll
  270. 功能描述 :清除所有数据
  271. 输入参数 :略
  272. 输出参数 :略
  273. 返 回 值 :TRUE 成功;FALSE 失败
  274. **************************************************************************************************/
  275. BOOL EquipDataManager::ClearAll()
  276. {
  277. try
  278. {
  279. CppSQLite3DB* pDB = DBFactory::GetSQLite();
  280. CppSQLite3Buffer bufSQL;
  281. bufSQL.format("DELETE FROM equip_data");//删除语句
  282. pDB->execDML("begin transaction;");
  283. pDB->execDML(bufSQL);
  284. pDB->execDML("commit transaction;");
  285. bufSQL.clear();
  286. }
  287. catch (CppSQLite3Exception& e)
  288. {
  289. LOG::E(e.errorMessage());
  290. return FALSE;
  291. }
  292. return TRUE;
  293. }