黑馬程式設計師之專案開發學習筆記:酒店管理系統(HotelManager)
--------------------------------------------2345王牌技術員聯盟、2345王牌技術員聯盟、期待與您交流!---------------------------------------------
某酒店擬開發一套內部管理系統,基礎設施實現如下功能:
1. 客房型別管理(客房型別分中,高,低)
2. 客房使用情況管理(客房使用情況分:空閒,入住,維修,自用)
3. 現要求根據客房型別對房間統一定價,並設定某型別客房是否可以加床,以及加床的價格
4. 每一個房間對應所屬客房型別,價格,以及客房的使用情況描述床位數
5. 根據客房型別名稱,客房房間號對資訊進行查詢
客房型別資訊管理
1. 在客房型別窗體載入時,以表格的形式展示所有客房型別資訊;
2. 單擊某一資訊時,在資訊展示區下面顯示資訊編輯區,實現對資訊的增,刪,改操作
3. 點選工具欄上的“取消按鈕”隱藏編輯區
系統主視窗:
客房型別管理窗體:RoomTypeSettingForm
資料庫設計:
三層結構中各層之間的依賴關係:
public IList<RoomType> GetRoomTypeListByTypeName(string typeName)//返回一個客房型別泛型集合
{
IList<RoomType> objRoomTypeList = new List<RoomType>();//例項化一個客房型別泛型集合物件
//......
while(objReader.Read())//迴圈讀取多個客房型別資訊實體物件
{
RoomType objRoomType = new RoomType();//例項化一個客房型別資訊實體物件
objRoomType.TypeId = Convert.ToInt32(objReader["TypeID"]);
//......
objRoomTypeList.Add(objRoomType);
}
objReader.Close();
objReader.Dispose();
//......
return objRoomTypeList; //將客房型別資訊實體物件新增到泛型集合中
}
新增記錄時通過獲取記錄的自增列ID來判斷記錄是否增加成功:sql命令實現部分
Create PROCEDURE [dbo].[儲存過程名稱]
//......
AS
SET NOCCUNT ON
INSERT INTO [dbo].[表名](
//......
)VALUES(
//......
)
SELECT @@IDENTITY
新增記錄時通過獲取記錄的自增列ID來判斷記錄是否增加成功:ADO.NET實現部分
//............
int ID;
using(SqlConnection conn = new SqlConnection(connString))
{
SqlCommand objCommand = new SqlCommand(dboOwner + ".儲存過程名稱",conn);
objCommand.CommandType = CommandType.StoredProcedure;
//.............
conn.Open();
ID = Convert.ToInt32(objCommand.ExecuteScalar());
conn.Close();
}
return ID;
}
在業務邏輯層通過判斷客房型別ID檢測客房型別資訊是否存在,以及客房型別資訊錄入是否成功
ID = 呼叫資料訪問層方法得到客房型別ID;
if(ID!=0)//判斷資訊是否存在
{
//呼叫資料訪問層修改資訊方法
}
else
{
//呼叫資料訪問層新增資訊方法
}
//......
if(ID >0) //判斷資訊錄入是否成功
message = "型別資訊錄入成功!";
else
message = "型別資訊錄入失敗!";
//......
編輯客房型別資訊:
private void dgvRoomType_CellClick(object sender,DataGridViewCellEventArgs e)//單擊單元格中的任何位置時發生
{
//顯示編輯區
this.pnlRoomTypeContent.Visible = true;
this.Height = 480;
//獲取客房型別ID
typeID = dgvRoomType.Rows[e.RowIndex].Cells["ID"].Value.ToString();//RowIndex行索引,ID列索引
//呼叫業務邏輯層通過型別ID得到客房型別資訊
//......
//回綁資料
//......
}
---------------------------------------------------
2345王牌技術員聯盟、2345王牌技術員聯盟、期待與您交流!---------------------------------------------------------