RoomInfoLookup.cpp
上传用户:sunh8215
上传日期:2010-02-13
资源大小:1616k
文件大小:3k
源码类别:

酒店行业

开发平台:

Visual C++

  1. // RoomInfoLookup.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "qq.h"
  5. #include "RoomInfoLookup.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CRoomInfoLookup dialog
  13. CString CRoomInfoLookup::STRINGS[100]={""};
  14. CRoomInfoLookup::CRoomInfoLookup(CWnd* pParent /*=NULL*/)
  15. : CDialog(CRoomInfoLookup::IDD, pParent)
  16. {
  17. //{{AFX_DATA_INIT(CRoomInfoLookup)
  18. // NOTE: the ClassWizard will add member initialization here
  19. //}}AFX_DATA_INIT
  20. RoomCode = _T("");
  21. RoomType = _T("");
  22. Floor = 0;
  23. Phone = _T("");
  24. RoomStatus = _T("");
  25. PriceType = FALSE;
  26. Price = 0.0f;
  27. bSuccess=false;
  28. }
  29. void CRoomInfoLookup::DoDataExchange(CDataExchange* pDX)
  30. {
  31. CDialog::DoDataExchange(pDX);
  32. //{{AFX_DATA_MAP(CRoomInfoLookup)
  33. DDX_Control(pDX, IDC_COMBO1, m_InfoLookup_RoomCode);
  34. //}}AFX_DATA_MAP
  35. }
  36. BEGIN_MESSAGE_MAP(CRoomInfoLookup, CDialog)
  37. //{{AFX_MSG_MAP(CRoomInfoLookup)
  38. //}}AFX_MSG_MAP
  39. END_MESSAGE_MAP()
  40. /////////////////////////////////////////////////////////////////////////////
  41. // CRoomInfoLookup message handlers
  42. BOOL CRoomInfoLookup::OnInitDialog() 
  43. {
  44. CDialog::OnInitDialog();
  45. HICON m_hIcon=AfxGetApp()->LoadIcon(IDR_MAINFRAME2);
  46. this->SetIcon(m_hIcon,true);//设置对话框图标
  47. // TODO: Add extra initialization here
  48. m_acCombo.Init(GetDlgItem(IDC_COMBO1));
  49. if(!m_RoomInfoSet.Open(AFX_DB_USE_DEFAULT_TYPE))
  50. {
  51. MessageBox("打开数据库失败!","数据库错误",MB_OK);
  52. return false;
  53. }
  54.     InitDate();
  55. m_RoomInfoSet.MoveFirst();//move to the first record
  56. int i=0;
  57.     while(!m_RoomInfoSet.IsEOF())
  58. {
  59.         STRINGS[i]=m_RoomInfoSet.m_RoomCode;
  60.          m_RoomInfoSet.MoveNext();
  61.  i++;
  62. }
  63.     m_RoomInfoSet.Close();//关闭数据库
  64.     for (int j=0;(!STRINGS[j].IsEmpty()); j++)
  65. {
  66. m_acCombo.GetStringList().Add(STRINGS[j].GetBuffer(STRINGS[j].GetLength()));
  67. }
  68. return TRUE;  // return TRUE unless you set the focus to a control
  69.               // EXCEPTION: OCX Property Pages should return FALSE
  70. }
  71. void CRoomInfoLookup::OnOK() 
  72. {
  73. // TODO: Add extra validation here
  74. CString str;
  75. m_InfoLookup_RoomCode.GetWindowText(str);
  76.     if(str=="")
  77. {
  78. MessageBox("请输入房间号码!","数据为空错误",MB_OK);
  79. return ;
  80. }
  81. if(!m_RoomInfoSet.Open(AFX_DB_USE_DEFAULT_TYPE))
  82. {
  83. MessageBox("打开数据库失败!","数据库错误",MB_OK);
  84. bSuccess=false;
  85. return ;
  86. }
  87. bool bInSQL=false;//是否存在这个数据记录
  88. m_RoomInfoSet.MoveFirst();
  89. while(!m_RoomInfoSet.IsEOF())
  90. {
  91.          if(m_RoomInfoSet.m_RoomCode==str)
  92.  {
  93.  bInSQL=true;
  94.  break;
  95.  }
  96.  else bInSQL=false;
  97.          m_RoomInfoSet.MoveNext();
  98. }
  99. ///////////////////////////////////////////////////////////
  100. // 查询成功的话保存得到的数据
  101. if(bInSQL)
  102. {
  103.     RoomCode=m_RoomInfoSet.m_RoomCode;
  104. RoomType=m_RoomInfoSet.m_RoomType;
  105. Floor=m_RoomInfoSet.m_Floor;
  106. Phone=m_RoomInfoSet.m_Phone;
  107. RoomStatus=m_RoomInfoSet.m_RoomStatus;
  108. PriceType=m_RoomInfoSet.m_PriceType;
  109. Price=m_RoomInfoSet.m_Price;
  110. bSuccess=true;
  111. }
  112.  else
  113.  {
  114.  MessageBox("该记录不存在!","记录错误",MB_OK);
  115.  bSuccess=false;
  116. ////保存数据完成关闭数据库
  117.      m_RoomInfoSet.Close();
  118.  return ;
  119.  }
  120. ////保存数据完成关闭数据库
  121.     m_RoomInfoSet.Close();
  122. CDialog::OnOK();
  123. }
  124. void CRoomInfoLookup::OnCancel() 
  125. {
  126. // TODO: Add extra cleanup here
  127. CDialog::OnCancel();
  128. }
  129. void CRoomInfoLookup::InitDate()
  130. {
  131.    for(int i=0;i<100;i++)
  132.    {
  133.    STRINGS[i]="";
  134.    }