1157 lines
29 KiB
C++
1157 lines
29 KiB
C++
// ListDlg.cpp : implementation file
|
||
//
|
||
|
||
#include "stdafx.h"
|
||
#include "smsmanager.h"
|
||
#include "ListDlg.h"
|
||
|
||
#ifdef _DEBUG
|
||
#define new DEBUG_NEW
|
||
#undef THIS_FILE
|
||
static char THIS_FILE[] = __FILE__;
|
||
#endif
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// CListDlg dialog
|
||
|
||
#include "MainFrm.h"
|
||
#include "ProcessSocket.h"
|
||
#include "DLG_SmsLogSee.h"
|
||
#include "DLG_HZB_Export.h"
|
||
#include "DLG_Corp_Oper_Open.h"
|
||
#include "DLG_BBS_Send.h"
|
||
|
||
CListDlg::CListDlg(CWnd* pParent /*=NULL*/)
|
||
: CDialog(CListDlg::IDD, pParent)
|
||
{
|
||
//{{AFX_DATA_INIT(CListDlg)
|
||
m_lCorp = -1;
|
||
m_tBegin = COleDateTime::GetCurrentTime();
|
||
m_tEnd = COleDateTime::GetCurrentTime();
|
||
m_lMobileType = -1;
|
||
m_bOld = FALSE;
|
||
m_lMsgType = -1;
|
||
m_bJF = FALSE;
|
||
m_lTop = -1;
|
||
m_strMobile = _T("");
|
||
//}}AFX_DATA_INIT
|
||
m_bInit = false;
|
||
m_bRefresh = false;
|
||
// m_bProcess = false;
|
||
m_lQueryCorpID = 0;
|
||
m_tBegin2 = COleDateTime::GetCurrentTime();
|
||
m_tEnd2 = COleDateTime::GetCurrentTime();
|
||
|
||
m_lQueryReSendID = 0;
|
||
}
|
||
|
||
|
||
void CListDlg::DoDataExchange(CDataExchange* pDX)
|
||
{
|
||
CDialog::DoDataExchange(pDX);
|
||
//{{AFX_DATA_MAP(CListDlg)
|
||
DDX_Control(pDX, IDC_LIST_MOBILE, m_E_Mobile);
|
||
DDX_Control(pDX, IDC_LIST_CORPID, m_E_CorpID);
|
||
DDX_Control(pDX, IDC_LIST_S1, m_S_S1);
|
||
DDX_Control(pDX, IDC_LIST_CORP, m_L_Corp);
|
||
DDX_Control(pDX, IDC_LIST_LIST, m_wndList);
|
||
DDX_CBIndex(pDX, IDC_LIST_CORP, m_lCorp);
|
||
DDX_DateTimeCtrl(pDX, IDC_LIST_TBEGIN, m_tBegin);
|
||
DDX_DateTimeCtrl(pDX, IDC_LIST_TEND, m_tEnd);
|
||
DDX_CBIndex(pDX, IDC_LIST_MOBILETYPE, m_lMobileType);
|
||
DDX_Check(pDX, IDC_LIST_OLD, m_bOld);
|
||
DDX_CBIndex(pDX, IDC_LIST_MSGYTYPE, m_lMsgType);
|
||
DDX_Check(pDX, IDC_LIST_JF, m_bJF);
|
||
DDX_CBIndex(pDX, IDC_LIST_TOP, m_lTop);
|
||
DDX_Text(pDX, IDC_LIST_MOBILE, m_strMobile);
|
||
DDV_MaxChars(pDX, m_strMobile, 15);
|
||
//}}AFX_DATA_MAP
|
||
DDX_DateTimeCtrl(pDX, IDC_LIST_TBEGIN2, m_tBegin2);
|
||
DDX_DateTimeCtrl(pDX, IDC_LIST_TEND2, m_tEnd2);
|
||
}
|
||
|
||
|
||
BEGIN_MESSAGE_MAP(CListDlg, CDialog)
|
||
//{{AFX_MSG_MAP(CListDlg)
|
||
ON_WM_SIZE()
|
||
ON_BN_CLICKED(IDC_LIST_QUERY, OnListQuery)
|
||
ON_NOTIFY(NM_DBLCLK, IDC_LIST_LIST, OnDblclkListList)
|
||
ON_BN_CLICKED(IDC_LIST_QUERY2, OnListQuery2)
|
||
ON_NOTIFY(NM_RCLICK, IDC_LIST_LIST, OnRclickListList)
|
||
//}}AFX_MSG_MAP
|
||
ON_COMMAND(MENU_LIST_SEE , On_User_See )
|
||
ON_COMMAND(MENU_LIST_ADDBACK , On_User_AddBack )
|
||
ON_COMMAND(MENU_LIST_SENDBBS , On_User_SendBBS )
|
||
ON_COMMAND(MENU_LIST_CORPLIST , On_User_CorpList )
|
||
ON_COMMAND(MENU_LIST_CORPOFF , On_User_CorpOFF )
|
||
ON_COMMAND(MENU_LIST_EXPORT , On_User_Export )
|
||
ON_COMMAND(MENU_LIST_COPY , On_User_Copy )
|
||
ON_COMMAND(MENU_LIST_RESORT , On_User_Resort)
|
||
ON_COMMAND(MENU_LIST_RESEND, On_User_ReSend)
|
||
END_MESSAGE_MAP()
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// CListDlg message handlers
|
||
|
||
BOOL CListDlg::ReShow(BOOL bRefresh)
|
||
{
|
||
#ifdef SMSMANAGER_KF
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_TAB, false))
|
||
{
|
||
GetDlgItem(IDC_LIST_OLD)->ShowWindow(SW_HIDE);
|
||
m_bOld = false;
|
||
}
|
||
|
||
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_TAB, false))
|
||
{
|
||
GetDlgItem(IDC_LIST_TOP)->EnableWindow(false);
|
||
GetDlgItem(IDC_LIST_TBEGIN)->EnableWindow(false);
|
||
GetDlgItem(IDC_LIST_TEND)->EnableWindow(false);
|
||
GetDlgItem(IDC_LIST_TBEGIN2)->EnableWindow(false);
|
||
GetDlgItem(IDC_LIST_TEND2)->EnableWindow(false);
|
||
}
|
||
|
||
#endif
|
||
|
||
ShowWindow( SW_SHOW );
|
||
if ( bRefresh || !m_bRefresh )
|
||
{
|
||
RefreshInfo();
|
||
}
|
||
return true;
|
||
}
|
||
|
||
BOOL CListDlg::ReHide()
|
||
{
|
||
ShowWindow( SW_HIDE );
|
||
return true;
|
||
}
|
||
|
||
BOOL CListDlg::RefreshInfo()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return false;
|
||
}
|
||
m_pMainFrame->SendFrame(SMSFUNC_CORP_NAME,NULL,0);
|
||
return true;
|
||
}
|
||
|
||
BOOL CListDlg::ProcessSocket(Socket_Head *pHead)
|
||
{
|
||
CString strTemp;
|
||
//ȡ<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||
if (pHead->lFuncType == SMSFUNC_CORP_NAME)
|
||
{
|
||
m_bRefresh = true; //<2F>Ѿ<EFBFBD>ˢ<EFBFBD>¹<EFBFBD>
|
||
ANS_Corp_Name * pCorp = (ANS_Corp_Name *)pHead->pFrame;
|
||
ANS_Corp_NameData * pData = (ANS_Corp_NameData *)(pHead->pFrame+sizeof(ANS_Corp_Name));
|
||
m_L_Corp.ResetContent(); //ɾ<><C9BE>ԭ<EFBFBD><D4AD><EFBFBD>е<EFBFBD><D0B5><EFBFBD>ҵ
|
||
m_L_Corp.AddString( _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ") );
|
||
this->Close_Corp(); //<2F>ر<EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD>
|
||
for ( int i=0;i<pCorp->lCount;i++ )
|
||
{
|
||
ANS_Corp_NameData * pNewData = new ANS_Corp_NameData;
|
||
*pNewData = *pData;
|
||
POSITION pos = m_Corp.AddTail(pNewData);
|
||
strTemp.Format( _T("%d-%s"),pData->lCorpID,pData->szCorpName);
|
||
long lItem = m_L_Corp.AddString( strTemp );
|
||
m_L_Corp.SetItemData( lItem , (DWORD)pos);
|
||
pData ++;
|
||
}
|
||
m_L_Corp.SetCurSel(0);
|
||
return true;
|
||
}
|
||
//ȡ<>嵥
|
||
if (pHead->lFuncType == SMSFUNC_LIST)
|
||
{
|
||
#ifdef SMSCENTER_NX
|
||
GetDlgItem(IDC_LIST_QUERY)->EnableWindow(true);
|
||
#endif
|
||
|
||
ANS_List * pList = (ANS_List *)pHead->pFrame;
|
||
ANS_ListData * pData = (ANS_ListData *)(pHead->pFrame+sizeof(ANS_List));
|
||
CString str,strTemp;
|
||
strTemp.Format( _T("<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD>ҵ (%d/%d)") , pList->lPageCount,pList->lPageAll );
|
||
m_S_S1.SetWindowText( strTemp );
|
||
//<2F><><EFBFBD>ӵ<EFBFBD>List
|
||
long lCount = m_wndList.GetItemCount();
|
||
long lIconIndex = 0;
|
||
TCHAR szBuf[512]={0};
|
||
for ( int i = 0 ; i< pList->lCount;i++)
|
||
{
|
||
ANS_ListData * pNewData = new ANS_ListData;
|
||
*pNewData = *pData;
|
||
POSITION pos = m_ListData.AddTail(pNewData);
|
||
|
||
//m_wndList.SetHeadings(_T("<22><><EFBFBD><EFBFBD>,40; <20><> <20><>,80;״̬,50;<3B><>ҵID,60;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,70; <20><><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD>,120; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,70; <20><><EFBFBD>պ<EFBFBD><D5BA><EFBFBD>,120; <20>ύʱ<E1BDBB><CAB1>,150; <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,150; <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,150; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1000; <20><>ϢID,120;"));
|
||
lIconIndex = 0;
|
||
if (pData->lReSendCount > 0)
|
||
lIconIndex = 1;
|
||
m_wndList.InsertItem( lCount+i,_itot(lCount+i+1,szBuf,10), lIconIndex);
|
||
_tcscpy( szBuf , _T("δ֪") );
|
||
switch( pData->lSmsType )
|
||
{
|
||
case SMSTYPE_SEND:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD> <20><>") );
|
||
break;
|
||
case SMSTYPE_ZF:
|
||
_tcscpy(szBuf , _T("ת <20><>") );
|
||
break;
|
||
case SMSTYPE_ALARM:
|
||
_tcscpy(szBuf , _T("<EFBFBD>ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") );
|
||
break;
|
||
case SMSTYPE_EMAIL:
|
||
_tcscpy(szBuf , _T("<EFBFBD>ʼ<EFBFBD>֪ͨ") );
|
||
break;
|
||
case SMSTYPE_RECV:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD> <20><>") );
|
||
break;
|
||
case SMSTYPE_SP:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD>ֵҵ<EFBFBD><EFBFBD>") );
|
||
break;
|
||
case SMSTYPE_SWT:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ") );
|
||
break;
|
||
}
|
||
m_wndList.SetItemText(lCount+i,1,szBuf);
|
||
#if defined(SMSMANAGER_KF) || defined(SMSCENTER_NX)
|
||
_tcscpy( szBuf , _T("δ֪") );
|
||
switch( pData->lStatus )
|
||
{
|
||
case 0:
|
||
_tcscpy(szBuf , _T("δ<EFBFBD><EFBFBD>"));
|
||
break;
|
||
case 1:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
||
break;
|
||
case 7:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>"));
|
||
break;
|
||
case 10:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD><EFBFBD>ͳɹ<EFBFBD>"));
|
||
break;
|
||
case 12:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD><EFBFBD>ճɹ<EFBFBD>"));
|
||
break;
|
||
case 11:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>"));
|
||
break;
|
||
case 13:
|
||
_tcscpy(szBuf , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>"));
|
||
break;
|
||
}
|
||
m_wndList.SetItemText(lCount+i,2,szBuf);
|
||
#else
|
||
_stprintf(szBuf , _T("%4d") , pData->lStatus );
|
||
m_wndList.SetItemText(lCount+i,2,szBuf);
|
||
#endif
|
||
_stprintf(szBuf , _T("%d") , pData->lCorpID );
|
||
m_wndList.SetItemText(lCount+i,3,szBuf);
|
||
m_wndList.SetItemText(lCount+i,4,pData->szSender);
|
||
_tcscpy(szBuf , pData->szSendNum );
|
||
#ifdef SMSMANAGER_KF
|
||
//szBuf[4]='*';szBuf[5]='*';szBuf[6]='*';
|
||
#endif
|
||
m_wndList.SetItemText(lCount+i,5,szBuf);
|
||
m_wndList.SetItemText(lCount+i,6,pData->szRecver);
|
||
_tcscpy(szBuf , pData->szRecvNum );
|
||
#ifdef SMSMANAGER_KF
|
||
szBuf[4]='*';szBuf[5]='*';szBuf[6]='*';
|
||
#endif
|
||
m_wndList.SetItemText(lCount+i,7,szBuf);
|
||
|
||
switch (pData->lRecvNumType)
|
||
{
|
||
case 0:
|
||
str = _T("<EFBFBD>ƶ<EFBFBD>");
|
||
break;
|
||
case 1:
|
||
str = _T("<EFBFBD><EFBFBD>ͨ");
|
||
break;
|
||
case 2:
|
||
str = _T("С<EFBFBD><EFBFBD>ͨ");
|
||
break;
|
||
case 3:
|
||
str = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||
break;
|
||
case 4:
|
||
str = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||
break;
|
||
default:
|
||
str = _T("");
|
||
break;
|
||
}
|
||
m_wndList.SetItemText(lCount + i, 8, str);
|
||
|
||
_stprintf( szBuf , _T("%04d.%02d.%02d %02d:%02d:%02d") ,pData->tSubTime.wYear, pData->tSubTime.wMonth,pData->tSubTime.wDay,pData->tSubTime.wHour,pData->tSubTime.wMinute,pData->tSubTime.wSecond );
|
||
m_wndList.SetItemText(lCount+i,9,szBuf);
|
||
_stprintf( szBuf , _T("%04d.%02d.%02d %02d:%02d:%02d") ,pData->tSendTime.wYear, pData->tSendTime.wMonth,pData->tSendTime.wDay,pData->tSendTime.wHour,pData->tSendTime.wMinute,pData->tSendTime.wSecond );
|
||
m_wndList.SetItemText(lCount+i,10,szBuf);
|
||
_stprintf( szBuf , _T("%04d.%02d.%02d %02d:%02d:%02d") ,pData->tRecvTime.wYear,pData->tRecvTime.wMonth,pData->tRecvTime.wDay,pData->tRecvTime.wHour,pData->tRecvTime.wMinute,pData->tRecvTime.wSecond );
|
||
m_wndList.SetItemText(lCount+i,11,szBuf);
|
||
_stprintf( szBuf , _T("%04d.%02d.%02d %02d:%02d:%02d") ,pData->tTimerTime.wYear,pData->tTimerTime.wMonth,pData->tTimerTime.wDay,pData->tTimerTime.wHour,pData->tTimerTime.wMinute,pData->tTimerTime.wSecond );
|
||
m_wndList.SetItemText(lCount+i,12,szBuf);
|
||
m_wndList.SetItemText(lCount+i,13,pData->szMsg);
|
||
#ifdef SMSCENTER_NX
|
||
_stprintf(szBuf,_T("%s") , pData->szRecvStatus);
|
||
#else
|
||
_stprintf(szBuf,_T("%-32s;%-4d;%s") , pData->szMsgID,pData->lSendRet,pData->szRecvStatus);
|
||
#endif
|
||
m_wndList.SetItemText(lCount+i,14,szBuf);
|
||
|
||
m_wndList.SetItemData(lCount+i,(DWORD)(pos) );
|
||
pData++;
|
||
}
|
||
// if ( m_bProcess ) //<2F>ǵ<EFBFBD><C7B5><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
|
||
// {
|
||
// m_Process.SetProcess( pList->lPageAll , pList->lPageCount );
|
||
// }
|
||
return true;
|
||
}
|
||
if (pHead->lFuncType == SMSFUNC_BACK_ADD)
|
||
{
|
||
ANS_Back_Add * pBack = (ANS_Back_Add *)pHead->pFrame;
|
||
|
||
CString str;
|
||
if ( pBack->bOK )
|
||
{
|
||
str.Format( _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӳɹ<EFBFBD><EFBFBD><EFBFBD>%d->%s!"),pBack->lCorpID , pBack->szMobile );
|
||
MessageBox( str , _T("<EFBFBD><EFBFBD>ʾ") , MB_ICONINFORMATION );
|
||
}
|
||
else
|
||
{
|
||
str.Format( _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飡"));
|
||
MessageBox( str , _T("<EFBFBD><EFBFBD>ʾ") , MB_ICONINFORMATION );
|
||
}
|
||
|
||
return true;
|
||
}
|
||
|
||
|
||
return false;
|
||
}
|
||
|
||
BOOL CListDlg::OnInitDialog()
|
||
{
|
||
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;
|
||
|
||
|
||
#ifdef SMSMANAGER_KF
|
||
GetDlgItem(IDC_LIST_S1)->ShowWindow(SW_HIDE);
|
||
GetDlgItem(IDC_LIST_CORP)->ShowWindow(SW_HIDE);
|
||
GetDlgItem(IDC_LIST_QUERY2)->ShowWindow(SW_HIDE);
|
||
GetDlgItem(IDC_LIST_CORPID)->ShowWindow(SW_HIDE);
|
||
//GetDlgItem(IDC_LIST_OLD)->ShowWindow(SW_HIDE);
|
||
GetDlgItem(IDC_LIST_JF)->ShowWindow(SW_HIDE);
|
||
|
||
//GetDlgItem(IDC_LIST_S2)->ShowWindow(SW_HIDE);
|
||
//GetDlgItem(IDC_LIST_MOBILETYPE)->ShowWindow(SW_HIDE);
|
||
GetDlgItem(IDC_LIST_MSGYTYPE)->ShowWindow(SW_HIDE);
|
||
|
||
|
||
#endif
|
||
|
||
//<2F><>ʼ<EFBFBD><CABC>List
|
||
m_Image.Create(16, 16, ILC_COLOR16 | ILC_MASK, 5, 5);
|
||
m_Image.Add(AfxGetApp()->LoadIcon(IDI_NULL));
|
||
m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_LIST));
|
||
m_wndList.SubClassWindow2();
|
||
m_wndList.SetHeadings(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,50; <20><> <20><>,80;״̬,70;<3B><>ҵID,60;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,70; <20><><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD>,130; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,70; <20><><EFBFBD>պ<EFBFBD><D5BA><EFBFBD>,130;<3B><>Ӫ<EFBFBD><D3AA>,70; <20>ύʱ<E1BDBB><CAB1>,150; <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,150; <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,150; <20><>ʱʱ<CAB1><CAB1>,150; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1000; <20><>ע,400;"));
|
||
m_wndList.SetGridLines(true);
|
||
m_wndList.SetImageList(&m_Image,LVSIL_SMALL);
|
||
|
||
m_bInit = true;
|
||
|
||
/*
|
||
//Ĭ<><C4AC>ȡ<EFBFBD><C8A1><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>
|
||
SYSTEMTIME t; ::GetLocalTime(&t);
|
||
t.wDay = 1;//<2F><>1<EFBFBD><31><EFBFBD><EFBFBD>
|
||
t.wMonth = t.wMonth-1;
|
||
if ( t.wMonth <=0 )
|
||
{
|
||
t.wMonth = 12;
|
||
t.wYear = t.wYear-1;
|
||
}
|
||
m_tBegin.SetDate( t.wYear,t.wMonth,t.wDay ); //<2F><>ʼ
|
||
if ( t.wMonth == 1 ||
|
||
t.wMonth == 3 ||
|
||
t.wMonth == 5 ||
|
||
t.wMonth == 7 ||
|
||
t.wMonth == 8 ||
|
||
t.wMonth == 10 ||
|
||
t.wMonth == 12 )
|
||
{
|
||
t.wDay = 31;
|
||
}
|
||
else
|
||
if (t.wMonth == 2 )
|
||
t.wDay = 28;
|
||
else
|
||
t.wDay = 30;
|
||
m_tEnd.SetDate( t.wYear,t.wMonth,t.wDay );//<2F><><EFBFBD><EFBFBD>
|
||
*/
|
||
|
||
SYSTEMTIME t; ::GetLocalTime(&t);
|
||
m_tBegin.SetDate(t.wYear, t.wMonth, t.wDay); //<2F><>ʼ
|
||
m_tEnd.SetDate(t.wYear, t.wMonth, t.wDay);//<2F><><EFBFBD><EFBFBD>
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_TAB, false))
|
||
{
|
||
COleDateTime tP = COleDateTime::GetCurrentTime() - COleDateTimeSpan(2, 0, 0, 0);
|
||
m_tBegin.SetDate(tP.GetYear(), tP.GetMonth(), tP.GetDay()); //<2F><>ʼ
|
||
}
|
||
|
||
t.wHour=0;
|
||
t.wMinute=0;
|
||
t.wSecond=0;
|
||
m_tBegin2.SetTime(t.wHour,t.wMinute,t.wSecond);
|
||
t.wHour=23;
|
||
t.wMinute=59;
|
||
t.wSecond=59;
|
||
m_tEnd2.SetTime(t.wHour,t.wMinute,t.wSecond);
|
||
|
||
m_lMobileType = 0; //Ĭ<>ϲ<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD>к<EFBFBD><D0BA><EFBFBD>
|
||
m_lMsgType=0; //Ĭ<>ϲ<EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>͵Ķ<CDB5><C4B6><EFBFBD>
|
||
m_lTop = 1; //Ĭ<><C4AC><EFBFBD><EFBFBD>ʾǰ200<30><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
|
||
UpdateData(false);
|
||
|
||
|
||
return TRUE; // return TRUE unless you set the focus to a control
|
||
// EXCEPTION: OCX Property Pages should return FALSE
|
||
}
|
||
|
||
void CListDlg::OnSize(UINT nType, int cx, int cy)
|
||
{
|
||
CDialog::OnSize(nType, cx, cy);
|
||
|
||
if ( m_bInit )
|
||
{
|
||
CRect rect;
|
||
m_S_S1.GetWindowRect(&rect);
|
||
m_wndList.MoveWindow( 0 , 0+rect.Height()+5 , cx,cy-rect.Height()-5);
|
||
}
|
||
}
|
||
|
||
void CListDlg::Close()
|
||
{
|
||
Close_Corp();
|
||
Close_ListData();
|
||
}
|
||
|
||
void CListDlg::OnListQuery()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return ;
|
||
}
|
||
UpdateData(true);
|
||
|
||
m_tBegin.SetDateTime(m_tBegin.GetYear(),m_tBegin.GetMonth(),m_tBegin.GetDay(),m_tBegin2.GetHour(),m_tBegin2.GetMinute(),m_tBegin2.GetSecond());
|
||
m_tEnd.SetDateTime(m_tEnd.GetYear(),m_tEnd.GetMonth(),m_tEnd.GetDay(),m_tEnd2.GetHour(),m_tEnd2.GetMinute(),m_tEnd2.GetSecond());
|
||
|
||
if ( m_tEnd < m_tBegin )
|
||
{
|
||
MessageBox( _T("<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䲻<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼʱ<EFBFBD>䣬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
return ;
|
||
}
|
||
REQ_List * pList = new REQ_List;memset(pList,0,sizeof(REQ_List));
|
||
|
||
if (m_lQueryReSendID>0 && m_strQueryReSendMobile.GetLength() > 0)
|
||
{
|
||
pList->lReSendListSendID = m_lQueryReSendID;
|
||
_tcscpy(pList->szMobile, m_strQueryReSendMobile);
|
||
|
||
m_lQueryReSendID = 0;
|
||
m_strQueryReSendMobile = _T("");
|
||
}
|
||
else
|
||
{
|
||
if (m_strMobile.GetLength() > 8)
|
||
_tcscpy(pList->szMobile, m_strMobile);
|
||
}
|
||
// m_E_Mobile.SetWindowText( _T("") );
|
||
|
||
#ifdef SMSMANAGER_KF
|
||
if ( m_lQueryCorpID )
|
||
{
|
||
pList->lCorpID = m_lQueryCorpID;
|
||
pList->lMsgType = -1; //<2F><>ѯ<EFBFBD><D1AF><EFBFBD>еļ<D0B5>¼
|
||
m_lQueryCorpID = 0;
|
||
_tcscpy(pList->szMobile, _T("") );
|
||
}
|
||
else
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_TAB,false) )
|
||
{
|
||
if ( m_strMobile.GetLength()<8 )
|
||
{
|
||
MessageBox( _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>嵥!") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_LIST_MOBILE)->SetFocus();
|
||
return ;
|
||
}
|
||
|
||
}
|
||
pList->lCorpID = -1;
|
||
pList->lMsgType = 4; //<2F><>ѯ<EFBFBD><D1AF><EFBFBD>յļ<D5B5>¼
|
||
}
|
||
m_tBegin.GetAsSystemTime( pList->tBegin );
|
||
m_tEnd.GetAsSystemTime( pList->tEnd );
|
||
pList->lMobileType = m_lMobileType-1; //<2F>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD>
|
||
pList->bOld = m_bOld; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
pList->bJF = false; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>Ʒѵ<C6B7>
|
||
|
||
if ( _tcslen(pList->szMobile)>8 )
|
||
{
|
||
pList->lCorpID = -1;
|
||
pList->lMsgType = -1; //<2F><>ѯ<EFBFBD><D1AF><EFBFBD>еļ<D0B5>¼
|
||
pList->lMobileType = -1; //<2F>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD>
|
||
}
|
||
#else
|
||
if ( m_lQueryCorpID )
|
||
{
|
||
pList->lCorpID = m_lQueryCorpID;
|
||
pList->lMsgType = -1; //<2F><>ѯ<EFBFBD><D1AF><EFBFBD>еļ<D0B5>¼
|
||
m_lQueryCorpID = 0;
|
||
_tcscpy(pList->szMobile, _T(""));
|
||
}
|
||
else
|
||
{
|
||
if ( m_lCorp <= 0 ) //ѡ<><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ
|
||
{
|
||
pList->lCorpID = -1;
|
||
}
|
||
else
|
||
{
|
||
POSITION pos = (POSITION)m_L_Corp.GetItemData(m_lCorp);
|
||
POSITION pos2 = pos;
|
||
ANS_Corp_NameData * pData = m_Corp.GetNext( pos );
|
||
if (pData)
|
||
{
|
||
pList->lCorpID = pData->lCorpID;
|
||
}
|
||
else
|
||
{
|
||
return;
|
||
}
|
||
}
|
||
pList->lMobileType = m_lMobileType-1; //<2F>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD>
|
||
pList->lMsgType = m_lMsgType-1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
pList->bOld = m_bOld; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
pList->bJF = m_bJF; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>ѯ<EFBFBD>Ʒѵ<C6B7>
|
||
}
|
||
m_tBegin.GetAsSystemTime( pList->tBegin );
|
||
m_tEnd.GetAsSystemTime( pList->tEnd );
|
||
#endif
|
||
switch ( m_lTop )
|
||
{
|
||
case 1:
|
||
pList->lTop = 200;
|
||
break;
|
||
case 2:
|
||
pList->lTop = 500;
|
||
break;
|
||
case 3:
|
||
pList->lTop = 1000;
|
||
break;
|
||
case 4:
|
||
pList->lTop = 2000;
|
||
break;
|
||
case 5:
|
||
pList->lTop = 5000;
|
||
break;
|
||
case 0:
|
||
default:
|
||
pList->lTop = -1;
|
||
break;
|
||
}
|
||
this->Close_ListData(); //<2F>ر<EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD>
|
||
m_wndList.ShowWindow( SW_HIDE ); //Ϊ<>˼ӿ<CBBC><D3BF><EFBFBD>ʾ<EFBFBD>ٶ<EFBFBD>
|
||
m_wndList.DeleteAllItems(); //<2F><>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD>м<EFBFBD>¼
|
||
m_pMainFrame->SendFrame(SMSFUNC_LIST,(BYTE*)pList,sizeof(REQ_List));
|
||
// m_bProcess = true;
|
||
// m_Process.DoModal();
|
||
// m_bProcess = false;
|
||
m_wndList.ShowWindow( SW_SHOW ); //Ϊ<>˼ӿ<CBBC><D3BF><EFBFBD>ʾ<EFBFBD>ٶ<EFBFBD>
|
||
m_S_S1.SetWindowText( _T("<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD>ҵ") );
|
||
|
||
#ifdef SMSCENTER_NX
|
||
GetDlgItem(IDC_LIST_QUERY)->EnableWindow(false);
|
||
#endif
|
||
return ;
|
||
}
|
||
|
||
void CListDlg::OnDblclkListList(NMHDR* pNMHDR, LRESULT* pResult)
|
||
{
|
||
*pResult = 0;
|
||
|
||
On_User_See();
|
||
}
|
||
|
||
void CListDlg::OnListQuery2()
|
||
{
|
||
CString strTemp;
|
||
CString strFind;
|
||
m_E_CorpID.GetWindowText(strFind);
|
||
if ( strFind.GetLength()<=0 )
|
||
return ;
|
||
long lSel = m_L_Corp.GetCurSel();
|
||
long lCount = m_L_Corp.GetCount();
|
||
for ( int i=lSel+1 ; i<lCount ; i++ )
|
||
{
|
||
m_L_Corp.GetLBText(i,strTemp);
|
||
if ( strTemp.Find(strFind)>=0 )
|
||
{
|
||
m_L_Corp.SetCurSel(i);
|
||
return ;
|
||
}
|
||
}
|
||
for ( i=0 ; i<lSel ; i++ )
|
||
{
|
||
m_L_Corp.GetLBText(i,strTemp);
|
||
if ( strTemp.Find(strFind)>=0 )
|
||
{
|
||
m_L_Corp.SetCurSel(i);
|
||
return ;
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
void CListDlg::OnRclickListList(NMHDR* pNMHDR, LRESULT* pResult)
|
||
{
|
||
*pResult = 0;
|
||
|
||
ShowRMenu();
|
||
}
|
||
|
||
void CListDlg::ShowRMenu()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return ;
|
||
}
|
||
|
||
#if defined(SMSCENTER_NX) && !defined(SMSCENTER_GDDX)
|
||
//ũ<>Ű汾<C5B0><E6B1BE><EFBFBD><EFBFBD><EFBFBD>ݲ<EFBFBD>ͬȨ<CDAC><EFBFBD><DEBB>ֿͷ<D6BF><CDB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>汾
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_MANAGER_RESETPASSWD,false) ) //<2F><>СȨ<D0A1><C8A8>
|
||
{
|
||
return ;
|
||
}
|
||
#endif
|
||
|
||
CMenu menu;
|
||
menu.CreatePopupMenu();
|
||
BOOL bLock = false;
|
||
long lItem = this->GetCurrentSelected();
|
||
//<2F><><EFBFBD><EFBFBD>
|
||
if ( lItem>=0 )
|
||
{
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
POSITION pos2 = pos;
|
||
ANS_ListData* pData = m_ListData.GetNext(pos);
|
||
if (!pData)
|
||
return;
|
||
|
||
|
||
menu.AppendMenu(MF_STRING , MENU_LIST_SEE , _T(" <20><> <20><> ") );
|
||
if (m_pMainFrame->GetUserPurview(PURVIEW_LIST, false))
|
||
{
|
||
menu.AppendMenu(MF_STRING, MENU_LIST_CORPLIST, _T(" <20><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>ҵ<EFBFBD>嵥 "));
|
||
if (pData->lReSendCount > 0)
|
||
{
|
||
menu.AppendMenu(MF_STRING, MENU_LIST_RESEND, _T(" <20><>ѯ<EFBFBD>˶<EFBFBD><CBB6><EFBFBD><EFBFBD>ط<EFBFBD><D8B7><EFBFBD>¼ "));
|
||
}
|
||
}
|
||
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
menu.AppendMenu(MF_STRING , MENU_LIST_CORPOFF , _T(" <20><><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>ҵ ") );
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
menu.AppendMenu(MF_STRING , MENU_LIST_ADDBACK, _T(" <20><><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ") );
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
menu.AppendMenu(MF_STRING , MENU_LIST_SENDBBS, _T(" <20><><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ ") );
|
||
}
|
||
else
|
||
{
|
||
menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , MENU_LIST_SEE , _T(" <20><> <20><> ") );
|
||
menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , MENU_LIST_CORPLIST, _T(" <20><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>ҵ<EFBFBD>嵥 ") );
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , MENU_LIST_CORPOFF , _T(" <20><><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>ҵ ") );
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , MENU_LIST_ADDBACK, _T(" <20><><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ") );
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , MENU_LIST_SENDBBS, _T(" <20><><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ ") );
|
||
}
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
menu.AppendMenu(MF_STRING , MENU_LIST_COPY , _T(" <20><> <20><> ") );
|
||
menu.AppendMenu(MF_STRING , MENU_LIST_RESORT, _T(" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "));
|
||
#ifndef SMSMANAGER_KF
|
||
menu.AppendMenu(MF_SEPARATOR );
|
||
menu.AppendMenu(MF_STRING , MENU_LIST_EXPORT , _T(" <20><> <20><> ") );
|
||
#endif
|
||
//<2F><>ʾ<EFBFBD>˵<EFBFBD>
|
||
POINT pt ;
|
||
::GetCursorPos( &pt );
|
||
//this->ClientToScreen( &pt);
|
||
menu.TrackPopupMenu(TPM_LEFTBUTTON | TPM_RIGHTBUTTON,pt.x,pt.y, this, NULL);
|
||
menu.DestroyMenu();
|
||
}
|
||
|
||
long CListDlg::GetCurrentSelected()
|
||
{
|
||
POSITION pos = m_wndList.GetFirstSelectedItemPosition();
|
||
if ( pos )
|
||
{
|
||
return m_wndList.GetNextSelectedItem(pos);
|
||
}
|
||
return -1;
|
||
}
|
||
|
||
void CListDlg::On_User_See()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return ;
|
||
}
|
||
|
||
long lItem = m_wndList.GetFirstSelectedItem();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
POSITION pos2 = pos;
|
||
ANS_ListData * pData = m_ListData.GetNext( pos );
|
||
if (!pData)
|
||
return ;
|
||
|
||
SMS_See sms={0};
|
||
|
||
|
||
_stprintf(sms.szCorpID, _T("%d"), pData->lCorpID);
|
||
|
||
CString strType = _T("δ֪");
|
||
switch( pData->lSmsType )
|
||
{
|
||
case SMSTYPE_SEND:
|
||
strType= _T("<EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><EFBFBD><EFBFBD>");
|
||
break;
|
||
case SMSTYPE_ZF:
|
||
strType = _T("ת <20><>");
|
||
break;
|
||
case SMSTYPE_ALARM:
|
||
strType = _T("<EFBFBD>ճ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||
break;
|
||
case SMSTYPE_EMAIL:
|
||
strType = _T("<EFBFBD>ʼ<EFBFBD>֪ͨ");
|
||
break;
|
||
case SMSTYPE_RECV:
|
||
strType = _T("<EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||
break;
|
||
case SMSTYPE_SP:
|
||
strType = _T("<EFBFBD><EFBFBD>ֵҵ<EFBFBD><EFBFBD>");
|
||
break;
|
||
case SMSTYPE_SWT:
|
||
strType = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ");
|
||
break;
|
||
}
|
||
|
||
CString strStatus = _T("δ֪");
|
||
switch (pData->lStatus)
|
||
{
|
||
case SMSTYPE_SEND:
|
||
strStatus = _T("<EFBFBD>ύ<EFBFBD>ɹ<EFBFBD>");
|
||
break;
|
||
case SEND_STATUS_SUB_FILT:
|
||
strStatus = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
|
||
break;
|
||
case SEND_STATUS_SUB_ERROR:
|
||
case SEND_STATUS_SUB_USERNOSMS:
|
||
case SEND_STATUS_SUB_CORPNOSMS:
|
||
case SEND_STATUS_SUB_CORPOVRDATE:
|
||
case SEND_STATUS_SUB_NUMNOSUP:
|
||
case SEND_STATUS_OVERCOUNT:
|
||
case SEND_STATUS_NOSY:
|
||
strStatus = _T("<EFBFBD>ύʧ<EFBFBD><EFBFBD>");
|
||
break;
|
||
case SEND_STATUS_FILT_ERROR:
|
||
strStatus = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>");
|
||
break;
|
||
case SEND_STATUS_SEND_OK:
|
||
strStatus = _T("<EFBFBD><EFBFBD><EFBFBD>ͳɹ<EFBFBD>");
|
||
break;
|
||
case SEND_STATUS_SEND_ERROR:
|
||
strStatus = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>");
|
||
break;
|
||
case SEND_STATUS_RECV_OK:
|
||
strStatus = _T("<EFBFBD><EFBFBD><EFBFBD>ճɹ<EFBFBD>");
|
||
break;
|
||
case SEND_STATUS_RECV_ERROR:
|
||
strStatus = _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>");
|
||
break;
|
||
}
|
||
|
||
_stprintf(sms.szStatus, _T("%d - %s - %s"), pData->lStatus, strStatus, strType);
|
||
|
||
if ( _tcslen(pData->szSender))
|
||
_stprintf( sms.szSender , _T("%s-%s") , pData->szSender,pData->szSendNum);
|
||
else
|
||
_stprintf( sms.szSender , _T("%s") , pData->szSendNum );
|
||
|
||
TCHAR szBuf[32] = { 0 };
|
||
_tcscpy(szBuf, pData->szRecvNum);
|
||
|
||
|
||
#ifdef SMSMANAGER_KF
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_TAB,false))
|
||
{
|
||
szBuf[4] = '*'; szBuf[5] = '*'; szBuf[6] = '*';
|
||
}
|
||
#endif
|
||
|
||
if ( _tcslen(pData->szRecver))
|
||
_stprintf( sms.szRecver , _T("%s-%s") , pData->szRecver, szBuf);
|
||
else
|
||
_stprintf( sms.szRecver , _T("%s") , szBuf);
|
||
|
||
_stprintf( sms.szSendTime , _T("%04d.%02d.%02d %02d:%02d:%02d") ,pData->tSendTime.wYear, pData->tSendTime.wMonth,pData->tSendTime.wDay,pData->tSendTime.wHour,pData->tSendTime.wMinute,pData->tSendTime.wSecond );
|
||
_stprintf( sms.szRecvTime , _T("%04d.%02d.%02d %02d:%02d:%02d") ,pData->tRecvTime.wYear,pData->tRecvTime.wMonth,pData->tRecvTime.wDay,pData->tRecvTime.wHour,pData->tRecvTime.wMinute,pData->tRecvTime.wSecond );
|
||
_tcscpy( sms.szMsg , pData->szMsg );
|
||
|
||
CString str;
|
||
str.Format(_T("%s; %-32s;%-4d") , pData->szRecvStatus,pData->szMsgID,pData->lSendRet);
|
||
str.TrimLeft();
|
||
str.TrimRight();
|
||
_tcscpy(sms.szAdd,str);
|
||
|
||
DLG_SmsLogSee dlg(this);
|
||
dlg.SetParam(sms);
|
||
dlg.DoModal();
|
||
}
|
||
void CListDlg::On_User_AddBack()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return ;
|
||
}
|
||
long lItem = m_wndList.GetFirstSelectedItem();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
POSITION pos2 = pos;
|
||
ANS_ListData * pData = m_ListData.GetNext( pos );
|
||
if (!pData)
|
||
return ;
|
||
|
||
|
||
CString strTemp;
|
||
CString strMobile;
|
||
CString strMobile2;
|
||
CString strMsg;
|
||
CString str;
|
||
if ( pData->lSmsType == 4 )
|
||
{
|
||
strMobile = pData->szSendNum;
|
||
}
|
||
else
|
||
{
|
||
strMobile = pData->szRecvNum;
|
||
}
|
||
strMobile2 = strMobile;
|
||
#ifdef SMSMANAGER_KF
|
||
if ( strMobile2.GetLength()>7 )
|
||
{
|
||
strMobile2.SetAt(4,'*');
|
||
strMobile2.SetAt(5,'*');
|
||
strMobile2.SetAt(6,'*');
|
||
}
|
||
pData->szSendNum[4]='*';pData->szSendNum[5]='*';pData->szSendNum[6]='*';
|
||
#endif
|
||
strMsg = pData->szMsg;
|
||
|
||
str.Format( _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:\r\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%s\r\n<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%s\r\n"),strMobile2,strMsg );
|
||
|
||
int iRet = MessageBox( str , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONQUESTION|MB_YESNO );
|
||
if ( iRet !=IDYES )
|
||
return ;
|
||
|
||
REQ_Back_Add * pAdd = new REQ_Back_Add;
|
||
memset(pAdd , 0 ,sizeof(REQ_Back_Add));
|
||
pAdd->lCorpID = pData->lCorpID;
|
||
pAdd->lUserID = -1;
|
||
_tcscpy(pAdd->szMobile , strMobile );
|
||
_stprintf( pAdd->szBZ , _T("<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>:%s") , strMsg );
|
||
|
||
m_pMainFrame->SendFrame(SMSFUNC_BACK_ADD,(BYTE*)pAdd,sizeof(REQ_Back_Add));
|
||
|
||
}
|
||
void CListDlg::On_User_SendBBS()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return ;
|
||
}
|
||
long lItem = m_wndList.GetFirstSelectedItem();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
POSITION pos2 = pos;
|
||
ANS_ListData * pData = m_ListData.GetNext( pos );
|
||
if (!pData)
|
||
return ;
|
||
|
||
//<2F><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||
ANS_BBS_SeeData See={0};
|
||
See.lBBSID = 0;
|
||
See.lSCorpID = 0; //<2F><><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>
|
||
See.lSUserID = m_pMainFrame->m_lUserID; //<2F><><EFBFBD><EFBFBD>ԱID
|
||
_tcscpy(See.szSCorpName,_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա"));
|
||
_tcscpy(See.szSLoginName , m_pMainFrame->m_Setup.szUser );
|
||
See.lRCorpID = pData->lCorpID;
|
||
See.lRUserID = pData->lUserID;
|
||
DLG_BBS_Send dlg(this);
|
||
dlg.SetParam( See , 3 );
|
||
if ( dlg.DoModal() == IDOK )
|
||
{
|
||
long lSize = sizeof(REQ_BBS_Send)+sizeof(ANS_BBS_SeeData);
|
||
BYTE * pModifyData = new BYTE[lSize];memset(pModifyData,0,lSize);
|
||
REQ_BBS_Send * pModify = (REQ_BBS_Send *)pModifyData; //ͷ
|
||
ANS_BBS_SeeData * pSPData = (ANS_BBS_SeeData *)(pModifyData+sizeof(REQ_BBS_Send));
|
||
*pSPData = dlg.GetParam();
|
||
pModify->lItem = lItem;
|
||
pModify->lCount = 1;
|
||
m_pMainFrame->SendFrame( SMSFUNC_BBS_SEND , pModifyData , lSize );
|
||
}
|
||
return ;
|
||
}
|
||
|
||
void CListDlg::On_User_Export()
|
||
{
|
||
//m_wndList.SetHeadings(_T("<22><><EFBFBD><EFBFBD>,40; <20><> <20><>,80;״̬,50;<3B><>ҵID,60;<3B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,70; <20><><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD>,120; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,70; <20><><EFBFBD>պ<EFBFBD><D5BA><EFBFBD>,120; <20>ύʱ<E1BDBB><CAB1>,150; <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,150; <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>,150; <20><>ʱʱ<CAB1><CAB1>,150; <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,1000; <20><>ϢID,150;"));
|
||
SortItem item[32]={0};
|
||
_tcscpy(item[0].szItem,_T("<EFBFBD><EFBFBD> <20><>"));
|
||
_tcscpy(item[1].szItem,_T("״̬"));
|
||
_tcscpy(item[2].szItem,_T("<EFBFBD><EFBFBD>ҵID"));
|
||
_tcscpy(item[3].szItem,_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[4].szItem,_T("<EFBFBD><EFBFBD><EFBFBD>ͺ<EFBFBD><EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[5].szItem,_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[6].szItem,_T("<EFBFBD><EFBFBD><EFBFBD>պ<EFBFBD><EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[7].szItem, _T("<EFBFBD><EFBFBD>Ӫ<EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[8].szItem,_T("<EFBFBD>ύʱ<EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[9].szItem,_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[10].szItem,_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[11].szItem,_T("<EFBFBD><EFBFBD>ʱʱ<EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[12].szItem,_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
||
_tcscpy(item[13].szItem,_T("״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"));
|
||
DLG_HZB_Export dlg(this);
|
||
dlg.SetParam( &m_wndList );
|
||
dlg.SetListItem(item,14,-2);
|
||
dlg.DoModal();
|
||
}
|
||
void CListDlg::On_User_Copy()
|
||
{
|
||
long lItem = m_wndList.GetFirstSelectedItem();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
HGLOBAL hglbCopy;
|
||
LPTSTR lptstrCopy;
|
||
if (!OpenClipboard())
|
||
return ;
|
||
EmptyClipboard();
|
||
|
||
CString str,strTemp;
|
||
|
||
long lCol = m_wndList.GetColumnCount();
|
||
long lCount = m_wndList.GetSelectedItemCount();
|
||
|
||
for ( int i=0 ; i<lCol ; i++ )
|
||
{
|
||
LVCOLUMN lmn={0};
|
||
TCHAR szBuf[256]={0};
|
||
lmn.mask = LVCF_TEXT;
|
||
lmn.pszText = szBuf;
|
||
lmn.cchTextMax = sizeof(szBuf);
|
||
m_wndList.GetColumn(i , &lmn);
|
||
|
||
str += CString(lmn.pszText );
|
||
str += CString(_T("\t"));
|
||
|
||
}
|
||
str += _T("\r\n");
|
||
|
||
|
||
lItem = -1;
|
||
for ( i=0 ; i<lCount ; i++ )
|
||
{
|
||
lItem = m_wndList.GetFirstSelectedItem(lItem);
|
||
if ( lItem >=0 )
|
||
{
|
||
CString str1;
|
||
for ( int j=0 ; j<lCol; j++ )
|
||
{
|
||
str1=m_wndList.GetItemText(lItem,j);
|
||
#ifdef SMSMANAGER_KF
|
||
if ( j == 12 )
|
||
str1 = _T("");
|
||
|
||
#endif
|
||
str1.TrimLeft();str1.TrimRight();str1.Replace( _T("\t") , _T("") );str1.Replace( _T("\r") , _T("") );str1.Replace( _T("\n") , _T("") );
|
||
strTemp.Format(_T("%s\t"),str1);
|
||
str += strTemp;
|
||
}
|
||
str += _T("\r\n");
|
||
|
||
}
|
||
}
|
||
|
||
hglbCopy = GlobalAlloc(GMEM_MOVEABLE, (str.GetLength()+1)*sizeof(TCHAR));
|
||
if (hglbCopy == NULL)
|
||
{
|
||
CloseClipboard();
|
||
return ;
|
||
}
|
||
lptstrCopy = (LPTSTR)GlobalLock(hglbCopy);
|
||
_tcscpy(lptstrCopy,str);
|
||
GlobalUnlock(hglbCopy);
|
||
#ifdef _UNICODE
|
||
::SetClipboardData(CF_UNICODETEXT, hglbCopy);
|
||
#else
|
||
::SetClipboardData(CF_TEXT, hglbCopy);
|
||
#endif
|
||
|
||
CloseClipboard();
|
||
|
||
return ;
|
||
|
||
}
|
||
|
||
void CListDlg::Close_Corp()
|
||
{
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
while (!m_Corp.IsEmpty())
|
||
{
|
||
ANS_Corp_NameData * pData = m_Corp.GetHead();
|
||
m_Corp.RemoveHead();
|
||
delete pData;
|
||
}
|
||
|
||
}
|
||
|
||
void CListDlg::Close_ListData()
|
||
{
|
||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||
while (!m_ListData.IsEmpty())
|
||
{
|
||
ANS_ListData * pData = m_ListData.GetHead();
|
||
m_ListData.RemoveHead();
|
||
delete pData;
|
||
}
|
||
|
||
}
|
||
|
||
void CListDlg::On_User_CorpList()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return ;
|
||
}
|
||
|
||
long lItem = m_wndList.GetFirstSelectedItem();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
POSITION pos2 = pos;
|
||
ANS_ListData * pData = m_ListData.GetNext( pos );
|
||
if (!pData)
|
||
return ;
|
||
|
||
m_lQueryCorpID = pData->lCorpID;
|
||
OnListQuery();
|
||
}
|
||
|
||
void CListDlg::On_User_ReSend()
|
||
{
|
||
if (!m_pMainFrame->GetUserPurview(PURVIEW_LIST))
|
||
{
|
||
return;
|
||
}
|
||
|
||
long lItem = m_wndList.GetFirstSelectedItem();
|
||
if (lItem < 0)
|
||
return;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
POSITION pos2 = pos;
|
||
ANS_ListData* pData = m_ListData.GetNext(pos);
|
||
if (!pData)
|
||
return;
|
||
|
||
m_lQueryReSendID = pData->lSendID;
|
||
m_strQueryReSendMobile = pData->szRecvNum;
|
||
|
||
OnListQuery();
|
||
}
|
||
|
||
void CListDlg::On_User_CorpOFF()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return ;
|
||
}
|
||
|
||
long lItem = m_wndList.GetFirstSelectedItem();
|
||
if ( lItem < 0 )
|
||
return ;
|
||
|
||
POSITION pos = (POSITION)m_wndList.GetItemData(lItem);
|
||
POSITION pos2 = pos;
|
||
ANS_ListData * pData = m_ListData.GetNext( pos );
|
||
if (!pData)
|
||
return ;
|
||
|
||
// CString str;
|
||
// str.Format( _T("<22>Ƿ<EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>ҵID:%d<><64>\r\n<><6E><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD>ܵ<EFBFBD>¼!"),pData->lCorpID );
|
||
// if ( MessageBox(str , _T("<22><><EFBFBD><EFBFBD>") , MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2) != IDYES )
|
||
// return ;
|
||
|
||
ANS_Corp_SeeData data={0};
|
||
data.lCorpID = pData->lCorpID;
|
||
|
||
DLG_Corp_Oper_Open dlg(this);
|
||
dlg.SetParam(&data,false,this->m_pMainFrame->m_Setup.szUser);
|
||
|
||
if ( dlg.DoModal() == IDOK )
|
||
{
|
||
REQ_CorpOFF * pCorp = new REQ_CorpOFF;memset(pCorp,0,sizeof(REQ_CorpOFF));
|
||
pCorp->lCorpID = pData->lCorpID;
|
||
pCorp->lStatus = 0; //0Ϊ<30><CEAA><EFBFBD>ã<EFBFBD>1Ϊ<31><CEAA><EFBFBD><EFBFBD>
|
||
_tcscpy(pCorp->szBZ , dlg.m_strBZ );
|
||
_tcscpy(pCorp->szOper , dlg.m_strOperName );
|
||
|
||
m_pMainFrame->SendFrame(SMSFUNC_CORPOFF,(BYTE*)pCorp,sizeof(REQ_CorpOFF));
|
||
}
|
||
}
|
||
|
||
void CListDlg::On_User_Resort()
|
||
{
|
||
m_wndList.ShowWindow(SW_HIDE);
|
||
long lCount = m_wndList.GetItemCount();
|
||
CString strNo;
|
||
for (int i = 0; i < lCount; i++)
|
||
{
|
||
strNo.Format(_T("%d"), i + 1);
|
||
m_wndList.SetItemText(i,0,strNo);
|
||
|
||
}
|
||
m_wndList.ShowWindow(SW_SHOW);
|
||
} |