962 lines
26 KiB
C++
962 lines
26 KiB
C++
// C_TC.cpp : implementation file
|
||
//
|
||
|
||
#include "stdafx.h"
|
||
#include "smsmanager.h"
|
||
#include "C_TDBill.h"
|
||
|
||
#ifdef _DEBUG
|
||
#define new DEBUG_NEW
|
||
#undef THIS_FILE
|
||
static char THIS_FILE[] = __FILE__;
|
||
#endif
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// CC_TDBill dialog
|
||
#include "MainFrm.h"
|
||
#include "ProcessSocket.h"
|
||
|
||
|
||
CC_TDBill::CC_TDBill(CWnd* pParent /*=NULL*/)
|
||
: CDialog(CC_TDBill::IDD, pParent)
|
||
{
|
||
//{{AFX_DATA_INIT(CC_TDBill)
|
||
m_tBegin = COleDateTime::GetCurrentTime();
|
||
m_tEnd = COleDateTime::GetCurrentTime();
|
||
m_bMS = FALSE;
|
||
//}}AFX_DATA_INIT
|
||
|
||
m_bInit = false;
|
||
m_bRefresh = false;
|
||
}
|
||
|
||
|
||
void CC_TDBill::DoDataExchange(CDataExchange* pDX)
|
||
{
|
||
CDialog::DoDataExchange(pDX);
|
||
//{{AFX_DATA_MAP(CC_TDBill)
|
||
DDX_Control(pDX, IDC_C_TDBILL_LIST, m_wndList);
|
||
DDX_Control(pDX, IDC_C_TDBILL_S1, m_S_S1);
|
||
DDX_DateTimeCtrl(pDX, IDC_C_TDBILL_TBEGIN, m_tBegin);
|
||
DDX_DateTimeCtrl(pDX, IDC_C_TDBILL_TEND, m_tEnd);
|
||
DDX_Check(pDX, IDC_C_TDBILL_MS, m_bMS);
|
||
//}}AFX_DATA_MAP
|
||
DDX_Check(pDX, IDC_C_TDBILL_OLD, m_bOld);
|
||
DDX_Control(pDX, IDC_C_TDBILL_TD, m_L_TD);
|
||
}
|
||
|
||
|
||
BEGIN_MESSAGE_MAP(CC_TDBill, CDialog)
|
||
//{{AFX_MSG_MAP(CC_TDBill)
|
||
ON_WM_SIZE()
|
||
ON_BN_CLICKED(IDC_C_TDBILL_QUERY, OnCTcQuery)
|
||
ON_NOTIFY(NM_RCLICK, IDC_C_TDBILL_LIST, OnRclickCTcList)
|
||
//}}AFX_MSG_MAP
|
||
ON_COMMAND(MENU_TC_COPY , On_User_Copy )
|
||
END_MESSAGE_MAP()
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// CC_TDBill message handlers
|
||
|
||
void CC_TDBill::Close()
|
||
{
|
||
Close_TD();
|
||
}
|
||
|
||
void CC_TDBill::Close_TD()
|
||
{
|
||
//Çå³ý¶ÓÁÐÖеÄÄÚÈÝ
|
||
while (!m_TD.IsEmpty())
|
||
{
|
||
ANS_TD2NameData * pData = m_TD.GetHead();
|
||
m_TD.RemoveHead();
|
||
delete pData;
|
||
}
|
||
}
|
||
|
||
BOOL CC_TDBill::RefreshInfo()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_TAB) )
|
||
{
|
||
return false;
|
||
}
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return false;
|
||
}
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_MANAGER_SEE) )
|
||
{
|
||
return false;
|
||
}
|
||
|
||
REQ_TD2Name * pGet = new REQ_TD2Name;
|
||
memset(pGet , 0 , sizeof(REQ_TD2Name));
|
||
m_pMainFrame->SendFrame(SMSFUNC_TD2NAME,(BYTE*)pGet,sizeof(REQ_TD2Name)); //È¡´úÀíÐÅÏ¢
|
||
return true;
|
||
}
|
||
|
||
BOOL CC_TDBill::ReHide()
|
||
{
|
||
ShowWindow( SW_HIDE );
|
||
return true;
|
||
}
|
||
|
||
BOOL CC_TDBill::ReShow(BOOL bRefresh)
|
||
{
|
||
ShowWindow( SW_SHOW );
|
||
if ( bRefresh || !m_bRefresh )
|
||
{
|
||
RefreshInfo();
|
||
}
|
||
return true;
|
||
}
|
||
|
||
BOOL CC_TDBill::ProcessSocket(Socket_Head_Add *pHead,BYTE* pFrame)
|
||
{
|
||
CString str;
|
||
//ȡͨµÀÃû
|
||
if (pHead->lFuncType == SMSFUNC_TD2NAME)
|
||
{
|
||
m_bRefresh = true; //ÒѾˢйý
|
||
ANS_TD2Name * pGet = (ANS_TD2Name *)pFrame;
|
||
ANS_TD2NameData * pData = (ANS_TD2NameData *)(pFrame+sizeof(ANS_TD2Name));
|
||
m_L_TD.ResetContent(); //ɾ³ýÔÒÑÓÐµÄÆóÒµ
|
||
long lItem = m_L_TD.AddString( _T("ËùÓÐͨµÀ") );
|
||
m_L_TD.SetItemData( lItem , (DWORD_PTR)-1);
|
||
this->Close_TD(); //¹Ø±ÕÔ¶ÓÁÐ
|
||
for ( int i=0;i<pGet->lCount;i++ )
|
||
{
|
||
ANS_TD2NameData * pNewData = new ANS_TD2NameData;
|
||
*pNewData = *pData;
|
||
POSITION pos = m_TD.AddTail(pNewData);
|
||
str.Format( _T("%s-%s"),pData->szName,pData->szAccessPort);
|
||
lItem = m_L_TD.AddString( str );
|
||
m_L_TD.SetItemData( lItem , (DWORD_PTR)pos);
|
||
pData ++;
|
||
}
|
||
m_L_TD.SetCurSel(0);
|
||
return true;
|
||
}
|
||
|
||
if (pHead->lFuncType == SMSFUNC_TD2BILL)
|
||
{
|
||
ANS_TD2Bill * pTab = (ANS_TD2Bill *)pFrame;
|
||
ANS_TD2BillData * pData = (ANS_TD2BillData *)(pFrame+sizeof(ANS_TD2Bill));
|
||
//²éѯ»ã×ÜÄÚÈÝ
|
||
long lSmsCount=0;
|
||
long lSmsCountIndex=0;
|
||
long lSubmitCount=0;
|
||
long lSubmitCountIndex=0;
|
||
long lSendCount=0;
|
||
long lSendCountIndex=0;
|
||
long lReportSucessCount=0;
|
||
long lReportSucessCountIndex=0;
|
||
long lReportFailCount=0;
|
||
long lReportFailCountIndex=0;
|
||
long lSubmitPerIndex=0;
|
||
long lFailPerIndex=0;
|
||
m_wndList.ShowWindow(SW_HIDE); //¼Ó¿ìÏÔʾËÙ¶È
|
||
m_wndList.DeleteAllItems();
|
||
m_wndList.DeleteAllColumns();
|
||
if ( pTab->bMS )
|
||
m_wndList.SetHeadings(_T("ÐòºÅ,50; ÈÕÆÚ,90;ÄÜÁ¦,50; ͨµÀÃû³Æ,160; ͨµÀºÅÂë,150;Íø¹ØÕ˺Å,120;¼Æ·ÑÁ¿,100;Ìá½»Á¿,100;·¢ËÍÁ¿,100;»ØÖ´³É¹¦,100;»ØÖ´Ê§°Ü,100;Ìá½»ÂÊ,100;ʧ°ÜÂÊ,100;"));
|
||
else
|
||
m_wndList.SetHeadings(_T("ÐòºÅ,50;ÄÜÁ¦,50; ͨµÀÃû³Æ,160; ͨµÀºÅÂë,150;Íø¹ØÕ˺Å,120;¼Æ·ÑÁ¿,100;Ìá½»Á¿,100;·¢ËÍÁ¿,100;»ØÖ´³É¹¦,100;»ØÖ´Ê§°Ü,100;Ìá½»ÂÊ,100;ʧ°ÜÂÊ,100;"));
|
||
TCHAR Buf[32]={0};
|
||
CString str;
|
||
long lCount=0;
|
||
for ( int i=0;i<pTab->lCount;i++)
|
||
{
|
||
m_wndList.InsertItem( lCount , _itot(lCount+1,Buf,10),0); //µ±Ìì»ã×ÜÁ¿
|
||
long lTemp=1;
|
||
if ( pTab->bMS )
|
||
{
|
||
str.Format( _T("%04d.%02d.%02d") , pData->tJSTime.wYear,pData->tJSTime.wMonth,pData->tJSTime.wDay );
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
}
|
||
if ( pData->lAbility==0 )
|
||
str = _T("¶ÌÐÅ");
|
||
if ( pData->lAbility==1 )
|
||
str = _T("²ÊÐÅ");
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
m_wndList.SetItemText(lCount,lTemp++,pData->szTDName);
|
||
m_wndList.SetItemText(lCount,lTemp++,pData->szAccessPort);
|
||
m_wndList.SetItemText(lCount, lTemp++, pData->szLoginName);
|
||
str.Format( _T("%d") , pData->lSmsCount );
|
||
lSmsCount += pData->lSmsCount;
|
||
lSmsCountIndex = lTemp;
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
str.Format( _T("%d") , pData->lSubmit );
|
||
lSubmitCount += pData->lSubmit;
|
||
lSubmitCountIndex = lTemp;
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
str.Format( _T("%d") , pData->lSend );
|
||
lSendCount += pData->lSend;
|
||
lSendCountIndex = lTemp;
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
str.Format( _T("%d") , pData->lReportSucess );
|
||
lReportSucessCount += pData->lReportSucess;
|
||
lReportSucessCountIndex = lTemp;
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
str.Format( _T("%d") , pData->lReportFail );
|
||
lReportFailCount += pData->lReportFail;
|
||
lReportFailCountIndex = lTemp;
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
|
||
str=_T("0.0%");
|
||
if ( pData->lSubmit >0 && pData->lSend>0 )
|
||
{
|
||
str.Format( _T("%.1f%%") , ((float)pData->lSend/(float)pData->lSubmit)*100.0f);
|
||
}
|
||
lSubmitPerIndex = lTemp;
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
|
||
str=_T("0.0%");
|
||
if ( pData->lReportFail >0 && pData->lSend>0 )
|
||
{
|
||
str.Format( _T("%.1f%%") , ((float)pData->lReportFail/(float)pData->lSend)*100.0f);
|
||
}
|
||
lFailPerIndex = lTemp;
|
||
m_wndList.SetItemText(lCount,lTemp++,str);
|
||
|
||
lCount++;
|
||
pData++;
|
||
}
|
||
m_wndList.InsertItem( lCount ,_T(""),0); //ºÏ¼Æ
|
||
lCount ++;
|
||
m_wndList.InsertItem( lCount ,_T("ºÏ¼Æ"),0); //ºÏ¼Æ
|
||
|
||
if ( lCount>0 )
|
||
{
|
||
str.Format( _T("%d") , lSmsCount );
|
||
m_wndList.SetItemText(lCount,lSmsCountIndex,str);
|
||
str.Format( _T("%d") , lSubmitCount );
|
||
m_wndList.SetItemText(lCount,lSubmitCountIndex,str);
|
||
str.Format( _T("%d") , lSendCount );
|
||
m_wndList.SetItemText(lCount,lSendCountIndex,str);
|
||
str.Format( _T("%d") , lReportSucessCount );
|
||
m_wndList.SetItemText(lCount,lReportSucessCountIndex,str);
|
||
str.Format( _T("%d") , lReportFailCount );
|
||
m_wndList.SetItemText(lCount,lReportFailCountIndex,str);
|
||
|
||
str=_T("0.0%");
|
||
if ( lSubmitCount>0 && lSendCount>0 )
|
||
{
|
||
str.Format( _T("%.1f%%") , ((float)lSendCount/(float)lSubmitCount)*100.0f);
|
||
}
|
||
m_wndList.SetItemText(lCount,lSubmitPerIndex,str);
|
||
|
||
str=_T("0.0%");
|
||
if ( lReportFailCount>0 && lSendCount>0 )
|
||
{
|
||
str.Format( _T("%.1f%%") , ((float)lReportFailCount/(float)lSendCount)*100.0f);
|
||
}
|
||
m_wndList.SetItemText(lCount,lFailPerIndex,str);
|
||
}
|
||
m_wndList.ShowWindow(SW_SHOW); //¼Ó¿ìÏÔʾËÙ¶È
|
||
return true;
|
||
}
|
||
return false;
|
||
}
|
||
BOOL CC_TDBill::ProcessSocket(Socket_Head *pHead)
|
||
{
|
||
CString strTemp;
|
||
if ( pHead->lFuncType == SMSFUNC_YYSTAB )
|
||
{
|
||
ANS_YYSTab * pTab = (ANS_YYSTab *)pHead->pFrame;
|
||
ANS_YYSTabData * pData = (ANS_YYSTabData *)(pHead->pFrame+sizeof(ANS_YYSTab));
|
||
if ( pTab->bMS ) //²éѯÃ÷ϸÄÚÈÝ
|
||
{
|
||
m_wndList.ShowWindow(SW_HIDE); //¼Ó¿ìÏÔʾËÙ¶È
|
||
m_wndList.DeleteAllItems();
|
||
m_wndList.DeleteAllColumns();
|
||
m_wndList.SetHeadings(_T("ºÏ¼Æ,80; ÈÕ ÆÚ,90;106573400116,80;021299070181,80;1065710055,80;1065710012,80;55557997,80;106575587619,80;106573020143,80;106573020459,80;106571005000055,80;xxxxxx,80;1905988,80;106550201188,80;96995399,80;799950288,80;1065505706588,80;106551688964,80;xxxxxx,80;xxxxxx,80;11870201003,80;996995399,80;9895600248,80;021299070181,80;"));
|
||
TCHAR Buf[32];
|
||
CString strSmsNum;
|
||
long lCount=0;
|
||
long lAllCount[36]={0};
|
||
COleDateTime t;
|
||
long lDayCount=0; //µÚÌì·¢ËÍÁ¿»ã×Ü
|
||
long lDayAllCount=0; //ËùÓжÌÐÅÁ¿»ã×Ü
|
||
for ( int i=0;i<pTab->lCount;i++)
|
||
{
|
||
if ( t != COleDateTime(pData->tJSTime) )
|
||
{
|
||
lCount = m_wndList.GetItemCount();
|
||
//m_wndList.InsertItem( lCount , _itot(lCount+1,Buf,10),0); //ÐòºÅ
|
||
m_wndList.InsertItem( lCount , _itot(0,Buf,10),0); //µ±Ìì»ã×ÜÁ¿
|
||
strSmsNum.Format( _T("%04d.%02d.%02d") , pData->tJSTime.wYear,pData->tJSTime.wMonth,pData->tJSTime.wDay );
|
||
m_wndList.SetItemText(lCount,1,strSmsNum);
|
||
t = COleDateTime(pData->tJSTime);
|
||
|
||
if ( lCount>0 )
|
||
{
|
||
m_wndList.SetItemText(lCount-1,0,_itot(lDayCount,Buf,10));
|
||
}
|
||
lDayCount=0;;
|
||
}
|
||
lDayCount += pData->lSmsCount;
|
||
lDayAllCount += pData->lSmsCount;
|
||
switch( pData->lRecvNumType )
|
||
{
|
||
case 0:
|
||
#ifdef SMSCENTER_ADC
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
strSmsNum=_T("1065710050(±±¾©Òƶ¯ADC,0)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[2] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,2,strSmsNum );
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_TWO
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 203:
|
||
strSmsNum=_T("106571005000069(±±¾©Òƶ¯ADC,203)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[2] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,2,strSmsNum );
|
||
break;
|
||
case 112:
|
||
strSmsNum=_T("10657100120303(±±¾©Òƶ¯,112)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[3] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,3,strSmsNum );
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_ONE
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
//strSmsNum=_T("106573400116(¹ãÖÝÒÆ¶¯,0)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[2] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,2,strSmsNum );
|
||
break;
|
||
case 112:
|
||
//strSmsNum=_T("021299070181(ÉϺ£µçÐÅ,112)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[3] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,3,strSmsNum );
|
||
break;
|
||
case 2033:
|
||
//strSmsNum=_T("1065710050(±±¾©ADC,200)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[4] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,4,strSmsNum );
|
||
break;
|
||
case 204:
|
||
//strSmsNum=_T("1065710012(±±¾©Òƶ¯,204)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[5] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,5,strSmsNum );
|
||
break;
|
||
case 205:
|
||
//strSmsNum=_T("55557997(ÐÅÏ¢°ï¿Ë,205)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[6] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,6,strSmsNum );
|
||
break;
|
||
case 206:
|
||
//strSmsNum=_T("106575587619(¹ãÖÝÒÆ¶¯È«Íø,206)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[7] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,7,strSmsNum );
|
||
break;
|
||
case 207:
|
||
//strSmsNum=_T("106571005000055(±±¾©ADC,207)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[10] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,10,strSmsNum );
|
||
break;
|
||
case 1:
|
||
//strSmsNum=_T("106573020143(¹ãÖÝÒÆ¶¯Ê¡Íø,1)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[8] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,8,strSmsNum );
|
||
break;
|
||
case 2:
|
||
//strSmsNum=_T("106573020459(¹ãÖÝÒÆ¶¯Ê¡Íø,1)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[9] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,9,strSmsNum );
|
||
break;
|
||
}
|
||
#endif
|
||
|
||
break;
|
||
case 1:
|
||
#ifdef SMSCENTER_ADC
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 10:
|
||
strSmsNum=_T("106550201180(¹ãÖÝÁªÍ¨,10)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[5] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,5,strSmsNum );
|
||
break;
|
||
case 12:
|
||
strSmsNum=_T("10655057067775(½ð»ªÁªÍ¨,12)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[6] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,6,strSmsNum );
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_TWO
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 10:
|
||
strSmsNum=_T("106550201181(¹ã¶«ÁªÍ¨,10)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[6] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,6,strSmsNum );
|
||
break;
|
||
case 112:
|
||
strSmsNum=_T("10602566704198(±±¾©Ò×ͨ,112)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[8] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,8,strSmsNum );
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_ONE
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
//strSmsNum=_T("1905988(¹ã¶«ÁªÍ¨Ê¡Íø,0)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[12] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,12,strSmsNum );
|
||
break;
|
||
|
||
case 200:
|
||
//strSmsNum=_T("106550201188(¹ã¶«ÁªÍ¨È«Íø,200)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[13] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,13,strSmsNum );
|
||
break;
|
||
case 210:
|
||
//strSmsNum=_T("96995399(Telcom,210)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[14] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,14,strSmsNum );
|
||
break;
|
||
case 203:
|
||
//strSmsNum=_T("799950288(±±¾©Ò×ͨ,203)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[15] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,15,strSmsNum );
|
||
break;
|
||
case 224:
|
||
//strSmsNum=_T("1065505706588(Õã½ÁªÍ¨,224)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[16] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,16,strSmsNum );
|
||
break;
|
||
case 225:
|
||
//strSmsNum=_T("106551688964(±±¾©ÁªÍ¨,225)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[16] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,17,strSmsNum );
|
||
break;
|
||
}
|
||
#endif
|
||
break;
|
||
case 2:
|
||
#ifdef SMSCENTER_ADC
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 20:
|
||
strSmsNum=_T("021299070181(ÉϺ£µçÐÅ,20)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[9] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,9,strSmsNum );
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_TWO
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 112:
|
||
strSmsNum=_T("02566704198(±±¾©Ò×ͨ,112)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[13] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,13,strSmsNum );
|
||
break;
|
||
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_ONE
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
//strSmsNum=_T("11870201003(¹ãÖݵçÐÅ,0)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[20] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,20,strSmsNum );
|
||
break;
|
||
case 332:
|
||
//strSmsNum=_T("996995399(telcom,202)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[21] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,21,strSmsNum );
|
||
break;
|
||
case 300:
|
||
//strSmsNum=_T("9895600248(ÄϾ©Ïã¸ñÀïÀ,300)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[22] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,22,strSmsNum );
|
||
break;
|
||
case 334:
|
||
strSmsNum=_T("021299070181(ÉϺ£µçÐÅ,334)");
|
||
strSmsNum.Format(_T("%9d"),pData->lSmsCount);
|
||
lAllCount[23] += pData->lSmsCount;
|
||
m_wndList.SetItemText(lCount,23,strSmsNum );
|
||
break;
|
||
}
|
||
#endif
|
||
break;
|
||
}
|
||
pData++;
|
||
}
|
||
lCount = m_wndList.GetItemCount();
|
||
m_wndList.SetItemText( lCount-1 ,0,_itot(lDayCount,Buf,10)); //ºÏ¼Æ
|
||
m_wndList.InsertItem( lCount ,_itot(lDayAllCount,Buf,10) ,0); //ºÏ¼Æ
|
||
m_wndList.SetItemText(lCount,1, _T("ºÏ ¼Æ")); //ºÏ¼Æ
|
||
for ( i=2 ; i<24 ; i++ )
|
||
{
|
||
strSmsNum.Format( _T("%9d") , lAllCount[i] );
|
||
m_wndList.SetItemText( lCount,i, strSmsNum); //ºÏ¼Æ
|
||
}
|
||
m_wndList.ShowWindow(SW_SHOW); //¼Ó¿ìÏÔʾËÙ¶È
|
||
}
|
||
else
|
||
{
|
||
//²éѯ»ã×ÜÄÚÈÝ
|
||
m_wndList.ShowWindow(SW_HIDE); //¼Ó¿ìÏÔʾËÙ¶È
|
||
m_wndList.DeleteAllItems();
|
||
m_wndList.DeleteAllColumns();
|
||
m_wndList.SetHeadings(_T("ÐòºÅ,50; ÔËÓªÉÌÀàÐÍ,100;ÌØ·þºÅ,200;¶ÌÐÅÊýÁ¿,100;"));
|
||
TCHAR Buf[32];
|
||
CString strYYS;
|
||
CString strSmsNum;
|
||
long lCount;
|
||
long lSmsCount = 0;
|
||
for ( int i=0;i<pTab->lCount;i++)
|
||
{
|
||
lCount = m_wndList.GetItemCount();
|
||
m_wndList.InsertItem( lCount , _itot(i+1,Buf,10),0); //ÐòºÅ
|
||
strYYS = _T("δ֪");
|
||
strSmsNum.Format(_T("δ֪(%d,%d)"),pData->lRecvNumType,pData->lSendFCS);
|
||
|
||
switch( pData->lRecvNumType )
|
||
{
|
||
case 0:
|
||
strYYS = _T("ÖйúÒÆ¶¯");
|
||
#ifdef SMSCENTER_ADC
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
strSmsNum=_T("1065710050(±±¾©Òƶ¯ADC,0)");
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_TWO
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 203:
|
||
strSmsNum=_T("106571005000069(±±¾©Òƶ¯,203)");
|
||
break;
|
||
case 112:
|
||
strSmsNum=_T("10657100120(±±¾©Òƶ¯,112)");
|
||
break;
|
||
case 113:
|
||
strSmsNum=_T("106920009833(ÐÅÏ¢°ï¿Í,113)");
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_ONE
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
strSmsNum=_T("106573400116(¹ãÖÝÒÆ¶¯,0)");
|
||
break;
|
||
case 112:
|
||
strSmsNum=_T("021299070181(ÉϺ£µçÐÅ,112)");
|
||
break;
|
||
case 2033:
|
||
strSmsNum=_T("076088888888(ÖÐɽµçÐÅ,2033)");
|
||
break;
|
||
case 200:
|
||
strSmsNum=_T("1065710050(±±¾©ADC,200)");
|
||
break;
|
||
case 201:
|
||
strSmsNum=_T("075589666055(ÉîÛÚ¼ÎÓ®,201)");
|
||
break;
|
||
case 203:
|
||
strSmsNum=_T("106920020(±±¾©Òƶ¯,203)");
|
||
break;
|
||
case 204:
|
||
strSmsNum=_T("1065710012(±±¾©Òƶ¯,204)");
|
||
break;
|
||
case 205:
|
||
strSmsNum=_T("55557997(ÐÅÏ¢°ï¿Ë,205)");
|
||
break;
|
||
case 206:
|
||
strSmsNum=_T("106575587619(¹ãÖÝÒÆ¶¯È«Íø,206)");
|
||
break;
|
||
case 207:
|
||
strSmsNum=_T("106571005000055(±±¾©ADC,207)");
|
||
break;
|
||
case 2206:
|
||
strSmsNum=_T("0532(ÇàµºÍøÍ¨,2206)");
|
||
break;
|
||
case 2209:
|
||
strSmsNum=_T("10657(µã¶¯´«Ã½,2209)");
|
||
break;
|
||
case 22084:
|
||
strSmsNum=_T("025(ÄϾ©µçÐÅ,22084)");
|
||
break;
|
||
case 1:
|
||
strSmsNum=_T("106573020143(¹ãÖÝÒÆ¶¯Ê¡Íø,1)");
|
||
break;
|
||
case 2:
|
||
strSmsNum=_T("106573020459(¹ãÖÝÒÆ¶¯Ê¡Íø,2)");
|
||
break;
|
||
case 3:
|
||
strSmsNum=_T("106573010146(¶«Ý¸SJTX,3)");
|
||
break;
|
||
case 118:
|
||
strSmsNum=_T("62012193(±±¾©Òƶ¯,118)");
|
||
break;
|
||
case 119:
|
||
strSmsNum=_T("62012195(±±¾©Òƶ¯,119)");
|
||
break;
|
||
case 40:
|
||
strSmsNum=_T("106575550171221(ÌÆ×ÜMAS,40)");
|
||
break;
|
||
case 122:
|
||
strSmsNum=_T("10657532115738(¸£½¨MAS,122)");
|
||
break;
|
||
case 2211:
|
||
strSmsNum=_T("106575324006704(¸£½¨Òƶ¯,2211)");
|
||
break;
|
||
}
|
||
#endif
|
||
break;
|
||
case 1:
|
||
strYYS = _T("ÖйúÁªÍ¨");
|
||
#ifdef SMSCENTER_ADC
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 10:
|
||
strSmsNum=_T("106550201180(¹ãÖÝÁªÍ¨,10)");
|
||
break;
|
||
case 12:
|
||
strSmsNum=_T("10655057067775(½ð»ªÁªÍ¨,12)");
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_TWO
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
strSmsNum=_T("106550201181(¹ã¶«ÁªÍ¨,10)");
|
||
break;
|
||
case 112:
|
||
strSmsNum=_T("10602566704198(±±¾©Ò×ͨ,112)");
|
||
break;
|
||
case 113:
|
||
strSmsNum=_T("799915(ÐÅÏ¢°ï¿Í,113)");
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_ONE
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
strSmsNum=_T("1905988(¹ã¶«ÁªÍ¨Ê¡Íø,0)");
|
||
break;
|
||
case 200:
|
||
strSmsNum=_T("106550201188(¹ã¶«ÁªÍ¨È«Íø,200)");
|
||
break;
|
||
case 210:
|
||
strSmsNum=_T("96995399(Telcom,210)");
|
||
break;
|
||
case 203:
|
||
strSmsNum=_T("799950288(±±¾©Ò×ͨ,203)");
|
||
break;
|
||
case 224:
|
||
strSmsNum=_T("1065505706588(Õã½ÁªÍ¨,224)");
|
||
break;
|
||
case 225:
|
||
strSmsNum=_T("106551688964(±±¾©ÁªÍ¨,225)");
|
||
break;
|
||
case 212:
|
||
strSmsNum=_T("106550590508(±±¾©ÁªÍ¨,212)");
|
||
break;
|
||
}
|
||
#endif
|
||
break;
|
||
case 2:
|
||
strYYS = _T("СÁéͨ");
|
||
#ifdef SMSCENTER_ADC
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 20:
|
||
strSmsNum=_T("021299070181(ÉϺ£µçÐÅ,20)");
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_TWO
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 112:
|
||
strSmsNum=_T("02566704198(±±¾©Ò×ͨ,112)");
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_ONE
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 0:
|
||
strSmsNum=_T("11870201003(¹ãÖݵçÐÅ,0)");
|
||
break;
|
||
case 332:
|
||
strSmsNum=_T("053266633318(ÇàµºÍøÍ¨,332)");
|
||
break;
|
||
case 300:
|
||
strSmsNum=_T("9895600988(ÄϾ©Ïã¸ñÀïÀ,300)");
|
||
break;
|
||
case 334:
|
||
strSmsNum=_T("021299070181(ÉϺ£µçÐÅ,334)");
|
||
break;
|
||
}
|
||
#endif
|
||
break;
|
||
case 3:
|
||
strYYS = _T("µçÐÅ");
|
||
#ifdef SMSCENTER_ADC
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 300:
|
||
strSmsNum=_T("1065902001668(¹ã¶«µçÐÅ,30)");
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_TWO
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 300:
|
||
strSmsNum=_T("1065902001668(¹ã¶«µçÐÅ,30)");
|
||
break;
|
||
}
|
||
#endif
|
||
#ifdef SMSCENTER_ONE
|
||
switch( pData->lSendFCS )
|
||
{
|
||
case 300:
|
||
strSmsNum=_T("1065902001668(¹ã¶«µçÐÅ,300)");
|
||
break;
|
||
case 444:
|
||
strSmsNum=_T("10659020200011(ÇåÔ¶µçÐÅ,444)");
|
||
break;
|
||
}
|
||
#endif
|
||
break;
|
||
}
|
||
m_wndList.SetItemText( lCount ,1 , strYYS ); //ÀàÐÍ
|
||
m_wndList.SetItemText( lCount ,2 , strSmsNum); //ÊýÁ¿
|
||
m_wndList.SetItemText( lCount ,3 , _itot(pData->lSmsCount,Buf,10)); //ÊýÁ¿
|
||
lSmsCount += pData->lSmsCount;
|
||
pData++;
|
||
}
|
||
lCount = m_wndList.GetItemCount();
|
||
m_wndList.InsertItem( lCount , _T(""),0); //ºÏ¼Æ
|
||
m_wndList.SetItemText( lCount,1, _T("ºÏ ¼Æ")); //ºÏ¼Æ
|
||
m_wndList.SetItemText( lCount,3, _itot(lSmsCount,Buf,10)); //ºÏ¼Æ
|
||
m_wndList.ShowWindow(SW_SHOW); //¼Ó¿ìÏÔʾËÙ¶È
|
||
}
|
||
return true;
|
||
}
|
||
return false;
|
||
}
|
||
|
||
BOOL CC_TDBill::OnInitDialog()
|
||
{
|
||
CDialog::OnInitDialog();
|
||
|
||
//È¡µÃ¹²ÓòÎÊý
|
||
//CMainFrame * pFrame = static_cast <CMainFrame *>((CMainFrame *)AfxGetMainWnd());
|
||
this->GetParent()->GetParentFrame();
|
||
m_pMainFrame = (CMainFrame *)this->GetParent()->GetParentFrame();
|
||
m_pSocket = &m_pMainFrame->m_Socket;
|
||
|
||
//³õʼ»¯List
|
||
m_Image.Create(16,16,ILC_COLOR16|ILC_MASK,5,5);
|
||
// m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_TAB) );
|
||
m_wndList.SubClassWindow2();
|
||
m_wndList.SetHeadings(_T("ÐòºÅ,50;ÄÜÁ¦,60; ͨµÀÃû³Æ,150; ͨµÀºÅÂë,150;Íø¹ØÕ˺Å,120;¼Æ·ÑÁ¿,100;Ìá½»Á¿,100;·¢ËÍÁ¿,100;»ØÖ´³É¹¦,100;»ØÖ´Ê§°Ü,100;Ìá½»ÂÊ,100;ʧ°ÜÂÊ,100;"));
|
||
//m_wndList.SetHeadings(_T("ÐòºÅ,50; ÔËÓªÉÌÀàÐÍ,100;ÌØ·þºÅ,200;¶ÌÐÅÊýÁ¿,100;"));
|
||
m_wndList.SetGridLines(true);
|
||
m_wndList.SetImageList(&m_Image,LVSIL_SMALL);
|
||
|
||
m_bInit = true;
|
||
|
||
/*
|
||
//ĬÈÏÈ¡ÉÏÔµÄÄÚÈÝ
|
||
SYSTEMTIME t; ::GetLocalTime(&t);
|
||
t.wDay = 1;//´Ó1ºÅÆð
|
||
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 ); //Æðʼ
|
||
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 );//½áÊø
|
||
*/
|
||
|
||
COleDateTime t = COleDateTime::GetCurrentTime();
|
||
/*
|
||
#ifdef SMSCENTER_NX
|
||
COleDateTimeSpan tSpan2(1,0,0,0);
|
||
#else
|
||
COleDateTimeSpan tSpan2(3,0,0,0);
|
||
#endif
|
||
t = t-tSpan2;
|
||
*/
|
||
m_tBegin.SetDate( t.GetYear(),t.GetMonth(),1 ); //Æðʼ
|
||
m_tEnd.SetDate( t.GetYear(),t.GetMonth(),t.GetDay() );//½áÊø
|
||
|
||
UpdateData(false);
|
||
|
||
return TRUE; // return TRUE unless you set the focus to a control
|
||
// EXCEPTION: OCX Property Pages should return FALSE
|
||
}
|
||
|
||
void CC_TDBill::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 CC_TDBill::OnCTcQuery()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_LIST) )
|
||
{
|
||
return ;
|
||
}
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_MANAGER_SEE) )
|
||
{
|
||
return ;
|
||
}
|
||
|
||
UpdateData(true);
|
||
if ( m_tBegin>COleDateTime::GetCurrentTime() )
|
||
{
|
||
MessageBox( _T("²éѯÆðʼÈÕÆÚ²»ÄÜ´óÓÚµ±Ç°ÈÕÆÚ£¬Çë¸ÄÕý!") , _T("´íÎó") , MB_ICONWARNING );
|
||
return ;
|
||
}
|
||
if ( m_tEnd < m_tBegin )
|
||
{
|
||
MessageBox( _T("²éѯ½áÊøÈÕÆÚ²»ÄÜСÓÚÆðʼÈÕÆÚ£¬Çë¸ÄÕý!") , _T("´íÎó") , MB_ICONWARNING );
|
||
return ;
|
||
}
|
||
if ( m_bOld )
|
||
{
|
||
COleDateTime tNow = COleDateTime::GetCurrentTime();
|
||
COleDateTimeSpan tSpan2(3,0,0,0);
|
||
if ( tNow - m_tEnd < tSpan2 )
|
||
{
|
||
MessageBox( _T("ÒòΪ״̬±¨¸æ»Ø¸´Ê±¼äÓÐÑÓ³Ù£¬Õʵ¥Ö»Äܲéѯµ½Ç°ÈýÌ죡") ,_T("Ìáʾ"), MB_ICONWARNING);
|
||
return ;
|
||
}
|
||
REQ_YYSTab * pTab = new REQ_YYSTab;memset(pTab,0,sizeof(REQ_YYSTab));
|
||
m_tBegin.GetAsSystemTime( pTab->tBegin );
|
||
m_tEnd.GetAsSystemTime( pTab->tEnd );
|
||
pTab->bMS = m_bMS;
|
||
m_pMainFrame->SendFrame(SMSFUNC_YYSTAB,(BYTE*)pTab,sizeof(REQ_YYSTab));
|
||
}
|
||
else
|
||
{
|
||
REQ_TD2Bill * pTab = new REQ_TD2Bill;memset(pTab,0,sizeof(REQ_TD2Bill));
|
||
m_tBegin.GetAsSystemTime( pTab->tBegin );
|
||
m_tEnd.GetAsSystemTime( pTab->tEnd );
|
||
pTab->bMS = m_bMS;
|
||
pTab->lTD2ID = -1;
|
||
long lTDID=m_L_TD.GetItemData(m_L_TD.GetCurSel());
|
||
if ( lTDID >=0 )
|
||
{
|
||
POSITION pos = (POSITION)lTDID;
|
||
ANS_TD2NameData * pData = m_TD.GetNext( pos );
|
||
if (pData)
|
||
{
|
||
pTab->lTD2ID = pData->lTDID;
|
||
}
|
||
}
|
||
|
||
m_pMainFrame->SendFrame(SMSFUNC_TD2BILL,(BYTE*)pTab,sizeof(REQ_TD2Bill));
|
||
}
|
||
return ;
|
||
}
|
||
|
||
void CC_TDBill::OnRclickCTcList(NMHDR* pNMHDR, LRESULT* pResult)
|
||
{
|
||
*pResult = 0;
|
||
|
||
ShowRMenu();
|
||
}
|
||
|
||
void CC_TDBill::ShowRMenu()
|
||
{
|
||
if ( !m_pMainFrame->GetUserPurview(PURVIEW_MANAGER_SEE,false) )
|
||
{
|
||
return;
|
||
}
|
||
|
||
CMenu menu;
|
||
menu.CreatePopupMenu();
|
||
|
||
menu.AppendMenu(MF_STRING , MENU_TC_COPY, _T(" ¸´ÖÆÊý¾Ý ") );
|
||
|
||
//ÏÔʾ²Ëµ¥
|
||
POINT pt ;
|
||
::GetCursorPos( &pt );
|
||
//this->ClientToScreen( &pt);
|
||
menu.TrackPopupMenu(TPM_LEFTBUTTON | TPM_RIGHTBUTTON,pt.x,pt.y, this, NULL);
|
||
menu.DestroyMenu();
|
||
}
|
||
|
||
|
||
void CC_TDBill::On_User_Copy()
|
||
{
|
||
m_wndList.CopyToClipboard();
|
||
}
|