📄 frmunitopen.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 frmUnitOpen : Form
{
RoomTypeAccess objRoomTypeAccess = null;
GuestRoomAccess objGuestRoomAccess = null;
RoomType roomTypeEntity = null;
//ReckoningAccess objReckoningAccess = null;
ConsumeAccess objConsumeAccess = null;
BuyerAccess objBuyerAccess = null;
Buyer buyerEntity = null;
CertificateAccess objCertificateAccess = null;
NationalityAccess objNationalityAccess = null;
ProvinceAccess objProvinceAccess = null;
DataSet ds = null;
RoomUseAccess objRoomUseAccess = null;
public frmUnitOpen()
{
InitializeComponent();
}
private void btnExit_Click(object sender, EventArgs e)
{
this.Close();
}
//计算费用的方法
public void CountPrice(string mode,string type)
{
if (mode == "天")
mode = "priceDay";
else if (mode == "半天")
mode = "halfDay";
else if (mode == "小时")
mode = "priceHour";
objRoomTypeAccess = new RoomTypeAccess();
float k= objRoomTypeAccess.GetMoreRoomprice(mode, type);
int how=0;
try
{
how=int.Parse(txtHow.Text.Trim());
}
catch
{
MessageBox.Show("时间出错");
return;
}
txtRoomCharge.Text = (k * how*lsbUseRoom.Items.Count).ToString();//客房费用
txtSumCharge.Text = (k * how * lsbUseRoom.Items.Count*float.Parse(txtRebate.Text)*0.01).ToString();//折后价
txtEndCharge.Text=(float.Parse(txtSumCharge.Text)+float.Parse(txtDeposit.Text)).ToString();//应付款
}
private void frmUnitOpen_Load(object sender, EventArgs e)
{
txtUser.Text = Program.strName;//显示用户名
txtBeginTime.Text = DateTime.Now.ToString();
//获取最大的宾客编号
objBuyerAccess = new BuyerAccess();
txtBuyerNum.Text = (objBuyerAccess.GetMaxBuyerID()+1).ToString();
//获取证件类型到cbo
objCertificateAccess = new CertificateAccess();
ArrayList arr = new ArrayList();
arr=objCertificateAccess.GetCertificateName();
foreach (string str in arr)
{
cboCardType.Items.Add(str);
}
//获取国家名称列表
objNationalityAccess = new NationalityAccess();
arr.Clear();
arr = objNationalityAccess.GetNationalityName();
foreach (string str in arr)
{
cboNationality.Items.Add(str);
}
//获取省份名称
objProvinceAccess = new ProvinceAccess();
arr.Clear();
arr = objProvinceAccess.GetProvinceName();
foreach (string str in arr)
{
cboProvince.Items.Add(str);
}
//获取主客间信息
lblRoomName.Text = frmMain.room.ToString();
lblRoomType.Text = frmMain.type.ToString();
string sty = frmMain.room.Trim().ToString() + "----" + frmMain.type.ToString().Trim();
lsbUseRoom.Items.Add(sty);
//通过类型名称获取单价
int type = 0;
if (lblRoomType.Text.Trim().Equals("标准单人间"))
{
type = 1;
}
else if (lblRoomType.Text.Trim().Equals("标准双人间"))
{
type = 2;
}
else if (lblRoomType.Text.Trim().Equals("豪华单人间"))
{
type = 3;
}
else if (lblRoomType.Text.Trim().Equals("豪华双人间"))
{
type = 4;
}
else if (lblRoomType.Text.Trim().Equals("商务套房"))
{
type = 5;
}
else
{
type = 6;
}
//获取类型信息
objRoomTypeAccess = new RoomTypeAccess();
roomTypeEntity = new RoomType();
roomTypeEntity=objRoomTypeAccess.GetTypeInfo(type);
//添加付款方式到cboMode
objConsumeAccess = new ConsumeAccess();
arr.Clear();
arr= objConsumeAccess.GetConsumeName();
foreach(string str in arr)
{
cboMode.Items.Add(str);
}
//添加各种价格到lbl
lblRoomPrice.Text ="¥ "+ roomTypeEntity.PriceDay.ToString()+"元/天";
lblH.Text = "¥ " + roomTypeEntity.HalfDay.ToString() + "元/半天";
lblHours.Text = "¥ " + roomTypeEntity.PriceHour.ToString() + "元/小时";
txtDeposit.Text = roomTypeEntity.Deposit.ToString();
//添加帐单号
objRoomUseAccess = new RoomUseAccess();
int m= objRoomUseAccess.GetMaxRoomUseID()+1;
txtReckoning.Text = m.ToString();
//显示同类型可供房
objGuestRoomAccess = new GuestRoomAccess();
objGuestRoomAccess.GetCanUseRoom(lsbAddRoom, "可供", "'" + type + "'");
//移除lsbAddRoom在lsbuseRoom中已存在的项
if (lsbAddRoom.Items.IndexOf(sty.Trim())>-1)
{
lsbAddRoom.Items.RemoveAt(lsbAddRoom.Items.IndexOf(sty.Trim()));
}
CountPrice(lblHow.Text.Trim(),lblRoomType.Text.Trim());
}
//选择计费方式
private void rdbDay_CheckedChanged(object sender, EventArgs e)
{
if (rdbDay.Checked)
{
lblHow.Text = "天";
CountPrice(lblHow.Text.Trim(), lblRoomType.Text.Trim());
}
}
private void rdbHalf_CheckedChanged(object sender, EventArgs e)
{
if (rdbHalf.Checked)
{
lblHow.Text = "半天";
CountPrice(lblHow.Text.Trim(), lblRoomType.Text.Trim());
}
}
private void rdbHours_CheckedChanged(object sender, EventArgs e)
{
if (rdbHours.Checked)
{
lblHow.Text = "小时";
CountPrice(lblHow.Text.Trim(), lblRoomType.Text.Trim());
}
}
//追加客房
private void btnAddRoom_Click(object sender, EventArgs e)
{
if (lsbAddRoom.SelectedIndex > -1)
{
lsbUseRoom.Items.Add(lsbAddRoom.SelectedItem.ToString());
lsbAddRoom.Items.RemoveAt(lsbAddRoom.SelectedIndex);
float f = float.Parse(txtDeposit.Text)* (lsbUseRoom.Items.Count);
txtDeposit.Text = f.ToString();
CountPrice(lblHow.Text.Trim(), lblRoomType.Text.Trim());
}
}
//取消客房
private void btnDeleteRoom_Click(object sender, EventArgs e)
{
if (lsbUseRoom.SelectedIndex == 0)
{
MessageBox.Show("不能删除主客房!","提示");
return;
}
if (lsbUseRoom.SelectedIndex > -1)
{
float f = float.Parse(txtDeposit.Text) / (lsbUseRoom.Items.Count) * (lsbUseRoom.Items.Count-1);
txtDeposit.Text = f.ToString();
lsbAddRoom.Items.Add(lsbUseRoom.SelectedItem.ToString());
lsbUseRoom.Items.RemoveAt(lsbUseRoom.SelectedIndex);
CountPrice(lblHow.Text.Trim(), lblRoomType.Text.Trim());
}
}
public bool lear = false;//用于决定是否插入宾客信息
private void btnOK_Click(object sender, EventArgs e)
{
//验证信息
if (cboCount.SelectedIndex == -1)
{
MessageBox.Show("请选择宾客人数!", "提示");
return;
}
if (cboMode.SelectedIndex == -1)
{
MessageBox.Show("请选择付款方式!", "提示");
return;
}
if (txtBuyerName.Text.Trim().Equals(""))
{
MessageBox.Show("请输入宾客姓名!", "提示");
return;
}
if (cboSex.SelectedIndex == -1)
{
MessageBox.Show("请选择性别!", "提示");
return;
}
if (cboCardType.SelectedIndex == -1)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -