CorpSms/DLG_Send.h

307 lines
8.8 KiB
C
Raw Permalink Normal View History

2025-02-27 16:58:16 +08:00
#if !defined(AFX_DLG_SEND_H__60D7C1FD_03E9_4F4C_9077_AF29BADC6F94__INCLUDED_)
#define AFX_DLG_SEND_H__60D7C1FD_03E9_4F4C_9077_AF29BADC6F94__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DLG_Send.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// DLG_Send dialog
#include ".\LuButton\LuButton.h"
#include "..\public\reportctrl\ReportCtrl.h"
#include "UserDropTarget.h"
#include "label.h"
//#include "ImApi\ImApi.h"
2025-02-27 16:58:16 +08:00
#include "..\public\StringSort\StringSort.h"
#define SEND_USER_ADD WM_USER+220
#define SEND_USER_MODIFY WM_USER+221
#define SEND_USER_DEL WM_USER+222
#define SEND_USER_CLEAR WM_USER+223
#define SEND_USER_INPORT WM_USER+224
#define SEND_USER_EXPORT WM_USER+225
#define SEND_USER_STATUS WM_USER+226
#define SEND_USER_INPORT_LT WM_USER+227
#define SEND_USER_INPORT_MASSDKDGWL_FP WM_USER+230
#define SEND_USER_INPORT_MASSDKDGWL_SP WM_USER+231
#define SEND_USER_INPORT_MASSDKDGWL_KF WM_USER+232
#define SEND_USER_INPORT_MASSDKDGWL_ZC WM_USER+233
#define SEND_USER_PASTE WM_USER+240
typedef struct _SaveItemStatus
{
long lSendID;
TCHAR szStatus[4];
long lItemID;
long lStatus; //<2F><><EFBFBD><EFBFBD>״̬,0-<2D><EFBFBD>ɹ<EFBFBD>,1-<2D>ύʧ<E1BDBB><CAA7>,2-<2D>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EEB2BB>,3-<2D><>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EEB2BB>,4-<2D><>ҵ<EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>
long lKF;
TCHAR szSendNum[32];//<2F><><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD>
TCHAR szName[32]; //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TCHAR szMobile[32]; //Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
TCHAR szMsg[1020]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}SaveItemStatus;
typedef CTypedPtrList<CPtrList, SaveItemStatus*> CSaveItemStatus;
class CMainFrame;
class CProcessSocket;
class DLG_Send : public CDialog
{
public:
CMainFrame * m_pMainFrame;
protected:
CImageList m_Image; //ͼ<><CDBC><EFBFBD>б<EFBFBD>
CRect m_OldRect; //ԭDlg<6C><67>Rect
CProcessSocket * m_pSocket;
CAdoRecordSet m_AdoRS;
CAdoRecordSet m_AdoRS2;
CAdoRecordSet m_AdoRS3;
CAdoRecordSet m_AdoRS4;
CAdoRecordSet m_AdoRS5;
CAdoRecordSet m_AdoRS6;
CUserDropTarget m_UserDrop;
BOOL m_bInit; //<2F>б<EFBFBD><D0B1>Ƿ<EFBFBD><C7B7><EFBFBD>ʵʼ<CAB5><CABC>
BOOL m_bModify; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>޸Ĺ<DEB8>
long m_lBoxID; //BoxID
long m_lBoxType; //<2F>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>0,<2C><><EFBFBD><EFBFBD>,1,<2C>ѷ<EFBFBD>
//<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BOOL m_bSend; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>ڷ<EFBFBD><DAB7><EFBFBD>
SYSTEMTIME m_tTimer; //<2F><>ʱʱ<CAB1><CAB1>
TCHAR m_szMsg[1024]; //<2F><><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD>Ϣ
TCHAR m_szMsgEndFilt[1024];//<2F><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD>Ϣ
TCHAR m_szSendMsg[1024]; //<2F><>ǰ<EFBFBD><C7B0><EFBFBD>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD>
long m_lSendIndex; //<2F><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>Index
long m_lSendOK; //<2F><><EFBFBD>ͳɹ<CDB3><C9B9><EFBFBD><EFBFBD><EFBFBD>
BOOL m_bShowFiltWarning;//<2F>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>˾<EFBFBD><CBBE><EFBFBD>
BOOL m_bShowFiltFirst; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>˾<EFBFBD><CBBE><EFBFBD>
BOOL m_bFilt; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>
BOOL m_bFiltOver; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ
BOOL m_bShowReMobile; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD>֪ͨ
long m_lReMobileType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD><EBA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
//<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ
BOOL m_bBackReMobile; //<2F>Ƿ<EFBFBD><C7B7><EFBFBD>ʾ<EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD>֪ͨ
long m_lBackReMobileType; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><D8B8><EFBFBD><EFBFBD><EFBFBD><EBA3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>1-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
//<2F><><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ף<EFBFBD><D7A3>ר<EFBFBD><D7A8>
BOOL m_bSendSR;
//<2F><><EFBFBD><EFBFBD><E3B7A2>ʱ<EFBFBD><CAB1>
DWORD m_dwSendStartTime;
//ʹ<><CAB9><EFBFBD>̱߳<DFB3><CCB1><EFBFBD><E6B7A2>״̬
CSaveItemStatus m_SaveItemStatus;
//<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DWORD m_dwBackCount; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DWORD m_dwNoSupCount; //<2F><>֧<EFBFBD>ֺ<EFBFBD><D6BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
DWORD m_dwNoMsgCount; //û<><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BOOL m_bSaveList;
long m_lPage;
//<2F><>¼mas<61><73><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>mas<61><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
long m_lMasAllSendCount;
long m_lInterval; //<2F><><EFBFBD>ڷ<EFBFBD><DAB7>ͼ<EFBFBD><CDBC><EFBFBD>
BOOL m_bNoSupperWord; //<2F><><EFBFBD>η<EFBFBD><CEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7>з<EFBFBD>֧<EFBFBD><D6A7><EFBFBD>ַ<EFBFBD>
CString m_strFiltWord; //<2F><><EFBFBD><EFBFBD><EFBFBD>صĹؼ<C4B9><D8BC><EFBFBD>
CStringSort m_strSort; //<2F><><EFBFBD><EFBFBD>
BOOL m_bOneToOne;
int m_lSendRand; //<2F><><EFBFBD>͵<EFBFBD><CDB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CStringArray * m_pMobileMsg; //<2F>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķֶ<C4B7>
REQ_SendData3 * m_pSendData;
//<2F>Ŷ<EFBFBD>
public:
CAdoConnection m_HDadoConnection;
CAdoRecordSet m_HDAdoRS;
#ifdef SUPPER_IM_MAS
//Mas
BOOL m_Mas_Init; // mas<61>Ƿ<EFBFBD><C7B7>ѳ<EFBFBD>ʼ<EFBFBD><CABC>
HINSTANCE m_Mas_Lib;
MAS_initWithDB m_Mas_initWithDB;
MAS_release m_Mas_release;
MAS_sendSMAdvTime m_Mas_sendSMAdvTime;
MAS_receiveSM m_Mas_receiveSM;
MAS_receiveRPT m_Mas_receiveRPT;
BOOL m_Mas_MasEnd;
BOOL m_Mas_MobsetEnd;
long m_Mas_SendOK;
#endif
// Construction
public:
void CloseAutoSave(void);
BOOL ProcessSocket(Socket_Head_Add *pHead, BYTE *pFrame);
void OnSendTask2();
void SEND_USER_INPORT_MasSDK_DGWL(long lType);
BOOL Mas_OK();
BOOL IsLocakBack(CString strMobile);
BOOL bNoSupperWord(TCHAR *pMsg,CString & strWord);
static UINT Mas_RecvT(void *pParam);
BOOL Mas_MobileIsSend(CString strMobile);
static UINT Mas_SendT(void *pParam);
BOOL Mas_Init();
BOOL Mas_Enable();
CString GetOtherSendRetMsg();
BOOL isSendingSms();
static UINT AutoSaveItem(void *pParam);
static UINT AutoSaveLog(void *pParam);
void SetListSR( BOOL bSendSR);
BOOL isBack( const TCHAR * pMobile );
void RefreshListCount();
void RefreshStatusAndLog();
void List_SetMsg( TCHAR * pMsg );
BOOL bFilt( const TCHAR * pMsg,long lCount2=-1 );
BOOL ProcessSocket(Socket_Head *pHead);
void SendNextSms();
BOOL IsSend();
BOOL List_AddUser( long lCount , Send_User * pUser );
void EnableModifyWindow( BOOL bModify );
BOOL List_ReSend( long lBoxID );
void AddLoveToMsg(TCHAR *pLove);
long GetBoxID();
void AddUser( Send_User user,long lItem = -1 );
BOOL List_Read( long lBoxID );
Send_User GetUser( long lItem,BOOL bDelay=false );
BOOL List_Save(BOOL bTJ=false);
void ShowRMenu();
long GetCurrentSelected();
void SetMainFrame(CMainFrame *pFrame);
BOOL List_New();
BOOL CloseList();
void RefreshTJ();
void InitItem();
void On_User_Inport_Group_Sms();
DLG_Send(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(DLG_Send)
enum { IDD = IDD_SEND };
CButton m_B_Task;
CComboBox m_L_lInterval;
CButton m_B_FD;
LuButton m_B_New2;
CButton m_B_LongSms;
CStatic m_S_PCount2;
CButton m_B_SaveSendLog;
CStatic m_S_CM2;
CLabel m_S_CM;
CButton m_B_GetMsg;
CButton m_B_ReMobile;
LuButton m_B_DY;
LuButton m_B_New;
CButton m_B_Add;
CEdit m_E_Num;
CDateTimeCtrl m_D_Time;
CDateTimeCtrl m_D_Date;
LuButton m_B_YL;
CStatic m_S_WCount;
LuButton m_B_Status;
LuButton m_B_Start;
LuButton m_B_Save;
CButton m_S_S1;
CButton m_B_Report;
CStatic m_S_PCount;
LuButton m_B_Null;
CButton m_S_MsgList;
CEdit m_E_Msg;
CButton m_S_ListCount;
CListCtrl m_wndList;
LuButton m_B_Memo;
LuButton m_B_NickName;
LuButton m_B_Name;
LuButton m_B_Flash;
CButton m_B_HandFree;
CButton m_B_DS;
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(DLG_Send)
public:
virtual BOOL PreTranslateMessage(MSG* pMsg);
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
virtual LRESULT OnDrop(WPARAM wParam, LPARAM lParm);
// Generated message map functions
//{{AFX_MSG(DLG_Send)
virtual BOOL OnInitDialog();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnClose();
afx_msg void OnChangeSendMsg();
afx_msg void OnSendDs();
afx_msg void OnSendSave();
afx_msg void OnRclickSendList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnSendNumadd();
afx_msg void OnSendNumPaste();
afx_msg void OnDblclkSendList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnDatetimechangeSendDsD(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnDatetimechangeSendDsT(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnSendNew();
afx_msg void OnSendIname();
afx_msg void OnSendInicename();
afx_msg void OnSendInmemo();
afx_msg void OnSendIfalsh();
afx_msg void OnSendYl();
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnSendStart();
2025-04-11 17:19:25 +08:00
afx_msg void OnTimer(UINT_PTR nIDEvent);
2025-02-27 16:58:16 +08:00
afx_msg void OnKeydownSendList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnSendDy();
afx_msg void OnSendGetmsg();
afx_msg void OnDestroy();
afx_msg void OnSendLongsms();
afx_msg void OnSendNew2();
afx_msg void OnSendFd();
afx_msg void OnSendTask();
//}}AFX_MSG
afx_msg void On_User_Add();
afx_msg void On_User_Modify();
afx_msg void On_User_Del();
afx_msg void On_User_Clear();
afx_msg void On_User_Inport();
afx_msg void On_User_Export();
afx_msg void On_User_Status();
afx_msg void On_User_Inport_LT();
afx_msg void On_User_Inport_MasSDK_DGWL_FP();
afx_msg void On_User_Inport_MasSDK_DGWL_SP();
afx_msg void On_User_Inport_MasSDK_DGWL_KF();
afx_msg void On_User_Inport_MasSDK_DGWL_ZC();
DECLARE_MESSAGE_MAP()
virtual void OnOK();
virtual void OnCancel();
public:
// afx_msg void OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags);
// afx_msg void OnHotKey(UINT nHotKeyId, UINT nKey1, UINT nKey2);
afx_msg void OnClickedSendRemobile();
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_DLG_SEND_H__60D7C1FD_03E9_4F4C_9077_AF29BADC6F94__INCLUDED_)