/************************************************************************************************** 版本所有(C), 2021-2022, 北京普达迪泰 *************************************************************************************************** 文 件 名:EquipmentTypeManager.h 版 本 号: 1.00初版 作 者: HYF 生成日期:2021-12-20 最近修改: 功能描述: 设备型号管理 函数列表: 修改历史: 1.日 期 : 2021-12-20 作 者 : HYF 修改内容 : 创建文件 **************************************************************************************************/ #include "pch.h" #include "EquipTypePlaceManager.h" #include "CppSQLite3.h" #include "DBFactory.h" #include "EquipTypePlace.h" EquipTypePlaceManager::EquipTypePlaceManager() { } EquipTypePlaceManager::~EquipTypePlaceManager() { } /************************************************************************************************** 函 数 名 :Query 功能描述 :查询 输出参数 :略 返 回 值 :略 **************************************************************************************************/ CppSQLite3Query EquipTypePlaceManager::Query() { try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); return pDB->execQuery(_T("SELECT * FROM equip_type_place;")); } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); } } CppSQLite3Query EquipTypePlaceManager::Query(LPCTSTR szEquipTypeCode) { try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); char szCmd[256]; sprintf_s(szCmd, "SELECT * FROM equip_type_place WHERE equip_type_code ='%s';", szEquipTypeCode); return pDB->execQuery(szCmd); } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); } } CppSQLite3Query EquipTypePlaceManager::Query(LPCTSTR szEquipTypeCode, LPCTSTR szEquipTypePlace) { try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); char szCmd[256]; sprintf_s(szCmd, "SELECT * FROM equip_type_place WHERE equip_type_code ='%s' AND equip_type_place='%s';", szEquipTypeCode, szEquipTypePlace); return pDB->execQuery(szCmd); } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); } } /************************************************************************************************** 函 数 名 :IsExist 功能描述 :基于PK查询是否存在 输入参数 :略 输出参数 :略 返 回 值 :TRUE 成功;FALSE 失败 **************************************************************************************************/ BOOL EquipTypePlaceManager::IsExist(LPCTSTR szEquipTypeCode) { try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); CppSQLite3Buffer bufSQL; bufSQL.format("SELECT * FROM equip_type_place WHERE equip_type_code=%Q;", szEquipTypeCode); CppSQLite3Query q = pDB->execQuery(bufSQL); bufSQL.clear(); if (!q.eof()) { q.finalize(); return TRUE; } else { q.finalize(); return FALSE; } } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); return FALSE; } } BOOL EquipTypePlaceManager::IsExist(LPCTSTR szEquipTypeCode, LPCTSTR szEquipTypePlace) { try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); CppSQLite3Buffer bufSQL; bufSQL.format("SELECT * FROM equip_type_place WHERE equip_type_code=%Q and equip_type_place=%Q;", szEquipTypeCode, szEquipTypePlace); CppSQLite3Query q = pDB->execQuery(bufSQL); bufSQL.clear(); if (!q.eof()) { q.finalize(); return TRUE; } else { q.finalize(); return FALSE; } } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); return FALSE; } } /************************************************************************************************** 函 数 名 :Add 功能描述 :增加EquipType 输入参数 :pEquipType设备类型数据指针 输出参数 :无 返 回 值 :TRUE 成功;FALSE 失败 **************************************************************************************************/ BOOL EquipTypePlaceManager::Add(const EquipTypePlace& data) { CString szEquipTypeCode = data.GetEquipTypeCode(); CString szEquipTypePlace = data.GetEquipTypePlace(); CString szPointStart = data.GetPointS(); CString szPointEnd = data.GetPointE(); try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); CppSQLite3Buffer bufSQL; bufSQL.format("INSERT INTO equip_type_place (equip_type_code, equip_type_place, point_start, point_end) VALUES (%Q, %Q, %Q, %Q);", szEquipTypeCode, szEquipTypePlace, szPointStart, szPointEnd); pDB->execDML("begin transaction;"); pDB->execDML(bufSQL); pDB->execDML("commit transaction;"); bufSQL.clear(); } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); return FALSE; } return TRUE; } /************************************************************************************************** 函 数 名 :Update 功能描述 :更新EquipType 输入参数 :pEquipType设备类型数据指针 输出参数 :无 返 回 值 :TRUE 成功;FALSE 失败 **************************************************************************************************/ BOOL EquipTypePlaceManager::Update(LPCTSTR szPlace, const EquipTypePlace& data) { CString szEquipTypeCode = data.GetEquipTypeCode(); CString szEquipTypePlace = data.GetEquipTypePlace(); CString szPointStart = data.GetPointS(); CString szPointEnd = data.GetPointE(); try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); CppSQLite3Buffer bufSQL; bufSQL.format("UPDATE equip_type_place SET equip_type_place = %Q, point_start = %Q, point_end = %Q WHERE equip_type_code = %Q AND equip_type_place = %Q;", szEquipTypePlace, szPointStart, szPointEnd, szEquipTypeCode, szPlace); pDB->execDML("begin transaction;"); int affected = pDB->execDML(bufSQL); pDB->execDML("commit transaction;"); bufSQL.clear(); } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); return FALSE; } return TRUE; } /************************************************************************************************** 函 数 名 :Delete 功能描述 :删除EquipType 输入参数 :pDevice设备类型数据指针 输出参数 :无 返 回 值 :TRUE 成功;FALSE 失败 **************************************************************************************************/ BOOL EquipTypePlaceManager::Delete(LPCTSTR szEquipTypeCode) { try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); CppSQLite3Buffer bufSQL; bufSQL.format("DELETE FROM equip_type_place WHERE equip_type_code = %Q;", szEquipTypeCode); pDB->execDML("begin transaction;"); pDB->execDML(bufSQL); pDB->execDML("commit transaction;"); bufSQL.clear(); } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); return FALSE; } return TRUE; } BOOL EquipTypePlaceManager::Delete(LPCTSTR szEquipTypeCode, LPCTSTR szEquipTypePlace) { try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); CppSQLite3Buffer bufSQL; bufSQL.format("DELETE FROM equip_type_place WHERE equip_type_code = %Q AND equip_type_place=%Q;", szEquipTypeCode, szEquipTypePlace); pDB->execDML("begin transaction;"); pDB->execDML(bufSQL); pDB->execDML("commit transaction;"); bufSQL.clear(); } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); return FALSE; } return TRUE; } /************************************************************************************************** 函 数 名 :ClearAll 功能描述 :清除所有设备 输入参数 :无 输出参数 :无 返 回 值 :TRUE 成功;FALSE 失败 **************************************************************************************************/ BOOL EquipTypePlaceManager::ClearAll() { try { CppSQLite3DB* pDB = DBFactory::GetSQLite(); CppSQLite3Buffer bufSQL; bufSQL.format("DELETE FROM equip_type_place;");//删除语句 pDB->execDML("begin transaction;"); pDB->execDML(bufSQL); pDB->execDML("commit transaction;"); bufSQL.clear(); } catch (CppSQLite3Exception& e) { LOG::E(e.errorMessage()); return FALSE; } return TRUE; }