|
@@ -0,0 +1,774 @@
|
|
|
+#include "StdAfx.h"
|
|
|
+#include "WxAdoImpl.h"
|
|
|
+#include "Global.h"
|
|
|
+#include "WxAdoPool.h"
|
|
|
+
|
|
|
+
|
|
|
+#define GETDBPTR(dwTimeOut) \
|
|
|
+pAdoObj pObj = NULL;\
|
|
|
+CAdoConnGuard tagConnGuard(pObj, dwTimeOut);\
|
|
|
+if ( pObj == NULL)\
|
|
|
+ return FALSE\
|
|
|
+
|
|
|
+enum UserLogInStatus
|
|
|
+{
|
|
|
+ USER_LOGIN = 1, // 登录成功;
|
|
|
+ USER_PW_MISTAKE = 2, // 密码错误;
|
|
|
+ USER_NULL = 0 // 没有用户;
|
|
|
+};
|
|
|
+
|
|
|
+CWxAdoImpl* CWxAdoImpl::m_pInstance = NULL;
|
|
|
+CWxAdoImpl::CWxAdoImpl(void):m_nRef(0),m_nObjRef(0)
|
|
|
+{
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+CWxAdoImpl::~CWxAdoImpl(void)
|
|
|
+{
|
|
|
+}
|
|
|
+
|
|
|
+ULONG CWxAdoImpl::AddRef()
|
|
|
+{
|
|
|
+ InterlockedIncrement( &m_nRef ); //增加引用计数;
|
|
|
+ return m_nRef;
|
|
|
+}
|
|
|
+
|
|
|
+ULONG CWxAdoImpl::Release()
|
|
|
+{
|
|
|
+ InterlockedDecrement( &m_nRef ); //减少引用计数;
|
|
|
+ //如果为0,删除对象
|
|
|
+ if( m_nRef == 0 )
|
|
|
+ {
|
|
|
+ delete this;
|
|
|
+ }
|
|
|
+ return m_nRef;
|
|
|
+}
|
|
|
+
|
|
|
+HRESULT CWxAdoImpl::QueryInterface(REFIID refiid, void **ppvObject)
|
|
|
+{
|
|
|
+ if (IID_IUnknown == refiid)
|
|
|
+ {
|
|
|
+ *ppvObject = this;
|
|
|
+ }
|
|
|
+ else if (IID_IWxAdoInterface == refiid)
|
|
|
+ {
|
|
|
+ *ppvObject = (IWxAdoInterface*)this;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ *ppvObject = NULL;
|
|
|
+ return E_NOINTERFACE;
|
|
|
+ }
|
|
|
+ ((IUnknown*)(*ppvObject))->AddRef();
|
|
|
+
|
|
|
+ return NOERROR;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/25/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+void CWxAdoImpl::SolveDBError( IN CONST DWORD &dwError, IN LPVOID pDBConn)
|
|
|
+{
|
|
|
+ switch(dwError)
|
|
|
+ {
|
|
|
+ //case SQL_ERROR://这个错误比较难精确判断问题;
|
|
|
+ case ERROR_PIPE_NOT_CONNECTED:
|
|
|
+ case WSAECONNRESET:
|
|
|
+ case WSAECONNABORTED:
|
|
|
+ {
|
|
|
+ pAdoObj pObj = (pAdoObj)pDBConn;
|
|
|
+ CWxAdoPool::GetInstance()->CloseBusyConnection(pObj);
|
|
|
+#if _DEBUG
|
|
|
+ OutputDebugString(_T("关闭数据库连接\n"));
|
|
|
+#endif
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/25/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+DWORD CWxAdoImpl::InitializePool( IN LPCTSTR lpDBSource, IN CONST DWORD &dwDBPort, IN LPCTSTR lpDBAccount, IN LPCTSTR lpPassWord, IN LPCTSTR lpDBName, IN CONST INT &nMinConn /* = 1 */, IN CONST INT &nMaxConn /* = 5 */ )
|
|
|
+{
|
|
|
+ return CWxAdoPool::GetInstance()->InitializePool(lpDBSource, dwDBPort, lpDBAccount, lpPassWord, lpDBName, nMinConn, nMaxConn);
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/25/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+void CWxAdoImpl::ReleasePool()
|
|
|
+{
|
|
|
+ CWxAdoPool::GetInstance()->ReleasePool();
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/25/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+BOOL CWxAdoImpl::ExecuteSQL( IN LPCTSTR lpExcuteSQL, IN CONST DWORD &dwTimeOut /* = 30000 */ )
|
|
|
+{
|
|
|
+ GETDBPTR(dwTimeOut);
|
|
|
+
|
|
|
+ try
|
|
|
+ {
|
|
|
+ if ( lpExcuteSQL == NULL )
|
|
|
+ return FALSE;
|
|
|
+
|
|
|
+ pObj->pCommand->CommandText = _bstr_t(lpExcuteSQL);
|
|
|
+ // 执行SQL语句,返回记录集
|
|
|
+ pObj->pCommand->Execute(NULL, NULL, adCmdText);
|
|
|
+ }
|
|
|
+ catch (CDBException* e)
|
|
|
+ {
|
|
|
+ //Global::WriteTextLog(_T("%s,%d,%s:%s"), __FILE__, __LINE__, __FUNCTION__, e->m_strError);
|
|
|
+ Global::WriteTextLog(_T("%s\n%s"), lpExcuteSQL, e->m_strError);
|
|
|
+ SolveDBError(e->m_nRetCode, pObj);
|
|
|
+ e->Delete();
|
|
|
+ return FALSE;
|
|
|
+ }
|
|
|
+
|
|
|
+ return TRUE;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/25/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+BOOL CWxAdoImpl::IsUserExist( IN LPCTSTR lpStudioID, IN LPCTSTR lpAccount, IN LPCTSTR lpPassword, OUT LPVOID lpOutUserInfo,IN CONST DWORD &dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return TRUE;
|
|
|
+}
|
|
|
+
|
|
|
+INT CWxAdoImpl::QueryUserDetail(IN LPCTSTR lpStudioID, IN LPVOID lpUserDetail, IN CONST DWORD & dwTimeOut)
|
|
|
+{
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/25/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryUserDetail( IN LPCTSTR lpStudioID, IN LPCTSTR lpAccount, IN LPCTSTR lpPassword, OUT LPVOID lpOutUserInfo,IN CONST DWORD &dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return USER_NULL;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/25/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryDepartmentInfo( IN LPCTSTR lpStudioID, OUT LPVOID lpOutDepartmentInfo, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/25/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryStaffInfo(IN LPCTSTR lpStudioID, OUT LPVOID lpOutStaffInfo, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/28/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryUserInfo(IN LPCTSTR lpStudioID, OUT LPVOID lpOutUserInfo, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/30/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryProductType(IN LPCTSTR lpStudioID, OUT LPVOID lpOutProductType, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/30/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryProductInfo(IN LPCTSTR lpStudioID, OUT LPVOID lpOutProductInfo, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/30/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QuerySceneryInfo(IN LPCTSTR lpStudioID, OUT LPVOID lpOutSceneryInfo, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/30/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryPackageType(IN LPCTSTR lpStudioID, OUT LPVOID lpOutPackageType, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/30/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryPackageInfo(IN LPCTSTR lpStudioID, OUT LPVOID lpOutPackageInfo, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[9/30/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryPackageItems(IN LPCTSTR lpStudioID, OUT LPVOID lpOutPackageItems, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/5/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryPackageItemsView(IN LPCTSTR lpStudioID, OUT LPVOID lpOutPackageItems, IN CONST DWORD & dwTimeOut)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/5/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryPackageItemsDetail(IN LPCTSTR lpStudioID, IN LPCTSTR lpPackageSN, OUT LPVOID lpOutPackageItems, IN CONST DWORD & dwTimeOut)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/5/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryCustomerType(IN LPCTSTR lpStudioID, OUT LPVOID lpOutCustomerFrom, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/5/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryCustomerInfo(IN LPCTSTR lpStudioID, OUT LPVOID lpOutCustomerInfo, IN LPCTSTR lpFilter, IN CONST DWORD& dwTimeOut /* = 3000 */)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/5/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryOrderType(IN LPCTSTR lpStudioID, OUT LPVOID lpOutOrderType, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/16/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryOrderInfo(IN LPCTSTR lpStudioID, OUT LPVOID lpOutOrderInfo, IN LPCTSTR lpFilter, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/16/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryOrderScenery(IN LPCTSTR lpStudioID, OUT LPVOID lpOutOrderScenery, IN LPCTSTR lpFilter, IN CONST DWORD& dwTimeOut /* = 3000 */)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/16/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryOrderPackageItems(IN LPCTSTR lpStudioID, OUT LPVOID lpOutOrderPackageItems, IN LPCTSTR lpFilter, IN CONST DWORD& dwTimeOut /* = 3000 */)
|
|
|
+{
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/16/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QuerySysConfig(IN LPCTSTR lpStudioID, OUT LPVOID lpOutSysConfig, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/16/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryLog(IN LPCTSTR lpStudioID, OUT LPVOID lpOutLog, IN CONST DWORD& dwTimeOut /* = 3000 */ )
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/27/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryStudioInfo(IN LPCTSTR lpStudioID, OUT LPVOID lpOutStudioInfo, IN CONST DWORD & dwTimeOut)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/27/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::SupQueryStudioInfo(OUT LPVOID lpOutStudioInfo, IN CONST DWORD & dwTimeOut)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[2/26/2017 Jeff];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryMaxOrderId(IN LPCTSTR lpStudioID, IN CONST DWORD& dwTimeOut /* = 3000 */)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[2/26/2017 Jeff];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+INT CWxAdoImpl::QueryMaxPrintId(IN LPCTSTR lpStudioID, IN CONST DWORD& dwTimeOut /* = 3000 */)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+/************************************************************************/
|
|
|
+/* 函数:[10/27/2016 IT];
|
|
|
+/* 描述:;
|
|
|
+/* 参数:;
|
|
|
+/* [IN] :;
|
|
|
+/* [OUT] :;
|
|
|
+/* [IN/OUT] :;
|
|
|
+/* 返回:void;
|
|
|
+/* 注意:;
|
|
|
+/* 示例:;
|
|
|
+/*
|
|
|
+/* 修改:;
|
|
|
+/* 日期:;
|
|
|
+/* 内容:;
|
|
|
+/************************************************************************/
|
|
|
+BOOL CWxAdoImpl::InsertStudioInfo(IN LPVOID lpStudioInfo, IN CONST DWORD & dwTimeOut)
|
|
|
+{
|
|
|
+
|
|
|
+
|
|
|
+ return FALSE;
|
|
|
+}
|
|
|
+
|
|
|
+BOOL CWxAdoImpl::UpdateStudioInfo(IN LPVOID lpStudioInfo, IN CONST DWORD & dwTimeOut)
|
|
|
+{
|
|
|
+
|
|
|
+ return FALSE;
|
|
|
+}
|
|
|
+
|
|
|
+/*
|
|
|
+GETDBPTR(dwTimeOut);
|
|
|
+try
|
|
|
+{
|
|
|
+
|
|
|
+}
|
|
|
+catch (CDBException* e)
|
|
|
+{
|
|
|
+e->ReportError();
|
|
|
+SolveDBError(e->m_nRetCode, pDatabase);
|
|
|
+e->Delete();
|
|
|
+return FALSE;
|
|
|
+}
|
|
|
+return TRUE;
|
|
|
+*/
|