2025-01-03 16:47:25 +08:00
// SendThread.cpp : implementation file
//
# include "stdafx.h"
# include "SmsCenter.h"
# include "SendThread.h"
# ifdef _DEBUG
# define new DEBUG_NEW
# undef THIS_FILE
static char THIS_FILE [ ] = __FILE__ ;
# endif
/////////////////////////////////////////////////////////////////////////////
// CSendThread
# include "SmsCenterDlg.h"
extern CSmsCenterApp theApp ;
BOOL g_bInit2 = false ;
CSmsCenterDlg * g_pSMSDlg2 = NULL ;
# include <afxinet.h>
# pragma comment(lib, "wininet.lib")
IMPLEMENT_DYNCREATE ( CSendThread , CWinThread )
CSendThread : : CSendThread ( )
{
m_lSendCount = 0 ;
m_bSend = false ;
}
CSendThread : : ~ CSendThread ( )
{
}
BOOL CSendThread : : InitInstance ( )
{
// TODO: perform and per-thread initialization here
return TRUE ;
}
int CSendThread : : ExitInstance ( )
{
return CWinThread : : ExitInstance ( ) ;
}
BEGIN_MESSAGE_MAP ( CSendThread , CWinThread )
//{{AFX_MSG_MAP(CSendThread)
// NOTE - the ClassWizard will add and remove mapping macros here.
//}}AFX_MSG_MAP
END_MESSAGE_MAP ( )
/////////////////////////////////////////////////////////////////////////////
// CSendThread message handlers
BOOL CSendThread : : Recv_Sms ( HANDLE & hPipe , SmsSendData sms , CAdoRecordSet * pAdoRS , CAdoRecordSet * pAdoRS2 , CAdoRecordSet * pAdoRS3 , CSmsCenterDlg * pSMSDlg )
{
try
{
CString str ;
CString strSelect ;
CString strAllNum = sms . szRecvNum ;
CString strExTFH ;
CString strExCorpNum ;
CString strCorpNum ;
CString strUserNum ;
CString strExNum ;
CString strGroupID ;
CString strSender ;
CString strRecver ;
CString strProv ;
CString strCity ;
CString strSName = _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " ) ;
TCHAR szUpSms [ 256 ] = { 0 } ;
long lCorpID = 0 ;
long lUserID = 0 ;
DWORD lPurview = 0 ;
BOOL bSWT = false ;
long lTFHBegin = 0 ;
long lTDMode = 0 ;
2025-04-10 15:34:24 +08:00
if ( sms . lCorpID < = 0 ) //û<> <C3BB> <EFBFBD> <EFBFBD> ҵID<49> <44> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> ݺ<EFBFBD> <DDBA> <EFBFBD> ƥ<EFBFBD> <C6A5> <EFBFBD> <EFBFBD> ҵ<EFBFBD> <D2B5> <EFBFBD> û<EFBFBD>
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
//<2F> <> ͨ<EFBFBD> <CDA8> ID
CString strTDNum ;
long lLen = strAllNum . GetLength ( ) ;
for ( int i = lLen ; i > = 0 ; i - - )
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
strTDNum = strAllNum . Left ( i ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʼ <EFBFBD> <CABC> λ<EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> Ϊ<EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD>
str . Format ( _T ( " select * from TD2 with(nolock) where Ability=0 and AccessPort='%s' " ) , strTDNum ) ;
if ( strTDNum . GetLength ( ) > 0 & & pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
lTFHBegin = i ;
pAdoRS - > GetCollect ( _T ( " Mode " ) , lTDMode ) ;
break ;
2025-01-03 16:47:25 +08:00
}
2025-04-10 15:34:24 +08:00
}
if ( lTFHBegin > 0 )
{
strExTFH = strAllNum . Right ( strAllNum . GetLength ( ) - lTFHBegin ) ; //<2F> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> ط<EFBFBD> <D8B7> ź<EFBFBD> ʣ<EFBFBD> µĺ<C2B5> <C4BA> <EFBFBD>
//<2F> <> ѯ<EFBFBD> <D1AF> ҵID
long lLen = strExTFH . GetLength ( ) ;
for ( int i = lLen ; i > = 0 ; i - - )
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
strCorpNum = strExTFH . Left ( i ) ; //<2F> <> <EFBFBD> ҿ<EFBFBD> ʼ <EFBFBD> <CABC> λ<EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> ҵ<EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD>
if ( lTDMode = = 1 | | lTDMode = = 2 ) //Ѹ<> <D1B8> <EFBFBD> ڰ<EFBFBD> <DAB0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͣ<EFBFBD> <CDA3> <EFBFBD> <EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD> 2<EFBFBD> <32> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> չ<EFBFBD> <D5B9>
{
str . Format ( _T ( " select * from Corp with(nolock) where SMSNum2='%s' " ) , strCorpNum ) ;
}
else
{
str . Format ( _T ( " select * from Corp with(nolock) where SMSNum='%s' " ) , strCorpNum ) ;
}
if ( strCorpNum . GetLength ( ) > 0 & & pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ;
pAdoRS - > GetCollect ( _T ( " SName " ) , strSName ) ;
pAdoRS - > GetCollect ( _T ( " UpSms " ) , szUpSms ) ;
break ;
}
2025-01-03 16:47:25 +08:00
}
}
2025-04-10 15:34:24 +08:00
else
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
//ͨ<> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> Ҳ<EFBFBD> <D2B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֮ͨ<CDA8> <D6AE> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 룬<EFBFBD> <EBA3AC> QXT_SmsNum<75> в<EFBFBD> <D0B2> <EFBFBD> <EFBFBD> <EFBFBD> ҵID
long lLen = strAllNum . GetLength ( ) ;
for ( int i = lLen ; i > = 0 ; i - - )
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
strTDNum = strAllNum . Left ( i ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʼ <EFBFBD> <CABC> λ<EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> Ϊ<EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD>
str . Format ( _T ( " select * from corp with(nolock) where QXT_SmsNum='%s' " ) , strTDNum ) ;
if ( strTDNum . GetLength ( ) > 0 & & pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
lTFHBegin = i ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ;
pAdoRS - > GetCollect ( _T ( " SName " ) , strSName ) ;
pAdoRS - > GetCollect ( _T ( " UpSms " ) , szUpSms ) ;
2025-01-03 16:47:25 +08:00
2025-04-10 15:34:24 +08:00
strExTFH = strAllNum . Right ( strAllNum . GetLength ( ) - lTFHBegin ) ; //<2F> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> ط<EFBFBD> <D8B7> ź<EFBFBD> ʣ<EFBFBD> µĺ<C2B5> <C4BA> <EFBFBD>
2025-01-03 16:47:25 +08:00
2025-04-10 15:34:24 +08:00
break ;
}
2025-01-03 16:47:25 +08:00
}
}
2025-04-10 15:34:24 +08:00
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> ID
if ( lCorpID > 0 )
{
strExCorpNum = strExTFH . Right ( strExTFH . GetLength ( ) - strCorpNum . GetLength ( ) ) ; //<2F> ų<EFBFBD> <C5B3> <EFBFBD> ҵ<EFBFBD> ط<EFBFBD> <D8B7> ź<EFBFBD> ʣ<EFBFBD> µĺ<C2B5> <C4BA> <EFBFBD>
long lLen = strExCorpNum . GetLength ( ) ;
for ( int i = lLen ; i > = 0 ; i - - )
{
strUserNum = strExCorpNum . Left ( i ) ; //<2F> <> <EFBFBD> ҿ<EFBFBD> ʼ <EFBFBD> <CABC> λ<EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> ҵ<EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD>
str . Format ( _T ( " select * from Users with(nolock) where CorpID=%d and SMSNum='%s' " ) , lCorpID , strUserNum ) ;
if ( strUserNum . GetLength ( ) > 0 & & pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID ) ;
pAdoRS - > GetCollect ( _T ( " Name " ) , strRecver ) ;
pAdoRS - > GetCollect ( _T ( " purview " ) , lPurview ) ;
pAdoRS - > GetCollect ( _T ( " GroupID " ) , strGroupID ) ;
if ( lPurview & PURVIEW_LOGIN & & lPurview & PURVIEW_RECVP ) //<2F> е <EFBFBD> ¼Ȩ<C2BC> ޣ<EFBFBD> <DEA3> <EFBFBD> <EFBFBD> ɽ<EFBFBD> <C9BD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> Ϣ
{
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID ) ;
long lSDK ;
pAdoRS - > GetCollect ( _T ( " SDK " ) , lSDK ) ;
bSWT = lSDK & SDK_SWT ? true : false ;
}
break ;
}
}
}
strExNum = strExTFH . Right ( strExTFH . GetLength ( ) - strCorpNum . GetLength ( ) - strUserNum . GetLength ( ) ) ;
2025-01-03 16:47:25 +08:00
}
2025-04-10 15:34:24 +08:00
else
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
//<2F> <> <EFBFBD> <EFBFBD> ҵID<49> ģ<EFBFBD> ֱ<EFBFBD> <D6B1> ȡ<EFBFBD> <C8A1> ҵ<EFBFBD> <D2B5> Ϣ
str . Format ( _T ( " select * from Corp with(nolock) where corpID=%d " ) , sms . lCorpID ) ;
if ( pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ;
pAdoRS - > GetCollect ( _T ( " SName " ) , strSName ) ;
pAdoRS - > GetCollect ( _T ( " UpSms " ) , szUpSms ) ;
//ȡȡ<C8A1> <C8A1> ҵ<EFBFBD> <D2B5> <EFBFBD> ϣ<EFBFBD> <CFA3> ټ<EFBFBD> <D9BC> <EFBFBD> ȡ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD>
if ( sms . lUserID > 0 )
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
str . Format ( _T ( " select * from Users with(nolock) where userID=%d " ) , sms . lUserID ) ;
if ( pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
2025-01-03 16:47:25 +08:00
{
2025-04-10 15:34:24 +08:00
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID ) ;
pAdoRS - > GetCollect ( _T ( " Name " ) , strRecver ) ;
pAdoRS - > GetCollect ( _T ( " purview " ) , lPurview ) ;
pAdoRS - > GetCollect ( _T ( " GroupID " ) , strGroupID ) ;
/*
if ( lPurview & PURVIEW_LOGIN & & lPurview & PURVIEW_RECVP ) //<2F> е <EFBFBD> ¼Ȩ<C2BC> ޣ<EFBFBD> <DEA3> <EFBFBD> <EFBFBD> ɽ<EFBFBD> <C9BD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> Ϣ
{
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID ) ;
long lSDK ;
pAdoRS - > GetCollect ( _T ( " SDK " ) , lSDK ) ;
bSWT = lSDK & SDK_SWT ? true : false ;
}
*/
2025-01-03 16:47:25 +08:00
}
}
}
}
/*
//<2F> <> <EFBFBD> յ<EFBFBD> <D5B5> Ķ<EFBFBD> <C4B6> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ҳ<EFBFBD> <D2B3>
if ( lCorpID2 > 0 & & _tcslen ( szUpSms ) > 0 & & bSubmitSms )
{
UpSmsS * pUpSms = new UpSmsS ;
_tcscpy ( pUpSms - > szSendNum , data . szSendNum ) ;
_tcscpy ( pUpSms - > szRecvNum , data . szRecvNum ) ;
_tcscpy ( pUpSms - > szMsg , data . szMsg ) ;
_tcscpy ( pUpSms - > szUrl , szUpSms ) ;
pUpSms - > tSendTime = data . tSendTime ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ߳̽<DFB3> <CCBD> д<EFBFBD> <D0B4> <EFBFBD>
: : AfxBeginThread ( ( AFX_THREADPROC ) UpSms , ( LPVOID ) pUpSms , THREAD_PRIORITY_BELOW_NORMAL ) ;
}
*/
//<2F> <> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> Ź<EFBFBD> <C5B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
long lMobileType = MOBILE_TYPE_UNKNOW ;
strSender = CSendPub : : GetMobileProvCity ( pAdoRS2 , sms . szSendNum , lMobileType , strProv , strCity ) ;
//<2F> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
BOOL bReportNumber = false ;
DWORD dwType = 0 ;
str . Format ( _T ( " select * from reportnum with(nolock) where (Mobile='%s' or WxWorkName='%s') and Status=1 " ) , sms . szSendNum , sms . szSendNum ) ;
if ( pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
bReportNumber = true ;
pAdoRS - > GetCollect ( _T ( " Type " ) , dwType ) ;
pAdoRS - > Close ( ) ;
}
if ( pSMSDlg - > m_WxWork . bSend & & ( CString ( sms . szSendNum ) . MakeUpper ( ) = = CString ( pSMSDlg - > m_WxWork . szWxName ) . MakeUpper ( ) ) ) //<> <CEA2> ע<EFBFBD> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> <CBB6> š<EFBFBD>
{
bReportNumber = true ;
dwType = dwType | REPORT_CHECKUP ;
}
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8>
ProcessUp ( pSMSDlg , dwType , lMobileType , sms , pAdoRS , pAdoRS2 , pAdoRS3 , bReportNumber , lCorpID , lUserID , lTDMode , strSName ) ;
//<2F> <> <EFBFBD> յ<EFBFBD> <D5B5> Ķ<EFBFBD> <C4B6> ŷ<EFBFBD> <C5B7> 뷢<EFBFBD> <EBB7A2> <EFBFBD> б <EFBFBD>
SmsSendData data = { 0 } ;
data . lCorpID = lCorpID ;
data . lUserID = lUserID ;
data . lSendID = 0 ; //<2F> <> Ϊ<EFBFBD> ǽ<EFBFBD> <C7BD> գ <EFBFBD> SendID=0
data . lStatus = SEND_STATUS_RECV_OK ; //<2F> <> <EFBFBD> ճɹ<D5B3>
data . lMsgType = SMSTYPE_RECV ;
_tcscpy ( data . szGroupID , strGroupID ) ;
_tcscpy ( data . szSendNum , sms . szSendNum ) ;
_tcscpy ( data . szRecvNum , sms . szRecvNum ) ;
_tcscpy ( data . szRecver , strRecver ) ;
_tcscpy ( data . szSender , strSender ) ;
_tcscpy ( data . szMsg , sms . szMsg ) ;
_tcscpy ( data . szRecvStatus , strExNum ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> չ<EFBFBD> <D5B9> <EFBFBD> <EFBFBD>
data . tSendTime = sms . tSendTime ;
//<2F> <> <EFBFBD> յ<EFBFBD> <D5B5> Ķ<EFBFBD> <C4B6> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ҳ<EFBFBD> <D2B3>
if ( lCorpID > 0 & & _tcslen ( szUpSms ) > 0 )
{
UpSmsS * pUpSms = new UpSmsS ;
memset ( pUpSms , 0 , sizeof ( UpSmsS ) ) ;
pUpSms - > lCorpID = lCorpID ;
pUpSms - > lUserID = lUserID ;
pUpSms - > lType = 0 ; //<2F> <> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD>
pUpSms - > pDlg = pSMSDlg ;
_tcscpy ( pUpSms - > szSendNum , data . szSendNum ) ;
_tcscpy ( pUpSms - > szRecvNum , data . szRecvNum ) ;
_tcscpy ( pUpSms - > szAddNum , data . szRecvStatus ) ; //<2F> <> չ<EFBFBD> <D5B9> <EFBFBD> <EFBFBD>
_tcscpy ( pUpSms - > szMsg , data . szMsg ) ;
if ( szUpSms [ 0 ] = = ' A ' ) //<2F> и<EFBFBD> A<EFBFBD> <41> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> ʾ <EFBFBD> <CABE> <EFBFBD> <EFBFBD> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD>
_tcscpy ( pUpSms - > szUrl , szUpSms + 1 ) ;
else
_tcscpy ( pUpSms - > szUrl , szUpSms ) ;
pUpSms - > tSendTime = data . tSendTime ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ߳̽<DFB3> <CCBD> д<EFBFBD> <D0B4> <EFBFBD>
//::AfxBeginThread((AFX_THREADPROC)Recv_Sms_UpSms,(LPVOID)pUpSms,THREAD_PRIORITY_BELOW_NORMAL);
QueueUserWorkItem ( Recv_Sms_UpSms , ( LPVOID ) pUpSms , WT_EXECUTELONGFUNCTION ) ;
}
//<2F> <> ֹ'<27> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
CString strTempMsg = data . szMsg ;
strTempMsg . Replace ( _T ( " ' " ) , _T ( " '' " ) ) ;
CString strSubTime ;
strSubTime . Format ( _T ( " '%04d%02d%02d %02d:%02d:%02d' " ) , sms . tSendTime . wYear , sms . tSendTime . wMonth , sms . tSendTime . wDay , sms . tSendTime . wHour , sms . tSendTime . wMinute , sms . tSendTime . wSecond ) ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> ݵ<EFBFBD> smsrecvlog<6F> <67> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " insert into smsrecvlog(corpid,userid,groupid,Sender,sendnum,recver,recvnum,AddNum,recvnumtype,msg,subtime,LongMsg) values (%d,%d,'%s','%s','%s','%s','%s','%s',%d,'%s',%s,'%s') " ) ,
data . lCorpID ,
data . lUserID ,
data . szGroupID ,
data . szSender ,
data . szSendNum ,
data . szRecver ,
data . szRecvNum ,
strExNum ,
lMobileType ,
strTempMsg ,
strSubTime ,
sms . szRecver
) ;
BOOL b = pAdoRS - > Open ( strSelect ) ;
//ȡID
strSelect = _T ( " SELECT SCOPE_IDENTITY() " ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( ( long ) 0 , data . lSendID ) ;
//<2F> ٲ<EFBFBD> <D9B2> 뵽corpsmsm.dbo.smssend <20> <>
strSelect . Format ( _T ( " insert into corpsmsm.dbo.smssend (SendID , CorpID,UserID,GroupID,Status,Sender,SendNum,RecvNum,RecvNumType,Recver,Msg,MsgType,SubTime,SendTime,RecvTime,RecvStatus,KF,MsgID) values (%d,%d,%d,'%s',%d,'%s','%s','%s',%d,'%s','%s',%d,%s,%s,%s,'%s',0,'%s') " ) ,
data . lSendID ,
data . lCorpID ,
data . lUserID ,
data . szGroupID ,
data . lStatus ,
data . szSender ,
data . szSendNum ,
data . szRecvNum ,
lMobileType ,
data . szRecver ,
strTempMsg ,
data . lMsgType ,
strSubTime ,
strSubTime ,
strSubTime ,
strExNum ,
sms . szRecver ) ;
BOOL b = pAdoRS - > Open ( strSelect ) ;
if ( lCorpID > 0 )
{
_tcscpy ( data . szMsg , sms . szMsg ) ;
_tcscpy ( data . szMsgID , sms . szRecver ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ
if ( ! pSMSDlg - > SocketPushMsg ( pAdoRS , data , strProv , strCity ) ) //û<> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> ͵<EFBFBD> <CDB5> ͻ<EFBFBD> <CDBB> ˣ<EFBFBD> <CBA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ķ˵ģ<CBB5> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD>
{
# if (defined(SMSCENTER_ONE)||defined(SMSCENTER_TWO)) && defined(_UNICODE) && !defined(SMSCENTER_DEMO) //<2F> <> <EFBFBD> ͵<EFBFBD> <CDB5> <EFBFBD> UNICODE<44> Ŀͻ<C4BF> <CDBB> <EFBFBD>
////PushRecvSmsToOtherCenter(hPipe, data, strProv, strCity);
//PushRecvSmsToOtherCenter(pAdoRS, data, strProv, strCity);
# endif
}
}
}
/*
strSelect . Format ( _T ( " insert into smssend (CorpID,UserID,GroupID,Status,Sender,SendNum,RecvNum,RecvNumType,Recver,Msg,MsgType,SubTime,SendTime,RecvTime,RecvStatus,KF,MsgID) values (%d,%d,'%s',%d,'%s','%s','%s',%d,'%s','%s',%d,%s,%s,%s,'%s',0,'%s') " ) ,
data . lCorpID ,
data . lUserID ,
data . szGroupID ,
data . lStatus ,
data . szSender ,
data . szSendNum ,
data . szRecvNum ,
lMobileType ,
data . szRecver ,
strTempMsg ,
data . lMsgType ,
strSubTime ,
strSubTime ,
strSubTime ,
szExNumb2 ,
sms . szRecver ) ;
BOOL b = pAdoRS - > Open ( strSelect ) ;
if ( b & & lCorpID > 0 )
{
//ȡSendID
//strSelect.Format( _T("select * from smssend where UserID=%d AND SubTime=%s AND MsgType=%d order by SubTime desc") , data.lUserID,strSubTime,data.lMsgType);
//strSelect.Format( "select SendID from smssend where UserID=%d and RecvTime=%s",data.lUserID,strSubTime);
//if ( pAdoRS->Open(strSelect) && !pAdoRS->IsEOF())
strSelect = _T ( " SELECT SCOPE_IDENTITY(); " ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( ( long ) 0 , data . lSendID ) ;
//pAdoRS->GetCollect( _T("SendID") , data.lSendID );
//<2F> յ<EFBFBD> <D5B5> <EFBFBD> <EFBFBD> ţ<EFBFBD> ֪ͨ<CDA8> <D6AA> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> û<EFBFBD>
//SmsSendData * psms = new SmsSendData;
//*psms = data;
//_tcscpy( psms->szMsg , sms.szMsg );
//pSMSDlg->On_User_PushMsg( SMS_PUSH , (WPARAM)psms , 0 );
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> ݵ<EFBFBD> smsrecvlog<6F> <67> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " insert into smsrecvlog(sendid,corpid,userid,groupid,Sender,sendnum,recver,recvnum,AddNum,recvnumtype,msg,subtime,LongMsg) values (%d,%d,%d,'%s','%s','%s','%s','%s','%s',%d,'%s',%s,'%s') " ) ,
data . lSendID ,
data . lCorpID ,
data . lUserID ,
data . szGroupID ,
data . szSender ,
data . szSendNum ,
data . szRecver ,
data . szRecvNum ,
szExNumb2 ,
lMobileType ,
strTempMsg ,
strSubTime ,
sms . szRecver
) ;
pAdoRS - > Open ( strSelect ) ;
_tcscpy ( data . szMsg , sms . szMsg ) ;
_tcscpy ( data . szMsgID , sms . szRecver ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ
if ( bSubmitSms )
{
pSMSDlg - > SocketPushMsg ( pAdoRS , data , strProv , strCity ) ;
}
}
}
# endif
if ( lCorpID < = 0 ) //û<> ҵ<EFBFBD> <D2B5> <EFBFBD> Ӧ<EFBFBD> <D3A6> ҵID,<2C> ˳<EFBFBD>
return false ;
*/
//<2F> Ȳ<EFBFBD> ѯ<EFBFBD> Ƿ<EFBFBD> Ҫת<D2AA> <D7AA>
if ( lUserID ! = 0 ) //<2F> <> <EFBFBD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> Ϣ
strSelect . Format ( _T ( " select * from smszf where UserID=%d AND ((BZF='1' or BZF='5') or (BZF='3' or BZF='7') and '%s' in (select mobile from smszf where UserID=%d)) " ) , lUserID , sms . szSendNum , lUserID ) ;
else
strSelect . Format ( _T ( " select * from smszf where CorpID=%d AND UserID=0 AND ((BZF='1' or BZF='5') or (BZF='3' or BZF='7') and '%s' in (select mobile from smszf where CorpID=%d and UserID=0)) " ) , lCorpID , sms . szSendNum , lCorpID ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) ) //<2F> <> Ҫת<D2AA> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD>
{
TCHAR szTemp [ 32 ] = { 0 } ;
pAdoRS - > GetCollect ( _T ( " BZF " ) , szTemp ) ;
long lZF = szTemp [ 0 ] - ' 0 ' ;
//<2F> <> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD>
CString strSender ;
strSelect . Format ( _T ( " select * from smszf with(nolock) where CorpID=%d and Mobile='%s' " ) , lCorpID , sms . szSendNum ) ;
if ( pAdoRS2 - > Open ( strSelect ) & & ! pAdoRS2 - > IsEOF ( ) )
{
pAdoRS2 - > GetCollect ( _T ( " Name " ) , strSender ) ;
pAdoRS2 - > Close ( ) ;
}
//<2F> ڹ<EFBFBD> <DAB9> <EFBFBD> ͨѶ¼<D1B6> м<EFBFBD> <D0BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " select * from corpsmsa.dbo.gaddress with(nolock) where CorpID=%d and Mobile='%s' " ) , lCorpID , sms . szSendNum ) ;
if ( strSender . GetLength ( ) < = 0 & & pAdoRS2 - > Open ( strSelect ) & & ! pAdoRS2 - > IsEOF ( ) )
{
pAdoRS2 - > GetCollect ( _T ( " Name " ) , strSender ) ;
pAdoRS2 - > Close ( ) ;
}
//<2F> <> <EFBFBD> ʺŹ<CABA> <C5B9> <EFBFBD> <EFBFBD> м<EFBFBD> <D0BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " select * from users with(nolock) where CorpID=%d and Mobile='%s' " ) , lCorpID , sms . szSendNum ) ;
if ( strSender . GetLength ( ) < = 0 & & pAdoRS2 - > Open ( strSelect ) & & ! pAdoRS2 - > IsEOF ( ) )
{
pAdoRS2 - > GetCollect ( _T ( " Name " ) , strSender ) ;
pAdoRS2 - > Close ( ) ;
}
//pAdoRS->MoveFirst();
SYSTEMTIME t ; : : GetLocalTime ( & t ) ;
while ( ! pAdoRS - > IsEOF ( ) )
{
SubmitData data = { 0 } ;
data . lCorpID = lCorpID ;
data . lUserID = lUserID ;
pAdoRS - > GetCollect ( _T ( " Name " ) , data . szName ) ;
pAdoRS - > GetCollect ( _T ( " Mobile " ) , data . szMobile ) ;
/*
//<2F> ȷ<EFBFBD> <C8B7> <EFBFBD> <EFBFBD> <EFBFBD> ʾ
_stprintf ( data . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <EFBFBD> ֪ͨ:\n <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %02d.%02d %02d:%02dʱ<64> յ<EFBFBD> %s<> Ķ<EFBFBD> <C4B6> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> ݼ<EFBFBD> <DDBC> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> š<EFBFBD> " ) , sms . szRecvNum , t . wMonth , t . wDay , t . wHour , t . wMinute , sms . szSendNum ) ;
SubmitSms ( data , pAdoRS2 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
//<2F> ٷ<EFBFBD> <D9B7> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
_tcscpy ( data . szMsg , sms . szMsg ) ;
SubmitSms ( data , pAdoRS2 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
*/
//<2F> ϳ <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
memset ( data . szSendNum , 0 , sizeof ( data . szSendNum ) ) ;
if ( strSender . GetLength ( ) < = 0 )
_stprintf ( data . szMsg , _T ( " ת<EFBFBD> <EFBFBD> %s:%s " ) , sms . szSendNum , sms . szMsg ) ;
else
_stprintf ( data . szMsg , _T ( " %s:%s " ) , strSender , sms . szMsg ) ;
data . lItem = 100 ; //<2F> д˱<D0B4> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
if ( lZF & SMSZF_LONGSMS ) //<2F> Ƿ<EFBFBD> ǿ<EFBFBD> <C7BF> ʹ <EFBFBD> ó<EFBFBD> <C3B3> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA>
{
data . lItemID = 100 ;
}
SubmitSms ( data , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
pAdoRS - > MoveNext ( ) ;
}
}
/*
//<2F> <> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <E2B4A6>
if ( bSWT )
{
long lAddNum = 0 ;
TCHAR szAddNum [ 32 ] = { 0 } ;
_tcscpy ( szAddNum , szExNumb + _tcslen ( szExNum ) + _tcslen ( szExNum2 ) ) ;
szAddNum [ 2 ] = 0 ;
lAddNum = _ttol ( szAddNum ) ;
memset ( data . szSendNum , 0 , sizeof ( data . szSendNum ) ) ;
if ( lAddNum > 0 )
{
strSelect . Format ( _T ( " select top 1 * from SWT_Log where UserID=%d and AddNum=%d order by SubTime Desc " ) , lUserID , lAddNum ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
CString strMobile1 ;
CString strMobile2 ;
CString strRecvName ;
long lSWTID = 0 ;
long lWYID = 0 ;
pAdoRS - > MoveFirst ( ) ;
pAdoRS - > GetCollect ( _T ( " SendMobile " ) , strMobile1 ) ;
pAdoRS - > GetCollect ( _T ( " RecvMobile " ) , strMobile2 ) ;
pAdoRS - > GetCollect ( _T ( " RecvName " ) , strRecvName ) ;
pAdoRS - > GetCollect ( _T ( " SWTID " ) , lSWTID ) ;
pAdoRS - > GetCollect ( _T ( " WYID " ) , lWYID ) ;
if ( strMobile1 = = CString ( sms . szSendNum ) ) //Ϊ<> ͻ<EFBFBD> <CDBB> ظ<EFBFBD> <D8B8> Ķ<EFBFBD> <C4B6> <EFBFBD>
{
if ( isMobileNum ( strMobile2 ) ) //ͨ<> <CDA8> <EFBFBD> ֻ<EFBFBD> ת<EFBFBD> <D7AA>
{
SubmitData data = { 0 } ;
data . lCorpID = lCorpID ;
data . lUserID = lUserID ;
_tcscpy ( data . szSendNum , szAddNum ) ;
_tcscpy ( data . szMobile , strMobile2 ) ;
_tcscpy ( data . szMsg , sms . szMsg ) ;
data . lItem = 100 ; //<2F> д˱<D0B4> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
SubmitSms ( data , pAdoRS2 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
//<2F> <> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
strSelect . Format ( _T ( " insert into SWT_Log (CorpID,UserID,SWTID,WYID,SendMobile,RecvName,RecvMobile,Type,Msg,SubTime) values (%d,%d,%d,%d,'%s','%s','%s',0,'%s',GETDATE()) " ) ,
lCorpID , lUserID , lSWTID , lWYID , strMobile1 , strRecvName , strMobile2 , strTempMsg ) ;
pAdoRS - > Open ( strSelect ) ;
}
if ( strMobile2 = = CString ( sms . szSendNum ) ) //Ϊ<> ظ<EFBFBD> <D8B8> <EFBFBD> <EFBFBD> ͻ<EFBFBD> <CDBB> Ķ<EFBFBD> <C4B6> <EFBFBD>
{
if ( isMobileNum ( strMobile1 ) ) //ͨ<> <CDA8> <EFBFBD> ֻ<EFBFBD> ת<EFBFBD> <D7AA>
{
SubmitData data = { 0 } ;
data . lCorpID = lCorpID ;
data . lUserID = lUserID ;
_tcscpy ( data . szSendNum , szAddNum ) ;
_tcscpy ( data . szMobile , strMobile1 ) ;
_tcscpy ( data . szMsg , sms . szMsg ) ;
data . lItem = 100 ; //<2F> д˱<D0B4> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
SubmitSms ( data , pAdoRS2 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
//<2F> <> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
strSelect . Format ( _T ( " insert into SWT_Log (CorpID,UserID,SWTID,WYID,SendMobile,RecvName,RecvMobile,Type,Msg,SubTime) values (%d,%d,%d,%d,'%s','%s','%s',4,'%s',GETDATE()) " ) ,
lCorpID , lUserID , lSWTID , lWYID , strMobile1 , strRecvName , strMobile2 , strTempMsg ) ;
pAdoRS - > Open ( strSelect ) ;
}
}
}
}
*/
if ( data . lUserID = = DEFAULT_SEND_USERID ) //<2F> ط<EFBFBD> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> <E2B4A6>
{
COleDateTime t = COleDateTime : : GetCurrentTime ( ) - COleDateTimeSpan ( 1 , 0 , 0 , 0 ) ;
strSelect . Format ( _T ( " select * from corp_bz where LXRMobile='%s' and NRType=1 and SendSms=1 and SmsRetType=0 and CreateTime>'%04d%02d%02d %02d:%02d' order by CreateTime desc " ) , sms . szSendNum , t . GetYear ( ) , t . GetMonth ( ) , t . GetDay ( ) , t . GetHour ( ) , t . GetMinute ( ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
long lBZID = 0 ;
pAdoRS - > GetCollect ( _T ( " BZID " ) , lBZID ) ;
long lRetType = _ttol ( data . szMsg ) ;
if ( lRetType > 9 )
{
strSelect . Format ( _T ( " %d " ) , lRetType ) ;
lRetType = _ttol ( strSelect . Left ( 1 ) ) ;
}
if ( lRetType < 1 | | lRetType > 3 )
lRetType = 0 ;
strSelect . Format ( _T ( " update corp_bz set SmsRetType='%d' , SmsRetMsg='%s' where BZID=%d " ) , lRetType , strTempMsg , lBZID ) ;
pAdoRS - > Open ( strSelect ) ;
}
}
return true ;
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
return false ;
}
}
long CSendThread : : SubmitSms ( SubmitData & SendData , CAdoRecordSet * pAdoRS , CAdoRecordSet * pAdoRS2 , CSmsCenterDlg * pSMSDlg , long lMobileType , long lSmsType , long lSmsKF )
{
# ifdef SMSCENTER_ADC_TEMP //<2F> <> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> <EFBFBD> ܷ<EFBFBD> <DCB7> Ͷ<EFBFBD> <CDB6> <EFBFBD>
return false ;
# endif
try
{
if ( SendData . lPrority = = 876534 & & CString ( SendData . szName ) . MakeLower ( ) = = CString ( _T ( " WxWork " ) ) . MakeLower ( ) ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵ<D2B5> ŵ<EFBFBD> <C5B5> <EFBFBD> <EFBFBD> <EFBFBD>
{
CString strPT = _T ( " ƽ ̨1" ) ;
# ifdef SMSCENTER_TWO //<2F> ڶ<EFBFBD> <DAB6> <EFBFBD> <EFBFBD> <EFBFBD> ƽ ̨
strPT = _T ( " ƽ ̨2" ) ;
# endif
# ifdef SMSCENTER_THREE //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƽ ̨
strPT = _T ( " ƽ ̨3" ) ;
# endif
CString strSelect ;
SYSTEMTIME t ; GetLocalTime ( & t ) ;
strSelect . Format ( _T ( " %s %04d.%02d.%02d %02d:%02d:%02d<br>%s " ) , strPT , t . wYear , t . wMonth , t . wDay , t . wHour , t . wMinute , t . wSecond , SendData . szMsg ) ;
REQ_WxWork_Send send ;
send . strSender = _T ( " ƽ̨֪ͨ " ) ;
send . strRecver = SendData . szMobile ;
send . strMsg = strSelect ;
pSMSDlg - > m_WxWorkSend . AddTail ( send ) ;
return 0 ;
}
TCHAR szSmsTD [ 32 ] = { 0 } ;
TCHAR szCM [ 64 ] = { 0 } ;
//ȡ<> <C8A1> ҵǩ<D2B5> <C7A9>
CString strSelect ;
if ( SendData . lUserID ! = 0 ) //<2F> <> <EFBFBD> <EFBFBD> UserID==0<> <30> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵת<D2B5> <D7AA>
{
strSelect . Format ( _T ( " select * from users with(nolock) where UserID=%d " ) , SendData . lUserID ) ;
BOOL b = pAdoRS - > Open ( strSelect ) ;
if ( b & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " CM2 " ) , szCM ) ;
}
}
strSelect . Format ( _T ( " select * from corp with(nolock) where CorpID=%d " ) , SendData . lCorpID ) ;
BOOL b = pAdoRS - > Open ( strSelect ) ;
if ( b & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " SMSTD " ) , szSmsTD ) ; _tcscat ( szSmsTD , _T ( " 000000 " ) ) ; //ȡ<> ö<EFBFBD> <C3B6> <EFBFBD> ͨ<EFBFBD> <CDA8>
if ( _tcslen ( szCM ) < = 0 )
pAdoRS - > GetCollect ( _T ( " CM " ) , szCM ) ;
}
long lMaxSendLenB = MSG_MAXSENDLEN ;
long lZDCMLen = 0 ;
# if defined(SMSCENTER_NX) && defined(SMSCENTER_GDDX) //ũ<> <C5A9> <EFBFBD> Դ<EFBFBD> ǩ<EFBFBD> <C7A9> 6<EFBFBD> <36> <EFBFBD> <EFBFBD>
lZDCMLen = 6 ;
# endif
2025-02-27 16:52:06 +08:00
# if defined(SMSCENTER_NX) && defined(SMSCENTER_DGSB) //<2F> 籣<EFBFBD> ֵ<EFBFBD> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 6<EFBFBD> <36> <EFBFBD> <EFBFBD>
lZDCMLen = 6 ; //ǩ<> <C7A9> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> ݸ<EFBFBD> <DDB8> <EFBFBD> 硿
2025-01-03 16:47:25 +08:00
# endif
# ifdef SMSCENTER_DGSB_SGYD
lZDCMLen = 0 ;
# endif
ANS_GetTD2Data td = { 0 } ;
if ( CSendPub : : GetTDPro ( pAdoRS , szSmsTD , td , MOBILE_TYPE_CMCC ) ) //ȡ<> <C8A1> <EFBFBD> <EFBFBD> ҵ<EFBFBD> <D2B5> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> ԣ<EFBFBD> <D4A3> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
if ( td . lContentLen > 10 & & td . lContentLen < 70 )
lZDCMLen = MSG_MAXSENDLEN - td . lContentLen ;
}
lMaxSendLenB = lMaxSendLenB - lZDCMLen ;
long lSignLen = 0 ;
if ( SendData . lItem ! = 101 & & _tcslen ( szCM ) > 0 ) //<2F> <> ϢԴ<CFA2> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <C7A9>
{
# ifdef UNICODE
lSignLen = _tcslen ( szCM ) ;
# else
lSignLen = MultiByteToWideChar ( CP_ACP , NULL , szCM , _tcslen ( szCM ) , NULL , 0 ) ;
# endif
if ( lSignLen > 0 )
lSignLen = lSignLen + 2 ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
}
long lMobileCount = 0 ;
if ( SendData . lMobileCount < = 0 | | SendData . lMobileCount > SubmitData_Mobile_Max ) //<2F> <> <EFBFBD> <EFBFBD> MobileCount<0,Ϊ<> ɰ<EFBFBD> <C9B0> Ķ<EFBFBD> <C4B6> ŷ<EFBFBD> <C5B7> ͣ<EFBFBD> <CDA3> <EFBFBD> Ϊ<EFBFBD> °<EFBFBD>
{
SendData . lMobileCount = 1 ;
_tcscpy ( SendData . Mobile [ 0 ] . szName , SendData . szName ) ;
_tcscpy ( SendData . Mobile [ 0 ] . szMobile , SendData . szMobile ) ;
}
lMobileCount = SendData . lMobileCount * 16 ; //ÿ<> <C3BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 16<31> <36> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ANS_SendData2 * pSmsData = new ANS_SendData2 [ lMobileCount ] ;
memset ( pSmsData , 0 , sizeof ( ANS_SendData2 ) * lMobileCount ) ;
srand ( : : GetTickCount ( ) ) ;
long lMobileIndex = 0 ;
for ( int j = 0 ; j < SendData . lMobileCount ; j + + )
{
pSmsData [ lMobileIndex ] . lCorpID = SendData . lCorpID ;
pSmsData [ lMobileIndex ] . lUserID = SendData . lUserID ;
_tcscpy ( pSmsData [ lMobileIndex ] . szMobile , SendData . Mobile [ j ] . szMobile ) ;
_tcscpy ( pSmsData [ lMobileIndex ] . szName , SendData . Mobile [ j ] . szName ) ;
CString strNewMsg = SendData . szMsg ; //ȡ<> µĶ<C2B5> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> <DDA3> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ע<EFBFBD> <D7A2> Ϣ<EFBFBD> <CFA2> ÿ<EFBFBD> <C3BF> <EFBFBD> <EFBFBD> <EFBFBD> ݾ<EFBFBD> <DDBE> п<EFBFBD> <D0BF> ܲ<EFBFBD> ͬ
try
{
if ( SendData . Mobile [ j ] . pMsg & & SendData . Mobile [ j ] . pMsg - > GetLength ( ) > 0 )
{
strNewMsg = * SendData . Mobile [ j ] . pMsg ;
}
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
}
//<2F> Ƚ<EFBFBD> <C8BD> <EFBFBD> <EFBFBD> ݷֶ<DDB7>
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ֶ<EFBFBD>
CStringArray saMsg ;
//<2F> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> Ҫ<EFBFBD> ֶη<D6B6> <CEB7> <EFBFBD>
TCHAR szSrcMsg [ 2048 ] = { 0 } ;
_tcscpy ( szSrcMsg , strNewMsg ) ;
long lMsgAll = 0 ;
long lMsgIndex = 1 ;
BOOL bGetMsg2 ;
TCHAR szSendMsg1 [ 512 ] = { 0 } ;
TCHAR szSendMsg2 [ 512 ] = { 0 } ;
long lMsgLen = 0 ;
# ifdef UNICODE
lMsgLen = _tcslen ( szSrcMsg ) ;
# else
lMsgLen = MultiByteToWideChar ( CP_ACP , NULL , szSrcMsg , _tcslen ( szSrcMsg ) , NULL , 0 ) ;
# endif
//<2F> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> Գ<EFBFBD> <D4B3> <EFBFBD> <EFBFBD> ŷ<EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD>
BOOL bLongSms = false ;
long lRand = 0 ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
long lMaxSendLen = lMaxSendLenB ;
if ( lMsgLen + lSignLen > lMaxSendLen & & SendData . lItemID ! = 102 ) //102,ǿ<> Ʒ dz<C6B7> <C7B3> <EFBFBD> <EFBFBD> <EFBFBD>
{
if ( SendData . lItem ! = 101 & & _tcslen ( szCM ) > 0 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݼ<EFBFBD> <DDBC> <EFBFBD> ǩ<EFBFBD> <C7A9>
{
/*
_tcscat ( szSrcMsg , _T ( " <EFBFBD> <EFBFBD> " ) ) ;
_tcscat ( szSrcMsg , szCM ) ;
_tcscat ( szSrcMsg , _T ( " <EFBFBD> <EFBFBD> " ) ) ;
*/
//<2F> <> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <C7A9> ǰ<EFBFBD> <C7B0>
CString strSrcMsg22 ;
strSrcMsg22 . Format ( _T ( " <EFBFBD> <EFBFBD> %s<> <73> %s" ) , szCM , szSrcMsg ) ;
_tcscpy ( szSrcMsg , strSrcMsg22 ) ;
}
bLongSms = true ;
}
if ( bLongSms ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> dz<EFBFBD> <C7B3> <EFBFBD> <EFBFBD> <EFBFBD>
{
lMaxSendLen = MSG_MAXSENDLEN - 3 ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ţ<EFBFBD> Ĭ<EFBFBD> ϶<EFBFBD> <CFB6> <EFBFBD> 67<36> <37> <EFBFBD> <EFBFBD>
}
else
{
lMaxSendLen = lMaxSendLen - lSignLen ;
}
while ( true )
{
memset ( szSendMsg2 , 0 , sizeof ( szSendMsg2 ) ) ;
//if ( isChinese( szSrcMsg,_tcslen(szSrcMsg) ) )
//{
bGetMsg2 = GetSpiltUnicodeMsg ( szSrcMsg , szSendMsg1 , lMsgIndex , lMaxSendLen , lMsgAll ) ;
//}
//else
//{
// bGetMsg2 = GetSpiltAsciiMsg( szSrcMsg , szSendMsg2 , lMsgIndex , MSG_MAXSENDLEN*2+MSG_MAXSENDLEN*2/7 ,lMsgAll);
//}
if ( bGetMsg2 )
{
if ( bLongSms )
{
saMsg . Add ( szSendMsg1 ) ;
}
else
{
if ( SendData . lItem ! = 101 & & _tcslen ( szCM ) > 0 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݼ<EFBFBD> <DDBC> <EFBFBD> ǩ<EFBFBD> <C7A9>
{
/*
_tcscat ( szSendMsg1 , _T ( " [ " ) ) ;
_tcscat ( szSendMsg1 , szCM ) ;
_tcscat ( szSendMsg1 , _T ( " ] " ) ) ;
*/
//<2F> <> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <C7A9> ǰ<EFBFBD> <C7B0>
CString strSrcMsg22 ;
strSrcMsg22 . Format ( _T ( " <EFBFBD> <EFBFBD> %s<> <73> %s" ) , szCM , szSendMsg1 ) ;
_tcscpy ( szSendMsg1 , strSrcMsg22 ) ;
}
saMsg . Add ( szSendMsg1 ) ;
}
}
else
{
break ;
}
lMsgIndex + + ;
}
if ( lZDCMLen > 0 ) //<2F> <> <EFBFBD> Դ<EFBFBD> ǩ<EFBFBD> <C7A9>
{
if ( bLongSms & & saMsg . GetSize ( ) > 0 )
{
strSelect = saMsg . GetAt ( saMsg . GetSize ( ) - 1 ) ; //<2F> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
# ifdef UNICODE
lMsgLen = _tcslen ( strSelect ) ;
# else
lMsgLen = MultiByteToWideChar ( CP_ACP , NULL , strSelect , _tcslen ( strSelect ) , NULL , 0 ) ;
# endif
if ( lMsgLen > lMaxSendLen - lZDCMLen )
{
saMsg . Add ( CString ( _T ( " " ) ) ) ; //<2F> Ӷ<EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <C7A9>
}
}
}
long lZDSmsCount = saMsg . GetSize ( ) * SendData . lMobileCount ; //<2F> <> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ÿ۷ <C3BF> <DBB7> <EFBFBD> <EFBFBD> <EFBFBD>
long lKF = 1 ;
/*
//<2F> ճ<EFBFBD> <D5B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʼ <EFBFBD> ֪ͨ<CDA8> <D6AA> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> 2<EFBFBD> <32> <EFBFBD> <EFBFBD>
if ( lSmsType = = SMSTYPE_ALARM | |
lSmsType = = SMSTYPE_EMAIL )
{
lZDSmsCount = lZDSmsCount * 2 ;
lKF = 2 ;
}
if ( lSmsType = = SMSTYPE_SP ) //<2F> <> ֵҵ<D6B5> <D2B5> <EFBFBD> Ŀ۷ <C4BF>
{
lZDSmsCount = lZDSmsCount * lSmsKF ;
lKF = lSmsKF ;
}
*/
if ( lMsgAll < 0 | | lMsgAll > 15 )
{
continue ;
}
lMsgAll = saMsg . GetSize ( ) ;
lRand = rand ( ) % 254 ;
if ( lRand < 0 )
lRand = - lRand ;
for ( int h = 1 ; h < = lMsgAll ; h + + )
{
if ( h > 1 )
{
pSmsData [ lMobileIndex ] = pSmsData [ lMobileIndex - 1 ] ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݵ<EFBFBD> <DDB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⸴<EFBFBD> <E2B8B4> ǰһ <C7B0> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
}
if ( bLongSms )
{
_stprintf ( pSmsData [ lMobileIndex ] . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %02X%X%X:%s" ) , lRand , lMsgAll , h , saMsg . GetAt ( h - 1 ) ) ;
}
else
{
_tcscpy ( pSmsData [ lMobileIndex ] . szMsg , saMsg . GetAt ( h - 1 ) ) ;
}
pSmsData [ lMobileIndex ] . tOvrTime . wSecond = lRand ;
pSmsData [ lMobileIndex ] . tOvrTime . wDayOfWeek = ( WORD ) ( h * 100 + lMsgAll ) ;
lMobileIndex + + ;
if ( lMobileIndex > = lMobileCount )
break ;
}
if ( lMobileIndex > = lMobileCount )
break ;
}
CSendPub : : SendPub_Mms Sms = { 0 } ;
Sms . lCorpID = SendData . lCorpID ;
Sms . lUserID = SendData . lUserID ;
//_tcscpy(Sms.szIP , m_szIP);
Sms . lPriority = SendData . lPrority ;
//Sms.lPriority = 0; //<2F> <> SubmitMms<6D> <73> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȼ<EFBFBD>
//Sms.lSendCount = m_dwSendCount; //<2F> ܶ<EFBFBD> <DCB6> ŷ<EFBFBD> <C5B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڼ<EFBFBD> <DABC> 㷢<EFBFBD> <E3B7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Sms . tTimer = SendData . tTimer ;
Sms . bFirstCheckYE = true ; //Ԥ<> ȼ<EFBFBD> <C8BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EEA3AC> <EFBFBD> <EFBFBD> <EEB2BB> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
CString strErrMsg ;
long lRet = CSendPub : : SubmitSms ( Sms , pSmsData , lMobileIndex , strErrMsg , pAdoRS , pAdoRS2 ) ;
delete pSmsData ;
return lRet ;
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
}
return - 1 ;
}
BOOL CSendThread : : SplitNum ( TCHAR * pCorp , TCHAR * pMan )
{
TCHAR szBuf [ 32 ] = { 0 } ;
_tcscpy ( szBuf , pCorp ) ;
# ifdef SMSCENTER_ADC
memcpy ( pCorp , szBuf , 4 ) ; //adc<64> <63> <EFBFBD> <EFBFBD> <EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD> Ϊ4λ
_tcscpy ( pMan , szBuf + 4 ) ;
pCorp [ 4 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ;
# endif
# ifdef SMSCENTER_TWO
if ( szBuf [ 0 ] > = ' 0 ' & & szBuf [ 0 ] < = ' 3 ' )
{
memcpy ( pCorp , szBuf , 2 ) ; //2λ
_tcscpy ( pMan , szBuf + 2 ) ; //3λ
pCorp [ 2 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] > = ' 4 ' & & szBuf [ 0 ] < = ' 5 ' )
{
memcpy ( pCorp , szBuf , 4 ) ; //3λ
_tcscpy ( pMan , szBuf + 4 ) ;
pCorp [ 4 ] = 0 ;
pMan [ 2 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] > = ' 6 ' & & szBuf [ 0 ] < = ' 8 ' )
{
memcpy ( pCorp , szBuf , 1 ) ; //3λ
_tcscpy ( pMan , szBuf + 1 ) ;
pCorp [ 1 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] = = ' 9 ' )
{
memcpy ( pCorp , szBuf , 5 ) ; //3λ
_tcscpy ( pMan , szBuf + 5 ) ;
pCorp [ 5 ] = 0 ;
pMan [ 1 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
return false ;
# else
if ( szBuf [ 0 ] > = ' 0 ' & & szBuf [ 0 ] < = ' 3 ' )
{
memcpy ( pCorp , szBuf , 3 ) ; //3λ
_tcscpy ( pMan , szBuf + 3 ) ;
pCorp [ 3 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
# endif
if ( szBuf [ 0 ] = = ' 5 ' ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ٴ<EFBFBD> <D9B4> û<EFBFBD>
{
memcpy ( pCorp , szBuf , 6 ) ; //3λ
_tcscpy ( pMan , szBuf + 6 ) ;
pCorp [ 6 ] = 0 ;
pMan [ 2 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] > = ' 4 ' & & szBuf [ 0 ] < = ' 8 ' )
{
memcpy ( pCorp , szBuf , 4 ) ; //3λ
_tcscpy ( pMan , szBuf + 4 ) ;
pCorp [ 4 ] = 0 ;
pMan [ 2 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] = = ' 9 ' )
{
memcpy ( pCorp , szBuf , 5 ) ; //3λ
_tcscpy ( pMan , szBuf + 5 ) ;
pCorp [ 5 ] = 0 ;
pMan [ 1 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
/*
//<2F> <> <EFBFBD> <EFBFBD> ͨר<CDA8> <D7A8>
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] = = ' * ' & & szBuf [ 2 ] = = ' 8 ' & & szBuf [ 3 ] < = ' 2 ' )
{
memcpy ( pCorp , szBuf , 4 ) ; //1λ
_tcscpy ( pMan , szBuf + 4 ) ;
pCorp [ 4 ] = 0 ;
pMan [ 1 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] = = ' 2 ' )
{
memcpy ( pCorp , szBuf , 2 ) ; //1λ
_tcscpy ( pMan , szBuf + 2 ) ;
pCorp [ 2 ] = 0 ;
pMan [ 1 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
*/
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] = = ' * ' & & szBuf [ 2 ] > = ' 0 ' & & szBuf [ 2 ] < = ' 3 ' )
{
memcpy ( pCorp , szBuf , 3 ) ; //1λ
_tcscpy ( pMan , szBuf + 3 ) ;
pCorp [ 3 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] = = ' * ' & & ( ( szBuf [ 2 ] > = ' 4 ' & & szBuf [ 2 ] < = ' 6 ' ) | | szBuf [ 2 ] = = ' 8 ' ) )
{
memcpy ( pCorp , szBuf , 4 ) ; //1λ
_tcscpy ( pMan , szBuf + 4 ) ;
pCorp [ 4 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ;
}
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] = = ' * ' & & ( szBuf [ 2 ] = = ' 7 ' | | szBuf [ 2 ] = = ' 9 ' ) )
{
memcpy ( pCorp , szBuf , 5 ) ; //1λ
_tcscpy ( pMan , szBuf + 5 ) ;
pCorp [ 5 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ;
}
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] > = ' 0 ' & & szBuf [ 1 ] < = ' 3 ' )
{
memcpy ( pCorp , szBuf , 2 ) ; //1λ
_tcscpy ( pMan , szBuf + 2 ) ;
pCorp [ 2 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] = = ' 6 ' )
{
memcpy ( pCorp , szBuf , 2 ) ; //1λ
_tcscpy ( pMan , szBuf + 2 ) ;
pCorp [ 2 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ; //<2F> <> һ <EFBFBD> <D2BB>
}
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] > = ' 4 ' & & szBuf [ 1 ] < = ' 6 ' )
{
memcpy ( pCorp , szBuf , 3 ) ; //1λ
_tcscpy ( pMan , szBuf + 3 ) ;
pCorp [ 3 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ;
}
if ( szBuf [ 0 ] = = ' * ' & & szBuf [ 1 ] > = ' 7 ' & & szBuf [ 1 ] < = ' 9 ' )
{
memcpy ( pCorp , szBuf , 4 ) ; //1λ
_tcscpy ( pMan , szBuf + 4 ) ;
pCorp [ 4 ] = 0 ;
pMan [ 3 ] = 0 ;
return true ;
}
return false ;
}
DWORD CSendThread : : Recv_Sms_UpSms ( LPVOID pParam )
{
try
{
UpSmsS sms = { 0 } ;
UpSmsS * pSms = ( UpSmsS * ) ( pParam ) ;
sms = * pSms ;
delete pSms ;
CString strURL ;
CString strTemp ;
HINTERNET hNet = NULL ;
strTemp . Format ( _T ( " UPSMS%d " ) , rand ( ) ) ;
hNet = InternetOpen ( strTemp , INTERNET_OPEN_TYPE_PRECONFIG , NULL , NULL , 0 ) ;
if ( ! hNet )
{
return - 1 ;
}
DWORD dwTimeOut = 20 * 1000 ;
InternetSetOption ( hNet , INTERNET_OPTION_CONNECT_TIMEOUT , & dwTimeOut , sizeof ( dwTimeOut ) ) ;
InternetSetOption ( hNet , INTERNET_OPTION_SEND_TIMEOUT , & dwTimeOut , sizeof ( dwTimeOut ) ) ;
InternetSetOption ( hNet , INTERNET_OPTION_RECEIVE_TIMEOUT , & dwTimeOut , sizeof ( dwTimeOut ) ) ;
strURL . Format ( _T ( " %s?Type=MO&CorpID=%d&SendNum=%s&RecvNum=%s&AddNum=%s&Msg=%s " ) , sms . szUrl , sms . lCorpID , sms . szSendNum , sms . szRecvNum , sms . szAddNum , sms . szMsg ) ;
HINTERNET hUrl = InternetOpenUrl ( hNet , strURL , NULL , 0 , INTERNET_FLAG_RELOAD , 0 ) ;
if ( hUrl )
{
/*
char buffer [ 1024 ] = { 0 } ;
DWORD dwBytesRead = 0 ;
BOOL bRead = : : InternetReadFile ( hUrl ,
buffer ,
sizeof ( buffer ) ,
& dwBytesRead ) ;
*/
: : InternetCloseHandle ( hUrl ) ;
}
: : InternetCloseHandle ( hNet ) ;
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
}
return 0 ;
}
/*
BOOL CSendThread : : SetSmsAddOne ( CAdoRecordSet * pAdoRS , long lCorpID , long lUserID , long lKF , const TCHAR * pRecvStatus , long lSendRet , BOOL bAdc )
{
BOOL b ;
CString strSelect ;
if ( lKF < = 0 | | lKF > 50 )
lKF = 1 ;
//<2F> <> Ϊ״̬<D7B4> <CCAC> <EFBFBD> 淵<EFBFBD> <E6B7B5> ʧ<EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> Կ۷ Ѳ<DBB7> <D1B2> ɹ<EFBFBD>
//<2F> <> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> ʧ<EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> ö<EFBFBD> <C3B6> <EFBFBD> Ӧ<EFBFBD> <D3A6> 1,<2C> ѷ<EFBFBD> <D1B7> <EFBFBD> <EFBFBD> ż<EFBFBD> 1
if ( lSendRet > = 100000 ) //SendRetΪ<74> <CEAA> ҵID<49> <44> <EFBFBD> <EFBFBD> <EFBFBD> ƶ<EFBFBD> ҵ<EFBFBD> <EFBFBD> <F1A3ACB2> ۷ <EFBFBD>
{
}
else
{
if ( bAdc )
strSelect . Format ( _T ( " update corp set MQ_SmsUsed=MQ_SmsUsed+%d,MQ_SmsSendAll=MQ_SmsSendAll-%d where CorpID=%d " ) , 1 , 1 , lCorpID ) ; //adcֻ<63> ۷ <EFBFBD> 1<EFBFBD> <31>
else
# ifdef SMSCENTER_NX
strSelect . Format ( _T ( " update corp set SmsUsed=SmsUsed+%d,SmsSendAll=SmsSendAll-%d,Day_ReportFail=Day_ReportFail+%d where CorpID=%d " ) , lKF , lKF , lKF , lCorpID ) ;
# else
strSelect . Format ( _T ( " update corp set SmsUsed=SmsUsed+%d,SmsSendAll=SmsSendAll-%d where CorpID=%d " ) , lKF , lKF , lCorpID ) ;
# endif
b = pAdoRS - > Open ( strSelect ) ;
}
//<2F> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> ż<EFBFBD> 1
strSelect . Format ( _T ( " update users set SMSUsed=SMSUsed+%d where UserID=%d AND SMSUsed != -100 " ) , lKF , lUserID ) ;
b = pAdoRS - > Open ( strSelect ) ;
//<2F> ѷ<EFBFBD> <D1B7> <EFBFBD> <EFBFBD> ż<EFBFBD> 1
strSelect . Format ( _T ( " update users set SmsSendAll=SmsSendAll-%d where UserID=%d " ) , lKF , lUserID ) ;
b = pAdoRS - > Open ( strSelect ) ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <E2B4A6>
if ( pRecvStatus [ 0 ] = = ' A ' )
{
long lAgentID = 0 ;
long lAgentType = 0 ;
//ȡ<> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID
strSelect . Format ( _T ( " select * from corp with (nolock) where corpid=%d " ) , lCorpID ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//pAdoRS->MoveFirst();
pAdoRS - > GetCollect ( _T ( " AgentID " ) , lAgentID ) ;
pAdoRS - > Close ( ) ;
if ( lAgentID > 0 )
{
//ȡ<> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ
strSelect . Format ( _T ( " select * from agent with (nolock) where agentID=%d " ) , lAgentID ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//pAdoRS->MoveFirst();
pAdoRS - > GetCollect ( _T ( " Type " ) , lAgentType ) ;
pAdoRS - > Close ( ) ;
if ( lAgentType = = 2 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
strSelect . Format ( _T ( " Update agent set used=used+%.2f where agentid=%d " ) , lKF * 0.10f , lAgentID ) ;
pAdoRS - > Open ( strSelect ) ;
pAdoRS - > Close ( ) ;
}
}
}
}
}
return true ;
}
BOOL CSendThread : : SetSmsAddOne ( CAdoRecordSet * pAdoRS , long lSendID , long lType )
{
CString strSelect ;
if ( lType = = 2 )
strSelect . Format ( _T ( " select * from corpsmsm.dbo.smssendt with (nolock) where SendID=%d " ) , lSendID ) ;
else
strSelect . Format ( _T ( " select * from smssend with (nolock) where SendID=%d " ) , lSendID ) ;
BOOL b = pAdoRS - > Open ( strSelect ) ;
if ( b & & ! pAdoRS - > IsEOF ( ) )
{
long lCorpID = 0 ;
long lUserID = 0 ;
long lKF = 0 ;
BOOL bAdc = false ;
long lSendRet = 0 ;
# ifdef SMSCENTER_ADC
long lRecvNumType = 0 ;
long lStatus = 0 ;
long lSendFCS = 0 ;
# endif
TCHAR szRecvStatus [ 32 ] = { 0 } ;
//pAdoRS->MoveFirst();
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ; //ȡ<> ÷<EFBFBD> <C3B7> <EFBFBD> ID
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID ) ; //ȡ<> ÷<EFBFBD> <C3B7> <EFBFBD> ID
pAdoRS - > GetCollect ( _T ( " KF " ) , lKF ) ; //ȡ<> ÷<EFBFBD> <C3B7> <EFBFBD> ID
pAdoRS - > GetCollect ( _T ( " RecvStatus " ) , szRecvStatus ) ;
pAdoRS - > GetCollect ( _T ( " SendRet " ) , lSendRet ) ;
# ifdef SMSCENTER_ADC
pAdoRS - > GetCollect ( _T ( " Status " ) , lStatus ) ; //ȡ<> ÷<EFBFBD> <C3B7> <EFBFBD> ID
pAdoRS - > GetCollect ( _T ( " RecvNumType " ) , lRecvNumType ) ; //ȡ<> ÷<EFBFBD> <C3B7> <EFBFBD> ID
pAdoRS - > GetCollect ( _T ( " SendFCS " ) , lSendFCS ) ;
if ( lStatus > = 10 )
{
if ( lRecvNumType = = 0 & & lSendFCS = = 0 )
bAdc = true ;
}
else
{
if ( lRecvNumType = = 0 & & lSendRet = = 0 )
bAdc = true ;
}
# endif
if ( lKF < = 0 | | lKF > 50 )
lKF = 1 ;
return SetSmsAddOne ( pAdoRS , lCorpID , lUserID , lKF , szRecvStatus , lSendRet , bAdc ) ;
}
return false ;
}
*/
BOOL CSendThread : : Recv_Mms ( MmsRecv mms , CAdoRecordSet * pAdoRS , CAdoRecordSet * pAdoRS2 , CSmsCenterDlg * pSMSDlg )
{
try
{
CString str ;
CString strAllNum = mms . szRecvNum ;
CString strExTFH ;
CString strExCorpNum ;
CString strCorpNum ;
CString strUserNum ;
CString strExNum ;
CString strGroupID ;
CString strSender ;
CString strRecver ;
CString strProv , strCity ;
long lCorpID = 0 ;
long lUserID = 0 ;
long lTFHBegin = 0 ;
//<2F> <> ͨ<EFBFBD> <CDA8> ID
CString strTDNum ;
long lLen = strAllNum . GetLength ( ) ;
for ( int i = lLen ; i > = 0 ; i - - )
{
strTDNum = strAllNum . Left ( i ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʼ <EFBFBD> <CABC> λ<EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> Ϊ<EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD>
str . Format ( _T ( " select * from TD2 where Ability=1 and AccessPort='%s' " ) , strTDNum ) ;
if ( strTDNum . GetLength ( ) > 0 & & pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
lTFHBegin = i ;
break ;
}
}
if ( lTFHBegin > 0 )
{
strExTFH = strAllNum . Right ( strAllNum . GetLength ( ) - lTFHBegin ) ; //<2F> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> ط<EFBFBD> <D8B7> ź<EFBFBD> ʣ<EFBFBD> µĺ<C2B5> <C4BA> <EFBFBD>
//<2F> <> ѯ<EFBFBD> <D1AF> ҵID
long lLen = strExTFH . GetLength ( ) ;
for ( int i = lLen ; i > = 0 ; i - - )
{
strCorpNum = strExTFH . Left ( i ) ; //<2F> <> <EFBFBD> ҿ<EFBFBD> ʼ <EFBFBD> <CABC> λ<EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> ҵ<EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD>
str . Format ( _T ( " select * from Corp with(nolock) where SMSNum='%s' " ) , strCorpNum ) ;
if ( strCorpNum . GetLength ( ) > 0 & & pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ;
break ;
}
}
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> ID
if ( lCorpID > 0 )
{
strExCorpNum = strExTFH . Right ( strExTFH . GetLength ( ) - strCorpNum . GetLength ( ) ) ; //<2F> ų<EFBFBD> <C5B3> <EFBFBD> ҵ<EFBFBD> ط<EFBFBD> <D8B7> ź<EFBFBD> ʣ<EFBFBD> µĺ<C2B5> <C4BA> <EFBFBD>
long lLen = strExCorpNum . GetLength ( ) ;
for ( int i = lLen ; i > = 0 ; i - - )
{
strUserNum = strExCorpNum . Left ( i ) ; //<2F> <> <EFBFBD> ҿ<EFBFBD> ʼ <EFBFBD> <CABC> λ<EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> ҵ<EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD>
str . Format ( _T ( " select * from Users with(nolock) where CorpID=%d and SMSNum='%s' " ) , lCorpID , strUserNum ) ;
if ( strUserNum . GetLength ( ) > 0 & & pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID ) ;
pAdoRS - > GetCollect ( _T ( " Name " ) , strRecver ) ;
pAdoRS - > GetCollect ( _T ( " GroupID " ) , strGroupID ) ;
break ;
}
}
}
strExNum = strExTFH . Right ( strExTFH . GetLength ( ) - strCorpNum . GetLength ( ) - strUserNum . GetLength ( ) ) ;
}
/*
//<2F> <> <EFBFBD> յ<EFBFBD> <D5B5> Ķ<EFBFBD> <C4B6> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ҳ<EFBFBD> <D2B3>
if ( lCorpID2 > 0 & & _tcslen ( szUpSms ) > 0 & & bSubmitSms )
{
UpSmsS * pUpSms = new UpSmsS ;
_tcscpy ( pUpSms - > szSendNum , data . szSendNum ) ;
_tcscpy ( pUpSms - > szRecvNum , data . szRecvNum ) ;
_tcscpy ( pUpSms - > szMsg , data . szMsg ) ;
_tcscpy ( pUpSms - > szUrl , szUpSms ) ;
pUpSms - > tSendTime = data . tSendTime ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ߳̽<DFB3> <CCBD> д<EFBFBD> <D0B4> <EFBFBD>
: : AfxBeginThread ( ( AFX_THREADPROC ) UpSms , ( LPVOID ) pUpSms , THREAD_PRIORITY_BELOW_NORMAL ) ;
}
*/
//<2F> <> ѯ<EFBFBD> <D1AF> <EFBFBD> Ź<EFBFBD> <C5B9> <EFBFBD> <EFBFBD> <EFBFBD>
long lMobileType = MOBILE_TYPE_UNKNOW ;
strSender = CSendPub : : GetMobileProvCity ( pAdoRS2 , mms . szSendNum , lMobileType , strProv , strCity ) ;
//<2F> <> ֹ'<27> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
CString strTempTitle = mms . szTitle ;
strTempTitle . Replace ( _T ( " ' " ) , _T ( " '' " ) ) ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> ݵ<EFBFBD> smsrecvlog<6F> <67> <EFBFBD> <EFBFBD>
str . Format ( _T ( " insert into MmsRecvLog(corpid,userid,MmsFileID,groupid,Sender,sendnum,recver,recvnum,AddNum,recvnumtype,Title,mmSize,subtime) values (%d,%d,%d,'%s','%s','%s','%s','%s','%s',%d,'%s',%d,GetDate()) " ) ,
lCorpID ,
lUserID ,
mms . lMmsFileID ,
strGroupID ,
strSender ,
mms . szSendNum ,
strRecver ,
mms . szRecvNum ,
strExNum ,
lMobileType ,
strTempTitle ,
mms . lmmSize
) ;
BOOL b = pAdoRS - > Open ( str ) ;
pAdoRS - > Close ( ) ;
if ( b )
{
//ȡSendID
long lSendID = 0 ;
str = _T ( " SELECT SCOPE_IDENTITY() " ) ;
if ( pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( ( long ) 0 , lSendID ) ;
str . Format ( _T ( " insert into corpsmsm.dbo.MmsSend (SendID,CorpID,UserID,MmsFileID,GroupID,Status,Sender,SendNum,RecvNum,RecvNumType,Recver,Title,mmSize,MsgType,SubTime,SendTime,RecvTime,RecvStatus,KF) values (%d,%d,%d,%d,'%s',%d,'%s','%s','%s',%d,'%s','%s',%d,%d,GetDate(),GetDate(),GetDate(),'%s',0) " ) ,
lSendID ,
lCorpID ,
lUserID ,
mms . lMmsFileID ,
strGroupID ,
SEND_STATUS_RECV_OK ,
strSender ,
mms . szSendNum ,
mms . szRecvNum ,
lMobileType ,
strRecver ,
strTempTitle ,
mms . lmmSize ,
SMSTYPE_RECV ,
strExNum ) ;
pAdoRS - > Open ( str ) ;
pAdoRS - > Close ( ) ;
//<2F> յ<EFBFBD> <D5B5> <EFBFBD> <EFBFBD> ţ<EFBFBD> ֪ͨ<CDA8> <D6AA> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> û<EFBFBD>
//SmsSendData * psms = new SmsSendData;
//*psms = data;
//_tcscpy( psms->szMsg , sms.szMsg );
//pSMSDlg->On_User_PushMsg( SMS_PUSH , (WPARAM)psms , 0 );
/*
if ( bSubmitSms )
{
pSMSDlg - > SocketPushMsg ( pAdoRS , data , strProv , strCity ) ;
}
*/
}
}
return TRUE ;
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
}
return false ;
}
BOOL CSendThread : : ProcessUp ( CSmsCenterDlg * pSMSDlg , DWORD dwType , long lMobileType , SmsSendData sms , CAdoRecordSet * pAdoRS , CAdoRecordSet * pAdoRS2 , CAdoRecordSet * pAdoRS3 , BOOL bReportNumber , long lCorpID , long lUserID , long lTDMode , CString strSName )
{
CString strSelect ;
CString strTemp ;
SubmitData Quitdata = { 0 } ;
Quitdata . lCorpID = DEFAULT_SEND_CORPID ;
Quitdata . lUserID = DEFAULT_SEND_USERID ;
_tcscpy ( Quitdata . szName , _T ( " ZF " ) ) ;
//_tcscpy( Quitdata.szSendNum , sms.szRecvNum );
_tcscpy ( Quitdata . szMobile , sms . szSendNum ) ;
TCHAR szMsg [ 512 ] = { 0 } ;
_tcscpy ( szMsg , sms . szMsg ) ;
ExChar ( szMsg , _T ( " \r " ) ) ;
ExChar ( szMsg , _T ( " \n " ) ) ;
ExChar ( szMsg , _T ( " " ) ) ;
ExChar ( szMsg , _T ( " <EFBFBD> <EFBFBD> " ) ) ;
ExChar ( szMsg , _T ( " : " ) ) ;
_tcsupr ( szMsg ) ; //ת<> <D7AA> д
//<2F> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> Ϊֹͣ<CDA3> <D6B9> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD>
long lCorpID2 = lCorpID ;
long lCorpID3 = lCorpID ;
long lUserID2 = lUserID ;
long lUserID3 = lUserID ;
if ( lUserID2 < = 10000000 ) lUserID2 = - 1 ;
if ( lCorpID3 < 100000 )
{
lCorpID3 = DEFAULT_SEND_CORPID ; //Ĭ<> <C4AC> ʹ <EFBFBD> ù<EFBFBD> ˾<EFBFBD> <CBBE> <EFBFBD> ʺŷ<CABA> <C5B7> <EFBFBD>
lUserID3 = DEFAULT_SEND_USERID ;
lCorpID2 = - 1 ;
lUserID2 = - 1 ;
}
if ( ( ! _tcsncmp ( szMsg , _T ( " TD " ) , _tcslen ( _T ( " TD " ) ) ) ) | | //5<> <35> 0Ϊȡ<CEAA> <C8A1> ҵ<EFBFBD> <D2B5>
( ! _tcsncmp ( szMsg , _T ( " 0000 " ) , _tcslen ( _T ( " 0000 " ) ) ) ) | |
( ! _tcscmp ( szMsg , _T ( " N " ) ) ) | |
( ! _tcscmp ( szMsg , _T ( " R " ) ) ) | | //2023
( ! _tcscmp ( szMsg , _T ( " T " ) ) ) ) //5<> <35> 0Ϊȡ<CEAA> <C8A1> ҵ<EFBFBD> <D2B5>
{
if ( lCorpID2 < 100000 ) //<2F> <> ȡ<EFBFBD> <C8A1> ҵ<EFBFBD> <D2B5> <EFBFBD> ͼ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> -1<> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD>
{
strSelect . Format ( _T ( " select top 1 * from corpsmsm.dbo.smssend with(nolock) where recvnum='%s' and SendNum like '%s%%' order by sendtime desc " ) , sms . szSendNum , sms . szRecvNum ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID2 ) ;
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID2 ) ;
}
}
//strSelect.Format( _T("insert into back (CorpID,UserID,Mobile,AddTime,BZ) values(%d,%d,'%s',GETDATE(),'<27> Է<EFBFBD> 00000ȡ<30> <C8A1> ҵ<EFBFBD> <D2B5> !')"),lCorpID2,lUserID2,sms.szSendNum );
strSelect . Format ( _T ( " insert into back (CorpID,UserID,Mobile,AddTime,BZ) values(%d,-1,'%s',GETDATE(),'<27> Է<EFBFBD> 00000ȡ<30> <C8A1> ҵ<EFBFBD> <D2B5> !') " ) , lCorpID2 , sms . szSendNum ) ; //<2F> <> ȷ<EFBFBD> <C8B7> <EFBFBD> <EFBFBD> ҵ
//strSelect.Format( _T("insert into back (CorpID,UserID,Mobile,AddTime,BZ) values(-1,-1,'%s',GETDATE(),'<27> Է<EFBFBD> 00000ȡ<30> <C8A1> ҵ<EFBFBD> <D2B5> !')"),sms.szSendNum ); //ȫ<> <C8AB>
pAdoRS - > Open ( strSelect ) ;
pAdoRS - > Close ( ) ;
if ( lCorpID2 > = 100000 ) lCorpID3 = lCorpID2 ;
if ( lUserID2 > = 10000000 ) lUserID3 = lUserID2 ;
/*
if ( lCorpID2 > 0 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> ,<2C> <> Ҫɾ<D2AA> <C9BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
strSelect . Format ( _T ( " delete from white2 where Mobile='%s' and CorpID=%d " ) , sms . szSendNum , lCorpID2 ) ;
pAdoRS - > Open ( strSelect ) ;
pAdoRS - > Close ( ) ;
}
*/
if ( lCorpID3 > 0 & & lCorpID3 > 0 )
{
Sleep ( 2000 ) ; //<2F> <> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ֹ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> Ľ<EFBFBD> <C4BD> ղ<EFBFBD> <D5B2> <EFBFBD>
//<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
SubmitData data = { 0 } ;
data . lCorpID = lCorpID3 ;
data . lUserID = lUserID3 ;
//data.lItem = 101;
_tcscpy ( data . szMobile , sms . szSendNum ) ;
//_stprintf( data.szMsg , _T("<22> ѳɹ<D1B3> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %s<> <73> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <CFA2> ") , sms.szRecvNum);
_stprintf ( data . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> ѳɹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %s<> Ķ<EFBFBD> <C4B6> ţ<EFBFBD> <C5A3> ٴο <D9B4> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> %s<> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> 뷢<EFBFBD> <EBB7A2> 11111<31> <31> %s<> <73> " ) , strSName , strSName , sms . szRecvNum ) ;
//_stprintf( data.szMsg , _T("<22> <EFBFBD> <F0BEB4B5> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> <D5B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǽ<EFBFBD> <C7BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <CDB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <CFA2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> 02033242290ȡ<30> <C8A1> <EFBFBD> <EFBFBD> [%s]") ,szSName);
SubmitSms ( data , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
# ifdef SMSCENTER_GDDX
if ( ! _tcsncmp ( szMsg , _T ( " DG " ) , _tcslen ( _T ( " DG " ) ) ) ) //5<> <35> 0Ϊȡ<CEAA> <C8A1> ҵ<EFBFBD> <D2B5>
# else
if ( ! _tcsncmp ( szMsg , _T ( " 1111 " ) , _tcslen ( _T ( " 1111 " ) ) ) ) //5<> <35> 0Ϊȡ<CEAA> <C8A1> ҵ<EFBFBD> <D2B5>
# endif
{
//if ( lCorpID2>0 )
// strSelect.Format( _T("delete from back where Mobile='%s' and CorpID=%d"),sms.szSendNum,lCorpID2);
//else
strSelect . Format ( _T ( " delete from back where Mobile='%s' " ) , sms . szSendNum ) ;
pAdoRS - > Open ( strSelect ) ;
pAdoRS - > Close ( ) ;
if ( lTDMode = = 1 & & lCorpID2 > 0 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> ,<2C> <> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
strSelect . Format ( _T ( " select * from white2 with (index(White2_Mobile),nolock ) where Mobile='%s' and CorpID=%d " ) , sms . szSendNum , lCorpID2 ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//<2F> Ѵ <EFBFBD> <D1B4> ڼ<EFBFBD> ¼
long lWhiteID = 0 ;
pAdoRS - > GetCollect ( _T ( " WhiteID " ) , lWhiteID ) ;
strSelect . Format ( _T ( " update white2 set Status=%d where WhiteID=%d " ) , 1 , lWhiteID ) ;
pAdoRS - > Open ( strSelect ) ;
pAdoRS - > Close ( ) ;
}
else
{
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> µİ<C2B5> <C4B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼
strSelect . Format ( _T ( " insert into White2 (CorpID,Mobile,AddTime,Status) values (%d,'%s',GetDate(),%d) " ) , lCorpID2 , sms . szSendNum , 1 ) ;
pAdoRS - > Open ( strSelect ) ;
pAdoRS - > Close ( ) ;
}
}
if ( lCorpID3 > 0 & & lCorpID3 > 0 )
{
Sleep ( 2000 ) ; //<2F> <> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ֹ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> Ľ<EFBFBD> <C4BD> ղ<EFBFBD> <D5B2> <EFBFBD>
//<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
SubmitData data = { 0 } ;
data . lCorpID = lCorpID3 ;
data . lUserID = lUserID3 ;
//data.lItem = 101;
_tcscpy ( data . szMobile , sms . szSendNum ) ;
//_stprintf( data.szMsg , _T("<22> ѳɹ<D1B3> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %s<> <73> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <CFA2> ") , sms.szRecvNum);
_stprintf ( data . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٴο <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <EFBFBD> <EFBFBD> չ<EFBFBD> <EFBFBD> ܣ<EFBFBD> <EFBFBD> <EFBFBD> ֹ<EFBFBD> <EFBFBD> <EFBFBD> ո <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> 뷢<EFBFBD> <EFBFBD> 00000<EFBFBD> <EFBFBD> %s<> <73> " ) , sms . szRecvNum ) ;
//_stprintf( data.szMsg , _T("<22> <> <EFBFBD> <EFBFBD> <EFBFBD> ٴο <D9B4> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <CFA2> <EFBFBD> չ<EFBFBD> <D5B9> ܣ<EFBFBD> <DCA3> <EFBFBD> ֹ<EFBFBD> <D6B9> <EFBFBD> ո <EFBFBD> <D5B8> <EFBFBD> Ϣ<EFBFBD> 뷢<EFBFBD> <EBB7A2> 00000<30> <30> %s<> <73> [%s]") , sms.szRecvNum,strSName);
SubmitSms ( data , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> <D5B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> ڶ<EFBFBD> <DAB6> Ų<EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> û<EFBFBD>
if ( lCorpID2 > 0 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵ<EFBFBD> <D2B5> <EFBFBD> <EFBFBD> <EFBFBD> в<EFBFBD> ѯ
{
BOOL bQueryData = false ;
CString strCmd2 = szMsg ;
strCmd2 . Replace ( _T ( " ' " ) , _T ( " '' " ) ) ;
if ( lUserID2 > 0 )
strSelect . Format ( _T ( " select * from Query where CorpID=%d and UserID=%d and Cmd='%s' and Status=1 " ) , lCorpID2 , lUserID2 , strCmd2 ) ;
else
strSelect . Format ( _T ( " select * from Query where CorpID=%d and Cmd='%s' and Status=1 " ) , lCorpID2 , strCmd2 ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
bQueryData = true ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> е <EFBFBD> Ĭ<EFBFBD> <C4AC> ָ<EFBFBD> <D6B8>
if ( ! bQueryData )
{
if ( lUserID2 > 0 )
strSelect . Format ( _T ( " select * from Query where CorpID=%d and UserID=%d and Cmd='*' and Status=1 " ) , lCorpID2 , lUserID2 ) ;
else
strSelect . Format ( _T ( " select * from Query where CorpID=%d and Cmd='*' and Status=1 " ) , lCorpID2 ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
bQueryData = true ;
}
if ( bQueryData )
{
CString strRet ;
long lQueryID = 0 ;
pAdoRS - > MoveFirst ( ) ;
pAdoRS - > GetCollect ( _T ( " QueryID " ) , lQueryID ) ;
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID2 ) ;
pAdoRS - > GetCollect ( _T ( " Ret " ) , strRet ) ;
pAdoRS - > Close ( ) ;
//<2F> <> ѯ<EFBFBD> <D1AF> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> ͨ<EFBFBD> ˲<EFBFBD> ѯȨ<D1AF> <C8A8>
strSelect . Format ( _T ( " select * from users where userid=%d " ) , lUserID2 ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > MoveFirst ( ) ;
long lSDK = 0 ;
pAdoRS - > GetCollect ( _T ( " SDK " ) , lSDK ) ;
BOOL bQuery = lSDK & SDK_AUTOQUERY ? true : false ;
if ( bQuery )
{
BOOL bAllowQuery = true ;
//<2F> жϼ<D0B6> Ȩ<EFBFBD> <C8A8> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " select * from QueryFilt where UserID=%d and mobile='<27> <> <EFBFBD> <EFBFBD> ' and Status=1 and Type=0 " ) , lUserID2 ) ; //<2F> <> ѯ<EFBFBD> Ƿ<EFBFBD> <C7B7> н<EFBFBD> ֹ<EFBFBD> <D6B9> <EFBFBD> <EFBFBD>
if ( bAllowQuery & & pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
bAllowQuery = false ; //<2F> <> ֹ<EFBFBD> <D6B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
}
strSelect . Format ( _T ( " select * from QueryFilt where UserID=%d and mobile='%s' and Status=1 " ) , lUserID2 , sms . szSendNum ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//pAdoRS->MoveFirst();
pAdoRS - > GetCollect ( _T ( " Type " ) , bAllowQuery ) ;
}
if ( bAllowQuery )
{
Sleep ( 2000 ) ; //<2F> <> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ֹ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> Ľ<EFBFBD> <C4BD> ղ<EFBFBD> <D5B2> <EFBFBD>
//<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
SubmitData data = { 0 } ;
data . lCorpID = lCorpID2 ;
data . lUserID = lUserID2 ;
data . lSendID = - 100 ; //<2F> <> Ҫ<EFBFBD> <D2AA> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> ID
_tcscpy ( data . szMobile , sms . szSendNum ) ;
_stprintf ( data . szMsg , strRet ) ;
SubmitSms ( data , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
//<2F> <> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1
strSelect . Format ( _T ( " update Query set QueryCount=QueryCount+1 where QueryID=%d " ) , lQueryID ) ;
pAdoRS - > Open ( strSelect ) ;
pAdoRS - > Close ( ) ;
//<2F> <> <EFBFBD> <EFBFBD> ѯ<EFBFBD> ļ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> QueryLog<6F> <67> <EFBFBD> С <EFBFBD>
CString strmsg = sms . szMsg ;
strmsg . Replace ( _T ( " ' " ) , _T ( " '' " ) ) ;
strSelect . Format ( _T ( " insert into QueryLog(QueryID,CorpID,UserID,SendID,Mobile,RecvMsg,RetMsg,Reader,SendTime) values(%d,%d,%d,%d,'%s','%s','%s',0,GETDATE()) " ) ,
lQueryID , lCorpID2 , lUserID2 , data . lSendID ,
sms . szSendNum , strmsg , strRet ) ;
pAdoRS - > Open ( strSelect ) ;
pAdoRS - > Close ( ) ;
strSelect . Format ( _T ( " select top 1 * from QueryLog where UserID=%d order by SendTime desc " ) , lUserID2 ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//pAdoRS->MoveFirst();
ANS_QueryLog_Data QueryLog = { 0 } ;
pAdoRS - > GetCollect ( _T ( " QueryLogID " ) , QueryLog . lQueryLogID ) ;
pAdoRS - > Close ( ) ;
//<2F> յ<EFBFBD> <D5B5> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> ţ<EFBFBD> ֪ͨ<CDA8> <D6AA> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> û<EFBFBD>
//SmsSendData * psms = new SmsSendData;
//*psms = data;
//_tcscpy( psms->szMsg , sms.szMsg );
//pSMSDlg->On_User_PushMsg( SMS_PUSH , (WPARAM)psms , 0 );
QueryLog . lQueryID = lQueryID ;
QueryLog . lSendID = data . lSendID ;
QueryLog . lCorpID = lCorpID2 ;
QueryLog . lUserID = lUserID2 ;
_tcscpy ( QueryLog . szMobile , sms . szSendNum ) ;
_tcscpy ( QueryLog . szRecvMsg , sms . szMsg ) ;
_tcscpy ( QueryLog . szRetMsg , strRet ) ;
: : GetLocalTime ( & QueryLog . tSendTime ) ;
pSMSDlg - > SocketPushQueryLog ( pAdoRS , QueryLog ) ;
}
}
}
}
}
}
if ( ! bReportNumber ) //<2F> <> <EFBFBD> ǹ<EFBFBD> <C7B9> <EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD> 룬<EFBFBD> <EBA3AC> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD>
return false ;
if ( CString ( sms . szRecvNum ) . MakeUpper ( ) = = CString ( _T ( " WxWork " ) ) . MakeUpper ( ) ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵ<D2B5> ŵ<EFBFBD> <C5B5> <EFBFBD> <EFBFBD> <EFBFBD>
{
_tcscpy ( Quitdata . szName , sms . szRecvNum ) ;
Quitdata . lPrority = 876534 ;
}
if ( dwType & REPORT_MANAGER & & ! _tcsncmp ( szMsg , _T ( " RESTART " ) , _tcslen ( _T ( " RESTART " ) ) ) )
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> ɹ<EFBFBD> <EFBFBD> յ<EFBFBD> %s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ%s!" ) , sms . szSendNum , szMsg ) ;
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
pSMSDlg - > PostMessage ( SMS_RESTART , 1 , 0 ) ; //<2F> <> <EFBFBD> <EFBFBD>
}
if ( dwType & REPORT_MANAGER & & ! _tcsncmp ( szMsg , _T ( " REBOOT " ) , _tcslen ( _T ( " REBOOT " ) ) ) )
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> ɹ<EFBFBD> <EFBFBD> յ<EFBFBD> %s<> <73> ǿ<EFBFBD> <C7BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ%s!" ) , sms . szSendNum , szMsg ) ;
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
pSMSDlg - > PostMessage ( SMS_RESTART , 1 , 0 ) ; //<2F> <> <EFBFBD> <EFBFBD>
CProcessSocket : : Reboot ( ) ; //ǿ<> <C7BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
}
if ( dwType & REPORT_MANAGER & & ! _tcsncmp ( szMsg , _T ( " QUIT " ) , _tcslen ( _T ( " QUIT " ) ) ) )
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> ɹ<EFBFBD> <EFBFBD> յ<EFBFBD> %s<> <73> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> Ϣ%s!" ) , sms . szSendNum , szMsg ) ;
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
pSMSDlg - > PostMessage ( SMS_RESTART , 2 , 0 ) ; //<2F> ˳<EFBFBD>
}
if ( ( dwType & REPORT_MANAGER | | dwType & REPORT_CHECKUP ) & & ! _tcsncmp ( szMsg , _T ( " OFF " ) , _tcslen ( _T ( " OFF " ) ) ) )
{
TCHAR szCorpID [ 512 ] = { 0 } ;
_tcscpy ( szCorpID , szMsg + 3 ) ;
if ( _tcslen ( szCorpID ) > = 8 )
{
szCorpID [ 8 ] = 0 ;
strSelect . Format ( _T ( " select * from users where userid=%d " ) , _ttol ( szCorpID ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//pAdoRS->MoveFirst();
//<2F> <> <EFBFBD> <EFBFBD> Ϊ֪ͨsocket,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͵Ķ<CDB5> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> Ҳ<EFBFBD> <D2B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
Checkup up = { 0 } ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , up . lCorpID ) ;
pAdoRS - > GetCollect ( _T ( " UserID " ) , up . lUserID ) ;
up . bCheckup = true ;
pSMSDlg - > SocketPushCheck ( up ) ;
//ǿ<> <C7BF> <EFBFBD> ߳<EFBFBD> <DFB3> û<EFBFBD>
REQ_CloseClient close = { 0 } ;
close . lUserID = up . lUserID ;
close . ucUserType = LOGINTYPE_ALL ;
pSMSDlg - > SocketPushClose ( pAdoRS2 , & close ) ;
Sleep ( 200 ) ;
long lPurview = 0 ;
pAdoRS - > GetCollect ( _T ( " Purview " ) , lPurview ) ;
pAdoRS - > Close ( ) ;
lPurview & = ~ ( PURVIEW_LOGIN ) ;
strSelect . Format ( _T ( " update users set Purview=%d where userid=%d " ) , lPurview , _ttol ( szCorpID ) ) ;
pAdoRS - > Open ( strSelect ) ;
//<2F> <> <EFBFBD> ѷ<EFBFBD> <D1B7> ͵Ķ<CDB5> <C4B6> <EFBFBD> ȫ<EFBFBD> <C8AB> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " update smssend set Status=1 where userid=%d and status=0 " ) , _ttol ( szCorpID ) ) ;
pAdoRS - > Open ( strSelect ) ;
//<2F> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> ȫ<EFBFBD> <C8AB> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " update corpsmsm.dbo.smssendT set Status=1 where userid=%d and status=0 " ) , _ttol ( szCorpID ) ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> ɹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> IDΪ%s<> Ķ<EFBFBD> <C4B6> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> !" ) , szCorpID ) ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־
strTemp . Format ( _T ( " (%s)<29> ɹ<EFBFBD> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> IDΪ%s<> Ķ<EFBFBD> <C4B6> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> ! " ) , Quitdata . szMobile , szCorpID ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ;
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> û<EFBFBD> ID:%s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , szCorpID ) ;
}
}
else
{
szCorpID [ 6 ] = 0 ;
strSelect . Format ( _T ( " select * from corp where corpid=%d " ) , _ttol ( szCorpID ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//pAdoRS->MoveFirst();
//<2F> <> <EFBFBD> <EFBFBD> Ϊ֪ͨsocket,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͵Ķ<CDB5> <C4B6> <EFBFBD> Ҳ<EFBFBD> <D2B2> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
Checkup up = { 0 } ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , up . lCorpID ) ;
pAdoRS - > Close ( ) ;
up . bCheckup = true ;
pSMSDlg - > SocketPushCheck ( up ) ;
//ǿ<> <C7BF> <EFBFBD> ߳<EFBFBD> <DFB3> û<EFBFBD>
REQ_CloseClient close = { 0 } ;
close . lUserID = up . lCorpID ;
close . ucUserType = LOGINTYPE_ALL ;
pSMSDlg - > SocketPushClose ( pAdoRS2 , & close ) ;
Sleep ( 200 ) ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵ
strSelect . Format ( _T ( " update corp set Status=1 where corpid=%d " ) , _ttol ( szCorpID ) ) ;
pAdoRS - > Open ( strSelect ) ;
//<2F> <> <EFBFBD> ѷ<EFBFBD> <D1B7> ͵Ķ<CDB5> <C4B6> <EFBFBD> ȫ<EFBFBD> <C8AB> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " update smssend set Status=1 where corpid=%d and status=0 " ) , _ttol ( szCorpID ) ) ;
pAdoRS - > Open ( strSelect ) ;
//<2F> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> ȫ<EFBFBD> <C8AB> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD>
strSelect . Format ( _T ( " update corpsmsm.dbo.smssendT set Status=1 where corpid=%d and status=0 " ) , _ttol ( szCorpID ) ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> ɹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵIDΪ%s<> Ķ<EFBFBD> <C4B6> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> !" ) , szCorpID ) ;
strTemp . Format ( _T ( " (%s)<29> ɹ<EFBFBD> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵIDΪ%s<> Ķ<EFBFBD> <C4B6> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> ! " ) , Quitdata . szMobile , szCorpID ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ɹ<EFBFBD> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӳ<EFBFBD> <D3B2> <EFBFBD> <EFBFBD> <EFBFBD> ¼
CString str ;
str . Format ( _T ( " insert into Corp_Oper ( CorpID,UserType,OperType,OperMsg,BZ,CreateUser,CreateTime ) values( %d,%d,%d,'%s','%s','%s',GetDate()) " ) , //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼
up . lCorpID ,
0 , //<2F> û<EFBFBD>
1 , //<2F> رղ<D8B1> <D5B2> <EFBFBD>
_T ( " " ) ,
strTemp ,
Quitdata . szMobile ) ;
pAdoRS - > Open ( str ) ;
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ҵID:%s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , szCorpID ) ;
}
}
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
if ( ( dwType & REPORT_MANAGER | | dwType & REPORT_CHECKUP ) & & ! _tcsncmp ( szMsg , _T ( " ON " ) , _tcslen ( _T ( " ON " ) ) ) )
{
TCHAR szCorpID [ 512 ] = { 0 } ;
_tcscpy ( szCorpID , szMsg + 2 ) ;
if ( _tcslen ( szCorpID ) > = 8 )
{
szCorpID [ 8 ] = 0 ;
strSelect . Format ( _T ( " select * from users where userid=%d " ) , _ttol ( szCorpID ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
long lPurview = 0 ;
//pAdoRS->MoveFirst();
pAdoRS - > GetCollect ( _T ( " Purview " ) , lPurview ) ;
pAdoRS - > Close ( ) ;
lPurview | = PURVIEW_LOGIN ;
strSelect . Format ( _T ( " update users set Purview=%d where userid=%d " ) , lPurview , _ttol ( szCorpID ) ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> ɹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> IDΪ%s<> Ķ<EFBFBD> <C4B6> <EFBFBD> !" ) , szCorpID ) ;
strTemp . Format ( _T ( " (%s)<29> ɹ<EFBFBD> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> IDΪ%s<> Ķ<EFBFBD> <C4B6> <EFBFBD> ! " ) , Quitdata . szMobile , szCorpID ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> û<EFBFBD> ID:%s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , szCorpID ) ;
}
}
else
{
szCorpID [ 6 ] = 0 ;
strSelect . Format ( _T ( " select * from corp where corpid=%d " ) , _ttol ( szCorpID ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
strSelect . Format ( _T ( " update corp set Status=0 where corpid=%d and status=1 " ) , _ttol ( szCorpID ) ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> ɹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵIDΪ%s<> Ķ<EFBFBD> <C4B6> <EFBFBD> !" ) , szCorpID ) ;
strTemp . Format ( _T ( " (%s)<29> ɹ<EFBFBD> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵIDΪ%s<> Ķ<EFBFBD> <C4B6> <EFBFBD> ! " ) , Quitdata . szMobile , szCorpID ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ɹ<EFBFBD> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӳ<EFBFBD> <D3B2> <EFBFBD> <EFBFBD> <EFBFBD> ¼
CString str ;
str . Format ( _T ( " insert into Corp_Oper ( CorpID,UserType,OperType,OperMsg,BZ,CreateUser,CreateTime ) values( %d,%d,%d,'%s','%s','%s',GetDate()) " ) , //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼
_ttol ( szCorpID ) ,
0 , //<2F> û<EFBFBD>
0 , //<2F> <> <EFBFBD> ò<EFBFBD> <C3B2> <EFBFBD>
_T ( " " ) ,
strTemp ,
Quitdata . szMobile ) ;
pAdoRS - > Open ( str ) ;
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ҵID:%s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , szCorpID ) ;
}
}
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
if ( ( dwType & REPORT_MANAGER | | dwType & REPORT_CHECKUP ) & & ! _tcsncmp ( szMsg , _T ( " TG " ) , _tcslen ( _T ( " TG " ) ) ) )
{
TCHAR szCorpID [ 512 ] = { 0 } ;
_tcscpy ( szCorpID , szMsg + 2 ) ;
if ( _tcslen ( szCorpID ) > = 8 )
{
szCorpID [ 8 ] = 0 ;
strSelect . Format ( _T ( " select * from users where userid=%d " ) , _ttol ( szCorpID ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//<2F> <> <EFBFBD> <EFBFBD> Ϊ֪ͨsocket,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͵Ķ<CDB5> <C4B6> <EFBFBD> Ҳ<EFBFBD> <D2B2> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
Checkup up = { 0 } ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , up . lCorpID ) ;
pAdoRS - > GetCollect ( _T ( " UserID " ) , up . lUserID ) ;
pAdoRS - > Close ( ) ;
up . bCheckup = false ;
pSMSDlg - > SocketPushCheck ( up ) ;
Sleep ( 200 ) ;
strSelect . Format ( _T ( " update smssend set Status=0 where userid=%d and Status=%d " ) , _ttol ( szCorpID ) , SEND_STATUS_SUB_FILT ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> IDΪ%s<> Ķ<EFBFBD> <C4B6> <EFBFBD> !" ) , szCorpID ) ;
strTemp . Format ( _T ( " (%s)<29> <> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> IDΪ%s<> Ķ<EFBFBD> <C4B6> <EFBFBD> ! " ) , Quitdata . szMobile , szCorpID ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> û<EFBFBD> ID:%s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , szCorpID ) ;
}
}
else
{
szCorpID [ 6 ] = 0 ;
strSelect . Format ( _T ( " select * from corp where corpid=%d " ) , _ttol ( szCorpID ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
//<2F> <> <EFBFBD> <EFBFBD> Ϊ֪ͨsocket,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͵Ķ<CDB5> <C4B6> <EFBFBD> Ҳ<EFBFBD> <D2B2> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
Checkup up = { 0 } ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , up . lCorpID ) ;
pAdoRS - > Close ( ) ;
up . bCheckup = false ;
pSMSDlg - > SocketPushCheck ( up ) ;
Sleep ( 200 ) ;
strSelect . Format ( _T ( " update smssend set Status=0 where corpid=%d and Status=%d " ) , _ttol ( szCorpID ) , SEND_STATUS_SUB_FILT ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵIDΪ%s<> Ķ<EFBFBD> <C4B6> <EFBFBD> !" ) , szCorpID ) ;
strTemp . Format ( _T ( " (%s)<29> <> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵIDΪ%s<> Ķ<EFBFBD> <C4B6> <EFBFBD> ! " ) , Quitdata . szMobile , szCorpID ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ҵID:%s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , szCorpID ) ;
}
}
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
if ( ( dwType & REPORT_MANAGER | | dwType & REPORT_CHECKUP ) & & ! _tcsncmp ( szMsg , _T ( " SG " ) , _tcslen ( _T ( " SG " ) ) ) )
{
TCHAR szTaskID [ 512 ] = { 0 } ;
_tcscpy ( szTaskID , szMsg + 2 ) ;
long lTaskID = _ttol ( szTaskID ) ;
if ( lTaskID > 1 )
{
strSelect . Format ( _T ( " update PLTaskSms set Status=1 where PLTaskSmsID=%d and Status=2 " ) , lTaskID ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IDΪ%d<> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , lTaskID ) ;
strTemp . Format ( _T ( " (%s)<29> <> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> IDΪ%d<> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ! " ) , Quitdata . szMobile , lTaskID ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
}
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
if ( ( dwType & REPORT_MANAGER | | dwType & REPORT_CHECKUP ) & & ! _tcsncmp ( szMsg , _T ( " SF " ) , _tcslen ( _T ( " SF " ) ) ) )
{
TCHAR szTaskID [ 512 ] = { 0 } ;
_tcscpy ( szTaskID , szMsg + 2 ) ;
long lTaskID = _ttol ( szTaskID ) ;
if ( lTaskID > 1 )
{
strSelect . Format ( _T ( " update PLTaskSms set Status=3 where PLTaskSmsID=%d and Status=2 " ) , lTaskID ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IDΪ%d<> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , lTaskID ) ;
strTemp . Format ( _T ( " (%s)<29> <> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <CAA7> <EFBFBD> <EFBFBD> IDΪ%d<> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ! " ) , Quitdata . szMobile , lTaskID ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
}
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
if ( dwType & REPORT_MANAGER & & ( ! _tcsncmp ( szMsg , _T ( " BZ " ) , _tcslen ( _T ( " BZ " ) ) ) | | ! _tcsncmp ( szMsg , _T ( " HELP " ) , _tcslen ( _T ( " HELP " ) ) ) ) )
{
SYSTEMTIME t ; : : GetLocalTime ( & t ) ;
_stprintf ( Quitdata . szMsg , _T ( " RESTART<EFBFBD> <EFBFBD> QUIT<EFBFBD> <EFBFBD> REBOOT<EFBFBD> <EFBFBD> OFF<EFBFBD> <EFBFBD> ON<EFBFBD> <EFBFBD> QUERYLL<EFBFBD> <EFBFBD> NEXT<EFBFBD> <EFBFBD> CJ<EFBFBD> <EFBFBD> ACJ<EFBFBD> <EFBFBD> QJTD<EFBFBD> <EFBFBD> TD<EFBFBD> <EFBFBD> %02d:%02d:%02d " ) , t . wHour , t . wMinute , t . wSecond ) ;
Sleep ( 2000 ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
if ( dwType & REPORT_CM & & ! _tcsncmp ( szMsg , _T ( " CMG " ) , _tcslen ( _T ( " CMG " ) ) ) )
{
TCHAR szBBSID [ 512 ] = { 0 } ;
_tcscpy ( szBBSID , szMsg + 3 ) ;
szBBSID [ 8 ] = 0 ;
TCHAR szErrMsg [ 512 ] = { 0 } ;
_tcscpy ( szErrMsg , szMsg + 11 ) ;
Sleep ( 2000 ) ;
strSelect . Format ( _T ( " select * from BBS with(nolock) where BBSID=%d AND BBSType=1 " ) , _ttol ( szBBSID ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
long lUserID = 0 ;
long lCorpID = 0 ;
long lRCorpID = 0 ;
long lRUserID = 0 ;
TCHAR szCM [ 512 ] = { 0 } ;
CString strMobile ;
CString strBZ ;
CString strType ;
CString strName ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ;
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID ) ;
pAdoRS - > GetCollect ( _T ( " SCorpID " ) , lRCorpID ) ;
pAdoRS - > GetCollect ( _T ( " SUserID " ) , lRUserID ) ;
pAdoRS - > GetCollect ( _T ( " CM " ) , szCM ) ;
pAdoRS - > GetCollect ( _T ( " Tel " ) , strMobile ) ;
pAdoRS - > GetCollect ( _T ( " BZ " ) , strBZ ) ;
pAdoRS - > GetCollect ( _T ( " Type " ) , strType ) ;
pAdoRS - > GetCollect ( _T ( " Email " ) , strName ) ;
CString strTemp = strBZ + _T ( " \r \n ǩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǽ<EFBFBD> <EFBFBD> ύ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˣ<EFBFBD> <EFBFBD> <EFBFBD> 1-2<> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> պ<EFBFBD> <D5BA> õ<EFBFBD> <C3B5> <EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <C7A9> : " ) + CString ( szCM ) ;
pAdoRS - > PutCollect ( _T ( " BZ " ) , strTemp ) ; //ʧ<> <CAA7>
pAdoRS - > PutCollect ( _T ( " BBSType " ) , 2 ) ; //<2F> ɹ<EFBFBD>
pAdoRS - > PutCollect ( _T ( " ExpTime " ) , COleDateTime : : GetCurrentTime ( ) ) ; //<2F> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1>
pAdoRS - > Update ( ) ;
pAdoRS - > Close ( ) ;
if ( _tcslen ( szErrMsg ) > = 2 )
{
ExChar ( szErrMsg , _T ( " \r " ) ) ;
ExChar ( szErrMsg , _T ( " \n " ) ) ;
ExChar ( szErrMsg , _T ( " \t " ) ) ;
_tcscpy ( szCM , szErrMsg ) ;
}
//<2F> <> ¼<EFBFBD> <C2BC> <EFBFBD> ¼<EFBFBD>
strTemp = _T ( " ǩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǽ<EFBFBD> <EFBFBD> ύ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˣ<EFBFBD> <EFBFBD> <EFBFBD> 1-2<> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> պ<EFBFBD> <D5BA> õ<EFBFBD> <C3B5> <EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <C7A9> : " ) + CString ( szCM ) ;
strTemp = strTemp + _T ( " <EFBFBD> <EFBFBD> \r \n " ) ;
strBZ = strTemp + strBZ ;
BBS_Insert bbs = { 0 } ;
bbs . SCorpID = 0 ;
bbs . SUserID = 0 ;
_tcscpy ( bbs . SCorpName , _T ( " ϵͳ<EFBFBD> <EFBFBD> Ϣ " ) ) ;
_tcscpy ( bbs . SUserName , _T ( " ϵͳ<EFBFBD> <EFBFBD> Ϣ " ) ) ;
bbs . RCorpID = lRCorpID ;
bbs . RUserID = lRUserID ;
_tcscpy ( bbs . Type , strType ) ;
_tcscpy ( bbs . BZ , strBZ ) ;
bbs . Status = 0 ;
bbs . BBSType = 0 ;
Bbs_Insert ( pAdoRS , bbs ) ;
//<2F> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> ϵͳ<CFB5> <CDB3> Ϣ
strTemp . Format ( _T ( " (%s) " ) , Quitdata . szMobile ) ;
strBZ = strTemp + strBZ ;
Bbs_Insert_Sys ( pAdoRS , strBZ ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
if ( lUserID < = 0 )
strSelect . Format ( _T ( " update corp set CM='%s' where CorpID=%d " ) , szCM , lCorpID ) ;
else
strSelect . Format ( _T ( " update users set CM2='%s' where CorpID=%d AND UserID=%d " ) , szCM , lCorpID , lUserID ) ;
pAdoRS - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %s<> <73> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <C7A9> :%s!" ) , strName , szCM ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
//<2F> <> <EFBFBD> <EFBFBD> ֪ͨ<CDA8> <D6AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
if ( strMobile . GetLength ( ) > = 8 )
{
_tcscpy ( Quitdata . szMobile , strMobile ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %s<> <73> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <C7A9> :%s<> <73> 1-2<> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> պ<EFBFBD> <D5BA> õ<EFBFBD> <C3B5> <EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> <EFBFBD> " ) , strName , szCM ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " ǩ<EFBFBD> <EFBFBD> ID:%s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ! " ) , szBBSID ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
if ( dwType & REPORT_CM & & ! _tcsncmp ( szMsg , _T ( " CMJ " ) , _tcslen ( _T ( " CMJ " ) ) ) )
{
TCHAR szBBSID [ 512 ] = { 0 } ;
_tcscpy ( szBBSID , szMsg + 3 ) ;
szBBSID [ 8 ] = 0 ;
TCHAR szErrMsg [ 512 ] = { 0 } ;
_tcscpy ( szErrMsg , szMsg + 11 ) ;
Sleep ( 2000 ) ;
strSelect . Format ( _T ( " select * from BBS where BBSID=%d and BBSType=1 " ) , _ttol ( szBBSID ) ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
long lUserID = 0 ;
long lCorpID = 0 ;
long lRCorpID = 0 ;
long lRUserID = 0 ;
TCHAR szCM [ 512 ] = { 0 } ;
CString strMobile ;
CString strBZ ;
CString strType ;
CString strName ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ;
pAdoRS - > GetCollect ( _T ( " UserID " ) , lUserID ) ;
pAdoRS - > GetCollect ( _T ( " SCorpID " ) , lRCorpID ) ;
pAdoRS - > GetCollect ( _T ( " SUserID " ) , lRUserID ) ;
pAdoRS - > GetCollect ( _T ( " CM " ) , szCM ) ;
pAdoRS - > GetCollect ( _T ( " Tel " ) , strMobile ) ;
pAdoRS - > GetCollect ( _T ( " BZ " ) , strBZ ) ;
pAdoRS - > GetCollect ( _T ( " Type " ) , strType ) ;
pAdoRS - > GetCollect ( _T ( " Email " ) , strName ) ;
CString strTemp = strBZ + _T ( " \r \n ǩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> ܣ<EFBFBD> ԭ<EFBFBD> <EFBFBD> : " ) + CString ( szErrMsg ) ;
pAdoRS - > PutCollect ( _T ( " BZ " ) , strTemp ) ; //ʧ<> <CAA7>
pAdoRS - > PutCollect ( _T ( " BBSType " ) , 3 ) ; //ʧ<> <CAA7>
pAdoRS - > PutCollect ( _T ( " ExpTime " ) , COleDateTime : : GetCurrentTime ( ) ) ; //<2F> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1>
pAdoRS - > Update ( ) ;
pAdoRS - > Close ( ) ;
strTemp = _T ( " ǩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> ܣ<EFBFBD> ԭ<EFBFBD> <EFBFBD> : " ) + CString ( szErrMsg ) ;
strTemp = strTemp + _T ( " \r \n " ) ;
strBZ = strTemp + strBZ ;
BBS_Insert bbs = { 0 } ;
bbs . SCorpID = 0 ;
bbs . SUserID = 0 ;
_tcscpy ( bbs . SCorpName , _T ( " ϵͳ<EFBFBD> <EFBFBD> Ϣ " ) ) ;
_tcscpy ( bbs . SUserName , _T ( " ϵͳ<EFBFBD> <EFBFBD> Ϣ " ) ) ;
bbs . RCorpID = lRCorpID ;
bbs . RUserID = lRUserID ;
_tcscpy ( bbs . Type , strType ) ;
_tcscpy ( bbs . BZ , strBZ ) ;
bbs . Status = 0 ;
bbs . BBSType = 0 ;
Bbs_Insert ( pAdoRS , bbs ) ;
//<2F> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> ϵͳ<CFB5> <CDB3> Ϣ
strTemp . Format ( _T ( " (%s) " ) , Quitdata . szMobile ) ;
strBZ = strTemp + strBZ ;
Bbs_Insert_Sys ( pAdoRS , strBZ ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
_stprintf ( Quitdata . szMsg , _T ( " %s<> <73> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> ܣ<EFBFBD> ԭ<EFBFBD> <D4AD> :%s<> <73> " ) , strName , szErrMsg ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
//<2F> <> <EFBFBD> <EFBFBD> ֪ͨ<CDA8> <D6AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
if ( strMobile . GetLength ( ) > = 8 )
{
_tcscpy ( Quitdata . szMobile , strMobile ) ;
_stprintf ( Quitdata . szMsg , _T ( " %s<> <73> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> 룬<EFBFBD> <EBA3AC> <EFBFBD> <EFBFBD> ʧ<EFBFBD> ܣ<EFBFBD> ԭ<EFBFBD> <D4AD> :%s<> <73> " ) , strName , szErrMsg ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " ǩ<EFBFBD> <EFBFBD> ID:%s<> <73> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ! " ) , szBBSID ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
if ( dwType & REPORT_MANAGER & & ! _tcsncmp ( szMsg , _T ( " QUERYLL " ) , _tcslen ( _T ( " QUERYLL " ) ) ) )
{
Sleep ( 200 ) ;
ANS_QueryLL RetLL = { 0 } ;
CString strRet ;
CProcessSocket : : Process_QueryLL_Query ( * pAdoRS , RetLL , strRet ) ;
_stprintf ( Quitdata . szMsg , strRet ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
if ( dwType & REPORT_MANAGER & & ! _tcsncmp ( szMsg , _T ( " NEXT " ) , _tcslen ( _T ( " NEXT " ) ) ) )
{
Sleep ( 2000 ) ;
COleDateTime t = COleDateTime : : GetCurrentTime ( ) - COleDateTimeSpan ( 0 , 0 , 10 , 0 ) ; //10<31> <30> <EFBFBD> <EFBFBD> ǰ<EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD>
COleDateTime tn = COleDateTime : : GetCurrentTime ( ) + COleDateTimeSpan ( 1 , 0 , 0 , 0 ) ; //<2F> ڶ<EFBFBD> <DAB6> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD>
CString strNow , strNext ;
strNow . Format ( _T ( " %04d%02d%02d %02d:%02d " ) , t . GetYear ( ) , t . GetMonth ( ) , t . GetDay ( ) , t . GetHour ( ) , t . GetMinute ( ) ) ;
strNext . Format ( _T ( " %04d%02d%02d 08:00 " ) , tn . GetYear ( ) , tn . GetMonth ( ) , tn . GetDay ( ) ) ;
strSelect . Format ( _T ( " update smssend set timer='%s' where status=0 and Subtime<='%s' and (Timer is null or timer<getdate()) " ) , strNext , strNow ) ;
if ( pAdoRS - > Open ( strSelect ) )
{
pAdoRS - > Close ( ) ;
strTemp . Format ( _T ( " (%s)<29> <> <EFBFBD> õ<EFBFBD> ǰδ<C7B0> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> 8:00<30> <30> <EFBFBD> <EFBFBD> ! " ) , Quitdata . szMobile ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
}
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> ѳɹ<EFBFBD> <EFBFBD> <EFBFBD> %sǰ<73> <C7B0> <EFBFBD> ͵Ķ<CDB5> <C4B6> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> 08:00<30> <30> <EFBFBD> <EFBFBD> <EFBFBD> ͣ<EFBFBD> " ) , strNow ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
//<2F> <> ҵ<EFBFBD> <D2B5> <EFBFBD> ų<EFBFBD> ֵ
if ( dwType & REPORT_CJ & & ! _tcsncmp ( szMsg , _T ( " CJ " ) , _tcslen ( _T ( " CJ " ) ) ) )
{
Sleep ( 2000 ) ;
//<2F> ֽ<EFBFBD> ָ<EFBFBD> <D6B8> ,CJ,<2C> <> ҵID,<2C> ɷѷ<C9B7> ʽ ,<2C> ɷѽ<C9B7> <D1BD> <EFBFBD> ,<2C> <> <EFBFBD> ŷ<EFBFBD> <C5B7> <EFBFBD> ,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> Ƿ<EFBFBD> Ӧ<EFBFBD> <D3A6> ,<2C> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> <> ע
TCHAR szCorpID [ 32 ] = { 0 } ;
TCHAR szPayMode [ 32 ] = { 0 } ;
TCHAR szPrice [ 32 ] = { 0 } ;
TCHAR szPriceOne [ 32 ] = { 0 } ;
TCHAR szPresent [ 32 ] = { 0 } ;
TCHAR szYS [ 32 ] = { 0 } ;
TCHAR szTest [ 32 ] = { 0 } ;
TCHAR szBZ [ 256 ] = { 0 } ;
TCHAR szMsgt [ 256 ] = { 0 } ;
_tcscpy ( szMsgt , szMsg ) ;
_tcscat ( szMsgt , _T ( " ,,,,,,,,,,,,,, " ) ) ;
long lLen = _tcslen ( szMsgt ) ;
: : GetReqMess ( szMsgt , szCorpID , 1 , ' , ' , lLen ) ; AllTrim ( szCorpID ) ; szCorpID [ 6 ] = 0 ;
: : GetReqMess ( szMsgt , szPayMode , 2 , ' , ' , lLen ) ; AllTrim ( szPayMode ) ; szPayMode [ 15 ] = 0 ;
: : GetReqMess ( szMsgt , szPrice , 3 , ' , ' , lLen ) ; AllTrim ( szPrice ) ; szPrice [ 8 ] = 0 ;
: : GetReqMess ( szMsgt , szPriceOne , 4 , ' , ' , lLen ) ; AllTrim ( szPriceOne ) ; szPriceOne [ 8 ] = 0 ;
: : GetReqMess ( szMsgt , szPresent , 5 , ' , ' , lLen ) ; AllTrim ( szPresent ) ; szPresent [ 8 ] = 0 ;
: : GetReqMess ( szMsgt , szYS , 6 , ' , ' , lLen ) ; AllTrim ( szYS ) ; szYS [ 4 ] = 0 ;
: : GetReqMess ( szMsgt , szTest , 7 , ' , ' , lLen ) ; AllTrim ( szTest ) ; szTest [ 4 ] = 0 ;
: : GetReqMess ( szMsgt , szBZ , 8 , ' , ' , lLen ) ; AllTrim ( szBZ ) ; szBZ [ 250 ] = 0 ;
long lCorpID = _ttol ( szCorpID ) ;
# ifdef UNICODE
double fPrice = atof ( CW2A ( szPrice ) ) ;
double fPriceOne = atof ( CW2A ( szPriceOne ) ) ;
# else
double fPrice = atof ( szPrice ) ;
double fPriceOne = atof ( szPriceOne ) ;
# endif
long lPresent = _ttol ( szPresent ) ;
BOOL bYS = _ttol ( szYS ) ;
BOOL bTest = _ttol ( szTest ) ;
double l = fPrice / fPriceOne ;
long lSMSCount = long ( l + 0.5f ) ;
if ( l < 0 )
lSMSCount = long ( l - 0.5f ) ;
lSMSCount = lSMSCount + lPresent ;
if ( ! bYS & & ! _tcscmp ( szYS , _T ( " <EFBFBD> <EFBFBD> " ) ) )
bYS = true ;
if ( ! bTest & & ! _tcscmp ( szTest , _T ( " <EFBFBD> <EFBFBD> " ) ) )
bTest = true ;
if ( lCorpID < 100000 | | lCorpID > 1000000 | |
fPrice < - 10000.0f | | fPrice > 10000.0f | |
fPriceOne < 0 | | fPriceOne > 1.0f | |
lPresent < - 10000 | | lPresent > 10000 )
{
_tcscpy ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <EFBFBD> CJ,<2C> <> ҵID,<2C> ɷѷ<C9B7> ʽ ,<2C> ɷѽ<C9B7> <D1BD> <EFBFBD> ,<2C> <> <EFBFBD> ŷ<EFBFBD> <C5B7> <EFBFBD> ,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> Ƿ<EFBFBD> Ӧ<EFBFBD> <D3A6> ,<2C> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> <> ע" ) ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
else
{
TCHAR szSMSCount [ 32 ] = { 0 } ;
_stprintf ( szCorpID , _T ( " %d " ) , lCorpID ) ;
_stprintf ( szPrice , _T ( " %.4f " ) , fPrice ) ;
_stprintf ( szPriceOne , _T ( " %.4f " ) , fPriceOne ) ;
_stprintf ( szPresent , _T ( " %d " ) , lPresent ) ;
_stprintf ( szSMSCount , _T ( " %d " ) , lSMSCount ) ;
_stprintf ( szYS , _T ( " %d " ) , bYS ) ;
_stprintf ( szTest , _T ( " %d " ) , bTest ) ;
strSelect . Format ( _T ( " select * from corp where corpid=%d " ) , lCorpID ) ;
if ( pAdoRS2 - > Open ( strSelect ) & & ! pAdoRS2 - > IsEOF ( ) )
{
long lAgentID ;
CString strCorpName ;
pAdoRS2 - > GetCollect ( _T ( " AgentID " ) , lAgentID ) ;
pAdoRS2 - > GetCollect ( _T ( " CorpName " ) , strCorpName ) ;
pAdoRS2 - > Close ( ) ;
if ( lAgentID > 0 )
{
_tcscpy ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̵<EFBFBD> <EFBFBD> <EFBFBD> ҵ<EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> " ) ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
else
{
strSelect = CString ( " insert into corp_Pay (CorpID,AgentID,PayMan,PayMode,Price,PriceOne,Present,SMSCount,YS,Test,CreateUser,PayTime,OvrTime,BZ) values( " ) +
CString ( " ' " ) + CString ( szCorpID ) + CString ( " ', " ) +
CString ( " ' " ) + CString ( " 0 " ) + CString ( " ', " ) +
CString ( " ' " ) + CString ( " <EFBFBD> <EFBFBD> <EFBFBD> ų<EFBFBD> ֵ" ) + CString ( " ', " ) +
CString ( " ' " ) + CString ( szPayMode ) + CString ( " ', " ) +
CString ( szPrice ) + CString ( " , " ) +
CString ( szPriceOne ) + CString ( " , " ) +
CString ( szPresent ) + CString ( " , " ) +
CString ( szSMSCount ) + CString ( " , " ) +
CString ( szYS ) + CString ( " , " ) +
CString ( szTest ) + CString ( " , " ) +
CString ( " ' " ) + CString ( sms . szSendNum ) + CString ( " ', " ) + //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
CString ( " GETDATE(), " ) +
CString ( " DATEADD(Year,1,GETDATE()), " ) +
CString ( " ' " ) + CString ( szBZ ) + CString ( " ' ) " ) ;
if ( pAdoRS2 - > Open ( strSelect ) )
{
strSelect . Format ( _T ( " update corp set SMSUsed=SMSUsed+%d,Total=Total+%.4f,TotalSms=TotalSms+%d,LastPay=GetDate(),OvrTime=DATEADD(Year,1,GETDATE()) where CorpID=%d " ) , lSMSCount , fPrice , lSMSCount , lCorpID ) ;
pAdoRS2 - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ֵ<EFBFBD> ɹ<EFBFBD> :%s(%d),<2C> <> %d<> <64> <EFBFBD> <EFBFBD> <EFBFBD> ţ<EFBFBD> " ) , strCorpName , lCorpID , lSMSCount ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
strTemp . Format ( _T ( " (%s)%s! " ) , Quitdata . szMobile , Quitdata . szMsg ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
}
else
{
_tcscpy ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 쳣<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 飡" ) ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵID(%d)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 飡" ) , lCorpID ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
}
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ̶<EFBFBD> <CCB6> ų<EFBFBD> ֵ
if ( dwType & REPORT_CJ & & ! _tcsncmp ( szMsg , _T ( " ACJ " ) , _tcslen ( _T ( " ACJ " ) ) ) )
{
Sleep ( 2000 ) ;
//<2F> ֽ<EFBFBD> ָ<EFBFBD> <D6B8> ,CJA,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID,<2C> ɷѷ<C9B7> ʽ ,<2C> ɷѽ<C9B7> <D1BD> <EFBFBD> ,<2C> <> <EFBFBD> ŷ<EFBFBD> <C5B7> <EFBFBD> ,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> Ƿ<EFBFBD> Ӧ<EFBFBD> <D3A6> ,<2C> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> <> ע
TCHAR szCorpID [ 32 ] = { 0 } ;
TCHAR szPayMode [ 32 ] = { 0 } ;
TCHAR szPrice [ 32 ] = { 0 } ;
TCHAR szPriceOne [ 32 ] = { 0 } ;
TCHAR szPresent [ 32 ] = { 0 } ;
TCHAR szYS [ 32 ] = { 0 } ;
TCHAR szTest [ 32 ] = { 0 } ;
TCHAR szBZ [ 256 ] = { 0 } ;
TCHAR szMsgt [ 256 ] = { 0 } ;
_tcscpy ( szMsgt , szMsg ) ;
_tcscat ( szMsgt , _T ( " ,,,,,,,,,,,,,, " ) ) ;
long lLen = _tcslen ( szMsgt ) ;
: : GetReqMess ( szMsgt , szCorpID , 1 , ' , ' , lLen ) ; AllTrim ( szCorpID ) ; szCorpID [ 6 ] = 0 ;
: : GetReqMess ( szMsgt , szPayMode , 2 , ' , ' , lLen ) ; AllTrim ( szPayMode ) ; szPayMode [ 15 ] = 0 ;
: : GetReqMess ( szMsgt , szPrice , 3 , ' , ' , lLen ) ; AllTrim ( szPrice ) ; szPrice [ 8 ] = 0 ;
: : GetReqMess ( szMsgt , szPriceOne , 4 , ' , ' , lLen ) ; AllTrim ( szPriceOne ) ; szPriceOne [ 8 ] = 0 ;
: : GetReqMess ( szMsgt , szPresent , 5 , ' , ' , lLen ) ; AllTrim ( szPresent ) ; szPresent [ 8 ] = 0 ;
: : GetReqMess ( szMsgt , szYS , 6 , ' , ' , lLen ) ; AllTrim ( szYS ) ; szYS [ 4 ] = 0 ;
: : GetReqMess ( szMsgt , szTest , 7 , ' , ' , lLen ) ; AllTrim ( szTest ) ; szTest [ 4 ] = 0 ;
: : GetReqMess ( szMsgt , szBZ , 8 , ' , ' , lLen ) ; AllTrim ( szBZ ) ; szBZ [ 250 ] = 0 ;
long lAgentID = _ttol ( szCorpID ) ;
# ifdef UNICODE
double fPrice = atof ( CW2A ( szPrice ) ) ;
double fPriceOne = atof ( CW2A ( szPriceOne ) ) ;
# else
double fPrice = atof ( szPrice ) ;
double fPriceOne = atof ( szPriceOne ) ;
# endif
long lPresent = _ttol ( szPresent ) ;
BOOL bYS = _ttol ( szYS ) ;
BOOL bTest = _ttol ( szTest ) ;
double l = fPrice / fPriceOne ;
long lSMSCount = long ( l + 0.5f ) ;
if ( l < 0 )
lSMSCount = long ( l - 0.5f ) ;
lSMSCount = lSMSCount + lPresent ;
if ( ! bYS & & ! _tcscmp ( szYS , _T ( " <EFBFBD> <EFBFBD> " ) ) )
bYS = true ;
if ( ! bTest & & ! _tcscmp ( szTest , _T ( " <EFBFBD> <EFBFBD> " ) ) )
bTest = true ;
if ( lAgentID < 100000 | | lAgentID > 1000000 | |
fPrice < - 10000.0f | | fPrice > 10000.0f | |
fPriceOne < 0 | | fPriceOne > 1.0f | |
lPresent < - 10000 | | lPresent > 10000 )
{
_tcscpy ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <EFBFBD> ACJ,<2C> <> ҵID,<2C> ɷѷ<C9B7> ʽ ,<2C> ɷѽ<C9B7> <D1BD> <EFBFBD> ,<2C> <> <EFBFBD> ŷ<EFBFBD> <C5B7> <EFBFBD> ,<2C> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> Ƿ<EFBFBD> Ӧ<EFBFBD> <D3A6> ,<2C> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> <> ע" ) ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
else
{
TCHAR szSMSCount [ 32 ] = { 0 } ;
_stprintf ( szCorpID , _T ( " %d " ) , lAgentID ) ;
_stprintf ( szPrice , _T ( " %.4f " ) , fPrice ) ;
_stprintf ( szPriceOne , _T ( " %.4f " ) , fPriceOne ) ;
_stprintf ( szPresent , _T ( " %d " ) , lPresent ) ;
_stprintf ( szSMSCount , _T ( " %d " ) , lSMSCount ) ;
_stprintf ( szYS , _T ( " %d " ) , bYS ) ;
_stprintf ( szTest , _T ( " %d " ) , bTest ) ;
float fPrice2 = ( float ) lSMSCount / 10.0f ;
CString strPrice ;
strPrice . Format ( _T ( " %.4f " ) , fPrice2 ) ;
strSelect . Format ( _T ( " select * from agent where agentid=%d " ) , lAgentID ) ;
if ( pAdoRS2 - > Open ( strSelect ) & & ! pAdoRS2 - > IsEOF ( ) )
{
CString strAgentName ;
pAdoRS2 - > GetCollect ( _T ( " Name " ) , strAgentName ) ;
pAdoRS2 - > Close ( ) ;
strSelect = CString ( " insert into Agent_Pay (AgentID,PayMan,PayMode,JFPrice,PriceOne,Present,Price,CreateUser,PayTime,YS,Test,BZ) values( " ) +
CString ( " ' " ) + CString ( szCorpID ) + CString ( " ', " ) +
CString ( " ' " ) + CString ( " <EFBFBD> <EFBFBD> <EFBFBD> ų<EFBFBD> ֵ" ) + CString ( " ', " ) + //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
CString ( " ' " ) + CString ( szPayMode ) + CString ( " ', " ) +
CString ( szPrice ) + CString ( " , " ) +
CString ( szPriceOne ) + CString ( " , " ) +
CString ( szPresent ) + CString ( " , " ) +
strPrice + CString ( " , " ) +
CString ( " ' " ) + CString ( sms . szSendNum ) + CString ( " ', " ) + //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
CString ( " GETDATE(), " ) +
CString ( szYS ) + CString ( " , " ) +
CString ( szTest ) + CString ( " , " ) +
CString ( " ' " ) + CString ( szBZ ) + CString ( " ' ) " ) ;
if ( pAdoRS2 - > Open ( strSelect ) )
{
strSelect . Format ( _T ( " update Agent set Used=Used+%.4f,JFTotal=JFTotal+%.4f,Total=Total+%.4f where AgentID='%d' " ) , fPrice2 , fPrice , fPrice2 , lAgentID ) ;
pAdoRS2 - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ֵ<EFBFBD> ɹ<EFBFBD> :%s(%d),<2C> <> %d<> <64> <EFBFBD> <EFBFBD> <EFBFBD> ţ<EFBFBD> " ) , strAgentName , lAgentID , lSMSCount ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
strTemp . Format ( _T ( " (%s)%s! " ) , Quitdata . szMobile , Quitdata . szMsg ) ;
Bbs_Insert_Sys ( pAdoRS , strTemp ) ; //<2F> <> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> Ϣ<EFBFBD> <CFA2> ־
}
else
{
_tcscpy ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 쳣<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 飡" ) ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ֵ<EFBFBD> Ĵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ID(%d)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 飡" ) , lAgentID ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
}
//<2F> Ķ<DEB8> <C4B6> <EFBFBD> ͨ<EFBFBD> <CDA8>
# ifdef SMSCENTER_GDDX
if ( dwType & REPORT_CJ & & ! _tcsncmp ( szMsg , _T ( " GTD " ) , _tcslen ( _T ( " GTD " ) ) ) )
# else
if ( dwType & REPORT_CJ & & ! _tcsncmp ( szMsg , _T ( " GTD " ) , _tcslen ( _T ( " GTD " ) ) ) )
# endif
{
Sleep ( 2000 ) ;
//<2F> ֽ<EFBFBD> ָ<EFBFBD> <D6B8> ,TD,<2C> <> ҵID,<2C> <> Ӫ<EFBFBD> <D3AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,ͨ<> <CDA8> <EFBFBD> <EFBFBD> ,<2C> Ƿ<EFBFBD> ǿ<EFBFBD> <C7BF> ȫ<EFBFBD> <C8AB>
TCHAR szCorpID [ 32 ] = { 0 } ;
TCHAR szYYS [ 32 ] = { 0 } ;
TCHAR szTD [ 32 ] = { 0 } ;
TCHAR szOutAll [ 32 ] = { 0 } ;
TCHAR szMsgt [ 256 ] = { 0 } ;
_tcscpy ( szMsgt , szMsg ) ;
_tcscat ( szMsgt , _T ( " ,,,,,,,,,,,,,, " ) ) ;
long lLen = _tcslen ( szMsgt ) ;
: : GetReqMess ( szMsgt , szCorpID , 1 , ' , ' , lLen ) ; AllTrim ( szCorpID ) ; szCorpID [ 6 ] = 0 ;
: : GetReqMess ( szMsgt , szYYS , 2 , ' , ' , lLen ) ; AllTrim ( szYYS ) ; szYYS [ 1 ] = 0 ;
: : GetReqMess ( szMsgt , szTD , 3 , ' , ' , lLen ) ; AllTrim ( szTD ) ; szTD [ 2 ] = 0 ;
: : GetReqMess ( szMsgt , szOutAll , 4 , ' , ' , lLen ) ; AllTrim ( szOutAll ) ; szOutAll [ 1 ] = 0 ;
long lCorpID = _ttol ( szCorpID ) ;
long lYYS = _ttol ( szYYS ) ;
long lTD = _ttol ( szTD ) ;
if ( lCorpID < 100000 | | lCorpID > 1000000 | |
lYYS < 1 | | lYYS > 3 | |
lTD < 0 | | lTD > 20 )
{
_tcscpy ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <EFBFBD> TD,<2C> <> ҵID,<2C> <> Ӫ<EFBFBD> <D3AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (1-3),ͨ<> <CDA8> <EFBFBD> <EFBFBD> (1-6)(11-17),<2C> Ƿ<EFBFBD> ǿ<EFBFBD> <C7BF> ȫ<EFBFBD> <C8AB> (0-1)<29> <> " ) ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
else
{
strSelect . Format ( _T ( " select * from corp where corpid=%d " ) , lCorpID ) ;
if ( pAdoRS2 - > Open ( strSelect ) & & ! pAdoRS2 - > IsEOF ( ) )
{
TCHAR szTD2 [ 32 ] = { 0 } ;
pAdoRS2 - > GetCollect ( _T ( " SMSTD " ) , szTD2 ) ;
szTD2 [ lYYS - 1 ] = ( TCHAR ) ( ' 0 ' + lTD ) ;
pAdoRS2 - > Close ( ) ;
if ( szOutAll [ 0 ] = = ' 1 ' | | szOutAll [ 0 ] = = ' 0 ' )
{
strSelect . Format ( _T ( " Update corp set SMSTD='%s',OutAll=%d where corpid=%d " ) , szTD2 , _ttol ( szOutAll ) , lCorpID ) ;
}
else
{
strSelect . Format ( _T ( " Update corp set SMSTD='%s' where corpid=%d " ) , szTD2 , lCorpID ) ;
}
pAdoRS2 - > Open ( strSelect ) ;
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> (%d),%d<> <64> Ӫ<EFBFBD> ̸<EFBFBD> Ϊ%dͨ<64> <CDA8> <EFBFBD> <EFBFBD> " ) , lCorpID , lYYS , lTD ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
else
{
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵID(%d)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 飡" ) , lCorpID ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
}
//<2F> <EFBFBD> ǿ<EFBFBD> ƶ<EFBFBD> <C6B6> <EFBFBD> ͨ<EFBFBD> <CDA8>
if ( dwType & REPORT_CJ & & ! _tcsncmp ( szMsg , _T ( " QJTD " ) , _tcslen ( _T ( " QJTD " ) ) ) )
{
Sleep ( 2000 ) ;
//<2F> ֽ<EFBFBD> ָ<EFBFBD> <D6B8> ,QJTD,<2C> <> Ӫ<EFBFBD> <D3AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,ͨ<> <CDA8> <EFBFBD> <EFBFBD> ,<2C> Ƿ<EFBFBD> ǿ<EFBFBD> <C7BF> ȫ<EFBFBD> <C8AB>
TCHAR szYYS [ 32 ] = { 0 } ;
TCHAR szTD [ 32 ] = { 0 } ;
TCHAR szOutAll [ 32 ] = { 0 } ;
TCHAR szMsgt [ 256 ] = { 0 } ;
_tcscpy ( szMsgt , szMsg ) ;
_tcscat ( szMsgt , _T ( " ,,,,,,,,,,,,,, " ) ) ;
long lLen = _tcslen ( szMsgt ) ;
: : GetReqMess ( szMsgt , szYYS , 1 , ' , ' , lLen ) ; AllTrim ( szYYS ) ; szYYS [ 1 ] = 0 ;
: : GetReqMess ( szMsgt , szTD , 2 , ' , ' , lLen ) ; AllTrim ( szTD ) ; szTD [ 2 ] = 0 ;
: : GetReqMess ( szMsgt , szOutAll , 3 , ' , ' , lLen ) ; AllTrim ( szOutAll ) ; szOutAll [ 1 ] = 0 ;
long lYYS = _ttol ( szYYS ) ;
long lTD = _ttol ( szTD ) ;
if ( lYYS < 1 | | lYYS > 3 | |
lTD < 0 | | lTD > 20 )
{
_tcscpy ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ǿ<EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <EFBFBD> QJTD,<2C> <> Ӫ<EFBFBD> <D3AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,ͨ<> <CDA8> <EFBFBD> <EFBFBD> (1-3),<2C> Ƿ<EFBFBD> ǿ<EFBFBD> <C7BF> ȫ<EFBFBD> <C8AB> (0-2)<29> <> " ) ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
else
{
pSMSDlg - > m_Setup . szQZSmsTD [ lYYS - 1 ] = ( TCHAR ) ( ' 0 ' + lTD ) ;
if ( szOutAll [ 0 ] = = ' 2 ' | | szOutAll [ 0 ] = = ' 1 ' | | szOutAll [ 0 ] = = ' 0 ' )
{
pSMSDlg - > m_Setup . szQZSmsOutAll [ lYYS - 1 ] = ( TCHAR ) ( ' 0 ' + _ttol ( szOutAll ) ) ;
}
pSMSDlg - > SaveSetup ( ) ; //<2F> <> <EFBFBD> <EFBFBD>
_stprintf ( Quitdata . szMsg , _T ( " <EFBFBD> <EFBFBD> ǿ<EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> ɹ<EFBFBD> <EFBFBD> <EFBFBD> %d<> <64> Ӫ<EFBFBD> ̸<EFBFBD> Ϊ%dͨ<64> <CDA8> <EFBFBD> <EFBFBD> " ) , lYYS , lTD ) ;
SubmitSms ( Quitdata , pAdoRS2 , pAdoRS3 , pSMSDlg , lMobileType , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
}
# ifdef SMSCENTER_GDYD_ADC
if ( lCorpID = = DEFAULT_SEND_CORPID )
{
BOOL bQR = false ;
long lQRType = 0 ;
long lWhiteID = 0 ;
long lCorpID = 0 ;
if ( ! _tcsncmp ( szMsg , _T ( " <EFBFBD> <EFBFBD> " ) , _tcslen ( _T ( " <EFBFBD> <EFBFBD> " ) ) ) )
{
strSelect . Format ( _T ( " select top 1 * from white2 with(nolock) where mobile='%s' and status=0 and QRType=1 order by AddTime desc " ) , sms . szSendNum ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " WhiteID " ) , lWhiteID ) ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ;
strSelect . Format ( _T ( " update white2 set status=1,QRType=11 where whiteid=%d " ) , lWhiteID ) ;
pAdoRS - > Open ( strSelect ) ;
bQR = true ;
lQRType = 1 ;
}
}
if ( ! _tcsncmp ( szMsg , _T ( " <EFBFBD> <EFBFBD> " ) , _tcslen ( _T ( " <EFBFBD> <EFBFBD> " ) ) ) )
{
strSelect . Format ( _T ( " select top 1 * from white2 with(nolock) where mobile='%s' and (status=0 or status=1) and QRType=2 order by AddTime desc " ) , sms . szSendNum ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " WhiteID " ) , lWhiteID ) ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , lCorpID ) ;
strSelect . Format ( _T ( " delete from white2 where whiteid=%d " ) , lWhiteID ) ;
pAdoRS - > Open ( strSelect ) ;
lQRType = 2 ;
bQR = true ;
}
}
CString strRetMsg ;
if ( bQR )
{
CString strSName ;
CString strSmsNum2 ;
strSelect . Format ( _T ( " select * from corp with(nolock) where corpid=%d " ) , lCorpID ) ;
if ( pAdoRS - > Open ( strSelect ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( _T ( " SName " ) , strSName ) ;
pAdoRS - > GetCollect ( _T ( " SmsNum2 " ) , strSmsNum2 ) ;
}
if ( lQRType = = 1 )
{
strRetMsg . Format ( _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <EFBFBD> %s<> <73> CRM<52> <4D> <EFBFBD> ֵķ<D6B5> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫȡ<D2AA> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> \" TD \" <EFBFBD> <EFBFBD> 106573440025%s<> <73> " ) , strSName , strSmsNum2 ) ;
}
else
{
strRetMsg . Format ( _T ( " <EFBFBD> <EFBFBD> <EFBFBD> Ѿܾ<EFBFBD> %s<> <73> CRM<52> <4D> <EFBFBD> ֵķ<D6B5> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 룬<EFBFBD> <EBA3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> \" DG \" <EFBFBD> <EFBFBD> 106573440025%s<> <73> " ) , strSName , strSmsNum2 ) ;
}
}
else
{
strRetMsg . Format ( _T ( " <EFBFBD> Բ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 㷢<EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> ϲ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " ) ) ;
}
SubmitData data = { 0 } ;
//_tcscpy(data.szSendNum,_T("99999"));
data . lCorpID = DEFAULT_SEND_CORPID ;
data . lUserID = DEFAULT_SEND_USERID ;
data . lItem = 101 ;
_tcscpy ( data . szMobile , sms . szSendNum ) ;
_tcscpy ( data . szMsg , strRetMsg ) ;
CSendThread : : SubmitSms ( data , pAdoRS2 , pAdoRS3 , pSMSDlg , 0 , SMSTYPE_ZF ) ; //<2F> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD>
}
# endif
return false ;
}
BOOL CSendThread : : Bbs_Insert ( CAdoRecordSet * pAdoRS , BBS_Insert & bbs )
{
try
{
CString strExpTime = _T ( " NULL " ) ;
COleDateTime tExpTime ( bbs . expTime ) ;
if ( tExpTime . GetStatus ( ) = = COleDateTime : : valid )
{
strExpTime . Format ( _T ( " '%04d.%02d.%02d %02d:%02d:%02d' " ) , tExpTime . GetYear ( ) , tExpTime . GetMonth ( ) , tExpTime . GetDay ( ) , tExpTime . GetHour ( ) , tExpTime . GetMinute ( ) , tExpTime . GetSecond ( ) ) ;
}
CString str ;
str . Format ( _T ( " insert into BBS (SCorpID,SUserID,SCorpName,SUserName,RCorpID,RUserID,RAgentID,Status,Type,Name,Tel,Email,BZ,BBSType,CorpID,UserID,CM,AgentID,AgentYJ,SendTime,ExpTime) values (%d,%d,'%s','%s',%d,%d,%d,%d,'%s','%s','%s','%s','%s',%d,%d,%d,'%s',%d,%d,GetDate(),%s) " ) ,
bbs . SCorpID ,
bbs . SUserID ,
SqlStr ( bbs . SCorpName ) ,
SqlStr ( bbs . SUserName ) ,
bbs . RCorpID ,
bbs . RUserID ,
bbs . RAgentID ,
bbs . Status ,
SqlStr ( bbs . Type ) ,
SqlStr ( bbs . Name ) ,
SqlStr ( bbs . Tel ) ,
SqlStr ( bbs . Email ) ,
SqlStr ( bbs . BZ ) ,
bbs . BBSType ,
bbs . CorpID ,
bbs . UserID ,
SqlStr ( bbs . CM ) ,
bbs . AgentID ,
bbs . AgentYJ ,
strExpTime ) ;
BOOL b = pAdoRS - > Open ( str ) ;
if ( b )
{
str = _T ( " SELECT SCOPE_IDENTITY() " ) ;
if ( pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
pAdoRS - > GetCollect ( ( long ) 0 , bbs . BBSID ) ;
}
}
pAdoRS - > Close ( ) ;
return b ;
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
return false ;
}
return false ;
}
BOOL CSendThread : : Bbs_Insert_Sys ( CAdoRecordSet * pAdoRS , CString strBZ , COleDateTime * pExpTime )
{
BBS_Insert bbs = { 0 } ;
bbs . SCorpID = 0 ;
bbs . SUserID = 0 ;
_tcscpy ( bbs . SCorpName , _T ( " ϵͳ<EFBFBD> <EFBFBD> Ϣ " ) ) ;
_tcscpy ( bbs . SUserName , _T ( " ϵͳ<EFBFBD> <EFBFBD> Ϣ " ) ) ;
bbs . RCorpID = 0 ;
bbs . RUserID = 0 ;
_tcscpy ( bbs . Type , _T ( " ϵͳ<EFBFBD> <EFBFBD> Ϣ " ) ) ;
_tcscpy ( bbs . BZ , strBZ ) ;
bbs . Status = 0 ;
bbs . BBSType = 10 ;
if ( pExpTime & & pExpTime - > GetStatus ( ) = = COleDateTime : : valid )
{
pExpTime - > GetAsSystemTime ( bbs . expTime ) ;
COleDateTimeSpan span = COleDateTime : : GetCurrentTime ( ) - * pExpTime ;
_stprintf ( bbs . Email , _T ( " %d " ) , span . GetMinutes ( ) ) ;
}
return Bbs_Insert ( pAdoRS , bbs ) ;
}
BOOL CSendThread : : PushRecvSmsToOtherCenter ( HANDLE & hPipe , SmsSendData data , CString strProv , CString strCity )
{
BOOL bOK = false ;
# ifdef _UNICODE
try
{
if ( hPipe = = INVALID_HANDLE_VALUE )
{
hPipe = CreateFile ( SMS_PIPE_RECVSMS , GENERIC_READ | GENERIC_WRITE , 0 , NULL , OPEN_EXISTING , FILE_ATTRIBUTE_NORMAL , NULL ) ;
if ( hPipe = = INVALID_HANDLE_VALUE )
{
return false ;
}
//<2F> <> <EFBFBD> ӳɹ<D3B3>
DWORD dwMode = PIPE_TYPE_BYTE | PIPE_NOWAIT ;
SetNamedPipeHandleState ( hPipe , & dwMode , NULL , NULL ) ; //<2F> <> <EFBFBD> ɷ<EFBFBD> <C9B7> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ
}
tagPipeReport report = { 0 } ;
report . lType = 1 ; //<2F> <> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD>
report . lSendID = data . lSendID ;
report . lCorpID = data . lCorpID ;
report . lUserID = data . lUserID ;
report . lStatus = data . lStatus ;
report . tSendTime = data . tSendTime ;
strcpy ( report . szSendNum , CW2A ( data . szSendNum ) ) ;
strcpy ( report . szRecvNum , CW2A ( data . szRecvNum ) ) ;
strcpy ( report . szMsg , CW2A ( data . szMsg ) ) ;
strcpy ( report . szAddNum , CW2A ( data . szRecvStatus ) ) ; //<2F> <> չ<EFBFBD> <D5B9>
strcpy ( report . szProv , CW2A ( strProv ) ) ; //<2F> <> <EFBFBD> ͵<EFBFBD> <CDB5> <EFBFBD>
strcpy ( report . szCity , CW2A ( strCity ) ) ; //<2F> <> <EFBFBD> ͵<EFBFBD> <CDB5> <EFBFBD>
DWORD dwWrite = 0 ;
WriteFile ( hPipe , & report , sizeof ( report ) , & dwWrite , NULL ) ;
if ( dwWrite = = sizeof ( report ) )
{
bOK = true ;
}
else
{
hPipe = INVALID_HANDLE_VALUE ;
}
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
}
# endif
return bOK ;
}
BOOL CSendThread : : PushRecvSmsToOtherCenter ( long lType , CAdoRecordSet * pAdoRS , SmsSendData data , CString strProv , CString strCity )
{
BOOL bOK = false ;
# ifndef SMSCENTER_DEMO
try
{
CString strSql ;
if ( lType = = 1 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD>
{
strSql . Format ( _T ( " insert into PushToOther (PushTime,Type,CorpID,UserID,SendID,SendNum,RecvNum,AddNum,Msg,LongMsg,Prov,City) values (GetDate(),%d,%d,%d,%d,'%s','%s','%s','%s','%s','%s','%s') " ) ,
1 , //Type,<2C> <> <EFBFBD> <EFBFBD> 1Ϊ<31> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
data . lCorpID ,
data . lUserID ,
data . lSendID ,
data . szSendNum ,
data . szRecvNum ,
data . szRecvStatus , //<2F> <> չ<EFBFBD> <D5B9>
SqlStr ( data . szMsg ) ,
data . szMsgID , //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
strProv ,
strCity ) ;
bOK = pAdoRS - > Open ( strSql ) ;
}
if ( lType = = 2 ) //<2F> <> <EFBFBD> رտͻ<D5BF> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
strSql . Format ( _T ( " insert into PushToOther (PushTime,Type,CorpID,UserID,SendID) values (GetDate(),%d,%d,%d,%d) " ) ,
2 , //Type,<2C> <> <EFBFBD> <EFBFBD> 1Ϊ<31> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
data . lCorpID ,
data . lUserID ,
data . lSendID ) ;
bOK = pAdoRS - > Open ( strSql ) ;
}
if ( rand ( ) % 10 = = 1 ) //10<31> <30> ֮1<D6AE> <31> <EFBFBD> <EFBFBD> Ҫɾ<D2AA> <C9BE> 2<EFBFBD> <32> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
strSql . Format ( _T ( " delete from PushToOther where DATEDIFF(second,PushTime,GETDATE())>120 " ) ) ;
pAdoRS - > Open ( strSql ) ;
}
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
}
# endif
return bOK ;
}
BOOL CSendThread : : Recv_QQT ( long lCorpID , long lUserID , long lRtx_GroupTaskID , CAdoRecordSet * pAdoRS , CAdoRecordSet * pAdoRS2 , CSmsCenterDlg * pSMSDlg )
{
try
{
CString str ;
if ( lCorpID < = 0 | | lRtx_GroupTaskID < = 0 )
return - 1 ;
str . Format ( _T ( " select * from Rtx_GroupTask where Rtx_GroupTaskID=%d and CorpID=%d and Received=0 " ) , lRtx_GroupTaskID , lCorpID ) ;
if ( pAdoRS - > Open ( str ) & & ! pAdoRS - > IsEOF ( ) )
{
REQ_QXBox_Group_SendData SendData = { 0 } ;
CString strDataMsg ;
pAdoRS - > GetCollect ( _T ( " Rtx_GroupTaskID " ) , SendData . lRtx_GroupTaskID ) ;
pAdoRS - > GetCollect ( _T ( " Rtx_GroupID " ) , SendData . lRtx_GroupID ) ;
pAdoRS - > GetCollect ( _T ( " GroupID " ) , SendData . szGroupID ) ;
pAdoRS - > GetCollect ( _T ( " Sender " ) , SendData . szSender ) ;
pAdoRS - > GetCollect ( _T ( " Mobile " ) , SendData . szMobile ) ;
pAdoRS - > GetCollect ( _T ( " GroupName " ) , SendData . szGroupName ) ;
pAdoRS - > GetCollect ( _T ( " Status " ) , SendData . lStatus ) ;
pAdoRS - > GetCollect ( _T ( " CorpID " ) , SendData . lCorpID ) ;
pAdoRS - > GetCollect ( _T ( " UserID " ) , SendData . lUserID ) ;
pAdoRS - > GetCollect ( _T ( " Timer " ) , SendData . tTimer ) ;
pAdoRS - > GetCollect ( _T ( " MsgType " ) , SendData . lMsgType ) ;
pAdoRS - > GetCollect ( _T ( " MsgImageName " ) , SendData . szMsgImageName ) ;
//pAdoRS->GetCollect(_T("MsgImageLen") , pSendData->lImageLen );
pAdoRS - > GetCollect ( _T ( " MsgDataType " ) , SendData . lMsgDataType ) ;
pAdoRS - > GetCollect ( _T ( " MsgData " ) , strDataMsg ) ;
pAdoRS - > GetCollect ( _T ( " MobileAll " ) , SendData . lMobileAll ) ;
pAdoRS - > GetCollect ( _T ( " MobileSent " ) , SendData . lMobileSent ) ;
pAdoRS - > GetCollect ( _T ( " SubTime " ) , SendData . tSubTime ) ;
if ( pSMSDlg )
{
pSMSDlg - > SocketPushQQT ( pAdoRS , SendData , strDataMsg ) ;
}
}
return 1 ;
}
catch ( . . . )
{
LOG_APPERROR ( _T ( " T " ) ) ;
}
return 0 ;
}