339 lines
10 KiB
C++
339 lines
10 KiB
C++
// MainFrm.h : interface of the CMainFrame class
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(AFX_MAINFRM_H__53645CFE_009C_4AD6_9EB7_EEB04AE157ED__INCLUDED_)
|
|
#define AFX_MAINFRM_H__53645CFE_009C_4AD6_9EB7_EEB04AE157ED__INCLUDED_
|
|
|
|
#include "StdAfx.h" // Added by ClassView
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
|
|
#include "CorpSmsDoc.h"
|
|
#include "FuncView.h"
|
|
#include "BaseView.h"
|
|
#include "ProcessSocket.h"
|
|
#include "DLG_GetUser.h"
|
|
#include "..\public\reportctrl\ReportCtrl.h"
|
|
#include "DLG_CJCard.h"
|
|
#include "DLG_Commend.h"
|
|
//#ifdef SUPPER_UBOX
|
|
#include ".\UBox\phonic_ubox.h"
|
|
#include "DLG_UBox_Dial.h"
|
|
#include "DLG_UBoxPop.h"
|
|
#include "DLG_UBox_UserLog.h"
|
|
|
|
//#endif
|
|
|
|
|
|
|
|
#define SHELL_ICON_MESS WM_USER+260
|
|
#define UBOX_EVENT WM_USER+270
|
|
#define UBOX_EVENT_DTMF 1
|
|
#define UBOX_EVENT_JT 2
|
|
#define UBOX_EVENT_WJ 3
|
|
#define UBOX_EVENT_HOOK_OFF 4
|
|
#define UBOX_EVENT_HOOK_UP 5
|
|
#define UBOX_EVENT_HOOK_UP2 6
|
|
#define UBOX_EVENT_CALLOUT 7
|
|
#define UBOX_EVENT_ERROR 8
|
|
#define UBOX_EVENT_CHAR 9
|
|
|
|
#define CORPSMS_ICON_R_SHOW WM_USER + 2001 //显示主界面
|
|
#define CORPSMS_ICON_R_SMS WM_USER + 2002 //显示主界面
|
|
#define CORPSMS_ICON_R_MMS WM_USER + 2003 //显示主界面
|
|
#define CORPSMS_ICON_R_QUIT WM_USER + 2004 //显示主界面
|
|
|
|
typedef CTypedPtrList<CPtrList, SM_User*> CUser;
|
|
typedef CTypedPtrArray<CPtrArray, DLG_UBoxPop*> CDLG_UBoxPop;
|
|
|
|
typedef struct _RecordUpload
|
|
{
|
|
long lUBoxLogID;
|
|
CString strRecordName;
|
|
}RecordUpload;
|
|
|
|
typedef CList<RecordUpload> CRecordUpload;
|
|
|
|
class DLG_HDQuery;
|
|
class DLG_White2;
|
|
class CMainFrame : public CFrameWnd
|
|
{
|
|
public:
|
|
CFuncView * m_pFuncView;
|
|
CBaseView * m_pBaseView;
|
|
CImageList m_Image;
|
|
CButton m_B_CJ;
|
|
CButton m_B_YJ;
|
|
|
|
CAdoConnection m_adoConnection;
|
|
CAdoRecordSet m_AdoRS;
|
|
CAdoRecordSet m_AdoRS2;
|
|
|
|
long m_lCorpID;
|
|
long m_lUserID;
|
|
ULONG m_ulPurviewType; //用户权限类型
|
|
ULONG m_ulPurview; //用户权限
|
|
|
|
CString m_strLoginIP;
|
|
SM_Setup m_Setup;
|
|
CUser m_User;
|
|
SM_User * m_pCurUser;
|
|
ANS_Login m_Ans_Login;
|
|
ANS_Login2 m_Ans_Login2;
|
|
CProcessSocket m_Socket;
|
|
CPictureEx m_B_Gif;
|
|
CString m_strTEXT;
|
|
long m_lGDText;
|
|
|
|
DLG_CJCard * m_pCJCard; //充值卡
|
|
|
|
BOOL m_CliSmsTD_Req; //用于判断通道设置是哪里发出的
|
|
|
|
//过滤语
|
|
long m_lFiltCount;
|
|
ANS_Filt2_SeeDataU * m_pFilt;
|
|
|
|
long m_lNoSupperWordCount;
|
|
ANS_Login3_NoSupperData * m_pNoSupperWord;
|
|
|
|
//黑名单
|
|
long m_lBackCount;
|
|
ANS_Back_SeeData * m_pBack;
|
|
|
|
CString m_strMobile; //此登录用户的手机号码
|
|
CString m_strMainGroupID; //主用户组ID
|
|
long m_lMainGroupID; //主用户组ID
|
|
CString m_strMainGroupName; //用户组名称
|
|
|
|
//防止恶意向中心端提交信息
|
|
DWORD m_dwEndTYjTime;
|
|
|
|
//ExcelAddin协助参数
|
|
HWND m_hExcelAddinWnd;
|
|
long m_lAddinType; //1-Open,2-SendSms,3-Address
|
|
BOOL m_bLoginOK;
|
|
|
|
//推荐客户
|
|
DLG_Commend * m_pCommendDlg;
|
|
DLG_HDQuery * m_pHDQuery;
|
|
|
|
//masoem
|
|
CString m_strMasTitle;
|
|
BOOL m_bCheckUpdateManual;
|
|
|
|
CString m_strCorpWorkUrl; //管理易登录
|
|
CString m_strPasswdEnc; //加密后的密码,用于管理易登录
|
|
|
|
CCriticalSection m_Update_Lock;
|
|
|
|
//用于记录图标信息
|
|
long m_Iocn_UBox_KT;
|
|
#ifdef SUPPER_UBOX //来电显示盒子
|
|
long m_ubox_Status;
|
|
HINSTANCE m_ubox_Lib;
|
|
Mubox_open m_ubox_Open;
|
|
Mubox_close m_ubox_close;
|
|
Mubox_get_work_mode m_ubox_get_work_mode;
|
|
Mubox_send_dtmf m_ubox_send_dtmf;
|
|
Mubox_record_stream m_ubox_record_stream;
|
|
Mubox_stop_record m_ubox_stop_record;
|
|
Mubox_record_file m_ubox_record_file;
|
|
|
|
UBOX_HANDLE m_ubox_endHandle;
|
|
|
|
DLG_UBox_Dial m_DlgUBoxDial;
|
|
|
|
BOOL m_ubox_bPhoneUp; //现在状态是否为拿起话机,拿起话机才能拨号
|
|
BOOL m_ubox_Phoneing; //现在状态是否为通知中,振铃也算是通话中
|
|
|
|
//以下用于弹出窗口
|
|
CDLG_UBoxPop m_ubox_Pop;
|
|
DLG_UBoxPop * m_ubox_NowPop;
|
|
CCriticalSection m_ubox_Lock;
|
|
|
|
//以下用于上传录音文件
|
|
CRecordUpload m_RecordUpload;
|
|
long m_RecordUpload_UBoxLogID;
|
|
DWORD m_RecordUpload_EndSendFrame;
|
|
long m_RecordUpload_AllSize;
|
|
long m_RecordUpload_UpSize;
|
|
CFile m_RecordFile;
|
|
#endif
|
|
BOOL m_bLogin; //是否已经登录成功
|
|
|
|
//用于白名单导入
|
|
DLG_White2 * m_pWhie2;
|
|
protected:
|
|
long m_lCurFunc;
|
|
DLG_GetUser m_DlgProcess;
|
|
BOOL m_bShowProcess;
|
|
BOOL m_bChangeGAddress;
|
|
BOOL m_bReadGAddressError;
|
|
|
|
|
|
protected: // create from serialization only
|
|
CMainFrame();
|
|
DECLARE_DYNCREATE(CMainFrame)
|
|
|
|
// Attributes
|
|
public:
|
|
|
|
// Operations
|
|
public:
|
|
|
|
// Overrides
|
|
// ClassWizard generated virtual function overrides
|
|
//{{AFX_VIRTUAL(CMainFrame)
|
|
public:
|
|
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
|
|
protected:
|
|
virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext);
|
|
//}}AFX_VIRTUAL
|
|
|
|
// Implementation
|
|
public:
|
|
static BOOL AutoBackAddress_Save(CMainFrame * pFrame , CString strName);
|
|
static UINT AutoBackAddress_T(void *pParam);
|
|
void AutoBak_SendLog();
|
|
BOOL isSupportPhs();
|
|
long GetMaxAddressCount();
|
|
long FindBX(long lMon, long lMon2, long lDay,CReportCtrl *pList);
|
|
long GetQJCM( CString & strCM );
|
|
long GetMaxSendMsgLen();
|
|
CString GetSoftSName();
|
|
void GetUpdateMsg(BOOL bManual=false);
|
|
void YWDB(BOOL bYW);
|
|
long FindNS(long lMon,long lMon2, CReportCtrl *pList);
|
|
static BOOL UpdateDB(CAdoConnection & m_adoConnection,CAdoRecordSet & m_AdoRS);
|
|
void GetBack();
|
|
void GDText();
|
|
void GetGGMsg();
|
|
long FindSR(long lMon,long lDay,long lMon2,long lDay2,BOOL bGAddress,BOOL bPAddress,CReportCtrl* pList);
|
|
BOOL ReadGAddress(BOOL bRefresh=false);
|
|
void SetStatMsg(TCHAR *pMsg);
|
|
BOOL ProcessSocket(Socket_Head *pHead);
|
|
BOOL SendFrame( DWORD lFuncType , unsigned char * pFrame , unsigned long lFrameLen );
|
|
BOOL GetUserPurview( ULONG ulPurview ,BOOL bShowWarning=true);
|
|
BOOL GetUserPurview_HideNum();
|
|
void GetCurrentPath(TCHAR *pPath);
|
|
void SaveSetup();
|
|
void ReadSetup();
|
|
void CreateNullSetup();
|
|
virtual ~CMainFrame();
|
|
|
|
void uboxPop_New(CString strNumber,long lCallWay,long lBeginTime=0);
|
|
void uboxPop_Del(DLG_UBoxPop * pPop);
|
|
#ifdef _DEBUG
|
|
virtual void AssertValid() const;
|
|
virtual void Dump(CDumpContext& dc) const;
|
|
#endif
|
|
|
|
protected: // control bar embedded members
|
|
CStatusBar m_wndStatusBar;
|
|
CToolBar m_wndToolBar;
|
|
CSplitterWnd m_wndSplitter;
|
|
static void WINAPI ubox_NotifyProc(UBOX_HANDLE uboxHnd,int eventID,unsigned long param1,unsigned long param2,unsigned long param3,unsigned long param4);
|
|
public:
|
|
BOOL ubox_SetStatus(long lStatus);
|
|
BOOL ubox_Close();
|
|
BOOL ubox_Init();
|
|
BOOL ubox_Enable();
|
|
static CString GetMD5(CString str,BOOL bLower=false);
|
|
void Mas_ProcessSendCount();
|
|
BOOL ProcessSocket(Socket_Head_Add *pHead,BYTE* pFrame);
|
|
DWORD GetExcelAddinErrorNum();
|
|
void GetCenterTime();
|
|
long GetMaxUsersCount();
|
|
BOOL ReadGAddress2(BOOL bRefresh=false);
|
|
long GetMaxSendMsgLen_longSms(long & lCMLen);
|
|
void OnTYj2( const TCHAR * pType );
|
|
afx_msg void OnTYj();
|
|
|
|
// Generated message map functions
|
|
protected:
|
|
//{{AFX_MSG(CMainFrame)
|
|
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
|
|
afx_msg void OnTimer(UINT_PTR nIDEvent);
|
|
afx_msg void OnModifyPasswd();
|
|
afx_msg void OnMsgsetup();
|
|
afx_msg void OnTShowsmslist();
|
|
afx_msg void OnTShowmmslist();
|
|
afx_msg void OnTMsgsetup();
|
|
afx_msg void OnTAdduser();
|
|
afx_msg void OnUpdateTAdduser(CCmdUI* pCmdUI);
|
|
afx_msg void OnTAddgroup();
|
|
afx_msg void OnUpdateTAddgroup(CCmdUI* pCmdUI);
|
|
afx_msg void OnTSmsview();
|
|
afx_msg void OnUpdateTSmsview(CCmdUI* pCmdUI);
|
|
afx_msg void OnTSmsnew();
|
|
afx_msg void OnUpdateTSmsnew(CCmdUI* pCmdUI);
|
|
afx_msg void OnUpdateTShowsmslist(CCmdUI* pCmdUI);
|
|
afx_msg void OnUpdateTShowmmslist(CCmdUI* pCmdUI);
|
|
afx_msg void OnClose();
|
|
afx_msg void OnFindsr();
|
|
afx_msg void OnCompdb();
|
|
afx_msg void OnHelp2();
|
|
afx_msg void OnSystemsetup();
|
|
afx_msg void OnUpdateSystemsetup(CCmdUI* pCmdUI);
|
|
afx_msg void OnTCj();
|
|
afx_msg void OnSendsetup();
|
|
afx_msg void OnTLogo();
|
|
afx_msg void OnTBill();
|
|
afx_msg void OnUpdateTBill(CCmdUI* pCmdUI);
|
|
afx_msg void OnUpdateHelp2(CCmdUI* pCmdUI);
|
|
afx_msg void OnSetupSzgj();
|
|
afx_msg void OnNsts();
|
|
afx_msg void OnSize(UINT nType, int cx, int cy);
|
|
afx_msg void OnBxts();
|
|
afx_msg void OnHd();
|
|
afx_msg void OnSetupTd();
|
|
afx_msg void OnTLogo2();
|
|
afx_msg void OnSetupImMas();
|
|
afx_msg void OnAppCommend();
|
|
afx_msg void OnTGg();
|
|
afx_msg void OnOperSendsms();
|
|
afx_msg void OnOperSendfax();
|
|
afx_msg void OnOperSendmms();
|
|
afx_msg void OnCheckupdate();
|
|
afx_msg void OnTCorpwork();
|
|
afx_msg void OnTUbox();
|
|
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
|
|
afx_msg LONG_PTR UBox_Event( WPARAM wParam , LPARAM lParam );
|
|
afx_msg void OnShellIcon_Show();
|
|
afx_msg void OnShellIcon_Sms();
|
|
afx_msg void OnShellIcon_Mms();
|
|
afx_msg void OnShellIcon_Exit();
|
|
|
|
//}}AFX_MSG
|
|
afx_msg LONG_PTR On_Picture_Click( WPARAM wParam , LPARAM lParam );
|
|
afx_msg LONG_PTR ProcessSocket_Error( WPARAM wParam , LPARAM lParam );
|
|
afx_msg LONG_PTR ProcessSocket_Frame( WPARAM wParam , LPARAM lParam );
|
|
|
|
afx_msg LONG_PTR OnShellIconMess( WPARAM wParam , LPARAM lParam ); //任务栏图标处理过程
|
|
|
|
afx_msg LONG_PTR On_ExcelAddin_Data( WPARAM wParam , LPARAM lParam );
|
|
afx_msg LONG_PTR On_ExcelAddin_Open( WPARAM wParam , LPARAM lParam );
|
|
afx_msg LONG_PTR On_ExcelAddin_GetGroup( WPARAM wParam , LPARAM lParam );
|
|
|
|
DECLARE_MESSAGE_MAP()
|
|
public:
|
|
BOOL SendSms(CString strMobile, CString strMsg);
|
|
afx_msg void OnAppCalltype();
|
|
afx_msg void OnUpdateAppCalltype(CCmdUI *pCmdUI);
|
|
int UBox_AddUploadRecordFile(long lUBoxLogID, CString strRecordName);
|
|
void UBox_Upload_Record(void);
|
|
int UBox_Upload_Record_SendNextFrame(void);
|
|
void OnShellIcon_Show2(BOOL bShowRecever=true);
|
|
afx_msg void OnAppWhite2();
|
|
afx_msg void OnUpdateAppWhite2(CCmdUI *pCmdUI);
|
|
};
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
//{{AFX_INSERT_LOCATION}}
|
|
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
|
|
|
|
#endif // !defined(AFX_MAINFRM_H__53645CFE_009C_4AD6_9EB7_EEB04AE157ED__INCLUDED_)
|