// BookingPage22.cpp : implementation file // #include "stdafx.h" #include "ylgl.h" #include "BookingPage22.h" #include "Booking2.h" #include "ShowHistoryClient.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // BookingPage22 dialog BookingPage22::BookingPage22(CWnd* pParent /*=NULL*/) : CDialog(BookingPage22::IDD, pParent) { //{{AFX_DATA_INIT(BookingPage22) // NOTE: the ClassWizard will add member initialization here m_addr1 = _T(""); m_name1 = _T(""); m_name2 = _T(""); m_phone1 = _T(""); m_phone2 = _T(""); m_qq1 = _T(""); m_birthday1 = _T(""); m_zodiac = _T(""); m_sex = _T(""); m_area = _T(""); m_check1 = FALSE; m_bInit=0; //}}AFX_DATA_INIT } void BookingPage22::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(BookingPage22) // NOTE: the ClassWizard will add DDX and DDV calls here DDX_Control(pDX, IDC_COMBOzodiac, m_combozodiac); DDX_Control(pDX, IDC_COMBOsex, m_combosex); DDX_Control(pDX, IDC_COMBOarea, m_comboarea); DDX_Control(pDX, IDC_EDITBirthday, m_datectrl1); DDX_Text(pDX, IDC_EDITaddr, m_addr1); DDX_Text(pDX, IDC_EDITname, m_name1); DDX_Text(pDX, IDC_EDITname2, m_name2); DDX_Text(pDX, IDC_EDITphone, m_phone1); DDX_Text(pDX, IDC_EDITphone2, m_phone2); DDX_Text(pDX, IDC_EDITqq, m_qq1); DDX_Text(pDX, IDC_EDITBirthday, m_birthday1); DDX_CBString(pDX, IDC_COMBOarea, m_area); DDX_Check(pDX, IDC_CHECK1, m_check1); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(BookingPage22, CDialog) //{{AFX_MSG_MAP(BookingPage22) ON_BN_CLICKED(IDC_BUTTON2, OnButton2) ON_EN_CHANGE(IDC_EDITname, OnChangeEDITname) ON_EN_CHANGE(IDC_EDITname2, OnChangeEDITname2) ON_EN_CHANGE(IDC_EDITphone, OnChangeEDITphone) ON_EN_CHANGE(IDC_EDITphone2, OnChangeEDITphone2) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // BookingPage22 message handlers void BookingPage22::OnOK() { // TODO: Add extra validation here } void BookingPage22::OnCancel() { // TODO: Add extra cleanup here } extern BOOL CALLBACK EnumChildProc3(HWND hwnd,LPARAM lParam); BOOL BookingPage22::OnInitDialog() { CDialog::OnInitDialog(); m_bInit=1; // TODO: Add extra initialization here CRect rc2; GetWindowRect(rc2); MoveWindow(m_rc); g_WidthScale2 = (float)m_rc.Width()/(float)rc2.Width(); // new/Old g_HeightScale2 = (float)m_rc.Height()/(float)rc2.Height(); EnumChildWindows(m_hWnd,(WNDENUMPROC)EnumChildProc3,0); m_combozodiac.AddString ("鼠"); m_combozodiac.AddString ("牛"); m_combozodiac.AddString ("虎"); m_combozodiac.AddString ("兔"); m_combozodiac.AddString ("龙"); m_combozodiac.AddString ("蛇"); m_combozodiac.AddString ("马"); m_combozodiac.AddString ("羊"); m_combozodiac.AddString ("猴"); m_combozodiac.AddString ("鸡"); m_combozodiac.AddString ("狗"); m_combozodiac.AddString ("猪"); m_combosex.AddString ("男"); m_combosex.AddString ("女"); m_comboarea.GetWindowRect (rc2); ScreenToClient(rc2); rc2.bottom +=200; m_comboarea.MoveWindow (rc2); for(int i=0; im_bModify) { if(m_comboarea.FindString (0, m_area)==-1) m_comboarea.AddString (m_area); m_comboarea.SetCurSel (m_comboarea.FindString (0, m_area)); m_combosex.SetCurSel (m_combosex.FindString (0, m_sex)); m_combozodiac.SetCurSel (m_combozodiac.FindString (0, m_zodiac)); } GetDlgItem(IDC_EDIT1)->ShowWindow(SW_HIDE); GetDlgItem(IDC_BUTTON2)->ShowWindow(SW_HIDE); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } // // Jeff add this function; // 函数:IllegalChar // 描述:判断字符是否含有创建文件夹时的非法字符 // 注:此类函数需要做为Gloabl function; // int IllegalChar(const CString &strSource) { if ( strSource.Find("\\") != -1 ) { return 1; } if ( strSource.Find("/") != -1 ) { return 2; } if ( strSource.Find(":") != -1 ) { return 3; } if ( strSource.Find("*") != -1 ) { return 4; } if ( strSource.Find("?") != -1 ) { return 5; } if ( strSource.Find("\"") != -1 ) { return 6; } if ( strSource.Find("<") != -1 ) { return 7; } if ( strSource.Find(">") != -1 ) { return 8; } if ( strSource.Find("|") != -1 ) { return 9; } return 0; } BOOL BookingPage22::CheckOK() { UpdateData(); m_name1.TrimLeft (); m_name1.TrimRight (); m_name2.TrimLeft (); m_name2.TrimRight (); #if 0 // original code; if(m_name1.IsEmpty () && m_name2.IsEmpty ()) { AfxMessageBox("姓名不能为空!", MB_ICONINFORMATION);return 0; } if(m_name1.Find("*")!=-1 || m_name2.Find("*")!=-1) { AfxMessageBox("客人名字不能有*号!", MB_ICONINFORMATION); return 0; } #else // Jeff.判断姓名是否含有创建文件夹时的非法字符; if(m_name1.IsEmpty() /*|| m_name2.IsEmpty()*/) { AfxMessageBox("姓名不能为空!", MB_ICONINFORMATION); return 0; } if ( (IllegalChar(m_name1) != 0) || (IllegalChar(m_name2) != 0)) { AfxMessageBox("姓名不能有\\ / : * ? \" < > | 字符",MB_ICONINFORMATION); return 0; } if( m_phone1.IsEmpty() || m_phone1.GetLength() != 11) // Jeff.modify:添加判断手机位数(不含小灵通之类非11位长度的手机号) { AfxMessageBox("手机不能为空或位数不是11位!", MB_ICONINFORMATION); return 0; } /*if( m_birthday1.IsEmpty() ) { AfxMessageBox("宝宝生日不能为空!", MB_ICONINFORMATION); return 0; }*/ #endif if(!CheckDateOK(m_birthday1))return 0; m_phone1.TrimLeft (); m_phone1.TrimRight (); m_phone2.TrimLeft (); m_phone2.TrimRight (); if(!m_phone1.IsEmpty ()) { if(m_phone1.Left (1)=="1") { if(CheckPhoneType(m_phone1)==-1) { AfxMessageBox("手机号码:"+m_phone1+"错误!", MB_ICONINFORMATION); return 0; } } } if(!m_phone2.IsEmpty ()) { if(m_phone2.Left (1)=="1") { if(CheckPhoneType(m_phone2)==-1) { AfxMessageBox("手机号码:"+m_phone2+"错误!", MB_ICONINFORMATION); return 0; } } } int pos=m_comboarea.GetCurSel(); if(pos!=-1) m_comboarea.GetLBText(pos, m_area); else m_area.Empty(); pos=m_combosex.GetCurSel(); if(pos!=-1) m_combosex.GetLBText(pos, m_sex); else m_sex.Empty(); pos=m_combozodiac.GetCurSel(); if(pos!=-1) m_combozodiac.GetLBText(pos, m_zodiac); else m_zodiac.Empty(); return 1; } void BookingPage22::NewDan() { m_addr1 = _T(""); m_name1 = _T(""); m_name2 = _T(""); m_phone1 = _T(""); m_phone2 = _T(""); m_qq1 = _T(""); m_birthday1 = _T(""); m_zodiac = _T(""); m_sex = _T(""); m_area = _T(""); m_check1 = FALSE; UpdateData(0); m_comboarea.SetCurSel (-1); m_combozodiac.SetCurSel (-1); m_combosex.SetCurSel (-1); } void BookingPage22::OnChangeEDITname() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function and call CRichEditCtrl().SetEventMask() // with the ENM_CHANGE flag ORed into the mask. CompareClient(); // TODO: Add your control notification handler code here } void BookingPage22::OnChangeEDITname2() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function and call CRichEditCtrl().SetEventMask() // with the ENM_CHANGE flag ORed into the mask. CompareClient(); // TODO: Add your control notification handler code here } void BookingPage22::OnChangeEDITphone() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function and call CRichEditCtrl().SetEventMask() // with the ENM_CHANGE flag ORed into the mask. CompareClient(); // TODO: Add your control notification handler code here } void BookingPage22::OnChangeEDITphone2() { // TODO: If this is a RICHEDIT control, the control will not // send this notification unless you override the CDialog::OnInitDialog() // function and call CRichEditCtrl().SetEventMask() // with the ENM_CHANGE flag ORed into the mask. CompareClient(); // TODO: Add your control notification handler code here } void BookingPage22::CompareClient() { if(m_bInit==0)return; UpdateData(); int cot=0; m_oldclientarray.RemoveAll(); for(int i=0; iShowWindow(SW_SHOW); GetDlgItem(IDC_BUTTON2)->ShowWindow(SW_SHOW); } else { GetDlgItem(IDC_EDIT1)->ShowWindow(SW_HIDE); GetDlgItem(IDC_BUTTON2)->ShowWindow(SW_HIDE); } } void BookingPage22::OnButton2() { // TODO: Add your control notification handler code here ShowHistoryClient dlg; dlg.m_poldclientarray=&m_oldclientarray; if(dlg.DoModal()!=IDOK)return; int pos=m_oldclientarray.ElementAt(dlg.m_pos); // str.Format("客人:%s 单号:%s", +g_oldclientarray.ElementAt(pos).ElementAt(2), g_oldclientarray.ElementAt(pos).ElementAt(0)); m_name1 = g_oldclientarray.ElementAt(pos).ElementAt(1); m_name2 = g_oldclientarray.ElementAt(pos).ElementAt(2); m_phone1 = g_oldclientarray.ElementAt(pos).ElementAt(3); m_phone2 = g_oldclientarray.ElementAt(pos).ElementAt(4); m_qq1 = g_oldclientarray.ElementAt(pos).ElementAt(5); m_addr1 = g_oldclientarray.ElementAt(pos).ElementAt(6); m_birthday1 = g_oldclientarray.ElementAt(pos).ElementAt(7); m_area = g_oldclientarray.ElementAt(pos).ElementAt(8); m_sex = g_oldclientarray.ElementAt(pos).ElementAt(9); m_zodiac = g_oldclientarray.ElementAt(pos).ElementAt(10); m_check1 = atoi(g_oldclientarray.ElementAt(pos).ElementAt(11)); if(m_comboarea.FindString (0, m_area)==-1) m_comboarea.AddString (m_area); m_comboarea.SetCurSel (m_comboarea.FindString (0, m_area)); m_combosex.SetCurSel (m_combosex.FindString (0, m_sex)); m_combozodiac.SetCurSel (m_combozodiac.FindString (0, m_zodiac)); UpdateData(0); }