📄 frmgroup.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Hotel.Operation;
using Hotel.Entity;
using System.Data.SqlClient;
namespace Hotel.UI
{
public partial class frmGroup : Form
{
GuestRoomAccess objGuestRoomAccess = null;
RoomTypeAccess objRoomTypeAccess = null;
DataSet ds = null;
TreeNode objTr = null;
ArrayList arr = new ArrayList();
Buyer buyerEntity = null;
BuyerAccess objBuyerAccess = null;
CertificateAccess objCertificateAccess = null;
NationalityAccess objNationalityAccess = null;
ProvinceAccess objProvinceAccess = null;
RoomUseAccess objRoomUseAccess = null;
DestineAccess objDestineAccess = null;
DestineRoomListAccess objDestLiseAccess = null;
ConsumeAccess objConsumeAccess = null;
public frmGroup()
{
InitializeComponent();
}
private void frmGroup_Load(object sender, EventArgs e)
{
txtUser.Text = Program.strName;
//显示可供房间
//获得所有房间到树,分类型显示
objTr= new TreeNode("可供房");
trvCanRoom.Nodes.Add(objTr);
TreeNode treType = null;
objRoomTypeAccess =new RoomTypeAccess();
objGuestRoomAccess = new GuestRoomAccess();
DataSet dsType=new DataSet();
DataSet dsRoom=null;
dsType= objRoomTypeAccess.GetRoomType();
for (int i = 0; i < dsType.Tables[0].Rows.Count; i++)
{
treType = new TreeNode(dsType.Tables[0].Rows[i][1].ToString());
dsRoom=new DataSet();
dsRoom= objGuestRoomAccess.GetRooms("可供", dsType.Tables[0].Rows[i][0].ToString());
for (int j = 0; j < dsRoom.Tables[0].Rows.Count; j++)
{
treType.Nodes.Add(dsRoom.Tables[0].Rows[j][0].ToString());
}
objTr.Nodes.Add(treType);
}
//绘制表头
ds = new DataSet();
ds = objGuestRoomAccess.GetRoomInfoPrice(str);
ColumnHeader ch = null;
for (int i = 0; i < ds.Tables[0].Columns.Count; i++)
{
ch = new ColumnHeader();
ch.Text = ds.Tables[0].Columns[i].ToString();
lsvShow.Columns.Add(ch);
ch.Width = 70;
if (i == 1)
ch.Width = 75;
}
//添加帐单号
objRoomUseAccess = new RoomUseAccess();
int m = objRoomUseAccess.GetMaxRoomUseID() + 1;
txtReckoning.Text = m.ToString();
//获取证件类型到cbo
objCertificateAccess = new CertificateAccess();
ArrayList arr = new ArrayList();
arr = objCertificateAccess.GetCertificateName();
foreach (string st in arr)
{
cboCardType.Items.Add(st);
}
//获取国家名称列表
objNationalityAccess = new NationalityAccess();
arr.Clear();
arr = objNationalityAccess.GetNationalityName();
foreach (string s in arr)
{
cboNationality.Items.Add(s);
}
//获取省份名称
objProvinceAccess = new ProvinceAccess();
arr.Clear();
arr = objProvinceAccess.GetProvinceName();
foreach (string pro in arr)
{
cboProvince.Items.Add(pro);
}
//显示预定房
TreeNode objTrDe = new TreeNode("预定房");
trvDe.Nodes.Add(objTrDe);
TreeNode treBuyer = null;
objDestineAccess = new DestineAccess();
objDestLiseAccess = new DestineRoomListAccess();
DataSet dsBuyer = new DataSet();
DataSet dsDe = null;
dsBuyer = objDestineAccess.GetDestineInfo();
for (int i = 0; i < dsBuyer.Tables[0].Rows.Count; i++)
{
treBuyer = new TreeNode(dsBuyer.Tables[0].Rows[i][1].ToString());
dsDe = new DataSet();
dsDe=objDestLiseAccess.GetInfo(int.Parse(dsBuyer.Tables[0].Rows[i][0].ToString()));
for (int j = 0; j < dsDe.Tables[0].Rows.Count; j++)
{
treBuyer.Nodes.Add(dsDe.Tables[0].Rows[j][2].ToString());
}
objTrDe.Nodes.Add(treBuyer);
}
//添加付款方式到cboMode
objConsumeAccess = new ConsumeAccess();
arr.Clear();
arr = objConsumeAccess.GetConsumeName();
foreach (string s in arr)
{
cboMode.Items.Add(s);
}
}
public string str = "";
//添加房间到表
private void btnAddRoom_Click(object sender, EventArgs e)
{
trvCanRoom.Focus();
str = trvCanRoom.SelectedNode.Text;
ListViewItem lsvItem=null;
if (str.Substring(0, 2).Equals("GR"))
{
DataSet dsRoom = new DataSet();
objGuestRoomAccess = new GuestRoomAccess();
dsRoom = objGuestRoomAccess.GetRoomInfoPrice(str);
lsvItem = new ListViewItem(dsRoom.Tables[0].Rows[0][0].ToString());
for (int i = 1; i < dsRoom.Tables[0].Columns.Count; i++)
{
lsvItem.SubItems.Add(dsRoom.Tables[0].Rows[0][i].ToString());
}
lsvShow.Items.Add(lsvItem);
trvCanRoom.SelectedNode.Remove();
}
//计费
CountPrice();
}
//计费方法
public void CountPrice()
{
//判断计费方式
string mode = "priceDay";
if (lblHow.Text.Trim().Equals("半天"))
{
mode = "halfDay";
}
else if (lblHow.Text.Trim().Equals("小时"))
{
mode = "priceHour";
}
float price=0;
float de = 0;
for (int i = 0; i < lsvShow.Items.Count; i++)
{
//获取房间类型
string type= lsvShow.Items[i].SubItems[1].Text.ToString();
objRoomTypeAccess = new RoomTypeAccess();
price+= objRoomTypeAccess.GetMoreRoomprice(mode,type);
de += float.Parse(lsvShow.Items[i].SubItems[5].Text.ToString());
}
float f=0;
try
{
f= float.Parse(txtHow.Text.Trim());
}
catch
{
MessageBox.Show("预住天数输入错误!", "提示");
return;
}
float c = price * f;
float sum = c + de;
txtRoomSum.Text = c.ToString();
txtDeposit.Text = de.ToString();
txtSumPrice.Text = sum.ToString();
}
//删除表中选中的房
private void btnDeleteRoom_Click(object sender, EventArgs e)
{
string room = lsvShow.SelectedItems[0].SubItems[0].ToString();
string type = lsvShow.SelectedItems[0].SubItems[1].ToString();
//if (trvCanRoom.Nodes.Find("豪华双人间",true).Equals(type))
//{
trvCanRoom.Nodes["豪华双人间"].Nodes.Add(new TreeNode(room));
//}
//删除选中项
lsvShow.Items.RemoveAt(Convert.ToInt32(this.lsvShow.SelectedItems[0].Index));
}
public bool lear = false;//用于决定是否插入宾客信息
private void btnOK_Click(object sender, EventArgs e)
{
//验证是否选中房间
if (lsvShow.Items.Count == 0)
{
MessageBox.Show("还没有选择房间!","提示");
return;
}
//验证界面信息
if (txtBuyerName.Text.Trim().Equals(""))
{
MessageBox.Show("请输入宾客姓名!", "提示");
return;
}
if (cboSex.SelectedIndex == -1)
{
MessageBox.Show("请选择性别!", "提示");
return;
}
if (cboCardType.SelectedIndex == -1)
{
MessageBox.Show("请选择证件类型!", "提示");
return;
}
if (txtCardNum.Text.Trim().Equals(""))
{
MessageBox.Show("证件号码不能为空!", "提示");
return;
}
if (txtPhone.Text.Trim().Equals(""))
{
MessageBox.Show("联系电话不能为空!", "提示");
return;
}
if (txtAddress.Text.Trim().Equals(""))
{
MessageBox.Show("请输入宾客的联系地址!", "提示");
return;
}
float f = 0;
try
{
f = float.Parse(txtHow.Text.Trim());
}
catch
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -