2025-02-27 16:58:16 +08:00
// FFaxJS.cpp : implementation file
//
# include "stdafx.h"
# include "CorpSms.h"
# include "FFaxJS.h"
# ifdef _DEBUG
# define new DEBUG_NEW
# undef THIS_FILE
static char THIS_FILE [ ] = __FILE__ ;
# endif
/////////////////////////////////////////////////////////////////////////////
// CFFaxJS dialog
# include "MainFrm.h"
# include "ProcessSocket.h"
# include "DLG_RecvSms.h"
# include "DLG_SmsLogSee.h"
//#include "DLG_FAXJS_Export.h"
# include "DLG_TypeSetup.h"
# ifdef SUPPERGSM
# include "..\public\SendThread\SendThread.h"
# endif
# include "DLG_Find_RecvSms.h"
CFFaxJS : : CFFaxJS ( CWnd * pParent /*=NULL*/ )
: CDialog ( CFFaxJS : : IDD , pParent )
{
//{{AFX_DATA_INIT(CFFaxJS)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
m_bInit = false ;
m_bRefresh = false ;
memset ( & m_Setup , 0 , sizeof ( m_Setup ) ) ;
# ifdef SUPPERGSM
m_pSendThread = NULL ;
# endif
m_bOneGetSim = true ;
m_lMobileRecvCount = 0 ;
m_pMenuType = NULL ;
m_lMenuTypeCount = 0 ;
m_bShowToday = true ;
m_bRecvFirst = true ;
m_lIconCount = 0 ;
}
void CFFaxJS : : DoDataExchange ( CDataExchange * pDX )
{
CDialog : : DoDataExchange ( pDX ) ;
//{{AFX_DATA_MAP(CFFaxJS)
DDX_Control ( pDX , IDC_FAXJS_LIST , m_wndList ) ;
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP ( CFFaxJS , CDialog )
//{{AFX_MSG_MAP(CFFaxJS)
ON_WM_SIZE ( )
ON_NOTIFY ( LVN_KEYDOWN , IDC_FAXJS_LIST , OnKeydownSmsjsList )
ON_NOTIFY ( NM_RCLICK , IDC_FAXJS_LIST , OnRclickSmsjsList )
ON_NOTIFY ( NM_DBLCLK , IDC_FAXJS_LIST , OnDblclkSmsjsList )
ON_WM_TIMER ( )
ON_WM_DESTROY ( )
//}}AFX_MSG_MAP
ON_COMMAND ( MENU_FAXJS_DEL , On_User_Del )
ON_COMMAND ( MENU_FAXJS_SEE , On_User_See )
ON_COMMAND ( MENU_FAXJS_SEND , On_User_Send )
ON_COMMAND ( MENU_FAXJS_ZF , On_User_ZF )
ON_COMMAND ( MENU_FAXJS_EXPORT , On_User_Export )
ON_COMMAND ( MENU_FAXJS_REFRESH , On_User_Refresh )
ON_COMMAND ( MENU_FAXJS_FIND , On_User_Find )
ON_COMMAND ( MENU_FAXJS_TYPESETUP , On_User_TypeSetup )
# ifdef SUPPERGSM
ON_MESSAGE ( TW_INIT , On_TW_Init ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ̷߳<DFB3> <CCB7> ص<EFBFBD> <D8B5> <EFBFBD> Ϣ
ON_MESSAGE ( TW_SEND , On_TW_Send )
ON_MESSAGE ( TW_RECV , On_TW_Recv )
ON_MESSAGE ( TW_GETSIM , On_TW_GetSim )
ON_MESSAGE ( TW_CLEAR , On_TW_Clear )
ON_MESSAGE ( TW_DELETE , On_TW_Delete )
# endif
END_MESSAGE_MAP ( )
/////////////////////////////////////////////////////////////////////////////
// CFFaxJS message handlers
BOOL CFFaxJS : : OnInitDialog ( )
{
USES_CONVERSION ;
CDialog : : OnInitDialog ( ) ;
//ȡ<> ù<EFBFBD> <C3B9> ò<EFBFBD> <C3B2> <EFBFBD>
//CMainFrame * pFrame = static_cast <CMainFrame *>((CMainFrame *)AfxGetMainWnd());
this - > GetParent ( ) - > GetParentFrame ( ) ;
m_pMainFrame = ( CMainFrame * ) this - > GetParent ( ) - > GetParentFrame ( ) ;
m_pSocket = & m_pMainFrame - > m_Socket ;
m_AdoRS . SetAdoConnection ( & m_pMainFrame - > m_adoConnection ) ;
m_AdoRS2 . SetAdoConnection ( & m_pMainFrame - > m_adoConnection ) ;
//<2F> <> <EFBFBD> ӵ<EFBFBD> <D3B5> Ŷα <C5B6>
TCHAR szPath [ 512 ] = { 0 } ;
m_pMainFrame - > GetCurrentPath ( szPath ) ;
_tcscat ( szPath , _T ( " SMSData.dat " ) ) ; //<2F> <> <EFBFBD> ݿ<EFBFBD> <DDBF> ļ<EFBFBD> <C4BC> <EFBFBD>
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
char szPasswd [ 64 ] = { 0 } ; strcpy ( szPasswd , ACCESS_PASSWD ) ;
char szKey [ 64 ] = { 0 } ; strcpy ( szKey , ACCESS_KEY ) ;
char szNew2 [ 64 ] = { 0 } ; long lOut = sizeof ( szNew2 ) ;
TCHAR szNew [ 64 ] = { 0 } ;
CDes des ;
des . Decrypt ( szPasswd , strlen ( szPasswd ) , szNew2 , lOut , szKey , 8 ) ;
# ifdef UNICODE
_tcscpy ( szNew , A2W ( szNew2 ) ) ;
# else
strcpy ( szNew , szNew2 ) ;
# endif
if ( ! m_HDadoConnection . ConnectAccess ( szPath , szNew ) ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD> <EFBFBD> <EFBFBD> ,<2C> <> Ҫ<EFBFBD> <D2AA> <EFBFBD> ´ <EFBFBD> <C2B4> <EFBFBD>
{
MessageBox ( _T ( " ϵͳ<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> ʧ6<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> °<EFBFBD> װ! " ) , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " ) , MB_ICONWARNING ) ;
return false ;
}
m_HDAdoRS . SetAdoConnection ( & m_HDadoConnection ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
//<2F> <> ʼ <EFBFBD> <CABC> List
m_Image . Create ( 16 , 16 , ILC_COLOR32 | ILC_MASK , 5 , 5 ) ;
m_Image . Add ( AfxGetApp ( ) - > LoadIcon ( IDI_L_SMSDF ) ) ;
m_Image . Add ( AfxGetApp ( ) - > LoadIcon ( IDI_L_SMSJS ) ) ;
m_wndList . SubClassWindow2 ( ) ;
# ifdef YQ_VER
m_wndList . SetHeadings ( _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,50; <20> <> <EFBFBD> ͺ <EFBFBD> <CDBA> <EFBFBD> ,120;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,100;<3B> <> <EFBFBD> պ<EFBFBD> <D5BA> <EFBFBD> ,120; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,280;<3B> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ,130;<3B> <> <EFBFBD> ŷ<EFBFBD> <C5B7> <EFBFBD> ,100;<3B> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,120;" ) ) ;
# else
# ifdef MOBSET_OEM_SNLD
m_wndList . SetHeadings ( _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,50; <20> <> <EFBFBD> ͺ <EFBFBD> <CDBA> <EFBFBD> ,120;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,80;<3B> <> <EFBFBD> պ<EFBFBD> <D5BA> <EFBFBD> ,120; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,200;<3B> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ,130;<3B> dz<EFBFBD> ,80;<3B> Ա<EFBFBD> ,50; <20> <> <EFBFBD> <EFBFBD> ,90; <20> <> ˾,80;ְ<> <D6B0> ,80;<3B> 绰,80;<3B> <> <EFBFBD> <EFBFBD> ,80;Email,80;QQ,80;<3B> <> ע,80;" ) ) ;
# else
# ifdef MOBSET_OEM_BYSZY
m_wndList . SetHeadings ( _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,50; <20> <> <EFBFBD> ͺ <EFBFBD> <CDBA> <EFBFBD> ,120;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,100;<3B> <> <EFBFBD> պ<EFBFBD> <D5BA> <EFBFBD> ,120; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,280;<3B> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ,130;<3B> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,120;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ,120;" ) ) ;
# else
m_wndList . SetHeadings ( _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,50; <20> <> <EFBFBD> ͺ <EFBFBD> <CDBA> <EFBFBD> ,120;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,100;<3B> <> <EFBFBD> պ<EFBFBD> <D5BA> <EFBFBD> ,120; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,280;<3B> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ,130;<3B> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,120;" ) ) ;
# endif
# endif
# endif
m_wndList . SetGridLines ( true ) ;
m_wndList . SetImageList ( & m_Image , LVSIL_SMALL ) ;
//m_wndList.SetBkColor( RGB(237,191,175) );
//m_wndList.SetTextBkColor( RGB(237,191,175) );
m_bInit = true ;
//SetTimer( 1 , 1000 , NULL ); //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD>
return TRUE ; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
BOOL CFFaxJS : : ReHide ( )
{
ShowWindow ( SW_HIDE ) ;
return true ;
}
BOOL CFFaxJS : : ReShow ( BOOL bRefresh )
{
ShowWindow ( SW_SHOW ) ;
if ( bRefresh | | ! m_bRefresh )
{
RefreshInfo ( ) ;
}
return true ;
}
BOOL CFFaxJS : : RefreshInfo ( )
{
m_wndList . ShowWindow ( SW_HIDE ) ; //Ϊ<> ˼ӿ<CBBC> <D3BF> <EFBFBD> ʾ <EFBFBD> ٶ<EFBFBD>
m_bRefresh = true ;
m_wndList . DeleteAllItems ( ) ;
TCHAR szSelect [ 512 ] = { 0 } ;
if ( m_bShowToday )
{
//<2F> <> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
SYSTEMTIME t ; : : GetLocalTime ( & t ) ;
if ( m_pMainFrame - > m_Setup . bSQLUse )
_stprintf ( szSelect , _T ( " select * from smsRecv where RecvTime>='%04d%02d%02d' %s order by RecvTime " ) , t . wYear , t . wMonth , t . wDay , m_strFindAdd ) ; //<2F> <> ѯ<EFBFBD> ѷ<EFBFBD> <D1B7> <EFBFBD> <EFBFBD> <EFBFBD>
else
_stprintf ( szSelect , _T ( " select * from smsRecv where RecvTime>=#%04d-%02d-%02d# %s order by RecvTime " ) , t . wYear , t . wMonth , t . wDay , m_strFindAdd ) ; //<2F> <> ѯ<EFBFBD> ѷ<EFBFBD> <D1B7> <EFBFBD> <EFBFBD> <EFBFBD>
}
else
{
if ( m_strFindAdd . GetLength ( ) > 0 )
_stprintf ( szSelect , _T ( " select * from smsRecv where 1 %s order by RecvTime " ) , m_strFindAdd ) ; //<2F> <> ѯ<EFBFBD> <D1AF> <EFBFBD> ռ <EFBFBD> ¼
else
_stprintf ( szSelect , _T ( " select * from smsRecv order by RecvTime " ) ) ; //<2F> <> ѯ<EFBFBD> <D1AF> <EFBFBD> ռ <EFBFBD> ¼
}
//_stprintf( szSelect , _T("select * from smsRecv") ); //<2F> <> ѯ<EFBFBD> <D1AF> <EFBFBD> ռ <EFBFBD> ¼
BOOL b = m_AdoRS . Open ( szSelect ) ;
COleDateTime tRecv ;
long lCount = m_AdoRS . GetRecordCount ( ) ;
if ( b & & lCount )
{
m_AdoRS . MoveFirst ( ) ;
long iItem = 0 ;
while ( ! m_AdoRS . IsEOF ( ) )
{
long lRecvID ;
BOOL bRead ;
TCHAR szSendNum [ 128 ] = { 0 } ;
TCHAR szSender [ 32 ] = { 0 } ;
TCHAR szRecvNum [ 32 ] = { 0 } ;
TCHAR szMsg [ 180 ] = { 0 } ;
TCHAR szType1 [ 64 ] = { 0 } ;
TCHAR szType2 [ 32 ] = { 0 } ;
TCHAR szProvince [ 64 ] = { 0 } ;
TCHAR szCity [ 32 ] = { 0 } ;
m_AdoRS . GetCollect ( _T ( " RecvID " ) , lRecvID ) ;
m_AdoRS . GetCollect ( _T ( " Reader " ) , bRead ) ;
m_AdoRS . GetCollect ( _T ( " SendNum " ) , szSendNum ) ;
m_AdoRS . GetCollect ( _T ( " Sender " ) , szSender ) ;
m_AdoRS . GetCollect ( _T ( " RecvNum " ) , szRecvNum ) ;
m_AdoRS . GetCollect ( _T ( " Msg " ) , szMsg ) ;
m_AdoRS . GetCollect ( _T ( " RecvTime " ) , tRecv ) ;
m_AdoRS . GetCollect ( _T ( " Province " ) , szProvince ) ;
m_AdoRS . GetCollect ( _T ( " City " ) , szCity ) ;
# ifdef MOBSET_OEM_SNLD
CString NickName ;
CString Sex ;
COleDateTime Birthday ;
CString Ltd ;
CString Job ;
CString Tel ;
CString Fax ;
CString Email ;
CString QQ ;
CString BZ ;
m_AdoRS . GetCollect ( _T ( " NickName " ) , NickName ) ;
m_AdoRS . GetCollect ( _T ( " Sex " ) , Sex ) ;
m_AdoRS . GetCollect ( _T ( " Birthday " ) , Birthday ) ;
m_AdoRS . GetCollect ( _T ( " Ltd " ) , Ltd ) ;
m_AdoRS . GetCollect ( _T ( " Job " ) , Job ) ;
m_AdoRS . GetCollect ( _T ( " Tel " ) , Tel ) ;
m_AdoRS . GetCollect ( _T ( " Fax " ) , Fax ) ;
m_AdoRS . GetCollect ( _T ( " Email " ) , Email ) ;
m_AdoRS . GetCollect ( _T ( " QQ " ) , QQ ) ;
m_AdoRS . GetCollect ( _T ( " BZ " ) , BZ ) ;
# endif
# ifdef MOBSET_OEM_BYSZY
CString Local ;
m_AdoRS . GetCollect ( _T ( " LocalGroup " ) , Local ) ;
# endif
//
//m_wndList.SetHeadings(_T("<22> <> <EFBFBD> <EFBFBD> ,50; <20> <> <EFBFBD> ͺ <EFBFBD> <CDBA> <EFBFBD> ,100;<3B> <> <EFBFBD> պ<EFBFBD> <D5BA> <EFBFBD> ,80; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,280;<3B> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ,120;"));
//m_wndList.SetHeadings(_T("<22> <> <EFBFBD> <EFBFBD> ,50; <20> <> <EFBFBD> ͺ <EFBFBD> <CDBA> <EFBFBD> ,150;<3B> <> <EFBFBD> պ<EFBFBD> <D5BA> <EFBFBD> ,120; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,280;<3B> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ,130;<3B> <> <EFBFBD> ŷ<EFBFBD> <C5B7> <EFBFBD> ,100;<3B> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,120;"));
m_wndList . InsertItem ( 0 , _itot ( iItem + 1 , szSelect , 10 ) , bRead ) ; //<2F> Ѷ<EFBFBD> <D1B6> <EFBFBD> δ<EFBFBD> <CEB4> ͼ<EFBFBD> 겻һ <EAB2BB> <D2BB>
m_wndList . SetItemData ( 0 , lRecvID ) ;
# ifdef MOBSET_OEM_SNLD
//m_wndList.SetHeadings(_T("<22> <> <EFBFBD> <EFBFBD> ,50; <20> <> <EFBFBD> ͺ <EFBFBD> <CDBA> <EFBFBD> ,120;<3B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,80;<3B> <> <EFBFBD> պ<EFBFBD> <D5BA> <EFBFBD> ,120; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,200;<3B> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ,130;<3B> dz<EFBFBD> ,80;<3B> Ա<EFBFBD> ,50; <20> <> ˾,80;ְ<> <D6B0> ,80;<3B> 绰,80;<3B> <> <EFBFBD> <EFBFBD> ,80;Email,80;QQ,80;<3B> <> ע,80;"));
m_wndList . SetItemText ( 0 , 1 , szSendNum ) ;
m_wndList . SetItemText ( 0 , 2 , szSender ) ;
m_wndList . SetItemText ( 0 , 3 , szRecvNum ) ;
m_wndList . SetItemText ( 0 , 4 , szMsg ) ;
if ( tRecv . GetStatus ( ) = = COleDateTime : : valid )
{
_stprintf ( szMsg , _T ( " %04d.%02d.%02d %02d:%02d " ) , tRecv . GetYear ( ) , tRecv . GetMonth ( ) , tRecv . GetDay ( ) , tRecv . GetHour ( ) , tRecv . GetMinute ( ) ) ;
m_wndList . SetItemText ( 0 , 5 , szMsg ) ;
}
m_wndList . SetItemText ( 0 , 6 , NickName ) ;
m_wndList . SetItemText ( 0 , 7 , Sex ) ;
if ( Birthday . GetStatus ( ) = = COleDateTime : : valid )
{
_stprintf ( szMsg , _T ( " %04d.%02d.%02d " ) , Birthday . GetYear ( ) , Birthday . GetMonth ( ) , Birthday . GetDay ( ) ) ;
m_wndList . SetItemText ( 0 , 8 , szMsg ) ;
}
m_wndList . SetItemText ( 0 , 9 , Ltd ) ;
m_wndList . SetItemText ( 0 , 10 , Job ) ;
m_wndList . SetItemText ( 0 , 11 , Tel ) ;
m_wndList . SetItemText ( 0 , 12 , Fax ) ;
m_wndList . SetItemText ( 0 , 13 , Email ) ;
m_wndList . SetItemText ( 0 , 14 , QQ ) ;
m_wndList . SetItemText ( 0 , 15 , BZ ) ;
# else
m_wndList . SetItemText ( 0 , 1 , szSendNum ) ;
m_wndList . SetItemText ( 0 , 2 , szSender ) ;
m_wndList . SetItemText ( 0 , 3 , szRecvNum ) ;
m_wndList . SetItemText ( 0 , 4 , szMsg ) ;
if ( tRecv . GetStatus ( ) = = COleDateTime : : valid )
{
_stprintf ( szMsg , _T ( " %04d.%02d.%02d %02d:%02d " ) , tRecv . GetYear ( ) , tRecv . GetMonth ( ) , tRecv . GetDay ( ) , tRecv . GetHour ( ) , tRecv . GetMinute ( ) ) ;
m_wndList . SetItemText ( 0 , 5 , szMsg ) ;
}
if ( _tcslen ( szCity ) > 0 )
{
_tcscat ( szProvince , _T ( " - " ) ) ;
_tcscat ( szProvince , szCity ) ;
}
# ifdef YQ_VER
m_AdoRS . GetCollect ( _T ( " Type1 " ) , szType1 ) ;
m_AdoRS . GetCollect ( _T ( " Type2 " ) , szType2 ) ;
if ( _tcslen ( szType2 ) > 0 )
{
_tcscat ( szType1 , _T ( " - " ) ) ;
_tcscat ( szType1 , szType2 ) ;
}
m_wndList . SetItemText ( 0 , 6 , szType1 ) ;
m_wndList . SetItemText ( 0 , 7 , szProvince ) ;
# else
m_wndList . SetItemText ( 0 , 6 , szProvince ) ;
# endif
# ifdef MOBSET_OEM_BYSZY
m_wndList . SetItemText ( 0 , 7 , Local ) ;
# endif
# endif
iItem + + ;
m_AdoRS . MoveNext ( ) ;
}
}
m_wndList . ShowWindow ( SW_SHOW ) ; //Ϊ<> ˼ӿ<CBBC> <D3BF> <EFBFBD> ʾ <EFBFBD> ٶ<EFBFBD>
RecvSms ( ) ; //ȡ<> µĶ<C2B5> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
FlashIcon ( true , false ) ; //<2F> <> <EFBFBD> <EFBFBD> ͼ<EFBFBD> <CDBC>
return true ;
}
void CFFaxJS : : OnSize ( UINT nType , int cx , int cy )
{
CDialog : : OnSize ( nType , cx , cy ) ;
if ( m_bInit )
{
m_wndList . MoveWindow ( 0 , 0 , cx , cy ) ;
}
}
long CFFaxJS : : GetCurrentSelected ( )
{
POSITION pos = m_wndList . GetFirstSelectedItemPosition ( ) ;
if ( pos )
{
return m_wndList . GetNextSelectedItem ( pos ) ;
}
return - 1 ;
}
void CFFaxJS : : OnKeydownSmsjsList ( NMHDR * pNMHDR , LRESULT * pResult )
{
LV_KEYDOWN * pLVKeyDow = ( LV_KEYDOWN * ) pNMHDR ;
* pResult = 0 ;
if ( pLVKeyDow - > wVKey = = VK_DELETE )
{
On_User_Del ( ) ;
}
if ( pLVKeyDow - > wVKey = = VK_SPACE )
{
On_User_See ( ) ;
}
if ( pLVKeyDow - > wVKey = = ' S ' | | pLVKeyDow - > wVKey = = ' s ' )
{
On_User_Send ( ) ;
}
if ( pLVKeyDow - > wVKey = = ' Z ' | | pLVKeyDow - > wVKey = = ' z ' )
{
On_User_ZF ( ) ;
}
if ( pLVKeyDow - > wVKey = = ' R ' | | pLVKeyDow - > wVKey = = ' r ' )
{
On_User_Refresh ( ) ;
}
if ( pLVKeyDow - > wVKey = = ' F ' | | pLVKeyDow - > wVKey = = ' f ' )
{
On_User_Find ( ) ;
}
if ( pLVKeyDow - > wVKey = = ' A ' | | pLVKeyDow - > wVKey = = ' a ' )
{
m_wndList . SelectAllItems ( ) ;
}
}
void CFFaxJS : : RecvSms ( )
{
//û<> <C3BB> Ȩ<EFBFBD> <C8A8>
if ( ! m_pMainFrame - > GetUserPurview ( PURVIEW_RECVG , false ) & &
! m_pMainFrame - > GetUserPurview ( PURVIEW_RECVP , false ) )
return ;
REQ_Recv2 * pRecv = new REQ_Recv2 ;
pRecv - > lCorpID = m_pMainFrame - > m_lCorpID ;
pRecv - > lUserID = m_pMainFrame - > m_lUserID ;
m_pMainFrame - > SendFrame ( SMSFUNC_RECV2 , ( BYTE * ) pRecv , sizeof ( REQ_Recv2 ) ) ;
}
BOOL CFFaxJS : : ProcessSocket ( Socket_Head * pHead )
{
//<2F> յ<EFBFBD> <D5B5> <EFBFBD> <EFBFBD> <EFBFBD>
if ( pHead - > lFuncType = = SMSFUNC_RECV )
{
ANS_Recv * pRecv = ( ANS_Recv * ) pHead - > pFrame ;
ANS_RecvData * pData = ( ANS_RecvData * ) ( pHead - > pFrame + sizeof ( ANS_Recv ) ) ;
m_wndList . ShowWindow ( SW_HIDE ) ; //Ϊ<> ˼ӿ<CBBC> <D3BF> <EFBFBD> ʾ <EFBFBD> ٶ<EFBFBD>
//<2F> <> <EFBFBD> ӵ<EFBFBD> <D3B5> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD>
for ( int i = 0 ; i < pRecv - > lCount ; i + + )
{
ANS_RecvData2 sms = { 0 } ;
sms . lLogID = pData - > lLogID ;
_tcscpy ( sms . szRecvNum , pData - > szRecvNum ) ;
_tcscpy ( sms . szSendNum , pData - > szSendNum ) ;
_tcscpy ( sms . szMsg , pData - > szMsg ) ;
sms . tRecv = pData - > tRecv ;
RecvNewSms ( sms , i < 3 ? true : false ) ;
pData + + ; //<2F> <> ʾ <EFBFBD> <CABE> һ <EFBFBD> <D2BB>
}
m_wndList . ShowWindow ( SW_SHOW ) ; //Ϊ<> ˼ӿ<CBBC> <D3BF> <EFBFBD> ʾ <EFBFBD> ٶ<EFBFBD>
if ( m_bRecvFirst & & pRecv - > lCount < = 0 ) //û<> յ<EFBFBD> <D5B5> µĶ<C2B5> <C4B6> <EFBFBD>
{
m_bRecvFirst = false ;
CString str ;
str = _T ( " select count(*) as abc from smsrecv where Reader=0 or Reader is NULL " ) ;
if ( m_AdoRS . Open ( str ) & & m_AdoRS . GetRecordCount ( ) > 0 )
{
long lRead = 0 ;
m_AdoRS . MoveFirst ( ) ;
m_AdoRS . GetCollect ( _T ( " abc " ) , lRead ) ;
m_AdoRS . Close ( ) ;
if ( lRead > 0 )
{
SMS_Recv2 sms2 = { 0 } ;
//_stprintf( sms2.szMsg , _T("<22> <> <EFBFBD> <EFBFBD> %d<> <64> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !"),lRead );
//_tcscpy( sms2.szSender , _T("<22> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ") );
_stprintf ( sms2 . szTime , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %d<> <64> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , lRead ) ;
DLG_RecvSms * dlg = new DLG_RecvSms ;
dlg - > Create ( IDD_RECVSMS , this ) ;
//dlg->SetPara( &sms2,_T("<22> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ") );
dlg - > SetPara ( & sms2 , _T ( " δ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " ) ) ;
dlg - > ShowWindow ( SW_SHOW ) ;
this - > SetFocus ( ) ;
}
}
}
return true ;
}
//<2F> յ<EFBFBD> <D5B5> <EFBFBD> <EFBFBD> <EFBFBD>
if ( pHead - > lFuncType = = SMSFUNC_RECV2 )
{
ANS_Recv2 * pRecv = ( ANS_Recv2 * ) pHead - > pFrame ;
ANS_RecvData2 * pData = ( ANS_RecvData2 * ) ( pHead - > pFrame + sizeof ( ANS_Recv2 ) ) ;
m_wndList . ShowWindow ( SW_HIDE ) ; //Ϊ<> ˼ӿ<CBBC> <D3BF> <EFBFBD> ʾ <EFBFBD> ٶ<EFBFBD>
//<2F> <> <EFBFBD> ӵ<EFBFBD> <D3B5> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD>
for ( int i = 0 ; i < pRecv - > lCount ; i + + )
{
RecvNewSms ( * pData , i < 3 ? true : false ) ;
pData + + ; //<2F> <> ʾ <EFBFBD> <CABE> һ <EFBFBD> <D2BB>
}
m_wndList . ShowWindow ( SW_SHOW ) ; //Ϊ<> ˼ӿ<CBBC> <D3BF> <EFBFBD> ʾ <EFBFBD> ٶ<EFBFBD>
if ( m_bRecvFirst & & pRecv - > lCount < = 0 ) //û<> յ<EFBFBD> <D5B5> µĶ<C2B5> <C4B6> <EFBFBD>
{
m_bRecvFirst = false ;
CString str ;
str = _T ( " select count(*) as abc from smsrecv where Reader=0 or Reader is NULL " ) ;
if ( m_AdoRS . Open ( str ) & & m_AdoRS . GetRecordCount ( ) > 0 )
{
long lRead = 0 ;
m_AdoRS . MoveFirst ( ) ;
m_AdoRS . GetCollect ( _T ( " abc " ) , lRead ) ;
m_AdoRS . Close ( ) ;
if ( lRead > 0 )
{
SMS_Recv2 sms2 = { 0 } ;
//_stprintf( sms2.szMsg , _T("<22> <> <EFBFBD> <EFBFBD> %d<> <64> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !"),lRead );
//_tcscpy( sms2.szSender , _T("<22> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ") );
_stprintf ( sms2 . szTime , _T ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %d<> <64> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> !" ) , lRead ) ;
DLG_RecvSms * dlg = new DLG_RecvSms ;
dlg - > Create ( IDD_RECVSMS , this ) ;
dlg - > SetPara ( & sms2 , _T ( " δ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " ) ) ;
//dlg->SetPara( &sms2,"<22> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " );
dlg - > ShowWindow ( SW_SHOW ) ;
this - > SetFocus ( ) ;
}
}
}
return true ;
}
return false ;
}
void CFFaxJS : : On_User_See ( )
{
long lItem = GetCurrentSelected ( ) ;
if ( lItem < 0 )
return ;
SMS_See sms = GetSms ( lItem ) ;
CString strSendNum = sms . szSender ;
if ( _tcslen ( sms . szSender2 ) )
{
_tcscat ( sms . szSender , _T ( " - " ) ) ;
_tcscat ( sms . szSender , sms . szSender2 ) ;
}
ReadSms ( lItem ) ; //״̬<D7B4> <CCAC> Ϊ<EFBFBD> Ѷ<EFBFBD>
DLG_SmsLogSee dlg ( this ) ;
sms . lType = SMS_SEE_TYPE_RECV ;
dlg . SetParam ( sms ) ;
dlg . SetReadSms ( true ) ;
if ( dlg . DoModal ( ) = = 300 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD>
{
if ( m_pMainFrame - > m_pFuncView - > On_User_List_Add ( ) ) //<2F> ½<EFBFBD> <C2BD> б <EFBFBD>
{
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
m_pMainFrame - > m_pFuncView - > m_DLGSend . List_SetMsg ( _T ( " " ) ) ; //<2F> <> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA>
//<2F> <> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD>
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
long lCount = 1 ;
long lSize = sizeof ( Send_User ) * lCount ;
BYTE * pS = new BYTE [ lSize ] ;
memset ( pS , 0 , lSize ) ;
Send_User * pUser = ( Send_User * ) pS ;
_tcscpy ( pUser - > szName , sms . szSender2 ) ;
_tcscpy ( pUser - > szMobile , strSendNum ) ;
m_pMainFrame - > m_pFuncView - > On_User_List_AddUser ( lCount , ( Send_User * ) pS ) ;
delete pS ;
}
}
}
void CFFaxJS : : On_User_Send ( )
{
long lItem = GetCurrentSelected ( ) ;
if ( lItem < 0 )
return ;
ReadSms ( lItem ) ; //״̬<D7B4> <CCAC> Ϊ<EFBFBD> Ѷ<EFBFBD>
if ( m_pMainFrame - > m_pFuncView - > On_User_List_Add ( ) ) //<2F> ½<EFBFBD> <C2BD> б <EFBFBD>
{
//<2F> <> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD>
long lCount = m_wndList . GetSelectedCount ( ) ;
if ( lCount < = 0 )
return ;
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
long lSize = sizeof ( Send_User ) * lCount ;
BYTE * pS = new BYTE [ lSize ] ;
memset ( pS , 0 , lSize ) ;
Send_User * pUser = ( Send_User * ) pS ;
TCHAR szSelect [ 128 ] = { 0 } ;
POSITION pos = m_wndList . GetFirstSelectedItemPosition ( ) ;
while ( pos )
{
long lItem = m_wndList . GetNextSelectedItem ( pos ) ;
long lRecvID = m_wndList . GetItemData ( lItem ) ;
if ( lRecvID > 0 )
{
_stprintf ( szSelect , _T ( " select * from smsrecv where RecvID=%d " ) , lRecvID ) ;
BOOL b = m_AdoRS . Open ( szSelect ) ;
if ( b & & m_AdoRS . GetRecordCount ( ) )
{
m_AdoRS . MoveFirst ( ) ;
m_AdoRS . GetCollect ( _T ( " Sender " ) , pUser - > szName ) ;
m_AdoRS . GetCollect ( _T ( " SendNum " ) , pUser - > szMobile ) ;
}
}
pUser + + ;
}
m_pMainFrame - > m_pFuncView - > On_User_List_AddUser ( lCount , ( Send_User * ) pS ) ;
delete pS ;
}
}
void CFFaxJS : : On_User_ZF ( )
{
long lItem = GetCurrentSelected ( ) ;
if ( lItem < 0 )
return ;
ReadSms ( lItem ) ; //״̬<D7B4> <CCAC> Ϊ<EFBFBD> Ѷ<EFBFBD>
SMS_See sms = GetSms ( lItem ) ;
if ( m_pMainFrame - > m_pFuncView - > On_User_List_Add ( ) ) //<2F> ½<EFBFBD> <C2BD> б <EFBFBD>
{
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
m_pMainFrame - > m_pFuncView - > m_DLGSend . List_SetMsg ( sms . szMsg ) ; //<2F> <> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA>
}
}
void CFFaxJS : : On_User_Del ( )
{
long lCount = m_wndList . GetSelectedCount ( ) ;
long * lDel = new long [ lCount + 2 ] ;
POSITION pos = m_wndList . GetFirstSelectedItemPosition ( ) ;
long i = 0 ;
while ( pos )
{
lDel [ i ] = m_wndList . GetNextSelectedItem ( pos ) ;
i + + ;
}
long lRecvID = 0 ;
TCHAR szSelect [ 128 ] ;
//<2F> <> תɾ<D7AA> <C9BE>
m_wndList . ShowWindow ( SW_HIDE ) ; //<2F> ӿ<EFBFBD> <D3BF> <EFBFBD> ʾ <EFBFBD> <CABE> <EFBFBD> ٶ<EFBFBD>
for ( i = lCount ; i > 0 ; i - - )
{
lRecvID = m_wndList . GetItemData ( lDel [ i - 1 ] ) ;
_stprintf ( szSelect , _T ( " delete from smsrecv where RecvID=%d " ) , lRecvID ) ;
BOOL b = m_AdoRS . Open ( szSelect ) ;
if ( b & & m_AdoRS . GetRecordCount ( ) )
{
m_wndList . DeleteItem ( lDel [ i - 1 ] ) ; //<2F> <> <EFBFBD> б <EFBFBD> <D0B1> <EFBFBD> ɾ<EFBFBD> <C9BE>
}
}
m_wndList . ShowWindow ( SW_SHOW ) ; //<2F> ӿ<EFBFBD> <D3BF> <EFBFBD> ʾ <EFBFBD> <CABE> <EFBFBD> ٶ<EFBFBD>
delete lDel ;
}
void CFFaxJS : : On_User_Export ( )
{
/*
DLG_FAXJS_Export dlg ( this ) ;
dlg . SetParam ( & m_AdoRS2 , & m_wndList ) ;
dlg . DoModal ( ) ;
*/
}
void CFFaxJS : : On_User_Refresh ( )
{
RefreshInfo ( ) ;
}
void CFFaxJS : : On_User_Find ( )
{
CString strTemp ;
DLG_Find_RecvSms dlg ( this ) ;
dlg . SetParam ( ! m_bShowToday ) ;
if ( dlg . DoModal ( ) = = IDOK )
{
m_strFindAdd = _T ( " " ) ;
if ( ! m_bShowToday )
{
strTemp . Format ( _T ( " AND RecvTime>=#%04d-%02d-%02d# AND RecvTime<=#%04d-%02d-%02d 23:59:59# " ) , dlg . m_TBegin . GetYear ( ) , dlg . m_TBegin . GetMonth ( ) , dlg . m_TBegin . GetDay ( ) , dlg . m_TEnd . GetYear ( ) , dlg . m_TEnd . GetMonth ( ) , dlg . m_TEnd . GetDay ( ) ) ;
m_strFindAdd = strTemp ;
}
if ( dlg . m_strSendNum . GetLength ( ) > 0 )
{
strTemp . Format ( _T ( " AND SendNum like '%%%s%%' " ) , dlg . m_strSendNum ) ;
m_strFindAdd + = strTemp ;
}
if ( dlg . m_strRecvNum . GetLength ( ) > 0 )
{
strTemp . Format ( _T ( " AND RecvNum like '%%%s%%' " ) , dlg . m_strRecvNum ) ;
m_strFindAdd + = strTemp ;
}
if ( dlg . m_strMsg . GetLength ( ) > 0 )
{
strTemp . Format ( _T ( " AND Msg like '%%%s%%' " ) , dlg . m_strMsg ) ;
m_strFindAdd + = strTemp ;
}
On_User_Refresh ( ) ;
m_strFindAdd = _T ( " " ) ; //ˢ<> º<C2BA> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD>
}
}
void CFFaxJS : : On_User_TypeSetup ( )
{
DLG_TypeSetup dlg ( this ) ;
dlg . SetParam ( & m_AdoRS2 ) ;
dlg . DoModal ( ) ;
}
void CFFaxJS : : OnRclickSmsjsList ( NMHDR * pNMHDR , LRESULT * pResult )
{
* pResult = 0 ;
ShowRMenu ( ) ;
}
void CFFaxJS : : OnDblclkSmsjsList ( NMHDR * pNMHDR , LRESULT * pResult )
{
* pResult = 0 ;
On_User_See ( ) ;
}
void CFFaxJS : : ShowRMenu ( )
{
CMenu menu ;
menu . CreatePopupMenu ( ) ;
BOOL bLock = false ;
long lItem = this - > GetCurrentSelected ( ) ;
# ifdef YQ_VER
CMenu MenuType ;
MenuType . CreatePopupMenu ( ) ;
if ( lItem > = 0 )
{
//<2F> <> <EFBFBD> ɴ<EFBFBD> <C9B4> <EFBFBD> <EFBFBD> ռ <EFBFBD>
long lCount = 0 ;
if ( m_AdoRS2 . Open ( _T ( " RecvType " ) , adCmdTable ) )
{
lCount = m_AdoRS2 . GetRecordCount ( ) ;
m_AdoRS2 . Close ( ) ;
}
if ( m_pMenuType )
delete m_pMenuType ;
m_pMenuType = new Menu_Type [ lCount ] ;
memset ( m_pMenuType , 0 , sizeof ( Menu_Type ) * lCount ) ;
m_lMenuTypeCount = 0 ;
CMenu * pMenu = NULL ;
//<2F> <> <EFBFBD> <EFBFBD> Menu<6E> <75> <EFBFBD> <EFBFBD>
if ( m_AdoRS2 . Open ( _T ( " select * from RecvType where Type=1 " ) ) & & m_AdoRS2 . GetRecordCount ( ) > 0 )
{
long lMenuCount = m_AdoRS2 . GetRecordCount ( ) ;
pMenu = new CMenu [ lMenuCount ] ;
lMenuCount = 0 ;
m_AdoRS2 . MoveFirst ( ) ;
while ( ! m_AdoRS2 . IsEOF ( ) )
{
long lID ;
CString strName ;
m_AdoRS2 . GetCollect ( _T ( " ID " ) , lID ) ;
m_AdoRS2 . GetCollect ( _T ( " Name " ) , strName ) ;
//<2F> ȼ<EFBFBD> <C8BC> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
CString str ;
str . Format ( _T ( " select * from RecvType Where Type=2 and ID2=%d " ) , lID ) ;
if ( m_AdoRS . Open ( str ) & & m_AdoRS . GetRecordCount ( ) > 0 )
{
pMenu [ lMenuCount ] . CreatePopupMenu ( ) ;
MenuType . AppendMenu ( MF_STRING | MF_POPUP , ( UINT ) pMenu [ lMenuCount ] . GetSafeHmenu ( ) , strName ) ;
m_AdoRS . MoveFirst ( ) ;
while ( ! m_AdoRS . IsEOF ( ) )
{
CString strName2 ;
m_AdoRS . GetCollect ( _T ( " Name " ) , strName2 ) ;
pMenu [ lMenuCount ] . AppendMenu ( MF_STRING , MENU_FAXJS_TYPESETUP + m_lMenuTypeCount + 1 , strName2 ) ;
_tcscpy ( m_pMenuType [ m_lMenuTypeCount ] . szType1 , strName ) ;
_tcscpy ( m_pMenuType [ m_lMenuTypeCount ] . szType2 , strName2 ) ;
m_lMenuTypeCount + + ;
m_AdoRS . MoveNext ( ) ;
}
m_AdoRS . Close ( ) ;
lMenuCount + + ;
}
else
{
MenuType . AppendMenu ( MF_STRING , MENU_FAXJS_TYPESETUP + m_lMenuTypeCount + 1 , strName ) ;
_tcscpy ( m_pMenuType [ m_lMenuTypeCount ] . szType1 , strName ) ;
m_lMenuTypeCount + + ;
}
m_AdoRS2 . MoveNext ( ) ;
}
m_AdoRS2 . Close ( ) ;
}
MenuType . AppendMenu ( MF_SEPARATOR ) ;
}
MenuType . AppendMenu ( MF_STRING , MENU_FAXJS_TYPESETUP , _T ( " <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " ) ) ;
# endif
if ( lItem > = 0 )
{
menu . AppendMenu ( MF_STRING , MENU_FAXJS_SEE , _T ( " <20> <> <20> <> " ) ) ;
menu . AppendMenu ( MF_STRING , MENU_FAXJS_SEND , _T ( " <20> <> <20> <> " ) ) ;
menu . AppendMenu ( MF_STRING , MENU_FAXJS_ZF , _T ( " ת <20> <> " ) ) ;
menu . AppendMenu ( MF_STRING , MENU_FAXJS_DEL , _T ( " ɾ <20> <> " ) ) ;
}
else
{
menu . AppendMenu ( MF_STRING | MF_DISABLED | MF_GRAYED , MENU_FAXJS_SEE , _T ( " <20> <> <20> <> " ) ) ;
menu . AppendMenu ( MF_STRING | MF_DISABLED | MF_GRAYED , MENU_FAXJS_SEND , _T ( " <20> <> <20> <> " ) ) ;
menu . AppendMenu ( MF_STRING | MF_DISABLED | MF_GRAYED , MENU_FAXJS_ZF , _T ( " ת <20> <> " ) ) ;
menu . AppendMenu ( MF_STRING | MF_DISABLED | MF_GRAYED , MENU_FAXJS_DEL , _T ( " ɾ <20> <> " ) ) ;
}
# ifdef YQ_VER
menu . AppendMenu ( MF_SEPARATOR ) ;
menu . AppendMenu ( MF_STRING | MF_POPUP , ( UINT ) MenuType . GetSafeHmenu ( ) , _T ( " <20> <> <20> <> " ) ) ;
# endif
menu . AppendMenu ( MF_SEPARATOR ) ;
//ˢ<> <CBA2>
menu . AppendMenu ( MF_STRING , MENU_FAXJS_EXPORT , _T ( " <20> <> <EFBFBD> <EFBFBD> ... " ) ) ;
//ˢ<> <CBA2>
menu . AppendMenu ( MF_STRING , MENU_FAXJS_FIND , _T ( " <20> <> <EFBFBD> <EFBFBD> ... " ) ) ;
menu . AppendMenu ( MF_SEPARATOR ) ;
//ˢ<> <CBA2>
menu . AppendMenu ( MF_STRING , MENU_FAXJS_REFRESH , _T ( " ˢ <20> <> " ) ) ;
//<2F> <> ʾ <EFBFBD> ˵<EFBFBD>
POINT pt ;
: : GetCursorPos ( & pt ) ;
//this->ClientToScreen( &pt);
menu . TrackPopupMenu ( TPM_LEFTBUTTON | TPM_RIGHTBUTTON , pt . x , pt . y , this , NULL ) ;
menu . DestroyMenu ( ) ;
}
SMS_See CFFaxJS : : GetSms ( long lItem , BOOL bID )
{
SMS_See sms = { 0 } ;
long lRecvID = 0 ;
if ( bID )
lRecvID = lItem ;
else
lRecvID = m_wndList . GetItemData ( lItem ) ;
CString strSelect ;
COleDateTime t ;
strSelect . Format ( _T ( " select * from smsrecv where RecvID=%d " ) , lRecvID ) ;
if ( m_AdoRS . Open ( strSelect ) & & m_AdoRS . GetRecordCount ( ) )
{
m_AdoRS . MoveFirst ( ) ;
m_AdoRS . GetCollect ( _T ( " Sender " ) , sms . szSender2 ) ;
m_AdoRS . GetCollect ( _T ( " SendNum " ) , sms . szSender ) ;
m_AdoRS . GetCollect ( _T ( " RecvNum " ) , sms . szRecver ) ;
m_AdoRS . GetCollect ( _T ( " Msg " ) , sms . szMsg ) ;
m_AdoRS . GetCollect ( _T ( " RecvTime " ) , t ) ; t . GetAsSystemTime ( sms . tRecv ) ;
sms . tSend = sms . tRecv ;
_tcscpy ( sms . szStatus , _T ( " <EFBFBD> <EFBFBD> <20> <> " ) ) ;
}
return sms ;
}
void CFFaxJS : : ReadSms ( long lItem )
{
long lRecvID = m_wndList . GetItemData ( lItem ) ;
if ( lRecvID > 0 )
{
CString strSelect ;
strSelect . Format ( _T ( " update smsrecv set Reader=1 where RecvID=%d " ) , lRecvID ) ;
if ( m_AdoRS . Open ( strSelect ) & & m_AdoRS . GetRecordCount ( ) )
{
m_wndList . SetIconIndex ( lItem , 1 ) ; //<2F> <> ʾ <EFBFBD> Ѷ<EFBFBD> ͼ<EFBFBD> <CDBC>
}
}
}
2025-04-11 17:19:25 +08:00
void CFFaxJS : : OnTimer ( UINT_PTR nIDEvent )
2025-02-27 16:58:16 +08:00
{
CDialog : : OnTimer ( nIDEvent ) ;
# ifdef SUPPERGSM
if ( nIDEvent = = 1 )
{
KillTimer ( 1 ) ;
if ( m_pSendThread )
{
m_pSendThread - > Com_Exit ( ) ;
SMS_Init * pSms = new SMS_Init ;
if ( m_Setup . lPort = = 0 )
pSms - > lConnectType = CONNECT_IRDA ;
else
pSms - > lConnectType = CONNECT_CABLE ;
pSms - > lIndex = 0 ;
pSms - > lMobType = m_Setup . lMobileType ;
pSms - > lPort = m_Setup . lPort ;
pSms - > lBuadrate = m_Setup . lBaudrate ;
pSms - > lTimeOut = COM_TIMOUT ;
pSms - > pWnd = ( CWnd * ) this ;
m_pSendThread - > PostThreadMessage ( TH_INIT , ( WPARAM ) pSms , 0 ) ;
m_pMainFrame - > SetStatMsg ( _T ( " <EFBFBD> <EFBFBD> <EFBFBD> ڼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> ..." ) ) ;
}
return ;
}
# endif
if ( nIDEvent = = 3 )
{
KillTimer ( nIDEvent ) ;
//<2F> <> ͼ<EFBFBD> <CDBC> <EFBFBD> <EFBFBD> <EFBFBD> 뵽<EFBFBD> <EBB5BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
CString strName = m_pMainFrame - > GetSoftSName ( ) ;
NOTIFYICONDATA niData ;
if ( m_lIconCount < = 0 )
{
niData . hIcon = AfxGetApp ( ) - > LoadIcon ( IDR_MAINFRAME ) ;
_stprintf ( niData . szTip , strName ) ;
}
else
{
m_lIconCount + + ;
if ( m_lIconCount > 888888 )
m_lIconCount = 1 ;
if ( m_lIconCount % 2 = = 0 )
niData . hIcon = AfxGetApp ( ) - > LoadIcon ( IDR_MAINFRAME ) ;
else
niData . hIcon = AfxGetApp ( ) - > LoadIcon ( IDI_NULL ) ;
strName + = _T ( " -<2D> յ<EFBFBD> <D5B5> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ " ) ;
_stprintf ( niData . szTip , strName ) ;
}
niData . cbSize = sizeof ( NOTIFYICONDATA ) ;
niData . hWnd = this - > m_pMainFrame - > m_hWnd ;
niData . uID = 125 ;
niData . uFlags = NIF_ICON | NIF_TIP ;
niData . uCallbackMessage = SHELL_ICON_MESS ;
Shell_NotifyIcon ( NIM_MODIFY , & niData ) ;
if ( m_lIconCount > 0 )
SetTimer ( 3 , 500 , NULL ) ;
return ;
}
}
# ifdef SUPPERGSM
long CFFaxJS : : On_TW_Init ( WPARAM wParam , LPARAM lParam )
{
long lIndex = ( long ) wParam ;
long lCode = ( long ) lParam ;
if ( lIndex ! = 0 ) //<2F> <> Ϣ<EFBFBD> Ŀ<EFBFBD> <C4BF> <EFBFBD> <EFBFBD> Ǵ<EFBFBD> <C7B4> <EFBFBD> <EFBFBD> <EFBFBD>
return false ;
char Buf [ 64 ] ;
switch ( lCode ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
case - 1 :
_tcscpy ( Buf , " <EFBFBD> <EFBFBD> <EFBFBD> Ӵ<EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <EFBFBD> " ) ;
break ;
case - 2 :
_tcscpy ( Buf , " <EFBFBD> <EFBFBD> ʼ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <EFBFBD> " ) ;
break ;
case - 3 :
_tcscpy ( Buf , " <EFBFBD> <EFBFBD> <EFBFBD> ⲻ<EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> " ) ;
break ;
case 0 :
_stprintf ( Buf , " <EFBFBD> <EFBFBD> <EFBFBD> ӳɹ<EFBFBD> :<3A> ֻ<EFBFBD> <D6BB> ͺ <EFBFBD> Ϊ:%s" , m_pSendThread - > m_szMobileName ) ;
break ;
default :
_tcscpy ( Buf , " δ֪<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <EFBFBD> " ) ;
break ;
}
m_pMainFrame - > SetStatMsg ( Buf ) ;
if ( lCode ! = 0 ) //û<> г ɹ<D0B3> <C9B9> ģ<EFBFBD> <EFBFBD> <D7BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
Sleep ( 500 ) ;
m_pSendThread - > Com_Exit ( ) ;
SetTimer ( 1 , 2000 , NULL ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD>
}
else
{
if ( this - > m_Setup . bAutoRead ) //<2F> <> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <D1A1> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ȡSIM<49> <4D> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
//ֱ<> <D6B1> ȡSIM<49> <4D> <EFBFBD> е Ķ<D0B5> <C4B6> <EFBFBD> Ϣ
m_bOneGetSim = false ;
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> ѯSIM<EFBFBD> <EFBFBD> <EFBFBD> ϶<EFBFBD> <EFBFBD> <EFBFBD> Ϣ..." ) ;
m_pSendThread - > PostThreadMessage ( TH_GETSIM , 0 , 0 ) ;
}
// else
// if (m_pMainFrame->m_pFuncView->isAutoClear()) //<2F> <> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <D1A1> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ɾ<EFBFBD> <C9BE>
// {
// //<2F> <> <EFBFBD> <EFBFBD> SIM<49> <4D> <EFBFBD> е Ķ<D0B5> <C4B6> <EFBFBD> Ϣ
// m_bOneGetSim = false;
// SendState_SetMsg( lIndex , "<22> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> SIM<49> <4D> <EFBFBD> ϶<EFBFBD> <CFB6> <EFBFBD> Ϣ..." );
// m_pMCom[lIndex].m_lTime = GetTickCount();
// m_pMCom[lIndex].pSendThread->PostThreadMessage( TH_CLEAR , 0 , 0 );
// }
// else //û<> <C3BB> <EFBFBD> Զ<EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> ն<EFBFBD> <D5B6> ţ<EFBFBD> <C5A3> <EFBFBD> ֱ<EFBFBD> ӷ<EFBFBD> <D3B7> Ͷ<EFBFBD> <CDB6> <EFBFBD>
// {
// SendNextSms(lIndex); //<2F> ӷ<EFBFBD> <D3B7> Ͷ<EFBFBD> <CDB6> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> ͡<EFBFBD>
// }
}
return 1 ;
}
long CFFaxJS : : On_TW_Send ( WPARAM wParam , LPARAM lParam )
{
return 1 ;
}
long CFFaxJS : : On_TW_Recv ( WPARAM wParam , LPARAM lParam )
{
long lIndex = ( long ) wParam ;
SMS_Recv * pSms = ( SMS_Recv * ) lParam ;
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> <EFBFBD> µ<EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <EFBFBD> " ) ;
if ( pSms - > lMsgType = = MSGTYPE_REPORT ) //<2F> ˶<EFBFBD> <CBB6> <EFBFBD> Ϣ<EFBFBD> <CFA2> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD>
{
return 1 ; //<2F> <> <EFBFBD> <EFBFBD> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD>
}
m_lMobileRecvCount + + ; //<2F> <> <EFBFBD> յ<EFBFBD> <D5B5> Ķ<EFBFBD> <C4B6> <EFBFBD> +1;
if ( pSms - > lMsgType = = MSGTYPE_SMS )
{
ANS_RecvData2 sms = { 0 } ;
_tcscpy ( sms . szSendNum , pSms - > szSender ) ;
_tcscpy ( sms . szRecvNum , " mobile " ) ;
_tcscpy ( sms . szMsg , pSms - > szMsg ) ;
: : GetLocalTime ( & sms . tRecv ) ;
ExMobileGZM ( sms . szSendNum ) ;
RecvNewSms ( sms , true ) ; //<2F> յ<EFBFBD> <D5B5> µ<EFBFBD> <C2B5> <EFBFBD> Ϣ;
}
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> <D5B5> IJ<EFBFBD> <C4B2> <EFBFBD> SIM<49> <4D> <EFBFBD> <EFBFBD> <EFBFBD> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ɾ<EFBFBD> <C9BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1> ɾ<EFBFBD> <C9BE> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
if ( ! pSms - > bSim & & m_Setup . bAutoDelete )
{
long lDel = pSms - > lIndex > 0 ? pSms - > lIndex : 1 ;
char Buf [ 64 ] = { 0 } ;
_stprintf ( Buf , " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɾ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %d<> <64> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ..." , lDel ) ;
m_pMainFrame - > SetStatMsg ( Buf ) ;
m_pSendThread - > PostThreadMessage ( TH_DELETE , lDel , 0 ) ;
}
return 1 ;
}
long CFFaxJS : : On_TW_GetSim ( WPARAM wParam , LPARAM lParam )
{
long lIndex = ( long ) wParam ;
long lCode = ( long ) lParam ;
char Buf [ 32 ] = { 0 } ;
switch ( lCode ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
{
case - 4 :
_tcscpy ( Buf , " <EFBFBD> ӿڻ<EFBFBD> δ<EFBFBD> <EFBFBD> ʼ <EFBFBD> <EFBFBD> " ) ;
break ;
case - 2 :
_tcscpy ( Buf , " <EFBFBD> <EFBFBD> ѯSIM<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ų<EFBFBD> ʱ" ) ;
break ;
default :
_stprintf ( Buf , " <EFBFBD> <EFBFBD> ѯSIM<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ųɹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵ<EFBFBD> %d<> <64> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> " , lCode ) ;
break ;
}
m_pMainFrame - > SetStatMsg ( Buf ) ;
if ( lCode = = - 2 ) //<2F> <> ʱ
{
Sleep ( 500 ) ;
m_pSendThread - > Com_Exit ( ) ;
SMS_Init * pSms = new SMS_Init ;
if ( m_Setup . lPort = = 0 )
pSms - > lConnectType = CONNECT_IRDA ;
else
pSms - > lConnectType = CONNECT_CABLE ;
pSms - > lIndex = 0 ;
pSms - > lMobType = m_Setup . lMobileType ;
pSms - > lPort = m_Setup . lPort ;
pSms - > lBuadrate = m_Setup . lBaudrate ;
pSms - > lTimeOut = COM_TIMOUT ;
pSms - > pWnd = ( CWnd * ) this ;
m_pSendThread - > PostThreadMessage ( TH_INIT , ( WPARAM ) pSms , 0 ) ;
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> ڼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> ..." ) ;
}
else
{
Sleep ( 500 ) ;
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> SIM<EFBFBD> <EFBFBD> ..." ) ;
m_pSendThread - > PostThreadMessage ( TH_CLEAR , 0 , 0 ) ;
}
// else
// {
// if (m_pMainFrame->m_pFuncView->isAutoClear() && !m_bOneGetSim) //<2F> <> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <D1A1> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ɾ<EFBFBD> <C9BE>
// {
// //<2F> <> <EFBFBD> <EFBFBD> SIM<49> <4D> <EFBFBD> е Ķ<D0B5> <C4B6> <EFBFBD> Ϣ
// m_bOneGetSim = false;
// SendState_SetMsg( lIndex , "<22> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> SIM<49> <4D> <EFBFBD> ϶<EFBFBD> <CFB6> <EFBFBD> Ϣ..." );
// m_pMCom[lIndex].m_lTime = GetTickCount();
// m_pMCom[lIndex].pSendThread->PostThreadMessage( TH_CLEAR , 0 , 0 );
// }
// else
// {
// m_pMCom[lIndex].m_lTime = GetTickCount() + 3600*8*1000; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻΪ<D6BB> ˽<EFBFBD> <CBBD> գ <EFBFBD> <D5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 8С ʱ<D0A1> ڲ<EFBFBD> <DAB2> ᳬʱ<E1B3AC> <CAB1> <EFBFBD> <EFBFBD>
// SendNextSms(lIndex); //<2F> ӷ<EFBFBD> <D3B7> Ͷ<EFBFBD> <CDB6> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> ͡<EFBFBD>
// }
// }
return 1 ;
}
long CFFaxJS : : On_TW_Clear ( WPARAM wParam , LPARAM lParam )
{
long lIndex = ( long ) wParam ;
long lCode = ( long ) lParam ;
if ( lCode = = - 2 ) //<2F> <> ʱ
{
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> ն<EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <EFBFBD> !" ) ;
Sleep ( 500 ) ;
m_pSendThread - > Com_Exit ( ) ;
SMS_Init * pSms = new SMS_Init ;
if ( m_Setup . lPort = = 0 )
pSms - > lConnectType = CONNECT_IRDA ;
else
pSms - > lConnectType = CONNECT_CABLE ;
pSms - > lIndex = 0 ;
pSms - > lMobType = m_Setup . lMobileType ;
pSms - > lPort = m_Setup . lPort ;
pSms - > lBuadrate = m_Setup . lBaudrate ;
pSms - > lTimeOut = COM_TIMOUT ;
pSms - > pWnd = ( CWnd * ) this ;
m_pSendThread - > PostThreadMessage ( TH_INIT , ( WPARAM ) pSms , 0 ) ;
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> ڼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> ..." ) ;
}
else
{
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> ն<EFBFBD> <EFBFBD> ųɹ<EFBFBD> !" ) ;
SetTimer ( 1 , 60000 * 30 , NULL ) ; //ÿ30<33> <30> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> ն<EFBFBD> <D5B6> <EFBFBD>
}
return 1 ;
}
long CFFaxJS : : On_TW_Delete ( WPARAM wParam , LPARAM lParam )
{
long lIndex = ( long ) wParam ;
long lCode = ( long ) lParam ;
if ( lCode = = - 2 ) //<2F> <> ʱ
{
m_pMainFrame - > SetStatMsg ( " ɾ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <EFBFBD> ! " ) ;
Sleep ( 500 ) ;
m_pSendThread - > Com_Exit ( ) ;
SMS_Init * pSms = new SMS_Init ;
if ( m_Setup . lPort = = 0 )
pSms - > lConnectType = CONNECT_IRDA ;
else
pSms - > lConnectType = CONNECT_CABLE ;
pSms - > lIndex = 0 ;
pSms - > lMobType = m_Setup . lMobileType ;
pSms - > lPort = m_Setup . lPort ;
pSms - > lBuadrate = m_Setup . lBaudrate ;
pSms - > lTimeOut = COM_TIMOUT ;
pSms - > pWnd = ( CWnd * ) this ;
m_pSendThread - > PostThreadMessage ( TH_INIT , ( WPARAM ) pSms , 0 ) ;
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> ڼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> ..." ) ;
}
else
{
m_pMainFrame - > SetStatMsg ( " ɾ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ųɹ<EFBFBD> ! " ) ;
Sleep ( 500 ) ;
if ( m_Setup . lAutoClearCount > 0 & & m_lMobileRecvCount > 0 & & m_lMobileRecvCount % m_Setup . lAutoClearCount = = 0 ) //ÿ<> <C3BF> <EFBFBD> յ<EFBFBD> 10<31> <30> <EFBFBD> <EFBFBD> <EFBFBD> ţ<EFBFBD> <C5A3> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> SIM<49> <4D>
{
m_pMainFrame - > SetStatMsg ( " <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> SIM<EFBFBD> <EFBFBD> ..." ) ;
m_pSendThread - > PostThreadMessage ( TH_CLEAR , 0 , 0 ) ;
}
}
return 1 ;
}
# endif
void CFFaxJS : : OnDestroy ( )
{
# ifdef SUPPERGSM
if ( m_pSendThread )
{
m_pSendThread - > Com_Exit ( ) ;
m_pSendThread - > PostThreadMessage ( WM_QUIT , 0 , 0 ) ;
m_pSendThread = NULL ;
}
# endif
if ( m_pMenuType )
delete m_pMenuType ;
CDialog : : OnDestroy ( ) ;
}
void CFFaxJS : : RecvNewSms ( ANS_RecvData2 sms , BOOL bShowTip )
{
}
void CFFaxJS : : ConnectMobile ( )
{
# ifdef SUPPERGSM
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
m_Setup = m_pMainFrame - > m_Setup ;
m_pSendThread = new CSendThread ;
m_pSendThread - > CreateThread ( ) ;
SMS_Init * pSms = new SMS_Init ;
if ( m_Setup . lPort = = 0 )
pSms - > lConnectType = CONNECT_IRDA ;
else
pSms - > lConnectType = CONNECT_CABLE ;
pSms - > lIndex = 0 ;
pSms - > lMobType = m_Setup . lMobileType ;
pSms - > lPort = m_Setup . lPort ;
pSms - > lBuadrate = m_Setup . lBaudrate ;
pSms - > lTimeOut = COM_TIMOUT ;
pSms - > pWnd = ( CWnd * ) this ;
m_pSendThread - > PostThreadMessage ( TH_INIT , ( WPARAM ) pSms , 0 ) ;
m_pMainFrame - > SetStatMsg ( _T ( " <EFBFBD> <EFBFBD> <EFBFBD> ڼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> ..." ) ) ;
# endif
}
void CFFaxJS : : OnOK ( )
{
//CDialog::OnOK();
}
void CFFaxJS : : OnCancel ( )
{
//CDialog::OnCancel();
}
void CFFaxJS : : On_User_Type ( long lIndex )
{
# ifndef YQ_VER
return ;
# endif
long lItem = this - > GetCurrentSelected ( ) ;
if ( lItem < 0 )
return ;
long lID = m_wndList . GetItemData ( lItem ) ;
CString strSelect ;
strSelect . Format ( _T ( " select * from smsrecv where RecvID=%d " ) , lID ) ;
if ( m_AdoRS . Open ( strSelect ) & & m_AdoRS . GetRecordCount ( ) )
{
m_AdoRS . MoveFirst ( ) ;
m_AdoRS . PutCollect ( _T ( " Type1 " ) , m_pMenuType [ lIndex ] . szType1 ) ;
m_AdoRS . PutCollect ( _T ( " Type2 " ) , m_pMenuType [ lIndex ] . szType2 ) ;
m_AdoRS . Update ( ) ;
m_AdoRS . Close ( ) ;
CString str = m_pMenuType [ lIndex ] . szType1 ;
if ( _tcslen ( m_pMenuType [ lIndex ] . szType2 ) > 0 )
{
str + = _T ( " - " ) ;
str + = m_pMenuType [ lIndex ] . szType2 ;
}
m_wndList . SetItemText ( lItem , 6 , str ) ;
}
}
BOOL CFFaxJS : : OnCmdMsg ( UINT nID , int nCode , void * pExtra , AFX_CMDHANDLERINFO * pHandlerInfo )
{
2025-04-14 17:24:47 +08:00
if ( nID > = ( UINT ) ( MENU_FAXJS_TYPESETUP + 1 ) & & nID < = ( UINT ) ( MENU_FAXJS_TYPESETUP + 1 + m_lMenuTypeCount ) )
2025-02-27 16:58:16 +08:00
{
2025-04-14 17:24:47 +08:00
long lCount = ( long ) ( nID - ( MENU_FAXJS_TYPESETUP + 1 ) ) ;
2025-02-27 16:58:16 +08:00
On_User_Type ( lCount ) ;
}
return CDialog : : OnCmdMsg ( nID , nCode , pExtra , pHandlerInfo ) ;
}
void CFFaxJS : : SetToday ( BOOL bToday )
{
if ( m_bShowToday ! = bToday )
{
m_bShowToday = bToday ;
m_bRefresh = false ;
}
}
void CFFaxJS : : ReadSetup ( )
{
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
m_Setup = m_pMainFrame - > m_Setup ;
}
BOOL CFFaxJS : : FlashIcon ( BOOL bCheck , BOOL bFlash )
{
if ( bCheck )
{
CString str ;
str = _T ( " select count(*) as abc from smsRecv where Reader=0 " ) ; //<2F> <> ѯδ<D1AF> <CEB4> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD>
if ( m_AdoRS . Open ( str ) & & m_AdoRS . GetRecordCount ( ) > 0 )
{
long lCount ;
m_AdoRS . MoveFirst ( ) ;
m_AdoRS . GetCollect ( _T ( " abc " ) , lCount ) ;
if ( lCount > 0 )
bFlash = true ;
else
bFlash = false ;
}
else
{
bFlash = false ;
}
m_AdoRS . Close ( ) ;
}
if ( bFlash )
{
m_lIconCount = 1 ;
SetTimer ( 3 , 500 , NULL ) ;
}
else
{
m_lIconCount = - 1 ;
}
return bFlash ;
}
BOOL CFFaxJS : : ShowNoReaderMsg ( )
{
CString str ;
SMS_See sms = { 0 } ;
long lRecvID = 0 ;
COleDateTime t ;
str = " select top 1 * from smsRecv where Reader=0 order by RecvTime " ; //<2F> <> ѯδ<D1AF> <CEB4> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD>
if ( m_AdoRS . Open ( str ) & & m_AdoRS . GetRecordCount ( ) > 0 )
{
m_AdoRS . MoveFirst ( ) ;
TCHAR szSender [ 32 ] = { 0 } ;
TCHAR szSendNum [ 32 ] = { 0 } ;
m_AdoRS . GetCollect ( _T ( " RecvID " ) , lRecvID ) ;
m_AdoRS . GetCollect ( _T ( " SendNum " ) , szSendNum ) ;
m_AdoRS . GetCollect ( _T ( " Sender " ) , szSender ) ;
m_AdoRS . GetCollect ( _T ( " RecvNum " ) , sms . szRecver ) ;
m_AdoRS . GetCollect ( _T ( " Msg " ) , sms . szMsg ) ;
m_AdoRS . GetCollect ( _T ( " RecvTime " ) , t ) ; t . GetAsSystemTime ( sms . tRecv ) ;
m_AdoRS . Close ( ) ;
sms . tSend = sms . tRecv ;
_tcscpy ( sms . szStatus , _T ( " <EFBFBD> <EFBFBD> <20> <> " ) ) ;
if ( _tcslen ( szSender ) > 0 )
_stprintf ( sms . szSender , _T ( " %s-%s " ) , szSendNum , szSender ) ;
else
_tcscpy ( sms . szSender , szSendNum ) ;
//״̬<D7B4> <CCAC> Ϊ<EFBFBD> Ѷ<EFBFBD>
str . Format ( _T ( " update smsrecv set Reader=1 where RecvID=%d " ) , lRecvID ) ;
if ( m_AdoRS . Open ( str ) & & m_AdoRS . GetRecordCount ( ) )
{
//<2F> <> <EFBFBD> ң<EFBFBD> <D2A3> ı <EFBFBD> ͼ<EFBFBD> <CDBC>
long lCount = m_wndList . GetItemCount ( ) ;
long lRecvID2 = 0 ;
for ( int i = 0 ; i < lCount ; i + + )
{
lRecvID2 = m_wndList . GetItemData ( i ) ;
if ( lRecvID = = lRecvID2 )
{
m_wndList . SetIconIndex ( i , 1 ) ; //<2F> <> ʾ <EFBFBD> Ѷ<EFBFBD> ͼ<EFBFBD> <CDBC>
break ;
}
}
}
sms . lType = SMS_SEE_TYPE_RECV ;
DLG_SmsLogSee dlg ( this ) ;
dlg . SetParam ( sms ) ;
dlg . SetReadSms ( true ) ;
if ( dlg . DoModal ( ) = = 300 ) //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD>
{
if ( m_pMainFrame - > m_pFuncView - > On_User_List_Add ( ) ) //<2F> ½<EFBFBD> <C2BD> б <EFBFBD>
{
//<2F> <> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD>
//<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
long lCount = 1 ;
long lSize = sizeof ( Send_User ) * lCount ;
BYTE * pS = new BYTE [ lSize ] ;
memset ( pS , 0 , lSize ) ;
Send_User * pUser = ( Send_User * ) pS ;
_tcscpy ( pUser - > szName , szSender ) ;
_tcscpy ( pUser - > szMobile , szSendNum ) ;
m_pMainFrame - > m_pFuncView - > On_User_List_AddUser ( lCount , ( Send_User * ) pS ) ;
delete pS ;
}
}
//<2F> <> <EFBFBD> <EFBFBD> ͼ<EFBFBD> <CDBC>
FlashIcon ( true , false ) ;
return true ;
}
FlashIcon ( false , false ) ; //<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͼ<EFBFBD> <CDBC> <EFBFBD> ˡ<EFBFBD>
return false ;
}