// DLG_Back_Add.cpp : implementation file
//

#include "stdafx.h"
#include "smsmanager.h"
#include "DLG_Back_Add.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// DLG_Back_Add dialog


DLG_Back_Add::DLG_Back_Add(CWnd* pParent /*=NULL*/)
	: CDialog(DLG_Back_Add::IDD, pParent)
{
	//{{AFX_DATA_INIT(DLG_Back_Add)
	m_strBZ = _T("");
	m_lCorpID = -1;
	m_lUserID = -1;
	m_strMobile = _T("");
	m_lStatus = -1;
	//}}AFX_DATA_INIT

	m_lType = 0;  //0-黑名单,1-白名单,2-白名单2
	m_bInport = false;  //是否导入
	m_lQR = 0;
}


void DLG_Back_Add::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(DLG_Back_Add)
	DDX_Text(pDX, IDC_BACK_ADD_BZ, m_strBZ);
	DDV_MaxChars(pDX, m_strBZ, 250);
	DDX_Text(pDX, IDC_BACK_ADD_CORPID, m_lCorpID);
	DDV_MinMaxLong(pDX, m_lCorpID, -1, 100000000);
	DDX_Text(pDX, IDC_BACK_ADD_USERID, m_lUserID);
	DDV_MinMaxLong(pDX, m_lUserID, -10000, 100000000);
	DDX_Text(pDX, IDC_BACK_ADD_MOBILE, m_strMobile);
	DDX_CBIndex(pDX, IDC_BACK_ADD_STATUS, m_lStatus);
	//}}AFX_DATA_MAP
	DDX_CBIndex(pDX, IDC_BACK_ADD_QR, m_lQR);
}


BEGIN_MESSAGE_MAP(DLG_Back_Add, CDialog)
	//{{AFX_MSG_MAP(DLG_Back_Add)
	//}}AFX_MSG_MAP
	ON_BN_CLICKED(IDOK, &DLG_Back_Add::OnBnClickedOk)
	ON_CBN_SELCHANGE(IDC_BACK_ADD_STATUS, &DLG_Back_Add::OnCbnSelchangeBackAddStatus)
	ON_CBN_SELCHANGE(IDC_BACK_ADD_QR, &DLG_Back_Add::OnCbnSelchangeBackAddQr)
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// DLG_Back_Add message handlers


BOOL DLG_Back_Add::OnInitDialog() 
{
	CDialog::OnInitDialog();

	switch(m_lType)
	{
	case 1:
		SetWindowText(_T("添加白名单"));
		break;
	case 2:
		SetWindowText(_T("添加企业白名单"));
		GetDlgItem(IDC_BACK_ADD_STATUS_S)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_BACK_ADD_STATUS)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_BACK_ADD_BZ)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_BACK_ADD_BZ_S)->ShowWindow(SW_HIDE);
#ifdef SMSCENTER_GDYD_ADC
		GetDlgItem(IDC_BACK_ADD_QR)->ShowWindow(SW_SHOW);
		GetDlgItem(IDC_BACK_ADD_USERID)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_BACK_ADD_USERID_S)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_BACK_ADD_USERID_S2)->ShowWindow(SW_HIDE);
#endif
		break;
	case 0:
	default:
		SetWindowText(_T("添加黑名单"));
		break;
	}
	if ( m_bInport )
	{
		GetDlgItem(IDC_BACK_ADD_MOBILE)->ShowWindow(SW_HIDE);
		GetDlgItem(IDC_BACK_ADD_MOBILE_S)->ShowWindow(SW_HIDE);
	}
	m_lStatus=0;

	UpdateData(false);

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void DLG_Back_Add::SetParam(long lType)
{
	m_lType=lType;
}


void DLG_Back_Add::OnBnClickedOk()
{
	if ( !UpdateData(true) )
		return ;

	if (!m_bInport && m_lUserID!=-100 && !isMobileNum(m_strMobile) )
	{
			MessageBox(_T("手机号码输入有误,请检查") , _T("错误") , MB_ICONWARNING );
			GetDlgItem(IDC_BACK_ADD_MOBILE)->SetFocus();
			return ;
	}

	if ( m_lType==2 )
	{
		if ( m_lCorpID<100000 )
		{
			MessageBox(_T("企业ID输入有误,请检查") , _T("错误") , MB_ICONWARNING );
			GetDlgItem(IDC_BACK_ADD_CORPID)->SetFocus();
			return ;
		}

	}

	if (m_strBZ.GetLength() < 4)
	{
		MessageBox(_T("黑名单添加原因在在备注中输入,请检查"), _T("错误"), MB_ICONWARNING);
		GetDlgItem(IDC_BACK_ADD_BZ)->SetFocus();
		return;
	}
	
	CDialog::OnOK();
}


void DLG_Back_Add::OnCbnSelchangeBackAddStatus()
{
#ifdef SMSCENTER_GDYD_ADC
	if ( !UpdateData(true) )
		return ;

	if ( m_lStatus == 0 )
	{
		GetDlgItem(IDC_BACK_ADD_QR)->EnableWindow(true);
	}
	else
	{
		m_lQR = 0;
		GetDlgItem(IDC_BACK_ADD_QR)->EnableWindow(false);
	}
	UpdateData(false);

#endif
}


void DLG_Back_Add::OnCbnSelchangeBackAddQr()
{
#ifdef SMSCENTER_GDYD_ADC
	if ( !UpdateData(true) )
		return ;

#endif
}