From a4807e30ad4123c7c2138b6ecef9f09062ad5ea1 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Mon, 24 Oct 2022 10:14:52 +0800 Subject: [PATCH 01/15] update:match xengine v7.42 --- .../XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp | 2 +- .../XEngine_HTTPTask/HTTPTask_Translation.cpp | 2 +- .../XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h | 2 +- .../XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp | 5 +++-- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp index ec8a23b..911b38d 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp @@ -24,7 +24,7 @@ BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber, i _tcscpy(st_BankInfo.tszBankNumber, lpszBankNumber); _stprintf(tszUrlBuffer, st_ServiceConfig.st_XApi.tszBankUrl, lpszBankNumber); - APIHelp_HttpRequest_Get(tszUrlBuffer, &ptszBodyBuffer, &nBLen); + APIHelp_HttpRequest_Custom(_T("GET"), tszUrlBuffer, NULL, NULL, &ptszBodyBuffer, &nBLen); //解析JSON信息 if (!ModuleProtocol_Parse_Bank(ptszBodyBuffer, nBLen, &st_BankInfo)) { diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp index 0086f66..67d4ab0 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp @@ -42,7 +42,7 @@ BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, return FALSE; } _stprintf(tszUrlBuffer, st_ServiceConfig.st_XApi.tszTranslationUrl, tszTypeBuffer, lpszMsgBuffer); - APIHelp_HttpRequest_Get(tszUrlBuffer, &ptszBodyBuffer, &nBLen); + APIHelp_HttpRequest_Custom(_T("GET"), tszUrlBuffer, NULL, NULL, &ptszBodyBuffer, &nBLen); //解析数据 if (!ModuleProtocol_Parse_Translation(ptszBodyBuffer, nBLen, &st_LanguageInfo)) { diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h index 5428895..25464ef 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h @@ -85,7 +85,7 @@ extern XLOG xhLog; extern XHANDLE xhHTTPSocket; extern XHANDLE xhHTTPHeart; extern XHANDLE xhHTTPPacket; -extern XNETHANDLE xhHTTPPool; +extern XHANDLE xhHTTPPool; //配置文件 extern XENGINE_SERVICECONFIG st_ServiceConfig; extern XENGINE_OPENCCCONFIG st_OPenccConfig; diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp index 8ee33d9..afa7c45 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp @@ -16,7 +16,7 @@ XLOG xhLog = NULL; XHANDLE xhHTTPSocket = NULL; XHANDLE xhHTTPHeart = NULL; XHANDLE xhHTTPPacket = NULL; -XNETHANDLE xhHTTPPool = 0; +XHANDLE xhHTTPPool = 0; //配置文件 XENGINE_SERVICECONFIG st_ServiceConfig; XENGINE_OPENCCCONFIG st_OPenccConfig; @@ -220,7 +220,8 @@ int main(int argc, char** argv) ppSt_ListHTTPParam[i]->lParam = pInt_Pos; ppSt_ListHTTPParam[i]->fpCall_ThreadsTask = XEngine_HTTPTask_Thread; } - if (!ManagePool_Thread_NQCreate(&xhHTTPPool, &ppSt_ListHTTPParam, st_ServiceConfig.st_XMax.nHTTPThread)) + xhHTTPPool = ManagePool_Thread_NQCreate(&ppSt_ListHTTPParam, st_ServiceConfig.st_XMax.nHTTPThread); + if (NULL == xhHTTPPool) { XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,启动HTTP线程池服务失败,错误:%lX"), ManagePool_GetLastError()); goto XENGINE_SERVICEAPP_EXIT; -- Gitee From d088c394c9c626529a62640eccf1bf1ebb5ec562 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 27 Oct 2022 13:52:48 +0800 Subject: [PATCH 02/15] delete:reply type 1 functions for bank and id and ip and language and phone and translation --- .../ModuleProtocol_Define.h | 150 ----------- .../ModuleProtocol_Packet.cpp | 241 ------------------ .../ModuleProtocol_Packet.h | 5 - .../XEngine_ModuleProtocol.def | 5 - XEngine_Source/XEngine_ModuleProtocol/pch.cpp | 20 -- .../XEngine_HttpApp/XEngine_HTTPTask.cpp | 46 +--- .../XEngine_HTTPTask/HTTPTask_Bank.cpp | 29 +-- .../XEngine_HTTPTask/HTTPTask_Bank.h | 2 +- .../XEngine_HTTPTask/HTTPTask_IDCard.cpp | 38 +-- .../XEngine_HTTPTask/HTTPTask_IDCard.h | 2 +- .../XEngine_HTTPTask/HTTPTask_IPInfo.cpp | 29 +-- .../XEngine_HTTPTask/HTTPTask_IPInfo.h | 2 +- .../XEngine_HTTPTask/HTTPTask_Language.cpp | 11 +- .../XEngine_HTTPTask/HTTPTask_Language.h | 2 +- .../XEngine_HTTPTask/HTTPTask_Phone.cpp | 20 +- .../XEngine_HTTPTask/HTTPTask_Phone.h | 2 +- .../XEngine_HTTPTask/HTTPTask_Translation.cpp | 29 +-- .../XEngine_HTTPTask/HTTPTask_Translation.h | 2 +- .../XEngine_HttpApp/XEngine_HttpApp.vcxproj | 2 + .../XEngine_HttpApp.vcxproj.filters | 6 + 20 files changed, 44 insertions(+), 599 deletions(-) diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h index 756869a..c9c2537 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h @@ -81,35 +81,6 @@ extern "C" BOOL ModuleProtocol_Packet_Common(TCHAR * ptszMsgBuffer, int* pInt_Ms *********************************************************************/ extern "C" BOOL ModuleProtocol_Packet_IPQuery(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IPADDRINFO * pSt_IPAddrInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); /******************************************************************** -函数名称:ModuleProtocol_Packet_IPQuery2 -函数功能:IP查询打包函数另一种方式 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_IPAddrInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要操作的IP地址信息 - 参数.四:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_IPQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IPADDRINFO* pSt_IPAddrInfo, int nCode = 0); -/******************************************************************** 函数名称:ModuleProtocol_Packet_IDQuery 函数功能:ID查询打包为JSON的封包函数 参数.一:ptszMsgBuffer @@ -149,40 +120,6 @@ extern "C" BOOL ModuleProtocol_Packet_IPQuery2(TCHAR* ptszMsgBuffer, int* pInt_M *********************************************************************/ extern "C" BOOL ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); /******************************************************************** -函数名称:ModuleProtocol_Packet_IDQuery2 -函数功能:ID查询打包为字符串流函数 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_IDInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要打包的ID信息 - 参数.四:pSt_IDRegion - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入ID地址信息 - 参数.五:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_IDQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode = 0); -/******************************************************************** 函数名称:ModuleProtocol_Packet_PhoneQuery 函数功能:电话信息查询打包为JSON的封包函数 参数.一:ptszMsgBuffer @@ -217,35 +154,6 @@ extern "C" BOOL ModuleProtocol_Packet_IDQuery2(TCHAR* ptszMsgBuffer, int* pInt_M *********************************************************************/ extern "C" BOOL ModuleProtocol_Packet_PhoneQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); /******************************************************************** -函数名称:ModuleProtocol_Packet_PhoneQuery2 -函数功能:电话查询打包为字符串流函数 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_PhoneInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要打包的信息 - 参数.四:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_PhoneQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo, int nCode = 0); -/******************************************************************** 函数名称:ModuleProtocol_Packet_BankQuery 函数功能:银行卡信息查询打包为JSON 参数.一:ptszMsgBuffer @@ -280,35 +188,6 @@ extern "C" BOOL ModuleProtocol_Packet_PhoneQuery2(TCHAR* ptszMsgBuffer, int* pIn *********************************************************************/ extern "C" BOOL ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); /******************************************************************** -函数名称:ModuleProtocol_Packet_BankQuery2 -函数功能:银行卡信息查询打包为字节流 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_PhoneInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要打包的信息 - 参数.四:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_BankQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0); -/******************************************************************** 函数名称:ModuleProtocol_Packet_LanguageQuery 函数功能:语言打包为JSON 参数.一:ptszMsgBuffer @@ -343,35 +222,6 @@ extern "C" BOOL ModuleProtocol_Packet_BankQuery2(TCHAR* ptszMsgBuffer, int* pInt *********************************************************************/ extern "C" BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); /******************************************************************** -函数名称:ModuleProtocol_Packet_LanguageQuery2 -函数功能:语言打包为字节流 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_PhoneInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要打包的信息 - 参数.四:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -extern "C" BOOL ModuleProtocol_Packet_LanguageQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0); -/******************************************************************** 函数名称:ModuleProtocol_Packet_Locker 函数功能:分布式锁协议打包函数 参数.一:ptszMsgBuffer diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp index a8c04ce..b343c21 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp @@ -148,57 +148,6 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_IPQuery(TCHAR* ptszMsgBuffer, return TRUE; } /******************************************************************** -函数名称:ModuleProtocol_Packet_IPQuery2 -函数功能:IP查询打包函数另一种方式 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_IPAddrInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要操作的IP地址信息 - 参数.四:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_IPQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IPADDRINFO* pSt_IPAddrInfo, int nCode /* = 0 */) -{ - ModuleProtocol_IsErrorOccur = FALSE; - - if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen) || (NULL == pSt_IPAddrInfo)) - { - ModuleProtocol_IsErrorOccur = TRUE; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; - } - *pInt_MsgLen = _stprintf(ptszMsgBuffer, "%d\r\n" - "%s\r\n" - "%s\r\n" - "%s\r\n" - "%s\r\n" - "%s\r\n" - "%s\r\n" - "%s\r\n" - "%s\r\n" - "%s\r\n" - "%s", nCode, pSt_IPAddrInfo->tszIPAddr, pSt_IPAddrInfo->tszIPStart, pSt_IPAddrInfo->tszIPEnd, pSt_IPAddrInfo->tszIPCountry, pSt_IPAddrInfo->tszIPProvince, pSt_IPAddrInfo->tszIPCity, pSt_IPAddrInfo->tszIPCounty, pSt_IPAddrInfo->tszIPAddress, pSt_IPAddrInfo->tszIPISP, pSt_IPAddrInfo->tszIPTime); - return TRUE; -} -/******************************************************************** 函数名称:ModuleProtocol_Packet_IDQuery 函数功能:ID查询打包为JSON的封包函数 参数.一:ptszMsgBuffer @@ -282,61 +231,6 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, return TRUE; } /******************************************************************** -函数名称:ModuleProtocol_Packet_IDQuery2 -函数功能:ID查询打包为字符串流函数 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_IDInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要打包的ID信息 - 参数.四:pSt_IDRegion - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入ID地址信息 - 参数.五:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_IDQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode /* = 0 */) -{ - ModuleProtocol_IsErrorOccur = FALSE; - - if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) - { - ModuleProtocol_IsErrorOccur = TRUE; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; - } - *pInt_MsgLen = _stprintf(ptszMsgBuffer, "%d\r\n" - "%s\r\n" - "%d\r\n" - "%d\r\n" - "%d\r\n" - "%d\r\n" - "%d\r\n" - "%s\r\n" - "%s\r\n" - "%s", nCode, pSt_IDInfo->tszIDNumber, pSt_IDInfo->nBirthYear, pSt_IDInfo->nBirthMonth, pSt_IDInfo->nBirthDay, pSt_IDInfo->nPoliceID, pSt_IDInfo->nSex / 2 == 0 ? 0 : 1, pSt_IDRegion->tszProvincer, pSt_IDRegion->tszCity, pSt_IDRegion->tszCounty); - return TRUE; -} -/******************************************************************** 函数名称:ModuleProtocol_Packet_PhoneQuery 函数功能:电话信息查询打包为JSON的封包函数 参数.一:ptszMsgBuffer @@ -409,52 +303,6 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_PhoneQuery(TCHAR* ptszMsgBuff return TRUE; } /******************************************************************** -函数名称:ModuleProtocol_Packet_PhoneQuery2 -函数功能:电话查询打包为字符串流函数 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_PhoneInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要打包的信息 - 参数.四:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_PhoneQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo, int nCode /* = 0 */) -{ - ModuleProtocol_IsErrorOccur = FALSE; - - if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) - { - ModuleProtocol_IsErrorOccur = TRUE; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; - } - *pInt_MsgLen = _stprintf(ptszMsgBuffer, "%d\r\n" - "%lld\r\n" - "%s\r\n" - "%s\r\n" - "%d\r\n" - "%d", nCode, pSt_PhoneInfo->nPhoneNumber, pSt_PhoneInfo->tszProvincer, pSt_PhoneInfo->tszCity, pSt_PhoneInfo->nZipCode, pSt_PhoneInfo->nAreaCode); - return TRUE; -} -/******************************************************************** 函数名称:ModuleProtocol_Packet_BankQuery 函数功能:银行卡信息查询打包为JSON 参数.一:ptszMsgBuffer @@ -526,51 +374,6 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffe return TRUE; } /******************************************************************** -函数名称:ModuleProtocol_Packet_BankQuery2 -函数功能:银行卡信息查询打包为字节流 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_PhoneInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要打包的信息 - 参数.四:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_BankQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode /* = 0 */) -{ - ModuleProtocol_IsErrorOccur = FALSE; - - if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) - { - ModuleProtocol_IsErrorOccur = TRUE; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; - } - *pInt_MsgLen = _stprintf(ptszMsgBuffer, "%d\r\n" - "%s\r\n" - "%s\r\n" - "%s\r\n" - "%d", nCode, pSt_BankInfo->tszBankNumber, pSt_BankInfo->tszBankName, pSt_BankInfo->tszBankAbridge, pSt_BankInfo->enBankType); - return TRUE; -} -/******************************************************************** 函数名称:ModuleProtocol_Packet_LanguageQuery 函数功能:语言打包为JSON 参数.一:ptszMsgBuffer @@ -641,50 +444,6 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgB return TRUE; } /******************************************************************** -函数名称:ModuleProtocol_Packet_LanguageQuery2 -函数功能:语言打包为字节流 - 参数.一:ptszMsgBuffer - In/Out:Out - 类型:字符指针 - 可空:N - 意思:输出打包的数据信息 - 参数.二:pInt_MsgLen - In/Out:Out - 类型:整数型指针 - 可空:N - 意思:输出打包大小 - 参数.三:pSt_PhoneInfo - In/Out:In - 类型:数据结构指针 - 可空:N - 意思:输入要打包的信息 - 参数.四:nCode - In/Out:In - 类型:整数型 - 可空:Y - 意思:输入返回的值 -返回值 - 类型:逻辑型 - 意思:是否成功 -备注: -*********************************************************************/ -BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_LanguageQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode /* = 0 */) -{ - ModuleProtocol_IsErrorOccur = FALSE; - - if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) - { - ModuleProtocol_IsErrorOccur = TRUE; - ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; - return FALSE; - } - *pInt_MsgLen = _stprintf(ptszMsgBuffer, "%d\r\n" - "%s\r\n" - "%s\r\n" - "%d", nCode, pSt_LanguageInfo->tszSourceStr, pSt_LanguageInfo->tszDestStr, pSt_LanguageInfo->enType); - return TRUE; -} -/******************************************************************** 函数名称:ModuleProtocol_Packet_Locker 函数功能:分布式锁协议打包函数 参数.一:ptszMsgBuffer diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h index f029e03..9123f87 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h @@ -24,15 +24,10 @@ public: public: BOOL ModuleProtocol_Packet_Common(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); BOOL ModuleProtocol_Packet_IPQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IPADDRINFO* pSt_IPAddrInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_IPQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IPADDRINFO* pSt_IPAddrInfo, int nCode = 0); BOOL ModuleProtocol_Packet_IDQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_IDQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO* pSt_IDInfo, XENGINE_IDREGION* pSt_IDRegion, int nCode = 0); BOOL ModuleProtocol_Packet_PhoneQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_PhoneQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_PHONEINFO* pSt_PhoneInfo, int nCode = 0); BOOL ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_BankQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0); BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); - BOOL ModuleProtocol_Packet_LanguageQuery2(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0); BOOL ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); public: BOOL ModuleProtocol_Packet_P2PLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount); diff --git a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def index 1fa7507..148abd2 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def +++ b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def @@ -5,15 +5,10 @@ EXPORTS ModuleProtocol_Packet_Common ModuleProtocol_Packet_IPQuery - ModuleProtocol_Packet_IPQuery2 ModuleProtocol_Packet_IDQuery - ModuleProtocol_Packet_IDQuery2 ModuleProtocol_Packet_PhoneQuery - ModuleProtocol_Packet_PhoneQuery2 ModuleProtocol_Packet_BankQuery - ModuleProtocol_Packet_BankQuery2 ModuleProtocol_Packet_LanguageQuery - ModuleProtocol_Packet_LanguageQuery2 ModuleProtocol_Packet_Locker ModuleProtocol_Packet_P2PLan ModuleProtocol_Packet_P2PWLan diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp index 92c712f..b12ac5e 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp @@ -39,42 +39,22 @@ extern "C" BOOL ModuleProtocol_Packet_IPQuery(TCHAR * ptszMsgBuffer, int* pInt_M { return m_ProtocolPacket.ModuleProtocol_Packet_IPQuery(ptszMsgBuffer, pInt_MsgLen, pSt_IPAddrInfo, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_IPQuery2(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IPADDRINFO * pSt_IPAddrInfo, int nCode) -{ - return m_ProtocolPacket.ModuleProtocol_Packet_IPQuery2(ptszMsgBuffer, pInt_MsgLen, pSt_IPAddrInfo, nCode); -} extern "C" BOOL ModuleProtocol_Packet_IDQuery(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO * pSt_IDInfo, XENGINE_IDREGION * pSt_IDRegion, int nCode, LPCTSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_IDQuery(ptszMsgBuffer, pInt_MsgLen, pSt_IDInfo, pSt_IDRegion, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_IDQuery2(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_IDCARDINFO * pSt_IDInfo, XENGINE_IDREGION * pSt_IDRegion, int nCode) -{ - return m_ProtocolPacket.ModuleProtocol_Packet_IDQuery2(ptszMsgBuffer, pInt_MsgLen, pSt_IDInfo, pSt_IDRegion, nCode); -} extern "C" BOOL ModuleProtocol_Packet_PhoneQuery(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_PHONEINFO * pSt_PhoneInfo, int nCode, LPCTSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_PhoneQuery(ptszMsgBuffer, pInt_MsgLen, pSt_PhoneInfo, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_PhoneQuery2(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_PHONEINFO * pSt_PhoneInfo, int nCode) -{ - return m_ProtocolPacket.ModuleProtocol_Packet_PhoneQuery2(ptszMsgBuffer, pInt_MsgLen, pSt_PhoneInfo, nCode); -} extern "C" BOOL ModuleProtocol_Packet_BankQuery(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO * pSt_BankInfo, int nCode, LPCTSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_BankQuery(ptszMsgBuffer, pInt_MsgLen, pSt_BankInfo, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_BankQuery2(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO * pSt_BankInfo, int nCode) -{ - return m_ProtocolPacket.ModuleProtocol_Packet_BankQuery2(ptszMsgBuffer, pInt_MsgLen, pSt_BankInfo, nCode); -} extern "C" BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO * pSt_LanguageInfo, int nCode, LPCTSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_LanguageQuery(ptszMsgBuffer, pInt_MsgLen, pSt_LanguageInfo, nCode, lpszMsgBuffer); } -extern "C" BOOL ModuleProtocol_Packet_LanguageQuery2(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO * pSt_LanguageInfo, int nCode) -{ - return m_ProtocolPacket.ModuleProtocol_Packet_LanguageQuery2(ptszMsgBuffer, pInt_MsgLen, pSt_LanguageInfo, nCode); -} extern "C" BOOL ModuleProtocol_Packet_Locker(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode, LPCTSTR lpszMsgBuffer) { return m_ProtocolPacket.ModuleProtocol_Packet_Locker(ptszMsgBuffer, pInt_MsgLen, xhToken, nCode, lpszMsgBuffer); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp index 2dca4e4..3a19dc2 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp @@ -201,13 +201,7 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); return FALSE; } - TCHAR tszGetType[64]; - - memset(tszKey, '\0', sizeof(tszKey)); - memset(tszGetType, '\0', sizeof(tszGetType)); - - BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszGetType); - XEngine_HTTPTask_IPInfo(lpszClientAddr, tszValue, _ttoi(tszGetType)); + XEngine_HTTPTask_IPInfo(lpszClientAddr, tszValue); } else if (0 == _tcsnicmp(lpszParamIDCard, tszValue, _tcslen(lpszParamIDCard))) { @@ -224,13 +218,7 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); return FALSE; } - TCHAR tszGetType[64]; - - memset(tszKey, '\0', sizeof(tszKey)); - memset(tszGetType, '\0', sizeof(tszGetType)); - - BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszGetType); - XEngine_HTTPTask_IDCard(lpszClientAddr, tszValue, _ttoi(tszGetType)); + XEngine_HTTPTask_IDCard(lpszClientAddr, tszValue); } else if (0 == _tcsnicmp(lpszParamPhone, tszValue, _tcslen(lpszParamPhone))) { @@ -247,13 +235,7 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); return FALSE; } - TCHAR tszGetType[64]; - - memset(tszKey, '\0', sizeof(tszKey)); - memset(tszGetType, '\0', sizeof(tszGetType)); - - BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszGetType); - XEngine_HTTPTask_PhoneInfo(lpszClientAddr, tszValue, _ttoi(tszGetType)); + XEngine_HTTPTask_PhoneInfo(lpszClientAddr, tszValue); } else if (0 == _tcsnicmp(lpszParamBank, tszValue, _tcslen(lpszParamBank))) { @@ -270,24 +252,16 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); return FALSE; } - TCHAR tszGetType[64]; - - memset(tszKey, '\0', sizeof(tszKey)); - memset(tszGetType, '\0', sizeof(tszGetType)); - - BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszGetType); - XEngine_HTTPTask_BankInfo(lpszClientAddr, tszValue, _ttoi(tszGetType)); + XEngine_HTTPTask_BankInfo(lpszClientAddr, tszValue); } else if (0 == _tcsnicmp(lpszParamLanguage, tszValue, _tcslen(lpszParamLanguage))) { //是不是语言转换 TCHAR tszCvtType[64]; - TCHAR tszGetType[64]; memset(tszCvtType, '\0', sizeof(tszCvtType)); memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); - memset(tszGetType, '\0', sizeof(tszGetType)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) @@ -301,20 +275,17 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR } memset(tszKey, '\0', sizeof(tszKey)); - BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszGetType); - BaseLib_OperatorString_GetKeyValue(pptszList[3], "=", tszKey, tszCvtType); - XEngine_HTTPTask_Language(lpszClientAddr, tszValue, _ttoi(tszGetType), _ttoi(tszCvtType)); + BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszCvtType); + XEngine_HTTPTask_Language(lpszClientAddr, tszValue, _ttoi(tszCvtType)); } else if (0 == _tcsnicmp(lpszParamTranslation, tszValue, _tcslen(lpszParamTranslation))) { //是不是翻译 TCHAR tszCvtType[64]; - TCHAR tszGetType[64]; memset(tszCvtType, '\0', sizeof(tszCvtType)); memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); - memset(tszGetType, '\0', sizeof(tszGetType)); BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) @@ -328,9 +299,8 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR } memset(tszKey, '\0', sizeof(tszKey)); - BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszGetType); - BaseLib_OperatorString_GetKeyValue(pptszList[3], "=", tszKey, tszCvtType); - XEngine_HTTPTask_Translation(lpszClientAddr, tszValue, _ttoi(tszGetType), _ttoi(tszCvtType)); + BaseLib_OperatorString_GetKeyValue(pptszList[2], "=", tszKey, tszCvtType); + XEngine_HTTPTask_Translation(lpszClientAddr, tszValue, _ttoi(tszCvtType)); } else if (0 == _tcsnicmp(lpszParamLocker, tszValue, _tcslen(lpszParamLocker))) { diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp index 911b38d..7d47e61 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.cpp @@ -1,7 +1,7 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber, int nType) +BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber) { int nMsgLen = 4096; int nPktLen = 4096; @@ -28,14 +28,7 @@ BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber, i //解析JSON信息 if (!ModuleProtocol_Parse_Bank(ptszBodyBuffer, nBLen, &st_BankInfo)) { - if (0 == nType) - { - ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, NULL, 1001, _T("banknumber is corrent")); - } - else - { - ModuleProtocol_Packet_BankQuery2(tszPktBuffer, &nPktLen, NULL, 1001); - } + ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, NULL, 1001, _T("banknumber is corrent")); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); @@ -46,28 +39,14 @@ BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber, i //查询对应名称 if (!ModuleDatabase_Bank_Query(&st_BankInfo)) { - if (0 == nType) - { - ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, NULL, 1010, _T("not found")); - } - else - { - ModuleProtocol_Packet_BankQuery2(tszPktBuffer, &nPktLen, NULL, 1010); - } + ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, NULL, 1010, _T("not found")); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的银行卡信息没有找到:%s"), lpszClientAddr, lpszBankNumber); return FALSE; } //打包发送 - if (0 == nType) - { - ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, &st_BankInfo); - } - else - { - ModuleProtocol_Packet_BankQuery2(tszPktBuffer, &nPktLen, &st_BankInfo); - } + ModuleProtocol_Packet_BankQuery(tszPktBuffer, &nPktLen, &st_BankInfo); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,发送银行卡信息获取请求给服务器,查询号码:%s"), lpszClientAddr, lpszBankNumber); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.h index af85047..994afd9 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Bank.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber, int nType); \ No newline at end of file +BOOL XEngine_HTTPTask_BankInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszBankNumber); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.cpp index a4a6d29..7687f64 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.cpp @@ -1,6 +1,6 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nType) +BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer) { int nMsgLen = 4096; int nPktLen = 4096; @@ -21,14 +21,7 @@ BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int if (!ModuleProtocol_Parse_IDCard(lpszMsgBuffer, &st_IDCardInfo)) { - if (0 == nType) - { - ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1001, _T("idnumber is incorrent")); - } - else - { - ModuleProtocol_Packet_IDQuery2(tszPktBuffer, &nPktLen, NULL, NULL, 1001); - } + ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1001, _T("idnumber is incorrent")); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的身份证编号不正确:%s"), lpszClientAddr, lpszMsgBuffer); @@ -37,14 +30,7 @@ BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int //验证身份证是否正确 if (!ModuleHelp_IDCard_CheckBirth(&st_IDCardInfo)) { - if (0 == nType) - { - ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1002, _T("idnumber is incorrent")); - } - else - { - ModuleProtocol_Packet_IDQuery2(tszPktBuffer, &nPktLen, NULL, NULL, 1002); - } + ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1002, _T("idnumber is incorrent")); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的身份证验证生日失败:%s"), lpszClientAddr, lpszMsgBuffer); @@ -52,28 +38,14 @@ BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int } if (!ModuleHelp_IDCard_CheckSum(&st_IDCardInfo)) { - if (0 == nType) - { - ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1010, _T("not found")); - } - else - { - ModuleProtocol_Packet_IDQuery2(tszPktBuffer, &nPktLen, NULL, NULL, 1010); - } + ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, NULL, NULL, 1010, _T("not found")); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的身份证验证校验码失败:%s"), lpszClientAddr, lpszMsgBuffer); return FALSE; } ModuleDatabase_IDCard_QueryRegion(&st_IDRegion, &st_IDCardInfo); - if (0 == nType) - { - ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, &st_IDCardInfo, &st_IDRegion); - } - else - { - ModuleProtocol_Packet_IDQuery2(tszPktBuffer, &nPktLen, &st_IDCardInfo, &st_IDRegion); - } + ModuleProtocol_Packet_IDQuery(tszPktBuffer, &nPktLen, &st_IDCardInfo, &st_IDRegion); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求身份证号码验证与信息查询成功,号码:%s"), lpszClientAddr, lpszMsgBuffer); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.h index ba0cbec..51f9ee3 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IDCard.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nType); \ No newline at end of file +BOOL XEngine_HTTPTask_IDCard(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IPInfo.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IPInfo.cpp index e1029f8..eecc72a 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IPInfo.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IPInfo.cpp @@ -1,7 +1,7 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_IPInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszIPAddr, int nType) +BOOL XEngine_HTTPTask_IPInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszIPAddr) { int nMsgLen = 4096; int nPktLen = 4096; @@ -24,14 +24,7 @@ BOOL XEngine_HTTPTask_IPInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszIPAddr, int nTy { if (!ModuleDatabase_IPInfo_IPV4Query(&st_IPAddrInfo, lpszIPAddr)) { - if (0 == nType) - { - ModuleProtocol_Packet_IPQuery(tszPktBuffer, &nPktLen, NULL, 1001, _T("ip is incorrent")); - } - else - { - ModuleProtocol_Packet_IPQuery2(tszPktBuffer, &nPktLen, NULL, 1001); - } + ModuleProtocol_Packet_IPQuery(tszPktBuffer, &nPktLen, NULL, 1001, _T("ip is incorrent")); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的IP地址不正确:%s"), lpszClientAddr, lpszIPAddr); @@ -42,14 +35,7 @@ BOOL XEngine_HTTPTask_IPInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszIPAddr, int nTy { if (!ModuleDatabase_IPInfo_IPV6Query(&st_IPAddrInfo, lpszIPAddr)) { - if (0 == nType) - { - ModuleProtocol_Packet_IPQuery(tszPktBuffer, &nPktLen, NULL, 1010, _T("not found")); - } - else - { - ModuleProtocol_Packet_IPQuery2(tszPktBuffer, &nPktLen, NULL, 1010); - } + ModuleProtocol_Packet_IPQuery(tszPktBuffer, &nPktLen, NULL, 1010, _T("not found")); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的IP地址不正确:%s"), lpszClientAddr, lpszIPAddr); @@ -57,14 +43,7 @@ BOOL XEngine_HTTPTask_IPInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszIPAddr, int nTy } } //通过此函数来打包成我们要发送的数据,就是打包成一条标准的HTTP协议 - if (0 == nType) - { - ModuleProtocol_Packet_IPQuery(tszPktBuffer, &nPktLen, &st_IPAddrInfo); - } - else - { - ModuleProtocol_Packet_IPQuery2(tszPktBuffer, &nPktLen, &st_IPAddrInfo); - } + ModuleProtocol_Packet_IPQuery(tszPktBuffer, &nPktLen, &st_IPAddrInfo); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); //打包完毕后才能发送给客户端 XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IPInfo.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IPInfo.h index 127cdbd..ae35585 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IPInfo.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_IPInfo.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_IPInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszIPAddr, int nType); \ No newline at end of file +BOOL XEngine_HTTPTask_IPInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszIPAddr); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.cpp index eb770e1..e021103 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.cpp @@ -1,7 +1,7 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nReplyType, int nConvertType) +BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nConvertType) { int nMsgLen = 4096; int nPktLen = 4096; @@ -77,14 +77,7 @@ BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, in ModuleHelp_Language_ConvertZh(st_OPenccConfig.tszFiletw2t, st_LanguageInfo.tszSourceStr, st_LanguageInfo.tszDestStr); } //打包发送 - if (0 == nReplyType) - { - ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, &st_LanguageInfo); - } - else - { - ModuleProtocol_Packet_LanguageQuery2(tszPktBuffer, &nPktLen, &st_LanguageInfo); - } + ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, &st_LanguageInfo); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求语言转换成功,原始语言:%s,目标语言:%s"), lpszClientAddr, st_LanguageInfo.tszSourceStr, st_LanguageInfo.tszDestStr); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.h index af59a40..efc91f9 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Language.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nReplyType, int nConvertType); \ No newline at end of file +BOOL XEngine_HTTPTask_Language(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nConvertType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Phone.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Phone.cpp index a9fe612..f3a3234 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Phone.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Phone.cpp @@ -1,7 +1,7 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_PhoneInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszPhoneNumber, int nType) +BOOL XEngine_HTTPTask_PhoneInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszPhoneNumber) { int nMsgLen = 4096; int nPktLen = 4096; @@ -21,28 +21,14 @@ BOOL XEngine_HTTPTask_PhoneInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszPhoneNumber, st_PhoneInfo.nPhoneNumber = _ttoi64(lpszPhoneNumber); if (!ModuleDatabase_Phone_Query(lpszPhoneNumber, &st_PhoneInfo)) { - if (0 == nType) - { - ModuleProtocol_Packet_PhoneQuery(tszPktBuffer, &nPktLen, NULL, 1010, _T("not found")); - } - else - { - ModuleProtocol_Packet_PhoneQuery2(tszPktBuffer, &nPktLen, NULL, 1010); - } + ModuleProtocol_Packet_PhoneQuery(tszPktBuffer, &nPktLen, NULL, 1010, _T("not found")); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求的电话号码没有找到:%s"), lpszClientAddr, lpszPhoneNumber); return FALSE; } //打包发送 - if (0 == nType) - { - ModuleProtocol_Packet_PhoneQuery(tszPktBuffer, &nPktLen, &st_PhoneInfo); - } - else - { - ModuleProtocol_Packet_PhoneQuery2(tszPktBuffer, &nPktLen, &st_PhoneInfo); - } + ModuleProtocol_Packet_PhoneQuery(tszPktBuffer, &nPktLen, &st_PhoneInfo); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,发送电话信息获取请求给服务器,查询号码:%s"), lpszClientAddr, lpszPhoneNumber); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Phone.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Phone.h index 9a25ff5..2b955c8 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Phone.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Phone.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_PhoneInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszPhoneNumber, int nType); \ No newline at end of file +BOOL XEngine_HTTPTask_PhoneInfo(LPCTSTR lpszClientAddr, LPCTSTR lpszPhoneNumber); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp index 67d4ab0..6d3027e 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.cpp @@ -1,6 +1,6 @@ #include "../XEngine_Hdr.h" -BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nReplyType, int nConvertType) +BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nConvertType) { int nMsgLen = 4096; int nPktLen = 4096; @@ -27,14 +27,7 @@ BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, //转换类型 if (!ModuleHelp_Translation_Convert((ENUM_XENGINE_APISERVICE_TRANSLATION_TYPE)nConvertType, tszTypeBuffer)) { - if (0 == nReplyType) - { - ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, NULL, 1001, _T("type not support")); - } - else - { - ModuleProtocol_Packet_LanguageQuery2(tszPktBuffer, &nPktLen, NULL, 1001); - } + ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, NULL, 1001, _T("type not support")); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); @@ -46,14 +39,7 @@ BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, //解析数据 if (!ModuleProtocol_Parse_Translation(ptszBodyBuffer, nBLen, &st_LanguageInfo)) { - if (0 == nReplyType) - { - ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, NULL, 1002, _T("translation failed")); - } - else - { - ModuleProtocol_Packet_LanguageQuery2(tszPktBuffer, &nPktLen, NULL, 1002); - } + ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, NULL, 1002, _T("translation failed")); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); @@ -61,14 +47,7 @@ BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, return FALSE; } //打包发送 - if (0 == nReplyType) - { - ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, &st_LanguageInfo); - } - else - { - ModuleProtocol_Packet_LanguageQuery2(tszPktBuffer, &nPktLen, &st_LanguageInfo); - } + ModuleProtocol_Packet_LanguageQuery(tszPktBuffer, &nPktLen, &st_LanguageInfo); RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam, tszPktBuffer, nPktLen); XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBodyBuffer); diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.h index 7b9a291..322fa84 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_Translation.h @@ -1,3 +1,3 @@ #pragma once -BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nReplyType, int nConvertType); \ No newline at end of file +BOOL XEngine_HTTPTask_Translation(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nConvertType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj index 5618d0c..6bab032 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj @@ -165,6 +165,7 @@ + @@ -182,6 +183,7 @@ + diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters index 5be50f7..1a80599 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.vcxproj.filters @@ -66,6 +66,9 @@ 源文件\XEngine_HTTPTask + + 源文件\XEngine_HTTPTask + @@ -113,5 +116,8 @@ 头文件\XEngine_HTTPTask + + 头文件\XEngine_HTTPTask + \ No newline at end of file -- Gitee From e6d02b2fe2eea44d13d2198c6e2e867d1d14138e Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Thu, 27 Oct 2022 14:01:51 +0800 Subject: [PATCH 03/15] fixed:vs build print dir warn --- .../ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj | 2 ++ .../ModulePlugin_Password/ModulePlugin_Password.vcxproj | 1 + .../ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj | 1 + .../ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj | 2 +- 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj index 740493a..15e5169 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj @@ -75,6 +75,8 @@ $(SolutionDir)$(Configuration)\XEngine_Plugin\ ../../XEngine_ThirdPart/jsoncpp;$(XEngine_Include);$(IncludePath) $(XEngine_Lib32);$(LibraryPath) + $(Configuration)\XEngine_Plugin\ + $(ProjectName) $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj index 2261346..5d98d2a 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj @@ -76,6 +76,7 @@ $(SolutionDir)$(Configuration)\XEngine_Plugin\ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) + $(Configuration)\XEngine_Plugin\ false diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj index 8c1e055..f028dfc 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj @@ -75,6 +75,7 @@ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_Plugin\ + $(Configuration)\XEngine_Plugin\ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj index b7dc062..4b854a2 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj @@ -73,7 +73,7 @@ true - $(Configuration)\ + $(Configuration)\XEngine_Plugin\ $(SolutionDir)$(Configuration)\XEngine_Plugin\ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) -- Gitee From 1a9be2be55158ca40bf1c6eac6b7053da6935afc Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 10:02:13 +0800 Subject: [PATCH 04/15] modify:error code define for db module --- .../XEngine_ModuleDatabase/ModuleDB_Error.h | 24 ++++++++++++------- .../ModuleDatabase_Bank.cpp | 4 ++-- .../ModuleDatabase_IDCard.cpp | 12 +++++----- .../ModuleDatabase_IPInfo.cpp | 8 +++---- .../ModuleDatabase_Phone.cpp | 16 ++++++------- .../XEngine_ModuleDatabase.vcxproj | 2 ++ .../XEngine_ModuleDatabase.vcxproj.filters | 12 ++++++++++ 7 files changed, 49 insertions(+), 29 deletions(-) diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Error.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Error.h index 2cf7d30..6280a5f 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Error.h +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Error.h @@ -13,21 +13,27 @@ ////////////////////////////////////////////////////////////////////////// // 导出的IP数据库错误 ////////////////////////////////////////////////////////////////////////// -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_IPINFO_PARAMENT 0xB0001 //初始化失败.参数错误 -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_IPINFO_NOTFOUND 0xB0002 //没有找到 +#define ERROR_APISERVICE_MODULE_DATABASE_IPINFO_PARAMENT 0xB0001 //初始化失败.参数错误 +#define ERROR_APISERVICE_MODULE_DATABASE_IPINFO_NOTFOUND 0xB0002 //没有找到 ////////////////////////////////////////////////////////////////////////// // 导出的身份证数据库错误 ////////////////////////////////////////////////////////////////////////// -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_IDCARD_PARAMENT 0xB1001 //初始化失败.参数错误 -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_IDCARD_NOTFOUND 0xB1002 //没有找到 +#define ERROR_APISERVICE_MODULE_DATABASE_IDCARD_PARAMENT 0xB1001 //初始化失败.参数错误 +#define ERROR_APISERVICE_MODULE_DATABASE_IDCARD_NOTFOUND 0xB1002 //没有找到 ////////////////////////////////////////////////////////////////////////// // 导出的电话数据库错误 ////////////////////////////////////////////////////////////////////////// -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_PARAMENT 0xB2001 //初始化失败.参数错误 -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_MALLOC 0xB2002 //申请内存失败 -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_NOTFOUND 0xB1002 //没有找到 +#define ERROR_APISERVICE_MODULE_DATABASE_PHONE_PARAMENT 0xB2001 //初始化失败.参数错误 +#define ERROR_APISERVICE_MODULE_DATABASE_PHONE_MALLOC 0xB2002 //申请内存失败 +#define ERROR_APISERVICE_MODULE_DATABASE_PHONE_NOTFOUND 0xB1002 //没有找到 ////////////////////////////////////////////////////////////////////////// // 导出的银行卡数据库错误 ////////////////////////////////////////////////////////////////////////// -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_BANK_PARAMENT 0xB2001 //参数错误 -#define ERROR_XENGINE_IPADDR_MODULE_DATABASE_BANK_NOTFOUND 0xB2002 //没有找到 \ No newline at end of file +#define ERROR_APISERVICE_MODULE_DATABASE_BANK_PARAMENT 0xB2001 //参数错误 +#define ERROR_APISERVICE_MODULE_DATABASE_BANK_NOTFOUND 0xB2002 //没有找到 +////////////////////////////////////////////////////////////////////////// +// 行政邮编错误 +////////////////////////////////////////////////////////////////////////// +#define ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_NOTFOUND 0xB3001 //没有找到 +#define ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_PARAMENT 0xB3002 //参数错误 +#define ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_NOTSET 0xB3003 //没有设置查询参数 \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.cpp index 199d129..46b4953 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Bank/ModuleDatabase_Bank.cpp @@ -81,7 +81,7 @@ BOOL CModuleDatabase_Bank::ModuleDatabase_Bank_Query(XENGINE_BANKINFO* pSt_BankI if (NULL == pSt_BankInfo) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_BANK_PARAMENT; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_BANK_PARAMENT; return FALSE; } //查询 @@ -101,7 +101,7 @@ BOOL CModuleDatabase_Bank::ModuleDatabase_Bank_Query(XENGINE_BANKINFO* pSt_BankI if (nLine <= 0) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_BANK_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_BANK_NOTFOUND; return FALSE; } _tcscpy(pSt_BankInfo->tszBankName, pptszResult[nRow + 1]); diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp index b5f7fb2..dcc268a 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IDCard/ModuleDatabase_IDCard.cpp @@ -113,7 +113,7 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryProvincer(XENGINE_IDREGI if ((NULL == pSt_IDRegion) || (NULL == pSt_IDInfo)) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IDCARD_PARAMENT; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IDCARD_PARAMENT; return FALSE; } //查询 @@ -133,7 +133,7 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryProvincer(XENGINE_IDREGI if (nLine <= 0) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IDCARD_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IDCARD_NOTFOUND; return FALSE; } _tcscpy(pSt_IDRegion->tszProvincer, pptszResult[nRow + 1]); @@ -166,7 +166,7 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCity(XENGINE_IDREGION* p if ((NULL == pSt_IDRegion) || (NULL == pSt_IDInfo)) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IDCARD_PARAMENT; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IDCARD_PARAMENT; return FALSE; } //查询 @@ -186,7 +186,7 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCity(XENGINE_IDREGION* p if (nLine <= 0) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IDCARD_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IDCARD_NOTFOUND; return FALSE; } _tcscpy(pSt_IDRegion->tszCity, pptszResult[nRow + 1]); @@ -219,7 +219,7 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCounty(XENGINE_IDREGION* if ((NULL == pSt_IDRegion) || (NULL == pSt_IDInfo)) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IDCARD_PARAMENT; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IDCARD_PARAMENT; return FALSE; } //查询 @@ -239,7 +239,7 @@ BOOL CModuleDatabase_IDCard::ModuleDatabase_IDCard_QueryCounty(XENGINE_IDREGION* if (nLine <= 0) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IDCARD_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IDCARD_NOTFOUND; return FALSE; } _tcscpy(pSt_IDRegion->tszCounty, pptszResult[nRow + 1]); diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IPInfo/ModuleDatabase_IPInfo.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IPInfo/ModuleDatabase_IPInfo.cpp index 583d89d..3deacd6 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IPInfo/ModuleDatabase_IPInfo.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_IPInfo/ModuleDatabase_IPInfo.cpp @@ -86,7 +86,7 @@ BOOL CModuleDatabase_IPInfo::ModuleDatabase_IPInfo_IPV4Query(XENGINE_IPADDRINFO* if ((NULL == pSt_IPAddrInfo) && (NULL == lpszIPAddr)) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IPINFO_PARAMENT; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IPINFO_PARAMENT; return FALSE; } //查询 @@ -111,7 +111,7 @@ BOOL CModuleDatabase_IPInfo::ModuleDatabase_IPInfo_IPV4Query(XENGINE_IPADDRINFO* if (nLine <= 0) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IPINFO_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IPINFO_NOTFOUND; return FALSE; } _tcscpy(pSt_IPAddrInfo->tszIPStart, pptszResult[nRow + 1]); @@ -153,7 +153,7 @@ BOOL CModuleDatabase_IPInfo::ModuleDatabase_IPInfo_IPV6Query(XENGINE_IPADDRINFO* if ((NULL == pSt_IPAddrInfo) && (NULL == lpszIPAddr)) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IPINFO_PARAMENT; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IPINFO_PARAMENT; return FALSE; } //查询 @@ -181,7 +181,7 @@ BOOL CModuleDatabase_IPInfo::ModuleDatabase_IPInfo_IPV6Query(XENGINE_IPADDRINFO* if (nLine <= 0) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_IPINFO_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_IPINFO_NOTFOUND; return FALSE; } _tcscpy(pSt_IPAddrInfo->tszIPStart, pptszResult[nRow + 1]); diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Phone/ModuleDatabase_Phone.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Phone/ModuleDatabase_Phone.cpp index 2ebecde..5f6cdb7 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Phone/ModuleDatabase_Phone.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_Phone/ModuleDatabase_Phone.cpp @@ -41,7 +41,7 @@ BOOL CModuleDatabase_Phone::ModuleDatabase_Phone_Init(LPCTSTR lpszSQLFile) if (NULL == lpszSQLFile) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_PARAMENT; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PHONE_PARAMENT; return FALSE; } //打开数据库 @@ -49,7 +49,7 @@ BOOL CModuleDatabase_Phone::ModuleDatabase_Phone_Init(LPCTSTR lpszSQLFile) if (NULL == pSt_File) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PHONE_NOTFOUND; return FALSE; } //申请内存 @@ -57,7 +57,7 @@ BOOL CModuleDatabase_Phone::ModuleDatabase_Phone_Init(LPCTSTR lpszSQLFile) if (NULL == ptszMsgBuffer) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_MALLOC; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PHONE_MALLOC; return FALSE; } memset(ptszMsgBuffer, '\0', XENGINE_APISERVICE_DATABASE_PHONE_BUFFER_SIZE); @@ -117,7 +117,7 @@ BOOL CModuleDatabase_Phone::ModuleDatabase_Phone_Query(LPCTSTR lpszPhoneNumber, if ((NULL == lpszPhoneNumber) || (NULL == pSt_PhoneInfo)) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_PARAMENT; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PHONE_PARAMENT; return FALSE; } size_t nPLen = _tcslen(lpszPhoneNumber); @@ -219,7 +219,7 @@ BOOL CModuleDatabase_Phone::ModuleDatabase_Phone_Convert(LPCTSTR lpszPhoneInfo, if (NULL == ptszTokStr) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PHONE_NOTFOUND; return FALSE; } _tcscpy(pSt_PhoneInfo->tszProvincer, ptszTokStr); @@ -228,7 +228,7 @@ BOOL CModuleDatabase_Phone::ModuleDatabase_Phone_Convert(LPCTSTR lpszPhoneInfo, if (NULL == ptszTokStr) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PHONE_NOTFOUND; return FALSE; } _tcscpy(pSt_PhoneInfo->tszCity, ptszTokStr); @@ -237,7 +237,7 @@ BOOL CModuleDatabase_Phone::ModuleDatabase_Phone_Convert(LPCTSTR lpszPhoneInfo, if (NULL == ptszTokStr) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PHONE_NOTFOUND; return FALSE; } pSt_PhoneInfo->nZipCode = _ttoi(ptszTokStr); @@ -246,7 +246,7 @@ BOOL CModuleDatabase_Phone::ModuleDatabase_Phone_Convert(LPCTSTR lpszPhoneInfo, if (NULL == ptszTokStr) { DBModule_IsErrorOccur = TRUE; - DBModule_dwErrorCode = ERROR_XENGINE_IPADDR_MODULE_DATABASE_PHONE_NOTFOUND; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_PHONE_NOTFOUND; return FALSE; } pSt_PhoneInfo->nAreaCode = _ttoi(ptszTokStr); diff --git a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj index 87b52cb..d2be24a 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj +++ b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj @@ -168,6 +168,7 @@ + @@ -178,6 +179,7 @@ + Create Create diff --git a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj.filters b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj.filters index fe0fa12..213672e 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj.filters +++ b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.vcxproj.filters @@ -37,6 +37,12 @@ {d795f584-6d94-4d87-85a9-b6787ccd8783} + + {bc7c2fd0-b3ee-4525-aa21-9b255773a05f} + + + {5095bb8f-8ecf-4876-ad6b-f9fe6bcbcc3c} + @@ -63,6 +69,9 @@ 头文件\ModuleDatabase_Bank + + 头文件\ModuleDatabase_ZIPCode + @@ -83,6 +92,9 @@ 源文件\ModuleDatabase_Bank + + 源文件\ModuleDatabase_ZIPCode + -- Gitee From 3fb049446aba40e118f5cb5d0142bf0acf8621bd Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 11:23:46 +0800 Subject: [PATCH 05/15] update:zip database file configure --- XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h | 1 + .../ModuleConfigure_Json/ModuleConfigure_Json.cpp | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h index 0aac0a0..dbcca66 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h +++ b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfig_Define.h @@ -43,6 +43,7 @@ typedef struct TCHAR tszIDData[MAX_PATH]; //ID数据库地址 TCHAR tszPhoneData[MAX_PATH]; //电话号码数据库地址 TCHAR tszBankData[MAX_PATH]; //银行卡数据库地址 + TCHAR tszZIPCodeData[MAX_PATH]; //邮编数据库地址 TCHAR tszBankUrl[MAX_PATH]; //银行卡验证地址 TCHAR tszTranslationUrl[MAX_PATH]; //翻译接口 }st_XApi; diff --git a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp index fe6faab..7d9cee1 100644 --- a/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp +++ b/XEngine_Source/XEngine_ModuleConfigure/ModuleConfigure_Json/ModuleConfigure_Json.cpp @@ -119,7 +119,7 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XE pSt_ServerConfig->st_XLog.nMaxCount = st_JsonXLog["MaxCount"].asInt(); pSt_ServerConfig->st_XLog.nLogLeave = st_JsonXLog["LogLeave"].asInt(); - if (st_JsonRoot["XApi"].empty() || (6 != st_JsonRoot["XApi"].size())) + if (st_JsonRoot["XApi"].empty() || (7 != st_JsonRoot["XApi"].size())) { Config_IsErrorOccur = TRUE; Config_dwErrorCode = ERROR_MODULE_CONFIGURE_JSON_XDB; @@ -130,6 +130,7 @@ BOOL CModuleConfigure_Json::ModuleConfigure_Json_File(LPCTSTR lpszConfigFile, XE _tcscpy(pSt_ServerConfig->st_XApi.tszIDData, st_JsonXApi["tszIDData"].asCString()); _tcscpy(pSt_ServerConfig->st_XApi.tszPhoneData, st_JsonXApi["tszPhoneData"].asCString()); _tcscpy(pSt_ServerConfig->st_XApi.tszBankData, st_JsonXApi["tszBankData"].asCString()); + _tcscpy(pSt_ServerConfig->st_XApi.tszZIPCodeData, st_JsonXApi["tszZIPCodeData"].asCString()); _tcscpy(pSt_ServerConfig->st_XApi.tszBankUrl, st_JsonXApi["tszBankUrl"].asCString()); _tcscpy(pSt_ServerConfig->st_XApi.tszTranslationUrl, st_JsonXApi["tszTranslationUrl"].asCString()); -- Gitee From f3f2609095f77fa6c2e4456b814033f3ebc0817b Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 11:24:48 +0800 Subject: [PATCH 06/15] added:zipcode query for db --- .../XEngine_ModuleDatabase/Makefile | 4 +- .../XEngine_ModuleDatabase/ModuleDB_Define.h | 56 ++- .../ModuleDatabase_ZIPCode.cpp | 329 ++++++++++++++++++ .../ModuleDatabase_ZIPCode.h | 30 ++ .../XEngine_ModuleDatabase.def | 7 +- XEngine_Source/XEngine_ModuleDatabase/pch.cpp | 21 ++ 6 files changed, 444 insertions(+), 3 deletions(-) create mode 100644 XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp create mode 100644 XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h diff --git a/XEngine_Source/XEngine_ModuleDatabase/Makefile b/XEngine_Source/XEngine_ModuleDatabase/Makefile index 91276a9..d55e9dc 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/Makefile +++ b/XEngine_Source/XEngine_ModuleDatabase/Makefile @@ -8,7 +8,7 @@ LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XE LIB = -lXEngine_BaseLib -lHelpComponents_DataBase LIBEX = -ldl -lpthread LOADSO = -Wl,-rpath=./,--disable-new-dtags -LIBINCLUDE = ModuleDatabase_IDCard.o ModuleDatabase_IPInfo.o ModuleDatabase_Phone.o ModuleDatabase_Bank.o pch.o +LIBINCLUDE = ModuleDatabase_IDCard.o ModuleDatabase_IPInfo.o ModuleDatabase_Phone.o ModuleDatabase_Bank.o ModuleDatabase_ZIPCode.o pch.o ifeq ($(shell uname),Darwin) SHAREDLL = dylib @@ -45,6 +45,8 @@ ModuleDatabase_Phone.o:./ModuleDatabase_Phone/ModuleDatabase_Phone.cpp $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleDatabase_Phone/ModuleDatabase_Phone.cpp ModuleDatabase_Bank.o:./ModuleDatabase_Bank/ModuleDatabase_Bank.cpp $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleDatabase_Bank/ModuleDatabase_Bank.cpp +ModuleDatabase_ZIPCode.o:./ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp pch.o:./pch.cpp $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Define.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Define.h index 1bac187..4c89e66 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Define.h +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDB_Define.h @@ -207,4 +207,58 @@ extern "C" BOOL ModuleDatabase_Bank_Destory(); 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleDatabase_Bank_Query(XENGINE_BANKINFO * pSt_BankInfo); \ No newline at end of file +extern "C" BOOL ModuleDatabase_Bank_Query(XENGINE_BANKINFO * pSt_BankInfo); +/************************************************************************/ +/* 导出的邮编行政信息函数 */ +/************************************************************************/ +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_Init +函数功能:初始化数据库 + 参数.一:lpszSQLFile + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要操作的SQL文件 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL ModuleDatabase_ZIPCode_Init(LPCTSTR lpszSQLFile); +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_Destory +函数功能:销毁 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL ModuleDatabase_ZIPCode_Destory(); +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_QueryZIPCode +函数功能:通过邮编查询行政地址信息 + 参数.一:pSt_ZIPInfo + In/Out:In/Out + 类型:数据结构指针 + 可空:N + 意思:输入要查询的邮编,输出查询到的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo); +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_QueryName +函数功能:通过行政名称查询内容 + 参数.一:pSt_ZIPInfo + In/Out:In/Out + 类型:数据结构指针 + 可空:N + 意思:输入要查询的信息,输出查询到的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp new file mode 100644 index 0000000..8f7b320 --- /dev/null +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp @@ -0,0 +1,329 @@ +#include "pch.h" +#include "ModuleDatabase_ZIPCode.h" +/******************************************************************** +// Created: 2022/10/27 16:16:03 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ModuleDatabase\ModuleDatabase_ZIPCode\ModuleDatabase_ZIPCode.cpp +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ModuleDatabase\ModuleDatabase_ZIPCode +// File Base: ModuleDatabase_ZIPCode +// File Ext: cpp +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 邮政编码地址信息数据库 +// History: +*********************************************************************/ +CModuleDatabase_ZIPCode::CModuleDatabase_ZIPCode() +{ +} +CModuleDatabase_ZIPCode::~CModuleDatabase_ZIPCode() +{ + +} +////////////////////////////////////////////////////////////////////////// +// 公有函数 +////////////////////////////////////////////////////////////////////////// +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_Init +函数功能:初始化数据库 + 参数.一:lpszSQLFile + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要操作的SQL文件 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_Init(LPCTSTR lpszSQLFile) +{ + DBModule_IsErrorOccur = FALSE; + //打开数据库 + if (!DataBase_SQLite_Open(&xhSQL, lpszSQLFile)) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = DataBase_GetLastError(); + return FALSE; + } + return TRUE; +} +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_Destory +函数功能:销毁 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_Destory() +{ + DBModule_IsErrorOccur = FALSE; + + DataBase_SQLite_Close(xhSQL); + return TRUE; +} +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_QueryZIPCode +函数功能:通过邮编查询行政地址信息 + 参数.一:pSt_ZIPInfo + In/Out:In/Out + 类型:数据结构指针 + 可空:N + 意思:输入要查询的邮编,输出查询到的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo) +{ + DBModule_IsErrorOccur = FALSE; + + //查询 + int nLine = 0; + int nRow = 0; + TCHAR** pptszResult; + TCHAR tszSQLStatement[1024]; + + memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); + _stprintf(tszSQLStatement, _T("SELECT * FROM `hy_area` WHERE zip_code = %d"), pSt_ZIPInfo->nZipCode); + if (!DataBase_SQLite_GetTable(xhSQL, tszSQLStatement, &pptszResult, &nLine, &nRow)) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = DataBase_GetLastError(); + return FALSE; + } + if (nLine <= 0) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_NOTFOUND; + return FALSE; + } + int nFliedValue = nRow; + //三个级别 省->市->区/县 + _tcscpy(pSt_ZIPInfo->tszPinYin, pptszResult[nFliedValue + 6]); + pSt_ZIPInfo->nLevel = _ttoi(pptszResult[nFliedValue + 5]); + pSt_ZIPInfo->nAreaCode = _ttoi(pptszResult[nFliedValue + 7]); + pSt_ZIPInfo->dlLng = _ttof(pptszResult[nFliedValue + 10]); + pSt_ZIPInfo->dlLat = _ttof(pptszResult[nFliedValue + 11]); + if (3 == pSt_ZIPInfo->nLevel) + { + //获取上级节点 + int nParentID = 0; + _tcscpy(pSt_ZIPInfo->tszCounty, pptszResult[nFliedValue + 2]); + ModuleDatabase_ZIPCode_QueryParentByID(_ttoi(pptszResult[nFliedValue + 1]), pSt_ZIPInfo->tszCity, &nParentID); + ModuleDatabase_ZIPCode_QueryParentByID(nParentID, pSt_ZIPInfo->tszProvincer, &nParentID); + } + else if (2 == pSt_ZIPInfo->nLevel) + { + int nParentID = 0; + _tcscpy(pSt_ZIPInfo->tszCity, pptszResult[nFliedValue + 2]); + ModuleDatabase_ZIPCode_QueryParentByID(_ttoi(pptszResult[nFliedValue + 1]), pSt_ZIPInfo->tszProvincer); + } + else + { + _tcscpy(pSt_ZIPInfo->tszProvincer, pptszResult[nFliedValue + 2]); + } + + DataBase_SQLite_FreeTable(pptszResult); + return TRUE; +} +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_QueryName +函数功能:通过行政名称查询内容 + 参数.一:pSt_ZIPInfo + In/Out:In/Out + 类型:数据结构指针 + 可空:N + 意思:输入要查询的信息,输出查询到的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo) +{ + DBModule_IsErrorOccur = FALSE; + + if (NULL == pSt_ZIPInfo) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_PARAMENT; + return FALSE; + } + //查询 + int nLine = 0; + int nRow = 0; + TCHAR** pptszResult; + TCHAR tszSQLStatement[1024]; + + memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); + + if ((_tcslen(pSt_ZIPInfo->tszCounty) > 0) && (_tcslen(pSt_ZIPInfo->tszCity) == 0)) + { + int nParentID = 0; + ModuleDatabase_ZIPCode_QueryParentByName(pSt_ZIPInfo->tszCounty, &nParentID); + ModuleDatabase_ZIPCode_QueryParentByID(nParentID, pSt_ZIPInfo->tszCity, &nParentID); + ModuleDatabase_ZIPCode_QueryParentByID(nParentID, pSt_ZIPInfo->tszProvincer, &nParentID); + + _stprintf(tszSQLStatement, _T("SELECT * FROM `hy_area` WHERE name = '%s'"), pSt_ZIPInfo->tszCounty); + } + else if ((_tcslen(pSt_ZIPInfo->tszCounty) == 0) && (_tcslen(pSt_ZIPInfo->tszCity) > 0)) + { + int nParentID = 0; + ModuleDatabase_ZIPCode_QueryParentByName(pSt_ZIPInfo->tszCity, &nParentID); + ModuleDatabase_ZIPCode_QueryParentByID(nParentID, pSt_ZIPInfo->tszProvincer, &nParentID); + + _stprintf(tszSQLStatement, _T("SELECT * FROM `hy_area` WHERE name = '%s'"), pSt_ZIPInfo->tszCity); + } + else + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_NOTSET; + return FALSE; + } + //查询内容 + if (!DataBase_SQLite_GetTable(xhSQL, tszSQLStatement, &pptszResult, &nLine, &nRow)) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = DataBase_GetLastError(); + return FALSE; + } + if (nLine <= 0) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_NOTFOUND; + return FALSE; + } + int nFliedValue = nRow; + pSt_ZIPInfo->nLevel = _ttoi(pptszResult[nFliedValue + 5]); + pSt_ZIPInfo->nAreaCode = _ttoi(pptszResult[nFliedValue + 7]); + pSt_ZIPInfo->nZipCode = _ttoi(pptszResult[nFliedValue + 8]); + pSt_ZIPInfo->dlLng = _ttof(pptszResult[nFliedValue + 10]); + pSt_ZIPInfo->dlLat = _ttof(pptszResult[nFliedValue + 11]); + _tcscpy(pSt_ZIPInfo->tszPinYin, pptszResult[nFliedValue + 6]); + + DataBase_SQLite_FreeTable(pptszResult); + return TRUE; +} +////////////////////////////////////////////////////////////////////////// +// 保护函数 +////////////////////////////////////////////////////////////////////////// +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_QueryParentByID +函数功能:通过ID查询父节点信息 + 参数.一:nParentID + In/Out:In + 类型:整数型 + 可空:N + 意思:输入要查询的父节点 + 参数.二:ptszParentStr + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出查询到的父节点名 + 参数.三:pInt_ParentID + In/Out:Out + 类型:整数型指针 + 可空:Y + 意思:导出上级节点ID +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryParentByID(int nParentID, TCHAR* ptszParentStr, int* pInt_ParentID /* = NULL */) +{ + DBModule_IsErrorOccur = FALSE; + + if (NULL == ptszParentStr) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_PARAMENT; + return FALSE; + } + //查询 + int nLine = 0; + int nRow = 0; + TCHAR** pptszResult; + TCHAR tszSQLStatement[1024]; + + memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); + _stprintf(tszSQLStatement, _T("SELECT * FROM `hy_area` WHERE id = %d"), nParentID); + if (!DataBase_SQLite_GetTable(xhSQL, tszSQLStatement, &pptszResult, &nLine, &nRow)) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = DataBase_GetLastError(); + return FALSE; + } + if (nLine <= 0) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_NOTFOUND; + return FALSE; + } + int nFliedValue = nRow; + if (NULL != pInt_ParentID) + { + *pInt_ParentID = _ttoi(pptszResult[nFliedValue + 1]); + } + _tcscpy(ptszParentStr, pptszResult[nFliedValue + 3]); + + DataBase_SQLite_FreeTable(pptszResult); + return TRUE; +} +/******************************************************************** +函数名称:ModuleDatabase_ZIPCode_QueryParentByName +函数功能:通过名称查询父节点信息 + 参数.一:lpszName + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要查询的名称 + 参数.二:pInt_ParentID + In/Out:Out + 类型:整数型指针 + 可空:Y + 意思:导出上级节点ID +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryParentByName(LPCTSTR lpszName, int* pInt_ParentID /* = NULL */) +{ + DBModule_IsErrorOccur = FALSE; + + if (NULL == lpszName) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_PARAMENT; + return FALSE; + } + //查询 + int nLine = 0; + int nRow = 0; + TCHAR** pptszResult; + TCHAR tszSQLStatement[1024]; + + memset(tszSQLStatement, '\0', sizeof(tszSQLStatement)); + _stprintf(tszSQLStatement, _T("SELECT * FROM `hy_area` WHERE name = '%s'"), lpszName); + if (!DataBase_SQLite_GetTable(xhSQL, tszSQLStatement, &pptszResult, &nLine, &nRow)) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = DataBase_GetLastError(); + return FALSE; + } + if (nLine <= 0) + { + DBModule_IsErrorOccur = TRUE; + DBModule_dwErrorCode = ERROR_APISERVICE_MODULE_DATABASE_ZIPCODE_NOTFOUND; + return FALSE; + } + int nFliedValue = nRow; + if (NULL != pInt_ParentID) + { + *pInt_ParentID = _ttoi(pptszResult[nFliedValue + 1]); + } + DataBase_SQLite_FreeTable(pptszResult); + return TRUE; +} \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h new file mode 100644 index 0000000..0935005 --- /dev/null +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h @@ -0,0 +1,30 @@ +#pragma once +/******************************************************************** +// Created: 2022/10/27 16:15:22 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_ModuleDatabase\ModuleDatabase_ZIPCode\ModuleDatabase_ZIPCode.h +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_ModuleDatabase\ModuleDatabase_ZIPCode +// File Base: ModuleDatabase_ZIPCode +// File Ext: h +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 邮政编码地址信息数据库 +// History: +*********************************************************************/ + + +class CModuleDatabase_ZIPCode +{ +public: + CModuleDatabase_ZIPCode(); + ~CModuleDatabase_ZIPCode(); +public: + BOOL ModuleDatabase_ZIPCode_Init(LPCTSTR lpszSQLFile); + BOOL ModuleDatabase_ZIPCode_Destory(); + BOOL ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO* pSt_ZIPInfo); + BOOL ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO* pSt_ZIPInfo); +protected: + BOOL ModuleDatabase_ZIPCode_QueryParentByID(int nParentID, TCHAR* ptszParentStr, int* pInt_ParentID = NULL); + BOOL ModuleDatabase_ZIPCode_QueryParentByName(LPCTSTR lpszName, int* pInt_ParentID = NULL); +private: + XHDATA xhSQL; +}; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.def b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.def index 32665b9..090f98b 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.def +++ b/XEngine_Source/XEngine_ModuleDatabase/XEngine_ModuleDatabase.def @@ -18,4 +18,9 @@ EXPORTS ModuleDatabase_Bank_Init ModuleDatabase_Bank_Destory - ModuleDatabase_Bank_Query \ No newline at end of file + ModuleDatabase_Bank_Query + + ModuleDatabase_ZIPCode_Init + ModuleDatabase_ZIPCode_Destory + ModuleDatabase_ZIPCode_QueryZIPCode + ModuleDatabase_ZIPCode_QueryName \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleDatabase/pch.cpp b/XEngine_Source/XEngine_ModuleDatabase/pch.cpp index 8982b5b..5945e18 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/pch.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/pch.cpp @@ -3,6 +3,7 @@ #include "ModuleDatabase_IPInfo/ModuleDatabase_IPInfo.h" #include "ModuleDatabase_Phone/ModuleDatabase_Phone.h" #include "ModuleDatabase_Bank/ModuleDatabase_Bank.h" +#include "ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.h" /******************************************************************** // Created: 2022/02/28 13:26:15 // File Name: D:\XEngine_IPInfo\XEngine_Source\XEngine_ModuleDatabase\pch.cpp @@ -21,6 +22,7 @@ CModuleDatabase_IPInfo m_IPAddr; CModuleDatabase_IDCard m_IDCard; CModuleDatabase_Phone m_Phone; CModuleDatabase_Bank m_Bank; +CModuleDatabase_ZIPCode m_ZIPCode; ////////////////////////////////////////////////////////////////////////// /// 导出的函数 ////////////////////////////////////////////////////////////////////////// @@ -95,4 +97,23 @@ extern "C" BOOL ModuleDatabase_Bank_Destory() extern "C" BOOL ModuleDatabase_Bank_Query(XENGINE_BANKINFO * pSt_BankInfo) { return m_Bank.ModuleDatabase_Bank_Query(pSt_BankInfo); +} +/************************************************************************/ +/* 导出的邮编行政信息函数 */ +/************************************************************************/ +extern "C" BOOL ModuleDatabase_ZIPCode_Init(LPCTSTR lpszSQLFile) +{ + return m_ZIPCode.ModuleDatabase_ZIPCode_Init(lpszSQLFile); +} +extern "C" BOOL ModuleDatabase_ZIPCode_Destory() +{ + return m_ZIPCode.ModuleDatabase_ZIPCode_Destory(); +} +extern "C" BOOL ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINFO * pSt_ZIPInfo) +{ + return m_ZIPCode.ModuleDatabase_ZIPCode_QueryZIPCode(pSt_ZIPInfo); +} +extern "C" BOOL ModuleDatabase_ZIPCode_QueryName(XENGINE_ZIPINFO * pSt_ZIPInfo) +{ + return m_ZIPCode.ModuleDatabase_ZIPCode_QueryName(pSt_ZIPInfo); } \ No newline at end of file -- Gitee From b5e54352a2a9ec9300c4eb746eab16976763a619 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 11:25:19 +0800 Subject: [PATCH 07/15] added:zipcode protocol packet and parse --- .../ModuleProtocol_Define.h | 60 ++++++++++++++- .../ModuleProtocol_Packet.cpp | 76 +++++++++++++++++++ .../ModuleProtocol_Packet.h | 1 + .../ModuleProtocol_Parse.cpp | 64 ++++++++++++++++ .../ModuleProtocol_Parse.h | 1 + .../XEngine_ModuleProtocol.def | 4 +- XEngine_Source/XEngine_ModuleProtocol/pch.cpp | 8 ++ 7 files changed, 212 insertions(+), 2 deletions(-) diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h index c9c2537..20d54e3 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Define.h @@ -256,6 +256,40 @@ extern "C" BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgBuffer, int* p *********************************************************************/ extern "C" BOOL ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); /******************************************************************** +函数名称:ModuleProtocol_Packet_ZIPCode +函数功能:打包行政邮编信息协议 + 参数.一:ptszMsgBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出打包的数据信息 + 参数.二:pInt_MsgLen + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出打包大小 + 参数.三:pSt_ZIPInfo + In/Out:In + 类型:数据结构指针 + 可空:N + 意思:输入要打包的数据 + 参数.四:nCode + In/Out:In + 类型:整数型 + 可空:Y + 意思:输入返回的值 + 参数.五:lpszMsgBuffer + In/Out:In + 类型:常量字符指针 + 可空:Y + 意思:输入操作结果 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); +/******************************************************************** 函数名称:ModuleProtocol_Packet_P2PLan 函数功能:响应同步局域网地址列表 参数.一:ptszMsgBuffer @@ -483,4 +517,28 @@ extern "C" BOOL ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer, int nMsgLe 意思:是否成功 备注: *********************************************************************/ -extern "C" BOOL ModuleProtocol_Parse_CDKey(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_AUTHORIZE_LOCAL* pSt_Authorize); \ No newline at end of file +extern "C" BOOL ModuleProtocol_Parse_CDKey(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_AUTHORIZE_LOCAL* pSt_Authorize); +/******************************************************************** +函数名称:ModuleProtocol_Parse_ZIPCode +函数功能:解析邮政地址信息 + 参数.一:lpszMsgBuffer + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要解析的缓冲区 + 参数.二:nMsgLen + In/Out:In + 类型:整数型 + 可空:N + 意思:输入缓冲区大小 + 参数.三:pSt_ZIPInfo + In/Out:Out + 类型:数据结构指针 + 可空:N + 意思:输出解析后的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp index b343c21..3985177 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.cpp @@ -509,6 +509,82 @@ BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, return TRUE; } /******************************************************************** +函数名称:ModuleProtocol_Packet_ZIPCode +函数功能:打包行政邮编信息协议 + 参数.一:ptszMsgBuffer + In/Out:Out + 类型:字符指针 + 可空:N + 意思:输出打包的数据信息 + 参数.二:pInt_MsgLen + In/Out:Out + 类型:整数型指针 + 可空:N + 意思:输出打包大小 + 参数.三:pSt_ZIPInfo + In/Out:In + 类型:数据结构指针 + 可空:N + 意思:输入要打包的数据 + 参数.四:nCode + In/Out:In + 类型:整数型 + 可空:Y + 意思:输入返回的值 + 参数.五:lpszMsgBuffer + In/Out:In + 类型:常量字符指针 + 可空:Y + 意思:输入操作结果 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CModuleProtocol_Packet::ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode /* = 0 */, LPCTSTR lpszMsgBuffer /* = NULL */) +{ + ModuleProtocol_IsErrorOccur = FALSE; + + if ((NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) + { + ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PACKET_PARAMENT; + return FALSE; + } + Json::Value st_JsonRoot; + Json::Value st_JsonObject; + Json::StreamWriterBuilder st_JsonBuilder; + + if (0 == nCode) + { + st_JsonObject["dlLat"] = pSt_ZIPInfo->dlLat; + st_JsonObject["dlLng"] = pSt_ZIPInfo->dlLng; + st_JsonObject["nAreaCode"] = pSt_ZIPInfo->nAreaCode; + st_JsonObject["nLevel"] = pSt_ZIPInfo->nLevel; + st_JsonObject["nZipCode"] = pSt_ZIPInfo->nZipCode; + st_JsonObject["tszCity"] = pSt_ZIPInfo->tszCity; + st_JsonObject["tszCounty"] = pSt_ZIPInfo->tszCounty; + st_JsonObject["tszPinYin"] = pSt_ZIPInfo->tszPinYin; + st_JsonObject["tszProvincer"] = pSt_ZIPInfo->tszProvincer; + } + + st_JsonRoot["code"] = nCode; + if (NULL == lpszMsgBuffer) + { + st_JsonRoot["msg"] = "success"; + } + else + { + st_JsonRoot["msg"] = lpszMsgBuffer; + } + st_JsonRoot["data"] = st_JsonObject; + st_JsonBuilder["emitUTF8"] = true; + + *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); + memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); + return TRUE; +} +/******************************************************************** 函数名称:ModuleProtocol_Packet_P2PLan 函数功能:响应同步局域网地址列表 参数.一:ptszMsgBuffer diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h index 9123f87..016227b 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Packet/ModuleProtocol_Packet.h @@ -29,6 +29,7 @@ public: BOOL ModuleProtocol_Packet_BankQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_BANKINFO* pSt_BankInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); BOOL ModuleProtocol_Packet_LanguageQuery(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); BOOL ModuleProtocol_Packet_Locker(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XNETHANDLE xhToken, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); + BOOL ModuleProtocol_Packet_ZIPCode(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo, int nCode = 0, LPCTSTR lpszMsgBuffer = NULL); public: BOOL ModuleProtocol_Packet_P2PLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL*** pppSt_ListClients, int nListCount); BOOL ModuleProtocol_Packet_P2PWLan(TCHAR* ptszMsgBuffer, int* pInt_MsgLen, list* pStl_ListClients); diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp index 4fc9937..7df766b 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.cpp @@ -443,4 +443,68 @@ BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_CDKey(LPCTSTR lpszMsgBuffer, in _tcscpy(pSt_Authorize->st_AuthUserInfo.tszCustom, st_JsonUserInfo["tszCustom"].asCString()); } return TRUE; +} +/******************************************************************** +函数名称:ModuleProtocol_Parse_ZIPCode +函数功能:解析邮政地址信息 + 参数.一:lpszMsgBuffer + In/Out:In + 类型:常量字符指针 + 可空:N + 意思:输入要解析的缓冲区 + 参数.二:nMsgLen + In/Out:In + 类型:整数型 + 可空:N + 意思:输入缓冲区大小 + 参数.三:pSt_ZIPInfo + In/Out:Out + 类型:数据结构指针 + 可空:N + 意思:输出解析后的信息 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CModuleProtocol_Parse::ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo) +{ + ModuleProtocol_IsErrorOccur = FALSE; + + if ((NULL == lpszMsgBuffer) || (NULL == pSt_ZIPInfo)) + { + ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; + return FALSE; + } + Json::Value st_JsonRoot; + JSONCPP_STRING st_JsonError; + Json::CharReaderBuilder st_ReaderBuilder; + //解析JSON + std::unique_ptr const pSt_JsonReader(st_ReaderBuilder.newCharReader()); + if (!pSt_JsonReader->parse(lpszMsgBuffer, lpszMsgBuffer + nMsgLen, &st_JsonRoot, &st_JsonError)) + { + ModuleProtocol_IsErrorOccur = TRUE; + ModuleProtocol_dwErrorCode = ERROR_XENGINE_APISERVICE_MODULE_PROTOCOL_PARSE_PARAMENT; + return FALSE; + } + + if (!st_JsonRoot["tszProvincer"].isNull()) + { + _tcscpy(pSt_ZIPInfo->tszProvincer, st_JsonRoot["tszProvincer"].asCString()); + } + if (!st_JsonRoot["tszCity"].isNull()) + { + _tcscpy(pSt_ZIPInfo->tszCity, st_JsonRoot["tszCity"].asCString()); + } + if (!st_JsonRoot["tszCounty"].isNull()) + { + _tcscpy(pSt_ZIPInfo->tszCounty, st_JsonRoot["tszCounty"].asCString()); + } + + if (!st_JsonRoot["nZipCode"].isNull()) + { + pSt_ZIPInfo->nZipCode = st_JsonRoot["nZipCode"].asInt(); + } + return TRUE; } \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h index 0ff655e..c27d58c 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h +++ b/XEngine_Source/XEngine_ModuleProtocol/ModuleProtocol_Parse/ModuleProtocol_Parse.h @@ -23,5 +23,6 @@ public: BOOL ModuleProtocol_Parse_Translation(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_LANGUAGEINFO* pSt_LanguageInfo); BOOL ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_P2XPPEER_PROTOCOL* pSt_P2XPPeer); BOOL ModuleProtocol_Parse_CDKey(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_AUTHORIZE_LOCAL* pSt_Authorize); + BOOL ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO* pSt_ZIPInfo); private: }; \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def index 148abd2..f25bb0a 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def +++ b/XEngine_Source/XEngine_ModuleProtocol/XEngine_ModuleProtocol.def @@ -10,6 +10,7 @@ EXPORTS ModuleProtocol_Packet_BankQuery ModuleProtocol_Packet_LanguageQuery ModuleProtocol_Packet_Locker + ModuleProtocol_Packet_ZIPCode ModuleProtocol_Packet_P2PLan ModuleProtocol_Packet_P2PWLan ModuleProtocol_Packet_P2PUser @@ -19,4 +20,5 @@ EXPORTS ModuleProtocol_Parse_Bank ModuleProtocol_Parse_Translation ModuleProtocol_Parse_P2PClient - ModuleProtocol_Parse_CDKey \ No newline at end of file + ModuleProtocol_Parse_CDKey + ModuleProtocol_Parse_ZIPCode \ No newline at end of file diff --git a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp index b12ac5e..2e32fa7 100644 --- a/XEngine_Source/XEngine_ModuleProtocol/pch.cpp +++ b/XEngine_Source/XEngine_ModuleProtocol/pch.cpp @@ -59,6 +59,10 @@ extern "C" BOOL ModuleProtocol_Packet_Locker(TCHAR * ptszMsgBuffer, int* pInt_Ms { return m_ProtocolPacket.ModuleProtocol_Packet_Locker(ptszMsgBuffer, pInt_MsgLen, xhToken, nCode, lpszMsgBuffer); } +extern "C" BOOL ModuleProtocol_Packet_ZIPCode(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_ZIPINFO * pSt_ZIPInfo, int nCode, LPCTSTR lpszMsgBuffer) +{ + return m_ProtocolPacket.ModuleProtocol_Packet_ZIPCode(ptszMsgBuffer, pInt_MsgLen, pSt_ZIPInfo, nCode, lpszMsgBuffer); +} extern "C" BOOL ModuleProtocol_Packet_P2PLan(TCHAR * ptszMsgBuffer, int* pInt_MsgLen, XENGINE_P2XPPEER_PROTOCOL * **pppSt_ListClients, int nListCount) { return m_ProtocolPacket.ModuleProtocol_Packet_P2PLan(ptszMsgBuffer, pInt_MsgLen, pppSt_ListClients, nListCount); @@ -97,4 +101,8 @@ extern "C" BOOL ModuleProtocol_Parse_P2PClient(LPCTSTR lpszMsgBuffer, int nMsgLe extern "C" BOOL ModuleProtocol_Parse_CDKey(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_AUTHORIZE_LOCAL * pSt_Authorize) { return m_ProtocolParse.ModuleProtocol_Parse_CDKey(lpszMsgBuffer, nMsgLen, pSt_Authorize); +} +extern "C" BOOL ModuleProtocol_Parse_ZIPCode(LPCTSTR lpszMsgBuffer, int nMsgLen, XENGINE_ZIPINFO * pSt_ZIPInfo) +{ + return m_ProtocolParse.ModuleProtocol_Parse_ZIPCode(lpszMsgBuffer, nMsgLen, pSt_ZIPInfo); } \ No newline at end of file -- Gitee From 2aee34952b0ead54ed6a70bc2f6c6b829bb0073e Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 11:25:35 +0800 Subject: [PATCH 08/15] update:vsproject --- .../ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj | 3 +++ .../ModulePlugin_Password/ModulePlugin_Password.vcxproj | 3 +++ .../ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj | 3 +++ .../ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj | 3 +++ 4 files changed, 12 insertions(+) diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj index 15e5169..2a566f2 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_BMIndex/ModulePlugin_BMIndex.vcxproj @@ -82,16 +82,19 @@ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_Plugin\ + $(Configuration)\XEngine_Plugin\ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj index 5d98d2a..8e4412a 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Password/ModulePlugin_Password.vcxproj @@ -83,18 +83,21 @@ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_Plugin\ + $(Configuration)\XEngine_Plugin\ true $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ false $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj index f028dfc..07ca3e7 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Timezone/ModulePlugin_Timezone.vcxproj @@ -81,16 +81,19 @@ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_Plugin\ + $(Configuration)\XEngine_Plugin\ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj index 4b854a2..4fc65cf 100644 --- a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Zodiac/ModulePlugin_Zodiac.vcxproj @@ -83,18 +83,21 @@ $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib32);$(LibraryPath) $(SolutionDir)$(Configuration)\XEngine_Plugin\ + $(Configuration)\XEngine_Plugin\ true $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ false $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) $(XEngine_Lib64);$(LibraryPath) $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ -- Gitee From 0bd4e6d664827b94dbb08854946e045d8000421c Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 15:22:45 +0800 Subject: [PATCH 09/15] added:meter convert plugin module --- .../ModulePlugin_Meter/Makefile | 55 ++++ .../ModulePlugin_Meter/ModulePlugin_Meter.def | 8 + .../ModulePlugin_Meter.vcxproj | 193 ++++++++++++++ .../ModulePlugin_Meter.vcxproj.filters | 56 ++++ .../ModulePlugin_Meter.vcxproj.user | 4 + .../ModulePlugin_Meter/PluginMeter_Define.h | 104 ++++++++ .../ModulePlugin_Meter/PluginMeter_Error.h | 16 ++ .../Plugin_Meter/Plugin_Meter.cpp | 249 ++++++++++++++++++ .../Plugin_Meter/Plugin_Meter.h | 29 ++ .../ModulePlugin_Meter/dllmain.cpp | 19 ++ .../ModulePlugin_Meter/framework.h | 5 + .../ModulePlugin_Meter/pch.cpp | 39 +++ .../ModulePlugin_Meter/pch.h | 57 ++++ 13 files changed, 834 insertions(+) create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.def create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj.filters create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj.user create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Define.h create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Error.h create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.cpp create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.h create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/dllmain.cpp create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/framework.h create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.cpp create mode 100644 XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.h diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile new file mode 100644 index 0000000..f62a01d --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Makefile @@ -0,0 +1,55 @@ +CC = g++ -Wall -std=c++17 -fPIC +SHAREFLAG = -shared +SHAREDLL = so +RELEASE = 0 +UNICODE = 0 +INCLUDE = -I ./ -I ../../XEngine_ThirdPart/jsoncpp +LOADBIN = -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L ../../XEngine_ThirdPart/jsoncpp +LIB = -lXEngine_BaseLib -ljsoncpp +LIBEX = -ldl -lpthread +LOADSO = -Wl,-rpath=../,--disable-new-dtags +LIBINCLUDE = Plugin_Meter.o pch.o + +ifeq ($(shell uname),Darwin) + SHAREDLL = dylib + SHAREFLAG = -dynamiclib + LOADSO = +else + SHAREDLL = so + SHAREFLAG = -shared +endif + +ifeq ($(RELEASE),1) +FLAGS = -c -O2 +DEBUG = +else +FLAGS = -c +DEBUG = -g +endif + +ifeq ($(UNICODE),1) +UNICODE = -D _UNICODE +else +UNICODE = +endif + + +all:$(LIBINCLUDE) + $(CC) $(DEBUG) $(LIBINCLUDE) -o libModulePlugin_Meter.$(SHAREDLL) $(SHAREFLAG) -fPIC $(LOADBIN) $(LIB) $(LIBEX) $(LOADSO) + +Plugin_Meter.o:./Plugin_Meter/Plugin_Meter.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./Plugin_Meter/Plugin_Meter.cpp + +pch.o:./pch.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) $(INCLUDE) ./pch.cpp + + +InstallAll:InstallSo +InstallSo:./libModulePlugin_Meter.$(SHAREDLL) + cp ./libModulePlugin_Meter.$(SHAREDLL) ../../../XEngine_Release/XEngine_Plugin/libModulePlugin_Meter.$(SHAREDLL) + +CleanAll:CleanObj CleanMk +CleanObj: + rm *.o +CleanMk: + rm *.$(SHAREDLL) \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.def b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.def new file mode 100644 index 0000000..78dedee --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.def @@ -0,0 +1,8 @@ +LIBRARY + +EXPORTS + PluginCore_GetLastError + + PluginCore_Init + PluginCore_UnInit + PluginCore_Call \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj new file mode 100644 index 0000000..7fb4df7 --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj @@ -0,0 +1,193 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {6f111577-daf8-4294-b516-0077c22d7613} + ModulePluginMeter + 10.0 + libModulePlugin_Meter + + + + DynamicLibrary + true + v143 + MultiByte + + + DynamicLibrary + false + v143 + true + MultiByte + + + DynamicLibrary + true + v143 + MultiByte + + + DynamicLibrary + false + v143 + true + MultiByte + + + + + + + + + + + + + + + + + + + + + $(SolutionDir)$(Configuration)\XEngine_Plugin\ + $(Configuration)\XEngine_Plugin\ + $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) + $(XEngine_Lib32);$(LibraryPath) + + + $(SolutionDir)$(Configuration)\XEngine_Plugin\ + $(Configuration)\XEngine_Plugin\ + $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) + $(XEngine_Lib32);$(LibraryPath) + + + $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ + $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) + $(XEngine_Lib64);$(LibraryPath) + + + $(SolutionDir)$(Platform)\$(Configuration)\XEngine_Plugin\ + $(Platform)\$(Configuration)\XEngine_Plugin\ + $(XEngine_Include);../../XEngine_ThirdPart/jsoncpp;$(IncludePath) + $(XEngine_Lib64);$(LibraryPath) + + + + Level3 + true + WIN32;_DEBUG;MODULEPLUGINMETER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + false + ModulePlugin_Meter.def + + + + + Level3 + true + true + true + WIN32;NDEBUG;MODULEPLUGINMETER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + true + true + false + ModulePlugin_Meter.def + + + + + Level3 + true + _DEBUG;MODULEPLUGINMETER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + false + ModulePlugin_Meter.def + + + + + Level3 + true + true + true + NDEBUG;MODULEPLUGINMETER_EXPORTS;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + true + Use + pch.h + + + Windows + true + true + true + false + ModulePlugin_Meter.def + + + + + + + + + + + + + Create + Create + Create + Create + + + + + + + + + + \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj.filters b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj.filters new file mode 100644 index 0000000..a9c99fc --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + {787df7a3-1a7f-4e06-88a0-34b0a4b6bbb5} + + + {8b14df4b-7a4b-4ec5-b07c-d210aa340660} + + + + + 头文件 + + + 头文件 + + + 头文件\Plugin_Meter + + + 头文件 + + + 头文件 + + + + + 源文件 + + + 源文件 + + + 源文件\Plugin_Meter + + + + + 源文件 + + + \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj.user b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj.user new file mode 100644 index 0000000..88a5509 --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/ModulePlugin_Meter.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Define.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Define.h new file mode 100644 index 0000000..9de2074 --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Define.h @@ -0,0 +1,104 @@ +#pragma once +/******************************************************************** +// Created: 2022/11/01 13:56:53 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter\PluginMeter_Define.h +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter +// File Base: PluginMeter_Define +// File Ext: h +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 计量转换插件 +// History: +*********************************************************************/ +//长度计量 +typedef enum +{ + //美国标准 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_KILOMETRE = 0, //公里 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_METRE = 1, //米 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_DECIMETER = 2, //分米 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_CENTIMEER = 3, //厘米 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_MILLMETER = 4, //毫米 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_MICROMETER = 5, //微米 + //中国标准 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_LI = 10, //里 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_ZHANG = 11, //丈 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_CHI = 12, //尺 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_CUN = 13, //寸 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_FEN = 14, //分 + //英国标准 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_NAUTICALMILE = 20, //海里 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_MILE = 21, //英里 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_YARD = 22, //码 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_INCH = 23, //英寸 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_FUR = 24, //弗隆 + ENUM_APISERVICE_PLUGIN_METER_LENGTH_FOOT = 25 //英尺 +}ENUM_APISERVICE_PLUGIN_METER_LENGTH; +//温度计量 +typedef enum +{ + ENUM_APISERVICE_PLUGIN_METER_TEMPERATURE_C = 0, //摄氏度 + ENUM_APISERVICE_PLUGIN_METER_TEMPERATURE_F = 1, //华氏度 + ENUM_APISERVICE_PLUGIN_METER_TEMPERATURE_K = 2, //开氏度 + ENUM_APISERVICE_PLUGIN_METER_TEMPERATURE_RA = 3, //兰氏度 + ENUM_APISERVICE_PLUGIN_METER_TEMPERATURE_RE = 4 //列氏度 +}ENUM_APISERVICE_PLUGIN_METER_TEMPERATURE; +//功率 +typedef enum +{ + ENUM_APISERVICE_PLUGIN_METER_POWER_W = 0, //瓦 + ENUM_APISERVICE_PLUGIN_METER_POWER_KW = 1, //千瓦 + ENUM_APISERVICE_PLUGIN_METER_POWER_HP = 2, //英制马力 + ENUM_APISERVICE_PLUGIN_METER_POWER_PS = 3, //米制马力 +}ENUM_APISERVICE_PLUGIN_METER_POWER; +//速度 +typedef enum +{ + ENUM_APISERVICE_PLUGIN_METER_SPEED_KNOT = 0, //节 + ENUM_APISERVICE_PLUGIN_METER_POWER_MILE = 1, //里 + ENUM_APISERVICE_PLUGIN_METER_POWER_KILOMETER = 2, //公里 +}ENUM_APISERVICE_PLUGIN_METER_SPEED; +//重量 +//面积 +//体积 +//压力 +//进制 +////////////////////////////////////////////////////////////////////////// +// 导出函数定义 +////////////////////////////////////////////////////////////////////////// +extern "C" DWORD PluginCore_GetLastError(); +/********************************************************************************* +* 导出函数定义 * +*********************************************************************************/ +/******************************************************************** +函数名称:PluginCore_Init +函数功能:初始化插件模块 + 参数.一:lParam + In/Out:In/Out + 类型:无类型指针 + 可空:N + 意思:自定义参数 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL PluginCore_Init(LPVOID lParam = NULL); +/******************************************************************** +函数名称:PluginCore_UnInit +函数功能:卸载插件 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL PluginCore_UnInit(); +/******************************************************************** +函数名称:PluginCore_Call +函数功能:调用插件 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer = NULL, int nMsgLen = 0); \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Error.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Error.h new file mode 100644 index 0000000..7554c79 --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/PluginMeter_Error.h @@ -0,0 +1,16 @@ +#pragma once +/******************************************************************** +// Created: 2022/11/01 13:57:03 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter\PluginMeter_Error.h +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter +// File Base: PluginMeter_Error +// File Ext: h +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 计量转换导出错误 +// History: +*********************************************************************/ +////////////////////////////////////////////////////////////////////////// +// 错误定义 +////////////////////////////////////////////////////////////////////////// +#define ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_METER_PARAMENT 0x12001 //参数错误 \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.cpp new file mode 100644 index 0000000..ad2c8dc --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.cpp @@ -0,0 +1,249 @@ +#include "pch.h" +#include "Plugin_Meter.h" +/******************************************************************** +// Created: 2022/11/01 13:40:13 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter\Plugin_Meter\Plugin_Meter.cpp +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter\Plugin_Meter +// File Base: Plugin_Meter +// File Ext: cpp +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 计量转换器 +// History: +*********************************************************************/ +CPlugin_Meter::CPlugin_Meter() +{ +} +CPlugin_Meter::~CPlugin_Meter() +{ +} +////////////////////////////////////////////////////////////////////////// +// 公有函数 +////////////////////////////////////////////////////////////////////////// +/******************************************************************** +函数名称:PluginCore_Init +函数功能:初始化插件模块 + 参数.一:lParam + In/Out:In/Out + 类型:无类型指针 + 可空:N + 意思:自定义参数 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CPlugin_Meter::PluginCore_Init(LPVOID lParam) +{ + Meter_IsErrorOccur = FALSE; + + return TRUE; +} +/******************************************************************** +函数名称:PluginCore_UnInit +函数功能:卸载插件 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CPlugin_Meter::PluginCore_UnInit() +{ + Meter_IsErrorOccur = FALSE; + + return TRUE; +} +/******************************************************************** +函数名称:PluginCore_Call +函数功能:调用插件 +返回值 + 类型:逻辑型 + 意思:是否成功 +备注: +*********************************************************************/ +BOOL CPlugin_Meter::PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +{ + Meter_IsErrorOccur = FALSE; + + if ((NULL == pInt_HTTPCode) || (NULL == ptszMsgBuffer) || (NULL == pInt_MsgLen)) + { + Meter_IsErrorOccur = TRUE; + Meter_dwErrorCode = ERROR_XENGINE_APISERVICE_PLUGIN_MODULE_METER_PARAMENT; + return FALSE; + } + TCHAR tszKeyName[128]; + TCHAR tszParamType[128]; + TCHAR tszParamValue[128]; + TCHAR tszParamSource[128]; + + Json::Value st_JsonRoot; + Json::Value st_JsonObject; + Json::StreamWriterBuilder st_JsonBuilder; + + memset(tszKeyName, '\0', sizeof(tszKeyName)); + memset(tszParamType, '\0', sizeof(tszParamType)); + memset(tszParamSource, '\0', sizeof(tszParamSource)); + memset(tszParamValue, '\0', sizeof(tszParamValue)); + + //http://192.168.1.8:5501/api?function=meter&type=0&source=0&value=10 + BaseLib_OperatorString_GetKeyValue((*pppHDRList)[1], "=", tszKeyName, tszParamType); + BaseLib_OperatorString_GetKeyValue((*pppHDRList)[2], "=", tszKeyName, tszParamSource); + BaseLib_OperatorString_GetKeyValue((*pppHDRList)[3], "=", tszKeyName, tszParamValue); + + if (0 == _ttoi(tszParamType)) + { + Plugin_Meter_LengthConvert(_ttoi(tszParamSource), _ttoi64(tszParamValue), &st_JsonObject); + } + else if (1 == _ttoi(tszParamType)) + { + Plugin_Meter_TemperatureConvert(_ttoi(tszParamSource), _ttoi64(tszParamValue), &st_JsonObject); + } + else if (2 == _ttoi(tszParamType)) + { + Plugin_Meter_PowerConvert(_ttoi(tszParamSource), _ttoi64(tszParamValue), &st_JsonObject); + } + else if (3 == _ttoi(tszParamType)) + { + Plugin_Meter_SpeedConvert(_ttoi(tszParamSource), _ttoi64(tszParamValue), &st_JsonObject); + } + + st_JsonObject["tszParamType"] = _ttoi(tszParamType); + st_JsonObject["tszParamSource"] = _ttoi(tszParamSource); + st_JsonObject["tszParamValue"] = _ttof(tszParamValue); + + st_JsonRoot["data"] = st_JsonObject; + st_JsonRoot["code"] = 0; + st_JsonRoot["msg"] = "success"; + st_JsonBuilder["emitUTF8"] = true; + + *pInt_HTTPCode = 200; + *pInt_MsgLen = Json::writeString(st_JsonBuilder, st_JsonRoot).length(); + memcpy(ptszMsgBuffer, Json::writeString(st_JsonBuilder, st_JsonRoot).c_str(), *pInt_MsgLen); + return TRUE; +} +////////////////////////////////////////////////////////////////////////// +// 保护函数 +////////////////////////////////////////////////////////////////////////// +BOOL CPlugin_Meter::Plugin_Meter_LengthConvert(int nSource, __int64x nValue, Json::Value *pSt_JsonObject) +{ + Meter_IsErrorOccur = FALSE; + + Json::Value st_JsonObejct; + if (ENUM_APISERVICE_PLUGIN_METER_LENGTH_KILOMETRE == nSource) + { + st_JsonObejct["metre"] = double(nValue * 1000); + st_JsonObejct["decimeter"] = double(nValue * 10000); + st_JsonObejct["centimeter"] = double(nValue * 100000); + st_JsonObejct["millimeter"] = double(nValue * 1000000); + st_JsonObejct["micrometer"] = double(nValue * 1000000000); + + st_JsonObejct["li"] = double(nValue * 2); + st_JsonObejct["zhang"] = double(nValue * 300); + st_JsonObejct["chi"] = double(nValue * 3000); + st_JsonObejct["cun"] = double(nValue * 30000); + st_JsonObejct["fen"] = double(nValue * 300000); + + st_JsonObejct["nauticalmile"] = double(nValue * 0.539956803456); + st_JsonObejct["mile"] = double(nValue * 0.621371); + st_JsonObejct["yard"] = double(nValue * 1093.6133); + st_JsonObejct["inch"] = double(nValue * 39370.079); + st_JsonObejct["fur"] = double(nValue * 4.9709695); + st_JsonObejct["foot"] = double(nValue * 3280.8399); + } + else if (ENUM_APISERVICE_PLUGIN_METER_LENGTH_METRE == nSource) + { + st_JsonObejct["kilometre"] = double(nValue * 0.001); + st_JsonObejct["decimeter"] = double(nValue * 10); + st_JsonObejct["centimeter"] = double(nValue * 100); + st_JsonObejct["millimeter"] = double(nValue * 1000); + st_JsonObejct["micrometer"] = double(nValue * 1000000); + + st_JsonObejct["li"] = double(nValue * 0.002); + st_JsonObejct["zhang"] = double(nValue * 0.3); + st_JsonObejct["chi"] = double(nValue * 3); + st_JsonObejct["cun"] = double(nValue * 30); + st_JsonObejct["fen"] = double(nValue * 300); + + st_JsonObejct["nauticalmile"] = double(nValue * 0.0005399568); + st_JsonObejct["mile"] = double(nValue * 0.00062137119); + st_JsonObejct["yard"] = double(nValue * 1.0936133); + st_JsonObejct["inch"] = double(nValue * 39.370079); + st_JsonObejct["fur"] = double(nValue * 0.0049709695); + st_JsonObejct["foot"] = double(nValue * 3.2808399); + } + else if (ENUM_APISERVICE_PLUGIN_METER_LENGTH_DECIMETER == nSource) + { + st_JsonObejct["kilometre"] = double(nValue * 0.0001); + st_JsonObejct["metre"] = double(nValue * 0.1); + st_JsonObejct["centimeter"] = double(nValue * 10); + st_JsonObejct["millimeter"] = double(nValue * 100); + st_JsonObejct["micrometer"] = double(nValue * 100000); + + st_JsonObejct["li"] = double(nValue * 0.0002); + st_JsonObejct["zhang"] = double(nValue * 0.03); + st_JsonObejct["chi"] = double(nValue * 0.3); + st_JsonObejct["cun"] = double(nValue * 3); + st_JsonObejct["fen"] = double(nValue * 30); + + st_JsonObejct["nauticalmile"] = double(nValue * 0.00005399568); + st_JsonObejct["mile"] = double(nValue * 0.000062137119); + st_JsonObejct["yard"] = double(nValue * 0.10936133); + st_JsonObejct["inch"] = double(nValue * 3.9370079); + st_JsonObejct["fur"] = double(nValue * 0.00049709695); + st_JsonObejct["foot"] = double(nValue * 0.32808399); + } + (*pSt_JsonObject)["Length"] = st_JsonObejct; + return TRUE; +} +BOOL CPlugin_Meter::Plugin_Meter_TemperatureConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) +{ + Meter_IsErrorOccur = FALSE; + + Json::Value st_JsonObejct; + if (ENUM_APISERVICE_PLUGIN_METER_TEMPERATURE_C == nSource) + { + st_JsonObejct["fahrenheit"] = double(nValue * 33.8); + st_JsonObejct["kelvin"] = double(nValue * 274.15); + st_JsonObejct["rankine"] = double(nValue * 493.46999999999997); + st_JsonObejct["degree"] = double(nValue * 0.8); + } + (*pSt_JsonObject)["Temperature"] = st_JsonObejct; + return TRUE; +} +BOOL CPlugin_Meter::Plugin_Meter_PowerConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) +{ + Meter_IsErrorOccur = FALSE; + + Json::Value st_JsonObejct; + if (ENUM_APISERVICE_PLUGIN_METER_POWER_W == nSource) + { + st_JsonObejct["kw"] = double(nValue * 0.001); + st_JsonObejct["hp"] = double(nValue * 0.001341); + st_JsonObejct["ps"] = double(nValue * 0.00136); + } + (*pSt_JsonObject)["Power"] = st_JsonObejct; + return TRUE; +} +BOOL CPlugin_Meter::Plugin_Meter_SpeedConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject) +{ + Meter_IsErrorOccur = FALSE; + + Json::Value st_JsonObejct; + if (ENUM_APISERVICE_PLUGIN_METER_SPEED_KNOT == nSource) + { + st_JsonObejct["mile"] = double(nValue * 1.1488500000000001); + st_JsonObejct["kilometer"] = double(nValue * 1.85); + } + else if (ENUM_APISERVICE_PLUGIN_METER_POWER_MILE == nSource) + { + st_JsonObejct["knot"] = double(nValue * 00.8702702702702703); + st_JsonObejct["kilometer"] = double(nValue * 1.61); + } + else + { + st_JsonObejct["knot"] = double(nValue * 00.5405405405405405); + st_JsonObejct["kilometer"] = double(nValue * 00.621); + } + (*pSt_JsonObject)["Power"] = st_JsonObejct; + return TRUE; +} \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.h new file mode 100644 index 0000000..f269540 --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/Plugin_Meter/Plugin_Meter.h @@ -0,0 +1,29 @@ +#pragma once +/******************************************************************** +// Created: 2022/11/01 13:39:40 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter\Plugin_Meter\Plugin_Meter.h +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter\Plugin_Meter +// File Base: Plugin_Meter +// File Ext: h +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 计量转换器 +// History: +*********************************************************************/ + +class CPlugin_Meter +{ +public: + CPlugin_Meter(); + ~CPlugin_Meter(); +public: + BOOL PluginCore_Init(LPVOID lParam); + BOOL PluginCore_UnInit(); + BOOL PluginCore_Call(TCHAR*** pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR* ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen); +protected: + BOOL Plugin_Meter_LengthConvert(int nSource, __int64x nValue, Json::Value *pSt_JsonObject); + BOOL Plugin_Meter_TemperatureConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); + BOOL Plugin_Meter_PowerConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); + BOOL Plugin_Meter_SpeedConvert(int nSource, __int64x nValue, Json::Value* pSt_JsonObject); +private: +}; diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/dllmain.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/dllmain.cpp new file mode 100644 index 0000000..daed8c8 --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/dllmain.cpp @@ -0,0 +1,19 @@ +// dllmain.cpp : 定义 DLL 应用程序的入口点。 +#include "pch.h" + +BOOL APIENTRY DllMain( HMODULE hModule, + DWORD ul_reason_for_call, + LPVOID lpReserved + ) +{ + switch (ul_reason_for_call) + { + case DLL_PROCESS_ATTACH: + case DLL_THREAD_ATTACH: + case DLL_THREAD_DETACH: + case DLL_PROCESS_DETACH: + break; + } + return TRUE; +} + diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/framework.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/framework.h new file mode 100644 index 0000000..80cbbc9 --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/framework.h @@ -0,0 +1,5 @@ +#pragma once + +#define WIN32_LEAN_AND_MEAN // 从 Windows 头文件中排除极少使用的内容 +// Windows 头文件 +#include diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.cpp b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.cpp new file mode 100644 index 0000000..fd0ce7c --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.cpp @@ -0,0 +1,39 @@ +#include "pch.h" +#include "Plugin_Meter/Plugin_Meter.h" +/******************************************************************** +// Created: 2022/11/01 13:56:17 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter\pch.cpp +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter +// File Base: pch +// File Ext: cpp +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 导出实现 +// History: +*********************************************************************/ +BOOL Meter_IsErrorOccur = FALSE; +DWORD Meter_dwErrorCode = 0; +////////////////////////////////////////////////////////////////////////// +CPlugin_Meter m_PluginMeter; +////////////////////////////////////////////////////////////////////////// +// 导出函数定义 +////////////////////////////////////////////////////////////////////////// +extern "C" DWORD PluginCore_GetLastError() +{ + return Meter_dwErrorCode; +} +/********************************************************************************* +* 导出函数定义 * +*********************************************************************************/ +extern "C" BOOL PluginCore_Init(LPVOID lParam) +{ + return m_PluginMeter.PluginCore_Init(lParam); +} +extern "C" BOOL PluginCore_UnInit() +{ + return m_PluginMeter.PluginCore_UnInit(); +} +extern "C" BOOL PluginCore_Call(TCHAR * **pppHDRList, int nListCount, int* pInt_HTTPCode, TCHAR * ptszMsgBuffer, int* pInt_MsgLen, LPCTSTR lpszMsgBuffer, int nMsgLen) +{ + return m_PluginMeter.PluginCore_Call(pppHDRList, nListCount, pInt_HTTPCode, ptszMsgBuffer, pInt_MsgLen, lpszMsgBuffer, nMsgLen); +} \ No newline at end of file diff --git a/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.h b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.h new file mode 100644 index 0000000..abb8e8b --- /dev/null +++ b/XEngine_Source/XEngine_PluginModule/ModulePlugin_Meter/pch.h @@ -0,0 +1,57 @@ +// pch.h: 这是预编译标头文件。 +// 下方列出的文件仅编译一次,提高了将来生成的生成性能。 +// 这还将影响 IntelliSense 性能,包括代码完成和许多代码浏览功能。 +// 但是,如果此处列出的文件中的任何一个在生成之间有更新,它们全部都将被重新编译。 +// 请勿在此处添加要频繁更新的文件,这将使得性能优势无效。 + +#ifndef PCH_H +#define PCH_H + +#ifdef _MSC_BUILD +// 添加要在此处预编译的标头 +#include "framework.h" +#include +#endif // _MSC_BUILD +#endif //PCH_H +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "PluginMeter_Define.h" +#include "PluginMeter_Error.h" +/******************************************************************** +// Created: 2022/11/01 13:52:32 +// File Name: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter\pch.h +// File Path: D:\XEngine_APIService\XEngine_Source\XEngine_PluginModule\ModulePlugin_Meter +// File Base: pch +// File Ext: h +// Project: XEngine(网络通信引擎) +// Author: qyt +// Purpose: 公用头文件 +// History: +*********************************************************************/ +extern BOOL Meter_IsErrorOccur; +extern DWORD Meter_dwErrorCode; + + +#ifdef _MSC_BUILD +#pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") +#ifdef _DEBUG +#ifdef _WIN64 +#pragma comment(lib,"../../x64/Debug/jsoncpp") +#else +#pragma comment(lib,"../../Debug/jsoncpp") +#endif +#else +#ifdef _WIN64 +#pragma comment(lib,"../../x64/Release/jsoncpp") +#else +#pragma comment(lib,"../../Release/jsoncpp") +#endif +#endif +#endif \ No newline at end of file -- Gitee From 5af32c603574e9a0808aa9c89d1f5fb82b74f094 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 15:23:10 +0800 Subject: [PATCH 10/15] added:post process code for app --- XEngine_Source/Makefile | 5 ++- XEngine_Source/XEngine.sln | 19 +++++++--- .../ModuleDatabase_ZIPCode.cpp | 1 - .../XEngine_HttpApp/Makefile | 4 ++- .../XEngine_HttpApp/XEngine_HTTPTask.cpp | 18 ++++++++++ .../XEngine_HTTPTask/HTTPTask_PostCode.cpp | 35 +++++++++++++++++++ .../XEngine_HTTPTask/HTTPTask_PostCode.h | 3 ++ .../XEngine_HttpApp/XEngine_Hdr.h | 1 + .../XEngine_HttpApp/XEngine_HttpApp.cpp | 9 +++++ XEngine_Source/XEngine_UserProtocol.h | 13 +++++++ 10 files changed, 101 insertions(+), 7 deletions(-) create mode 100644 XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.cpp create mode 100644 XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.h diff --git a/XEngine_Source/Makefile b/XEngine_Source/Makefile index c4c2e3d..3e152f0 100644 --- a/XEngine_Source/Makefile +++ b/XEngine_Source/Makefile @@ -16,13 +16,14 @@ PLUGIN_MODULE_ZODIAC = ./XEngine_PluginModule/ModulePlugin_Zodiac PLUGIN_MODULE_PASSWORD = ./XEngine_PluginModule/ModulePlugin_Password PLUGIN_MODULE_TIMEZONE = ./XEngine_PluginModule/ModulePlugin_Timezone PLUGIN_MODULE_BMINDEX = ./XEngine_PluginModule/ModulePlugin_BMIndex +PLUGIN_MODULE_METER = ./XEngine_PluginModule/ModulePlugin_Meter APP_CENTER_PATH = ./XEngine_ServiceApp/XEngine_CenterApp APP_HTTP_PATH = ./XEngine_ServiceApp/XEngine_HttpApp XENGINE_MODULES = libjsoncpp.so \ libXEngine_ModuleConfigure.so libXEngine_ModuleDatabase.so libXEngine_ModuleProtocol.so libXEngine_ModuleHelp.so libXEngine_ModulePlugin.so \ - libModulePlugin_Zodiac.so libModulePlugin_Password.so libModulePlugin_Timezone.so libModulePlugin_BMIndex.so\ + libModulePlugin_Zodiac.so libModulePlugin_Password.so libModulePlugin_Timezone.so libModulePlugin_BMIndex.so libModulePlugin_Meter.so \ XEngine_HttpApp.exe .PHONY:MakeAll @@ -50,6 +51,8 @@ libModulePlugin_Timezone.so: make -C $(PLUGIN_MODULE_TIMEZONE) $(FLAGS) libModulePlugin_BMIndex.so: make -C $(PLUGIN_MODULE_BMINDEX) $(FLAGS) +libModulePlugin_Meter.so: + make -C $(PLUGIN_MODULE_METER) $(FLAGS) XEngine_HttpApp.exe: make -C $(APP_HTTP_PATH) $(FLAGS) diff --git a/XEngine_Source/XEngine.sln b/XEngine_Source/XEngine.sln index 6b98d27..d0bc8e9 100644 --- a/XEngine_Source/XEngine.sln +++ b/XEngine_Source/XEngine.sln @@ -28,13 +28,15 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "XEngine_ModulePlugin", "XEn EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XEngine_PluginModule", "XEngine_PluginModule", "{D0473C03-9464-4C44-818A-AE212680CD05}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ModulePlugin_Zodiac", "XEngine_PluginModule\ModulePlugin_Zodiac\ModulePlugin_Zodiac.vcxproj", "{32BB166A-3D3D-45EF-8BED-2E0471274159}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Zodiac", "XEngine_PluginModule\ModulePlugin_Zodiac\ModulePlugin_Zodiac.vcxproj", "{32BB166A-3D3D-45EF-8BED-2E0471274159}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ModulePlugin_Password", "XEngine_PluginModule\ModulePlugin_Password\ModulePlugin_Password.vcxproj", "{201B6D13-82A7-49E9-9736-D6B3BFE05B30}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Password", "XEngine_PluginModule\ModulePlugin_Password\ModulePlugin_Password.vcxproj", "{201B6D13-82A7-49E9-9736-D6B3BFE05B30}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ModulePlugin_Timezone", "XEngine_PluginModule\ModulePlugin_Timezone\ModulePlugin_Timezone.vcxproj", "{37B8E91F-EC52-41F0-B21D-441D4270C05F}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Timezone", "XEngine_PluginModule\ModulePlugin_Timezone\ModulePlugin_Timezone.vcxproj", "{37B8E91F-EC52-41F0-B21D-441D4270C05F}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ModulePlugin_BMIndex", "XEngine_PluginModule\ModulePlugin_BMIndex\ModulePlugin_BMIndex.vcxproj", "{BBC4B2B4-1143-45DF-8890-47CE26A61D0E}" +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_BMIndex", "XEngine_PluginModule\ModulePlugin_BMIndex\ModulePlugin_BMIndex.vcxproj", "{BBC4B2B4-1143-45DF-8890-47CE26A61D0E}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libModulePlugin_Meter", "XEngine_PluginModule\ModulePlugin_Meter\ModulePlugin_Meter.vcxproj", "{6F111577-DAF8-4294-B516-0077C22D7613}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -132,6 +134,14 @@ Global {BBC4B2B4-1143-45DF-8890-47CE26A61D0E}.Release|x64.Build.0 = Release|x64 {BBC4B2B4-1143-45DF-8890-47CE26A61D0E}.Release|x86.ActiveCfg = Release|Win32 {BBC4B2B4-1143-45DF-8890-47CE26A61D0E}.Release|x86.Build.0 = Release|Win32 + {6F111577-DAF8-4294-B516-0077C22D7613}.Debug|x64.ActiveCfg = Debug|x64 + {6F111577-DAF8-4294-B516-0077C22D7613}.Debug|x64.Build.0 = Debug|x64 + {6F111577-DAF8-4294-B516-0077C22D7613}.Debug|x86.ActiveCfg = Debug|Win32 + {6F111577-DAF8-4294-B516-0077C22D7613}.Debug|x86.Build.0 = Debug|Win32 + {6F111577-DAF8-4294-B516-0077C22D7613}.Release|x64.ActiveCfg = Release|x64 + {6F111577-DAF8-4294-B516-0077C22D7613}.Release|x64.Build.0 = Release|x64 + {6F111577-DAF8-4294-B516-0077C22D7613}.Release|x86.ActiveCfg = Release|Win32 + {6F111577-DAF8-4294-B516-0077C22D7613}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -143,6 +153,7 @@ Global {201B6D13-82A7-49E9-9736-D6B3BFE05B30} = {D0473C03-9464-4C44-818A-AE212680CD05} {37B8E91F-EC52-41F0-B21D-441D4270C05F} = {D0473C03-9464-4C44-818A-AE212680CD05} {BBC4B2B4-1143-45DF-8890-47CE26A61D0E} = {D0473C03-9464-4C44-818A-AE212680CD05} + {6F111577-DAF8-4294-B516-0077C22D7613} = {D0473C03-9464-4C44-818A-AE212680CD05} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {9B202F91-A601-429E-BB0F-880DDEE096FE} diff --git a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp index 8f7b320..676c0cb 100644 --- a/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp +++ b/XEngine_Source/XEngine_ModuleDatabase/ModuleDatabase_ZIPCode/ModuleDatabase_ZIPCode.cpp @@ -115,7 +115,6 @@ BOOL CModuleDatabase_ZIPCode::ModuleDatabase_ZIPCode_QueryZIPCode(XENGINE_ZIPINF } else if (2 == pSt_ZIPInfo->nLevel) { - int nParentID = 0; _tcscpy(pSt_ZIPInfo->tszCity, pptszResult[nFliedValue + 2]); ModuleDatabase_ZIPCode_QueryParentByID(_ttoi(pptszResult[nFliedValue + 1]), pSt_ZIPInfo->tszProvincer); } diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile index f04406c..fde611a 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/Makefile @@ -10,7 +10,7 @@ LIB = -lXEngine_BaseLib -lXEngine_Algorithm -lXEngine_Core -lXEngine_ManagePool LIBEX = -ldl -lpthread LOADSO = -Wl,-rpath=./,--disable-new-dtags LIBINCLUDE = XEngine_Configure.o XEngine_Network.o XEngine_HTTPTask.o XEngine_PluginTask.o XEngine_HttpApp.o \ - HTTPTask_IPInfo.o HTTPTask_IDCard.o HTTPTask_Phone.o HTTPTask_Bank.o HTTPTask_Language.o HTTPTask_Translation.o HTTPTask_P2PClient.o HTTPTask_OPtions.o HTTPTask_CDKey.o HTTPTask_Locker.o + HTTPTask_IPInfo.o HTTPTask_IDCard.o HTTPTask_Phone.o HTTPTask_Bank.o HTTPTask_Language.o HTTPTask_Translation.o HTTPTask_P2PClient.o HTTPTask_OPtions.o HTTPTask_CDKey.o HTTPTask_Locker.o HTTPTask_PostCode.o ifeq ($(shell uname),Darwin) LOADSO = @@ -62,6 +62,8 @@ HTTPTask_CDKey.o:./XEngine_HTTPTask/HTTPTask_CDKey.cpp $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_CDKey.cpp HTTPTask_Locker.o:./XEngine_HTTPTask/HTTPTask_Locker.cpp $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_Locker.cpp +HTTPTask_PostCode.o:./XEngine_HTTPTask/HTTPTask_PostCode.cpp + $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HTTPTask/HTTPTask_PostCode.cpp XEngine_HttpApp.o:./XEngine_HttpApp.cpp $(CC) $(DEBUG) $(FLAGS) $(UNICODE) ./XEngine_HttpApp.cpp diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp index 3a19dc2..083f28d 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp @@ -101,6 +101,7 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR //post LPCTSTR lpszParamP2PClient = _T("p2p"); LPCTSTR lpszParamCDKey = _T("cdkey"); + LPCTSTR lpszParamZIPCode = _T("zipcode"); memset(tszKey, '\0', sizeof(tszKey)); memset(tszValue, '\0', sizeof(tszValue)); @@ -178,6 +179,23 @@ BOOL XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCTSTR XEngine_HTTPTask_CDKey(lpszClientAddr, lpszRVBuffer, nRVLen, nOPType); } } + else if (0 == _tcsnicmp(lpszParamZIPCode, tszValue, _tcslen(lpszParamZIPCode))) + { + //邮政信息:http://app.xyry.org:5501/api?function=zipcode¶ms1=0 + memset(tszKey, '\0', sizeof(tszKey)); + memset(tszValue, '\0', sizeof(tszValue)); + BaseLib_OperatorString_GetKeyValue(pptszList[1], "=", tszKey, tszValue); + if (0 != _tcsnicmp(lpszParamName, tszKey, _tcslen(lpszParamName))) + { + st_HDRParam.nHttpCode = 404; + RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nMsgLen, &st_HDRParam); + XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nMsgLen); + BaseLib_OperatorMemory_Free((XPPPMEM)&pptszList, nListCount); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,发送的URL请求参数不正确:%s"), lpszClientAddr, pSt_HTTPParam->tszHttpUri); + return FALSE; + } + XEngine_HTTPTask_PostCode(lpszClientAddr, lpszRVBuffer, nRVLen, _ttoi(tszValue)); + } } else if (0 == _tcsnicmp(lpszMethodGet, pSt_HTTPParam->tszHttpMethod, _tcslen(lpszMethodGet))) { diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.cpp new file mode 100644 index 0000000..a83e850 --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.cpp @@ -0,0 +1,35 @@ +#include "../XEngine_Hdr.h" + +BOOL XEngine_HTTPTask_PostCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType) +{ + int nSDLen = 4096; + int nRVLen = 4096; + TCHAR tszSDBuffer[4096]; + TCHAR tszRVBuffer[4096]; + XENGINE_ZIPINFO st_ZIPInfo; + RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数 + + memset(tszSDBuffer, '\0', sizeof(tszSDBuffer)); + memset(tszRVBuffer, '\0', sizeof(tszRVBuffer)); + memset(&st_ZIPInfo, '\0', sizeof(XENGINE_ZIPINFO)); + memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM)); + + st_HDRParam.nHttpCode = 200; //HTTP CODE码 + st_HDRParam.bIsClose = TRUE; //收到回复后就关闭 + + ModuleProtocol_Parse_ZIPCode(lpszMsgBuffer, nMsgLen, &st_ZIPInfo); + if (0 == nType) + { + ModuleDatabase_ZIPCode_QueryZIPCode(&st_ZIPInfo); + } + else + { + ModuleDatabase_ZIPCode_QueryName(&st_ZIPInfo); + } + + ModuleProtocol_Packet_ZIPCode(tszRVBuffer, &nRVLen, &st_ZIPInfo); + RfcComponents_HttpServer_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, tszRVBuffer, nRVLen); + XEngine_Network_Send(lpszClientAddr, tszSDBuffer, nSDLen); + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("HTTP客户端:%s,请求查询邮政编码地址信息查询成功,查询邮编;%d,查询地址:%s"), lpszClientAddr, st_ZIPInfo.nZipCode, st_ZIPInfo.tszCounty); + return TRUE; +} \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.h new file mode 100644 index 0000000..fb06c83 --- /dev/null +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask/HTTPTask_PostCode.h @@ -0,0 +1,3 @@ +#pragma once + +BOOL XEngine_HTTPTask_PostCode(LPCTSTR lpszClientAddr, LPCTSTR lpszMsgBuffer, int nMsgLen, int nType); \ No newline at end of file diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h index 25464ef..76acead 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Hdr.h @@ -68,6 +68,7 @@ using namespace std; #include "XEngine_HTTPTask/HTTPTask_OPtions.h" #include "XEngine_HTTPTask/HTTPTask_P2PClient.h" #include "XEngine_HTTPTask/HTTPTask_CDKey.h" +#include "XEngine_HTTPTask/HTTPTask_PostCode.h" /******************************************************************** // Created: 2022/01/20 14:42:06 // File Name: D:\XEngine_ServiceApp\XEngine_Source\XEngine_ServiceApp\XEngine_HttpApp\XEngine_Hdr.h diff --git a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp index afa7c45..b0007f2 100644 --- a/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp +++ b/XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HttpApp.cpp @@ -39,6 +39,7 @@ void ServiceApp_Stop(int signo) ModuleDatabase_IDCard_Destory(); ModuleDatabase_Phone_Destory(); ModuleDatabase_Bank_Destory(); + ModuleDatabase_ZIPCode_Destory(); //销毁其他 ModulePlugin_Core_Destroy(); ModuleHelp_P2PClient_Destory(); @@ -174,6 +175,13 @@ int main(int argc, char** argv) goto XENGINE_SERVICEAPP_EXIT; } XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化银行卡数据库成功,地址:%s"), st_ServiceConfig.st_XApi.tszBankData); + + if (!ModuleDatabase_ZIPCode_Init(st_ServiceConfig.st_XApi.tszZIPCodeData)) + { + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _T("启动服务中,初始化行政邮编信息数据库失败,错误:%lX"), ModuleDB_GetLastError()); + goto XENGINE_SERVICEAPP_EXIT; + } + XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _T("启动服务中,初始化行政邮编信息数据库成功,地址:%s"), st_ServiceConfig.st_XApi.tszZIPCodeData); //启动HTTP服务相关代码 if (st_ServiceConfig.nHttpPort > 0) { @@ -293,6 +301,7 @@ XENGINE_SERVICEAPP_EXIT: ModuleDatabase_IDCard_Destory(); ModuleDatabase_Phone_Destory(); ModuleDatabase_Bank_Destory(); + ModuleDatabase_ZIPCode_Destory(); //销毁其他 ModulePlugin_Core_Destroy(); ModuleHelp_P2PClient_Destory(); diff --git a/XEngine_Source/XEngine_UserProtocol.h b/XEngine_Source/XEngine_UserProtocol.h index e0084b6..a114337 100644 --- a/XEngine_Source/XEngine_UserProtocol.h +++ b/XEngine_Source/XEngine_UserProtocol.h @@ -182,4 +182,17 @@ typedef struct tag_XEngine_P2XPIO_Protocol int nDestPort; //要连接的端口 BOOL bIsTcp; //连接类型TCP,否则为UDP }XENGINE_P2XPIO_PROTOCOL, * LPXENGINE_P2XPIO_PROTOCOL; +//邮编信息 +typedef struct +{ + TCHAR tszProvincer[64]; //省/自治区/直辖市 + TCHAR tszCity[64]; //市/区 + TCHAR tszCounty[64]; //县 + TCHAR tszPinYin[64]; //拼音 + double dlLng; //经度 + double dlLat; //纬度 + int nZipCode; //邮编 + int nAreaCode; //区号 + int nLevel; //行政级别 +}XENGINE_ZIPINFO; #pragma pack(pop) \ No newline at end of file -- Gitee From 9908e8fc9b4d852e35c3a53b2e7b1aafa9114350 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 15:33:06 +0800 Subject: [PATCH 11/15] fixed:build error --- .../APPClient_BankExample/APPClient_BankExample.cpp | 2 +- .../APPClient_CDKeyExample.cpp | 4 ++-- .../APPClient_IDExample/APPClient_IDExample.cpp | 2 +- .../APPClient_IPExample/APPClient_IPExample.cpp | 2 +- .../APPClient_LanguageExample.cpp | 2 +- .../APPClient_LockExample/APPClient_LockExample.cpp | 12 ++++++------ .../APPClient_P2PExample/APPClient_P2PExample.cpp | 8 ++++---- .../APPClient_PhoneExample.cpp | 2 +- .../APPClient_PluginExample.cpp | 8 ++++---- .../APPClient_TranslationExample.cpp | 2 +- 10 files changed, 22 insertions(+), 22 deletions(-) diff --git a/XEngine_APPClient/APPClient_BankExample/APPClient_BankExample.cpp b/XEngine_APPClient/APPClient_BankExample/APPClient_BankExample.cpp index 65aa468..c9295c6 100644 --- a/XEngine_APPClient/APPClient_BankExample/APPClient_BankExample.cpp +++ b/XEngine_APPClient/APPClient_BankExample/APPClient_BankExample.cpp @@ -31,7 +31,7 @@ int main() TCHAR* ptszMsgBuffer = NULL; LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=bank¶ms1=6214111100184841¶ms2=0"); - if (!APIHelp_HttpRequest_Get(lpszUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; diff --git a/XEngine_APPClient/APPClient_CDKeyExample/APPClient_CDKeyExample.cpp b/XEngine_APPClient/APPClient_CDKeyExample/APPClient_CDKeyExample.cpp index 7dc01a6..93bce57 100644 --- a/XEngine_APPClient/APPClient_CDKeyExample/APPClient_CDKeyExample.cpp +++ b/XEngine_APPClient/APPClient_CDKeyExample/APPClient_CDKeyExample.cpp @@ -63,7 +63,7 @@ int main() TCHAR* ptszCreateBuffer = NULL; TCHAR* ptszAuthBuffer = NULL; - if (!APIHelp_HttpRequest_Post(lpszCreateUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszCreateBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("POST"), lpszCreateUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszCreateBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -77,7 +77,7 @@ int main() BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszCreateBuffer); LPCTSTR lpszAuthUrl = _T("http://127.0.0.1:5501/api?function=cdkey¶ms1=1¶ms2=123123"); - if (!APIHelp_HttpRequest_Post(lpszAuthUrl, tszMsgBuffer, &nCode, &ptszAuthBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("POST"), lpszAuthUrl, tszMsgBuffer, &nCode, &ptszAuthBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; diff --git a/XEngine_APPClient/APPClient_IDExample/APPClient_IDExample.cpp b/XEngine_APPClient/APPClient_IDExample/APPClient_IDExample.cpp index 97b52a0..9781c51 100644 --- a/XEngine_APPClient/APPClient_IDExample/APPClient_IDExample.cpp +++ b/XEngine_APPClient/APPClient_IDExample/APPClient_IDExample.cpp @@ -31,7 +31,7 @@ int main() TCHAR* ptszMsgBuffer = NULL; LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=id¶ms1=511025191101018792¶ms2=0"); - if (!APIHelp_HttpRequest_Get(lpszUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; diff --git a/XEngine_APPClient/APPClient_IPExample/APPClient_IPExample.cpp b/XEngine_APPClient/APPClient_IPExample/APPClient_IPExample.cpp index 805dbf3..f330dfc 100644 --- a/XEngine_APPClient/APPClient_IPExample/APPClient_IPExample.cpp +++ b/XEngine_APPClient/APPClient_IPExample/APPClient_IPExample.cpp @@ -31,7 +31,7 @@ int main() TCHAR* ptszMsgBuffer = NULL; LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=ip¶ms1=1.29.164.255¶ms2=0"); - if (!APIHelp_HttpRequest_Get(lpszUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; diff --git a/XEngine_APPClient/APPClient_LanguageExample/APPClient_LanguageExample.cpp b/XEngine_APPClient/APPClient_LanguageExample/APPClient_LanguageExample.cpp index 60aa10f..7db9865 100644 --- a/XEngine_APPClient/APPClient_LanguageExample/APPClient_LanguageExample.cpp +++ b/XEngine_APPClient/APPClient_LanguageExample/APPClient_LanguageExample.cpp @@ -31,7 +31,7 @@ int main() TCHAR* ptszMsgBuffer = NULL; LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=language¶ms1=简体¶ms2=0¶m3=1"); - if (!APIHelp_HttpRequest_Get(lpszUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; diff --git a/XEngine_APPClient/APPClient_LockExample/APPClient_LockExample.cpp b/XEngine_APPClient/APPClient_LockExample/APPClient_LockExample.cpp index 77418a1..67d8adb 100644 --- a/XEngine_APPClient/APPClient_LockExample/APPClient_LockExample.cpp +++ b/XEngine_APPClient/APPClient_LockExample/APPClient_LockExample.cpp @@ -31,7 +31,7 @@ int main() LPCTSTR lpszOPenUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms1=1"); //自己创建打开 TCHAR* ptszBuffer = NULL; - if (!APIHelp_HttpRequest_Get(lpszOPenUrl, &ptszBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszOPenUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -40,7 +40,7 @@ int main() BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //打开读锁 LPCTSTR lpszReadUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=3"); - if (!APIHelp_HttpRequest_Get(lpszReadUrl, &ptszBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszReadUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -49,7 +49,7 @@ int main() BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //打开写锁 LPCTSTR lpszWriteUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=5"); - if (!APIHelp_HttpRequest_Get(lpszWriteUrl, &ptszBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszWriteUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -58,7 +58,7 @@ int main() BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //释放读锁 LPCTSTR lpszUNReadUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=4"); - if (!APIHelp_HttpRequest_Get(lpszUNReadUrl, &ptszBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszUNReadUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -66,7 +66,7 @@ int main() printf("接受到数据,大小:%d,内容:\n%s\n", nLen, ptszBuffer); BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //打开解锁 - if (!APIHelp_HttpRequest_Get(lpszWriteUrl, &ptszBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszWriteUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -75,7 +75,7 @@ int main() BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszBuffer); //关闭 LPCTSTR lpszCloseUrl = _T("http://127.0.0.1:5501/api?function=lock¶ms1=1000106561¶ms2=2"); - if (!APIHelp_HttpRequest_Get(lpszCloseUrl, &ptszBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszCloseUrl, NULL, NULL, &ptszBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; diff --git a/XEngine_APPClient/APPClient_P2PExample/APPClient_P2PExample.cpp b/XEngine_APPClient/APPClient_P2PExample/APPClient_P2PExample.cpp index a086ddc..64fd70c 100644 --- a/XEngine_APPClient/APPClient_P2PExample/APPClient_P2PExample.cpp +++ b/XEngine_APPClient/APPClient_P2PExample/APPClient_P2PExample.cpp @@ -67,7 +67,7 @@ int APPClient_P2XPLogin() int nMsgLen = 0; int nHTTPCode = 0; TCHAR* ptszMsgBuffer = NULL; - if (!APIHelp_HttpRequest_Post(lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) + if (!APIHelp_HttpRequest_Custom(_T("POST"), lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) { return -1; } @@ -88,7 +88,7 @@ int APPClient_P2XPList() int nMsgLen = 0; int nHTTPCode = 0; TCHAR* ptszMsgBuffer = NULL; - if (!APIHelp_HttpRequest_Post(lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) + if (!APIHelp_HttpRequest_Custom(_T("POST"), lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) { return -1; } @@ -109,7 +109,7 @@ int APPClient_P2XPGetUser() int nMsgLen = 0; int nHTTPCode = 0; TCHAR* ptszMsgBuffer = NULL; - if (!APIHelp_HttpRequest_Post(lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) + if (!APIHelp_HttpRequest_Custom(_T("POST"), lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) { return -1; } @@ -130,7 +130,7 @@ int APPClient_P2XPConnect() int nMsgLen = 0; int nHTTPCode = 0; TCHAR* ptszMsgBuffer = NULL; - if (!APIHelp_HttpRequest_Post(lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) + if (!APIHelp_HttpRequest_Custom(_T("POST"), lpszAddr, st_JsonRoot.toStyledString().c_str(), &nHTTPCode, &ptszMsgBuffer, &nMsgLen)) { return -1; } diff --git a/XEngine_APPClient/APPClient_PhoneExample/APPClient_PhoneExample.cpp b/XEngine_APPClient/APPClient_PhoneExample/APPClient_PhoneExample.cpp index 3331387..7ff3d57 100644 --- a/XEngine_APPClient/APPClient_PhoneExample/APPClient_PhoneExample.cpp +++ b/XEngine_APPClient/APPClient_PhoneExample/APPClient_PhoneExample.cpp @@ -31,7 +31,7 @@ int main() TCHAR* ptszMsgBuffer = NULL; LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=phone¶ms1=13699438888¶ms2=0"); - if (!APIHelp_HttpRequest_Get(lpszUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; diff --git a/XEngine_APPClient/APPClient_PluginExample/APPClient_PluginExample.cpp b/XEngine_APPClient/APPClient_PluginExample/APPClient_PluginExample.cpp index f875237..d8553c6 100644 --- a/XEngine_APPClient/APPClient_PluginExample/APPClient_PluginExample.cpp +++ b/XEngine_APPClient/APPClient_PluginExample/APPClient_PluginExample.cpp @@ -30,7 +30,7 @@ int main() int nLen = 0; TCHAR* ptszMsgBuffer = NULL; LPCTSTR lpszPassUrl = _T("http://127.0.0.1:5501/api?function=pass¶ms1=1¶ms2=4"); - if (!APIHelp_HttpRequest_Get(lpszPassUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszPassUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -39,7 +39,7 @@ int main() BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); LPCTSTR lpszZodiacUrl = _T("http://127.0.0.1:5501/api?function=zodiac¶ms1=19880121"); - if (!APIHelp_HttpRequest_Get(lpszZodiacUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszZodiacUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -48,7 +48,7 @@ int main() BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); LPCTSTR lpszTimeUrl = _T("http://127.0.0.1:5501/api?function=timezone¶ms1=1¶ms2=1-20"); - if (!APIHelp_HttpRequest_Get(lpszTimeUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszTimeUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; @@ -57,7 +57,7 @@ int main() BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); LPCTSTR lpszBmiUrl = _T("http://127.0.0.1:5501/api?function=bmindex¶ms1=1.78¶ms2=62"); - if (!APIHelp_HttpRequest_Get(lpszBmiUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszBmiUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; diff --git a/XEngine_APPClient/APPClient_TranslationExample/APPClient_TranslationExample.cpp b/XEngine_APPClient/APPClient_TranslationExample/APPClient_TranslationExample.cpp index dad86d4..695e448 100644 --- a/XEngine_APPClient/APPClient_TranslationExample/APPClient_TranslationExample.cpp +++ b/XEngine_APPClient/APPClient_TranslationExample/APPClient_TranslationExample.cpp @@ -31,7 +31,7 @@ int main() TCHAR* ptszMsgBuffer = NULL; LPCTSTR lpszUrl = _T("http://127.0.0.1:5501/api?function=translation¶ms1=中国¶ms2=0¶m3=0"); - if (!APIHelp_HttpRequest_Get(lpszUrl, &ptszMsgBuffer, &nLen)) + if (!APIHelp_HttpRequest_Custom(_T("GET"), lpszUrl, NULL, NULL, &ptszMsgBuffer, &nLen)) { printf("发送投递失败!\n"); return 0; -- Gitee From 9f0152e6f561f063e01eb05b49707fc36473c421 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 16:19:06 +0800 Subject: [PATCH 12/15] added:zipcode example --- .../APPClient_ZIPCodeExample.cpp | 60 ++++++++ .../APPClient_ZIPCodeExample.vcxproj | 139 ++++++++++++++++++ .../APPClient_ZIPCodeExample.vcxproj.filters | 22 +++ .../APPClient_ZIPCodeExample.vcxproj.user | 4 + XEngine_APPClient/XEngine_APPClient.sln | 10 ++ 5 files changed, 235 insertions(+) create mode 100644 XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.cpp create mode 100644 XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj create mode 100644 XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj.filters create mode 100644 XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj.user diff --git a/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.cpp b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.cpp new file mode 100644 index 0000000..b854a3e --- /dev/null +++ b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.cpp @@ -0,0 +1,60 @@ +#ifdef _MSC_BUILD +#include +#include +#pragma comment(lib,"Ws2_32") +#pragma comment(lib,"jsoncpp") +#pragma comment(lib,"XEngine_BaseLib/XEngine_BaseLib") +#pragma comment(lib,"XEngine_NetHelp/NetHelp_APIHelp") +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//需要优先配置XEngine +//WINDOWS支持VS2022 x64 debug 编译调试 +//linux::g++ -std=c++17 -Wall -g APPClient_ZIPCodeExample.cpp -o APPClient_ZIPCodeExample.exe -L /usr/local/lib/XEngine_Release/XEngine_BaseLib -L /usr/local/lib/XEngine_Release/XEngine_NetHelp -lXEngine_BaseLib -lNetHelp_APIHelp +//macos::g++ -std=c++17 -Wall -g APPClient_ZIPCodeExample.cpp -o APPClient_ZIPCodeExample.exe -lXEngine_BaseLib -lNetHelp_APIHelp + +int main() +{ +#ifdef _MSC_BUILD + WSADATA st_WSAData; + WSAStartup(MAKEWORD(2, 2), &st_WSAData); +#endif + int nLen = 0; + int nCode = 0; + TCHAR tszMsgBuffer[1024]; + LPCTSTR lpszCreateUrl = _T("http://127.0.0.1:5501/api?function=zipcode¶ms1=0"); + + memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer)); + + Json::Value st_JsonRoot; + st_JsonRoot["nZipCode"] = 100010; + + TCHAR* ptszMsgBuffer = NULL; + if (!APIHelp_HttpRequest_Custom(_T("POST"), lpszCreateUrl, st_JsonRoot.toStyledString().c_str(), &nCode, &ptszMsgBuffer, &nLen)) + { + printf("发送投递失败!\n"); + return 0; + } +#ifdef _MSC_BUILD + BaseLib_OperatorCharset_UTFToAnsi(ptszMsgBuffer, tszMsgBuffer, &nLen); + printf("接受到数据,大小:%d,内容:%s\n", nLen, tszMsgBuffer); +#else + printf("接受到数据,大小:%d,内容:%s\n", nLen, ptszMsgBuffer); +#endif + BaseLib_OperatorMemory_FreeCStyle((XPPMEM)&ptszMsgBuffer); + +#ifdef _MSC_BUILD + WSACleanup(); +#endif + return 0; +} \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj new file mode 100644 index 0000000..c3d2b41 --- /dev/null +++ b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj @@ -0,0 +1,139 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {4d665697-a449-490f-8ce6-ced6752ee128} + APPClientZIPCodeExample + 10.0 + + + + Application + true + v143 + Unicode + + + Application + false + v143 + true + Unicode + + + Application + true + v143 + MultiByte + + + Application + false + v143 + true + Unicode + + + + + + + + + + + + + + + + + + + + + $(XEngine_Include);../../XEngine_Source/XEngine_ThirdPart/jsoncpp;$(IncludePath) + $(XEngine_Lib64);../../XEngine_Source/x64/Debug;$(LibraryPath) + + + + Level3 + true + WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + Level3 + true + _DEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + + + + + Level3 + true + true + true + NDEBUG;_CONSOLE;%(PreprocessorDefinitions) + true + + + Console + true + true + true + + + + + + + + + \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj.filters b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj.filters new file mode 100644 index 0000000..9bf7bd2 --- /dev/null +++ b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj.filters @@ -0,0 +1,22 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + 源文件 + + + \ No newline at end of file diff --git a/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj.user b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj.user new file mode 100644 index 0000000..88a5509 --- /dev/null +++ b/XEngine_APPClient/APPClient_ZIPCodeExample/APPClient_ZIPCodeExample.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/XEngine_APPClient/XEngine_APPClient.sln b/XEngine_APPClient/XEngine_APPClient.sln index 7e53a28..cede143 100644 --- a/XEngine_APPClient/XEngine_APPClient.sln +++ b/XEngine_APPClient/XEngine_APPClient.sln @@ -23,6 +23,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_CDKeyExample", "A EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_LockExample", "APPClient_LockExample\APPClient_LockExample.vcxproj", "{6EC0E212-E8DF-4DD2-8DA5-2BCFD18405F9}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "APPClient_ZIPCodeExample", "APPClient_ZIPCodeExample\APPClient_ZIPCodeExample.vcxproj", "{4D665697-A449-490F-8CE6-CED6752EE128}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 @@ -111,6 +113,14 @@ Global {6EC0E212-E8DF-4DD2-8DA5-2BCFD18405F9}.Release|x64.Build.0 = Release|x64 {6EC0E212-E8DF-4DD2-8DA5-2BCFD18405F9}.Release|x86.ActiveCfg = Release|Win32 {6EC0E212-E8DF-4DD2-8DA5-2BCFD18405F9}.Release|x86.Build.0 = Release|Win32 + {4D665697-A449-490F-8CE6-CED6752EE128}.Debug|x64.ActiveCfg = Debug|x64 + {4D665697-A449-490F-8CE6-CED6752EE128}.Debug|x64.Build.0 = Debug|x64 + {4D665697-A449-490F-8CE6-CED6752EE128}.Debug|x86.ActiveCfg = Debug|Win32 + {4D665697-A449-490F-8CE6-CED6752EE128}.Debug|x86.Build.0 = Debug|Win32 + {4D665697-A449-490F-8CE6-CED6752EE128}.Release|x64.ActiveCfg = Release|x64 + {4D665697-A449-490F-8CE6-CED6752EE128}.Release|x64.Build.0 = Release|x64 + {4D665697-A449-490F-8CE6-CED6752EE128}.Release|x86.ActiveCfg = Release|Win32 + {4D665697-A449-490F-8CE6-CED6752EE128}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE -- Gitee From 98d7f2180f4e3d3ae90a76de362cd7b7e4789991 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Tue, 1 Nov 2022 16:19:54 +0800 Subject: [PATCH 13/15] update:configure file and zipcode --- .../XEngine_Config/XEngine_Config.json | 4 +- .../XEngine_Config/XEngine_OPtionConfig.json | 174 +++++++++--------- .../XEngine_Config/XEngine_PluginConfig.json | 5 + XEngine_Release/XEngine_DBFile/zipcode.db | Bin 0 -> 450560 bytes 4 files changed, 100 insertions(+), 83 deletions(-) create mode 100644 XEngine_Release/XEngine_DBFile/zipcode.db diff --git a/XEngine_Release/XEngine_Config/XEngine_Config.json b/XEngine_Release/XEngine_Config/XEngine_Config.json index 1052d2f..7e7ef28 100644 --- a/XEngine_Release/XEngine_Config/XEngine_Config.json +++ b/XEngine_Release/XEngine_Config/XEngine_Config.json @@ -23,6 +23,7 @@ "tszIDData":"./XEngine_DBFile/regionsid.db", "tszPhoneData":"./XEngine_DBFile/phone.dat", "tszBankData":"./XEngine_DBFile/bankinfo.db", + "tszZIPCodeData":"./XEngine_DBFile/zipcode.db", "tszBankUrl":"https://ccdcapi.alipay.com/validateAndCacheCardInfo.json?cardNo=%s&cardBinCheck=true", "tszTranslationUrl":"http://fanyi.youdao.com/translate?&doctype=json&type=%s&i=%s" }, @@ -31,7 +32,8 @@ "tszPluginFile":"./XEngine_Config/XEngine_PluginConfig.json" }, "XVer":[ - "2.4.0.1001 Build20220913", + "2.5.0.1001 Build20221102", + "2.4.0.1001 Build20220902", "2.3.0.1001 Build20220723", "2.2.0.1001 Build20220701", "2.1.0.1001 Build20220429", diff --git a/XEngine_Release/XEngine_Config/XEngine_OPtionConfig.json b/XEngine_Release/XEngine_Config/XEngine_OPtionConfig.json index d94ea3e..ae1273e 100644 --- a/XEngine_Release/XEngine_Config/XEngine_OPtionConfig.json +++ b/XEngine_Release/XEngine_Config/XEngine_OPtionConfig.json @@ -1,84 +1,94 @@ { - "OPTionBase":[ - { - "OPTionEnable":true, - "OPTionMethod":"ip", - "OPTionNote":"IP地址信息查询", - "OPTionExample":"http://%s/api?function=ip¶ms1=1.29.164.255¶ms2=0" - }, - { - "OPTionEnable":true, - "OPTionMethod":"id", - "OPTionNote":"身份证信息查询", - "OPTionExample":"http://%s/api?function=id¶ms1=511025191101018792¶ms2=0" - }, - { - "OPTionEnable":true, - "OPTionMethod":"phone", - "OPTionNote":"电话号码查询", - "OPTionExample":"http://%s/api?function=phone¶ms1=13699428888¶ms2=0" - }, - { - "OPTionEnable":true, - "OPTionMethod":"bank", - "OPTionNote":"银行卡验证", - "OPTionExample":"http://%s/api?function=bank¶ms1=6214000000¶ms2=0" - }, - { - "OPTionEnable":true, - "OPTionMethod":"language", - "OPTionNote":"语言转换", - "OPTionExample":"http://%s/api?function=language¶ms1=繁体到简体¶ms2=0¶ms3=1" - }, - { - "OPTionEnable":true, - "OPTionMethod":"translation", - "OPTionNote":"翻译", - "OPTionExample":"http://%s/api?function=translation¶ms1=中国¶ms2=0¶ms3=0" - }, - { - "OPTionEnable":true, - "OPTionMethod":"p2p", - "OPTionNote":"p2p网络", - "OPTionExample":"参考文档" - }, - { - "OPTionEnable":true, - "OPTionMethod":"lock", - "OPTionNote":"分布式锁", - "OPTionExample":"http://%s/api?function=lock¶ms1=token¶ms2=0" - }, - { - "OPTionEnable":true, - "OPTionMethod":"cdkey", - "OPTionNote":"cdkey创建器", - "OPTionExample":"http://%s/api?function=cdkey¶ms1=0" - } - ], - "OPTionPlugin":[ - { - "OPTionEnable":true, - "OPTionMethod":"zodiac", - "OPTionNote":"生肖星座", - "OPTionExample":"http://%s/api?function=zodiac¶ms1=19880121" - }, - { - "OPTionEnable":true, - "OPTionMethod":"pass", - "OPTionNote":"密码", - "OPTionExample":"http://%s/api?function=pass¶ms1=1¶ms2=4" - }, - { - "OPTionEnable":true, - "OPTionMethod":"timezone", - "OPTionNote":"时区转换", - "OPTionExample":"http://%s/api?function=timezone¶ms1=0" - }, - { - "OPTionEnable":true, - "OPTionMethod":"bmindex", - "OPTionNote":"体脂标准", - "OPTionExample":"http://%s/api?function=bmindex¶ms1=高(米))¶m2=体重(千克)" - } - ] + "OPTionBase": [{ + "OPTionEnable": true, + "OPTionMethod": "ip", + "OPTionNote": "IP地址信息查询", + "OPTionExample": "http://%s/api?function=ip¶ms1=1.29.164.255¶ms2=0" + }, + { + "OPTionEnable": true, + "OPTionMethod": "id", + "OPTionNote": "身份证信息查询", + "OPTionExample": "http://%s/api?function=id¶ms1=511025191101018792¶ms2=0" + }, + { + "OPTionEnable": true, + "OPTionMethod": "phone", + "OPTionNote": "电话号码查询", + "OPTionExample": "http://%s/api?function=phone¶ms1=13699428888¶ms2=0" + }, + { + "OPTionEnable": true, + "OPTionMethod": "bank", + "OPTionNote": "银行卡验证", + "OPTionExample": "http://%s/api?function=bank¶ms1=6214000000¶ms2=0" + }, + { + "OPTionEnable": true, + "OPTionMethod": "language", + "OPTionNote": "语言转换", + "OPTionExample": "http://%s/api?function=language¶ms1=繁体到简体¶ms2=0¶ms3=1" + }, + { + "OPTionEnable": true, + "OPTionMethod": "translation", + "OPTionNote": "翻译", + "OPTionExample": "http://%s/api?function=translation¶ms1=中国¶ms2=0¶ms3=0" + }, + { + "OPTionEnable": true, + "OPTionMethod": "lock", + "OPTionNote": "分布式锁", + "OPTionExample": "http://%s/api?function=lock¶ms1=0¶ms2=12319824824" + }, + { + "OPTionEnable": true, + "OPTionMethod": "p2p", + "OPTionNote": "p2p网络", + "OPTionExample": "参考文档" + }, + { + "OPTionEnable": true, + "OPTionMethod": "cdkey", + "OPTionNote": "cdkey授权生成", + "OPTionExample": "参考文档" + }, + { + "OPTionEnable": true, + "OPTionMethod": "zipcode", + "OPTionNote": "行政邮编信息", + "OPTionExample": "参考文档" + } + ], + "OPTionPlugin": [{ + "OPTionEnable": true, + "OPTionMethod": "zodiac", + "OPTionNote": "生肖星座", + "OPTionExample": "http://%s/api?function=zodiac¶ms1=19880121" + }, + { + "OPTionEnable": true, + "OPTionMethod": "pass", + "OPTionNote": "密码", + "OPTionExample": "http://%s/api?function=pass¶ms1=1¶ms2=4" + }, + { + "OPTionEnable": true, + "OPTionMethod": "timezone", + "OPTionNote": "时区转换", + "OPTionExample": "http://%s/api?function=timezone¶ms1=0" + }, + { + "OPTionEnable": true, + "OPTionMethod": "bmindex", + "OPTionNote": "体脂标准", + "OPTionExample": "http://%s/api?function=bmindex¶ms1=高(米))¶m2=体重(千克)" + }, + { + "OPTionEnable": true, + "OPTionMethod": "meter", + "OPTionNote": "计量转换", + "OPTionExample": "http://%s/api?function=meter&type=0&source=1&value=100" + } + ] } \ No newline at end of file diff --git a/XEngine_Release/XEngine_Config/XEngine_PluginConfig.json b/XEngine_Release/XEngine_Config/XEngine_PluginConfig.json index 8854921..eb7d579 100644 --- a/XEngine_Release/XEngine_Config/XEngine_PluginConfig.json +++ b/XEngine_Release/XEngine_Config/XEngine_PluginConfig.json @@ -19,6 +19,11 @@ "PluginEnable":true, "PluginMethod":"bmindex", "PluginFile":"./XEngine_Plugin/libModulePlugin_BMIndex" + }, + { + "PluginEnable":true, + "PluginMethod":"meter", + "PluginFile":"./XEngine_Plugin/libModulePlugin_Meter" } ] } \ No newline at end of file diff --git a/XEngine_Release/XEngine_DBFile/zipcode.db b/XEngine_Release/XEngine_DBFile/zipcode.db new file mode 100644 index 0000000000000000000000000000000000000000..beb98757ed84cd01518059dbb040abab19a80948 GIT binary patch literal 450560 zcmeFad7NC=b>G?8*Y1`?Ni^Joo1_d;5<#fyy;>#979~;pE^1$>2GHyk4Us^LOK6Ez z)m%Vg;|hQPNKsrwQ6dO}Ac=(}#*>UE$;630nT+Eko@8uP13lidI&nPyc)q`L@4NN7 zyYL$Dd}jUvZ5t%7rn>yyr>-f-RmvwY> zEZ~1*{4e=uJ|7k)|G~fKr9PkQ8*S7YpAMGE!_4>Y>`uqI9=6~c% z*IskowU=FY&4)j8?PXW^KfU6zcXuwo?6NC{HePYrb=Q9Vx_3v#;(ONGAAP^gpKTf3 zeACvkzD@nJMz{ULP5n0w^xt%S+rJy_|3Uxgte^S*(Acd*W3&Ev!{&{%A#WS{{`GDD z;)bD{wrrjC8>3?bv;V9wJ+5>4dls?kBb_y^{aE*3cmHMgf9U>`?q>JD?f!%Af8PB& z-T!mK^Fs>;6{vSGqsn{mJf+ zbbqkB+@0^fs(Vd$Z}+P1OS(I|mvqnT`s=R$()AZzQ(b@D^@m-*-}QT4|4Y~Z)OD)s zc-Ko^&v*T_>xr)YT@QEd>e|-T==#mBo4ao88tLlqy1wfhU0?3{Y}d!TuIc(fSF!7T zUGM37XV>bkOS|6OwW4cL=ihezRp)=|{Ikw8o&RU&zwZ1Oo&T)!A9eoy&euC%?R>HG z=bcY?KHj;n^TEy?op-ybT{vr9{Kmx(@NN9;=z%TJkprKF4j;G@I&?rG*1`SXf)4C2LT}jL4eft)5W4Zv4?{OR`VQ#& zeK$k<_I(rjy?q~qUcc`O=y&(YzWdJJe(1ONehm7pz3+m4bFYHA-`I0K^y_;*0R7sY zOQBzVM9=V*M?MF=?vb_7FF&#z`lW|QpkI7gfBuDsbI{K}tS9;0L!;2oKBPbY%tP;k ze)^%6&`&+6@t=I~Q_xR5D8!FHsBrSf9uVTS4+!z25Bw7JBlrIR`r-S(3ccq367)m& zza9D;yY=V4zWdA25AGJ?ukBVG`2)L#pzq(Mxm0((6I$7&RVwfN4z#qh3N7x`FBEoY zF7b{pK%*U+OMb^vXm0yP==-*R2)b^&R`2TjZh@}7?>gvJ_X+F0_h}aIxmWA_?t4E9 zz4G46pzqptJ9N#quS0)zTLJpcZEu2JagXME`8^+pUUtu~LVNGg3jfO8--WKeTTk_l zyWa}!xob1@m+$&Cbk$vJpucpNMqYa7_n>dTQ+xNeJA0sSowyZx$;4NnZ<&aoZ=UFa zzNs+`?QVPm+SRxU+S$-vtgL?@x}vVVSYCe*bXi^D`lU6k`I6fEp^IzUA1%9K*}SDE zmVSH5e_isxlJ_nC$BS=R^tX%lFDfnky@ewS7cY2n!PWEs(fkeb7tT9A?~@(>njdWc z&+xlD-~8rPz2E9y^|n>ry{ikkxH9>~(`TPPvDOYdYWDy{h->?n^s6 zg;&nGB?}8T6DU8}zrKIy6K#I#JHM)hTJ_29RhMW};!>15`{3ivou?f2Kh%8cXOl;t zUhDp)y>NdU4-efk#L`4joXb~pxliTu<#mNzxmqpc^r)rs#&_C2e7?KK{d_UXOf z`SPodf^#l}FaVITfx*5Zhf*?>(zUIe}zZUBv!AE3sJ6lsHW9$^xP<6 zKs+Xteg^_meNI!U;2?~v>*6?9sBFC)j5TY%()~_1lQ_yvo_v;>Og?fLc1nLf*Oby@ z;`KvgOzM`Qu^Yz?l;z5QSfJ%xz7&C)i%O+R-(`Mgm%5onn%TkT!IPebGc#+4!hm>v z-{y^e^(wiXVZ`}d3`99!F6B4$rWOwl$TP9$pP4*%r=zW-G7BOMh;JUhk>zuXSI*_W zrg`KFg@QohN+Dm|_$wa7^FfYzY~OSC4VKQ)E@0-j%H28hA}|gHs)D67Z)8%$CY9%(NeAE0<{@AA8-=43ID&-ne;e zVAO4VF3#mXDv&s@V*_(lN^$=$dyLh_(Gf@g%!!{MWgX4H2m|6lFeHr~3$q2tnDV-O zF<;QZ$(PFc;`&t{Ml9UBIzj}brBw!u8^(ax#Fxh?#15m1ytn15V zdz!D^;c3P(al^o1*GIgR$#Jom0LT|}$QdRQSE791r5@yMZX%KZM_$tXWi)#t4099V z-jcZF07Nzq{=;p1u3D^ac>DBuaNPNEw$#yV2!=TbZM^#;(qYAhg~JD%W&p_ zkG687a0uN5a=F}f#!=N=z9OlZMl24b$ko}{*SBav-x~!U8N9Ji$KIk@XGo( zc?frjbAPa#XAi&XX=_7g&BG02L$#d);|?Rr<-TBxj!ccg$QN?O(uVHoYgLRU@3>>~ z@rN8uapp{nFd#;=8MSr9f%6WNNSxNR`m5*CS5B9L-k2f3Q7mP#9!Pe;i`llPoz zzWAb}87N^ud;<#Y7Sw3BDTPYqV?xOnqM`(Nxlpc@HZAMy?(Rjq(x&vTu0~UPo^3vL zbn?jK;X?*gdQ7~je{AdK@c}<6iCQ}_>=bu6lPcs2@%p8}t?EqT&_|zUXH32BrF)kYMdWi;-@5qarNqQge5S!?**1Fe8@mbkAV}g3{q>D zV+zI&Q51=phV~3l&4m+BG6b8gM^p6c}!U0x|x zit8772;;aOM8JWAQ+r=>Gy@_G(8<}1$aLpZm!KV-LZw)!*xpnMeG8{eqY&xle0-;) z85m&z%9Yf_1R{>mt`Gsp0%@bwI9J@bz(Y7@i&?1yKscHK5eArQl?KT>Ia7cav{vkX zvHZ>Xh7xYTyuUt@OC-6aX2{D3HCLPMcfr)$5=K=qLJ8GY7pj%&N9XCcTlb%oXjOm6`&Ry^l@lx9zT(*xA6))>%Qr0ht7SWu zUAFYt($6mWcT2{Xyk+roi$A>RUoX0G(UOIaEqvF4-&*jE`Tu_Y-Sd0ry)y4J9e>DA zW&bn$SyKwW)!iejyr*0)mvo|zz2InT=}~u>i+KQk`plU}?`|I1uWL69)A1WHGZ_`V z#MbIAsje&Ka|IJzaiO^BGhoRkf2Y~x}6UOATp{7;(3oJ-!hYH%_o{H&oXZ zD~L%ue8{mlKlo{z+E?7vR+o#V{Ml1A91f1Q18P3B8)2Y%g)#DMj5%im^FoElfmOjI z%$4kXR4Z{j@F|bv+$d!n15>q^o7*38G#e?5iEkU%%>;1>YyRD!wF+->C7pl2_f}u<K{0ykX z)&Nw@VTxWWoK>Iic3!Sh)#2W$yc6nG#fFDu}keHv}eQOK;^jADwq*fBm%cuR45F7I1RMAR5BoTiyx8w z7_`oI{1?U;P;0kfKnIkM%x>X=uEc}aOhAMZrhK~P!|eF9ro^!+ zi!rddqe}mWJkr}FX;+sJ63tytHSc=G(`+O+68&&s{MLTYew^Ho3xe zm`fcDBI4|;FCe-d&0e}N1~%lD@;K~}@gQ7b%utH(SlsaI({Ussz}aCqb8V3u$+Ljd z+Mom{Uo6D7Y*8^+?E9eMTw@37@?Ko7WzWTltoD~{8&-(6CTgzV7c*U9wK8%+sz)g< z=JWB;uNlO*y8V*L3;xLA)5mu^+D?3@UC3+0F!Y?UQSFYL;GA64oWiv=N@-5~?Rpc+u zzOjF5|6PvG2^NNFUc=tGA0b|uS8-jGD@EMk(%#F}8>)g@^%XDnup%mFUw#>Z=jg00 znznv!One)PsF!@KU%nXY0xYaUBSC}be!^c;8L3QPKm5(jI~$XScX`@I!cKzM#YGEz53$hORqaR zCt4VW#nnG{n?GFK=rX>=gt6F~m5ht=Q0%eXIWFQNocj6Rsrvnn&WRO<#RHf`32P8) zK+1BCA>zYQzE~`cM$;D&k#Po%?}by2&IuKU#iM3LVj4Tva4JOs7d>pj#Nu3~P#n!q zL&I@WIs3$R#Gs>dqJ?2P$k>ynDM?15DVdCdwQ(X6CAM)Q>cxvA^N9TkK!z?Ogo+h`H z-1o>tPMLW%Boj-O%ILb*~y1ZVufMi{?x=Gynq6$6i{OX#vepOS9vgZ)QBoo&OZ5YbH`3c=LWOE zTE<()oy{ZuV0umpv!c2(v9WT6AH5f-HEa61uX5~&1aVt_=5hJ&r+v;0R;Nb>UKvqn zmw2CJ88j+mnOv!eMBxES+2J<~UlMNoio$4*D*oNE}S)0diTF>hxN7UUiUi}O)& z_Wx}i-FJ0&ciq#~)A>T@M^^sP%3D@;t$2FHmCN5)e%-REWp^xl$I|0VKeyzMm;7kS zs>RP^|Nr5lEsK^f{Mo`^Tkv}eZkYd9^LNg_eBR6RzR)q*aa*?e-}>9(n>sJKWL0ls zEwkfT?ux~taX8xMx|^#11b-Ha#M&^%qP7Ya#DoBf{G+f9S5Sm8Ytj>wXz)gl<+z92 zS6C>G1T!4X#!AL0KtzDpkYt$~5@tDkO0bg%ab?5zg@idKeQWh<9I_ytK6z47#nG88 z)0&bS5Z}~4=Cu;d2iyEhnhy?gT?SZ~<>K(>8B2%$SD1SAuIAyNI@(T#wQ$0icog67 zt#WJF(&5{%Q!WKa_bE4AF+Vcqv7CJg5?GUu?>c?_2}iTB!Wcr(mM9>bS@S9s6^3SB z=*5~?0W&Nb+T_8U_{x*l!9Lw}=jmg6JCU+;4?n zoTc=Kzloe0GHcxsfGBN-5Dg3%z*oFcMs`G{Kz0M}J4f4DFH`jwrW(g2j=~t!VduQV z4P1g5OdlrniP}q4r5aW8gEx4fgvld-_8)29|E#0!87~0YNHN}xcQr@1QkZ&v7hiU?&4MK`Za{oX-9F z8~t>gg~>obp1Esk-z$!0PbZAQ&(Jrv)nt+8g8_jOjJ~aW3!vbGe06w(U5rGC>}IaQ zgU#coWE?r#_7EjA3S$guz804i?qM`5knK%hvrf-e}!YkW=a5MwL4Uh%d+8kWaG9hDx0Eb7@ zU>4E9xBZIwX&?&}=-$1<(`=S@BVn_ReVd%s!+Mpl1PFP<1?-DBEmAVx(6^><4WeN3 zp52meMzgmjj3Ic3h1C*p_?&FrN~LO5T!4L*&kuex1;x=pAaGqyzD5#@Xf{+Bql*;} zjhT*`m2aE zZ}Il81GEMQxU&f=NQ34}hxvbJ6Qn<9utj>9`HB^7Z5aeYM^`akM|;JtV?pzHhX%ej zeVRy#=2JT?C&FmkYc|L|HxkR|21G?zPHZ0oDipbs0K(f47Y4uTft)O_ASzBD+iwwM z(f0Rw0^~+ACf6>kR1{OF6#0w_q!gTO)Z5W2lErlGe!%-q}VNP)5tHsGGRlI4#Uz&~;5k0;4 zQQ1O9+a0ZGSYa5SfRG?3qmVz@eW;NV~Ko9R?*SPlTS?U*>(2r=O&MsEj81M znl{U}U*W1G7qYd!hO|Ejw=RB+e)r3DQz>;3`@~h1|<^J^_ z+8p!gu&I&UJ(#LQ$jymk$cPs1AJ!YkwxvOkb5nKp|Lq-A_FvugKXiSm^UpgQovT(p zzw+7@f3)J36`jj}vb?bDx0ii$>7OsHFMaEhUo831;{TQ0|G!?ed(l-3Pc8iBf6=7~MwLp#&r^r?e*KsCqoFuBUa zP)-jc$qXss6lJL`;wOAN#o}P?t==^A4vzv!NjO)wQCi_?n@P4H!tqGuyd`FqAFf@JvI5z}0t10k7MiDXK-owFO!C`$iv~1AlC&7K@@ftb+`6JN z;)iQ*X@TK$%%cNDC}pP<&@!66lwk~>;_=Nbun30H%&HY)Oe|u7gs13++M5N2a_-Cx z@&~kg`zH`-j?TL3TPx@WV6P)^ybh=(#Dc;HN8%eER9u)$u22BzO@3Aui|N5jttH&? z=+xaiJ#BM`w6MaMc>QLJ)e4FAL(UY}6$s=D3D-bjxYpfTK6$4IdorUZPGCYg+D@pq zfWjE0%lMeLpa3Ja*hNRYdl=DHEUd3}`Q<~kwY|doQaJnLC%|wtWBJ?wRKV2Q$=$(( zunlqSF`)`6wnMc}KO=8Uqkh5=`;RCk&1m+F!WgV+%Skg%m)>I1gF1{zi&u&W5wEYU zY)!~kkH0NU?tKslM>8hm2E@0fCM3Un6@_;@Z=Z!q~wTTSPm`69c4x0{`ex zZAoipVhUU%CgNd0h4=QhHFr`+Dj8!TKxgd;iwn&BA7ySXTSfHs{@P+;A&|T;mYim0 zMq0woQ;udZpc@b?7S}pc5sCrnz6e?TV2TOgLCD7=wMBkT368{sggIH*j?S@yHd1CO zBHh~@VhtQEW|*Sfp+BQ;lK34B)fRd*e}uVQKzn2N9W}~^0pxrW#Sd!HtESv^N z+9HX}70Zt$&$L<{sx6p-C2=ve_kaYT(QG~pV^E)4;*TN_XSCsZ!?LdsxgxP>s5akY zB|LB90!}`BR6Nh@GUpY>i04}qQ+}!D1&dhGQ>k=nfJI~GZ5P``EdzWW`W1ItD- z#+2mN0mIubLC7sqjofJ_K2;s5b<99B!Ey2lP8fRnIeh0Wo)2TOxP6J!DV&s$x^4W+5gFs4Nv3$ed^OMn? zwVFZ)F3`f{k$sp)j<(avf^(i)UyWppjFu2yV~a3XsOi=1h%1wOfA}_!<1A9FZ*a81 zhkov98&$J~6UK-Y2Fwz)P!!6a@q)^EvEI2xaF`9=nwk?g77iJU50Q?0k#feZuP`39*W|a2r_q>^B5QK>AKK&T z9B4KYG#SbRw*{sklgVAcO6E{{1=>bwaH|JP!pIg|d*rZo%IF+Bm5i~tybmK2yK@&+ z1fwfpSVX{82DW%4mz~A5HLX{lB|pQ{>}k1?Olx?2)Q3UIH1jEYF&+Gx!5se#*WT}E=Fc#x#Fd;mIF35n zZVe}o{8Z+o;%xGX=;p-rhc0c*q1KQOn zm^j4931Fq3F||UmzgC`sLqR7sqCW-4(F`0nfCTKI25LIk+PLH-k1A$cp)r;6gSC=h zJR|)O$1^*he~crfYL@+o|RouZsDzzbMgc zRf#Z5ft$=3VoEK|ky}G_69-XkVJ*^gl{Y0$4R)O8I`q0(N1}6iT2qf>-*R-OInQVetF$TfaGtdxMd}uB}b&8VVDJ11o8};%AVF7RI<>=0;t_0>i(=QMROI8C9Gc ztm4|+Ygd7m&kuB$;Sr(1MI==op4@id+1*b!pWp35fV2N3gJWk8#xtbi&duZc_iaP1 zprD@2If}>xChJB8-|GKT*i?J3Uj`NB=)q_jQfcnmE>3Z@jbW79;$)1Rc?dPJm0t;r zBUEqrSK%P=2-B2{qqX;>@Hi}ZT^!yMPYVw^C!US*c-At)tvuI{;US_FiQ&+cN`19= zPq$li&raLqHoAV8U1Sm{Y^}TB$dSdHhVml_BCRapl{O_`jL4MacxfKJ`^;0XdD@1P z(y@TGVHnJW@~9veu2;I#zp^$MZ6PjP+vf?8{Ffb{%ae1E%4H zVc_{1R|CY|;Q%Wr1GZqcs8JfQc%l4eST<&{&)^EEmrU>IgDb5kZ2@j$BE^jJ(y zkC8gyX|4r&8Te?=YOWC!8Qa^BS$aGleIP zRMpMtV|O?2eAdx9@xn0qFuj=5_90X)(}|VTfulO33b$O5g5$u+E3E0sFKcv8xG>D7 z=h7$y$M0BV8NYc^q6c9V6~}6qd%T2OSb>~*6d!kVPP{NoJt_vgUq{=Ab!gc;{2+Z= zsEs67J%2;(G67OlG?{&ug#(at0#V6cyswxcmr^mCBoH zz0+5+$g#{d4?jwC1W)HYcWy9@qCn?>6;Eg-xu6gwG3Sj~gzhICsL^QcS3I7dSW#E> zX66uPf z5GT@`@CQs)Cbc5NyTUbq}I*DH}Ma*qWyoGCks}2!axwZDo z;3+KcuR1zl=%C+s_TCqp`=1XV+Fd}?I5a&HU84`&)@D-wZNP1(k|X(>Tq=|NA<+AMC!e>$R>gc20F}Soz;p?pS%*ikDY>Vfp0po0qR#_Smxg z(!am-YfFA_N&n*izWCwAS1vlf=<^HzXyN$6WeW~0D9-+`qD+8lw9 zb3Yb-awbGx67iNH#Ne!78>xM3`U2%?kEZ%K#m|khkj#H9L+=vW0XbP!eRxi^i-`E`Q~;h?@TDRMQ*-qfVX6fX_ezBXe{^i8WwK76OFbfejG z3S+pl(sN?7?9!^@eO5s&HC<)GRbQR4S;VJt49Hycw2e$}EnpZ!;Ms@9G%qeHi#+3a z1B=>IxT7*$`^t=o5kjj>J^c#$ilf;R3uEG&d@C8pg}B!(K&$AVoPdNkBh1C?W`J>q zC@_4c`PvCbv%$g`>u|{B=vf{aWUlXOg<@#2Jn1l%f!dcnm~-3`HE>`Qh4MqtIl!-OP$Ps&lY0GRCXlVD< z>iXIjrn%^Vip%cD!cU(2ghfhG_5o85VYUNJS|yxJdJ}#btbN{3$+Q~RAKS+B zJK9bbHc#H$Jb15UVHgu{@kL=JE^>sEnX*JPU0Ws`PnDtC=RB0V)2UfNgb$|OzLcwl6~-{JU{VXs<x>fH&+)K%iL;YY2r;L6XTOJrbfuFOihM@enzvw z!WgUGuqK5L4Y6!qc&;7wGbQ4lD^&+;pYUkOiNMKMZtg!J+3skYDh5i@$in(`-055{(+)wtNyEiK~su7t~Ru19A3?<@L2|r-?3L z$T4+7BM}|5L|2$sGzv?oRbC4M-!2ebE#wOd1MRRdSo^4-j^qiB51Rfc0`$_<9wjP6 z+sTs<-B5FFH-@IFOURL1`A_UL+k24H7{5YwLnRi zmI+zrPG$+O@lcM}DYMWLzI3lT4jRpd3S-E*q}8BbK`cX)$VHqE@HutzaZwWaL&6FY z8KoPn=JStF9=zYvIV5sx>)MW2zr%qI<9;9U=O~SaT47WYrOqO@;!1z*H}nvR&I->c z#CB%;AtZ>Sv)HnQ>IRs^^1dCdD^4;CujNr%mDs|(qRL?H*Jtb@+Dfju`=}hmjTfZDO=%%g`q&4zL#@j;Le@_ij^At6D? z2GOyO+#Zr~#eMc`safIs!wMi4T5k}paI!ys# zg(>p^kL7L{G-t5R>{q8aN3*fQ7&-l93;Kz1Q6uw-`^PA6#ulW8IQxH8_5Ulo9_qTX z^JM4eSN`$Jn^(Sd#S1Gwx%}TO-@JVOvWJ(wi~9f1(Eo4ilCH(iF208Tf1Bw4_r${Y zFZkc6|NpP^@0-7R-r;#4>-d9?(HZuC>OY6;Nv5B_I_dU`8}9jMR7-BOHL+mbuB8pX zYCdFrCSza?yF9VZi|Y1gyb;Lk2_QI70fqjO9v8AD!@w+Ri3X>rrUw1L6b4Oo#&Ek9D9p6I6z z(o8E!7FRlW_O#qc4wx)LRC4)KG%+L;sXVdTzaW#*4Y;*QrJbJXhujw0i!Ypcc%P@) zXl^8ETgS&nRsC-p#zkX}6@-ITM&rIKS4V3}s-M$85GP=reR`t#*prTC&n%2_TAXtt z8XQwWD8>j~aI}!vpqNidx}R53NxwE`gtI+=XHG4QaivtZsg0B^B$I<1K_kga+{nM9 zXhV&ZKNI!d+>nzvH`TZo8_iKK>f5oR8-RNPt1wwYLOnPqVtCyZNaxYkDjRE-^~Z&h za3TjGCvAKC2}d(f+yEDVO~cq^xU{%9#T9tpHq>0wU($~a4D5HeAbweb6RFL72n3>b zgaw1m-GVV4x+(#pdoa(ES-KyS@k=HzT;a_AI&9$R?8#7JKrkJ-F-L+Baq=Y9&$EG=UMM$CS=ElVV}k$`#@KmseU1zbrnB>eO;|B2x=061r*7Gi;4S&Ij&YOwK)OB4X~6E z>xpBNVT*`y#Q60}$XIi^Rf`*Hmgtwj^q{P2=`y)3z|7({n~moLSOP-<7{tGoMIyh>Id7GvUT%CS?5T^%2}qC|$S%lI*@@V^mQkGj#WMPusA8 z{~P!%jKN@4_il~}M@6>djV9=jSQw)OUEW_ISqGT9`fw2z(2~fz0E|BohcK}xLxOHE1Gj^BZ0g~=JLj%K=d(fOuQD2z5iiMXn-SN8?Gw(>ASSw9|W-p{0$ry_fL$&d`6K z5GZcuX>E5{M%X99GLUd{G+6!Zz`_{W2f7dgm}&>O4tc|aVwC7E^x>@y`%70d)1J}g zgMROd!<|D8wx%^p4vOsw@tPbY<-v|KS}idr>$&5_Ad04%Cqh^qJr=@&Yy_Va`o6yPdpli4Ap43GYtz3BHw&= z;!NWiPurfRfaONQ;G>(zan8U6!b034DDreAK~dKYPbM&SA}x2)SomwAysnOAZEJZZ5^s@oPk9oB9CWKRZ~W@vBDUabu0lWECe87;)p5; zx?He^C3u3Pw83NfbBmn{*1r2B+Ksk9x5>Q17{$H3Xcrg;Aev=Fm8yEy;+l{6G+tW| zn98QTwB@x#5sjbkrkU8}W3*)UAF?6S!<5}a|1spQpCs>6!;wsUG*2f=UCdaA@y)e9 zkL$|t(VD?+9)9HPj&03@&$T|Zl^V%Z)5D}jkJ0Sf1;lK5xux8Usr``Jff7{(`Fk^v z5zYC@gS(XAaOC;$A$!K@VUmyXw)v~Z);d>3Mkb!L2&sKhL#qX{dUjEn1cP+nS*@htKb7!TK7Zeh~Ek#HAKoI0*@N3)^A7#&W3m9vDZisopNo^JAp#DX^+}sgx2CPI@1e#3%=94_m~S|*&+zcO~jwddh z76d78Ici@F18*YbWp$TE7!q(u#4A@$pSNgY-n1y+8jZW)ALDMtyaFk3Y$rlqZ;?Y60f6~>rSZgq_UQ!@j1*J`Jz9U*tW zFjRL*gr5I;qDmPoIj3q*d)nq&Z()ToW=vZbOv8dHu%*!<=sTvXA>*c zuu7WO)7Edy=&WsO0l8sZvd(ob5Og4a$msZe!Ycj4DMvls%A`_uFTz{LNj#phV zr^$B```5ijKi0D=i!B0gkYcUo>SdFa$~N~>q| z9Jjq!qQe;VBk^VnJ<;(EILlfgUa8S^Mk8WVpWc0k9R!TTUQNkp+oMH;Z>O<`G4XBv zF0YBY5}JGFBXcg2RDo%&YI(fcBX#S(!^E^(s1{VdF|mCwH(x#IXf{?DW2(glWg{S( z1m~0sqHLUB&5Yi6(P%ws!{d1aXCP=Krzo9NbPlv+j5);;Elp^M3loH@(vvPtt10O+ z%TqE+lcV;R4hl8(3Ne}u7skkxhfyST1%{Spw!A{fVBryHV=XghWfaig_i3{{m0oC1`bE)-690&Z6*if*I% z!f<`@3^18_T6>j|h_>6M6j(AwyOatU0%p5}w#g-|*eg!6jrBz{wn^bNV8C#6*5XY= zVwhmO&dHqAP|{#fVMv-M!9nl0arXaXdjH?mUBA_JUFX@(A9nuo$`@9CXvM!+F}7m< z@<*0mwd}W+eRb)d(*N&L?Eeoe{+El#7B5`1chP$nzP9kI3;uM$9SeSW{?F(C#=L(u zZ}Yrm9gkhG(Vy{!!FrN7>8?|@0T!El@eRrZ9BsGaY9agL8?s%(7*zwCIZLvZGCauX zmP??*9xK0(gTJ9}X_JYHzZ$U$)Y%7)fZ*t?^={#~0rB^J@d7 zQouf+mKWJ0_bn5m9rFX*9i3xBHd1@5cFd;635%^os8Bbix?9`YN@0E7(jwi2@H#LZ zpr#&G12IQ4CgcX7Z+rd`2y)UaSQ55u)ySv7xJM#c7OTUc_3_+93}MqxB>i(#d3WaIn-?gpzTi*=rZZFfA;W6dW=cO9Gbz zdZYXRN{r{ewrt22L(pQ3sqIz+Xh$>F&kew0Zml2EPx>jFgz>6P!Z%IYeLYEp^b3f0 z0ET$^5UQ1<*^>%ms9W&9AuS*(h_SeWnv#|@rYaT&>eI6z^%@XnL~bK@wWHaam5d<^ z(h6~e#9<-}GNN^?>(j&BavUbIAX6C#2xTGhPC3@jXx7@<037?NwR7qR-Ugy%Vm`gZ zxiV5u(jc7%Oo5u#?&x!qM;~)^j$5PYg}xOW}}5M z==jOS1{mQnNeZGCln{VLm#9j9pq}JHy6jjQuxTClADKMTa5Nh$jEQd?zga;t0lC{I zk7r-6I79a+kh(ljw@gTsILUL(%ESe)Eor>2mzO}>sP`#xk&HpD+N_R)wt!rhHYbuF zlyRf}5|!`OE!{E1u$T}B(EU>Qy>l~RgqyInLjaij2|okryavIxjntD&N6&s3>on=1 zY>iY7N881)PM!3IWf+5r`?FL~PL z@HSg$ZY1pYeMvv3{(>g80NaS$FekM@`PtMV4%U-=M}P4mhG~CA{puT5#Y#VtOf)xA z%&rDv@-_&Hb47YAS0eAtRVuhLEGq-`B;C<-A5GHKJxn1pN3)^A7(6znk_rhpJHZ6Y zU}lUX7834zzdutS^Yr!kBoZpG0jxDZ3U~J{=`(7GAJuuwL~@ zlIrj|=@Bd+M)wQPI+{JFFosM=3UZ~+YgXJKxW=jarS~aNRU&icfqEq+D0(l&3IyuR z(~nKQ_+v-2p~4s|>7%KD$ASsXz9gw#X+GRmgLUgWl-TAyG0GEfu{pSp7gsu(jTFXk zEn=H{rckDob0l-5w1BW*G*nMo5BXcs0+ZbHq=0&wy;E)^?5A7)W(f+dA6`5H_k=d3 zVrWjhS`0}$z4s8#SuNo4TJxoSj%H6QjL|#poy!_5wI<~T#)9DB2#dU*N@-)A-a~dT zI@?QmZt%s)Ck5f?%w(z733dZiq~b3|!N3w|N;vQ+p|>f~!lFD_x8_4$%);nur)=!U zyWn9$I{9ZVUl;@X;Y)U_N4}xBj~OA*ReXaRt&CD;{e-+(E+`2K^4XLj>1ZZY7~^|| zI#)6?lPlTJ43P^Qu7CoB{yxO}OB@o} zcl2pT+nKK+Hl#uhMl!|q1eWbt#FYeTsxc4bjUx9i0Qo zMhZ!WhhF$;VJ&#V3=aZl#FS~bPQ6cQxPG18FWFPVdP;9payq=0Ogls|ubH6!@KbU$jyNV`@9lH|Ri`g^BM33Wy= zk3Gqa=xO$p+(@LK6bri(#TH0EQe`V>PEFE3)7fZG-{;S15Ty%C(-@@Nr_=yGoWWn|G|78Bi zy#GA!haLZpAIbb@OWh^x4fuRvwW}{hr;i^*4{|i6``vZtS!;~uU-+>7#M3~;LFiwA|vZd}4{aR~+ zwM)|2OOyA}R!a0d*CY()7S}r;hLi}dH7V;BCm#+!x{}CnV^+&s>n`JOz()>Hmq1kq zLR|Gm&l5EamZypQesm%a8|S`glf`^eq9N_~qUvwfmHXGbW>bJg)r=jGI_xwdORXU9X(IvFxc8c z;)L;&E;y$Jt~M<-B_J_XD8qJ?zigP7_X0?kmFMMzqtAoU)Q4APW*#Xj8ZY6Mcm0W| zjK%SDYu%Cqd$)uWhKUzRWqS3Xqba%DhO6&?O!h zX`uz|Ep$UP!>CfNEvzePuy@U^u18A`YMj7Tr>dI7@ZrK9A^AGr@;o-KSE;xM;X3%D z)L{gPRhE+3Q?7N^m07svsvr5}G43gzLlb*!&*YC^YaV`R+UJ%aoqIuMe33g>*;W1h zH~Ht`GBl$@QB2eq;3onZcMdcxA>H zd8AF7xArTnElI?4D235I6}F2qO$oL|)m!Q=g>j1=4}>#{WidMY^8PcgKkR7sk(}`q z;VYEn4>@UMz>$O?B3JgNpz$J=Z>hVC#ul_HbqLc^)Zyp_L5Ht!=UOP=&6>^dcdp*Q zVGhj*XyrGq;+%TxhU$H`f*R1n_j}q>V$Xvu-4_YV5cuIWaDKsav3FuAGal#)ev$HR zb)`58I$=iiQRQDNUSjluW*xpFb=tX^{JgC+RQ<5Hg9VN>tlVB#mgAbMu1|!aoUQq0 zdK1&1Th5a?*B~0)JUF;{YcliTz9aiZCxBYbm=2Eh>uIIaoBxgOE3K7|(p`D0tWz|? zhoEtsllk*QV`Kd{Z9)y+JUY~eK`BS!G^C;WcWsqjVhA@)5woI)>q6l-7F-CkD0a>;j zB_yGoc}cG#e=tavV#^*mE&UI3>Gk=X?pa?kdRBZ%>=j3^Q|H`J|L5wQjQ z0J4xUpV&0qP#6+M6YguXif#aJg-C*Xg5mCQj7Yu-)+Gr$<-%ay+7x+*4Qxm#ATCQ) zeEKyg*8je2Ci>}tPbxAw1!0v9Casa#)rp4o2 z84L!I9V|)}%H-ErlOkXej=;fEcFo5f&DtZ^qa3N2q#_Fkg~hBr70jyw8y<_u*hu;l z8K3vSo|+Da>hYb9W-nbBV}~m7^#iB(+gm~uel?{-@hsXtMXICu>N_EWD7^=R^hYL zZ@e(|vtKxxjTFWZ*c#u|$6=BagK3$1%G%%$RBk%CO0xfZJHFJ>ePh@E-SwT$|Im5U z%D-8;edVvL`00vwE`NUcCChd!Te9@QrSq2Dw)np+{!QZk4=;NA!qEl)V8IvW|H1t0 ziTQuF<9GRb>Yu;YaCuH!5(S*J^eUab51efra5S~+$@Lp<-LCQ;p}F_dSsQoQ;0Rqi5fET`Mr- zE8-s69Z(rUltZJ=YG)~oBu zoQ^i@5S}DGUTqOZ$G7&Ig0F`_1bmaE2NJ@`*DBEQm0p0+%?;&I_4Wo=gBpcYn@`^} zx&JlU8_9?BK@Wo|#~b3!K?$-FxIQOjyjmoxkt0L|ro6SW+#^fU^{ghBOvoo5JpGzk zI?0FgLQV$bXTZr2fLZrX+*J9>A{Ct|;$==C3Lhr_prv2aScPqk=+3Ad`3fKK#h!i`yh6k`L!bR9A9dhb^a3 zGC1zrj0JAXOh8Y!4{0K}Kb6n}L*URZ=f@ih0A9sm@e+#oJ#W4xb%-=WN3#w~3pEV3 zcwb_O3YQ~_g+>4v|F@h~Mf~h}MB{vbQ=*a3H^7hF(L@I#OApDE`g}g~PLJorj`ndX z!sPAL@@4@wbX8Moq6YbLZ9!w6e+ci9k(O3Ea|+?S-^u6n=ks}p^mr*~}LwQ=u#!N_3BMt*g<&V_e0Zb)`F$dP8;z=hW$wcR!e2)%? zpNhvy76y+C+)qm)UcQFURKZdbZf>l*J}^OqN^2}}gDUCIXi7(&eOwrUOmc>kd&__NPRx9`KQJc6yVAxr9aG^ zOOjLw-YiP30%-_b*+e&a3iXLeKLsXZ@)XWP=YG{bU%*q?c=r^EQ%-9EOYjs*k5G-i zx~8L#*4|!M{}_c#)_9J{@f1^gPf2k|E)`Z}_Me>36V3isj3VJLlCVBRo3GKGPDelG z`;rtz;mwx1wVd(V1O~0%Y*v~)_=b#hqnWB@iZhbI@fIYc4_xSoP|A;Os~4oIB#M-9 z%B^c1b+w?;ZQu{8dO&kRX#RB&<@^VaUUS2*1pYl*! z>(-y9rAMhVO6kmrpMdY^dCoixww$*#Y$P3$nHRA`G<9<6qLI35So3AO2f2vo2wTj% zse}og$EMSTX9!o8G>l2_^c;OKb* zhQTq(Iy8$&AmxGulFSdwcS82d3#v{wNf=B_ENfN2a9?Bc_#5HF1wh*uHC@oxZ>F3! z!Ixbie0=Q~NP0N|{zBK{=F6s_YD?vWb!!(^@Z4J(hD0}yD>2Eht!@?rQd1>C!JcuU z)>Gfo#aus9TahSI)FG52_VeuaIue8rsHk%G^PhXU^S7O?J=ENN4}W#;M`%TYGrmrm z%qI0U<^dH4VLGuN*5novOma(Jb|&^&DX^Nvq~(bfD-S zbfb_AW04go%Tv8jTTxe+9No7jO$e0nvb9to#$7fcE@S_BK8w)`!Pr-P2qw96vM!Yj+pYk zZRkv_lUQfQfBKZF*{T9pdh_*XCSQF-9tS5k(!YcB80{m9CHJv$61ODjMq+hd#RnrP zj!%;+qMw&El(M1ca#to9*y-nLZrhQ5F8`kw{#@>h{<+k&J9#W6lGtN$U830&Xd=9l2VdGsO%lRai@#Ve1B3q~Z;B=15 zIM>q$68}fAjEyVQ?BU4(0G>`a)>Vg0P{MpSH`dIUI^M_rN z>CYGR7&E>Y<8v4oAJe_A$3dUJR+=K-OnhI2yJ0ob5gO{^ps2euE$OnNmDskkdFNr8 zNrn#>^dRYPng6SAj8>C+4qgC(>4N_YHxOzIefrfBt%UB_xWYe&mSuGh4UKt@Gu!rI z9?1=!e7K_rr`XL!@Kk|k zPb3%c-lzFh_rV1pF7%0Jd^hgLGfbM47Y8z}5lb=V29^h6N$<@n*RE{zXq7%+d#AH; zSS3m5vpatdJhXZ5ew5lX4?Y8(eB=oZ#oukk=KQI6lT(f*xhh3YYlO$1hIW(|P?AjM zeC^E* zHP_I6A~l)26zOgP{Orry&c1L$E3=K4Ci>6WH~I{An(;*^$%n?qH(Mr`Se(g{AwWAa zI$z)wfY*6xRzcESO*kY;y)@5Bnq#t|HtLCz4;S`0sc*@G8%0)mzQ$o|fgNdcJcV8` z^}~j`bEI?(#qyLy(-JZ1&lhmrM}rD(tWSYg9JnPH8a!UA7#&<~J5oA0_6-5P*Y2IV z`+mi$j_%h{n(?3K)O9(9tXwMIH~ov0uTd?ckeAOTQ{)f9_zgwhxZ&KJ7wCTw-`-H4 z4>7DxJMu?e87tTV%|lPq(TRX08o#;fd$I)4b>D;z{z ztCh)v&rdz1cvJXr?(;HpCBj!=3Z>k)@VQ>G>s5iFH((L@RPWQ;;)WW6tO<#R$|I;& zBs*QQAcr>f`TUFM22$I|LO}C4?uJD@rXxQdg9^mb9M4Sux>f z=dy+vIE_PQd@($dw}wm^(|sWIn3YjM2l-#9s7o7aE}{i;K3+0%c&z5#ce%V!b}9Y& z{1+(wEriLq<%9-iVTml;2t9)=A2thvF|I9YsQF0PtRA+MXOYx5LzZVre?I?bNq-9; zi0s$oNfd)ICkRVo_CJ_;#s61#tncU^?)o=m|Nl|vz{)>cdE<(|TygXA-(Oy&^Z&A? zJC?p<$?hd@UVQ7Kf4k_L3!4kSx8Qdcd|>_&I{x3&@t^tX9RHvhd?LAry)8&8WP!@r zQ!><&It)c9#pjWK8#=CveESQ2LqukFTBmU9`QMotvG|yej5Uq142ZJOBly zY4jJP8GJl>BCi=JOR-9-fqNqN;qUfDv%hPJ3#n&v+d$%!9bcmL_+%>FcOUa-#<_(E zn`)8n+tob$n(}kasWan0FJPUf|Bk(dVrze*538LJD~0Eq7NZz1aywHCRpp^n$E|~` zheD>3S&)7xQ(jvSHHRKNHFNXALpddQ3$Mm#B@OGLSSlWhI3*n#6a>)w7dbjA`_|F% zmZmy^SJ6zQ0Pj_hJN^0m*C_q1xNm*m05Lr7VLb;Yh3I8LW%M|93Zyx4fM9G@giA&7 z@&pBn2eDbYH2U=COzUdq(#-fGOfBaFH2_Na5M%QMX1-8Ln^P2vG=oCE*4_B9egf~P&z^eBJyH7e1wGM>FUI{hDP^klNMs+H5>9keZ!_VMs45{hVO~SU%Z&GAN^d9J2h zZ=>1HD3bXOZIieOgYmAqEN^A1qQEMyuHZ7)4EZ-P3CCq-t`hVR%30f=FArK#DbeAEczH99}78UZ}{(mWLb1l|RC%&*%9R z>96w@b08;Y*R4b@|1~+U6skb0<=?pZ#u}=Z?>& zOeJt%H#o(cxoKE=9B7qW8?J2LS0`{{RH1+R*kStKJDNFPH_PS=yf?VPKvDw3Ekr#DID(o%7D-8)&7xWn^NsX}VuuQW=@^Z7W88Z7wd;~}(I(*fKc z{+*xCeceA_kS^Lxy$6RUL~&87E>Ebcbgf`9c|sF>Jw$fH6FNyU;|b>yFSGV_`UKtA z{Sziq#<&g5%9fCh-c}4rPu|My4Qm8|wdhYd#sTYh_cmodIhqxEob@cpSBO!-T}c9z zmWRuUbQgL@5^Pss2nH*ZZfUp%0Z9cCyDE52_5;WnqZb69d_}HSb)~XnrY;=lD5!1N zp{j?|d(29=HeADiq)1WX4d{ne1?uSqLAx(fQ+h zu6w{1i+%U5CcRtOytJNvCXQYZcJdWca{Fj<;*bfC;5I==!~n&SM3)X=ZfUq?0<8td zdCIHm9z6T>CfjzpBBMWlB0Qb z+%F`~nM7zRI)~82Kf{e)q+~?L zz(1CYU8kQ4E!C1Vcy)v^CX7%t`~QlL9Ua}{UH`u8`p!S>+=%`E%@x1B;zP^-{qp;k zU%u>>WuIR9Z7_^*IlA`K!)VC|r))$h z($a%}B`Chevg#^~Nb@+u+6rfD%6^f}() zA)|y#kwl51hDxJ_W`=W5LGKgKe6*@)?3@#qgII2yCG1Dhl0pAoFQJgTNrYtZ6&LuJk> z7NSI*t$b+j=@So2kxM>gJtCowYf zlSlMgXw5hIkd2!jrVDMbKQ-Mb|7A^=8azDEz~bL74K-X9bJFgdf=poXiZzeOuLjKq z3}d*tnJ3cREo~m}0$99C%$n6y^LT?s8?J2Gb>KyQ(fGf@YgwMhEOIm(D~!Q(4Oy2C zE|$e08m?41c?%I(w1M=;JUQ%MX1C#1-a;f@s5POFx(OkQ#VpLI zSRHJrAlaJ5U!vY11ilI-1$!yPcC_7zpFDDp62v5FY$Ttg_o(uko6p{~V#W;>&(`UK zs*pnYh6csQ2K6=vrO0@B@}-BVNO82?Nl!u9NXAfKIx_BnxMn_Pfiq@?ZAJ&TQm!)G zNNSH)dm!w&a`VKi>PqKm&@@`h)&dG+$YLKGuny2RD$$ zI@*o_TT=^T$hvJop`(#8K>-LQ+}4<-TDYyD(&IH8<~4p=yluG54>h;%QQ&|3iS*}L zJlH}^592)d6J4Wums;}JEZH}XG|Au0Qt8HYU9Xmh8%ZUyW{K5}*9h>J@3*8>(d=2e zk&Hnr9aAokKWz<>HUsoBZV^)2Ak&*w^s!+8)dna36`)|NqMqnMF@ao4`zj(h&*vLdsfL9+NHFl36UqifHTN^$k~>OviALV0@%!sl=nIYeFJ(&wbcvknfu%_{qd}wy1BS1GAeAoblNPHObwp zdav$YZA~CR$hpl3TQUHa zecCfw(5LlGa|Mr*$FTKD{=>DcNuJ3kPw`AN+{l%9CaRp(&YugvLacmi<8!uG->~Ex zahM#M;Su=d^yl+ipQvy27E%$XVdBhF>L;L50t-KAd=}Wy?`4%LehM_new36APs5em zjx(mmO0ab7i>Lw{l@_6dBO*fD1fsk2$|g!?1su8fM~%+_tegaI*N}=-s7^lr4V)4Wcri@@wLK0^Ga= z?H+z*>g0sZNb=$QA0>PREs#gBiy}M(*{RM4M)XHDcO*jK3Ru$kq+b=EEP}g69P!-g zlXo>=IKgwIKcD}jq`#%NKz)CFOR^q%g%MFI)`LFglK1K}9hDXT|J9DKbaX$^y^j9> zU+w(AI&bfMlXU<%x#EkZ87yfi% zl@5T{&j0=SgYy^6+c)p(j{lJ#(m%r!D#8zj=4$CTQ8ab(eg#mBwo?m9l<}RB!x-)i z_r^OiMWy7*uYy)cu$p6qyg@ZA4^F7&USKZWo5Xy;SP9)uj<&g=T3}&}7EHcNgTgg$ zAwAT2^UD(|h^j*qs;D=6!I&9Om!L?Y#mI9s8!8#2RC4o^IxJIm=|_V~EoB!UTD3GV zp~`t-z0G6MZY5Il^e1rn8_mW_#!!>86#?au@@BeHhD5V;A(f-z`UzFa>vgZrO$Q9O zqFbP_Or8hBCAl{IjeiZ3oB`S+a|B|`;h5*p83r$fsg6##y7W;_cFWexMZfa*h+LBQxI6O~3LT#b5IVLB{2use_HhX@I@;m_${ zHpajdH-Ld08gKsr%^C;_jmxzi10Uf9>z?6Pv*nDEC{uF#tK4up+lBx^Cwh;E}ltt z3wx|G`NV^IFPWor@XX|aUre5O&Kwc##+%8a_mvR@&_OrhNpeDo;4bHq?0{;e)-jqAI9i4-D=wJuqb%@oD_C44k!RZAfX0~G+b$Ui)kfuRe4AOvC(!+ z+ky&XV!S=RZrB!=bR1Hs33Vx&Z4;y7VW6R!a!t&OaP(2oPCUn(L>-+2%|f z6@Ke*IEx+!o1Ov>&>^z(jZXj7tfy!ZDv1YL3JPdxy5Dex--%O! zs%1TbP0mlT&25sJyjuqO4as5lUKwUvvOANM6T_8Y(zwMlk#pu1Rkx7SBJ$2N zqixwWtaBKHQz3aXtt~ESW{S({#T(LKomEU0m53j@9&nvGT%|;7j^!i{a z-R8q!W=dp%q42)y)K_S#6%939oj1orSR4-|40$C7D1dS_8!L=4ZNMTQeqynS_8bPM zc8u$`I?zygw~nIoZ4n&Myzms?OG_)!Y^*Rwyg`S04^**3PimJPdbEyQ@p}zd$&G{D z{3XEX9Hv>LjY<_*Bbv?-6>}vcOVD&R6=qaKUT*P|@llOxm0q$0r(g+3+a2|($972W z=;+xxLk|UQxK1lvrY>V2Rr+gN-qd z<+KXq8CY{Ucw1OA9lX?%v4~`|V3TQDdZn7I7iy}88=E|oQ=>>Pbx<5yeg>L7tuRKu zWUsby2rxDC4vZ2LiAYSdai9mb$o%V%vSEnzk^cb^|h6L@*)a3JQ3&i=ozqx(^_ z|G(Y&=baOsT`PaGvbf^)72jO`XUl8L-@5GJvUurpOFy{eUoIJ2(y{oV#lN)ZCyNRT z|KY-Z-u`#ff~E8K&o9sWC-eF`{!7PwX8-@)$iRfl402c9>eZy|@KRzz0_5>I+SY6E zV6Az?UQ`~&aLTROh(xCn*btpqO47bvb#7^B!sP*lyQh=~2~Oab9L+`wW5hEu z({QkuGDDXM`FiwDw806N`4cX1y_TS&cId7tdb%3DWe$1-r@d(7Q3BOt-@EF8icMe1 z^V%0>>nlEmBJDDL+_YFgM7XB)isJi5+a86mfMJZ@3mk4aP0Ipg6?G_MR;ZTcz6quF zn9so7J$TVL2QZ`{xLGb3Q;_!sBcO;6vfuznf@tOU5C9sUP+a>-+ zt_fByjETRWoIBdOiXnUoh$=EU**I!*#eoSW=LpQ}>Nru0F{f(s=xd&~k^3#MFoxjG z&A3|(iKRn7Ag)J|u`X3g3k!vtC)C11Avc%WNuNX^-FbBC(YtiRgb!_Ge+n-(Oq#;L zC=nyQtH&Xed)XK2Fp zo8Xu^cNuQLLh(%P1>9whw$oHNa6XhD##nC)bC_|mRDfd9H_}?ryhwlL70Wo6T!V>V zMdFGm6y0z6Uu?rGEvzucqTa4y4BZD2R^|vKk1Z#EFq}!qG}Xgs{A$kWPt(B5jVF2cC4aoy=^lYZ&7iB3q9u z52k!C_7V`C1G1D#<$;MSJeu?(&5Te@kvNFB)Mz$Z7^An$1SVwz&4^YNfsiO!#;L2G z4-(KeuU=p{a_+gq)6Y6`;cs~VABD$je$=G|?-x5Blug9=$ao zrXpRx=BR7spXq09fuHLu7|O^~|0K@2jDf6oOY$T*0P+J9YQT`XDrl=iTkDe)FTUhx zyG?8XhcU=)Q_eJH_7H(hNQ3My-Lh<99B-Xi4U!I_!bD;h0;^@GJ523)Hhjp&OAqr( z#3u8SIouM81cD8-jD4jvHHWkH9W%C-s4j^N&&ieKXq)rbnqU}XAtEc&bk0ebG5)myFRZc;isQLO2#}J*nWQDi17j%JRb# z>S>S&7Wg$*%S{=nyszHq99YR1nX{%KB@@hw?4Gd#m?@2n!H3i zg<(8)`bL8Lgbd9=j^V1eGnxv6M-iW`-sD8m$3oMM`jR~9AyOcnI z!6BAnMiWW*x-go{Z<(+j0vtG`Chuk741zUvE@I|ty% zgjxg$$=`PW4{vV*XZLm0c}k^yrvo7&pu-nq-UXTPL?vvA)!LG_A{y^#`)32b>C5}1NEfK}O` z0wZy+wrlK7hL++em|)yNw(-*X%)Nu+#w=llc$cxjPZ=`=2vRmU(qf2;9`2xj*1bK5 zHB-%3B2iDJUq0sS{uI6BT{)v<>yw-3HDVUWL?UykA`$y}y9UXKEmf`$jD1fx*p@22 zQ#=5SWFWZ9*c&X;cmUYawG}jV#Sdpbjr!$mAi=l3du)@i();6Nnt`QPUAR+y^iCFB z+93x%Ve-}n9M z(!X5VT>4f%=AZ1JFO7KyoJ&_s3cNFoD$lN~U$2j8CH&v5NFe@(pfy@3iTG3n(HgNx z{yI-Da2C`Bm&AOsB=?WS#5eb0(K?{os8K02dFvx#%t25_{&Bs?xg*hFQSdMmSTZNv zpy1(cu2k$@7NK6maQDo&AON;28ODnKT88O;DR?Jt+UCk4a_AgGw~zQFLo_a2j9iV4`h2V5tHIz?j)ub^q9> z1DNi1^cPCM8#TS($UC$)X5uCfEYVPKU=Pvy93n(nFCI!)SsB5^DwP}~V@iONWb;%f z-X0KNcOI2}=VQ`Y@}Lq;Flk-)HP)!B#-b&Y3^$#%Y9>Zh9vD+{oA83#!m|gB+SG+N zCQd%*V{g_HO?mhRZ)j*(H~_hn$kD-ZV_T7obf!^hYw3Pq8gY-*D9FEZid9&%(-)N!;$!bMi!_!U5pqHtty&~K0^Vp!gPB0B1g7oa zm{QRM7Yu3K{=kt>%?s*2_J)fziZj~->R}>FCENPMuMCVzmjXEiN;8xFWvcr&kdRM) zWYfV7cVEtaq+v1`-cHOpD*623C>BFhlyND2WQ;U2OJ;ow$*fxesq*MeCIS(8vmuHm z`0V)1_^3l;AL09M+vcVQ@|3^~#T{>)ntJ9AEqVH3&Yjb~i-Ic|bUf0U$WVLeX?=Kr zOn02HIG?$E>^jB0XOFcg$EaBO&9SRN-M)RNomxW4Jl0|bUuuMGAF0odKhIGWC|b&} zyD7^D4-*xXK@jngPgeJZ%_Fmi!Y?FoKOMcs)OJPRK>p+_N3i!k<8qW;q>va0rr;J zvLq$RE|#K3K3i#YOwCdvB9et(3m{%NKY9FU7}LcwAEFZz%cjDBUVG-AFhtgp>Ql0@ zc%>OYL}#TjI`+W;7<64;E3H?iEz5@>ac!$Ybl z3VXFQGNw)^;xNb;tHMRHOg;Hb7?XUNk3%QMbA^aGXjYivk=~1lVMYl@T9A!*ee0uR z-qj?QoK@@U-E-yA33A+g%w+XEc!{hm_pztBIbfm8J;Y-^G`^EQkCIaCA07LtSu@I` zB^6a&@_3hx3j!uGxjsY4G5{)!$kI`isghY-{Z-5rH80u5$9XdfKzzJOnPjauS{hn)$DbaHn-~ztG>tS5fS(AkLA#Ea#T@Kh($% zH>vC%RIB39nA(nXuLBKZYRCw=pM1=b6kXpW(wLaAniEGuAvP&Ns|8DDQtX;2Q-3$w z7P=&W=ARZmvnN`j>C$+NH+(i|Jf!;}k>pxKBd!dOH3C@Bcxvpy8mCYxHa6y+pp3Od zW9K!>T+JkCc7AAcVR=;Ozcqp)^={ra4-s?Pn=GL0_CPd&t)!iEdb{D(h+tj8y|iA!~>zUA4hmS>%O< zF$X2Z9d{%ey{eVczkDAOB&G)+>XpK&s8TnKRlt&W&8h&|89KMqFWfrOd|47N{*Whq zGQ@7OG8w$MphD)Lg{R5Nw*V8eR|c7Ayej;9 zPa={SVnbptu`8{DlafQT|KG9Xt4lWBv+121U)}hz4S%}f`VFhspW+RG@2uOs_HXC` zuyV~&^8a7q9e_Vwb=|7vD<582T=Ck9k1zkT<%gI3!?Jsp{b=8%zE3W_y!6XU{+ti` zZvGh>i^**+aqU5Nz2rH0=3yVRxy_Vh1wlN$DA7pbN+;lcF8AX<$7JI)&|*(X$r6GJ zk{?+!W(jTt5F#8wnL64ypXj5u{@Dj}0tk8N^Zkj>IsuySWe_{eJMEjv&yqwY7)74Z zSWJI&`%&!(_%5gJn>gL}FwJ=h(OaT%;+JvDm$VxR_88 zD5m0$vML7T0`~u|G0%sK9!pDu@A>+%YlDaj zCjuR$*gyH0l2g>RApX!Bu$!zrvX`KibuGY8i%G0b@L1w?()cY=g@?7siHV7Ckwc8Z ze!T%qPK=Ft8#3cC(Qxh$D}-iHOecpPC`zp?{f3kjE{vI3Z&dsNHGOFujoioHP>F^e z;xGFc7Fw3=4;6_V;xY8)O@-kWYGb9il`zY$>W>S6b%AMy@B2H8#K-l2F3v}Xv|;Uc1>k9{f0 zC53Wm%v0dpX|r`JnW(}gm-hHk9~VG0N@y&XHW+c5Q_xiDT&16e$?Q4}Qu=p|c`{r& za1_?yM(Li?bl>MpsXc(0O{C}afuPn@7VbpXsMm+a27}NFr+_w9#R|+|P579%NBE@- z0}foGF_siLXW{hF5!VnLRp|MG^O#+N*4d96YM>i!3vVzw8fk8P661nsPGe~Ps+OU# z|84#VAE{-b!mQTW)u6}t zVh&?(nK*|?5*edh)jswHN;Ia~dVZ;Kh1{}J&2*XovF1g)$JAXWW;Y=B>E_W;1`aEd zzWf|HoPOik4P-8bbxIiMv!trBQ0g6kL9bpiGDO^`OtbG=p^j3_2Zb?b^Qqq-hKdYA zr^Fz{6^3#Wb_U6;nAB3B>HMG=IQ~2??*9H8$6^l|&kQ3nB)sOgFQ2=hoSXDRZ`3X_ z%ef&9)H80lp%H!-V^uUj5lDRlm_D*}%=*Z9<~3!yz#7&|LqqXA}joG4EhxxQT{afeCjg z6>PA7D8Is(m*-hkz({KEEfZbAw1)-?4VnY!W8QAfpb|}%G;EXW0*2^Ep&z4#bQx7z z?H`L>W&&U8*()#(myZjA=@=q0$(p3wg-s!%r9d(TeDOAb-1nH7)!NRnFNJd-;r@&&N&x}uhJnr32~8xz#bJs0oR#9py;tovB6BxCQ0JxuTMRGOwZZan5QlH zM$xHAG@h0zeiVd5df}k8&ZD}#>1QE5A-0!^P^7fhr#pAk56s8jP>DtdkXrQs1!pjZ zbwIX+LRCalN&{oDw+weTk$*kf(O;i@^eHMhee4aDXwVaOdZDJVrCSXsQa=#NutgbO zZU5L8!$yZK!zzodlMkc*_}CjO(MU-?VET_{kex1d9F{QssenO*0hOA`SOiXwe!|uZ z=d>O+=ANk-Cf$)}$~SR(2jgNPFfFu5owCjpg}2gvz7V(y+7E><{TOpEAUS-@-R21@ z(O88qFA9a#BAEs=gD@tlo7zg-Gw;J=pATTc&QKvCJL5I-3ViGhmS`~65Y5UoNN`20 zHQ+eInnog3mCE4Q=VtI$C1=0C&Yd-R@i`xR!zCKK-LB7gE6M9=yrBRQry}zcuwR-5 zhWb!Py}EMCT|V{(OEhkX-V_&&>|^Ilb=l&Ke9yA-|KGOcxbpwsyYVXTl>=50v!NS8|MSW(toTnWj;`3U{F&voWxuoRlYM{G zH?Z_?mVR~V20rA!;6K+jJuPf!hz*kLf&Ddk-)nTB@G;xCvTP= zb$9~^9H=!pueDW52b(`&TWn_tRmfLY)eFD!L)y3);6z#8`L1qIL^*{mdf>p4usKR( z1dKL4XDrO^)>;iEyvDmV>h0*`Vt9>|h}kr^RMomQM&BY-Y!V2V zm8VWjoVv}&Me%6#P@({{g|v;r4x-HoN^niqn5x*2w^Vo^Y$}0l^R{ead0g6FD5i55 zj}9O0YTh;fiY7{Xo*4grge)~|H4%lV7x2mJH^pn4o;|iRdbOzUW@2A^QOzrTT+GBq zN~-|wX0zt^vfePo2|^weRTBrAo=3JbWIvz*Xl{?(Gx5ZIJ}zo*jb3w0Z01J!%WTgU zO0r{^SW3BUVoBYsA8dLqS(;b{)Gc^Vi$enQ-Hi_CpV&lcA^fhjEYygv0f|3ervyv8 zzc$+R%(Ap&6<`ySyqV|YBAJ9fFsTRfoX29|v8aSE0m9En^LyAl+qQqgW)*ROi>q4o zF5ePpU6L*6aPx9n+Q0KU6&5En^HyMkDzQ>Wo!` z6~NJfNbo0iMM9_2g32ggjT@Wm1GqHSZCmJjBd+g0$^{k1JmYOX@bo7%!qIF8XqR`y z@@X=xtaMH7&CPYQ*rwu7p{2{`zu{x9QaK-T`V-Sw#`-xYZJ6Qq22Q_t3$iv{D64i-dffyUQcDSf%=jb#o+QG`y) za)09~yrDjRSJ3HCXs*SxV{*Z1r+JtLA3oQ%^0L(Pta4-1o6LlQgso&}Yq3vWx_sf= zVf?NZ+y4-E!S#nNLEn(M!Ljr7##dQ2(ikm-NN;RfzZn{P1(VWRVRCrb&|&%PiRhQ?-CL|=5R0nJPMWkGLeRR$DLYucGy_%tRsI|tub+o;6L8q zjD2TJl9^LAGTm1ro1IG|>nJT*a2eioIOE!7rkPLEQCpS(2C^sX~8 zqY&c*D0yCdPXbw@_@j;TEiT}I4yXmcDVh|b}Hm847`oKB6G5tpInV`r<2m&-)`>MCCaY+g`P%W> zuu%Otq5G-Di9KY3RZT5axpMh6-Jw3_tyG4UXskzo?{>i<#y>6Rjv5Ern>;w%h~C9E zGQp~*muk5}oKtntUiX)CXJ=rE#x2j_brc*o7Pcn_u4>O=PI0s1k@t>$C1$1ggTUAX z08)&g7v5gDcj_YTcAua1uk&W5WP2z3MhpI}P0Kz#{mBE9hh!@2fUvi0b`UniB5-um zKB+c5_8Vc@y!5_MP2L}Q#Kz@dKXY$^!=I9!y~-D5W!T-wV@ z*RMKjiNQI0IsK-jNNvb04j9-D^82DTNv&2Fu}ZN2Z&dvMZ5z*S{OJwf+3?Hjr`C_G z``dN5tXseK=-R$DUt2x3`oOCHw5q-8O~n4+v*P6yKehZ{E#JTF@0N9zy|wS#eZ{4} zv-Gn|CYIdzU6}tvP0zLZqTkwE^k^fkFP?8HvhQOO;oWNIjw|OLl`~XQJd)9i$>RmM zp-3QAz_CooACH?fYqeA!YI?5K7sGYQZ4MgGO;ar3V|HNYK}%#ZJf&D07^mnXc-|CH z!mLKGCf;2fZobbJF7URM#=W5N#pPVKF*~yJpd~UqeBP77;E)j?6K|{|VQI3&<<1*! zdb(5w$6K|fE9WmL@?v8qUgv|0WIW{EHI;OJV=5`bsw;m2ID}OHmz&C$+D5``I0bmR zSvhW2FGo&4q_Z#&X!a+Z2$Q;AlWd$~7X6Gkr8EPLOE)AZW2o5(6C3XR{u*89;3s?(=mm1Et;`Of*pV^=O73-4(m zTM}`3bg%sDlyIZoNZ~+$V({_E0)2K-qz*Mp#@4>*NJB}kS0}&zATJC0INw>Hg_wv{ z+3imY3bcZ#vK$fWS1EVXL#DV7uWJ?qs#%#^IUAtzygCvljOm`9dHQCdCSo4Pb2($6 z+<%l$)JRk%feKa&O4_)tS(pXN^9BNy$o6s3p!yS($DzG0ZESim=B;K!Z8fo^0A+_9 zZ2njP^|lM^)A>)6msn#fZZZhN;paZho9=oK5EcCgFKP>XAbkn0|?i{^2=tlkxDsppT z&nWW4Hz4LwD;-(cRO=MII2jyf4aqQ0mwLzZzTm^>XZ$?R6+3HAX8j4LPS4uQw-CNb z5o?FYA^H+VB8x?d;#ZsMtD?CGUj)xOOLY7e{Xe}h;}46Ri*9LLhw2wDVb4*9i{)5f8*(9g%0Red;d*|<+ICsv+dCtW5QG4!qMi|uyumfLFj}zef6b@i}b6vaWQim zDb)}{en2s(*4k)yby84hLZN4Haq;4uv-T^SV;vbmDFL3weMH)x#ymZF#(X+inFx^A z|J!V$12~wZ8r%_cDpVBzfBTYsOE#U@^ltM1uio&78}_aLoAvGWo7X+Q?#I?%So{7p zzqjTKtEX2VUcG$PL#y7o^5vC3vEuhu{0jB|H!okiY~QjaefRXeW9iFFuU_&8e9V0R zj5Iw5D)Pi$#aT#!<&{%+`#6uhA(<@H(tULu1(^DsDCNquZ6SHtN_1-Wp2&WM3z083EuZYe7hpvV~ z!hj0Xe2WRn*zS-)g#-QU(kERA4UIk<%Z3JZ+`OBgQ!@S zUw>W?!gu{Vuak3zIj2Cz`4%@9FOp`TGxu+aW$nFg*MaLLSFt1Y2&UyFSMUcQTdnk; zBjYJm>B#WF0blSTjGl8o&L?@YZ(+ocsUF9Z;0zDT*>W%`xF`I~GLryV9Bq0|RrGl9 z7zudOx3rbRYvY1=iA?Qi4!E<^05Ls?L*U3kipxDfdTqHh+Vs4t43HBnK)M$BxEMf) z#h?Ja1C#+GTMdxjYwD;$dkpEg(l$PczC^?yrtEe<8rd9mbP0g{kw8ksRUUf^dnm`}d=4WPcs^^DLMR_H}#|0r1ndz-TN7vNSI*Gk1_qeL5NzE%G><%~8$V8mFmQ$x) zI-DMRM)uLkOX-INVY?~Ihp>p0%V2!sT*5!EEvpaF7Bw)o9aunZ!gFWpfsbSDt)DI-HI39Sj<)*z=zf zL5Y$Tw4_wLZ3$|#d)Q>jq4NampjzI$8#OYI{XoPVdC8rxOQL5R5 zGii`$#vhbZp1NoH!{Fk9ta@5NwuSLed~<_ zP492wv$}OF(GZ_idD~8((m0Q}nKi3U=`B1GB;I&tmFh(zH6YR;so409rkb2=+aA3+ zyuTyFlPAf$R8QIT!(wo|h|7ltl!0dLY>i)hub&k-fpR?9Ivkb${%f0bKf!R01{Q8v zp`U$DUQizwgBvMzXYC8Y7VTUVE`kCCTe!s?li=XBO|?ns#$Fe9Z| z>LKD{m~mazatuD1>2mc@Q%zEo7UnHV0F)3&it0Mo~8l6M0+6S)i{d9Wls6^KqX2d*!t!l#Pc(NMvQ&XIM5Gxv%6dDkoLP zh3J)ZOcZuBTJ=ClXj|(PP!vkj$4-$W;Nya5iL6W{*U|)prn*Oq?I@31`k4BT5N(O= zPr_A+)Gd_M_=IKjF@G5|<`S9Ak?<6Z0g}S~c|}`zmqq76J>BYvpV<8*0`lTXNgGvf zCu^MNY-WIo%<8_vrV)ok?k%2#noQOefa+>F-27meQ1fLGV8u>04#|;$L&n8$Xk^Br z`E>(>C1(%?x2p9c$8DrJv-b&Vkl@hz;mpSc;Ubw#gc zpF~PZ6R$q0{$xHbh!@GMNJ`zz5UxI-Jd&mbYi7|EDVq#Is<43Xxqwq-baa#>+B>}md_0VczQ#1njFcDT}}$h-Q}FH8IPx&{}x z@*p5uw%&c$Ho@s?{r}&#hj-N{^4bRxNJ|~U-f;pZ~fAfOW)0h{FD82pw(xS zlP*_Elxh{M6csJoIFGoP8Yc?>ni4i-G(}2@ek)n7lBrThe=v!GQR?B+dZW;Pu;oci zN!O*lN=-GQWPbR#7{o+rXIN<qi%gdd4e(Wy#A9~F(UvDOC6z_NuX$=WXPAXE zn8dB%hn-z#XV~yi1kJ5LJt+4ZZ3vN32r18N$^iMVm8s4do9+@!%Fj1Cw4(LsE zXOL!FINb5lV0#n&;D3qnUEB2JrgVd=%A=xIbH^z|(6|`DL@9UWK0VA8F^lRL%0m~l zWeb=EGW0#iDe0c5`C%c)ZF%Msj5C-_l(vvF<`o4SNQx_!=Y-p#jMDHGcB?LM#dz>B zC}*;oJ}>>ip3FPY-M=r59OiYokUJDt5|<^2GO9_s15!N~hMJzNwA0hCHe0sBUQfIw6U&yz78+*D1lpb7=Z?fhD8|vHKBkYARPril9eM$b$iG z`skP^g`^+mS>*WL@StT_tn|Y?d#L;OL`=}EmDXU(iMaDgMd!5=Atkg+ z7~BwebhkGNdt4lZ_0(k6$NcSj`68VnpHbePHc+G_0BBD*psr9Du3SefG~J=Pif9>E zE?w93)*&&mh?eUDJa$yl+Q-EJMoNn$#DgMG3xNZwY#XU96hjn?2b$hMBwZwg-75_m zo=m^-ppWy2^%-0yN=q&<@4gT@D6mPgBN`_KV2Zr;6BhCoB1z_{hgxIu%oBRq&c;O{ zMoPA8O!L#!DqqCX#r5d9+1ngMvM8<#Yl*f*UJQ;DVLnRy;*^hz!Zdm)NrBsGWs}HR zVJa~O?FEC7yQ@x0DXz`YraFtrP{MpLNIZ=ON#Zmggt9k}{OR64iBgcBLLoqwQh@a9 zC8e1(720_f2bu>3NYo^_XcT2{T)Fi&4w#R5vUSEXI+<*;1L~h>ypdLfrL7KsxS_#9 z6{vD=c~g;W4V5Otop9yxJA9n){C6{#D7zXt1WdepVB&+fHKgLTN&%EN7fE7{S9mxc z4pS>8{&zY+j_k*+8hQ{mt_!igmDpcapKYs^9j00$nVJ*+d0Au*l8(CzLcmu=vcOv z)XEJuy~T)!ZqV%U*VFTzr;Khp>EnD*DKwSH{5>e}up?BD%~4b$6T5?INZL;phnn7M zBw5vD+z?7RK0bZ>x57Bju}ENvOdFNLWk=JS8O~il9ZV564Q}V(XsXqS+?L+-Piam> zQqJ9`)Fk;m!VmN9)`Zzj>49i03;9a|IR0mxmlPzSfJmUL@{?*>?>*xFc1^5eVz`(m zk3a0=g1Cvy{Ly|#hB#Ffe>7n+-tJS(k6;z$IBG$X+|l4EDt7s`ql9Y2ZTw+D)NV>5 z{Z#RGbJ`%(Px(`s^hS`mh6`}&?MPDSgpN+E>N#4a@-mr?^PJ5z!-)(>e>a{P_cpUU z|82q*sdrOTjY-6*Ck@e-2Rv?%$@|ZvxuqW#Ek@8iOFMhuxPY1h^*+k&EL@qZ28UaI#OZ))zEIl*PJ5)10@i#y}Y z^XZ2LLAxnAujbddo>y4I1ecVVqs>GW9gNZ%r9zhTPO#+)3yK#d+Z>xqcaQ?*`*!Lq# ze{booC4bMy{Qv%Ef6KF>KDo&sp`|Zzqfk;|$>}3LX51r{cyWRDOZp#an~A{dPt3ly z#}%j$CuWcHnxIDsZJvIa<=UQ>=Rkcjywpk^BTy5UXjIn@V>-2Spb|m(%ZJt7-(kwK zs@3WfJ66^_&CZM0w3PI;dD|z$L$`Fx6Gs=uCSQKa$6g#683d*P?K?;-M^y@;{~-PV z;w3ArK=>g8;7hHy8PNOemD{VffkLUEfAcg)K?$184~}8_T%{6#L0_cL5lGs^FHZN%M+DG+&tY%2nEN-ErJYFL`yD+rDHemK4 zz+`dqgV-&|$9_}G(wDY*7AKY}Qk}6i+@rN$!Li(iN#BXzv9xN$l=bIwtoc{Fz~5KopGmbAaH7?zDdV2V(HZF~N=G}Q7Y zBd+VB{}B*r=<(>wuRrDEJc>1OqtMDSk(Cim!**|y`k-D>w&AITmVQ8XV1IeE^%h(D zl-+^;+bEIOftlswf@q1%vO7XOgdQ8>fLV5j-riCukhki~#etUh7x|)#ur0h>4|?#!MI_2r%-U}9L-50Cx_ZO<>pXYR;!P;yr)Q-Ow??a?)V*(FTCXAf_RCH@;t@I z^a76Yhak3&pgdxN(hhJP+j^ws4Mj2rF$GIXZXyEZ<3bE3GECd>GL12aZA(Tlfj@k7 zTD%6gR&BKPrkT5ioXAFrWWNmt$7^420LD~3`I{OKk&(uVH|SKJ))hguz<#ZM?R>+>6dIVv& zrF1I{6X&+1xVUUfQlRU@t@X3!7B5Ma>C(yYF<;DN$capI>#+*K#kplEVOvHt34cQ^ zZzGbd59tlniRVsC9D6B@`TMjB&WX`c4jmrVo1Qp)akd6IqZAIZH`G6*+&|Rvz9AVJ z)pfLYy^Vr0ALrSq8CoJk5g#3r=_)jsB(fJMpi950p#+jREApKAS7dt;*Kf-GP(-;IFCA#v6sk*rnw9i zdt89r5t3<&gAl6bq?C5IyeY`lW;mjFd3A+t!1RH6$0Gfbh_S^5YzqC7<#r|Oo-%kq zcmlYAY_a|yG2wqRPI?6ipKWmo`8dx>=niA;NR&#yckhbApzvcA$GAEye8!_A2U{y_ z|0lmE{R(QTy4U{qF@OKhz)O@?d+%pJfWB<(M(V~DccmhySQ~CF50EC#-a=j~kmw@P zB5hm@i;2>7mlOzfWnG>t#UvC6y}7jvI0er_E(6v7%;<$Dr*D%-CH=4%&~9Q~^dvT# zaUxz>(2(e(x?HLrQDgg+|NqVpXV67OYFE1OAY3m;qKQL_l9H`Ql zW!7W}<G)vrsaKBcZ3M<_Gvr|<8rciPhuD3N zhB=D4z*$Bo0gUrSkI_fs7Qk$>V=H~tX{z&5Lknhc5E^_<2ClTJf|!y z*cK@z<+4`e%o!hhgC!aaK>0EvW7hndPzmh-gvG0MwZWF>lVyC>fYQDD=>N%Vv-bY`w-&n1iR6zR=0z;5Rq(>KDH%*$Lbr{r9DEk=e`DsqRx z8QE~!9ke&8az%eI><*Vs6pjk*rMBd+kG;_%4L&(?tR#AU&G2F2lhc|JEwFhc2=%3w z=aGHDj4BQ?$!ruM*daC7S?&O|0 zPN@kr+2l@Iv4v>oc_zThcCK(J)ymhkegZJPas;lXEE$grflJ{=Oknm^}aSSVu&Bg_gB2D?=VI{EHqTx&Zl#pnkjpBw^4hdD< z*HYUS6Y_y4@`Q>DUdGwBpLH4g-nMGmyHPAH_>O#pBR0TtK zXUki&e85B$Qlo^_P`#Z*P+XBYLNNWNgjlzRjbV)%KkpMqlu(D5$|N! z#a;Ob6~8Rfl`$KEr$f1!4jm5bFyrI)x4iR83foZbK`iB^wsQDC019f2DPRtenLn63C6phRHap%AwrL0i5kYv6?2 zi~m)&#r~EzR>|fL^`(UCo0agf2Tmd|54o+7g>dABvcL-sKX62oz*a_fU(@n-Dk&C) z(+`#`t{Fm=^Uqx(;9z=!w#A}ol#WWtjmInF7^Zs5uT~yxSre7*epAlu9rYiLN#PYI1JtOu4hSHi@1vYawM5@3^bv1@VB@Y@N8;^Vqa7b;h z?rps{gCTVaBSedI|I5>l9`&)u#3cf`UG0TbgRzSaHs~%QjRAR9sqJdLC*Wv*Z-E`U zqOU z_j&*Cuh;(O+BdCvdd>S+|NiQc)yr1hM+boOD}QdqpRCxm{I8dfFMr3fSC)OW?~nTq z_AOs}eCdzyLI2eM475BK4@raR&$@GK*HNKfy>dSrS!155%w3F-5RMs6Cl-Bm6s z?{-;;iIaknCjp?x8PNee2QOL5?7Mn#;;CDv9{73~b6fx!R-!3icNps-K%r!RhHXtc zBL$0G(27{s2U?zcm$5~&*y6;o=MkV`><#6V^ccO?I|w>koF2P?XxNSi0Jb>u<$;z` z?xY*WDWuXsYzfQ9ba^N3V8;x$M2W-qI+xUr#hnUYOrhpZe9h)pAw!Pa2l%S_iTN)@XYweGJz0f)CiL$|kIphgzOm=Py%n6OkgtieYNMdMb?R#>?X@(YVIt$-KU5;F(!Ye9Blu zUhirtu}*(#cY2_AGO-`1YlkUl>@W+q+Zh$4O7{3=)(NL5@NnM z@x(VTU*J^%8*?^1PQ&0WOf=+U4D5Cn3hqL*6JIMfy5F#RsIR5`xvsUM@nfwxd0gE` zeaw>?8CIex4;^+*h-y)=*cY_0Q|Ck6@|-UGowdrBTb?k-GqNtAYB-FF6R$rqarzY& zJ^P_Idx@SS&F-)Uvf3$Z6G3wTxT_>Yc#>BK8=nfEBF~yjo+5&rK%YA|)uI5($5?Wb zZIg`8MC18X1aSizBFi?3(mW+b@Icfn!!0Gv#aYE{QR5m!mOPeW%-NJ(XikZ4ej~L4 z8EeQabL7;-m}$)juVQte<#}@WJKX0>A9CQHzDu9zV{f=fgM0Z|L;?PM)KQsgHSwJ7X=;;7Wus?=kHQht@}=ir%BhNOK&qJ#bQe zscR~^)ZpEwQm5?LOB#Fg7HODDPuK}yC1tMyMrn!EO|mpfwSBE$3t;B|-9lS^z-V}T z`P^|IdxIq!oU+#rq?s(ZOBOMr3NR+JTHe|6zBS2BPtg)>6zmMA$(kcb(r<{`1|h5+ zkGBv52VQ0_)j;c40yp6@L&#LivRzJ{^fB*jv(sbL!6>1T?xdHR$W7PlTIQTmAd$Kh z*dcOMDer4}ry9G=mY}5Bt%}o5C22PH#!57}_pBV$u@EEj@8M?^66SgtU$(cYNty>f zooX4^1KIyR=B-i2Rid%86`4ZG`J9lrpG_mgJZ<1q`NGTzBvAn7JgA}J=~L(+Vw5q` zlPVVzlW<)eYW>nIG@Lx;i6@>_P}0Yq6PjqKE})U9Ow_=et~O1nE>`g-FY2C_H=X%_ zC88mP**zt4(S3i1T|VcG#oyneci5$VSTxL7lBl;mf|F0?iK3xZRAFy6<69pIRn-Fx zS8jPxx|NN&TR+C)b|f0!8wzNO?%CF-et`8L&_FPZ#y0y~YBQsICB&ylL$8#S&Uf|} zAA3V38f{3Lc6b~Sy}&$g)P|xl0!7DVln`$$V@iljZ#@E0nmY9uOXXv(cAB_KG>W~3 zl@eP>4@DGt;~A-;XWn?5Z%<1-Wj1fdYvFspLh!0IdG;g_KF(dG1mpzegG%qVy)G1V z035&Mv2YoaiAml(s^Z?3wU7ZO?DYy(ADsvMmD#ShW-|pK#7&j6Vq}@G%%=`9@nPZU z6+EOnZL?`*HQf4S*Dk+mt5S~G5cjCJfseUoDshx(OxX_cHgUzdWtS`9OLH*N@967- z;X2g%`7StCO11hWx-LtFv#~c^qA9D{au*z};c@-~$1G|KA{mRsV?Pnl;#!d`SDJna z7u`2~?2VRaGF9!a_3`jutY4~=KL}c#-6mLBXxS zH3(<+8fn{e1T!$YiPA*#)CBo^KIZr|GR6{(+_m;RsB?y2_=DoC%%pNVahR%={^7PV z1vATs;#6C&-ek=CjE&c_^MeCp(}>;WlJvg`NkwAOK!NUi)$^5Ci4 z#k;0!o`c+v)bJd@v=IsM_1EMtyHn4-t4&r2TRp{#m79wEMqLu zP@y06GGQS)&}4XA4SgM{h@2u^HqiF;zYL4>Ra2G|xqmkH#!57n50w^-(`Ax_{j7W) zoJ7)^+RFWt!o7_Goh`&%C<3?TvDx&;W=@_HUiO`y8Q>ej}j~Ju=2l zA+SRpiZbBgWEW4E0yG!F5{b%+rdwkOoCsWQ;={x=zCqzTmZ1Sr8x8}s&GwpxiM z#_ydoE-kDBjQ;Z=AKVo2{ z+-b?!gfwGrdAl1IyV&;)&al7~K=I9%cOj>3m}m^lBPasnK5;N~ZFDwRBk7{R4)Inu zX&!l7+2@f$P3Do>hTd?I#^#Z{vN(@LpGUQPFfeKYcC~J_c}#Hz6&)33u$FUG28L+& zpxMh9V!P)tG}yYqKtiR_TX4n`D4sfUlt_k;dE1bB56mjL>p97Z%yb&HB~f9#=})H7 zkQvIYOcO8s#)rGXw&JvNFg}b=VO$KDlNlHmT>xXf3{1^WOumygR~%_wKMN1RL5VIo z7nJB~To5mjnZ7}gE#R>kvA>ik$7=&HM`y(%#Q=u_p6(NEM&w6f`sK%Yv(m@B-7#Y_ z6Pe;(yoTsgi3Bn3$grTm061}1t&Fs;o5de8q#(Ai_iS7cFOeyL7)(Ab9{Qne7wk$J zzrmkkLL;qfXW=Q?$iKgj3*sd*6I-q2av@c({D~>5qI|nS$C{bGl zsg7kPg=g=|(&_18KE%h~j3pYk3eA;nobf=qR}yd8y7@_5}IIxsvo8^R|sh%>gXxvD3vS}2il&a81Dr& zW7x=6lFAF)0dXHh{ci4} zm89_RBHO|z&kD7aKt=&~$=H$58fbe0W5y3zbM$vqr&J%i&RoKnJoQ{~gd`e{`KVn& zigU=HZKqs)Ot{Z+7m&9$(Dn?*42!&vidv;%Ir*5~sX17QM(xJTnP^zin4u#LYB(Ve zvK`>dlNd8BRn1@vPF#95jM<%0KtM8;$h>V1I< zdG)56XzaRuaX4iS81q!dj4^fVoP6}y#Q9@BE&yhf z0#j}R?dF{^tTcCc)LAwMul=5S&d0pX-nBW5Qk$LR^K8Mm zv8$D!?GfA2L z>S&4yb3+{rpbI`ufg6rR|%M`&s>gG zZO?N|D@Nc-g6iw|rhM!TmT0s;g4ydUR;c+rVm@g%>S&io+Mey`iAGv6i4T%n4Nc=h zXo1GNhRwt)nV&}w|7t(dc%X_Y?`eV9drSqFmViwk(@jpSQpLj&S$l?7&_pi;rFxlP~hT zIhM4>E?JaSI-Y)G`i&z}VG<3E?-fuk;G}0x&?2O9^VS6JSiEk;+iLsTZ|{QI3KZcm zK`G_H#s#5t%gE~%QVt9%I0uw~3KH#zDXwV0Eg+$n8B+xz@e(*lHZFh^X;}JjO&Jtd zhuIP27%B>-ht=VV#zJO6E0>1}L?o8#6HL&VZ-p_t5pyOm(GYi)4PihiWuFz27DHZ3 z3K8qvQQmkc2?m^&hNP{0`i+?zIv>etKnlBg1{m)dnh%UCqS(K)?fr(5;-W&Lg1#*4 z9#=o^w7Fp9yIhMNKZ_kpIh4&z?_Ery!M1l7${6B26?g_zy=ZOhQd|;-e&bcPiAH&I zUYCk9fW{S;H-{EMu7QQX^hn2W+nWj{B@BxRJj zq`Z)vQ5(BNYYuaXMxi%1^o%)X(@baCj+RcWGUdVc=2>8f4H?daaeV9zmT07|dl1LL zg4c*bV$1O*B3dZ!YX5+NML!Nm^5fW+OY=2n+o#`@*obbJM+nbyp|y%dI*5j2!Va|G z5;$@Pvr3tZ<%v6=oH$KwfsHwPBLzrzB%1Qz;p9HO?_c)&%l7vDP2bVJ zcP@Qx>BpD+$&v#-&Htfx%ry))F-NaaQ-;oQUg6c)b*Us1Vd}!|I?B2!BaKe9Kfwt* zxNJCNroHgSIdzp7B>3)&!)?zubos%NR(OTj+ilY)9`dnk*XN)m8rNQQvltjNX{w8? z9{vMD5}$J!J+M3V@T#o}uE5;G&rd%3q>sJf5)BVyBlu;pinT)7vx<>@Jew#q-T`2j z#N0#8B#M9vA8OODNZ<0YH&~*7z@1eG%Yh#s7(?`y}*!=MEypOWixeBv0TTsCIGu!N$}re9@= zhIU%KG>olCrXg$f0Xfn22nIQaYVOnD7;Y=?Fblh>Z9s$U3R*F} z1c&A0>2hodWy|3R!inCF`G!GOsl@{ADPF~c9>(5`IVDQl9yW$KW`u?Cu#^}=Yql@& z+SjmEe`%&%#HIv`uG=r`u||#AHI_Gtkw)DCXsHvXkp_R3wU6Dyl}R~*lDh}mzc>p^ zxhv`v#A)@hH&&z}E46D5aZFm4GN+n*5-drqoo!DzOu7_i3YLK_ep;A0TQL2G;DFyL zwkbexyMVA8AwID~(nw>d9WxDsoL7U$65fQ%uRZExm*h=zrwYO#os1G1^C?(Fmg!>~ zNWHPRCD|MJ6|@VLdlQol!>%AgS}#q!_M*PDkC~j$K}$5GPGA+uGILC&B)+M9{%sE#X zRHBi}hK$l?*J^Qy&F&_$g1O7?P!+&nJ7ye4Fg%E*si(g-`O;Y*^A1)9mT0)T;$9RO zB?oqMsoq7L(fg-b+24){ho19F>a95AY_d0e%sE*ZSfbG>Hdl#3Rf~3rN$6Id1xf7m zR^Qe3bi<^rSy5B?sJOM~9IOPTChOts8bp{nVuyUTv7>O}K>O#qbQ*0694GYVK86JJ zF>n7(o_jXBSB+BpkJ~DUKyu}jXh!!tDsE`eL%T1^S_`B{eQc&wq8n?iFm=~M+z&qX z#!56K1$sP@2F%pbhcZ1HQ}Kc-U8(68j2rx;Gx;JHwkB2g%A@Cf%-ew(Ux`N67k09C zpukLCaBHd3N`1bFMpcH|9|>4NcdC)-z#Gc#$<8q!7r-(~9jqJo#)Jn0<7k<@RfZgW zOW=$;p~3dmU7TT()5Wz$t;X$aEgyTMC7QB|u`EbxU|8i=Iz%cPRspQx*~01h;aRL9 zwF(G0DZ4)A9OP^o6OD<&;1kz8BA*b3hznZAYSCD^3T9<&3=~c>`C3fm3+LF>KK5oU z(eMhSS+QZ!qCXei$af>D<+Z`~%+^4>dnB-z9-4UKB_9_6GfJ(Rir}wTilxmXHZ1vH zR9A8a#FPdQjt!tqy0H=>5Ce-XJK+Lv@!e`y8d2nj;U>Z%Q1lplJjM zueeeQj?W&PvIS#fps)qi6tO}33VAks%)9$zuxm%6vD|#~Y*=)Qwemg|>_vqy)V%<` z`X|F$1-+VVM`Cr&4jtuv%oB(qz9yr~C?$M%<00bfE4+%(u-+Wh-deN?H*U3mfBXFb zDO_9hUF2buizg8|S5jwuvkQzHg*%e6EAp{qnvh^Xe((DNmS^e7DNt!lpHU|>(~gAM>_*##*8wQ9ABLvBsVdXDCi2 zZxCBm+e+F0?^yCLmTdaQrgv@pZ#I5z!=G=sWy71-KfC@X*Zu2td)NNW+I!Z%W6i5; zKD_!5R}ZZEyH$6udi%;(R(@o~AFa54#j@r1EZ@HD)nz}|_a}V^`j#xcoBIEM(bM|> zukg#kPTvN0b<#HJsYj((sXBefS#lbE%$u#t=PoM6lHHwXEI~s_jhIseBtqmC0VK_$ zLS=b*S7+%4nro#%w1AKe{#of0=g5Zi8`3hk<8^{&AmHFv%_Rg_oM;q__MNTNG2=+bh;X;09i4`Fc(wgo0nG&wXxOmDs^l5{ z+HLHOmT06_xNA`9lIrD&O{LQ6DOduQ3#28S}} z9RTFY&0lA=7X)u}tir|x*($KF_pMloqp^TRwM{!G^5dL@A#jT*J0KGeQ>HX4m1id7zY z$F=2S-XYT@`<6^J+`z%L#j5eRhb~|^qgjG3N4gOeYa{KO0-Ec&Ao2KcvC3l^6K9|G zu{T!a;22RxVVU?D;{0#Dqnh@g$V@e+;f$O9H8 zjDThisfCR8C4g+y;_mj1L5%3kUA0YMh>fxu1q1V8BSGtL+IABdL>Jez;JD#K3yNsT+aYWVx*AY zh9?DecVxWH?!@C*oU~5~4DSq)I^~R!$~)XXl(9x|5+F$t9Fq@7%kVMB8qdHIO<4`5 zOd=a=tQQq9#ZRVVuyytMe}otD%0hRy=kv0HL9cS(eBA)i>TflG|H}Z zmTc^e7HMLu4U<`7kNuBFS>52(GO$6g5>Y?c9?52t&I5o+y(=?YEQ^nMGAo1Du3YKb=w35^bmyxSfwnzD;5iK)=|O{tNi;yn#V5o5 z{Hs3Z?S1u+xcv@^#zbQ-fFaN6(u1vR5AIKnGBr{X_+-mhD#Pu8*>KYI$hWkRp2psA zP6>@U0fK)6IF+?o6&Pm@ole#YaoBzB{Q*w)o^1{a63drg8`sNrHZA}cX)qw@RH-*~ z6sZiH@s1xz*ymN;%HA0$*2EBW1Bmx5uq?xvW5#CFm}tV27KWrouy&xWdQ?oIWZ`Lx z{egnFT*18Z)Z@qG)w3~AdSp>Ja3xF9VGz3vp z?4!kkBb09;5y#dpAprUdb~)=G>SWR-%EaC@{nqSYk^VjoR*db*i|t?Tvs^WQepv z`h442O`kYNT%_ONz*g_qFmZ_)s-!FfnIsCF8ez45GmY>b3^-&NGMk&oMD^c{g3T`f*Xb824cIk_m}H#So{C3 zZLax`Ypz-SA6D;Q_3u|*zw+-_o?iK}6@R>9booCnznjkgXQ}=F*L{1;_J0Q-@=x{8 zaOWN2LPA9{)wYH{R;^z-_Xuax$80YvEPUyriUy`{dr2@J}$tVQ9`4GYPFLQjB|=1&P`!xgq|8ZJ69Q6Y`88Ynv~Rhs?vmoU*<4|Q=QjaE;9SLze5KBndHF&&=_gU034w>+ukN;J}r z4hWBD#%S_tsu8|#dd^y#R;*X*hekWwvh^|zTIB@bkr~c<`Ixk^T)aqwxf<3>fNDC$ z%|r_g5<9$yCbjI1#$e~42f%2K@V+sCe0x%seawV-9$=!upKCr==2NL3Do>^t3B66U zV)&3N<>AiOF79NG@GA#Hkn=%|3xYX~z+8|U9J6O|l{&UDaB>q>M>{_l;G%V`w&@kN zBM*+f;A3yNMB}Qh7t9+Vrw!Fs{Ndpw`-vy>s{MnVEwd*RjeylV>eYrbYYy`!Gg6*c z?*^3|3XBHgWTXSeOL;VkU@{T#rQyz7XHO=Qgq3^nYbfqM<{h?dYbF|{xw;MHaOEP| zr)(8%bxkJCKI%iA%>gc+Z6(av&Xf*#{+PxbNs_@O8g{1ZfsR%v`o^^6e$eO^S{ds6 zz-%-mNu@q@*DHz#+1MK`(U7=y!0c8>D;BMj3{z=cm{Hmb{X08vF|-d@o2IMSm+T`X zN%-#ZEYFc7i8o#!Vn4>!vg%EpG|J;R3V6u5_&?V9{ta)ouH|o0*K%PHCN%k;Ho|Ox zq5|LpLnFqbxoq&A8DT(ib6lXlVT)8SYE8fugz5s0gA8~=WC|5Zslds(3<063*v7aq< z%ZZ)^qB9_?FOrIZX!g@+e7WqaO<-@^K4NcH+iW98z<%%yjW8!(xG(*%*l!U35PH{hc1l!d6JTBslIUq4 z!PL`*h$o(|@BFiD&CRx~AYAwsFWx`(1odPZ7mFW>$)pFEY`r-1ns~wm1vy*lB{lgu zvbys78qsw86E8Z&pLrUHdm@6KWFk$zAq-O$+( zaLpnTE+UInX+Agk3Rvrnay!e&QI(!4$i=Pb*c7!VDimkm%Gyl1J zt1V(T&gXR`G*h#pJ@qfDaNn*q#$%}z@QA)rRldC!$9>GRZBhtrN1`z=pqjU#u_~NK ze9PT{dVc_$S1ovttmv!}Ufmxfma>E)4Bq64=M^utaq1gqC-1*=y8X?`vllW=COdi= zb}qds*&!uP-vb@d&0+E+$=Jn(hB-RYS>4UIz6a8;RMn%U&0E8mRMI@`L}QH{n(W3B_kc=z`VTDNeNM}Vi z9CJy@2yj=9+(Q1ikG{bBs$bHz?B4tACYJoE%J|0s-0JUYDLAy;URd{f!~Z(s7QC7bRd|NrHUAIAQ_ZvEe_A7B52>%O(_eQW>6wL91R zKWmPzdDH3>tN%IG{~uiWKdt=IioYQHf9>-7mjCdw-&yuceG`2*^sQa`*wXEM%zw>) zZtPsm)Tmi(v_z<=Cp0qk_0tp29pj=%KjbO3^p{l2GK|S?GL-g#n?tmTW|L|Nr5%7t zspq4Sn*Fk1Z|;0JAbSgMP?1{r&ggD=`Z&nxhu+BDWR@bVo@jncMR03%NvgWtQdB>d z%6mIMYda$5-V0cIuQTLhCNh&6yd(XlWChN60c2uyU^&GjjgFNPg=**>3QMS2Xq}uwwUwbhu38=L{7k^I ziho0cLtBKXF9(4L(NsMBP>`7#ycMffLuNnF=0PxE>Aspm}9}L0+46j%X>OMZCEj1O*q;gK38eRW}8Jj(r>J9j&+xaAT&a8hMXf3HwyK^ z&QA$uv)9{8Wl_+kQRF&dSNJ#w{-lJOLApMXlGrRU{X=EpTJZ8WZKOqLm8Ie&b4mp3Q zv<+i1Ca1z4!lhoBXg{Hh4Igv%jn3cgCN~p}C39Mm5ea%0?XW(}b+QuW9^({N(d_C0 zE^2mE2Ld;F@wh~bjd?Sg!6h0+!W11aFcyZ`lmsW2guqY{>R;~EY&O4WM!WV4om|CR z^IH?mZ|f+gA96No2H8!9Q*IwhUYJ<%Nunj26=?O~1{xDdPLgVXj#)r-o&tLM1)6cc z0;}nV-rRPRA-q+@pYdE(PkMlHP>`&Py2oR3H+CukI9?WYWKX?<`Xxuj`IplVy@9*Q zEPD)OlY7Rpa&}NNNNvJ8fMuHh;vFo9rHvAZglo_^z<9MH!QK=L4wB)Wfd*mctW9tsp4#= z5IMEl#L4p%$c8cJcuYTVbmHMh?A~xnWa>Tw`+A{?E{zzq)*=jlF0OxFhRTF04|ECv zEnd9%%t5<+{$5(u`Ix7~WN3+o$fNm=g@s)}V8gURYiNjaQLT@3ek@?69g3)_)h568 zwdpq=^szTqqLE-5aGTC}Lk;DM!eL2*oHiyegB9wdogWQ&X=5U2zD`hG(5u*(p5JWV4C875VaB@Uo{T zz(T&%YWNqhCKPFlKlDcJCNr1B&DNSG%&LcrIO2-RlY9d2yE^YNMm=1u^cM2%5eF`P_LQbN6P7kR}?=!Hsgu zTf{9M1k`mk+a|(?tzSo#~`PY_z&$36B{aD|nzRxecvh?Pq z>zADRFX{jo?vM#)$^Btlq2=LCXD(=MqPA>$#UW?j>Gtd?RXku3Xp{=?&O(aL%QdzY zW@1$jAj$2+^DtNdLmjfh432F@Uv;%_6Wo=@ZkKb?#=NP|;1Z20FZOleDYOI}?}DML zA_#cnakxWLScbM0Buv+ZChDx$S45IgO!(K(4sM_iSjKSra>aGW&|8u$gcW z8624@z$rgvAvmWoI8R}*$&`U_%(?o;Ijz)oclH@vOv(|I>EX6CiHAAbMfy!C_O^3~ zav4>a2`o|uE1oEQg@zZVHENuuZxh2l`> zOS70GRT#LbW6h~!xA~ZN#xuA?ql8Qx@!>4ER}D7}J{mE{V{WD5p3bisS~4I&G6TX6 zSNhC3M?C$8x28g-Ze+<4ot5*C<4IZgnAbR-el;)^v``KuOckb{JVIHGk9jMmA`o{x zB^o^9R#k&rpUPa@9#lIMFHus7!cso=<|)x&(}oufj4PxTCN264@ixmi zXwaf&Z|9c-SHQ`&i}ohC$>&ah;$si4oIsh2U2L)6g;SAIt=S{fA2sj`v)PjHpwr1k ziCZ6YwtF^#i3STLG=VaOz)AX3aD{LboPS*S(4KIKMg~!` z8CbOv2A4Yt6;1TEWP_d01-P^kL4&(9&nw;8$DVMBrhNV3Q8~z+w;=ar1*zzS-Cb^6 z)A=O>i|_vk$nHi(O^}wC7DL5`t<}bR%H!WvR-T^qZUVGd9?G{+1#Oqz}lc$>6wfr*SXNa19c2o1gG)8Y&>h>*SY#*qR0$qdg#Rsn^Dg?s2B#guJa z058&%Z%#2~+bD7q%eTT+tclbE-*_K>K7%tgi?R{HeeG+?6R>dsxJYBZ70(ASIMgi8 zods=B>&OVgb;Tk0MAypMsnfw@n><81d$du!n^f0CeOz?EOmhy8R-T)4_wRMh;d&MQ*dI^nJ2hX>NVN_+n0>0 z|NlETzOwP^4gYS#bsLtge_;KNb^qW)?0RzAP- zLo5Dd#eo$|ssDfbvh&M6*7wJKBYn&5{lANRRF8i?K292(8AZQkH`@~RPx+4L{f#KLI7!3#H;n= zF`X9QxCsLK-I_Ic!@^oJr+;3zE3P0Dip7+(!9`=dZr7sm`!G;7%~L04|jOh zrrY#e)z}*?(O7Y&Wq%8fCfe@rpq88#{>t;>O_1@fTr$%$2+V^v{nE=!mydauV>XwG zh7&;UnjG^2gEtO=?O07)#%sE>m{RRs?SYZ*w>NV(+ z#4H&KEkx@3$72r`8Ae+$Ay62pm6_-~JALV77;}#G<@0(i+QhI^ayJemtE67YjftXW zxjgEc%xj8>lE%n59av0)1myx1PEgZ#pFpDfn73LPRH7;43fLE|72uRRgu@R#lwd4) z_#h~K9*@mfqM?on1K#8-k4g=-u{U0#VZ9Cn@0-vN`er?#G3j5`Io=IZ4 z1z-`Spi!{=*4|K7|MawNy#f?dD9lQoNXlYl++p(DLq_lLfBt!i3(x=YZ zAn7-yT?e`x!E}c(2&`BRG8o9>GH&&+c1wLu7)3ASLtlANnL$40%^@k(($To36Aij` zc+x`gNu4lLt??~VYCtfGOtzs;?7|YyGwPerNUeVU86OuwGfHT5rQK{*FNWrKXO(cJ z_6O-EBrT0}Vjq?$8##)gO?U3rg4x&`EzuyWVyUa(P(9t?L)aU0m}N!c+cP?`Yz7PY zVRL!q7R@DNZ@fgKxx98j%Auwblh3A-R47EhGUdzrI@X6Jy&Mh>yRlN5c>WC_e4Mj0 zvPE+OxH>>@SD6gLQ3*6MnCvnNQ@C_6`p`oLJFx>x^sFdC%PcxKL*O(DyEdfdm}V2MT>qzkQ3MYlqJaFP`| ztXGkdyE@*5B~(Rm!t@p`x3q8WxW(t6$I@^&LqQ^9*5P(D3~7sdI@Wxp%WKK>;r~;g z7b$QW=OXahflFT}po}HB_wa*q8Jm%e<%U~|wB4YoehV`DAy()ZqrODjJbMZT(3l9%_l-oK=X*6Xv~q!BoU7vr`p)vIcRXn zJO;|uMEkh73Fe>4(xK?24-j^KsiCARgFuk*bXxBm2u#I$65)soV(J@5uRL|1k4W-4 zC@I{xBhhfENa$6cOH%^4l{r;aYKqCZ0gor3ibTam16;f(%k20NJH5?fr?=%TSq7JA z%*PN@VWf4iMKpM*3gH^(@X#Nr8g{Hv*eK;#{YlTudW$aHlF+-VPo-bJ*HP} z@~nj}Yz(_9c?^j9TkKc9X(QkgqDQf29eZBQK6MAl;X?CDoC)+uEmjA|WAa^CVj7(b zXySz@hA9OzJ($(zSSW7Z<&bODaT@@c{0ZP%(11+0J; zbMWGogtJlG zK|pinB;u+13^Fdy?)Z2FFtjs|Bs(O4~p^#LQX4&QU|lBks`Ww)gJQDQYX?%8&+ zLlIDt9|d{Y&%EJd-W+CdiAIrDJpp21ROp~cSTjb{Wx#m8r8qnuv+mOVkPInI-+r&G z0ULXRB^nf@V7xh8@HiC^+(eKGyOJwCG9I(;qVYk+4sesN;7oYf$KG&>rc4T4aI`yK z(H~D{1JFzeJdSqlz<5l%yNaW&pao|QJb0V97STBcg_Wnep5PlI7mnB5TxU$_`>R7tt(N}h~z4c zjK`F_IFD#Ftmo7l_hJ$Fm^Y6TcRWP~g0^I$u`RjJYyw<^oSy>C{gM87Xiz42beA-Z z^6>aOW*q?{h~P~eJ1T?M$DDc0@Dh#161w4Z#dF!vNtP!^sca#HH#q+G02h@PDnWoF zhkokP9X|GEFVUczAxKy;@y3;9zGU8f;H4N|OeTe{GB6&y*Ko*fkNkhcy$O(=*LC07 z02{o*u>UyYSac|pcF<9ckL7hriBRu3M!Pp#BKq=EyV;y~VP3pX0 z2AW~anh!^&vLC^(hkuNn1Z`g1GgTZ2h!J%A78%cJYrjQn8K5 zj-+4+49t-+lyMwf6BU+TK%wob)E@h@Z|LD_XWY?MXFa1MjIF2cz{TX(_*Z|W3PtDEe}VIE8Fx59V3(m zA{t+>Ha+{cemv7Bq=~dcoaS7l*+M2BdCJiM(l%jS6gR0d&WxE99&rIa-1i2&c$4xH zy4Lc|2fEL_>9knB#6vb2Ii@_Sk&H$V;KS|G!uL|33fkn;WM$d}qVH4Ogx|y8a{UesA4%>ju|8y!MCJoL=*( z;XfYUH9RnM-_ZM3A7B09!GANjbJbt1YOZ?U$`dO;yyACPY#aDb1AG5oPX55am3-ma zqo_b=su@3iF3_BtAwx?%o`=45J8iO?QHQvrZn>*mx^VWU$>1f@}*nT-W~cIvMLOO51uWL_oePIFFSCSKw} zoy8|BHIhJqVKXr)a^`-egNuK_C`q|k)R#V=T7Ut3U7Nw_GJwX3{v;!(*VA+jAs)xx z?pdm5vHOT@5Ou6=oAr{uZ}B^=7+R|UuG2q+W1JWlb`)NHKli+hEEZNObPd*9;YcRDSGOFX0=DeBfBID=s9<`Bx)!!Y*+fdgW(75+sZ23ml%Um(rE`GMW-j z*`2D6!BBG&d345oPm-ofm4CRB=KAx{SPern&c;bcj(^LDEOtfOjOOa*gqC<@u}4Ew zc=3uO@q-0T$cFGX?pBfZCwu>M z#R4TBbHwRW(lOHlas!x!KsJB~J#k;wsxm%nvvI-*cUwS?Ji_74kvno)EL`NN@aS&* zSZIGrk=4ti02?={%!J9=pXuB9>=&@Qd!7=I(Pd&x-8BOElJiPQ7t zG|axyJz@PCMwh{hJc={)9yG2R6eL@pYess65~Vu%BOi$4i8%XmrbZZTj3?l<7%%Zy zdnJy5?-P_G?iOf7zv`eVqTHC8^=UZS-KNAD2kqFisAH$aXo;sMKcK|~&V*CPuY{{> zB=+`M&BD=hW%_th#;P$x8QaHkTBt?J`eZ>D2Ne5cdOy&@u)L0gUo|yb51S<3p#&b3 zr{XycwxrQKoRm|t=QPmTdft^@4OhlwYB_A-4yE{6ds3xqqtmlveS4DbBH-{Ml+ARS zbJ{Yv#AE)3_iB){Vj7hB8>ATNq>z6@nS29fJlZRslC?ym5brnxVVD^!ns?$dyu_m@ zLk}DWoFIc4K#bd=Dg}FJYPQykhBC%{kaS1xCL|kZv2@Of@oL-OLb7s&xv+=7v+Vsk%pJx8w_=f+y;hqg|U;onj#=3vDZYwVU+_m=YYhGN_ z82;_yFAn|3p*x1ktN;1xUmyIl!CMA5th#^IdsiM``LPv$xMIh^pYcQA-G6q?dbOSp z`qKF$(pP5K&c3Hqdt)>^5eoi2cV4csCUL%XN&{q+eTi%u18mkaJ_sH-yT?oilIu8* ziskUrH_Up)UK(js)~lw>PukzsRc>@y#Kh(Xw5u7t5n`ZbLUS!(MDutFS8Qq5tjhK@ zl}ed2=2inpO0<&1NPo!ANxraptzzf4?KTI8sx}9-&q}hBr#OYkU4dO|#d|%5CSRSJ zmWA^N7EV0tG~2Wp7M2sjX;l-C?sTi3Aev3t3nm13#DysU(hE0qGcoXPHdgS3v=2?! zg5&)2j7gwr*XF?`9&SLMF)=I!YqS&F&(23bt>KCIP++$$j?}O#E7%TBuWS|Fa6swnw+90c-uSZ^E z`)n-qi?=-m!|0ex_G$8na*m+FRK2@%WTbAp6E}!_vS4`Dqfz(xpQD)?-RZ_YW*v|{GT>DI+?NDiphleduRrz%M=;)pYdaeTJ7kk1Ymx}zpA6p+(p!QgZ-H&le><{sm{ zc{T_rvX5hx$=O)P7vm;0=z!IIa{of-8K;?^$`dT{aItN_!FqvBGHy0Z0v1xPKAo&s zE|uxo$)FXZr7labR++!=MXi+6q^9!F5)Wv*!b|~!!%X2G<^E*$gQBpSSVbgbq6bea zN%5}ms166uX)#{pu^RDU7HKhAO`KG6$0IgCn;^!|LShbpb9q;2LHN+`ea3h2*ptF7l8e2qh@UCU>6% z0XmR(8D#QN|6a#A_F*}mqmvb+CrfIT#mAo@=H;|_rz9SQX)NNUh4lN3nGyR>nK{hs6WGE-vx*5B&6HB!MoBy}Fk_F2c8VI~IO59sYk-F;14pX$YiE6CPDo@) zI%Oc~b+!W>kMWY2P&(jc?G3g1MGVxEFnGw15QFAsm#Z_gaZXN1856n05vnP$M84l> z-oYlE#-pDf3a#{f}VnCSqLdDb!-&HH8< zVB)bHb&RY5D0dET4htQFfcFZxFh|fPaZpa$k!TYHeD!$=XtWqF@i2odq$4C9`=8sH z)U+ON1B^6$mF0|Ma^iB*gaVod4IX^eX)#*jQSq%FJvF^7K&0b%lj_GV*K$%}DfJa6 zov=6KGE>LHN$C)Itq(xNRnbLnr&Q$92y1F`5bW+R@eK&T!^ zreEuq2~}d5zl#sNhA}RhOpYE^g2pDD!=Xz&QYAAa#Q9ZRRo5d#^=MO88Wjg_r1X{9 zFM`%Hu~CDSLDRl|_LOYn_=jT5UN(-xEk6Do$3oYr9R^CVIEA{%sS~V{y!zE1F?H1` z`aweVj+6YB(_+ZPqrt^XmU@(^Z)w>HqULoV$+FDAKmzS8+UB@%MGm! z?^}Oz{m0h*!McgH|1b0ZuUvC<&4-46Z+Pd>Uk=?o^u4Q}U)>n|*Mr+v{RR2|t1SQj zM=K@=zB91zyL11Sa8Ea5ja^U!d|^7_sIYEcY@TtNNuTV?s~1jMlQlak@wnbmc`$F- zlCgEQL;ipmlD05?Zlh!4O|P>1{N~^da5D*y68sD29t||z^LcoQheCX+gB=SC2K$_J zq-L6cMN)FKG}Y`Ywo~z`WIKO|AfnS{WHU~9qyg+5HHYKNq5=qMl9`hV=egxlc}LTV z?Xu1Z#j=3YQqezUwBJteSx0B65U>rtzt)g*iS@$qXV-G!QHe$`=S;J&&W@THTSIo_ z*;Cq=(3FnPUBk#D2iYFeb-6eoT=i&d&A*mz!&M`$Fx`xGcH!#P>~SQ!_zE4=hnyAz zCLX`*HIF)cIgc5!lsKxodI?Qew>G`hE))P#>LGe=a;$ktChn4B8ewFREkr}qvwN22aeUoo3XG?#vj2F?kRzFPao_aIpH*K0W+|~!va#&qtFa!)PvMm zL2X4{K!i;j^=q46RF^td!O{BpZ>3*cvVQ4rC_JXMB?EBPgi^pkkUadM`cImwq|;sg zfsmS@lcrqfN#dSQpM5G zrOF}m48W0%y*lg;7m(^;VnIeQ6r z@!e z;vq|J8M6qcA|gX0Qg6CzY;1eeC*)*lWL@o}75}yLn@cW)^f%GH{)!a7@4QP27`8?`MeAuqj?)-;oi=LGl$Foiabb#{Zm(wI7+yJOjS0alpys= zSa0lopNx}b;_0pdOHqrb9&uWXm3Z9GAlboKV|$gNflo&<8`hl)j!DE*vD%Cia^g{= z&qkun9piBur^RrI$AU$wf8p*1j@^iKRF`3iWBpS_!EmFQX77|7#S^v8V~y^a{gzM= z&D)LHN;)SzoNOXDHd~x4RPvQZIors`1t6P20SJ`xK%Y`pt=55E1@@=dv#)~Ol`NYo2{b~#THTF z+gKWv2B}7E*X%zDfN`Jj=#7%oCl7a@zTIiwKDh)iv5^i@_sdS-Dk>($vLszVHb;|) zX^5=Z{J*OPZu9)V-v9f&4p?yQ| zS$%T#M+bi!|NlR&+PmrpSH8URr&s*Wir*OckNnVg`Jbs~Z)F{^l?rh`dR)6NKG}Wh zKBsw0jE$`#F3jk}(PAs{$=vN#}HL66GdK6EvJy z-<8N{`-I}Y#&ol<$`0Kiw1ubjEP~TKb)9{;#DhDTVjB_;O=@2bPuUt^s3xp7wluxU zE@Xg^4o4jeBK%%F%1ab>!owxE8cbingn>e~ z9-+NhYZnhW2LZ`=v3LH|L8rxNiKk+3`^uDX=_szVLtbN~f$;cM2KzK)wOx!%p~&^& zsOlryZnPLL@q}4B4#uf7?c89VhwTz=)#+x{ZujJra3L8OUK{nMMwbDLJhn@M!qhN2 zJae`Q<y8F^%MhM*!FQ*-3KxJGr0*2KpE?PjS*Hfd*#00iw` z3QkW1T8!qL$TmR+$Rc9GiWeOkSWv_-$4V2;kpLEV2?n);Y4`i7S`N(531Ha~a95Ih zhatSOZV3xeZ`O<>ZQ>E2-3Bnl#pa%LnyZ}C;Z8iE9x5FH!h2Q@#jAsiCsiRwZ4BEz z4z-E9goc|S9Gw#UDm2HL3}P#g8F>&cgt>LVQPY?VNJlr3_N2;28rL>`rcH`2f@D{L z|Lda+ORs|XH#n2o0wxH(;Hb|<_J(=xlT9CG^Z97E6Ov%ljuNw@Q^9H8Es#R_S0^4t z_ppS}A>=<403)_XjELF;{^68alS`Xw{#eh(x2>onGO8)GPtG~bJ7zs-#;IdQr$#g> zg@+nJXQ8V&*QT<_e@ry{CfX4C7To-6Z(KOj4m4*oW^jo|p$3wXE*sk44)tgiFG%(A z)Q_OD;zXOY8BrnRtloT#;GWZB*%A+tL}ZgY;&>c1f{B>RGVYYyA$&tHF^;r}1}szh zCEQ&nG|}5>v2c;cRF)=sI~*6O>nw~*Q~x~qIXd3_K=^d=BGqU##5+4jP}1o#;u)tt z-7UMf#iexfRWod=ddZumWNO`H(`VUan^JGIAll*E!3wlkH0K1%3SuG}7b#gXHYM(y zra5u66()@{ZM2Zulw|B|AzxHR?k=OnXpzSnH&icW3rQE&2ug%JDz~VrDNvKxKUaly zjGv8$81&`4(F&sF8_rd>veqi&1 zn}2fC`AwhN_$}uDuVnt;4>SMolk2{@Zj%20hw%STtohjR9}bTX{SE&A`&OS={jtIS zWAGm4|DRg*p_RY8a_fpeU$JM!_YFM%UAq5&NA}5PUpXFg5?HL!?#Vd|uZm_LT*m(C z$E{7^dBsJ#&W#4n+XnrM$Bh%|A|1; zC&)ufJXUK+K9S%9a0>eqXOgYUJT2gGB6yv?*;kN<1t&Na7%|DkXm$bT!6hCqMe
    MHKGgjus&!=K= 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

    %c zn~Yg!1hS>A4`b5~57Bh|CIxA1EIJcr4&SDCDG42E5Sb}LL#jU-pX=+|dWyT^NF5^K z+4IhFTN_C-)KCWBfxE(3z>pbUq9H*GI}3Ic7Q2lMEv#`O7igBat6-YZ$$a)1=K)uf z+2oGhpvl=-#QhmqqM<>(wfEC*6CV6%!BF{9fI}Op)VEJs@>wY1F*qa%b2Ekb9IA7M zOdn>YoAO2`ubhvD2oaj<=zSc7W)=5n&DX^(?P#vVl5~j#0gboQxODOgLrX0Z zK@#8lv!@v>;QRC!+Moup;TSHZlGSd6iHr9Rf}FQo1oM#q`cpfH^wp?Of8;YM7OVc+FlDZCJ#N4KV!GN%eEteBsvE2pp~5;GTR~sleP36h9Qb zy1CQLQR1{!{+VY_*<{%VQ9+|Aso@0s*AFX`?Q61okY^X;j7b%H&0?_k_W zW(VCiJLnA3UDL#STk54vRDr9(T31Y}(TlG32yu4aruZhCO77Jy;GT@?#Py^b@j5xl zckSdTkBC?aLL@a(p;0m)NYEOY9GSZ_lo&zOR5zfLv1?IkAUIhLKaEO z=mfw7F|A2){AdqyFPJT%sx4cilb3}#1!ahAc7q|K`RUh{*Zj2l9+x3Sni?$W+5a{x zcpEug!5YCOYD-w<5{gN+d&#G@qL48w&Pz*4v#}H|P$JO$2+~=n$>9p)Y^4c<`e;?x0xc5LEzGj)kq^rO6(U#Y#1bqLc7F_PC9OBE%!Es9%Xjd>?&8 ziiWbSE%j4Z`Rb*qH`LC_-^{j|alSH?+q6b}lu|1n%i$6YH&RlQ#q5NIz_M&DF48eg zkE({s_~dT{te7H6Z~`pdWkBaZAB*@gO)b&bjRsbc67X2g&kB&{E%Z-l(|n6Y|6`NC zo?A-^NUBjZxmWHvdykfrv2ed7z(nKj4SL=MJj(}>`H%jn4cCOGMXNfiE?D{8%8#x14=X;u{Cmqkvh1m4 zA6WX*(uO>U_bn=%vYSE@1VWRVY* zzI@*T-t{k?i`-NB)h=A+K&*%-s1Q=Yz+g=X?N^7JV;$wYr4DFlR`||_>%-G8-LG@Q z#zGEz^v0=^ciNd4X<+D-sIAf)^eUI-bb^tGoE{9d%2zu|Y*WPj11x|vIeci~P2K#m z3MgT;^r0yFolx^+gdO}gqsVeXhvf`iWusO~fWqI})$tU!5D$MB=%`uDmVobpyL>EU zxrCc&6z+3#Mrh7(^w6NOk0N3yCyp}n>5v*&@kksr2ty)tXq|v79!443i=#ied_ygCDxV z$Mb)TLi(`3wFB%i&`dqWkUU3==hNG+HL155yU~a`F_$wvYajidrOj z-bs#E>|68bskwIp*&c(}@@ZpPZEV&9{dKhSgY$O1LR_`xnOEK^d1NX}%qiH7vE zomX3o(|7=t#P$aVhWVD;Xavp6JMRc^h#K=i5lztApS*ec#fN64H9SPqqFEN{pTL-7qs_vakbjU3h!YLVC+^C36Yi zr92n{CQ?A7VQ!z4XO@svW26(?zL@c-$AHgxjJuwpcY=?FZ!?27N@yf`ymx}3arRo^ zj1+ZqH_Pib+KD}1qTe0^7PQ%eN99qpu^cVYkk1`*G7XJowu4@bA?J3DWa|1@Cw6>^ zQ4q43fFr-nx_#MLbPA@)1xhBTY?R=S(ps`J@Rwp5;|sH>iwv&uPHg&;wgw``-YL!~ z-jQ5VrFe?_h zOBC3+S3x6ZhvU%4a?1Q(;DlAWMCL?hfR#0>~_`dFlHrwG@UL__o-7w%-=;gjX&YJwF^k|xzOW!cqP z63}9Zj>&>1);u*4#)9pTp(Pr8U{|UdL(waBQndPi+UcM$lD$N3R_OottBW>%ZNv9B zT)X~n*N?56U3baaKVSRpweMeZV$G*k|HbMnLjC{gl^3n}%N4s6Ncyvmd30N@BggurNfpt4wxNl@g zu5w+Ygy(6r6EnTy;fdb~yfd$Kxf;O7jKz!a5)INKTnu1v?!Bg^UW1A{!BM6-JlctQ zUI`9K(Na1(wNO50GO-9Q(MU6JAAsP{D5V)thKAP_ok(p^s&z~>OZAE-2~rX3+NSqB z9-TAz@lJM&6`~^SLV9vS{0O&Mqo91wcD629<}pa^p&-8#Gr;Vnq7UKx;VEWbpAf!{ z<+DySwY^Fev<3i%$L7ZWD^9JE5XH--q;I6-DPXD4K~}3KjTAX>myhLeiKd1aFajYmT z5#5PKJ24L|!69Japu^8e&#|#+%V!%T(bTTcMVeBE3=YRV$12%8+%Bf21hvu_>%=55 zbQH6L_wX^x;2EVP zn%xtcrbmbqPLbQ0mQuh`nb)ju?+n|SlbxiLhal5@wbGg`kZI{Jmd3p!<42jjhd)%4?b+`B*-~NF%{bVuQhP9a|flKwODo#Tmi-sn>UQ z8UgH`5e$LSY^c@14X^oFKDk7rB0Jik+SJe^3C*#BT%pb_B&5WXWwWzWpO1w!X*Oo= ze0=8NlRlPXC7RkE`NYG#?CMjFhc-TV=B4Vy;gL=)_tK2}ktNNB+Opk$hmYl0iAM7p z-+@QPW`Qefv`WI$O?6z*># zN`R4YiMKsAWr_TOaR(T6>ADla$8!FNG*-b*s-De^D{9E)VI6fHqrj*?0W7s-3H(7l z2w>AMzN}ng8_Q>wXo%jDIv19az2*!e9l@57xcjb7>c|qoBtsgrFWolt$Txi~2TL?c zT-~=bfKkegQVutw8;cu>T@AM`?|4HNQm_D%2}ePQz;3^TOICdx0A`fXU~1@wRa-?= zArwBakXZ(W_OQLb3J-OMl$3>ZsJt0MmH1lpi+Ex`WSs3K=eA17heqS<=|f7+ zwlUKHQfCMyESJRGwxlmw^_u5iSv<`gCHSRvH-N&m>M%C3q~l#!{2{cNG2(a#?6b4S zPWt#J9wL3wQfsJILY=mUV2^*vyum~blnNqOITha>Z_JWf0O;OQo?@!=(3un83S&}F z&U-1+7fJODnWgp+?2wP?ArzRAGZp5n*LjE^3-2Q;Ehrg01h3VCudHeS8xSk-jL28=P5+v0`qR zAC!L3w8B;LT2&#F9}No;T|Pv?^)_yKXzG?{!uTfMhJPK8nk)j7{9!4uLVn4Xg8M}j zso=d-t6%F}7@oqs_F4%f7M%I~30&zuzKNAcU&NM7p=Rt7dAq5}0+{|pNCMu(j|BW^ zBvXK*Rp{PIYt1kwBk%lq(!Y-7w=1;UG?v7B4RC>n$^11|G$6HD~mSvsQ-U{ z!$;Tu_WGY&_u9IjS^LLpFI)5XYi^?h;7hANw(38u+PU)kD{o)<-W8`-{POa@SiWcZ z;${71|9t5yOFyyX&z6iW{>R1L#qZ;1{{Q=TS;up`VrN$zZ6=kcUpXuV*~TJ+HT}g> z)sL#_Xq5; z-Ps`FgRqUR*W$(^Hm95m!~x`*w6rebEeVbE*-A@M1|+tP~Xw*O|H#x4lu@+K9N;yfHB=vcCLg!?6 zy$d*M+<@ym!{owP4(F7x_SNx9Xqz3|+cKHS2WNZf)~gEUZ%pn=OUWV6i^Iq8>b*V| zsR-HR5{<__@hKaayBO5hiR351P$paCjKs_?ci4cW`jVEI@kPaf83&+6nh;u%58LpF z!&yrR*@t>{#0RSN@s8(q#S{Rr)YPUmd+@t}`B;vZXli>9mT@PDGm#XZl@^2xg>wTy zk~A9IJD%kgO+{dS%g;z~C~T`# z&OUL^^gWY47ESETYu0*$+=fI`+p%@`m~S}Uxyf;8?G;5K9<8J z8pS%sm78a1C>&;R(|tj!DK7#o89Tpb2TUeSl#E}g$P9%YeJn6Gvb9V!GDa~00vh|v ztWl*)$<|i7Aq7_dT|kqMA{lXNa<37!w4pp z`W1tVS@wbwL;Ay~DJ;;-(_gBW?RMQYBH&my2pUd@IW?<0J6{fyGS@OPtAZ36s%c?P z+huEvNmI#-$UCPVdVvkGB~U8Nw{={t5O5Sw0AXHON~Fo|(+cv=YGWOBUdi&#z(Ix# z)uvD1C>dg7(E?6C8?h3Nw*>JQCO9;6g8MlA8(6-AQy0OV9q+dig5U21OIL!{reAwX z4{hTByhx)Lwww8d+2NZoIQBDMSnMgHv$5-n~k6kKLkql;B*r1OOU7o`Y=A%Z)72rbda z0dPhMO=v(8-WzDxzo4PF(@R!ed78~jJD)eS*p^2~F8RfFiTM_6wDcD_2gk2g>mOgh zx*ADnO1f{;Q4}Wq-26FVCJqm?Fj(|H7R|{W8QN%xMoTD@p27ok!gzcVyC;1fJ*$q# zWuy~(s-zV}cnp*DcsE*`kL75Ih7j;IeyRzLLz)OMT!}5MU!Z8EwN$%W z7aq2P!L_O?Y}IA5oslBLU+<`s%7uiQFJx9UndJU+1;gYXAj?GQqbKv97cxi+_T|X} zN7C(N{E8TeV~blLj!i%-Ql5ZziNlSrchp@)4-o5RsPEtb=&N$}m5x6^{&UF##T9^s~2QJ2Ca&EUZCjGFZDH7osW)621?6t9oy;H1oOQKODg?zNPt&(-3c{ET& z+a|xM#b){hGtN#)&=5z?cF)}{PI@lagfw>|&*3(sF;?>qUKWYv+&4DEFt*^bxQXch z#{-^=3h)q2tT1;)Q}F3yffAL?F44$8W62_pHdHbHuu{N{ry7Xc(ay&Lnx7<~A(%j; z{t_F>$8xkt6XFMwgBCdtIvZ&`W&sk79k%%Yk1RUq{r_It@bUG3wtjrw_t#CX+r0L~ z+E1Vvv?6d^k4sPS2yNyc`%<+U#!GNQ+H+FKIvnj#>Ev%p1YE02z}uMV*aGRslJ22 z7d6A`vcRcBtgX@->(0&M0!*IZCQ)b+YQ%u zc4HP7EKGV1Sg3f7Ch~{KMi`6K$uzk{gP2mwH^bscMm{wW3b;IpwsBEYwK3kc1TK6D zVx{+P1_$-7(e%5fd@S6S2`kamxNpkSxD1Xs#-{~0L_`uK_9q>9YQtmQn8+1vV4Qsp zD5dK=s>U7&=rjV1CaGQ?0@x5iMP*=uL~g3vx~puj#QG*-nPOrS(8C))EEIY1FI7-H z{l}(-J0gHk1E*!gxM63Gc4GopRPNN^p)rK0L09mxkVkHKATVU2F@fXC0wxrtVScP( zk6Or*4F5)Zw5trRtY85sl)J{z^bHS?B;#W_T%y4h8@ghUY^PFQg>4A=!Y;Dw@y*Z= zts9fJ;&$VW0ylO0y(G?rv4|tn>=I4wlHFELWni2YNH?(tiU;gZqx+%OXxB5gV!ACr z@`P$`vI1-@=`IRjQBlTo4j4|B*@q{5ESggWmT2UT*>480&|H@=?->~~av^Y2{Yd8< z^U+{drbekTkM3guGiGRsrnYUnH?Om~@xClEle;6>yl^9z9dg!wecnzZ;Z|tROvtb4 zV>w!+G2xF3G%O{qCS*U^&;$eC(; zyNOad(ur+T((I5UFv_cwvPo?$+H2YD5{=c;S`wZZg$oUNb#i-hdxc&dwcX^a#jYuK z)M$1Hl6qz4iKp3WK9-{;n%XwPv*8plyr$zJ8!bnGWDhb;y=_Y7{8W8Mv+fU{rm*0o zNqKO84u_O4cI@nO^N54@|9~1WyElB`dB1K5?G=UKiU#H z9D5t#s7|=}c8R2LW^?sf=h}I@4cQ4C@&Py>%jcG8BuR2`2rkSLwV>ry0Vj>BHQu=< z2Pf?ZvkADFJ6&;+oa~a3&#iU< z&hmrw9kj6=Fws!nWX?2SP1k*Rd2~kAV$yG_wykrOfn`UHDm-9FdwL&B7qbe4`NrpC zaCq7)(`~7+$d$Q8l)9=L39CdX>A-a~j0G%`qHJ3d4Z3*fMou_^oL$q#x%HB&O$sLv zC2Z@_jyF!p)C0sPaAyy{EEch`XjU0qqEXw;u&D(Hi(uJN++>=M){={v#yj3YC5xdT ztTnq+w@M53v3z!s#_D{d!YV+R!~nVG0m-D4a=K*g>UaZ{YcOl? zwt*o_P!kAc^9uFmP<*PKZDTn`5%a@E0y}w%?p!_=F@FxsD4~J*Lnej6VKkwXGbcC? zH13MzdfU$Eys4ptX&sLqlhfVDBE2q#g|{S{+MeC+nbbNWHt?~~Bc(y)S72)DGuj!+ zO-*|MFPNrwKAJoulHLLH#g~lG&O40|=@Be#N{r@i5@XUr!tpCgPSFT^N?w)nkwZF6W z;x%X1T)k$+>bq9|_^MN@KDF}CSB|Y*zT%D*?_d7n@{cZicG(A)zP9w!OQx1wwPcCK z|DXM@H~t6y!gx2Pv_+#9m505hzA&c``FQruTNa$em`<~k_vwU8G)gm8`)xI}L?=Yu zg|E5SyVb0*eNZ&W9jVtxx+$$K9LW$n;LLX(QVts#%$5odKg%ub6p=}w~E z-I&)Vy+)@N(LB)3oVW#%&!(4XbY)eLNQOrXU`zbPP#?m?L*>w|z}4}tr?*{f zCDreRz44BKC|48Kk&gv?DML&&aySJW$q>0m)uMz%L$P3lNc60|yGx#%$t8seZHh=; zZgA%H+&}4K`4kh4DW-Wuas%}WIk}jeX;s)V)$LtRgUhrx`P7IM8c(E&oSSE=%CPh7 zW}6uOT+sl)!CBP59UP0yTBv1Cp_-LKK-(f1MrLz8oLWy!DK^2J3w*ZnUtbH0OeyGtmX~HfakY+EZ}Q*qlj= zLG&|cwn=m1EnQ1r3oQV2(x4TE=b+4!=fF++;8W9gci!03oa0;eOfIwSpcnHP$vtl^ z3+tofgQv*$&EN8|952z-F5B(?Z%s~K4U2)pVwTd*%F+X;>se}<8O@2Rq6HM3%{c6atkObpTT79k%@78|c=!F8fG{5^dA|;bfZ)g6BeP(;&H;29 z1B?PfGsMbrNbZi1L?RikUEkh)p8;m_K`vYTHa3Iwv*!k^YF?i6XzPe(1@MJ^ScT%k(F-cOpx0zOH9scLuonVev3A!TdH zh{S|NH>-|yV}F;lln9g-9kq_AT+PO!7e@sFe;1=98Y@r^tcgz%PhX9r3t>taQ70q} zQ)`TLt-DJu>yS4J-cr@WIk7zx$3LDx(!dv+E%$fDYZP zpq!0GqEb00&zv?<8EMGEw)#-a9nMZRHXPF6KqWy>F%WKHZ0zjDo+^lEJ8{U;b~GLv zG{(XgmPd0M&?w1qEY{Dl8aPv!T21K-qusZMnMFMckp>ni87h6Xu^cPW)JW0DO%3*7 zDQQoEEu-K(vA{-cd-rXEi(MRG49J{b770a8SD zTh|+@WDY51jwn4;FC_ioLbixYXh}kQx9f<}djbRNNEieM2*v?YC$DR)`<8h}D1TS{ zloC_C+CCP!Y+}f7OQMm3bVqP%qZ-H~g*8rmSa-J~I}~)RjCD88$3u2BnzMJ_I`!O> zJ{G>MgqLV^$n5r(1{Q5ZR#|2j+YGgxI#ceLLh^5zkB8`BeiDpF!dN7U6JDaREE3;o zhR2HH+@KFQ6$X-xDD{$k4^kL$j+ZvEQ(*Z#zsQ)@oG z`hQ;i`Bi_s>XMcJ*UE{NZ&~rcilODdyZj5w{%YBtWh<8+S~|4kr6oVT_m6BmBwB(rkcC|UF0-EREqV!RgshvUB-Q&66fj! zdY?*d^C?;)FsrMaI*ILiyNOjf(p73%^xoo@K_uDg-v9j6b6wm{jOAE~MsBAo@ZLr^ z^E%Z`@zb=>TdJ3Jl|`o8VuEJNlq9|VEv0w0KzgUY5Z}T@l3%@{nzc4TcGqZLA{^|K z+U{;l71J)X^)u%W_gj-p6~{97U7}GM@c0f(r*fxE!wa%$v_K9#h}`K)4(9G|K3&WZ z(U0(NQ7c9gn2p8zB03BcjRkpwxh#(%DR@X4ofNo}wDCEj=r1(dos%%8osZcC;^e)v z$GCb*;{e1+Lw81c6UZ$iJghw14dmKb5+ca}xPx|eW5!tU^Ybv~PdhY8ddjSg<#36H zy=TcOj#g76eH1d@o5Tzksn7?Z`%8f>O?zQ(Dm!6rTun3iu#e?niG~s$yAUc&4k<DXZVo-C`H#MXzpda4yr-4aR6YX z3Eq`3KLq7Pww~lnnp`0eMRLq|H{a;R@XW!ihM**9**E|%(pc+IGN|H$HfzqE9IPsO znw8(Y1|OgBLDFLNSce}}RB4LT*qyq!yVpEj9|hAAjZf7Z!cYhKq?yO(%{ ztznv!nLcuO=GMbg-+3&37%R=c~P)$hXgOPh%^bM<_g18%Zs`qBHR zk36b${rI6AJWoc$5~eXo=Ne^&=l*aN&CK~S* z=~rbrV$Dx4a_N!ldbPB#YSzcQu?tMpu~fvu1W%rte(69M%O~iROmJ-Lr8+X>=Bd|+ zaw>}-pPJ3FP7i1tGqDYfq{F)re=1`^+&=Wk^bzz(jpcJpG-4rMW56ToZtO!>Jlm=m zAKX^j^)4{xSN8X3vS{k*r*u`ZjRVjkjT|%C3*>y%vlP0e6}WKb0g zlcPO7UMCv|z(pF@1%e|;97>HOCMq0?mW*1;3*_#EN^^HNc7uuP2L`P1%#o?1Jt_D{ zd*zUc#*Baw>IA}yQmo@EifhtD5i*G)yzy=`$oIrDCW>aC`3~xbkL8Go27`5bPWwO= z$6htmYvRvP^iUS^Xtx#?G-%)| ziq$K8bpnmo$8x+x!~9T<0~|>_adwIY1IG!f@NYH1+4S(AAnw)+ksfZH zDQz`LnKONW!W=n$!Q&?D@or@sGA2d+i740Qj-hf4q8p)%RB&SoQ9eFVX-1k5}wm z{twGPv^`x>C z1XYVLu+JXt)8od+^T$r~L3880GiW>^7YUmDL+|xO3-rqVuBVsfrj0?^tj+O!<&DqM zX@_r-ZIgMyeA?9-Exox3fooZ0(x6o|8oRrmZT2OvB+!zR9@DIbWsHld^Yrj*TZs3T zVOLpWce@2Z8e0jFSb>r_QT)ky+}6EP&2U;D-S{pw!x3Ut&2aR?ML%B#?M-s_?W7^g ze3;Shyo58|utUf|neR_o{yUdE6}S`W3pM@XQ{o?|5OcD>N>%X;vS#1s=;qzn>6iuq>Io2R}qj&?sqLcMc%w&$W*fKX^L z=pj6|zT@FlGu@Udkme;_&p3Gj#s-zAd{)-?mCpN%jX`WBp3uR-V0#T;_|XGysg~S zB8|X25^ZzyxG;@@@#dP%$NuI9fYI)b0EjK3)(2{|s@Xk!CyeOh06?RJrgkM(K?p?y ziL$8H2lSF|qN!sbkapSL*7d$EDcAy(1zU^}(kvEmWBLodIJR5yjNX_*SSSKfuR2RB zCMKve+TEU8M)9Mvx$Did$6rE0_p$Ju(G|ce@e)n#%B{PDdanCCh>U#>PY#V72=3~cw8~|vPdTUmeEq$3SuAB(o8ZwfKJd6PB5xR(CAZ+h?)0UKI0+_uw zn}MGG90hCfFS?M+Gv5=6O-yCfo@-#aNg`KB%Q>fBp>{632JXKXA7Of+c8+r4_<{nbrx zB#P~?vyBWm9O13zXg9WPiGFzU{aAqMqp#22cF4zaz(hk)u1jWj`VU)8F4_nRI&e4| zcy(jl*tSK-jqGqV72xRo!o74pmcu0)b%`-%fl+)#)h0$ILP~HZ3{a&V&S*C_Zb{R# z*ci@5c?E4O$4fMFLn18$SWB%JRN6%ffdw`2n^p1Z#?CF#hC>BodU77Tbil`QxI}}S z!7mo@$+emu8N=YW!<76T#MpS(TeoEV$tkF}cjD=(&VxRd<0Tp#MdLe0)LX&<>n*EL zpBHu*@5U}J(F%t^6U1P^k78pvV4_j*COA@@Vd|FSit6Q22Sg;XmEGNZD;I4Ds!ue- zXL@H|z1zofz(m6(b=rZZeHmh1RjS&8mUDvog+IC39`ELxxfr6y#7^8g`$!-5V=PBZ zG-A=PeO?~uB-@owzslGfCOj7ti`!qOop`DxYw?syF1Uv}o2VJX}Sbr+c~==Z*(k zQIj!J9&RT@rLi0@(U`MHf=w#4t*O-zS(^~|pf;6mz?yzx-VsR9Q&W7VGyU+5K9)l! z8l6bHVblm%X>c9^h(l9HzM|rEije((!J=PZv~ll-|7XKDHY{I%+xoYxyKCJ)Tl?_Z z_pNz)O=b0o)jzlDzhCw7mH*?)&#n0PD?YsZiRB+y_TsXiTKd~dKeFU|OFpys4;TN+ zqCe#a3jgiz{h&=Jvsu-GygfX1)1x}+e9UJv6xfXfbf@pTTgq*sr(t(IlytQL$`AH3 zww5yJNHnMZiw=j^_1+P%V~iMA3fMCfFOv1;;~eFs6g$!5*tEn;Ev$jNp{JS~)w(rI zGpz3Kc|uWc;%vtDurdLU+~MQ-gD3is9jq%W4cqe~saH`;bW%D9ezb=7_dLPKuip~e z;t&N}muw!xFRpQpR#Q6hL~j#Ut*{|`q8&v*6sL16lK`i?YFhhxmTj~-^N-*}(7X>% z;J@L14nDbLSxDCjOl&Tv!T|$w&w{*;nuNtF>Q9MrhNnV{P}qP(1{+` zj9b0|xelj+jHu9M26%=V*Y(~qpV8Q}?cv#HkI83eKt z5ZK%E{G>2zRCI#vfKPQEn0oE8Fy<|t(wCj+sd(Iesj8X7tmWF)dW)6F$-)6#+1K+- zrQEAVXJCIl@=fk=^zrgir|Tu?FlideYtnd!hIjYY+lqh5nq-Q@Nua_(5{-xraRNX877lN!9rQ!3!W)8&qi3+FK{c3$Kd3G}PCONX;}ZXDmt|t>aNS zDtQ}j8Rfsi*1E=QOf+gdewYrwtX{R0sH;$iELPRh)hFK8Tf2d0;HJNrIBNx=TjrUzT4@b z7{>gqt%C%9daAh08*1+Fd7qN((7_|Z-}RbtLfClz$cbLu8T@00Z3mtf9D7XIP2AL# z{XK75lEX#_8aAxSZ^_So-Y-7U3p>R74cm?#uyIo0!J@ecnYGQmz2)I$N4FWS`Y`VU zcWWL8=B8y8iG%dA6TPr6QFenN6V&oeNpMSrKd8dZ*52N-`N+sXUvX>-esf+z*g#~X z7qSN;TpY9vnV=i~5Ri34!nM7nIb=DU@G^sZ_SsjFzCI3=zG=>h9$%>EHHJAitdlyS zXz#hxZnnSL^ByN-8$;CvB_INZ!zB599CY9$;6#tZ2IV-IIRU)#5tD*C?KExNleIlP zZ+#L15lDXCjwHYRqK|Vtq-6_UWtrWz5dr-T>p~=-uY&Q2{zY19L_fB_Ma9X+SK#IT z1Jdtpl&5^aq{Rvza>{>2Hx2Fxvfuo)IQta&p>3guU+^=wnpbtLEy|`HN${(rl91P< zkF%+KEIoHJa3?l{OI`@LTd)XGYtpWoVEMdBu&B59cD+4HIN{N#bQUu4r%ub=?Bjqv zodGBM+9fomuuKGlMu^g+zD>3sb%uDbRC%?x>zz`9G}#0)lB|il|@`R0&C;>BPV*YJ%T2u)kb=AUu~Nr zEg~o2+D&Zxy52t})2DEh2>ITdIedJ41IYF*=&fSKk1U|8R+2Epz2k(PHDwmI#&UZz zmE5EeW3bng51&2pppWMdo#@G^_3q2|o)O)@qDfcbI7J2UtJQ1!y53jCUbNb@R`5z` z(%0X~X7Ta-H&&vzD|yI1xJeUsJb&Os54XjvKqWp3+s-gLJF?m3y_Q1i2{UPTSBXvot$7@{ z+s8pnmd!cQD`&ygqX2x7xSSqya&(fkL$<`;p6AZwka4LyGU0CU2dhVOkzG9k+0~;t z$fyDwibAfn_VhfDCg};Fin09H(r=cYnTbl(y+Kcy1E~IyhN#F~>ubFsV=Yq?oVD2Q zRn=?~ZufBzFQ2{VIce&6!Etw`ubA^NI3X|yG5^WkLxw9ghyz*IMOJFp^?owI%i=*H zWG^}VZPVX8sw425M+Y+4T=?)6KQ*tCA`H4Ndd3O_oy2}PjF4cX^;^B42;jlj2C~3? zK0Xd)u{?PCN=+AdN9#kAXE$?^3wa!DF4QpcDrjl-)t>jTaO>Q*HCc_-A&(OH_=fP) zSF-SeCQsdS#j{9Ms|Y$rSiSmmQj^B~j$ zzR#X3#-(@Tsiuy%a!t=0T#Ri*Q8nJv>0Y5t)3+qkd>o{yN&cxTG%cI#TZlDkd6kpI zJt%6|=Ncl;Hv>jftV}HLspCcN7{e7K;Ijwi?_(9yhe6A4;@9BwU*U?g?WVN3T-Sqe z?Zg+%E>JIEaldZq8AUa@Yu;Vo*W18T<7c>F?-977su{pWHz!iL0 z%J@D@IW8@G6O*Dl>oNEAkctCa>OUn6a-%>Y7A#kp{yiI?0WBYK8fvwdA-=HnpQHl1J- zJw0aA;R$jR-Pk%!$rw-pD9vh`?W=k}BJ9lc;!lQs_d`I=+E}{6Ibb8MT@7k5y)<7; zFCyyJk&L}VXjTEDy}kE`83&h!0vnp~w{Pe7e0&2lwr@dSyOe#jS6f=hY-y4Q)a6R{ zJ?0O`3DE=Zh2c9%!i@VaKvoI-k;i--#L(H46TO)s`y#SAQ$XgLbSYp!V+IWovhn^H zNhK%s)v)h;U2XDhd;{2#-jl<_39g9~X!D7qiz^+9WQJC4Z|{P6OD;=z2KMSh`y-E6`sm= z^Xi`W*YIOZIt;7CL+Lul7a#U-#@!Y|%PQwAU3z=Z8v+UD1B326#Yf=sav$iz=b{if{~2?}t)4=>;V_Bx@u(}!kn zIO5|}_eT0Cg|zAOUV*~zng9q9a0@DVbA%xZGpZXMgxB;w9~d;+7d)0;#Z6DBFwDmR{_kwwiJr_m)%e+Z154r^ z>OAM74um?YE`i?98E$qmDyLljA-&4s?8+c&xJ^T1ZbxUz|pNf>yMW3S`fyly+aw8a(8ujIB}UX4(U)D)4cDEY8+C(VL@=5`X}W>W!bypjlCZTNFkz zWpDYAS@E(&;JoV}q+P9#=Rf5{Pr~9JB@AiGcIzB(nfh7s8_;~|-;Vy{%^$LZ59gh5 zkKP5Z`1l5J?OV{3IWI#eAhX{nr&8iPB@iIvgswKO?Rhr{vnS1O(NJ)ee#kF#r*Rn1 zf3f{rAaC2wMLPi)L5{bKL~LfPU<+wG72dKpg-F2`vPujXL3*Fs>}WiH;7D&O-wsR9 zVzrgghbOp&i$a$%3VOJSf#uyHG8G5e&YamDc>H`kf9OPSdnyDHh0T7(P14dm@bE8* z;g}wHE4)=i4%=iKzasU@#y5nmI3Vk-HU~ky5|@Dmc9SOC^fUn*^`pj;d*_Jk_)>l~ z@492T0X_~mLvkA{(xYCb3;|&?O`J4(-FODUhU16FdmjzQh~%eiTBXA`tNwH8M@x^9 zL{+5`{8dqefQFw$Xhf9sin;8QAnD$ocag|;l*-6!P4l))gmHkMWM=YKWUTq)4rG0S*hC%9J6Zh@8-MdX?7R-baGijE)0){pyc}*bL(!#?FxaTfAYZk|sEX z%wFcK7*?lb1cgFcSQOXxys<>Km*xIu&fFt&=(RAOKeB%d@5jhU<(vRV_4 zkp!{vJQ5Nz2Frhi43Hp2gm1eEeC1x)1K@0~k!YkQ6Pq|A?E%d?jmJlvT%^`ei1 zTqQYl`xf+Q;A5VWV9?bX3OM$mI`ttbxN@&XfA(v8-eV$cErkpbVK#YGLVi^`{va`u zRz1-(?Vudaoi+vbK(o0kV?A#-@g?v4q*YfMNYy8jrgMI;n`%JUf99g)7kOXLdrf3) zt+eghkg|6=$1r}DID(UHX(uzWPTWA2fh}Ls9}_ZeLe3wk%N}_qW;zr zntU9vl{4t@Ew-{8A|ANYv=P8^{VC!hwI*+x1ca+B?PDzAL!YKZ%|O&#zC() zgHH4cR)$cxpz$eK2mvKqj!!C>TBI&}H;UY(CBH0&L@pOGxxvB83^~zT04bX^iXQtpPZ$!Khx+yV~Hq3F>AfAQG6MyFY!JL)e@Jv#SzoQPq-92{DT? z%25s&#t%2kSMX1Msz=rR#!Z`leB&l+;0>fQe(ky*74;^xqsNyX zxs-uT-SXtj@#A3}AWx=VxMk|)hfOE(Z=sWDQ(LMDXS9+IsN_WHwVS3<@d*$kwDGNZ zoqbULHUZ3n0shcqGf&1II~Ii+28Z>`%KqX`C?mlG;>7xI7ltYrkv<) zGlZi`%U!pOk0zRdn)OpZhy-u#?|ChL4jU26q^TmmXEKcEKWYCKlU7PqmeQq5>1f?R z6)#Z?UMDtPvw=04i#Id$B}^PhL3SBp=pKGCGP6qPVIIS5>%rAd?d ztqce+(a)T7%C`cT%wulfvoR9^#ToJ0f+u?K3zA!L=87fTa+@7+JXN*E6+JKA|B}Ul zWnw7znpmvwn7D6BPwNCul`j(SI6L}^*lWWdpx3@XCh9}YExh>O8Bbv=b^K^GRmy{x(#G>gPV}5Z zL~8@%2|Suzs+9+u9uAGh{+@RN$aXqjEb+kWr-kZDXLV+&hdm`{gsfGVED_HSA0;`k17gb}WSMq@H#lOk92Hk=7$ z{*(IPtpYN~u;pY|{pZq;mTtF1Ri$;s96V2Orn^3A=yOT+OQ86GtNV~}h4 zWO4X7XtU8G{n-cX_>A;qnD`r}O8}WX=Dc8;G3n)ztW#24nb^>~ByKkOFO0#EY+%zN zkX!m}d_$Wpdyb;-a<)m^qNz8J0n>T18M>DigS_z8#Kzv%{1Zt{CqbJhI(x%wN>;Y< z%{@`!ce$d`QkW4!G`6uPB72%V5lJLe_F>BKRdBDW*A$qy=Hx8@@Y;NAE%!_jN*I# zLDux<&h>Tckr_&6Xe7*@2?Cs;lDV33a#xxYKh*p6_;4|Ci6;Lnm--pqKk4I{Q%{_E z?YnR0;p|5iejT66?jTmUtC7S#bAz`z$90js>Q_ky+1K;l2bow=rvkgJY3e5VNEru; z)3i>B-m)mI9-5kRq;}wId@Oj82(h83;ve-s2$?h`*G)V`mtam*9|uX(1fA%^&ESg2 z(|wKZ6^bpwFGB=b@I}hchaQ`Hp3a>%o^) zWR5EApd_o>wLR~Rka<)%-2{9)l@_mr@%(}PTT&Lcj&HLm<2+J3EK?O#yQV24TbmOr zdTNrO?7H z?N2T=5<(PFjjkOWHZxBho9W&>XzD4xsmzo7x6Cp#m02NW1%0A! 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%0A>DDn< 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 U4o%pG5`Po literal 0 HcmV?d00001 -- Gitee From a46c85e1105c8dfe54fca26c20f2a4315169163e Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 2 Nov 2022 09:10:24 +0800 Subject: [PATCH 14/15] update:readme and docment --- CHANGELOG | 14 ++++++++++++++ README.en.md | 21 ++++++++++++--------- README.md | 23 +++++++++++++---------- XEngine_Docment/Docment_en.docx | Bin 136775 -> 136381 bytes XEngine_Docment/Docment_zh.docx | Bin 139062 -> 138801 bytes 5 files changed, 39 insertions(+), 19 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 2e3e5d0..c00d754 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,17 @@ +XEngine_APIService V2.5.0.1001 + +添加:zipcode查询功能 +添加:计量转换插件 +修改:数据库模块错误定义 +更新:匹配XEngine V7.42版本 +删除:所有回复类型1模式,现在只有返回JSON了 + +added:zipcode query +added:meter convert plugin +modify:error code define for db module +update:match xengine v7.42 +delete:reply type 1 functions for bank and id and ip and language and phone and translation +====================================================================================== XEngine_APIService V2.4.0.1001 添加:分布式锁 diff --git a/README.en.md b/README.en.md index fc46f43..cf91ef7 100644 --- a/README.en.md +++ b/README.en.md @@ -18,7 +18,7 @@ and support plugin module Support privatization deployment, free, safe, open source, controllable ## Software feature -1. support json and string stream methods to return the content of the query +1. permission verication 2. support ip address location information query(IPV4 and IPV6) 3. support ID verification and information query 4. support phone number information query @@ -30,7 +30,7 @@ Support privatization deployment, free, safe, open source, controllable 10. Password generator 11. World Time Zones 12. Oil price inquiry (planned) -13. Administrative zip code (planned) +13. Administrative zip code 14. Bank card verification 15. Exchange rate calculation (planned) 16. QR code generation and parse (planned) @@ -40,6 +40,8 @@ Support privatization deployment, free, safe, open source, controllable 20. Metering Conversion 21. CDKey Creator 22. Distributed lock +23. short url creator +24. local system time ## install @@ -59,7 +61,8 @@ use vs open and compile,suport windows 7sp1 and above Just Run it #### Linux -install opencc,ubuntu:sudo apt install libopencc-dev,centos:compile by self +install opencc,ubuntu:sudo apt install libopencc-dev +centos:compile by self use makefile compile,UBUNTU20.04 x64 or CENTOS8 x64 Run it on the terminal @@ -106,7 +109,7 @@ Address:app.xyry.org,Port:5501 #### example For more information please refer to the documentation phone information query -api:http://app.xyry.org:5501/api?function=phone¶ms1=13699439999¶ms2=0 +api:http://app.xyry.org:5501/api?function=phone¶ms1=13699439999 ```json { "code":0, @@ -121,7 +124,7 @@ api:http://app.xyry.org:5501/api?function=phone¶ms1=13699439999¶ms2=0 } ``` ip address information -api:http://app.xyry.org:5501/api?function=ip¶ms1=1.29.164.255¶ms2=0 +api:http://app.xyry.org:5501/api?function=ip¶ms1=1.29.164.255 ```json { "code":0, @@ -141,7 +144,7 @@ api:http://app.xyry.org:5501/api?function=ip¶ms1=1.29.164.255¶ms2=0 } ``` id information query -api:http://app.xyry.org:5501/api?function=id¶ms1=511025198800000000¶ms2=0 +api:http://app.xyry.org:5501/api?function=id¶ms1=511025198800000000 ```json { "code":0, @@ -161,7 +164,7 @@ api:http://app.xyry.org:5501/api?function=id¶ms1=511025198800000000¶ms2= } ``` bank card ver -api:http://app.xyry.org:5501/api?function=bank¶ms1=6214832830000000¶ms2=0 +api:http://app.xyry.org:5501/api?function=bank¶ms1=6214832830000000 ```json { "code":0, @@ -175,7 +178,7 @@ api:http://app.xyry.org:5501/api?function=bank¶ms1=6214832830000000¶ms2= } ``` language -api:http://app.xyry.org:5501/api?function=language¶ms1=简体到繁体¶ms2=0¶ms3=1 +api:http://app.xyry.org:5501/api?function=language¶ms1=简体到繁体¶ms2=1 ```json { "code":0, @@ -188,7 +191,7 @@ api:http://app.xyry.org:5501/api?function=language¶ms1=简体到繁体¶m } ``` translation -api:http://app.xyry.org:5501/api?function=translation¶ms1=中国¶ms2=0¶ms3=0 +api:http://app.xyry.org:5501/api?function=translation¶ms1=中国¶ms2=0 ```json { "code":0, diff --git a/README.md b/README.md index ecd6906..494f940 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ c c++ interface api service ## 软件特性 -1. 支持JSON和字符串流方式返回查询的内容 +1. 权限验证 2. 支持IP地址位置信息查询(IPV4和IPV6) 3. 支持身份证校验与信息查询 4. 支持手机号信息归属查询 @@ -30,16 +30,18 @@ c c++ interface api service 10. 密码生成器 11. 世界时区 12. 油价查询(计划中) -13. 行政邮编(计划中) +13. 行政邮编 14. 银行卡验证 15. 汇率计算(计划中) 16. 二维码生成解析(计划中) 17. 简繁转换 18. 二十四节气(计划中) 19. 新华词典 -20. 计量转换(计划中) +20. 计量转换 21. CDKey创建支持 22. 分布式锁API +23. 短连接生成 +24. 本地标准时间 ## 安装教程 @@ -59,7 +61,8 @@ macos执行:./XEngine_LINEnv.sh -i 3 直接运行即可 #### Linux -安装opencc,ubuntu:sudo apt install libopencc-dev,centos:需要自己编译 +安装opencc,ubuntu:sudo apt install libopencc-dev +centos:需要自己编译 Linux使用Makefile编译,UBUNTU20.04 x64或者CENTOS8 x64 在控制台运行 @@ -104,7 +107,7 @@ make FLAGS=CleanAll 清理编译 #### 测试接口示例 更多内容请参考文档 手机信息查询 -接口:http://app.xyry.org:5501/api?function=phone¶ms1=13699439999¶ms2=0 +接口:http://app.xyry.org:5501/api?function=phone¶ms1=13699439999 ```json { "code":0, @@ -119,7 +122,7 @@ make FLAGS=CleanAll 清理编译 } ``` IP地址查询 -接口:http://app.xyry.org:5501/api?function=ip¶ms1=1.29.164.255¶ms2=0 +接口:http://app.xyry.org:5501/api?function=ip¶ms1=1.29.164.255 ```json { "code":0, @@ -139,7 +142,7 @@ IP地址查询 } ``` 身份证查询 -接口:http://app.xyry.org:5501/api?function=id¶ms1=511025198800000000¶ms2=0 +接口:http://app.xyry.org:5501/api?function=id¶ms1=511025198800000000 ```json { "code":0, @@ -159,7 +162,7 @@ IP地址查询 } ``` 银行卡验证 -接口:http://app.xyry.org:5501/api?function=bank¶ms1=6214832830000000¶ms2=0 +接口:http://app.xyry.org:5501/api?function=bank¶ms1=6214832830000000 ```json { "code":0, @@ -173,7 +176,7 @@ IP地址查询 } ``` 语言转换 -接口:http://app.xyry.org:5501/api?function=language¶ms1=简体到繁体¶ms2=0¶ms3=1 +接口:http://app.xyry.org:5501/api?function=language¶ms1=简体到繁体¶ms2=1 ```json { "code":0, @@ -186,7 +189,7 @@ IP地址查询 } ``` 翻译 -接口:http://app.xyry.org:5501/api?function=translation¶ms1=中国¶ms2=0¶ms3=0 +接口:http://app.xyry.org:5501/api?function=translation¶ms1=中国¶ms2=0 ```json { "code":0, diff --git a/XEngine_Docment/Docment_en.docx b/XEngine_Docment/Docment_en.docx index 09425f043258108dafe7eb65cf016018e2ef98d2..6e134209e717d021dfc5b9c5e365b703c9b12b82 100644 GIT binary patch delta 121397 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

    _^^M3M`JG$bMCHs-H_YKjW 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 diff --git a/XEngine_Docment/Docment_zh.docx b/XEngine_Docment/Docment_zh.docx index 37be83d68aa7382f124f0c758a3ad00bb51f06ac..254e9d75cbb971055fd8a7b2e22a47d663e65e24 100644 GIT binary patch delta 123698 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

    >sGnen7 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 delta 123970 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 Ic|m~x0;ioAOaK4? -- Gitee From 1125e6512c84df8f8e865cffc6e49ec61a3fee18 Mon Sep 17 00:00:00 2001 From: qyt <486179@qq.com> Date: Wed, 2 Nov 2022 09:18:46 +0800 Subject: [PATCH 15/15] update:vscopy file --- XEngine_Source/VSCopy-Debug.bat | 1 + XEngine_Source/VSCopy-x64.bat | 3 ++- XEngine_Source/VSCopy-x86.bat | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/XEngine_Source/VSCopy-Debug.bat b/XEngine_Source/VSCopy-Debug.bat index 8172d7c..3e81107 100644 --- a/XEngine_Source/VSCopy-Debug.bat +++ b/XEngine_Source/VSCopy-Debug.bat @@ -10,4 +10,5 @@ copy /y "D:\XEngine\XEngine_SourceCode\Debug\NetHelp_APIHelp.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\HelpComponents_DataBase.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\HelpComponents_Packets.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\HelpComponents_XLog.dll" "./" +copy /y "D:\XEngine\XEngine_SourceCode\Debug\HelpComponents_Authorize.dll" "./" copy /y "D:\XEngine\XEngine_SourceCode\Debug\RfcComponents_HttpServer.dll" "./" \ No newline at end of file diff --git a/XEngine_Source/VSCopy-x64.bat b/XEngine_Source/VSCopy-x64.bat index 957bcdb..929c2ad 100644 --- a/XEngine_Source/VSCopy-x64.bat +++ b/XEngine_Source/VSCopy-x64.bat @@ -8,6 +8,7 @@ copy /y "%XEngine_Lib64%\XEngine_SystemSdk\XEngine_SystemApi.dll" "./" copy /y "%XEngine_Lib64%\XEngine_NetHelp\NetHelp_APIHelp.dll" "./" copy /y "%XEngine_Lib64%\XEngine_HelpComponents\HelpComponents_DataBase.dll" "./" +copy /y "%XEngine_Lib64%\XEngine_HelpComponents\HelpComponents_Packets.dll" "./" copy /y "%XEngine_Lib64%\XEngine_HelpComponents\HelpComponents_XLog.dll" "./" copy /y "%XEngine_Lib64%\XEngine_HelpComponents\HelpComponents_Authorize.dll" "./" copy /y "%XEngine_Lib64%\XEngine_RfcComponents\RfcComponents_HttpServer.dll" "./" @@ -21,4 +22,4 @@ copy /y "%XEngine_Lib64%\XEngine_HelpComponents\zlib1.dll" "./" copy /y "%XEngine_Lib64%\XEngine_LibEx\libssl-3-x64.dll" "./" copy /y "%XEngine_Lib64%\XEngine_LibEx\libcrypto-3-x64.dll" "./" copy /y "%XEngine_Lib64%\XEngine_LibEx\libcurl.dll" "./" -copy /y "%XEngine_Lib32%\XEngine_LibEx\nghttp2.dll" "./" \ No newline at end of file +copy /y "%XEngine_Lib64%\XEngine_LibEx\nghttp2.dll" "./" \ No newline at end of file diff --git a/XEngine_Source/VSCopy-x86.bat b/XEngine_Source/VSCopy-x86.bat index b5b4d45..1e67a74 100644 --- a/XEngine_Source/VSCopy-x86.bat +++ b/XEngine_Source/VSCopy-x86.bat @@ -8,6 +8,7 @@ copy /y "%XEngine_Lib32%\XEngine_SystemSdk\XEngine_SystemApi.dll" "./" copy /y "%XEngine_Lib32%\XEngine_NetHelp\NetHelp_APIHelp.dll" "./" copy /y "%XEngine_Lib32%\XEngine_HelpComponents\HelpComponents_DataBase.dll" "./" +copy /y "%XEngine_Lib32%\XEngine_HelpComponents\HelpComponents_Packets.dll" "./" copy /y "%XEngine_Lib32%\XEngine_HelpComponents\HelpComponents_XLog.dll" "./" copy /y "%XEngine_Lib32%\XEngine_HelpComponents\HelpComponents_Authorize.dll" "./" copy /y "%XEngine_Lib32%\XEngine_RfcComponents\RfcComponents_HttpServer.dll" "./" -- Gitee