📄 inroomdialog.cpp
字号:
// InroomDialog.cpp : implementation file
//
#include "stdafx.h"
#include "tot.h"
#include "InroomDialog.h"
#include "FangDialog.h"
#include "FangSet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CInroomDialog dialog
CInroomDialog::CInroomDialog(CWnd* pParent /*=NULL*/)
: CDialog(CInroomDialog::IDD, pParent)
{
//{{AFX_DATA_INIT(CInroomDialog)
m_lname = _T("");
m_lpersonid = _T("");
m_lroomid = 0;
m_lsex = -1;
m_ldays = 0;
m_lclass = -1;
m_inf = _T("");
//}}AFX_DATA_INIT
//if(!m_database.Open(NULL,FALSE,FALSE,"ODBC;DSN=Room"))
//{AfxMessageBox("不能打开数据库");}
//m_set.Open();
}
void CInroomDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CInroomDialog)
DDX_Control(pDX, IDC_COMBO1, m_num);
DDX_Text(pDX, IDC_NAME, m_lname);
DDX_Text(pDX, IDC_PERSON, m_lpersonid);
DDX_Text(pDX, IDC_ROOM, m_lroomid);
DDX_Radio(pDX, IDC_RADIO_M, m_lsex);
DDX_Text(pDX, IDC_DAYS, m_ldays);
DDX_Radio(pDX, IDC_LCLASS1, m_lclass);
DDX_Text(pDX, IDC_INF, m_inf);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CInroomDialog, CDialog)
//{{AFX_MSG_MAP(CInroomDialog)
ON_BN_CLICKED(IDC_BUTTONASK, OnButtonask)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CInroomDialog message handlers
void CInroomDialog::OnOK()
//1
{
// TODO: Add extra validation here
CDatabase m_database;
if(!m_database.Open(_T("Room")))
AfxMessageBox("数据库打开出错");
m_set.Open();
CFangSet m_fset;
m_fset.Open();
CString msg,tmsg;
char string[10];
int tag=0;
int sel;
CTime m_current;
UpdateData(true);
if(m_lname.IsEmpty())
{AfxMessageBox("请输入用户名");}
else if(m_lpersonid.IsEmpty())
{AfxMessageBox("请输入身份证");}
else if(m_lroomid==0)
{ MessageBox("房间号不对","客人登记失败",MB_OK|MB_ICONWARNING);
GetDlgItem(IDC_ROOM)->SetFocus();
}
else if(m_ldays==0)
{ MessageBox("住宿天数不对","客人登记失败",MB_OK|MB_ICONWARNING);
GetDlgItem(IDC_DAYS)->SetFocus();
}
else { while(!m_fset.IsEOF())
{ if(m_fset.m_roomID==m_lroomid)
{ if(m_fset.m_state=="空") tag=1;
else tag=0;
break;
}
else {m_fset.MoveNext();}
}
}
/* if(tmp[0]>306||tmp[0]<100)
{AfxMessageBox("请先查询");
}*/
/* else{ for(int i=1;i<=K;i++)
{if(tmp[i-1]==m_lroomid)
{tag=0;break;}
}*/
if(tag==0)
{ AfxMessageBox("此房有人住客人登记失败",MB_OK|MB_ICONWARNING);
GetDlgItem(IDC_ROOM)->SetFocus();
}
if(tag==1)
{ //2
try{//3
m_set.AddNew();
UpdateData(true);
sel=m_num.GetCurSel();
m_set.m_people=sel+1;
if(sel+1<m_fset.m_max)
{//4
m_set.m_roomID=m_lroomid;
m_set.m_name=m_lname;
m_set.m_personID=m_lpersonid;
m_set.m_information=m_inf;
if(m_lsex==0)
m_set.m_sex="男";
else
m_set.m_sex="女";
m_set.m_day=m_ldays;
m_set.m_logtime=m_current.GetCurrentTime();
msg+="\r\n\n";msg+="客人登记成功";
// m_bLogin=TRUE; UpdateData(true);
//
if(m_lclass==0)
{ m_set.m_class="一级";
msg+="\r\n";
msg+="费用为:";
_gcvt(m_ldays*100,10,string);
msg+=string;
m_set.m_cost=m_ldays*100;
}
else if(m_lclass==1)
{ m_set.m_class="二级";
msg+="\r\n";
msg+="费用为:";
_gcvt(m_ldays*70,10,string);
msg+=string;
m_set.m_cost=m_ldays*70;
}
else
{ m_set.m_class="三级";
msg+="\r\n";
msg+="费用为:";
_gcvt(m_ldays*40,10,string);
msg+=string;
m_set.m_cost=m_ldays*40;
}
m_set.Update();
AfxMessageBox(msg);
CDialog::OnOK();}
else { AfxMessageBox("人数太多!");}
}//3
catch(CDBException*pe)
{AfxMessageBox(pe->m_strError);
pe->Delete();
}
}//2
m_set.Close();
}//1
void CInroomDialog::OnButtonask()
{
// TODO: Add your control notification handler code here
CFangDialog fdlg;
fdlg.DoModal();
/* CString msg;
char pi[6];
K=0;
UpdateData(true);
msg+="\r\n\n";
if(m_lclass==-1)
{ AfxMessageBox("请先选择房间级别",MB_OK);
}
else{
m_set.Requery();
m_set.MoveFirst();
if(m_lclass==0)
{
while(!m_set.IsEOF())
{ if(m_set.m_roomID>100&&m_set.m_roomID<107)
{K++;tmp[K-1]=m_set.m_roomID;}
m_set.MoveNext();
}
msg+="一级客房(住了人):";
}
else if(m_lclass==1)
{
while(!m_set.IsEOF())
{ if(m_set.m_roomID>200&&m_set.m_roomID<207)
{K++;tmp[K-1]=m_set.m_roomID;}
m_set.MoveNext();
}
msg+="二级客房(住了人):";
}
else if(m_lclass==2)
{
while(!m_set.IsEOF())
{ if(m_set.m_roomID>300&&m_set.m_roomID<307)
{K++;tmp[K-1]=m_set.m_roomID;}
m_set.MoveNext();
}
msg+="三级客房(住了人):";
}
if(K==0)
{tmp[0]=109;MessageBox("此等级房间均空!!","查询空房",MB_OK|MB_ICONASTERISK);}
else{ _gcvt(K,6,pi);
msg+=pi;
msg+="间";
msg+="\r\n";
msg+="分别为:";
for(int i=1;i<=K;i++)
{ _gcvt(tmp[i-1],6,pi);
msg+="\r";
msg+=pi;
msg+="\r\n";
}
MessageBox(msg,"查询空房",MB_OK|MB_ICONASTERISK);}
}*/
}
BOOL CInroomDialog::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
int i=1;
char tem[6];
for(i;i<=15;i++)
{ _gcvt(i,6,tem);
m_num.AddString(tem);
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -