CorpSms/FSmsAword_SQ.cpp
2025-02-27 16:58:16 +08:00

269 lines
6.4 KiB
C++

// FSWT.cpp : implementation file
//
#include "stdafx.h"
#include "corpsms.h"
#include "FSmsAword_SQ.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CFSmsAword_SQ dialog
#include "MainFrm.h"
#include "ProcessSocket.h"
CFSmsAword_SQ::CFSmsAword_SQ(CWnd* pParent /*=NULL*/)
: CDialog(CFSmsAword_SQ::IDD, pParent)
{
//{{AFX_DATA_INIT(CFSmsAword_SQ)
m_strBZ = _T("");
m_strEmail = _T("");
m_strHttp = _T("");
m_strMobile = _T("");
m_strName = _T("");
m_strTel = _T("");
m_strMsg = _T("");
//}}AFX_DATA_INIT
m_bInit = false;
m_bRefresh = false;
}
void CFSmsAword_SQ::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CFSmsAword_SQ)
DDX_Control(pDX, IDC_SWT_S1, m_S_Title);
DDX_Control(pDX, IDC_SWT_URL, m_L_Url);
DDX_Text(pDX, IDC_SWT_BZ, m_strBZ);
DDV_MaxChars(pDX, m_strBZ, 510);
DDX_Text(pDX, IDC_SWT_EMAIL, m_strEmail);
DDV_MaxChars(pDX, m_strEmail, 62);
DDX_Text(pDX, IDC_SWT_HTTP, m_strHttp);
DDV_MaxChars(pDX, m_strHttp, 62);
DDX_Text(pDX, IDC_SWT_MOBILE, m_strMobile);
DDV_MaxChars(pDX, m_strMobile, 30);
DDX_Text(pDX, IDC_SWT_NAME, m_strName);
DDV_MaxChars(pDX, m_strName, 30);
DDX_Text(pDX, IDC_SWT_TEL, m_strTel);
DDV_MaxChars(pDX, m_strTel, 30);
DDX_Text(pDX, IDC_SWT_S2, m_strMsg);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CFSmsAword_SQ, CDialog)
//{{AFX_MSG_MAP(CFSmsAword_SQ)
ON_WM_SIZE()
ON_BN_CLICKED(IDC_SWT_SUBMIT, OnSwtSubmit)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CFSmsAword_SQ message handlers
BOOL CFSmsAword_SQ::RefreshInfo()
{
return true;
}
BOOL CFSmsAword_SQ::ReHide()
{
ShowWindow( SW_HIDE );
return true;
}
BOOL CFSmsAword_SQ::ReShow(BOOL bRefresh)
{
ShowWindow( SW_SHOW );
if ( bRefresh || !m_bRefresh )
{
RefreshInfo();
}
return true;
}
BOOL CFSmsAword_SQ::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;
m_AdoRS.SetAdoConnection( &m_pMainFrame->m_adoConnection );
m_bInit = true;
m_strMsg="¡¡¡¡µ÷Ñм°³é½±ÏµÍ³ÊÇÒÔÊÖ»ú¶ÌÐÅ×÷ΪͨѶ·½Ê½£¬À´Õ¹¿ªÎÊ´ð¡¢Åжϡ¢Í³¼Æ¡¢³é½±µÈ»¥¶¯¹¦ÄÜ£»ÒµÎñ³ä·ÖÌåÏÖ¶ÌÐŵÄÓŵ㣺»¥¶¯ÐÔÇ¿¡¢²ÎÓëÃæ¹ã¡¢¼´Ê±¿ìËÙ£¬ÊÊÓÃÓÚ¸÷ÖÖÏÖ³¡»î¶¯¡¢¹ã¸æ»î¶¯»ò´ó·¶Î§µÄÊг¡µ÷²é»î¶¯£¬Èô¿ÉÉèÖÃÊʶȽ±Æ·Ôò¸üÄܹ»ÔÊ·Öµ÷¶¯ÊÖ»úÓû§µÄ»î¶¯²ÎÓë»ý¼«ÐÔ£¬´Ó¶ø´ïµ½µ÷²é½á¹û·¶Î§¹ã¡¢ÐÅϢ׼ȷµÄÄ¿µÄ¡£ÔÚ»îÔ¾ÏÖ³¡Æø·Õ¡¢¼ÓÉîÓû§¶Ô»î¶¯Ó¡ÏóµÄͬʱËѼ¯ÓÐÓõĿͻ§×ÊÁÏ£¬±ãÓÚÈÕºóµÄ¹«¹ØÐû´«¼°¿Í»§·þÎñ¡£\r\n\r\n" \
"¡¡¡¡Èç¹ûÄãÐèÒªµ÷Ñм°³é½±ÏµÍ³¹¦ÄÜ£¬ÇëÌîºÃÒÔÏÂÉêÇë±í£¬ÎÒÃǵŤ×÷ÈËÔ±½«»á¾¡¿ìÓëÄãÁªÏµ¡£";
#ifdef MOBSET_OEM
m_L_Url.ShowWindow(SW_HIDE);
CString strTitle;
m_S_Title.GetWindowText(strTitle);
strTitle.Replace( _T("¶ÌÐÅÒ×-") , _T("") );
m_S_Title.SetWindowText(strTitle);
#else
m_L_Url.SetTextColor( RGB(255,0,0) );
m_L_Url.SetLinkText( "http://www.mobset.com/sms_pro_01.htm" );
m_L_Url.SetLink( true );
m_L_Url.SetLinkCursor( AfxGetApp()->LoadCursor( IDC_C_HAND ) );
//m_L_Url.SetFontSize(16);
#endif
UpdateData(false);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CFSmsAword_SQ::OnSize(UINT nType, int cx, int cy)
{
CDialog::OnSize(nType, cx, cy);
if ( m_bInit && cx>0 && cy>0 )
{
CRect rect;
GetDlgItem(IDC_SWT_S1)->GetWindowRect(&rect);
this->ScreenToClient(&rect);
long lX = (cx-rect.Width())/2;
long lY = (cy-rect.Height())/2;
if ( lY > 20 )
lY = lY-lY/2;
lX = rect.left-lX;
lY = rect.top-lY;
MoveCtrl(IDC_SWT_S1,lX,lY);
MoveCtrl(IDC_SWT_S2,lX,lY);
MoveCtrl(IDC_SWT_S3,lX,lY);
MoveCtrl(IDC_SWT_S4,lX,lY);
MoveCtrl(IDC_SWT_S5,lX,lY);
MoveCtrl(IDC_SWT_S6,lX,lY);
MoveCtrl(IDC_SWT_S7,lX,lY);
MoveCtrl(IDC_SWT_S8,lX,lY);
MoveCtrl(IDC_SWT_NAME,lX,lY);
MoveCtrl(IDC_SWT_TEL,lX,lY);
MoveCtrl(IDC_SWT_MOBILE,lX,lY);
MoveCtrl(IDC_SWT_EMAIL,lX,lY);
MoveCtrl(IDC_SWT_HTTP,lX,lY);
MoveCtrl(IDC_SWT_BZ,lX,lY);
MoveCtrl(IDC_SWT_SUBMIT,lX,lY);
MoveCtrl(IDC_SWT_URL,lX,lY);
}
}
void CFSmsAword_SQ::OnSwtSubmit()
{
if ( !UpdateData(true))
return ;
if ( m_strName.GetLength()<=0 )
{
MessageBox( _T("×ÊÁÏÊäÈë²»ÍêÕû£ºÇëÌîÈëÐÕÃû!"),_T("´íÎó"),MB_ICONWARNING );
return;
}
if ( m_strTel.GetLength()<=0 )
{
MessageBox( _T("×ÊÁÏÊäÈë²»ÍêÕû£ºÇëÌîÈëÁªÏµµç»°!"),_T("´íÎó"),MB_ICONWARNING );
return;
}
/*
if ( m_strHttp.GetLength()<=0 )
{
MessageBox( "×ÊÁÏÊäÈë²»ÍêÕû£ºÇëÌîÈëʹÓÃÍøÖ·!","´íÎó",MB_ICONWARNING );
return;
}
*/
if ( ::GetTickCount() - m_pMainFrame->m_dwEndTYjTime < 5*60*1000 )
{
MessageBox( _T("¹¦ÄÜÉêÇëµÄÌύʱ¼ä¹ýÓÚÆµ·±£¬ÇëÉÔºóÔÙÊÔ£¡"),_T("ÐÅÏ¢") , MB_ICONINFORMATION );
return ;
}
m_pMainFrame->m_dwEndTYjTime = ::GetTickCount();
REQ_SWT * pSWT = new REQ_SWT;
memset(pSWT,0,sizeof(REQ_SWT));
pSWT->lCorpID = m_pMainFrame->m_lCorpID;
pSWT->lUserID = m_pMainFrame->m_lUserID;
_tcscpy(pSWT->szCorpName , m_pMainFrame->m_Ans_Login.szCorpName );
_tcscpy(pSWT->szLoginName, m_pMainFrame->m_pCurUser->szUser );
_tcscpy(pSWT->szName , m_strName );
_tcscpy(pSWT->szTel , m_strTel );
_tcscpy(pSWT->szMobile , m_strMobile );
_tcscpy(pSWT->szEmail , m_strEmail );
_tcscpy(pSWT->szHttp , m_strHttp );
_tcscpy(pSWT->szBZ , m_strBZ );
pSWT->lSQType = SWT_SQ_TYPE_AWORD;
m_pMainFrame->SendFrame( SMSFUNC_SWT , (BYTE*)pSWT , sizeof(REQ_SWT) );
}
BOOL CFSmsAword_SQ::ProcessSocket(Socket_Head *pHead)
{
//Ð޸Ĺ«ÓõØÖ·±¾
if (pHead->lFuncType == SMSFUNC_SWT)
{
ANS_SWT * pSWT = (ANS_SWT *)pHead->pFrame;
if ( pSWT->bOK )
{
MessageBox( _T("µ÷Ñм°³é½±ÏµÍ³¿ªÍ¨ÉêÇëÒѳɹ¦Ìá½»£¬ÎÒÃǻᾡ¿ì´¦Àí£¡"),_T("ÐÅÏ¢"),MB_ICONINFORMATION );
m_strName =_T("");
m_strTel = _T("");
m_strEmail=_T("");
m_strMobile=_T("");
m_strHttp=_T("");
m_strBZ=_T("");
UpdateData(false);
}
else
{
MessageBox( _T("µ÷Ñм°³é½±ÏµÍ³¿ªÍ¨ÉêÇëʧ°Ü£¬ÇëÓë¹ÜÀíÔ±ÁªÏµ£¡"),_T("ÐÅÏ¢"),MB_ICONWARNING );
}
return true;
}
return false;
}
void CFSmsAword_SQ::MoveCtrl(UINT lID,long lX, long lY)
{
CRect rect;
GetDlgItem(lID)->GetWindowRect(&rect);
this->ScreenToClient(&rect);
rect.left -= lX;
rect.right-= lX;
rect.top -= lY;
rect.bottom -= lY;
GetDlgItem(lID)->MoveWindow(&rect);
}
void CFSmsAword_SQ::OnOK()
{
//CDialog::OnOK();
}
void CFSmsAword_SQ::OnCancel()
{
//CDialog::OnCancel();
}