SmsManager/DLG_C_KF_Modify.cpp

255 lines
6.7 KiB
C++
Raw Normal View History

2025-01-14 10:46:18 +08:00
// DLG_C_KF_Modify.cpp : implementation file
//
#include "stdafx.h"
#include "smsmanager.h"
#include "DLG_C_KF_Modify.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// DLG_C_KF_Modify dialog
#include "C_KF.h"
DLG_C_KF_Modify::DLG_C_KF_Modify(CWnd* pParent /*=NULL*/)
: CDialog(DLG_C_KF_Modify::IDD, pParent)
{
//{{AFX_DATA_INIT(DLG_C_KF_Modify)
m_tBirthday = COleDateTime::GetCurrentTime();
m_strBZ = _T("");
m_strFax = _T("");
m_strEmail = _T("");
m_strJob = _T("");
m_strMobile = _T("");
m_strName = _T("");
m_strNickName = _T("");
m_strTel = _T("");
m_lSex = -1;
m_strBranch = _T("");
m_strPasswd = _T("");
m_strLoginName = _T("");
m_bNoLTD = FALSE;
//}}AFX_DATA_INIT
m_pKFDlg = (CC_KF *)pParent;
memset( &m_KFData , 0 , sizeof(m_KFData));
m_bAdd = false;
m_Pos = 0;
memset( m_szPasswd , 0 , sizeof(m_szPasswd) );
}
void DLG_C_KF_Modify::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(DLG_C_KF_Modify)
DDX_Control(pDX, IDC_YWY_MODIFY_PASSWD, m_E_Passwd);
DDX_DateTimeCtrl(pDX, IDC_YWY_MODIFY_BIRTHDAY, m_tBirthday);
DDX_Text(pDX, IDC_YWY_MODIFY_BZ, m_strBZ);
DDV_MaxChars(pDX, m_strBZ, 120);
DDX_Text(pDX, IDC_YWY_MODIFY_FAX, m_strFax);
DDV_MaxChars(pDX, m_strFax, 30);
DDX_Text(pDX, IDC_YWY_MODIFY_EMAIL, m_strEmail);
DDV_MaxChars(pDX, m_strEmail, 62);
DDX_Text(pDX, IDC_YWY_MODIFY_JOB, m_strJob);
DDV_MaxChars(pDX, m_strJob, 30);
DDX_Text(pDX, IDC_YWY_MODIFY_MOBILE, m_strMobile);
DDV_MaxChars(pDX, m_strMobile, 30);
DDX_Text(pDX, IDC_YWY_MODIFY_NAME, m_strName);
DDV_MaxChars(pDX, m_strName, 22);
DDX_Text(pDX, IDC_YWY_MODIFY_NAME2, m_strNickName);
DDV_MaxChars(pDX, m_strNickName, 20);
DDX_Text(pDX, IDC_YWY_MODIFY_TEL, m_strTel);
DDV_MaxChars(pDX, m_strTel, 30);
DDX_CBIndex(pDX, IDC_YWY_MODIFY_SEX, m_lSex);
DDX_Text(pDX, IDC_YWY_MODIFY_BRANCH, m_strBranch);
DDV_MaxChars(pDX, m_strBranch, 30);
DDX_Text(pDX, IDC_YWY_MODIFY_PASSWD, m_strPasswd);
DDV_MaxChars(pDX, m_strPasswd, 15);
DDX_Text(pDX, IDC_YWY_MODIFY_LOGINNAME, m_strLoginName);
DDV_MaxChars(pDX, m_strLoginName, 15);
DDX_Check(pDX, IDC_YWY_MODIFY_NOLTD, m_bNoLTD);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(DLG_C_KF_Modify, CDialog)
//{{AFX_MSG_MAP(DLG_C_KF_Modify)
ON_BN_CLICKED(IDC_YWY_MODIFY_REPASSWD, OnYwyModifyRepasswd)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// DLG_C_KF_Modify message handlers
BOOL DLG_C_KF_Modify::OnInitDialog()
{
CDialog::OnInitDialog();
m_strName = m_KFData.szName;
m_strNickName = m_KFData.szNickName;
long lSex = 0;
if ( CString(m_KFData.szSex)==_T("<EFBFBD><EFBFBD>") )
lSex = 1;
if ( CString(m_KFData.szSex)==_T("Ů") )
lSex = 2;
m_lSex = lSex;
COleDateTime tTemp(m_KFData.tBirthday);
if ( tTemp.GetStatus() != 0 ) //<2F><>Чʱ<D0A7><CAB1>
{
m_tBirthday.SetStatus( COleDateTime::null );
}
else
{
m_tBirthday = tTemp;
}
m_strBranch = m_KFData.szBranch;
m_strJob = m_KFData.szJob;
m_strTel = m_KFData.szTel;
m_strFax = m_KFData.szFax;
m_strMobile = m_KFData.szMobile;
m_strEmail = m_KFData.szEmail;
m_strBZ = m_KFData.szBZ;
m_bNoLTD = m_KFData.bNoLTD;
m_strLoginName = m_KFData.szLoginName;
if ( _tcslen(m_szPasswd) <= 0 )
OnYwyModifyRepasswd();
UpdateData(false);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void DLG_C_KF_Modify::OnOK()
{
if ( !UpdateData(true) )
return ;
if (m_strName.GetLength() <= 0 )
{
GetDlgItem(IDC_YWY_MODIFY_NAME)->SetFocus();
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><EFBFBD><EFBFBD>") , MB_ICONWARNING );
return ;
}
if (m_strLoginName.GetLength() <= 0 )
{
GetDlgItem(IDC_YWY_MODIFY_LOGINNAME)->SetFocus();
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><EFBFBD><EFBFBD>") , MB_ICONWARNING );
return ;
}
_tcscpy( m_KFData.szName , m_strName );
_tcscpy( m_KFData.szNickName , m_strNickName );
if ( m_lSex == 0 )
_tcscpy( m_KFData.szSex , _T("") );
else
if ( m_lSex == 1 )
_tcscpy( m_KFData.szSex , _T("<EFBFBD><EFBFBD>") );
else
_tcscpy( m_KFData.szSex , _T("Ů") );
_tcscpy( m_KFData.szBranch , m_strBranch );
_tcscpy( m_KFData.szJob , m_strJob );
_tcscpy( m_KFData.szTel , m_strTel );
_tcscpy( m_KFData.szFax , m_strFax );
_tcscpy( m_KFData.szMobile , m_strMobile );
_tcscpy( m_KFData.szEmail , m_strEmail );
_tcscpy( m_KFData.szBZ , m_strBZ );
_tcscpy( m_KFData.szLoginName , m_strLoginName );
m_KFData.bNoLTD = m_bNoLTD;
if ( m_tBirthday.GetStatus() == 0 )
m_tBirthday.GetAsSystemTime( m_KFData.tBirthday );
else
memset(&m_KFData.tBirthday,0,sizeof(m_KFData.tBirthday));
if ( m_pKFDlg && m_pKFDlg->FindKFName( m_KFData.szName,m_Pos ) )
{
GetDlgItem(IDC_YWY_MODIFY_NAME)->SetFocus();
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>!") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
return ;
}
if ( m_pKFDlg && m_pKFDlg->FindKFLoginName( m_KFData.szLoginName,m_Pos ) )
{
GetDlgItem(IDC_YWY_MODIFY_LOGINNAME)->SetFocus();
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>!") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_ICONWARNING );
return ;
}
if ( m_strPasswd.GetLength() > 0 )
_tcscpy( m_szPasswd , m_strPasswd );
char szUser[32]={0};
char szPasswd[64]={0};
char szPasswd2[64]={0};
#ifdef _UNICODE
strcpy(szUser , CW2A(m_KFData.szLoginName) );
strcpy(szPasswd , CW2A(m_szPasswd));
#else
strcpy(szUser , m_KFData.szLoginName );
strcpy(szPasswd , m_szPasswd);
#endif
CDes des;
long lOut=sizeof(szPasswd2);
des.Encrypt( szPasswd , strlen(szPasswd) , szPasswd2 , lOut , szUser , 8 );
#ifdef _UNICODE
_tcscpy(m_KFData.szPasswd , CA2W(szPasswd2));
#else
strcpy(m_KFData.szPasswd , szPasswd2);
#endif
CDialog::OnOK();
}
void DLG_C_KF_Modify::SetParam(ANS_GetKFData data, POSITION pos, BOOL bAdd)
{
m_KFData = data;
m_bAdd = bAdd;
m_Pos = pos;
char szUser[32]={0};
char szPasswd[64]={0};
char szPasswd2[64]={0};
#ifdef _UNICODE
strcpy(szUser , CW2A(data.szLoginName) );
strcpy(szPasswd , CW2A(data.szPasswd));
#else
strcpy(szUser , data.szLoginName );
strcpy(szPasswd ,data.szPasswd);
#endif
CDes des;
long lOut=sizeof(szPasswd2);
des.Decrypt( szPasswd , strlen(szPasswd) , szPasswd2 , lOut , szUser , 8 );
#ifdef _UNICODE
_tcscpy(m_szPasswd , CA2W(szPasswd2));
#else
strcpy(m_szPasswd , szPasswd2);
#endif
}
ANS_GetKFData DLG_C_KF_Modify::GetParam()
{
return m_KFData;
}
void DLG_C_KF_Modify::OnYwyModifyRepasswd()
{
// m_bSetPasswd = true;
srand(::GetTickCount());
CString strTemp;
strTemp.Format( _T("%03d%03d") , rand(),rand());
strTemp.SetAt( 6 , 0 );
//strTemp = _T("123456");
m_strPasswd = strTemp;
m_E_Passwd.SetWindowText(strTemp);
}