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

📄 checkoutdb.cs

📁 酒店管理系统
💻 CS
字号:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text;
using System.Collections;
using System.Data.SqlClient;

/// <summary>
/// CheckOuntDB 的摘要说明
/// </summary>
/// 

public struct StayInfo
{
    public int stayID;
    public int stayroom;
    public double price;
    public DateTime istarttime;
    public TimeSpan iday;               //原入住天数
    public int realDay;
    public double deposit;
    
}

public struct CustomerInfo
{
    public string CustomerName;
    public int CustomerID;
    
}

public struct GroupInfo
{
    public string GroupName;
    public int GroupID;
    public string linkman;
}


public class CheckOutDB
{
    private detailDBconn checkoutDB;
    public static CustomerInfo cusinfo;
    public static GroupInfo groupinfo;
    private string errortext;
    ArrayList resultSet;
    DataTable dt;
    //static int[] selectedResult;

    public static DataTable staticInfo;
    public static string customername;

    static bool firstGet;//staticInfo 是否被赋值
    

	public CheckOutDB()
	{
		checkoutDB= new detailDBconn();
        cusinfo = new CustomerInfo();
        resultSet = new ArrayList();
	}

    public void Init()
    {
        checkoutDB.intConn();
        staticInfo = null;
        if (checkoutDB.isOpen == false)
            checkoutDB.openDB();

    }

    /// <summary>
    /// 得到信息数组
    /// </summary>
    /// <param name="IDNo"></param>
    /// <returns></returns>
    public ArrayList getPersonStayInfo(int type, string IDNo)
    {
  
        try
        {
            StayInfo infomation = new StayInfo();
            object[] temp;
            DataSet ds;
            if (type == 1)
            {


                checkoutDB.selectDataSetCommand = "select ID, ClientName from ClientInfo where identityNo =" + "'" + IDNo + "'";
                ds = checkoutDB.getSelectDataSet();
                temp = ds.Tables[0].Rows[0].ItemArray;

                cusinfo.CustomerID = int.Parse(temp[0].ToString());
                cusinfo.CustomerName = temp[1].ToString();
                ds = null;
                checkoutDB.selectDataSetCommand = "select StayInfo.ID,StayInfo.room,startTime,endTime,deposit,price " +
                    "FROM StayInfo INNER JOIN "
                    + "HotelInfo ON StayInfo.room = HotelInfo.room "
                    + "WHERE StayInfo.IDPerson =" + "'" + cusinfo.CustomerID + "'" + "and IsIn=1";

            }
            if(type==2)
            {
                checkoutDB.selectDataSetCommand = "select ID, name,linkman from GroupInfo where name =" + "'" + IDNo + "'";
                ds = checkoutDB.getSelectDataSet();
                temp = ds.Tables[0].Rows[0].ItemArray;

                groupinfo.GroupID= int.Parse(temp[0].ToString());
                groupinfo.GroupName = temp[1].ToString();
                groupinfo.linkman = temp[2].ToString();
                ds = null;
                checkoutDB.selectDataSetCommand = "select StayInfo.ID,StayInfo.room,startTime,endTime,deposit,price " +
                    "FROM StayInfo INNER JOIN "
                    + "HotelInfo ON StayInfo.room = HotelInfo.room "
                    + "WHERE StayInfo.IDGroup =" + "'" + groupinfo.GroupID+ "'" + "and IsIn=1";

            }


            ds = checkoutDB.getSelectDataSet();

            for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
            {
                temp = ds.Tables[0].Rows[i].ItemArray;
  
                infomation.stayID = int.Parse(temp[0].ToString());
                infomation.stayroom = int.Parse(temp[1].ToString());
                infomation.istarttime = DateTime.Parse(temp[2].ToString());
                infomation.iday = (DateTime.Parse(temp[3].ToString()) - infomation.istarttime);
                infomation.realDay = (DateTime.Now.Day) - (infomation.istarttime.Day);
                infomation.deposit = double.Parse( temp[4].ToString());
                infomation.price = double.Parse(temp[5].ToString());
                resultSet.Add(infomation);
            }

        }
        catch 
        {
            
        }
        return resultSet;
    }





    /// <summary>
    /// 内存中的数据表
    /// </summary>
    /// <param name="IDNo"></param>
    /// <returns></returns>

    public DataTable StayInfoTable(int type,string IDNo)
    {

     dt = new DataTable();
     DataRow dr;

     // Define the columns of the table.
     dt.Columns.Add(new DataColumn("房间号", typeof(Int32)));
     dt.Columns.Add(new DataColumn("价格/天", typeof(double)));
     dt.Columns.Add(new DataColumn("入住时间", typeof(DateTime)));
     dt.Columns.Add(new DataColumn("原定天数", typeof(double)));
     dt.Columns.Add(new DataColumn("实际天数",typeof(Int32)));
     dt.Columns.Add(new DataColumn("入住号", typeof(Int32)));
     dt.Columns.Add(new DataColumn("罚金", typeof(bool)));
     dt.Columns.Add(new DataColumn("退房", typeof(bool)));
     dt.Columns.Add(new DataColumn("定金",typeof(double)));

     // Populate the table with sample values.
     ArrayList tempList = new ArrayList();
     tempList = getPersonStayInfo(type,IDNo);

     foreach( StayInfo i in tempList) 
     {
        dr = dt.NewRow();

        dr[0] = i.stayroom;
        dr[1] = i.price;
        dr[2] = i.istarttime;
        dr[3] = i.iday.TotalDays;
        dr[4] = i.realDay;
        dr[5] = i.stayID;
        dr[6] = 0;
        dr[7] = 0;
        dr[8] = i.deposit;

        dt.Rows.Add(dr);
     }

     staticInfo = dt;

     return staticInfo;

    }



    /// <summary>
    /// 设置选择的退房信息
    /// </summary>
    /// <param name="stayinfoID"></param>
    /// <param name="?"></param>
   /* public void setRoomInfos(int i)
    {
        selectedResult.SetValue(i, selectedResult.GetLength(0) - 1);
    }*/
    /*public int[] getSelectInfo()
    {
        return selectedResult;
    }*/



    public void CheckOutUpdate(int type,int StayInfoID, float Inpenalty, float totalmoney)
    {
        StringBuilder sqlcommand = new StringBuilder();

        sqlcommand.Append("UPDATE stayinfo SET endTime =" + "'" + DateTime.Now + "', IsIn=0, penalty="
        + Inpenalty + ", totalPrice=" + totalmoney);
        sqlcommand.Append(" where ID=" + StayInfoID);
 
        checkoutDB.updateCommand = sqlcommand.ToString();
        try
        {
            checkoutDB.executeCommand();

        }

        catch
        {
            errortext = checkoutDB.errorMessage;
        }
        if (type == 2)
        {
            StringBuilder sqlcommand1 = new StringBuilder();
            sqlcommand.Append("UPDATE GroupPersonInfo SET endTime =" + "'" + DateTime.Now + "'");
            sqlcommand.Append(" where GroupID=" + StayInfoID);
        }

    }
}

⌨️ 快捷键说明

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