362 lines
9.3 KiB
C++
362 lines
9.3 KiB
C++
// DLG_Commend.cpp : implementation file
|
||
//
|
||
|
||
#include "stdafx.h"
|
||
#include "corpsms.h"
|
||
#include "DLG_Commend.h"
|
||
|
||
#ifdef _DEBUG
|
||
#define new DEBUG_NEW
|
||
#undef THIS_FILE
|
||
static char THIS_FILE[] = __FILE__;
|
||
#endif
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// DLG_Commend dialog
|
||
|
||
#include "MainFrm.h"
|
||
|
||
DLG_Commend::DLG_Commend(CWnd* pParent /*=NULL*/)
|
||
: CDialog(DLG_Commend::IDD, pParent)
|
||
{
|
||
//{{AFX_DATA_INIT(DLG_Commend)
|
||
m_strEmail = _T("");
|
||
m_strMobile = _T("");
|
||
m_strName = _T("");
|
||
m_strTel = _T("");
|
||
m_strTJ_BZ = _T("");
|
||
m_strTJ_CorpName = _T("");
|
||
m_strTJ_Email = _T("");
|
||
m_strTJ_Mobile = _T("");
|
||
m_strTJ_Name = _T("");
|
||
m_strTJ_Tel = _T("");
|
||
//}}AFX_DATA_INIT
|
||
|
||
m_pMainFrame = (CMainFrame *)pParent;
|
||
memset(&m_GetMy, 0 , sizeof(m_GetMy));
|
||
|
||
|
||
m_hHarrow = AfxGetApp()->LoadCursor( IDC_C_HAND );
|
||
|
||
m_lChickCount=4;
|
||
m_pClieck[0].top = 69;
|
||
m_pClieck[0].bottom= 103;
|
||
m_pClieck[0].left = 369;
|
||
m_pClieck[0].right = 493;
|
||
|
||
m_pClieck[1].top = 183;
|
||
m_pClieck[1].bottom= 217;
|
||
m_pClieck[1].left = 369;
|
||
m_pClieck[1].right = 493;
|
||
|
||
m_pClieck[2].top = 297;
|
||
m_pClieck[2].bottom= 331;
|
||
m_pClieck[2].left = 369;
|
||
m_pClieck[2].right = 493;
|
||
|
||
m_pClieck[3].top = 360;
|
||
m_pClieck[3].bottom= 400;
|
||
m_pClieck[3].left = 356;
|
||
m_pClieck[3].right = 509;
|
||
|
||
}
|
||
|
||
|
||
void DLG_Commend::DoDataExchange(CDataExchange* pDX)
|
||
{
|
||
CDialog::DoDataExchange(pDX);
|
||
//{{AFX_DATA_MAP(DLG_Commend)
|
||
DDX_Text(pDX, IDC_COMMEND_EMAIL, m_strEmail);
|
||
DDV_MaxChars(pDX, m_strEmail, 60);
|
||
DDX_Text(pDX, IDC_COMMEND_MOBILE, m_strMobile);
|
||
DDV_MaxChars(pDX, m_strMobile, 30);
|
||
DDX_Text(pDX, IDC_COMMEND_NAME, m_strName);
|
||
DDV_MaxChars(pDX, m_strName, 30);
|
||
DDX_Text(pDX, IDC_COMMEND_TEL, m_strTel);
|
||
DDV_MaxChars(pDX, m_strTel, 30);
|
||
DDX_Text(pDX, IDC_COMMEND_TJ_BZ, m_strTJ_BZ);
|
||
DDV_MaxChars(pDX, m_strTJ_BZ, 200);
|
||
DDX_Text(pDX, IDC_COMMEND_TJ_CORPNAME, m_strTJ_CorpName);
|
||
DDV_MaxChars(pDX, m_strTJ_CorpName, 60);
|
||
DDX_Text(pDX, IDC_COMMEND_TJ_EMAIL, m_strTJ_Email);
|
||
DDV_MaxChars(pDX, m_strTJ_Email, 60);
|
||
DDX_Text(pDX, IDC_COMMEND_TJ_MOBILE, m_strTJ_Mobile);
|
||
DDV_MaxChars(pDX, m_strTJ_Mobile, 30);
|
||
DDX_Text(pDX, IDC_COMMEND_TJ_NAME, m_strTJ_Name);
|
||
DDV_MaxChars(pDX, m_strTJ_Name, 30);
|
||
DDX_Text(pDX, IDC_COMMEND_TJ_TEL, m_strTJ_Tel);
|
||
DDV_MaxChars(pDX, m_strTJ_Tel, 30);
|
||
//}}AFX_DATA_MAP
|
||
}
|
||
|
||
|
||
BEGIN_MESSAGE_MAP(DLG_Commend, CDialog)
|
||
//{{AFX_MSG_MAP(DLG_Commend)
|
||
ON_BN_CLICKED(IDC_COMMEND_MYCOMMEND, OnCommendMycommend)
|
||
ON_BN_CLICKED(IDC_COMMEND_URL, OnCommendUrl)
|
||
ON_BN_CLICKED(IDC_COMMEND_DH, OnCommendDh)
|
||
ON_WM_ERASEBKGND()
|
||
ON_WM_CTLCOLOR()
|
||
ON_WM_SETCURSOR()
|
||
ON_WM_LBUTTONUP()
|
||
//}}AFX_MSG_MAP
|
||
END_MESSAGE_MAP()
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// DLG_Commend message handlers
|
||
|
||
void DLG_Commend::OnOK()
|
||
{
|
||
if ( !UpdateData(true) )
|
||
return ;
|
||
|
||
if ( m_strName.GetLength()<3 )
|
||
{
|
||
MessageBox(_T("©<EFBFBD><EFBFBD><EFBFBD>ֶΣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_COMMEND_NAME)->SetFocus();
|
||
return;
|
||
}
|
||
if ( m_strMobile.GetLength()<3 )
|
||
{
|
||
MessageBox(_T("©<EFBFBD><EFBFBD><EFBFBD>ֶΣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD><EFBFBD>绰<EFBFBD><EFBFBD>") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_COMMEND_TEL)->SetFocus();
|
||
return;
|
||
}
|
||
|
||
if ( m_strTJ_CorpName.GetLength()<3 )
|
||
{
|
||
MessageBox(_T("©<EFBFBD><EFBFBD><EFBFBD>ֶΣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_COMMEND_TJ_CORPNAME)->SetFocus();
|
||
return;
|
||
}
|
||
if ( m_strTJ_Name.GetLength()<3 )
|
||
{
|
||
MessageBox(_T("©<EFBFBD><EFBFBD><EFBFBD>ֶΣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_COMMEND_TJ_NAME)->SetFocus();
|
||
return;
|
||
}
|
||
if ( m_strTJ_Tel.GetLength()<3 )
|
||
{
|
||
MessageBox(_T("©<EFBFBD><EFBFBD><EFBFBD>ֶΣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD>绰<EFBFBD><EFBFBD>") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
GetDlgItem(IDC_COMMEND_TJ_TEL)->SetFocus();
|
||
return;
|
||
}
|
||
|
||
long lSize = sizeof(REQ_Commend_Add)+sizeof(ANS_GetCommendData);
|
||
BYTE * pAddData = new BYTE[lSize];memset(pAddData,0,lSize);
|
||
REQ_Commend_Add * pAdd = (REQ_Commend_Add *)pAddData; //ͷ
|
||
ANS_GetCommendData * pCommendData = (ANS_GetCommendData *)(pAddData+sizeof(REQ_Commend_Add));
|
||
pCommendData->lCorpID = m_pMainFrame->m_lCorpID;
|
||
pCommendData->lUserID = m_pMainFrame->m_lUserID;
|
||
pCommendData->lCommendType = 0; //<2F><><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD>Ƽ<EFBFBD><C6BC>ͻ<EFBFBD>
|
||
_tcscpy(pCommendData->szName , m_strName);
|
||
_tcscpy(pCommendData->szTel , m_strTel);
|
||
_tcscpy(pCommendData->szMobile , m_strMobile);
|
||
_tcscpy(pCommendData->szEmail , m_strEmail);
|
||
_tcscpy(pCommendData->szTJ_CorpName , m_strTJ_CorpName);
|
||
_tcscpy(pCommendData->szTJ_Name , m_strTJ_Name);
|
||
_tcscpy(pCommendData->szTJ_Tel , m_strTJ_Tel);
|
||
_tcscpy(pCommendData->szTJ_Mobile , m_strTJ_Mobile);
|
||
_tcscpy(pCommendData->szTJ_Email , m_strTJ_Email);
|
||
_tcscpy(pCommendData->szTJ_BZ , m_strTJ_BZ);
|
||
::GetLocalTime(&pCommendData->tCreateTime);
|
||
pAdd->lCount = 1;
|
||
m_pMainFrame->SendFrame( SMSFUNC_COMMEND_ADD , pAddData , lSize );
|
||
//CDialog::OnOK();
|
||
}
|
||
|
||
BOOL DLG_Commend::ProcessSocket(Socket_Head_Add *pHead, BYTE *pFrame)
|
||
{
|
||
//<2F><><EFBFBD><EFBFBD>
|
||
if (pHead->lFuncType == SMSFUNC_COMMEND_ADD)
|
||
{
|
||
ANS_Commend_Add * pAdd = (ANS_Commend_Add *)pFrame;
|
||
ANS_GetCommendData * pData = (ANS_GetCommendData *)(pFrame+sizeof(ANS_Commend_Add));
|
||
if ( pAdd->lCount == 1 ) //<2F><><EFBFBD><EFBFBD>1ʱ<31><CAB1>ʾ<EFBFBD>ijɹ<C4B3>
|
||
{
|
||
if ( pData->lCommendType == 1 )
|
||
{
|
||
if ( pAdd->lCount == 1 ) //<2F><><EFBFBD><EFBFBD>1ʱ<31><CAB1>ʾ<EFBFBD>ijɹ<C4B3>
|
||
{
|
||
MessageBox(_T("<EFBFBD><EFBFBD><EFBFBD>Ķһ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>ѳɹ<EFBFBD><EFBFBD>Ǽǣ<EFBFBD><EFBFBD>Ժ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ר<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD>dz<EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>") , _T("<EFBFBD>ɹ<EFBFBD>") , MB_ICONINFORMATION );
|
||
this->EndDialog(IDOK);
|
||
}
|
||
else
|
||
{
|
||
MessageBox(_T("<EFBFBD><EFBFBD><EFBFBD>Ķһ<EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>Ǽ<EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>") , _T("ʧ<EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
}
|
||
}
|
||
else
|
||
{
|
||
int iRet = MessageBox(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD>ѳɹ<EFBFBD><EFBFBD>Ǽǣ<EFBFBD><EFBFBD>dz<EFBFBD><EFBFBD><EFBFBD>л<EFBFBD><EFBFBD><EFBFBD>Զ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֧<EFBFBD>֣<EFBFBD>\r\n<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǽ<EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD><EFBFBD>") , _T("<EFBFBD>ɹ<EFBFBD>") , MB_ICONQUESTION|MB_YESNO );
|
||
if ( iRet!= IDYES )
|
||
{
|
||
this->EndDialog(IDOK);
|
||
}
|
||
else
|
||
{
|
||
//m_strEmail = _T("");
|
||
//m_strMobile = _T("");
|
||
//m_strName = _T("");
|
||
//m_strTel = _T("");
|
||
m_strTJ_BZ = _T("");
|
||
m_strTJ_CorpName = _T("");
|
||
m_strTJ_Email = _T("");
|
||
m_strTJ_Mobile = _T("");
|
||
m_strTJ_Name = _T("");
|
||
m_strTJ_Tel = _T("");
|
||
UpdateData(false);
|
||
GetDlgItem(IDC_COMMEND_NAME)->SetFocus();
|
||
}
|
||
}
|
||
}
|
||
else
|
||
{
|
||
MessageBox(_T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD><EFBFBD>ͻ<EFBFBD><EFBFBD>ѵǼ<EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD><EFBFBD>Ƿ<EFBFBD><EFBFBD>쳣Ȼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԣ<EFBFBD>") , _T("ʧ<EFBFBD><EFBFBD>") , MB_ICONWARNING );
|
||
}
|
||
return true;
|
||
}
|
||
return false;
|
||
}
|
||
|
||
void DLG_Commend::OnCommendMycommend()
|
||
{
|
||
REQ_GetCommend * pCommend = new REQ_GetCommend;
|
||
memset(pCommend , 0 , sizeof(REQ_GetCommend));
|
||
pCommend->lUserID = m_pMainFrame->m_lUserID;
|
||
m_pMainFrame->SendFrame( SMSFUNC_GETCOMMEND , (BYTE*)pCommend , sizeof(REQ_GetCommend) );
|
||
}
|
||
|
||
void DLG_Commend::OnCommendUrl()
|
||
{
|
||
CString strLink=_T("http://www.mobset.com/news/tj.asp");
|
||
|
||
ShellExecute(NULL,_T("open"),strLink,NULL,NULL,SW_SHOWNORMAL);
|
||
|
||
}
|
||
|
||
void DLG_Commend::OnCommendDh()
|
||
{
|
||
REQ_GetCommend_LP * pCommend = new REQ_GetCommend_LP;
|
||
memset(pCommend , 0 , sizeof(REQ_GetCommend_LP));
|
||
pCommend->lUserID = m_pMainFrame->m_lUserID;
|
||
m_pMainFrame->SendFrame( SMSFUNC_GETCOMMEND_LP , (BYTE*)pCommend , sizeof(REQ_GetCommend_LP) );
|
||
|
||
}
|
||
|
||
void DLG_Commend::SetParam(ANS_Commend_GetMy getMy)
|
||
{
|
||
m_GetMy = getMy;
|
||
}
|
||
|
||
BOOL DLG_Commend::OnInitDialog()
|
||
{
|
||
CDialog::OnInitDialog();
|
||
|
||
m_strName = m_GetMy.szName;
|
||
m_strTel = m_GetMy.szTel;
|
||
m_strMobile = m_GetMy.szMobile;
|
||
m_strEmail = m_GetMy.szEmail;
|
||
|
||
UpdateData(false);
|
||
|
||
|
||
return TRUE; // return TRUE unless you set the focus to a control
|
||
// EXCEPTION: OCX Property Pages should return FALSE
|
||
}
|
||
|
||
BOOL DLG_Commend::OnEraseBkgnd(CDC* pDC)
|
||
{
|
||
CBrush Brush (RGB (228 , 242 , 255) );
|
||
CBrush* pOldBrush = pDC->SelectObject(&Brush);
|
||
// Get the area that needs to be erased .
|
||
CRect reClip;
|
||
pDC->GetClipBox(&reClip);
|
||
//Paint the area.
|
||
pDC->PatBlt(reClip.left , reClip.top , reClip.Width ( ) , reClip.Height( ) , PATCOPY );
|
||
//Unselect brush out of device context .
|
||
pDC->SelectObject(pOldBrush );
|
||
// Return nonzero to half fruther processing .
|
||
return TRUE;
|
||
|
||
|
||
// return CDialog::OnEraseBkgnd(pDC);
|
||
}
|
||
|
||
HBRUSH DLG_Commend::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
|
||
{
|
||
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
|
||
|
||
|
||
if(nCtlColor==CTLCOLOR_STATIC)
|
||
{
|
||
pDC->SetBkMode(TRANSPARENT);
|
||
pDC->SetTextColor(RGB(0,0,0));
|
||
pDC->SetBkColor(RGB(228,242,255));
|
||
HBRUSH b=CreateSolidBrush(RGB(228,242,255));
|
||
return b;
|
||
}
|
||
|
||
// TODO: Return a different brush if the default is not desired
|
||
return hbr;
|
||
}
|
||
|
||
BOOL DLG_Commend::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
|
||
{
|
||
//<2F><><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֮<EFBFBD><D6AE>
|
||
if ( isMouseSel()>0 )
|
||
::SetCursor( m_hHarrow );
|
||
else
|
||
return CDialog::OnSetCursor(pWnd, nHitTest, message);
|
||
|
||
return true;
|
||
}
|
||
|
||
void DLG_Commend::OnLButtonUp(UINT nFlags, CPoint point)
|
||
{
|
||
long lSel=isMouseSel();
|
||
switch(lSel)
|
||
{
|
||
case 1:
|
||
OnCommendUrl();
|
||
break;
|
||
case 2:
|
||
OnCommendMycommend();
|
||
break;
|
||
case 3:
|
||
OnCommendDh();
|
||
break;
|
||
case 4:
|
||
OnOK();
|
||
break;
|
||
}
|
||
|
||
|
||
CDialog::OnLButtonUp(nFlags, point);
|
||
}
|
||
|
||
long DLG_Commend::isMouseSel()
|
||
{
|
||
POINT p;
|
||
::GetCursorPos(&p);
|
||
this->ScreenToClient(&p);
|
||
/*
|
||
CDC * pDC = this->GetDC();
|
||
if ( !pDC )
|
||
return 0;
|
||
*/
|
||
long lSel=0;
|
||
for ( int i=0 ; i< m_lChickCount ; i++ ) //<2F><><EFBFBD>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>
|
||
{
|
||
if ( m_pClieck[i].left <=p.x &&
|
||
m_pClieck[i].right >=p.x &&
|
||
m_pClieck[i].top <=p.y &&
|
||
m_pClieck[i].bottom>=p.y )
|
||
{
|
||
lSel =i+1;
|
||
break;
|
||
}
|
||
}
|
||
return lSel;
|
||
}
|