SmsManager/DLG_BBS_See.cpp
2025-01-14 10:46:18 +08:00

211 lines
5.8 KiB
C++

// DLG_BBS_See.cpp : implementation file
//
#include "stdafx.h"
#include "smsmanager.h"
#include "DLG_BBS_See.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// DLG_BBS_See dialog
#include "MainFrm.h"
#include "K_CM.h"
DLG_BBS_See::DLG_BBS_See(CWnd* pParent /*=NULL*/)
: CDialog(DLG_BBS_See::IDD, pParent)
{
//{{AFX_DATA_INIT(DLG_BBS_See)
m_strEmail = _T("");
m_strExpTime = _T("");
m_strMsg = _T("");
m_strName = _T("");
m_strRecver = _T("");
m_strSender = _T("");
m_strSendTime = _T("");
m_strStatus = _T("");
m_strTel = _T("");
m_strType = _T("");
m_strAgent = _T("");
//}}AFX_DATA_INIT
memset(&m_See,0,sizeof(m_See));
m_lType = 0;
m_pParent = pParent;
}
void DLG_BBS_See::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(DLG_BBS_See)
DDX_Text(pDX, IDC_BBS_SEE_EMAIL, m_strEmail);
DDX_Text(pDX, IDC_BBS_SEE_EXPTIME, m_strExpTime);
DDX_Text(pDX, IDC_BBS_SEE_MSG, m_strMsg);
DDX_Text(pDX, IDC_BBS_SEE_NAME, m_strName);
DDX_Text(pDX, IDC_BBS_SEE_RECVER, m_strRecver);
DDX_Text(pDX, IDC_BBS_SEE_SENDER, m_strSender);
DDX_Text(pDX, IDC_BBS_SEE_SENDTIME, m_strSendTime);
DDX_Text(pDX, IDC_BBS_SEE_STATUS, m_strStatus);
DDX_Text(pDX, IDC_BBS_SEE_TEL, m_strTel);
DDX_Text(pDX, IDC_BBS_SEE_TYPE, m_strType);
DDX_Text(pDX, IDC_BBS_SEE_AGENT, m_strAgent);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(DLG_BBS_See, CDialog)
//{{AFX_MSG_MAP(DLG_BBS_See)
ON_BN_CLICKED(IDC_BBS_SEE_COPY, OnBbsSeeCopy)
ON_BN_CLICKED(IDC_BBS_SEE_GETCM, OnBbsSeeGetcm)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// DLG_BBS_See message handlers
BOOL DLG_BBS_See::OnInitDialog()
{
CDialog::OnInitDialog();
if ( m_See.lSCorpID == 0 )
m_strSender.Format(_T("¹ÜÀíÔ±->%s") , m_See.szSLoginName);
else
if ( m_See.lSCorpID == -1 )
m_strSender = _T("ËùÓÐ");
else
if ( m_See.lSCorpID == -200 )
m_strSender.Format(_T("%d(%s->%s)") ,m_See.lSUserID,m_See.szSCorpName,m_See.szSLoginName);
else
m_strSender.Format(_T("%d->%d(%s->%s)") ,m_See.lSCorpID,m_See.lSUserID,m_See.szSCorpName,m_See.szSLoginName);
if ( m_See.lRCorpID == 0 )
m_strRecver.Format( _T("¹ÜÀíÔ±->%d") , m_See.lRUserID);
else
if ( m_See.lRCorpID == -1 )
m_strRecver = _T("ËùÓÐ");
else
if ( m_See.lRCorpID )
m_strRecver.Format(_T("%d") , m_See.lRUserID);
else
m_strRecver.Format(_T("%d->%d") , m_See.lRCorpID,m_See.lRUserID);
//m_strAgent.Format( _T("%d") , m_See.lRAgentID );
//.Format( _T("%d") , m_See.lAgentID );
m_strAgent = m_strYWY;
if ( m_See.lSCorpID != 0 )
{
m_strSendTime.Format( _T("%04d.%02d.%02d %02d:%02d/%04d.%02d.%02d %02d:%02d") , m_See.tSendTime.wYear,m_See.tSendTime.wMonth,m_See.tSendTime.wDay,m_See.tSendTime.wHour,m_See.tSendTime.wMinute,m_See.tExpTime.wYear,m_See.tExpTime.wMonth,m_See.tExpTime.wDay,m_See.tExpTime.wHour,m_See.tExpTime.wMinute);
}
else
{
m_strSendTime.Format( _T("%04d.%02d.%02d %02d:%02d") , m_See.tSendTime.wYear,m_See.tSendTime.wMonth,m_See.tSendTime.wDay,m_See.tSendTime.wHour,m_See.tSendTime.wMinute);
}
m_strExpTime.Format( _T("%04d.%02d.%02d %02d:%02d") , m_See.tExpTime.wYear,m_See.tExpTime.wMonth,m_See.tExpTime.wDay,m_See.tExpTime.wHour,m_See.tExpTime.wMinute);
if ( m_See.lStatus ==0 )
m_strStatus = _T("δ²é¿´");
else
m_strStatus = _T("ÒѲ鿴");
m_strMsg = m_See.szBZ;
m_strName = m_See.szName;
m_strTel = m_See.szTel;
m_strType = m_See.szType;
m_strEmail = m_See.szEmail;
if ( m_lType == 1 ) //²é¿´Ç©Ãû
{
GetDlgItem(IDC_BBS_SEE_GETCM)->ShowWindow(SW_SHOW);
}
UpdateData(false);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void DLG_BBS_See::SetParam(ANS_BBS_SeeData See,CString strYWY,long lType)
{
m_See = See;
m_strYWY = strYWY;
m_lType = lType;
}
ANS_BBS_SeeData DLG_BBS_See::GetParam()
{
return m_See;
}
void DLG_BBS_See::OnBbsSeeCopy()
{
CString strTemp;
strTemp = strTemp + _T("·¢ËÍÈË:")+m_strSender + _T("\r\n");
strTemp = strTemp + _T("ʱ ¼ä:")+m_strSendTime + _T("\r\n");
strTemp = strTemp + _T("Àà ÐÍ:")+m_strType + _T("\r\n");
strTemp = strTemp + _T("ÁªÏµÈË:")+m_strName + _T("\r\n");
strTemp = strTemp + _T("µç »°:")+m_strTel + _T("\r\n");
strTemp = strTemp + _T(" Email:")+m_strEmail + _T("\r\n");
strTemp = strTemp + _T("ÄÚ ÈÝ:\r\n")+m_strMsg + _T("\r\n");
long lLen = (strTemp.GetLength()+1)*sizeof(TCHAR);
HGLOBAL HMem = (TCHAR * )::GlobalAlloc( GMEM_MOVEABLE|GMEM_DDESHARE, lLen );
if ( HMem == NULL )
return;
TCHAR * p = (TCHAR * )::GlobalLock( HMem );
_tcscpy( p , strTemp );
::GlobalUnlock( HMem );
::OpenClipboard(NULL);
::EmptyClipboard();
#ifdef _UNICODE
SetClipboardData(CF_UNICODETEXT, (HANDLE)HMem);
#else
::SetClipboardData(CF_TEXT, (HANDLE)HMem);
#endif
::CloseClipboard();
}
void DLG_BBS_See::OnBbsSeeGetcm()
{
if ( m_lType==1 )
{
CK_CM * pCM = (CK_CM *)m_pParent;
if ( pCM )
{
REQ_Corp_GetCM * pGetCM = new REQ_Corp_GetCM;
memset(pGetCM , 0 , sizeof(REQ_Corp_GetCM) );
CString strBZ = m_See.szBZ;
CString strTemp;
long lBegin=0;
long lEnd=0;
//ÕÒÆóÒµID
lBegin = strBZ.Find( _T("ÆóÒµID:") , lBegin );
lEnd = strBZ.Find( _T("\r") , lBegin );
strTemp = strBZ.Mid(lBegin+_tcslen(_T("ÆóÒµID:")),lEnd-lBegin-_tcslen(_T("ÆóÒµID:")));
pGetCM->lCorpID = _ttol(strTemp);
//ÕÒÓû§Ãû
lBegin = strBZ.Find( _T("Óû§Ãû:") , lBegin );
if ( lBegin>0 )
{
lEnd = strBZ.Find( _T("\r") , lBegin );
strTemp = strBZ.Mid(lBegin+_tcslen(_T("Óû§Ãû:")),lEnd-lBegin-_tcslen(_T("Óû§Ãû:")));
_tcscpy(pGetCM->szLoginName , strTemp );
}
_stprintf( pGetCM->szAdd , _T("ÉêÇëµÄÐÅÏ¢:\r\n%s") , strBZ );
pCM->m_pMainFrame->SendFrame( SMSFUNC_CORP_GETCM , (BYTE*)pGetCM , sizeof(REQ_Corp_GetCM) );
}
}
}