SmsManager/C_TDBill.cpp

962 lines
26 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 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();
}