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

255 lines
6.7 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 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);
}