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

217 lines
5.0 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_TDSet_Add.cpp : implementation file
//
#include "stdafx.h"
#include "smsmanager.h"
#include "DLG_TDSet_Add.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// DLG_TDSet_Add dialog
DLG_TDSet_Add::DLG_TDSet_Add(CWnd* pParent /*=NULL*/)
: CDialog(DLG_TDSet_Add::IDD, pParent)
, m_lYYSType(0)
{
//{{AFX_DATA_INIT(DLG_TDSet_Add)
m_strBZ = _T("");
m_lCorpID = -1;
m_lUserID = -1;
m_strMobile = _T("");
m_bEnable = false;
//}}AFX_DATA_INIT
memset(&m_TDSet, 0, sizeof(m_TDSet));
m_lModifyCount = 0;
}
void DLG_TDSet_Add::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(DLG_TDSet_Add)
DDX_Text(pDX, IDC_TDSET_ADD_BZ, m_strBZ);
DDV_MaxChars(pDX, m_strBZ, 120);
DDX_Text(pDX, IDC_TDSET_ADD_CORPID, m_lCorpID);
DDV_MinMaxLong(pDX, m_lCorpID, -1, 10000000);
DDX_Text(pDX, IDC_TDSET_ADD_USERID, m_lUserID);
DDV_MinMaxLong(pDX, m_lUserID, -1, 1000000000);
DDX_Text(pDX, IDC_TDSET_ADD_MOBILE, m_strMobile);
DDX_Control(pDX, IDC_TDSET_ADD_UNICOM, m_wndUnicom);
DDX_Control(pDX, IDC_TDSET_ADD_TELCOM, m_wndTelcom);
DDX_Control(pDX, IDC_TDSET_ADD_PHS, m_wndPhs);
DDX_Control(pDX, IDC_TDSET_ADD_CMCC, m_wndCmcc);
DDX_Control(pDX, IDC_TDSET_ADD_CW, m_B_CW);
DDX_Check(pDX, IDC_TDSET_ADD_ENABLE, m_bEnable);
//}}AFX_DATA_MAP
DDX_CBIndex(pDX, IDC_TDSET_ADD_YYS, m_lYYSType);
}
BEGIN_MESSAGE_MAP(DLG_TDSet_Add, CDialog)
//{{AFX_MSG_MAP(DLG_TDSet_Add)
//}}AFX_MSG_MAP
ON_BN_CLICKED(IDOK, &DLG_TDSet_Add::OnBnClickedOk)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// DLG_TDSet_Add message handlers
BOOL DLG_TDSet_Add::OnInitDialog()
{
CDialog::OnInitDialog();
m_bEnable = m_TDSet.lStatus;
m_lCorpID = m_TDSet.lCorpID;
m_strMobile = m_TDSet.szMobile;
m_strBZ = m_TDSet.szBZ;
m_lYYSType = m_TDSet.lYYSType; //运营商类型0自动;1-移动;2-联通;3-小灵通;4-电信;5-海外
UpdateData(false);
/*
m_B_CW.SetCheck(m_CliTD.bCW);
if (!m_CliTD.bCliTD_CW)
m_B_CW.ShowWindow(SW_HIDE);
*/
m_TDSet.szOutAll[0] = '1' + m_B_CW.GetCheck();
//_tcscpy(m_TDSet.szTD, _T("0000"));
//_tcscpy(m_TDSet.szOutAll, _T("0000"));
TCHAR szBuf[32] = { 0 };
_tcscpy(szBuf, m_TDSet.szTD);
m_wndCmcc.SetCurSel(szBuf[0] - '0');
m_wndUnicom.SetCurSel(szBuf[1] - '0');
m_wndPhs.SetCurSel(szBuf[2] - '0');
m_wndTelcom.SetCurSel(szBuf[3] - '0');
if (m_lModifyCount>1)
{
GetDlgItem(IDC_TDSET_ADD_MOBILE)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_TDSET_ADD_MOBILE_S)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_TDSET_ADD_BZ)->ShowWindow(SW_HIDE);
GetDlgItem(IDC_TDSET_ADD_MOBILE_S2)->ShowWindow(SW_HIDE);
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void DLG_TDSet_Add::SetParam(ANS_TDSet_Data data, long lType, long lModifyCount)
{
m_TDSet = data;
m_lType=lType;
m_lModifyCount = lModifyCount;
}
ANS_TDSet_Data DLG_TDSet_Add::GetParam(void)
{
return m_TDSet;
}
void DLG_TDSet_Add::OnBnClickedOk()
{
if ( !UpdateData(true) )
return ;
TCHAR szMobile[32] = { 0 };
_tcscpy(szMobile, m_strMobile);
ExMobileGZM(szMobile); //去除国际码
if (m_lModifyCount <= 1 && !isMobileNum(szMobile)) //不是手机号码,不用添加或修改
{
MessageBox(_T("手机号码输入有误,请检查!"), _T("错误"), MB_ICONWARNING);
GetDlgItem(IDC_TDSET_ADD_MOBILE)->SetFocus();
return;
}
/*
if (m_lModifyCount <= 1 && m_pTDSet && CString(m_TDSet.szMobile) != CString(szMobile))
{
if (m_pTDSet->MobileInList(szMobile))
{
MessageBox(_T("所输入的手机号码已存在,请检查!"), _T("错误"), MB_ICONWARNING);
GetDlgItem(TDSET_MODIFY_MOBILE)->SetFocus();
return;
}
}
*/
if (m_lModifyCount>1)
{
CString str;
str.Format(_T("本次为批量操作,确定后将会更改%d个号码的通道绑定"), m_lModifyCount);
int iRet = MessageBox(str, _T("提问"), MB_ICONWARNING | MB_YESNO);
if (iRet != IDYES)
return;
}
m_TDSet.lStatus = m_bEnable;
m_TDSet.lCorpID = m_lCorpID;
_tcscpy(m_TDSet.szMobile, szMobile);
_tcscpy(m_TDSet.szBZ, m_strBZ);
_tcscpy(m_TDSet.szTD, _T("0000"));
_tcscpy(m_TDSet.szOutAll, _T("0000"));
//m_TDSet.szOutAll[0] = '1' + m_B_CW.GetCheck();
//获取短信通道
memset(m_TDSet.szTD, 0, sizeof(m_TDSet.szTD));
m_TDSet.szTD[0] = '0' + m_wndCmcc.GetCurSel();
m_TDSet.szTD[1] = '0' + m_wndUnicom.GetCurSel();
m_TDSet.szTD[2] = '0' + m_wndPhs.GetCurSel();
m_TDSet.szTD[3] = '0' + m_wndTelcom.GetCurSel();
m_TDSet.szTD[4] = 0;
m_TDSet.lYYSType = m_lYYSType; //运营商类型0自动;1-移动;2-联通;3-小灵通;4-电信;5-海外
CDialog::OnOK();
}
void DLG_TDSet_Add::OnCbnSelchangeBackAddStatus()
{
#ifdef SMSCENTER_GDYD_ADC
if ( !UpdateData(true) )
return ;
if ( m_lStatus == 0 )
{
GetDlgItem(IDC_TDSET_ADD_QR)->EnableWindow(true);
}
else
{
m_lQR = 0;
GetDlgItem(IDC_TDSET_ADD_QR)->EnableWindow(false);
}
UpdateData(false);
#endif
}
void DLG_TDSet_Add::OnCbnSelchangeBackAddQr()
{
#ifdef SMSCENTER_GDYD_ADC
if ( !UpdateData(true) )
return ;
#endif
}