public ActionResult Create(HttpPostedFileBase[] files, [Bind(Include = "RoomType_id,RType,Descriptions,Images,Views,Bed,MaxPerson,Size")] ROOMTYPE rOOMTYPE) { List <string> listImg = new List <string>(); if (ModelState.IsValid) { foreach (HttpPostedFileBase file in files) { if (file != null) { string postedFileName = System.IO.Path.GetFileName(file.FileName); var path = System.IO.Path.Combine(Server.MapPath("/images/" + postedFileName)); listImg.Add(postedFileName); file.SaveAs(path); } } rOOMTYPE.RoomType_id = createId(); rOOMTYPE.Images = string.Join(",", listImg); db.ROOMTYPEs.Add(rOOMTYPE); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(rOOMTYPE)); }
public ActionResult DeleteConfirmed(string id) { ROOMTYPE rOOMTYPE = db.ROOMTYPEs.Find(id); db.ROOMTYPEs.Remove(rOOMTYPE); db.SaveChanges(); return(RedirectToAction("Index")); }
//RoomMgr에서 DFS조건을 만족 못시켰을 때마다 모든 걸 초기화시키기 위해 만든 함수이다. //초기화해주지않으면 방의 정보가 남아있어 검색을 다시해도 똑같은 결과값이 나오게됨. public void ReInitialize() { IsSearched = false; IsCreated = false; roomType = ROOMTYPE.NORMAL; currentRoomIndex = 0; LeftRoomIndex = -1; RightRoomIndex = -1; BottomRoomIndex = -1; TopRoomIndex = -1; }
// GET: ROOMTYPEs/Details/5 public ActionResult Details(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ROOMTYPE rOOMTYPE = db.ROOMTYPEs.Find(id); if (rOOMTYPE == null) { return(HttpNotFound()); } return(View(rOOMTYPE)); }
// GET: Test/RoomtypeDetail/5 public ActionResult RoomtypeDetail(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ROOMTYPE Roomtype = db.ROOMTYPEs.Find(id); if (Roomtype == null) { return(HttpNotFound()); } ViewBag.paytypeData = db.PAYTYPEs.ToList(); return(View(Roomtype)); }
public ActionResult RoomtypeDetail(string check_in_date, string check_out_date, string roomtype) { // list roomtype for search // list paytype for booking form ROOMTYPE Roomtype = db.ROOMTYPEs.Find(roomtype); ViewBag.roomtypeData = db.ROOMTYPEs.ToList(); ViewBag.paytypeData = db.PAYTYPEs.ToList(); // -------------check user input------------- if (isCorrectFormat(check_in_date) == false || isCorrectFormat(check_out_date) == false) { return(View(Roomtype)); } else if (NumberOfDays(check_in_date, check_out_date) < 0) { return(View(Roomtype)); } // -------price and total for booking form---------- int numberOfDays = NumberOfDays(check_in_date, check_out_date); String queryRent = "SELECT r.Rent_id, r.Price, r.IsActive, r.From_Date, r.To_Date, r.RoomType_id " + "FROM(SELECT * FROM ROOMTYPE rt WHERE(rt.RoomType_id = '" + roomtype + "')) rt, RENT r " + "WHERE(r.RoomType_id = rt.RoomType_id) and r.IsActive = 'True' "; var rent = db.Database.SqlQuery <RENT>(queryRent); int price = rent.ToList()[0].Price; int total = numberOfDays * price; // ---------------check room availability-------------- string check_in_date_format = FormatDate(check_in_date); string check_out_date_format = FormatDate(check_out_date); String query = "DECLARE @S DATE; " + " SET @S = '" + check_in_date_format + "' " + " DECLARE @E DATE; " + " SET @E = '" + check_out_date_format + "' " + " DECLARE @RT varchar(20); " + " SET @RT = '" + roomtype + "' " + " SELECT r.Room_id, r.RoomType_id" + " FROM (SELECT * FROM ROOM WHERE ROOM.RoomType_id = @RT) r " + " EXCEPT " + " SELECT Distinct c.Room_id, c.RoomType_id " + " FROM( " + " SELECT a.Room_id, a.RoomType_id, b.Booking_id, b.Check_in_date, b.Check_out_date, b.Customer_id " + " FROM(SELECT * FROM ROOM WHERE ROOM.RoomType_id = @RT) a, BOOKING b " + " WHERE a.Room_id = b.Room_id " + " ) c " + " WHERE( " + " (@S <= c.Check_in_date and(@E >= c.Check_in_date and @E <= c.Check_out_date)) " + " or((@S >= c.Check_in_date and @S <= c.Check_out_date) and @E >= c.Check_out_date ) " + " or(@S >= c.Check_in_date and @E <= c.Check_out_date) " + " or(@S <= c.Check_in_date and @E >= c.Check_out_date) " + ")"; var data = db.Database.SqlQuery <ROOM>(query); List <ROOM> data1 = data.ToList(); // not availability if (data1.Count <= 0) { System.Diagnostics.Debug.WriteLine("Khong co phong"); ViewBag.isExist = false; ViewBag.showAlert = true; return(View(Roomtype)); } else { // flag for create booking form ViewBag.isExist = true; } //System.Diagnostics.Debug.WriteLine(data1[0].Room_id); // booking form ViewBag.roomtype_input = roomtype; ViewBag.roomtype_show = db.ROOMTYPEs.Find(roomtype).RType; ViewBag.check_in_date_input = check_in_date; ViewBag.check_out_date_input = check_out_date; ViewBag.room_id = data1[0].Room_id; ViewBag.price = price; ViewBag.total = total; return(View(Roomtype)); }