⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 roominfodlg.cpp

📁 这是是一个居于文档
💻 CPP
字号:
// roominfoDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Guesthouse.h"
#include "roominfoDlg.h"
#include "RoominFoSet.h"

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

/////////////////////////////////////////////////////////////////////////////
// CroominfoDlg dialog


CroominfoDlg::CroominfoDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CroominfoDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CroominfoDlg)
	m_roomnumber = _T("");
	m_position = _T("");
	m_price = _T("");
	m_memo = _T("");
	m_putup = _T("");
	//}}AFX_DATA_INIT
}


void CroominfoDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CroominfoDlg)
	DDX_Control(pDX, IDC_COMBO1, m_type);
	DDX_Text(pDX, IDC_EDIT1, m_roomnumber);
	DDX_Text(pDX, IDC_EDIT2, m_position);
	DDX_Text(pDX, IDC_EDIT3, m_price);
	DDX_Text(pDX, IDC_EDIT4, m_memo);
	DDX_CBString(pDX, IDC_COMBO3, m_putup);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CroominfoDlg, CDialog)
	//{{AFX_MSG_MAP(CroominfoDlg)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CroominfoDlg message handlers

BOOL CroominfoDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	
	//初始化客房类型下拉列表
	m_stdroom.Open();
	while (!m_stdroom.IsEOF())
	{
		m_type.AddString(m_stdroom.m_roomname);
		m_stdroom.MoveNext();
	}
	if (m_type.GetCount() == 0)
	{
		AfxMessageBox(_T("现在没有客房标准!"));
		CDialog::OnOK();	//无客房标准,返回
		return FALSE;
	}

	//设置下拉列表中的客房类型
	m_type.SetCurSel(0);
	m_type.GetLBText(0,m_roomname);
	//根据当前标准编号,读取客房单价并显示
	m_stdroom.m_strFilter = "roomname = '"+m_roomname+"'";
	if (!m_stdroom.IsOpen())
	{
		m_stdroom.Open();
	}
	else
		m_stdroom.Requery();
	m_price = m_stdroom.m_price;
	m_stdroom.Close();
	UpdateData(FALSE);

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

void CroominfoDlg::OnSelchangeType()
{
	UpdateData(TRUE);

	//获取当前客房类型
	int i = m_type.GetCurSel();
	m_type.GetLBText(i,m_roomname);

	//根据当前标准编号,读取客房单价并显示
	m_stdroom.m_strFilter = "roomname = '"+m_roomname+"'";
	if (!m_stdroom.IsOpen())
	{
		m_stdroom.Open();
	}
	else
		m_stdroom.Requery();
	m_price = m_stdroom.m_price;
	m_stdroom.Close();
	UpdateData(FALSE);
}

void CroominfoDlg::OnOK() 
{
	// TODO: Add extra validation here
	UpdateData(TRUE);

	//检查输入信息是否完整
	CString sWarn = "";
	if (m_roomnumber == "")
	{
		sWarn = _T("客房编号");
	}
	else
		if (m_position == "")
		{
			sWarn = _T("客房位置");
		}
	if (sWarn != "")
	{
		sWarn += _T("不能为空!");
		AfxMessageBox(sWarn);
		return;
	}

	//检查客房编号是否重复
	m_roominfo.m_strFilter = "roomnumber = '"+m_roomnumber+"'";
	if(!m_roominfo.IsOpen())
		m_roominfo.Open();
	else
		m_roominfo.Requery();
	if(!m_roominfo.IsEOF())
	{
		AfxMessageBox(_T("客房编号重复!"));
		return;
	}

	//检查客房位置是否重复
	m_roominfo.m_strFilter = "roomposition = '"+m_position+"'";
	if(!m_roominfo.IsOpen())
		m_roominfo.Open();
	else
		m_roominfo.Requery();
	if(!m_roominfo.IsEOF())
	{
		AfxMessageBox(_T("客房位置重复!"));
		return;
	}

	//添加新记录
	m_roominfo.AddNew();
	m_roominfo.m_Roomnumber = m_roomnumber;
	m_roominfo.m_stdroom = m_roomname;
	m_roominfo.m_roomposition = m_position;
	m_roominfo.m_roomprice = m_price;
	m_roominfo.m_Putup = m_putup;
	m_roominfo.m_roommemo = m_memo;
	m_roominfo.Update();
	m_roominfo.Close();

	//提示完成添加
	AfxMessageBox(_T("添加完成!"));

//	CDialog::OnOK();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -