// MainFrm.cpp : implementation of the CMainFrame class // #include "stdafx.h" #include "SmsManager.h" #include "MainFrm.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CMainFrame #include "DLG_Login.h" #include "SmsManagerDoc.h" #include "UserView.h" #include "DLG_Passwd.h" #include "DLG_Data_Back.h" #include "DLG_Dog_Create.h" #include "DLG_QZSmsTD.h" #include "DLG_BBS_See_CM.h" #include "DLG_CliSmsTD.h" #include "DLG_SOS.h" #include "DLG_WarningSetup.h" #include "DLG_ShowWarning.h" #include "DLG_WxWorkSetup.h" #pragma comment(lib, "winmm.lib") #include IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd) BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd) //{{AFX_MSG_MAP(CMainFrame) ON_WM_CREATE() ON_WM_TIMER() ON_COMMAND(ID_QUERY_JL, OnQueryJL) ON_COMMAND(ID_QUERY_JL_INPORTMMDCOUNT, OnQueryJL_InportMMDCount) ON_COMMAND(ID_MODIFY_PASSWD, OnModifyPasswd) ON_COMMAND(ID_WARNINGSETUP, OnWarningSetup) ON_COMMAND(ID_WXWORKSETUP, OnWxWorkSetup) ON_COMMAND(ID_BACK_DATA, OnBackData) ON_UPDATE_COMMAND_UI(ID_BACK_DATA, OnUpdateBackData) ON_COMMAND(ID_REBOOT, OnReboot) ON_UPDATE_COMMAND_UI(ID_REBOOT, OnUpdateReboot) ON_COMMAND(ID_DOG, OnDog) ON_UPDATE_COMMAND_UI(ID_DOG, OnUpdateDog) ON_COMMAND(ID_QZSMSTD, OnQzsmstd) ON_UPDATE_COMMAND_UI(ID_QZSMSTD, OnUpdateQzsmstd) ON_UPDATE_COMMAND_UI(ID_CLISMSTD, OnUpdateClismstd) ON_COMMAND(ID_CLISMSTD, OnClismstd) //}}AFX_MSG_MAP ON_MESSAGE(WM_OUTBAR_NOTIFY, OnOutbarNotify) ON_MESSAGE( PROCESSSOCKET_ERROR , ProcessSocket_Error ) ON_MESSAGE( PROCESSSOCKET_FRAME , ProcessSocket_Frame ) ON_MESSAGE(SHELL_ICON_MESS, OnShellIconMess) //定义任务栏消息的处理 END_MESSAGE_MAP() static UINT indicators[] = { ID_SEPARATOR, // status line indicator ID_INDICATOR_CAPS, ID_INDICATOR_NUM, ID_INDICATOR_SCRL, }; ///////////////////////////////////////////////////////////////////////////// // CMainFrame construction/destruction CMainFrame::CMainFrame() { m_pUserView = NULL; CreateNullSetup(); m_lCurFunc = 0; m_ulPurview = 0; m_lUserID = 0; m_bSOS = false; m_pDlgJL = NULL; //用于激励分析 } CMainFrame::~CMainFrame() { } int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CFrameWnd::OnCreate(lpCreateStruct) == -1) return -1; /* if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) || !m_wndToolBar.LoadToolBar(IDR_MAINFRAME)) { TRACE0(_T("Failed to create toolbar\n")); return -1; // fail to create } */ if (!m_wndStatusBar.Create(this) || !m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT))) { TRACE(_T("Failed to create status bar\n")); return -1; // fail to create } #if defined(SMSMANAGER_KF) || defined(SMSCENTER_NX) //客服管理系统,有些要删除 CMenu* mmenu = GetMenu(); if ( mmenu ) { CMenu* submenu = mmenu->GetSubMenu(0); if ( submenu ) { submenu->DeleteMenu(ID_BACK_DATA, MF_BYCOMMAND); submenu->DeleteMenu(ID_QZSMSTD, MF_BYCOMMAND); submenu->DeleteMenu(ID_CLISMSTD, MF_BYCOMMAND); submenu->DeleteMenu(ID_REBOOT, MF_BYCOMMAND); submenu->DeleteMenu(ID_DOG, MF_BYCOMMAND); //submenu->DeleteMenu(ID_QUERY_JL, MF_BYCOMMAND); //submenu->DeleteMenu(ID_QUERY_JL_INPORTMMDCOUNT, MF_BYCOMMAND); #ifdef SMSCENTER_NX submenu->DeleteMenu(ID_WARNINGSETUP, MF_BYCOMMAND); submenu->DeleteMenu(ID_WXWORKSETUP, MF_BYCOMMAND); #endif } submenu = mmenu->GetSubMenu(2); if (submenu) { //submenu->DeleteMenu(ID_QUERY_JL, MF_BYCOMMAND); //submenu->DeleteMenu(ID_QUERY_JL_INPORTMMDCOUNT, MF_BYCOMMAND); } } #endif #if !defined(SMSCENTER_ONE) { CMenu* mmenu = GetMenu(); if (mmenu) { CMenu* submenu = mmenu->GetSubMenu(2); if (submenu) { submenu->DeleteMenu(ID_QUERY_JL, MF_BYCOMMAND); submenu->DeleteMenu(ID_QUERY_JL_INPORTMMDCOUNT, MF_BYCOMMAND); } } } #endif //有命令行参数,自动启动 TCHAR szCmd[ 256 ]={0}; _stprintf( szCmd , ::AfxGetApp()->m_lpCmdLine ); if (szCmd[0]!=0 && !_tcscmp(szCmd,_T("/SOS")) ) { this->m_bSOS=true; } // TODO: Delete these three lines if you don't want the toolbar to // be dockable // m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY); EnableDocking(CBRS_ALIGN_ANY); // DockControlBar(&m_wndToolBar); //取得UserView m_pUserView = (CUserView*)m_wndSplitter.GetPane( 0,1 ); //读入参数 ReadSetup(); //登录 SetTimer( 1 , 500 , NULL ); return 0; } BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs) { if( !CFrameWnd::PreCreateWindow(cs) ) return FALSE; // TODO: Modify the Window class or styles here by modifying // the CREATESTRUCT cs return TRUE; } ///////////////////////////////////////////////////////////////////////////// // CMainFrame diagnostics #ifdef _DEBUG void CMainFrame::AssertValid() const { CFrameWnd::AssertValid(); } void CMainFrame::Dump(CDumpContext& dc) const { CFrameWnd::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CMainFrame message handlers BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) { if (!m_wndSplitter.CreateStatic(this, 1, 2)) return false; if (!m_wndSplitter.CreateView(0, 1, pContext->m_pNewViewClass, CSize(0,0), pContext)) return false; DWORD dwf = //CGfxOutBarCtrl::fDragItems| //CGfxOutBarCtrl::fEditGroups| //CGfxOutBarCtrl::fEditItems| //CGfxOutBarCtrl::fRemoveGroups| //CGfxOutBarCtrl::fRemoveItems| //CGfxOutBarCtrl::fAddGroups| CGfxOutBarCtrl::fAnimation; m_wndBar.Create(WS_CHILD|WS_VISIBLE, CRect(0,0,0,0), &m_wndSplitter, m_wndSplitter.IdFromRowCol(0, 0), dwf); m_wndBar.SetOwner(this); BOOL b = m_imaLarge.Create(32,32,ILC_COLOR16|ILC_MASK,5,5); m_imaSmall.Create(16,16,ILC_COLOR16|ILC_MASK,5,5); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_INFO) ); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_MANAGER )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_CORP )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_SP )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_SP )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_FILT )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_CHECKUP )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_TAB )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_HZB )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_LIST )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_BACK )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_OTHER )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_AGENT )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_KHCARD )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_CJCARD )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_SWTSQ )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_BBS )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_WHITE )); m_imaLarge.Add(AfxGetApp()->LoadIcon(IDI_L_TDSET)); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_INFO )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_MANAGER )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_CORP )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_SP )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_SP )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_FILT )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_CHECKUP )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_TAB )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_HZB )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_LIST )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_BACK )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_OTHER )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_AGENT )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_KHCARD )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_CJCARD )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_SWTSQ )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_BBS )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_WHITE )); m_imaSmall.Add(AfxGetApp()->LoadIcon(IDI_L_TDSET)); m_wndBar.SetImageList(&m_imaLarge, CGfxOutBarCtrl::fLargeIcon); m_wndBar.SetImageList(&m_imaSmall, CGfxOutBarCtrl::fSmallIcon); m_wndBar.SetAnimationTickCount(10); m_wndBar.SetAnimSelHighlight(200); //Blue Sky加入的控制 m_wndBar.SetIfQueryRemove(true); long lIndex = 0; #if defined(SMSCENTER_ONE) || defined(SMSCENTER_TWO) || defined(SMSCENTER_THREE) ||defined(SMSCENTER_ADC) #ifdef SMSMANAGER_KF m_wndBar.AddFolder(_T("功能选择"), 0); lIndex = 0; m_wndBar.InsertItem(0, lIndex++, FUNC_CHECKUPC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CHECKUPMMSC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SMSTASKC , 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_MMSTASKC , 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TEMPLATEC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SIGNNAMEC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CORPC, 2, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_AGENTC , 12, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_LISTC , 9, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_LISTMMSC , 9, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_BACKC , 10, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_WHITEC , 17, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TDSET2C , 18, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_BBSC , 16, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_BBSAC , 16, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CMC , 16, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CORPSMSBC , 16, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SWTSQC , 15, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SENDLISTC , 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_MSGLISTC , 9, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_PAYC , 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_MMSPAYC , 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_AGENTPAYC , 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_AGENTMMSPAYC , 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_FUNCPAYC , 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_MONPAYC, 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_COMMENDC , 16, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_ALLQUERY_REPORTC, 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TDSET_SIGNATUREC, 18, 0); //m_wndBar.InsertItem(0, lIndex++, FUNC_SFQUERYC, 15, 0); #else m_wndBar.AddFolder(_T("功能选择"), 0); m_wndBar.AddFolder(_T("帐务管理"), 1); m_wndBar.AddFolder(_T("卡类管理"), 2); lIndex = 0; m_wndBar.InsertItem(0, lIndex++, FUNC_INFOC, 0, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_MANAGERC, 1, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_GROUPC, 1, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_YWYC, 1, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_KFC, 1, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CORPC, 2, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SPC, 3, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TSCMDC, 4, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_FILTC, 5, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CHECKUPC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CHECKUPMMSC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SMSTASKC , 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_MMSTASKC , 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TEMPLATEC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SIGNNAMEC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_BACKC , 10, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_WHITEC , 17, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TDSET2C, 18, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TDSET_SIGNATUREC, 18, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_PARTNERC, 1, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TDSETC , 11, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_OTHERC , 11, 0); lIndex = 0; m_wndBar.InsertItem(1, lIndex++, FUNC_TABC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_HZBC , 8, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_PAYC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_MMSPAYC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_AGENTPAYC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_AGENTMMSPAYC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_FUNCPAYC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_MONPAYC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_YYSPAYC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_TDBILLC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_JCBC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_LISTC , 9, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_LISTMMSC , 9, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_SENDLISTC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_DZC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_MSGLISTC , 9, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_DBBC , 7, 0); #ifdef SMSCENTER_ONE m_wndBar.InsertItem(1, lIndex++, FUNC_GZMSGC , 7, 0); #endif #ifdef SMSCENTER_ADC m_wndBar.InsertItem(1, lIndex++, FUNC_HTC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_AGENTCJC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_CMCCCJC , 7, 0); #endif m_wndBar.InsertItem(1, lIndex++, FUNC_PAYTOUSERC , 7, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_FPQUERYC, 8, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_SFQUERYC, 15, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_ALLQUERY_CLIENTC, 2, 0); m_wndBar.InsertItem(1, lIndex++, FUNC_ALLQUERY_REPORTC, 7, 0); lIndex = 0; m_wndBar.InsertItem(2, lIndex++, FUNC_AGENTC , 12, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_KHCARDC, 13, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_CJCARDC, 14, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_SWTSQC , 15, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_BBSC , 16, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_BBSAC , 16, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_CMC , 16, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_BBSSC , 16, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_CORPSMSBC , 16, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_YWMSGC , 9, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_COMMENDC , 16, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_FAXNUMC , 16, 0); m_wndBar.InsertItem(2, lIndex++, FUNC_DATATJERRC , 16, 0); #endif #endif #if defined(SMSCENTER_NX) || defined(SMSCENTER_TZY) #ifdef SMSMANAGER_KF m_wndBar.AddFolder(_T("功能选择"), 0); lIndex = 0; m_wndBar.InsertItem(0, lIndex++, FUNC_INFOC, 0, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CORPC, 2, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_CHECKUPC, 6, 0); //m_wndBar.InsertItem(0, lIndex++, FUNC_CHECKUPMMSC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SMSTASKC , 6, 0); //m_wndBar.InsertItem(0, lIndex++, FUNC_MMSTASKC , 6, 0); //m_wndBar.InsertItem(0, lIndex++, FUNC_TEMPLATEC, 6, 0); //m_wndBar.InsertItem(0, lIndex++, FUNC_SIGNNAMEC, 6, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_BACKC , 10, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_BBSC , 16, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_SENDLISTC , 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_MSGLISTC , 9, 0); #else m_wndBar.AddFolder(_T("功能选择"), 0); long lTempItem=0; m_wndBar.InsertItem(0, lTempItem++, FUNC_INFOC, 0, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_MANAGERC, 1, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_CORPC, 2, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_CHECKUPC, 6, 0); //m_wndBar.InsertItem(0, lTempItem++, FUNC_CHECKUPMMSC, 6, 0); //m_wndBar.InsertItem(0, lTempItem++, FUNC_SMSTASKC , 6, 0); //m_wndBar.InsertItem(0, lTempItem++, FUNC_MMSTASKC , 6, 0); //m_wndBar.InsertItem(0, lTempItem++, FUNC_TEMPLATEC, 6, 0); //m_wndBar.InsertItem(0, lIndex++, FUNC_SIGNNAMEC, 6, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_BACKC , 10, 0); #ifdef SMSCENTER_GDYD_ADC m_wndBar.InsertItem(0, lTempItem++, FUNC_WHITEC , 17, 0); #endif m_wndBar.InsertItem(0, lTempItem++, FUNC_LISTC , 9, 0); //m_wndBar.InsertItem(0, lTempItem++, FUNC_LISTMMSC , 9, 0); // m_wndBar.InsertItem(0, lTempItem++, FUNC_SENDLISTC , 7, 0); // m_wndBar.InsertItem(0, lTempItem++, FUNC_MSGLISTC , 9, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_TABC , 7, 0); #ifdef SMSCENTER_GDDX m_wndBar.InsertItem(0, lTempItem++, FUNC_PAYC , 7, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_AGENTPAYC , 7, 0); #endif m_wndBar.InsertItem(0, lTempItem++, FUNC_TDBILLC , 7, 0); // m_wndBar.InsertItem(0, lTempItem++, FUNC_BBSC , 16, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_FILTC, 5, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_TDSETC , 11, 0); #if defined(SMSCENTER_NX) && (!defined(SMSCENTER_GDDX) && !defined(SMSCENTER_GDYD_ADC) && !defined(SMSCENTER_DGSB)) m_wndBar.InsertItem(0, lTempItem++, FUNC_TRANSCODESETC , 11, 0); m_wndBar.InsertItem(0, lTempItem++, FUNC_NOSENDTIMESETC , 11, 0); #endif m_wndBar.InsertItem(0, lTempItem++, FUNC_OTHERC, 11, 0); #ifdef SMSCENTER_GDDX m_wndBar.InsertItem(0, lTempItem++, FUNC_AGENTC , 12, 0); #endif #endif #endif m_wndBar.SetSelFolder(0); m_wndBar.SetSelItem(0); m_wndBar.SetSmallIconView(true); m_wndBar.ShowWindow(SW_HIDE); CRect r; GetClientRect(&r); int w1 = r.Width()/5; int w2 = r.Width()/4; m_wndSplitter.SetColumnInfo( 0, w1, 0 ); m_wndSplitter.SetColumnInfo( 1, w2, 0 ); m_wndSplitter.RecalcLayout(); return true; } LRESULT CMainFrame::OnOutbarNotify(WPARAM wParam, LPARAM lParam) { switch (wParam) { case NM_OB_ITEMCLICK: { int index = (int)lParam; TCHAR szSelText[32]; _tcscpy( szSelText , m_wndBar.GetItemText(index) ); if ( !_tcscmp( szSelText , FUNC_INFOC ) ) { ShowFuncDlg( FUNC_INFO ); return 1; } if ( !_tcscmp( szSelText , FUNC_MANAGERC ) ) { ShowFuncDlg( FUNC_MANAGER ); return 1; } if ( !_tcscmp( szSelText , FUNC_GROUPC ) ) { ShowFuncDlg( FUNC_GROUP ); return 1; } if ( !_tcscmp( szSelText , FUNC_YWYC ) ) { ShowFuncDlg( FUNC_YWY ); return 1; } if ( !_tcscmp( szSelText , FUNC_CORPC ) ) { ShowFuncDlg( FUNC_USER ); return 1; } if ( !_tcscmp( szSelText , FUNC_SPC ) ) { ShowFuncDlg( FUNC_SP ); return 1; } if ( !_tcscmp( szSelText , FUNC_TSCMDC ) ) { ShowFuncDlg( FUNC_TSCMD ); return 1; } if ( !_tcscmp( szSelText , FUNC_FILTC ) ) { ShowFuncDlg( FUNC_FILT ); return 1; } if ( !_tcscmp( szSelText , FUNC_CHECKUPC ) ) { ShowFuncDlg( FUNC_CHECKUP ); return 1; } if ( !_tcscmp( szSelText , FUNC_CHECKUPMMSC ) ) { ShowFuncDlg( FUNC_CHECKUPMMS ); return 1; } if ( !_tcscmp( szSelText , FUNC_TABC ) ) { ShowFuncDlg( FUNC_TAB ); return 1; } if ( !_tcscmp( szSelText , FUNC_PAYC ) ) { ShowFuncDlg( FUNC_PAY ); return 1; } if ( !_tcscmp( szSelText , FUNC_MMSPAYC ) ) { ShowFuncDlg( FUNC_MMSPAY ); return 1; } if ( !_tcscmp( szSelText , FUNC_AGENTPAYC ) ) { ShowFuncDlg( FUNC_AGENTPAY ); return 1; } if ( !_tcscmp( szSelText , FUNC_AGENTMMSPAYC ) ) { ShowFuncDlg( FUNC_AGENTMMSPAY ); return 1; } if ( !_tcscmp( szSelText , FUNC_FUNCPAYC ) ) { ShowFuncDlg( FUNC_FUNCPAY ); return 1; } if ( !_tcscmp( szSelText , FUNC_TDBILLC ) ) { ShowFuncDlg( FUNC_TDBILL ); return 1; } if ( !_tcscmp( szSelText , FUNC_JCBC ) ) { ShowFuncDlg( FUNC_JCB ); return 1; } if ( !_tcscmp( szSelText , FUNC_HZBC ) ) { ShowFuncDlg( FUNC_HZB ); return 1; } if ( !_tcscmp( szSelText , FUNC_LISTC ) ) { ShowFuncDlg( FUNC_LIST ); return 1; } if ( !_tcscmp( szSelText , FUNC_LISTMMSC ) ) { ShowFuncDlg( FUNC_LISTMMS ); return 1; } if ( !_tcscmp( szSelText , FUNC_BACKC ) ) { ShowFuncDlg( FUNC_BACK ); return 1; } if ( !_tcscmp( szSelText , FUNC_WHITEC ) ) { ShowFuncDlg( FUNC_WHITE ); return 1; } if (!_tcscmp(szSelText, FUNC_TDSET2C)) { ShowFuncDlg(FUNC_TDSET2); return 1; } if ( !_tcscmp( szSelText , FUNC_OTHERC ) ) { ShowFuncDlg( FUNC_OTHER ); return 1; } if ( !_tcscmp( szSelText , FUNC_AGENTC ) ) { ShowFuncDlg( FUNC_AGENT ); return 1; } if ( !_tcscmp( szSelText , FUNC_KHCARDC ) ) { ShowFuncDlg( FUNC_KHCARD ); return 1; } if ( !_tcscmp( szSelText , FUNC_CJCARDC ) ) { ShowFuncDlg( FUNC_CJCARD ); return 1; } if ( !_tcscmp( szSelText , FUNC_SWTSQC ) ) { ShowFuncDlg( FUNC_SWTSQ ); return 1; } if ( !_tcscmp( szSelText , FUNC_BBSC ) ) { ShowFuncDlg( FUNC_BBS ); return 1; } if ( !_tcscmp( szSelText , FUNC_BBSAC ) ) { ShowFuncDlg( FUNC_BBSA ); return 1; } if ( !_tcscmp( szSelText , FUNC_CMC ) ) { ShowFuncDlg( FUNC_CM ); return 1; } if ( !_tcscmp( szSelText , FUNC_BBSSC ) ) { ShowFuncDlg( FUNC_BBSS ); return 1; } if ( !_tcscmp( szSelText , FUNC_CORPSMSBC ) ) { ShowFuncDlg( FUNC_CORPSMSB ); return 1; } if ( !_tcscmp( szSelText , FUNC_SENDLISTC ) ) { ShowFuncDlg( FUNC_SENDLIST ); return 1; } if ( !_tcscmp( szSelText , FUNC_DZC ) ) { ShowFuncDlg( FUNC_DZ ); return 1; } if ( !_tcscmp( szSelText , FUNC_MSGLISTC ) ) { ShowFuncDlg(FUNC_MSGLIST); return 1; } if ( !_tcscmp( szSelText , FUNC_DBBC ) ) { ShowFuncDlg(FUNC_DBB); return 1; } if ( !_tcscmp( szSelText , FUNC_HTC ) ) { ShowFuncDlg(FUNC_HT); return 1; } if ( !_tcscmp( szSelText , FUNC_AGENTCJC ) ) { ShowFuncDlg(FUNC_AGENTCJ); return 1; } if ( !_tcscmp( szSelText , FUNC_KFC ) ) { ShowFuncDlg( FUNC_KF ); return 1; } if ( !_tcscmp( szSelText , FUNC_YWMSGC ) ) { ShowFuncDlg( FUNC_YWMSG ); return 1; } if ( !_tcscmp( szSelText , FUNC_CMCCCJC ) ) { ShowFuncDlg(FUNC_CMCCCJ); return 1; } if ( !_tcscmp( szSelText , FUNC_GZMSGC ) ) { ShowFuncDlg(FUNC_GZMSG); return 1; } if ( !_tcscmp( szSelText , FUNC_PAYTOUSERC ) ) { ShowFuncDlg(FUNC_PAYTOUSER); return 1; } if ( !_tcscmp( szSelText , FUNC_MONPAYC ) ) { ShowFuncDlg(FUNC_MONPAY); return 1; } if ( !_tcscmp( szSelText , FUNC_YYSPAYC ) ) { ShowFuncDlg(FUNC_YYSPAY); return 1; } if ( !_tcscmp( szSelText , FUNC_PARTNERC ) ) { ShowFuncDlg(FUNC_PARTNER); return 1; } if ( !_tcscmp( szSelText , FUNC_COMMENDC ) ) { ShowFuncDlg(FUNC_COMMEND); return 1; } if ( !_tcscmp( szSelText , FUNC_FAXNUMC ) ) { ShowFuncDlg(FUNC_FAXNUM); return 1; } if ( !_tcscmp( szSelText , FUNC_TDSETC ) ) { ShowFuncDlg(FUNC_TDSET); return 1; } if ( !_tcscmp( szSelText , FUNC_TRANSCODESETC ) ) { ShowFuncDlg(FUNC_TRANSCODESET); return 1; } if ( !_tcscmp( szSelText , FUNC_NOSENDTIMESETC ) ) { ShowFuncDlg(FUNC_NOSENDTIMESET); return 1; } if ( !_tcscmp( szSelText , FUNC_SMSTASKC ) ) { ShowFuncDlg(FUNC_SMSTASK); return 1; } if ( !_tcscmp( szSelText , FUNC_MMSTASKC ) ) { ShowFuncDlg(FUNC_MMSTASK); return 1; } if (!_tcscmp(szSelText, FUNC_TEMPLATEC)) { ShowFuncDlg(FUNC_TEMPLATE); return 1; } if (!_tcscmp(szSelText, FUNC_SIGNNAMEC)) { ShowFuncDlg(FUNC_SIGNNAME); return 1; } if ( !_tcscmp( szSelText , FUNC_DATATJERRC ) ) { ShowFuncDlg(FUNC_DATATJERR); return 1; } if (!_tcscmp(szSelText, FUNC_SFQUERYC)) { ShowFuncDlg(FUNC_SFQUERY); return 1; } if (!_tcscmp(szSelText, FUNC_FPQUERYC)) { ShowFuncDlg(FUNC_FPQUERY); return 1; } if (!_tcscmp(szSelText, FUNC_ALLQUERY_CLIENTC)) { ShowFuncDlg(FUNC_ALLQUERY_CLIENT); return 1; } if (!_tcscmp(szSelText, FUNC_ALLQUERY_REPORTC)) { ShowFuncDlg(FUNC_ALLQUERY_REPORT); return 1; } if (!_tcscmp(szSelText, FUNC_TDSET_SIGNATUREC)) { ShowFuncDlg(FUNC_TDSET_SIGNATURE); return 1; } } return 0; } return 0; } LRESULT CMainFrame::ProcessSocket_Error( WPARAM wParam , LPARAM lParam ) { return 1; } LRESULT CMainFrame::ProcessSocket_Frame( WPARAM wParam , LPARAM lParam ) { KillTimer( 3 ); //成功收到,超时检测失效 SetStatMsg( _T("成功接收到服务器返回!") ); Socket_Head * pHead = (Socket_Head *)wParam; switch( pHead->lFuncType ) { case SMSFUNC_PASSWD: case SMSFUNC_DATABACK: case SMSFUNC_REBOOT: case SMSFUNC_QZSMSTD_SEE: case SMSFUNC_QZSMSTD: case SMSFUNC_CORPOFF: case SMSFUNC_CLOSECLIENT2: case SMSFUNC_CORP_GETCM: case SMSFUNC_CLISMSTD: case SMSFUNC_CORP_BZ_ADD: ProcessSocket(pHead); break; case SMSFUNC_CORP_OPER_ADD: if (m_lCurFunc == FUNC_USER) m_pUserView->m_dlgUser.ProcessSocket(pHead); if (m_lCurFunc == FUNC_AGENT) m_pUserView->m_dlgAgent.ProcessSocket(pHead); break; case SMSFUNC_GETINFO: case SMSFUNC_CLOSECLIENT: case SMSFUNC_SQLCONNECT: case SMSFUNC_GETTD: m_pUserView->m_dlgInfo.ProcessSocket(pHead); break; case SMSFUNC_TEST: break; case SMSFUNC_GETMANAGER: case SMSFUNC_MANAGER_MODIFY: case SMSFUNC_MANAGER_ADD: case SMSFUNC_MANAGER_DEL: m_pUserView->m_dlgManager.ProcessSocket(pHead); break; case SMSFUNC_GETYWY: case SMSFUNC_YWY_MODIFY: case SMSFUNC_YWY_ADD: case SMSFUNC_YWY_DEL: m_pUserView->m_dlgYWY.ProcessSocket(pHead); break; case SMSFUNC_YWYGROUP_NAME: m_pUserView->m_dlgYWY.ProcessSocket(pHead); break; case SMSFUNC_GETYWYGROUP: case SMSFUNC_YWYGROUP_MODIFY: case SMSFUNC_YWYGROUP_ADD: case SMSFUNC_YWYGROUP_DEL: m_pUserView->m_dlgGroup.ProcessSocket(pHead); break; case SMSFUNC_GETKF: case SMSFUNC_KF_MODIFY: case SMSFUNC_KF_ADD: case SMSFUNC_KF_DEL: m_pUserView->m_dlgKF.ProcessSocket(pHead); break; case SMSFUNC_CORP_SEE: case SMSFUNC_CORP_SEE2: case SMSFUNC_CORP_MODIFY: case SMSFUNC_CORP_ADD: case SMSFUNC_CORP_DEL: case SMSFUNC_CORP_PAY: case SMSFUNC_CORP_PAYMODIFY: case SMSFUNC_CORP_FUNCPAY: case SMSFUNC_CORP_FUNCPAYMODIFY: case SMSFUNC_CORP_USER: case SMSFUNC_CORP_USERMODIFY: case SMSFUNC_CORP_SENDBILLNOW: case SMSFUNC_CORP_HSSMS: case SMSFUNC_CORP_TS: case SMSFUNC_CORP_QXTSETUP: m_pUserView->m_dlgUser.ProcessSocket(pHead); break; case SMSFUNC_CORP_SENDSMSNOW: if ( m_lCurFunc == FUNC_USER ) m_pUserView->m_dlgUser.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_AGENT ) m_pUserView->m_dlgAgent.ProcessSocket(pHead); break; case SMSFUNC_CORP_LXR: case SMSFUNC_CORP_LXRMODIFY: if ( m_lCurFunc == FUNC_USER ) m_pUserView->m_dlgUser.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_AGENT) m_pUserView->m_dlgAgent.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_PAY) m_pUserView->m_dlgPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_AGENTPAY) m_pUserView->m_dlgAgentPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_FUNCPAY) m_pUserView->m_dlgFuncPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_MONPAY) m_pUserView->m_dlgMonPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_MMSPAY) m_pUserView->m_dlgMmsPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_AGENTMMSPAY) m_pUserView->m_dlgAgentMmsPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_YYSPAY) m_pUserView->m_dlgYYSPay.ProcessSocket(pHead); break; case SMSFUNC_FILT_SEE: case SMSFUNC_FILT_ADD: case SMSFUNC_FILT_MODIFY: case SMSFUNC_FILT2_SEE: case SMSFUNC_FILT2_ADD: case SMSFUNC_FILT2_MODIFY: case SMSFUNC_FILT_DEL: m_pUserView->m_dlgFilt.ProcessSocket(pHead); break; case SMSFUNC_CHECKUP_SEE: case SMSFUNC_CHECKUP: m_pUserView->m_dlgCheckup.ProcessSocket(pHead); case SMSFUNC_CORP_NAME: if ( m_lCurFunc == FUNC_USER ) { m_pUserView->m_dlgUser.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_TAB) { m_pUserView->m_dlgTab.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_PAY) { m_pUserView->m_dlgPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_MMSPAY) { m_pUserView->m_dlgMmsPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_FUNCPAY) { m_pUserView->m_dlgFuncPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_MONPAY) { m_pUserView->m_dlgMonPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_YYSPAY) { m_pUserView->m_dlgYYSPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_JCB) { m_pUserView->m_dlgJCB.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_LIST) { m_pUserView->m_dlgList.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_LISTMMS) { m_pUserView->m_dlgListMms.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_HZB) { m_pUserView->m_dlgHZB.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_OTHER) { m_pUserView->m_dlgOther.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_BACK) { m_pUserView->m_dlgBack.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_WHITE) { m_pUserView->m_dlgWhite.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_DBB) { m_pUserView->m_dlgDBB.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_COMMEND) { m_pUserView->m_dlgCommend.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_FAXNUM) { m_pUserView->m_dlgFaxNum.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_SMSTASK) { m_pUserView->m_dlgSmsTask.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_MMSTASK) { m_pUserView->m_dlgMmsTask.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_TEMPLATE) { m_pUserView->m_dlgTemplate.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_SIGNNAME) { m_pUserView->m_dlgSignName.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_DATATJERR) { m_pUserView->m_dlgDataTJErr.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_SFQUERY) { m_pUserView->m_dlgSFQuery.ProcessSocket(pHead); } //if (m_lCurFunc == FUNC_SFQUERY) //{ // m_pUserView->m_dlgSFQuery.ProcessSocket(pHead); //} if (m_lCurFunc == FUNC_TDSET2) { m_pUserView->m_dlgTDSet2.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_FPQUERY) { m_pUserView->m_dlgFPQuery.ProcessSocket(pHead); } break; case SMSFUNC_AGENT_NAME: if ( m_lCurFunc == FUNC_USER) { m_pUserView->m_dlgUser.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_KHCARD) { m_pUserView->m_dlgKHCard.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_CJCARD) { m_pUserView->m_dlgCJCard.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_PAY) { m_pUserView->m_dlgPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_MMSPAY) { m_pUserView->m_dlgMmsPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_AGENTPAY) { m_pUserView->m_dlgAgentPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_AGENTMMSPAY) { m_pUserView->m_dlgAgentMmsPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_FUNCPAY) { m_pUserView->m_dlgFuncPay.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_MONPAY) { m_pUserView->m_dlgMonPay.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_YYSPAY) { m_pUserView->m_dlgYYSPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_BBS) { m_pUserView->m_dlgBBS.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_HT) { m_pUserView->m_dlgHT.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_AGENTCJ) { m_pUserView->m_dlgAgentCJ.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_TAB) { m_pUserView->m_dlgTab.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_YWY) { m_pUserView->m_dlgYWY.ProcessSocket(pHead); } break; case SMSFUNC_YWY_NAME: if ( m_lCurFunc == FUNC_USER) { m_pUserView->m_dlgUser.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_PAY) { m_pUserView->m_dlgPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_MMSPAY) { m_pUserView->m_dlgMmsPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_AGENT) { m_pUserView->m_dlgAgent.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_AGENTPAY) { m_pUserView->m_dlgAgentPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_AGENTMMSPAY) { m_pUserView->m_dlgAgentMmsPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_FUNCPAY) { m_pUserView->m_dlgFuncPay.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_MONPAY) { m_pUserView->m_dlgMonPay.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_YYSPAY) { m_pUserView->m_dlgYYSPay.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_TDBILL) { m_pUserView->m_dlgTDBill.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_BBS) { m_pUserView->m_dlgBBS.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_CM) { m_pUserView->m_dlgCM.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_BBSA) { m_pUserView->m_dlgBBSA.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_YWMSG) { m_pUserView->m_dlgYWMsg.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_GZMSG) { m_pUserView->m_dlgGZMsg.ProcessSocket(pHead); } if ( m_lCurFunc == FUNC_COMMEND) { m_pUserView->m_dlgCommend.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_ALLQUERY_REPORT) { m_pUserView->m_dlgAllQuery_Report.ProcessSocket(pHead); } if (m_lCurFunc == FUNC_TDSET_SIGNATURE) { m_pUserView->m_dlgTDSet_Signature.ProcessSocket(pHead); } break; case SMSFUNC_TAB: case SMSFUNC_ADCHTHS: m_pUserView->m_dlgTab.ProcessSocket(pHead); break; case SMSFUNC_PAY_SEE: case SMSFUNC_PAY_SETADCSTATUS: case SMSFUNC_PAY_SETADCAGENTTC: m_pUserView->m_dlgPay.ProcessSocket(pHead); break; case SMSFUNC_FUNCPAY_SEE: m_pUserView->m_dlgFuncPay.ProcessSocket(pHead); break; case SMSFUNC_JCB_SEE: m_pUserView->m_dlgJCB.ProcessSocket(pHead); break; case SMSFUNC_LIST: m_pUserView->m_dlgList.ProcessSocket(pHead); break; case SMSFUNC_BACK_ADD: if ( m_lCurFunc == FUNC_LIST) m_pUserView->m_dlgList.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_LISTMMS) m_pUserView->m_dlgListMms.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_BACK) m_pUserView->m_dlgBack.ProcessSocket(pHead); break; case SMSFUNC_BACK: case SMSFUNC_BACK_DEL: m_pUserView->m_dlgBack.ProcessSocket(pHead); break; case SMSFUNC_WHITE: case SMSFUNC_WHITE_ADD: case SMSFUNC_WHITE_DEL: m_pUserView->m_dlgWhite.ProcessSocket(pHead); break; case SMSFUNC_SUCCEED: case SMSFUNC_SMSLOG: case SMSFUNC_REPORTNUM_SEE: case SMSFUNC_REPORTNUM_ADD: case SMSFUNC_REPORTNUM_MODIFY: case SMSFUNC_REPORTNUM_DEL: case SMSFUNC_OTHERTEXT_SEE: case SMSFUNC_OTHERTEXT: case SMSFUNC_OTHERGIF_SEE: case SMSFUNC_OTHERGIF: case SMSFUNC_OTHEROVER_SEE: case SMSFUNC_OTHEROVER: case SMSFUNC_OTHERAUTOSEND_SEE: case SMSFUNC_OTHERAUTOSEND: case SMSFUNC_QUERYLL: m_pUserView->m_dlgOther.ProcessSocket(pHead); break; case SMSFUNC_SP_SEE: case SMSFUNC_SP_ADD: case SMSFUNC_SP_MODIFY: case SMSFUNC_SP_DEL: m_pUserView->m_dlgSP.ProcessSocket(pHead); break; case SMSFUNC_TSCMD_SEE: case SMSFUNC_TSCMD_ADD: case SMSFUNC_TSCMD_MODIFY: case SMSFUNC_TSCMD_DEL: m_pUserView->m_dlgTSCmd.ProcessSocket(pHead); break; case SMSFUNC_AGENT_SEE: case SMSFUNC_AGENT_SEE3: case SMSFUNC_AGENT_ADD: case SMSFUNC_AGENT_MODIFY: case SMSFUNC_AGENT_DEL: case SMSFUNC_AGENT_PAY: case SMSFUNC_AGENT_PAYMODIFY: m_pUserView->m_dlgAgent.ProcessSocket(pHead); break; case SMSFUNC_KHCARD_ADD: case SMSFUNC_KHCARD_SEE: case SMSFUNC_KHCARD_AGENT: case SMSFUNC_KHCARD_PRO: m_pUserView->m_dlgKHCard.ProcessSocket(pHead); break; case SMSFUNC_CJCARD_ADD: case SMSFUNC_CJCARD_SEE: case SMSFUNC_CJCARD_AGENT: m_pUserView->m_dlgCJCard.ProcessSocket(pHead); break; case SMSFUNC_SWT_SEE: case SMSFUNC_SWT_MODIFY: m_pUserView->m_dlgSWTSQ.ProcessSocket(pHead); break; case SMSFUNC_BBS_SEE: case SMSFUNC_BBS_SEND: case SMSFUNC_BBS_DEL: if ( m_lCurFunc == FUNC_BBS) m_pUserView->m_dlgBBS.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_BBSA) m_pUserView->m_dlgBBSA.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_CM) m_pUserView->m_dlgCM.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_BBSS) m_pUserView->m_dlgBBSS.ProcessSocket(pHead); break; case SMSFUNC_BBS_CMSH: m_pUserView->m_dlgCM.ProcessSocket(pHead); break; case SMSFUNC_HZB: m_pUserView->m_dlgHZB.ProcessSocket(pHead); break; case SMSFUNC_AGENTPAY_SEE: m_pUserView->m_dlgAgentPay.ProcessSocket(pHead); break; case SMSFUNC_YYSTAB: m_pUserView->m_dlgTDBill.ProcessSocket(pHead); break; case SMSFUNC_CORPSMSB_SEE: case SMSFUNC_CORPSMSB_SH: m_pUserView->m_dlgCorpSmsB.ProcessSocket(pHead); break; case SMSFUNC_SENDLIST_SEE: case SMSFUNC_SENDLIST_ADD: m_pUserView->m_dlgListSend.ProcessSocket(pHead); break; case SMSFUNC_CORP_PAY_YS: if ( m_lCurFunc == FUNC_PAY) m_pUserView->m_dlgPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_MMSPAY) m_pUserView->m_dlgMmsPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_AGENTPAY) m_pUserView->m_dlgAgentPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_AGENTMMSPAY) m_pUserView->m_dlgAgentMmsPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_FUNCPAY) m_pUserView->m_dlgFuncPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_MONPAY) m_pUserView->m_dlgMonPay.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_YYSPAY) m_pUserView->m_dlgYYSPay.ProcessSocket(pHead); break; case SMSFUNC_DZTAB: m_pUserView->m_dlgDZ.ProcessSocket(pHead); break; case SMSFUNC_MSGLIST: m_pUserView->m_dlgMsgList.ProcessSocket(pHead); break; case SMSFUNC_DBB: m_pUserView->m_dlgDBB.ProcessSocket(pHead); break; case SMSFUNC_CORP_BZ_SEE: case SMSFUNC_CORP_OPER_SEE: if ( m_lCurFunc == FUNC_USER ) m_pUserView->m_dlgUser.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_AGENT ) m_pUserView->m_dlgAgent.ProcessSocket(pHead); break; case SMSFUNC_HT_ADD: case SMSFUNC_HT_SEE: case SMSFUNC_HT_OUT: case SMSFUNC_HT_DEL: m_pUserView->m_dlgHT.ProcessSocket(pHead); break; case SMSFUNC_AGENT_CJ: case SMSFUNC_AGENT_TC: case SMSFUNC_AGENT_CJFF: m_pUserView->m_dlgAgentCJ.ProcessSocket(pHead); break; case SMSFUNC_CMCC_CJ: case SMSFUNC_CMCC_TC: case SMSFUNC_CMCC_CJFF: m_pUserView->m_dlgCmccCJ.ProcessSocket(pHead); break; case SMSFUNC_KF_NAME: if ( m_lCurFunc == FUNC_YWY ) m_pUserView->m_dlgYWY.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_USER) m_pUserView->m_dlgUser.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_YWMSG) { m_pUserView->m_dlgYWMsg.ProcessSocket(pHead); } break; case SMSFUNC_YWMSG: m_pUserView->m_dlgYWMsg.ProcessSocket(pHead); break; case SMSFUNC_GZMSG: m_pUserView->m_dlgGZMsg.ProcessSocket(pHead); break; case SMSFUNC_PAYTOUSER_SEE: case SMSFUNC_PAYTOUSER_SET: m_pUserView->m_dlgPayToUser.ProcessSocket(pHead); break; case SMSFUNC_CORP_MONPAY: m_pUserView->m_dlgMonPay.ProcessSocket(pHead); break; case SMSFUNC_CORP_YYSPAY: m_pUserView->m_dlgYYSPay.ProcessSocket(pHead); break; case SMSFUNC_CORP_FILE: if ( m_lCurFunc == FUNC_USER) m_pUserView->m_dlgUser.ProcessSocket(pHead); if ( m_lCurFunc == FUNC_AGENT) m_pUserView->m_dlgAgent.ProcessSocket(pHead); if (m_lCurFunc == FUNC_SIGNNAME) m_pUserView->m_dlgSignName.ProcessSocket(pHead); break; case SMSFUNC_EX: default: #ifdef _UNICODE unsigned int lFuncType2 = pHead->lFuncType; //以下为了兼容原来>256的程序 Socket_Head_Add HeadAdd={0}; HeadAdd.lFuncType = lFuncType2; HeadAdd.lFrameLen = pHead->lFrameLen; Socket_Head_Add * pHeadAdd = &HeadAdd; long lSizeOfHeadAdd = 0; #else Socket_Head_Add * pHeadAdd = (Socket_Head_Add *)(pHead->pFrame); unsigned int lFuncType2 = pHeadAdd->lFuncType; long lSizeOfHeadAdd = sizeof(Socket_Head_Add); #endif switch (lFuncType2) { case SMSFUNC_GETPARTNER: case SMSFUNC_PARTNER_MODIFY: case SMSFUNC_PARTNER_DEL: case SMSFUNC_PARTNER_ADD: m_pUserView->m_dlgPartner.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_PARTNER_NAME: if (m_lCurFunc == FUNC_USER) m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_GETCOMMEND: case SMSFUNC_COMMEND_STATUS: case SMSFUNC_COMMEND_GETVIPINT: m_pUserView->m_dlgCommend.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_FAXNUM_GET: case SMSFUNC_FAXNUM_SET: m_pUserView->m_dlgFaxNum.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_MMSPRO: case SMSFUNC_MMS_PAY: case SMSFUNC_MMS_PAYMODIFY: case SMSFUNC_WORKPRO: case SMSFUNC_QQTPRO: case SMSFUNC_CORP_USER2: case SMSFUNC_CORP_USERMODIFY2: m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_MMSPAY_SEE: m_pUserView->m_dlgMmsPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_CHECKUPMMS_SEE: case SMSFUNC_CHECKUPMMS_SEE2: case SMSFUNC_CHECKUPMMS: m_pUserView->m_dlgCheckupMms.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_MMS_GETFILE: case SMSFUNC_MMS_GETFILE2: if (m_lCurFunc == FUNC_CHECKUPMMS) m_pUserView->m_dlgCheckupMms.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_LISTMMS) m_pUserView->m_dlgListMms.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_LISTMMS: m_pUserView->m_dlgListMms.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_MYSQLAPI: m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_GETTD2: case SMSFUNC_TD2_ADD: case SMSFUNC_TD2_MODIFY: case SMSFUNC_TD2_DEL: m_pUserView->m_dlgTDSet.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_GETTRANSCODE: case SMSFUNC_TRANSCODE_ADD: case SMSFUNC_TRANSCODE_MODIFY: case SMSFUNC_TRANSCODE_DEL: m_pUserView->m_dlgTransCodeSet.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_GETNOSENDTIME: case SMSFUNC_NOSENDTIME_ADD: case SMSFUNC_NOSENDTIME_MODIFY: case SMSFUNC_NOSENDTIME_DEL: m_pUserView->m_dlgNoSendTimeSet.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_PLTASKSMS_SEE: case SMSFUNC_PLTASKSMS_MODIFY: case SMSFUNC_PLTASKSMS_DEL: case SMSFUNC_PLTASKSMS_PLMODIFY: m_pUserView->m_dlgSmsTask.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_PLTASKMMS_SEE: case SMSFUNC_PLTASKMMS_MODIFY: case SMSFUNC_PLTASKMMS_DEL: m_pUserView->m_dlgMmsTask.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_TEMPLATE_SEE: case SMSFUNC_TEMPLATE_ADD: case SMSFUNC_TEMPLATE_MODIFY: case SMSFUNC_TEMPLATE_DEL: m_pUserView->m_dlgTemplate.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_SIGNNAME_SEE: case SMSFUNC_SIGNNAME_ADD: case SMSFUNC_SIGNNAME_MODIFY: case SMSFUNC_SIGNNAME_DEL: m_pUserView->m_dlgSignName.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_DATATJERR_GET: case SMSFUNC_DATATJERR_PROCESS: m_pUserView->m_dlgDataTJErr.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_TD2NAME: case SMSFUNC_TD2BILL: m_pUserView->m_dlgTDBill.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_BILL4: m_pUserView->m_dlgTab.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_AGENT_MMSPAY: case SMSFUNC_AGENT_MMSPAYMODIFY: m_pUserView->m_dlgAgent.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_AGENTMMSPAY_SEE: m_pUserView->m_dlgAgentMmsPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_CORP_HLH: m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_YWY_YS: case SMSFUNC_YWY_YSREFRESH: case SMSFUNC_YWY_ANALYSE: m_pUserView->m_dlgYWY.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_SOS: case SMSFUNC_WXWORK_SEE: case SMSFUNC_WXWORK_SETUP: ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_CORP_FP: case SMSFUNC_CORP_FPMODIFY: if (m_lCurFunc == FUNC_USER) m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_AGENT) m_pUserView->m_dlgAgent.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_PAY) m_pUserView->m_dlgPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_AGENTPAY) m_pUserView->m_dlgAgentPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_FUNCPAY) m_pUserView->m_dlgFuncPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_MONPAY) m_pUserView->m_dlgMonPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_MMSPAY) m_pUserView->m_dlgMmsPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_AGENTMMSPAY) m_pUserView->m_dlgAgentMmsPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_YYSPAY) m_pUserView->m_dlgYYSPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_CORP_SF_ADD: case SMSFUNC_CORP_SF_CANCEL: case SMSFUNC_CORP_SF_ROUTE: case SMSFUNC_CORP_SF_SEE: case SMSFUNC_CORP_ANALYSE: if (m_lCurFunc == FUNC_USER) m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_AGENT) m_pUserView->m_dlgAgent.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_PAY) m_pUserView->m_dlgPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_AGENTPAY) m_pUserView->m_dlgAgentPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_FUNCPAY) m_pUserView->m_dlgFuncPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_MONPAY) m_pUserView->m_dlgMonPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_MMSPAY) m_pUserView->m_dlgMmsPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_AGENTMMSPAY) m_pUserView->m_dlgAgentMmsPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_YYSPAY) m_pUserView->m_dlgYYSPay.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_SFQUERY) m_pUserView->m_dlgSFQuery.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_TDSET_SEE: case SMSFUNC_TDSET_INS: case SMSFUNC_TDSET_MODIFY: case SMSFUNC_TDSET_DEL: m_pUserView->m_dlgTDSet2.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_GZMSG_JL: case SMSFUNC_GZMSG_JL_PARA: case SMSFUNC_GZMSG_JL_MMDCOUNT: if (m_lCurFunc == FUNC_GZMSG) { m_pUserView->m_dlgGZMsg.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); } else { ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); } break; case SMSFUNC_FPQUERY: m_pUserView->m_dlgFPQuery.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_ALLQUERY_CLIENT_SEE: m_pUserView->m_dlgAllQuery_Client.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_ALLQUERY_REPORT_SEE: case SMSFUNC_ALLQUERY_REPORT_GET: case SMSFUNC_PAY_OPER_ADD: m_pUserView->m_dlgAllQuery_Report.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_CORP_ASSIST_EXPIRY: case SMSFUNC_CORP_ASSIST_GETCORP: case SMSFUNC_CORP_ASSIST_TRANSFER: case SMSFUNC_CORP_ASSIST_EXPIRYRECYCLING: case SMSFUNC_CORP_ASSIST_EXPIRYRECYCLING_GET: if (m_lCurFunc == FUNC_USER) m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); if (m_lCurFunc == FUNC_AGENT) m_pUserView->m_dlgAgent.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_OTHERAUTOSEND2_SEE: case SMSFUNC_OTHERAUTOSEND2: m_pUserView->m_dlgOther.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_CORP_ASSIST_RETURNQUANTITY_GET: case SMSFUNC_CORP_ASSIST_RETURNQUANTITY: case SMSFUNC_CORP_CUSTOMSETTINGS_GET: case SMSFUNC_CORP_CUSTOMSETTINGS: m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; case SMSFUNC_TD2SIGNATURE_SEE: case SMSFUNC_TD2SIGNATURETITLE_SEE: case SMSFUNC_TD2SIGNATURE_MODIFY: case SMSFUNC_TD2SIGNATURE_MODIFYSTATUS: case SMSFUNC_TD2SIGNATURE_UPLOAD: case SMSFUNC_TD2SIGNATURE_GETMAXSMSNUM: m_pUserView->m_dlgTDSet_Signature.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; } break; } //需要删除 delete pHead->pFrame; delete pHead; return 1; } void CMainFrame::OnTimer(UINT_PTR nIDEvent) { CFrameWnd::OnTimer(nIDEvent); //登录 if ( nIDEvent == 1 ) { KillTimer( 1 ); DLG_Login dlg(this); dlg.m_Setup = m_Setup; dlg.m_pSocket = &m_Socket; if ( dlg.DoModal() == IDOK ) { m_wndBar.ShowWindow(SW_SHOW); m_Setup = dlg.m_Setup; SaveSetup(); m_Socket.SetParent( this ); //改变通知窗口 m_ulPurview = dlg.m_ulPurview; m_lUserID = dlg.m_lUserID; if ( dlg.m_bSOS ) m_bSOS = true; if ( m_bSOS ) { CString str; this->GetWindowText(str); str = str+ _T(" !!!"); this->SetWindowText(str); } if ( GetUserPurview( PURVIEW_INFO_SEE ,false) ) m_pUserView->m_dlgInfo.RefreshInfo(); //刷新信息 this->SetTimer( 2 , RECVREFRESH_TIMEOUT , NULL ); #ifdef SMSMANAGER_KF //如果没有查询清单权限,认为此用户为值班人员,有些功能不能使用 if ( !GetUserPurview(PURVIEW_TAB,false) ) { m_wndBar.RemoveItem(FUNC_COMMENDC); m_wndBar.RemoveItem(FUNC_SENDLISTC); } //如果不是开票专员,有些功能不能用 if ( !GetUserPurview(PURVIEW_SP,false) ) //为开发票专员 { m_wndBar.RemoveItem(FUNC_MONPAYC); m_wndBar.RemoveItem(FUNC_FUNCPAYC); m_wndBar.RemoveItem(FUNC_AGENTMMSPAYC); m_wndBar.RemoveItem(FUNC_AGENTPAYC); m_wndBar.RemoveItem(FUNC_MMSPAYC); m_wndBar.RemoveItem(FUNC_PAYC); m_wndBar.RemoveItem(FUNC_ALLQUERY_CLIENTC); m_wndBar.RemoveItem(FUNC_ALLQUERY_REPORTC); //m_wndBar.RemoveItem(FUNC_SFQUERYC); } //如果没有查询清单权限,认为此用户为值班人员,有些功能不能使用 if ( !GetUserPurview(PURVIEW_TAB,false) ) { m_wndBar.RemoveItem(FUNC_MSGLISTC); m_wndBar.RemoveItem(FUNC_SENDLISTC); m_wndBar.RemoveItem(FUNC_SWTSQC); m_wndBar.RemoveItem(FUNC_CORPSMSBC); m_wndBar.RemoveItem(FUNC_CMC); m_wndBar.RemoveItem(FUNC_BBSAC); m_wndBar.RemoveItem(FUNC_BBSC); m_wndBar.RemoveItem(FUNC_WHITEC); m_wndBar.RemoveItem(FUNC_TDSET_SIGNATUREC); } if (!GetUserPurview(PURVIEW_LIST, false)) { m_wndBar.RemoveItem(FUNC_LISTMMSC); m_wndBar.RemoveItem(FUNC_LISTC); m_wndBar.RemoveItem(FUNC_BACKC); m_wndBar.RemoveItem(FUNC_TDSET2C); m_wndBar.RemoveItem(FUNC_TDSET_SIGNATUREC); CMenu* mmenu = GetMenu(); if (mmenu) { CMenu* submenu = mmenu->GetSubMenu(2); if (submenu) { submenu->DeleteMenu(ID_QUERY_JL, MF_BYCOMMAND); submenu->DeleteMenu(ID_QUERY_JL_INPORTMMDCOUNT, MF_BYCOMMAND); } } } /* if ( GetUserPurview(PURVIEW_SP,false) ) //为开发票专员 { m_wndBar.RemoveItem(FUNC_CORPC); m_wndBar.RemoveItem(FUNC_SMSTASKC); m_wndBar.RemoveItem(FUNC_CHECKUPC); } */ #endif #ifdef SMSCENTER_NX //农信版本,根据不同权限划分客服与查帐两个版本 if ( !GetUserPurview(PURVIEW_MANAGER_ADD,false) && !GetUserPurview(PURVIEW_MANAGER_DEL,false) ) //客服 { if ( !GetUserPurview(PURVIEW_MANAGER_RESETPASSWD,false) ) //最小权限 { m_wndBar.RemoveItem(19); m_wndBar.RemoveItem(18); m_wndBar.RemoveItem(17); m_wndBar.RemoveItem(16); m_wndBar.RemoveItem(15); m_wndBar.RemoveItem(14); m_wndBar.RemoveItem(13); m_wndBar.RemoveItem(12); m_wndBar.RemoveItem(11); m_wndBar.RemoveItem(10); //m_wndBar.RemoveItem(9); //m_wndBar.RemoveItem(8); m_wndBar.RemoveItem(7); m_wndBar.RemoveItem(6); m_wndBar.RemoveItem(5); m_wndBar.RemoveItem(4); m_wndBar.RemoveItem(3); m_wndBar.RemoveItem(2); m_wndBar.RemoveItem(1); m_wndBar.RemoveItem(0); } else { //m_wndBar.RemoveItem(19); m_wndBar.RemoveItem(18); m_wndBar.RemoveItem(17); m_wndBar.RemoveItem(16); m_wndBar.RemoveItem(15); m_wndBar.RemoveItem(14); m_wndBar.RemoveItem(13); m_wndBar.RemoveItem(12); m_wndBar.RemoveItem(11); m_wndBar.RemoveItem(10); //m_wndBar.RemoveItem(9); //m_wndBar.RemoveItem(8); m_wndBar.RemoveItem(7); m_wndBar.RemoveItem(2); m_wndBar.RemoveItem(1); } } if ( !GetUserPurview(PURVIEW_MANAGER_ADD,false) && GetUserPurview(PURVIEW_MANAGER_DEL,false) ) //查账 { //m_wndBar.RemoveItem(19); m_wndBar.RemoveItem(18); m_wndBar.RemoveItem(17); m_wndBar.RemoveItem(16); m_wndBar.RemoveItem(15); m_wndBar.RemoveItem(14); m_wndBar.RemoveItem(12); m_wndBar.RemoveItem(11); m_wndBar.RemoveItem(10); //m_wndBar.RemoveItem(5); m_wndBar.RemoveItem(1); } #endif if ( m_bSOS ) //紧急模式下,移除很多内容 { m_wndBar.RemoveItem(FUNC_INFOC); m_wndBar.RemoveItem(FUNC_MANAGERC); m_wndBar.RemoveItem(FUNC_YWYC); m_wndBar.RemoveItem(FUNC_SPC); m_wndBar.RemoveItem(FUNC_FILTC); m_wndBar.RemoveItem(FUNC_TABC); m_wndBar.RemoveItem(FUNC_HZBC); m_wndBar.RemoveItem(FUNC_BACKC); m_wndBar.RemoveItem(FUNC_WHITEC); m_wndBar.RemoveItem(FUNC_TDSET2C); m_wndBar.RemoveItem(FUNC_OTHERC); m_wndBar.RemoveItem(FUNC_TSCMDC); m_wndBar.RemoveItem(FUNC_KHCARDC); m_wndBar.RemoveItem(FUNC_CJCARDC); m_wndBar.RemoveItem(FUNC_SWTSQC); m_wndBar.RemoveItem(FUNC_BBSC); m_wndBar.RemoveItem(FUNC_JCBC); m_wndBar.RemoveItem(FUNC_TDBILLC); m_wndBar.RemoveItem(FUNC_BBSAC); m_wndBar.RemoveItem(FUNC_CMC); m_wndBar.RemoveItem(FUNC_BBSSC); m_wndBar.RemoveItem(FUNC_CORPSMSBC); m_wndBar.RemoveItem(FUNC_SENDLISTC); m_wndBar.RemoveItem(FUNC_FUNCPAYC); m_wndBar.RemoveItem(FUNC_DZC); m_wndBar.RemoveItem(FUNC_MSGLISTC); m_wndBar.RemoveItem(FUNC_DBBC); m_wndBar.RemoveItem(FUNC_HTC); m_wndBar.RemoveItem(FUNC_AGENTCJC); m_wndBar.RemoveItem(FUNC_KFC); m_wndBar.RemoveItem(FUNC_YWMSGC); m_wndBar.RemoveItem(FUNC_CMCCCJC); m_wndBar.RemoveItem(FUNC_GROUPC); m_wndBar.RemoveItem(FUNC_GZMSGC); m_wndBar.RemoveItem(FUNC_PAYTOUSERC); m_wndBar.RemoveItem(FUNC_MONPAYC); m_wndBar.RemoveItem(FUNC_YYSPAYC); m_wndBar.RemoveItem(FUNC_PARTNERC); m_wndBar.RemoveItem(FUNC_COMMENDC); m_wndBar.RemoveItem(FUNC_FAXNUMC); m_wndBar.RemoveItem(FUNC_MMSPAYC); m_wndBar.RemoveItem(FUNC_TDSETC); m_wndBar.RemoveItem(FUNC_TRANSCODESETC); m_wndBar.RemoveItem(FUNC_NOSENDTIMESETC); m_wndBar.RemoveItem(FUNC_DATATJERRC); m_wndBar.RemoveItem(FUNC_AGENTMMSPAYC); m_wndBar.RemoveItem(FUNC_SMSTASKC); m_wndBar.RemoveItem(FUNC_MMSTASKC); m_wndBar.RemoveItem(FUNC_TEMPLATEC); m_wndBar.RemoveItem(FUNC_SIGNNAMEC); m_wndBar.RemoveItem(FUNC_PAYC); m_wndBar.RemoveItem(FUNC_MMSPAYC); m_wndBar.RemoveItem(FUNC_AGENTPAYC); m_wndBar.RemoveItem(FUNC_AGENTC); m_wndBar.RemoveItem(FUNC_FPQUERYC); m_wndBar.RemoveItem(FUNC_SFQUERYC); m_wndBar.RemoveItem(FUNC_ALLQUERY_CLIENTC); m_wndBar.RemoveItem(FUNC_ALLQUERY_REPORTC); m_wndBar.bIsQueryRemove=false; #ifdef SMSMANAGER_KF m_wndBar.SetSelItem(0); ShowFuncDlg( FUNC_CHECKUP ); #else m_wndBar.RemoveFolder(2); m_wndBar.RemoveFolder(1); m_wndBar.SetSelItem(0); ShowFuncDlg( FUNC_USER ); #endif } #if defined(SMSCENTER_GDDX) || defined(SMSCENTER_GDYD_ADC) m_wndBar.RemoveItem(FUNC_TRANSCODESETC); m_wndBar.RemoveItem(FUNC_NOSENDTIMESETC); #endif CString strTitle; this->GetWindowText(strTitle); strTitle =CString(_T("【")) + CString(m_Setup.szIP) + CString(_T("】 ")) + strTitle; this->SetWindowText(strTitle); } else { this->OnClose(); } //用于审核提醒 if (m_Setup.Warning_Enable && m_Setup.Warning_Timer>0 && m_Setup.Warning_OnlyContent) //需刷新数据 { //this->m_pUserView->m_dlgCheckup.RefreshInfo(); //this->m_pUserView->m_dlgSmsTask.RefreshInfo(); this->m_pUserView->m_dlgCheckup.SetTimer(10, 2000, NULL); //2秒后刷新数据 this->m_pUserView->m_dlgSmsTask.SetTimer(10, 5000, NULL); //5秒后刷新数据 } return ; } if ( nIDEvent == 2 ) { /* if ( m_lCurFunc == FUNC_HZB || m_lCurFunc == FUNC_LIST || m_lCurFunc == FUNC_TAB || m_lCurFunc == FUNC_JCB || m_lCurFunc == FUNC_OTHER || m_lCurFunc == FUNC_PAY || m_lCurFunc == FUNC_USER || m_lCurFunc == FUNC_OTHER) { return ; } */ /* REQ_Test * pTest = new REQ_Test; pTest->lTemp = ::GetTickCount(); SendFrame( SMSFUNC_TEST , (BYTE*)pTest , sizeof(REQ_Test) ); */ //刷新服务器登录信息 m_pUserView->m_dlgInfo.RefreshInfo(); //刷新信息 return ; } //超时检测 if ( nIDEvent == 3 ) { KillTimer( 3 ); if ( m_lCurFunc == FUNC_HZB || m_lCurFunc == FUNC_LIST || m_lCurFunc == FUNC_TAB || m_lCurFunc == FUNC_JCB || m_lCurFunc == FUNC_OTHER || m_lCurFunc == FUNC_PAY || m_lCurFunc == FUNC_MMSPAY || m_lCurFunc == FUNC_USER || m_lCurFunc == FUNC_GZMSG || m_lCurFunc == FUNC_MSGLIST || m_lCurFunc == FUNC_OTHER) { return ; } SetStatMsg( _T("网络超时,正在重连...") ); m_Socket.Close(); m_Socket.ConnectToServer( m_Setup , true ); //发送测试指令 REQ_Test * pTest = new REQ_Test; pTest->lTemp = ::GetTickCount(); SendFrame( SMSFUNC_TEST , (BYTE*)pTest , sizeof(REQ_Test) ); return ; } } void CMainFrame::ReadSetup() { TCHAR szName[512]={0}; SM_Setup setup={0}; GetCurrentPath(szName); CString strAddName = _T("SmsManager.dat"); #ifdef SMSCENTER_TWO strAddName = _T("SmsManager2.dat"); #endif #ifdef SMSCENTER_THREE strAddName = _T("SmsManager3.dat"); #endif #ifdef SMSCENTER_ADC strAddName = _T("SmsManagerA.dat") #endif _tcscat( szName , strAddName ); CFile file; if (!file.Open(szName , CFile::modeRead) ) { CreateNullSetup(); return ; } if (file.Read(&setup,sizeof(setup)) != sizeof(setup)) { CreateNullSetup(); file.Close(); return ; } //解密码 m_Setup = setup; char szUser[32]={0}; char szPasswd[64]={0}; char szPasswd2[64]={0}; #ifdef _UNICODE strcpy(szUser , CW2A(m_Setup.szUser) ); strcpy(szPasswd , CW2A(setup.szProxyPasswd)); #else strcpy(szUser , m_Setup.szUser ); strcpy(szPasswd , setup.szProxyPasswd); #endif CDes des; long lOut=sizeof(szPasswd2); des.Decrypt( szPasswd , strlen(szPasswd) , szPasswd2 , lOut , szUser , 8 ); #ifdef _UNICODE _tcscpy(m_Setup.szProxyPasswd , CA2W(szPasswd2)); #else strcpy(m_Setup.szProxyPasswd , szPasswd2); #endif memset( m_Setup.szPasswd , 0 , sizeof(m_Setup.szPasswd) ); file.Close(); return ; } void CMainFrame::SaveSetup() { TCHAR szName[512]={0}; GetCurrentPath(szName); CString strAddName = _T("SmsManager.dat"); #ifdef SMSCENTER_TWO strAddName = _T("SmsManager2.dat"); #endif #ifdef SMSCENTER_THREE strAddName = _T("SmsManager3.dat"); #endif #ifdef SMSCENTER_ADC strAddName = _T("SmsManagerA.dat") #endif _tcscat( szName , strAddName ); CFile file; if (!file.Open(szName , CFile::modeCreate|CFile::modeWrite) ) { return ; } //加密码 SM_Setup setup = m_Setup; char szUser[32]={0}; char szPasswd[64]={0}; char szPasswd2[64]={0}; long lOut = sizeof(szPasswd2); CDes des; #ifdef _UNICODE strcpy(szUser , CW2A(m_Setup.szUser)); strcpy(szPasswd , CW2A(m_Setup.szPasswd)); #else strcpy(szUser , m_Setup.szUser); strcpy(szPasswd , m_Setup.szPasswd); #endif des.Encrypt( szPasswd , strlen(szPasswd) , szPasswd2 , lOut , szUser , 8 ); #ifdef _UNICODE _tcscpy(setup.szPasswd , CA2W(szPasswd2)); #else strcpy(setup.szPasswd , szPasswd2); #endif lOut = sizeof(szPasswd2); memset(szPasswd2 , 0 , sizeof(szPasswd2)); #ifdef _UNICODE strcpy(szPasswd , CW2A(m_Setup.szProxyPasswd)); #else strcpy(szPasswd , m_Setup.szProxyPasswd); #endif des.Encrypt( szPasswd , strlen(szPasswd) , szPasswd2 , lOut , szUser , 8 ); #ifdef _UNICODE _tcscpy(setup.szProxyPasswd , CA2W(szPasswd2)); #else strcpy(setup.szProxyPasswd , szPasswd2); #endif memset( setup.szPasswd , 0 , sizeof(setup.szPasswd) ); //不保存密码 file.Write(&setup , sizeof(setup) ); file.Close(); } void CMainFrame::CreateNullSetup() { memset(&m_Setup,0,sizeof(m_Setup)); _tcscpy(m_Setup.szIP,DEFAULT_SERVER); #ifdef SMSCENTER_TWO _tcscpy(m_Setup.szIP,DEFAULT_SERVER2); #endif #ifdef SMSCENTER_THREE _tcscpy(m_Setup.szIP,DEFAULT_SERVER3); #endif #ifdef SMSCENTER_ADC _tcscpy(m_Setup.szIP,DEFAULT_SERVERA); #endif #ifdef SMSCENTER_NX _tcscpy(m_Setup.szIP,DEFAULT_SERVERNX); #endif #ifdef SMSCENTER_GDDX _tcscpy(m_Setup.szIP,DEFAULT_SERVERGDDX); #endif #ifdef SMSCENTER_GDYD_ADC _tcscpy(m_Setup.szIP,DEFAULT_SERVERGDYD_ADC); #endif #ifdef SMSCENTER_DGSB _tcscpy(m_Setup.szIP,DEFAULT_SERVERDGSB); #endif _tcscpy(m_Setup.szUser,_T("Admin")); m_Setup.lProxyType = 2; //类型为2,表示Sock5代理 _tcscpy(m_Setup.szProxyIP,_T("192.168.0.1")); m_Setup.lProxyPort = 8000; } void CMainFrame::GetCurrentPath(TCHAR *pPath) { ::GetModuleFileName( NULL , pPath , 512); for ( int j=_tcslen(pPath) ; j>0 ; j-- ) { if (pPath[j]=='\\' ) break; } pPath[j+1]=0; } BOOL CMainFrame::ChangeView(long lIndex) { /* CCreateContext context; CView * pActiveView= GetActiveView(); CDocument * pDoc = NULL; if ( pActiveView ) pDoc = pActiveView->GetDocument(); context.m_pNewViewClass= m_pClass[lIndex]; context.m_pCurrentDoc=pDoc; context.m_pNewDocTemplate=NULL; context.m_pLastView=NULL; context.m_pCurrentFrame=NULL; m_wndSplitter.DeleteView( 0 ,1 ); m_wndSplitter.CreateView(0,1,context.m_pNewViewClass,CSize(200,0),&context); SetActiveView((CView*)m_wndSplitter.GetPane(0,1)); CView * pView = (CView *)m_wndSplitter.GetPane( 0 ,1 ); pView->OnInitialUpdate(); m_wndSplitter.RecalcLayout(); */ return true; } BOOL CMainFrame::ShowFuncDlg(long lIndex) { m_lCurFunc = lIndex; return m_pUserView->ShowFuncDlg( lIndex ); } BOOL CMainFrame::SendFrame(DWORD lFuncType, unsigned char *pFrame, unsigned long lFrameLen) { KillTimer( 2 ); //重新计时 SetTimer( 2 , RECVREFRESH_TIMEOUT , NULL ); //启时超时发送刷新指令 SetTimer( 3 , SOCKETRECV_TIMEOUT , NULL ); //启发超时检测 SetStatMsg( _T("正在向服务器发出请求...") ); if ( lFuncType < 256 ) return m_Socket.SendFrame( (unsigned char)lFuncType , pFrame , lFrameLen ); else return m_Socket.SendFrameEx( lFuncType , pFrame , lFrameLen ); } /* BOOL CMainFrame::SendFrameEx(DWORD lFuncType, unsigned char *pFrame, unsigned long lFrameLen) { KillTimer( 2 ); //重新计时 SetTimer( 2 , RECVREFRESH_TIMEOUT , NULL ); //启时超时发送刷新指令 SetTimer( 3 , SOCKETRECV_TIMEOUT , NULL ); //启发超时检测 SetStatMsg( _T("正在向服务器发出请求...") ); return m_Socket.SendFrameEx( lFuncType , pFrame , lFrameLen ); } */ BOOL CMainFrame::GetUserPurview(ULONG ulPurview,BOOL bShowWarning) { BOOL b=m_ulPurview & ulPurview; if ( !b && bShowWarning ) { MessageBox( _T("对不起,你没有进行此项操作的权限,请与管理员联系!") , _T("权限不足") , MB_ICONINFORMATION ); } return b; } void CMainFrame::OnQueryJL() { if (!GetUserPurview(PURVIEW_LIST)) { return; } REQ_GZMsg_JL_PARA * pGZMsg = new REQ_GZMsg_JL_PARA; memset(pGZMsg, 0, sizeof(REQ_GZMsg_JL_PARA)); pGZMsg->lYWYID = 0; SendFrame(SMSFUNC_GZMSG_JL_PARA, (BYTE*)pGZMsg, sizeof(REQ_GZMsg_JL_PARA)); } void CMainFrame::OnQueryJL_InportMMDCount() { } void CMainFrame::OnModifyPasswd() { DLG_Passwd dlg(this); dlg.SetParam( m_Setup ); if ( dlg.DoModal() == IDOK ) { //发送,修改密码 SM_Setup setup = dlg.GetParam(); REQ_Passwd * pPasswd = new REQ_Passwd; memset( pPasswd , 0 , sizeof(REQ_Passwd) ); pPasswd->lUserID = m_lUserID; pPasswd->ucUserType = LOGINTYPE_MANAGER; _tcscpy( pPasswd->szUserName , setup.szUser ); CDes des; char szUser[32]={0}; char szPasswd[64]={0}; char szPasswd2[64]={0}; #ifdef _UNICODE strcpy(szUser , CW2A(pPasswd->szUserName)); strcpy(szPasswd , CW2A(setup.szPasswd)); #else strcpy(szUser , pPasswd->szUserName); strcpy(szPasswd , setup.szPasswd); #endif long lLen=sizeof(szPasswd2); des.Encrypt(szPasswd ,strlen(szPasswd) , szPasswd2 , lLen , szUser , 8 ); #ifdef _UNICODE _tcscpy( pPasswd->szPasswd , CA2W(szPasswd2)); #else strcpy( pPasswd->szPasswd , szPasswd2); #endif SendFrame( SMSFUNC_PASSWD , (BYTE*)pPasswd , sizeof(REQ_Passwd) ); } } BOOL CMainFrame::ProcessSocket(Socket_Head_Add *pHead,BYTE* pFrame) { CString str; //取清单 if (pHead->lFuncType == SMSFUNC_SOS) { ANS_Sos * pSos = (ANS_Sos *)pFrame; if ( pSos->bModify==false ) { DLG_SOS dlg(this); dlg.SetSos(pSos->bEnable); if ( dlg.DoModal() == IDOK ) { REQ_Sos * pSos = new REQ_Sos; memset( pSos , 0 , sizeof(REQ_Sos) ); pSos->lUserID = this->m_lUserID; pSos->bModify = true; pSos->bEnable = dlg.GetSOS(); SendFrame( SMSFUNC_SOS , (BYTE*)pSos , sizeof(REQ_Sos) ); } } return 0; } //查询企业微信设置情况 if (pHead->lFuncType == SMSFUNC_WXWORK_SEE) { ANS_WxWork_Setup * pSetup = (ANS_WxWork_Setup *)pFrame; if (pSetup->bOK== true) { DLG_WxWorkSetup dlg(this); REQ_WxWork_Setup setup = { 0 }; setup.bCheckUp = pSetup->bCheckUp; setup.lUserID = pSetup->lUserID; setup.bSend = pSetup->bSend; setup.lTimer = pSetup->lTimer; setup.lAutoEnd = pSetup->lAutoEnd; setup.tStart = pSetup->tStart; _tcscpy(setup.szUser, pSetup->szUser); _tcscpy(setup.szWxName, pSetup->szWxName); dlg.SetSetup(setup); if (dlg.DoModal() == IDOK) { REQ_WxWork_Setup * pReq = new REQ_WxWork_Setup; *pReq = dlg.GetSetup(); pReq->lUserID = this->m_lUserID; SendFrame(SMSFUNC_WXWORK_SETUP, (BYTE*)pReq, sizeof(REQ_WxWork_Setup)); } } return 0; } if (pHead->lFuncType == SMSFUNC_WXWORK_SETUP) { ANS_WxWork_Setup * pSetup = (ANS_WxWork_Setup *)pFrame; if (pSetup->bOK == true) { MessageBox(_T("设置企业微信提醒成功!"), _T("通知"), MB_OK | MB_ICONINFORMATION); } else { MessageBox(_T("设置企业微信提醒失败!"), _T("错误"), MB_OK | MB_ICONWARNING); } return 0; } if (pHead->lFuncType == SMSFUNC_GZMSG_JL_PARA) { if (!m_pDlgJL) { DLG_GZMsg_JL dlg(this); BYTE * pData = new BYTE[pHead->lFrameLen]; memcpy(pData, pFrame, pHead->lFrameLen); dlg.SetParam(this, m_lUserID, _T(""), pData,1); this->m_pDlgJL = &dlg; dlg.DoModal(); delete pData; m_pDlgJL = NULL; } return 0; } if (pHead->lFuncType == SMSFUNC_GZMSG_JL || pHead->lFuncType== SMSFUNC_GZMSG_JL_MMDCOUNT) { if (m_pDlgJL) { m_pDlgJL->ProcessSocket(pHead, pFrame); } return 0; } return false; } BOOL CMainFrame::ProcessSocket(Socket_Head *pHead) { if ( pHead->lFuncType == SMSFUNC_PASSWD) //正在取用户信息 { ANS_Passwd * pPasswd = (ANS_Passwd *)pHead->pFrame; if ( pPasswd->ucState == SMS_PASSWD_OK) { MessageBox( _T("修改密码成功,请记住新的密码!") , _T("信息") , MB_ICONWARNING ); } else { MessageBox( _T("修改密码失败,请检测!") , _T("错误") , MB_ICONWARNING ); } return true; } if ( pHead->lFuncType == SMSFUNC_DATABACK) { ANS_DataBack * pBack = (ANS_DataBack *)pHead->pFrame; if ( pBack->bOK ) { MessageBox( _T("备份数据库成功!") , _T("信息") , MB_ICONWARNING ); } else { CString str; str.Format( _T("备份数据库失败:%s!") , pBack->szMsg ); MessageBox( str , _T("错误") , MB_ICONWARNING ); } return true; } if ( pHead->lFuncType == SMSFUNC_REBOOT) { ANS_Reboot * pReboot = (ANS_Reboot *)pHead->pFrame; if ( pReboot->bOK ) { MessageBox( _T("强制重启服务器成功!") , _T("信息") , MB_ICONINFORMATION ); } else { MessageBox( _T("强制重启服务器失败!") , _T("错误") , MB_ICONWARNING ); } return true; } if ( pHead->lFuncType == SMSFUNC_QZSMSTD_SEE ) { ANS_QZSmsTD_See * pSee = (ANS_QZSmsTD_See *)pHead->pFrame; DLG_QZSmsTD dlg (this ); dlg.SetParam( pSee->szSMSTD,pSee->szSMSOutAll ); if ( dlg.DoModal() == IDOK ) { //发送请求修改 REQ_QZSmsTD * pSet = new REQ_QZSmsTD; memset( pSet , 0 , sizeof(REQ_QZSmsTD) ); pSet->lUserID = m_lUserID; _tcscpy(pSet->szSMSTD , dlg.m_szSMSTD ); _tcscpy(pSet->szSMSOutAll , dlg.m_szSMSOutAll ); SendFrame( SMSFUNC_QZSMSTD , (BYTE*)pSet , sizeof(REQ_QZSmsTD) ); } return true; } if ( pHead->lFuncType == SMSFUNC_QZSMSTD ) { //ANS_QZSmsTD * pSet = (ANS_QZSmsTD *)pHead->pFrame; MessageBox( _T("修改强制通道成功!") , _T("信息") , MB_ICONINFORMATION ); return true; } if ( pHead->lFuncType == SMSFUNC_CORPOFF ) { ANS_CorpOFF * pCorp = (ANS_CorpOFF *)pHead->pFrame; CString str; switch(pCorp->lStatus ) { case 0: str.Format( _T("禁用企业%d成功!") , pCorp->lCorpID ); break; case 1: str.Format( _T("开通企业%d成功!") , pCorp->lCorpID ); break; case 2: str.Format( _T("提高企业%d已发短信优先级成功!") , pCorp->lCorpID ); break; } MessageBox( str , _T("信息") , MB_ICONINFORMATION ); return true; } if ( pHead->lFuncType == SMSFUNC_CLOSECLIENT2 ) { ANS_CloseClient * pClose = (ANS_CloseClient *)pHead->pFrame; if ( pClose->lUserID == this->m_lUserID ) { this->PostMessage( WM_CLOSE ); } return true; } if ( pHead->lFuncType == SMSFUNC_CORP_GETCM ) { ANS_Corp_GetCM * pGetCM = (ANS_Corp_GetCM *)pHead->pFrame; DLG_BBS_See_CM dlg(this); dlg.SetParam( pGetCM->szRet ); dlg.DoModal(); return true; } if ( pHead->lFuncType == SMSFUNC_CLISMSTD ) { ANS_CliSmsTD * pTD = (ANS_CliSmsTD *)pHead->pFrame; if ( pTD->lType == 0 ) { //取通道 DLG_CliSmsTD dlg(this); dlg.SetParam(pTD); if ( dlg.DoModal()== IDOK ) { //发送请求查看 SendFrame( SMSFUNC_CLISMSTD , (BYTE*)dlg.m_pReqTD , dlg.m_lReqSize ); } } else { //设通道 if ( pTD->bOK ) { MessageBox( _T("设置客户端允许更改的通道成功!") , _T("成功") , MB_ICONINFORMATION ); } else { MessageBox( _T("设置客户端允许更改的通道失败!") , _T("失败") , MB_ICONWARNING ); } } } if ( pHead->lFuncType == SMSFUNC_CORP_BZ_ADD) //添加备注 { ANS_Corp_BZ_Add * pAdd = (ANS_Corp_BZ_Add *)pHead->pFrame; if ( pAdd->bOK ) { MessageBox( _T("添加备注成功!") , _T("消息") , MB_ICONINFORMATION|MB_OK ); } else { MessageBox( _T("添加备注失败,请检查!") , _T("错误") , MB_ICONWARNING|MB_OK ); } return true; } if ( pHead->lFuncType == SMSFUNC_CLOSECLIENT2) //正在取用户信息 { ANS_CloseClient * pClose = (ANS_CloseClient *)pHead->pFrame; if ( pClose->lUserID == this->m_lUserID ) { this->PostMessage( WM_CLOSE ); } return true; } return false; } void CMainFrame::SetStatMsg(TCHAR *pMsg) { m_wndStatusBar.SetPaneText( 0 , pMsg , true ); } void CMainFrame::OnWarningSetup() { DLG_WarningSetup dlg(this); dlg.SetSetup(m_Setup); if (dlg.DoModal() == IDOK) { m_Setup = dlg.GetSetup(); SaveSetup(); } } void CMainFrame::OnWxWorkSetup() { //发送,修改密码 REQ_WxWork_See * pSee = new REQ_WxWork_See; memset(pSee, 0, sizeof(REQ_WxWork_See)); pSee->lUserID = this->m_lUserID; SendFrame(SMSFUNC_WXWORK_SEE, (BYTE*)pSee, sizeof(REQ_WxWork_See)); } void CMainFrame::OnBackData() { //发送,修改密码 REQ_Sos * pSos = new REQ_Sos; memset( pSos , 0 , sizeof(REQ_Sos) ); pSos->bModify = false; pSos->lUserID = this->m_lUserID; SendFrame( SMSFUNC_SOS , (BYTE*)pSos , sizeof(REQ_Sos) ); /* DLG_Data_Back dlg(this); if ( dlg.DoModal() == IDOK ) { //发送,修改密码 REQ_DataBack * pBack = new REQ_DataBack; memset( pBack , 0 , sizeof(REQ_DataBack) ); dlg.m_tBegin.GetAsSystemTime(pBack->tBegin); SendFrame( SMSFUNC_DATABACK , (BYTE*)pBack , sizeof(REQ_DataBack) ); } */ } void CMainFrame::OnUpdateBackData(CCmdUI* pCmdUI) { if ( GetUserPurview(PURVIEW_MANAGER_ADD,false) ) pCmdUI->Enable(true); else pCmdUI->Enable(false); } void CMainFrame::OnReboot() { int iRet = MessageBox(_T("将强制重新启动服务器,是否继续?"),_T("问题"),MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2); if (iRet == IDYES ) { //发送,修改密码 REQ_Reboot * pReboot = new REQ_Reboot; memset( pReboot , 0 , sizeof(REQ_Reboot) ); _tcscpy( pReboot->szPasswd , _T("SMSMANAGER_876") ); SendFrame( SMSFUNC_REBOOT , (BYTE*)pReboot , sizeof(REQ_Reboot) ); } } void CMainFrame::OnUpdateReboot(CCmdUI* pCmdUI) { if ( !_tcsncmp(m_Setup.szUser,_T("Admin"),5) || !_tcscmp(m_Setup.szUser,_T("tianfang"))) pCmdUI->Enable(true); else pCmdUI->Enable(false); } void CMainFrame::OnDog() { DLG_Dog_Create dlg(this); dlg.DoModal(); } void CMainFrame::OnUpdateDog(CCmdUI* pCmdUI) { if ( !GetUserPurview(PURVIEW_MANAGER_ADD,false) ) pCmdUI->Enable(false); else pCmdUI->Enable(true); } void CMainFrame::OnQzsmstd() { //发送请求查看 REQ_QZSmsTD_See * pSee = new REQ_QZSmsTD_See; memset( pSee , 0 , sizeof(REQ_QZSmsTD_See) ); pSee->lUserID = m_lUserID; SendFrame( SMSFUNC_QZSMSTD_SEE , (BYTE*)pSee , sizeof(REQ_QZSmsTD_See) ); } void CMainFrame::OnUpdateQzsmstd(CCmdUI* pCmdUI) { if ( !_tcsncmp(m_Setup.szUser,_T("Admin"),5) || !_tcscmp(m_Setup.szUser,_T("tianfang"))) pCmdUI->Enable(true); else pCmdUI->Enable(false); } void CMainFrame::OnUpdateClismstd(CCmdUI* pCmdUI) { if ( !_tcsncmp(m_Setup.szUser,_T("Admin"),5) || !_tcscmp(m_Setup.szUser,_T("tianfang"))) pCmdUI->Enable(true); else pCmdUI->Enable(false); } void CMainFrame::OnClismstd() { //发送请求查看 REQ_CliSmsTD * pSee = new REQ_CliSmsTD; memset( pSee , 0 , sizeof(REQ_CliSmsTD) ); pSee->lType = 0; //取通道 SendFrame( SMSFUNC_CLISMSTD , (BYTE*)pSee , sizeof(REQ_CliSmsTD) ); } void CMainFrame::ShowCheckUpDlg() { /* if (!IsWindowVisible()) { ShowWindow(SW_SHOW); ShowWindow(SW_RESTORE); this->SetForegroundWindow(); //ShowWindow( SW_SHOWDEFAULT ); //显示主窗口 } else { //ShowWindow( SW_SHOW ); //ShowWindow( SW_RESTORE ); this->SetForegroundWindow(); } //this->FlashWindow(FALSE); */ if (m_Setup.Warning_OnlyContent) { if (m_pUserView->m_dlgCheckup.m_wndList.GetItemCount()>0 ) ShowFuncDlg(FUNC_CHECKUP); //显示短信审核窗口 else ShowFuncDlg(FUNC_SMSTASK); //显示短信审核窗口 } else { ShowFuncDlg(FUNC_CHECKUP); //显示短信审核窗口 this->m_pUserView->m_dlgCheckup.RefreshInfo(); //自动刷新 if (this->m_pUserView->m_dlgCheckup.pDlgWarning) { this->m_pUserView->m_dlgCheckup.pDlgWarning->PostMessage(WM_CLOSE); } //停止播放音乐 PlaySound(NULL, NULL, SND_FILENAME); } ShowWindow(SW_SHOW); ShowWindow(SW_RESTORE); this->SetForegroundWindow(); } LRESULT CMainFrame::OnShellIconMess(WPARAM wParam, LPARAM lParam) { switch (lParam) //检查信息类型 { case WM_LBUTTONUP: //双击鼠标左键 case WM_LBUTTONDBLCLK: //双击鼠标左键 { ShowCheckUpDlg(); } break; case WM_RBUTTONDOWN: //击了鼠标右键 { /* CMenu menu; menu.CreatePopupMenu(); if (m_bLogin) { menu.AppendMenu(MF_STRING, CORPSMS_ICON_R_SHOW, _T(" 显示主界面(&A) ")); menu.AppendMenu(MF_SEPARATOR); menu.AppendMenu(MF_STRING, CORPSMS_ICON_R_SMS, _T(" 发送短信(&S) ")); menu.AppendMenu(MF_STRING, CORPSMS_ICON_R_MMS, _T(" 发送彩信(&M) ")); } else { menu.AppendMenu(MF_STRING, CORPSMS_ICON_R_SHOW, _T(" 显示登录界面(&A) ")); //menu.AppendMenu(MF_SEPARATOR ); //menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , CORPSMS_ICON_R_SMS , _T(" 发送短信(&S) ") ); //menu.AppendMenu(MF_STRING|MF_DISABLED|MF_GRAYED , CORPSMS_ICON_R_MMS , _T(" 发送彩信(&M) ") ); } menu.AppendMenu(MF_SEPARATOR); menu.AppendMenu(MF_STRING, CORPSMS_ICON_R_QUIT, _T(" 退出(&X) ")); //显示菜单 POINT pt; ::GetCursorPos(&pt); //this->ClientToScreen( &pt); menu.TrackPopupMenu(TPM_LEFTBUTTON | TPM_RIGHTBUTTON, pt.x, pt.y, this, NULL); menu.DestroyMenu(); */ } break; } return 1; }