public tbl_RoomPriceLevel GetRoomPriceLevelById(int id) { //search again using (var db = _connectionData.OpenDbConnection()) { var query = db.From <tbl_RoomPriceLevel>().Where(e => e.Id == id); tbl_RoomPriceLevel rows = db.Select(query).FirstOrDefault(); return(rows); } }
/// <summary> /// /// </summary> /// <param name="listRoom"></param> /// <param name="model"></param> /// <param name="listXtraDay"></param> /// <param name="listPriceDay"></param> /// <param name="listXtraNight"></param> /// <param name="listEarlyDay"></param> /// <param name="listEarlyNight"></param> /// <param name="listLimitPerson"></param> /// <returns></returns> public ActionResult InsertOrUpdate(List <tbl_Room> listRoom, tbl_RoomPriceLevel model, string fDate, string tDate, List <tbl_RoomPriceLevel_Extra> listXtraDay, List <tbl_RoomPriceLevel_Hour> listPriceDay, List <tbl_RoomPriceLevel_Extra> listXtraNight, List <tbl_RoomPriceLevel_Extra> listEarlyDay, List <tbl_RoomPriceLevel_Extra> listEarlyNight, List <tbl_RoomPriceLevel_Extra> listLimitPerson, List <tbl_RoomPriceLevel_Extra> listLimitPerson_Child ) { if (model.Id > 0) { var result = _priceLevelService.UpdateRoomPriceLevel(listRoom, model, listXtraDay, listPriceDay, listXtraNight, listEarlyDay, listEarlyNight, listLimitPerson, listLimitPerson_Child); return(Json(new { result = result, Message = result ? "Cập nhật giá hạng phòng thành công." : "Cập nhật giá hạng phòng thất bại!" }, JsonRequestBehavior.AllowGet)); } else { DateTime _fdate; DateTime _tdate; DateTime.TryParse(fDate, CultureInfo.GetCultureInfo("vi-vn"), DateTimeStyles.None, out _fdate); DateTime.TryParse(tDate, CultureInfo.GetCultureInfo("vi-vn"), DateTimeStyles.None, out _tdate); model.dateFrom = _fdate; // từ model.dateTo = _tdate; // tơi if (_priceLevelService.checkDate(_fdate, _tdate)) { return(Json(new { result = false, Message = "Khoảng thời gian đa tồn tại trên hệ thống. Vui lòng kiểm tra lai!" }, JsonRequestBehavior.AllowGet)); } if (_fdate >= _tdate) { return(Json(new { result = false, Message = "Thời gian từ phải nhỏ hơn thời gian tới. Vui lòng kiểm tra lai!" }, JsonRequestBehavior.AllowGet)); } var result = _priceLevelService.InsertRoomPriceLevel(listRoom, model, listXtraDay, listPriceDay, listXtraNight, listEarlyDay, listEarlyNight, listLimitPerson, listLimitPerson_Child); return(Json(new { result = result, Message = result ? "Thêm mới giá hạng phòng thành công." : "Thêm mới giá hạng phòng Thất bại." }, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// thực hiện tìm chính sách gia cho 1 loại phòng nào đấy: tính theo ngày check-in (ngày đến thôi) /// </summary> /// <param name="roomid"></param> /// <param name="roomid"></param> /// <returns>Trả về giá theo ngày, đếm tháng</returns> public tbl_RoomPriceLevel GetPrice(int roomTypeID, DateTime dtIn) { DayOfWeek dayOfWeek = dtIn.DayOfWeek; string iDayOfWeek = CommService.ConvertToInt(dayOfWeek).ToString(); //search again using (var db = _connectionData.OpenDbConnection()) { var query = db.From <tbl_RoomPriceLevel>() .Where(e => e.RoomTypeID == roomTypeID && e.Status == true && e.dayOfWeeks.Contains(iDayOfWeek) && (e.dateFrom <= dtIn) && (e.dateTo >= dtIn) ) .OrderByDescending(e => e.Id); tbl_RoomPriceLevel rows = db.Select <tbl_RoomPriceLevel>(query).FirstOrDefault(); return(rows); } }
/// <summary> /// Caapj nhatja /// </summary> /// <param name="listRoom"></param> /// <param name="model"></param> /// <param name="listXtraDay"></param> /// <param name="listPriceDay"></param> /// <param name="listXtraNight"></param> /// <param name="listEarlyDay"></param> /// <param name="listEarlyNight"></param> /// <param name="listLimitPerson"></param> /// <returns></returns> public bool UpdateRoomPriceLevel(List <tbl_Room> listRoom, tbl_RoomPriceLevel model, List <tbl_RoomPriceLevel_Extra> listXtraDay, List <tbl_RoomPriceLevel_Hour> listPriceDay, List <tbl_RoomPriceLevel_Extra> listXtraNight, List <tbl_RoomPriceLevel_Extra> listEarlyDay, List <tbl_RoomPriceLevel_Extra> listEarlyNight, List <tbl_RoomPriceLevel_Extra> listLimitPerson, List <tbl_RoomPriceLevel_Extra> listLimitPerson_Child) { using (var db = _connectionData.OpenDbConnection()) { using (var tran = db.OpenTransaction()) { try { //model.DateCreate = DateTime.Now; var obj = db.Single <tbl_RoomPriceLevel>(x => x.Id == model.Id); var rel = new tbl_RoomPriceLevel_Hi() { CreateID = obj.CreateID, Twin = obj.Twin, _Single = obj._Single, Note = obj.Note, Number_Adult = obj.Number_Adult, PriceNight = obj.PriceNight, PriceDay = obj.PriceDay, PriceMonth = obj.PriceMonth, dayOfWeeks = obj.dayOfWeeks, DateCreate = obj.DateCreate, DatePromotion = obj.DatePromotion, RoomPriceLevelID = obj.Id, RoomTypeID = obj.RoomTypeID, Status = obj.Status, SysHotelID = obj.SysHotelID, TypePrice = obj.TypePrice, dateFrom = obj.dateFrom, dateTo = obj.dateTo }; obj.Twin = model.Twin; obj._Single = model._Single; obj.Note = model.Note; obj.Number_Adult = model.Number_Adult; obj.PriceNight = model.PriceNight; obj.PriceDay = model.PriceDay; obj.PriceMonth = model.PriceMonth; obj.dayOfWeeks = model.dayOfWeeks; //model.DateCreate = obj.DateCreate; db.Update(obj); db.Insert(rel); //db.Delete<tbl_RoomPriceLevel_Extra>(x=>x.==1) db.Delete <tbl_RoomPriceLevel_Extra>(p => p.RoomPriceLevelID == model.Id); //db.Delete<tbl_Room_Type_Room_Rel>(p => p.LevelID == model.RoomTypeID); db.Delete <tbl_RoomPriceLevel_Hour>(p => p.RoomPriceLevelID == model.Id); //phụ trội muộn theo ngày if (listXtraDay != null) { var xtraday = listXtraDay.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(xtraday); } //phụ trội muộn theo đêm if (listXtraNight != null) { var xtranight = listXtraNight.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(xtranight); } //Gias theo ngayf if (listPriceDay != null) { var xpriceday = listPriceDay.Select( x => new tbl_RoomPriceLevel_Hour() { RoomPriceLevelID = model.Id, numberHours = x.numberHours, price = x.price }); db.InsertAll(xpriceday); } //phụ trội sowms theo ngày if (listEarlyDay != null) { var xEarlyDay = listEarlyDay.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(xEarlyDay); } //phụ trội som theo dem if (listEarlyNight != null) { var xEarlyNight = listEarlyNight.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); //vuot qua so ng db.InsertAll(xEarlyNight); } //vuot qua so ng if (listLimitPerson != null) { var limitPerson = listLimitPerson.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(limitPerson); } //Phuj trooij trẻ em if (listLimitPerson_Child != null) { var limitPerson_child = listLimitPerson_Child.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(limitPerson_child); }// cau hinhs //if (listRoom != null) //{ // var romconfig = // listRoom.Select( // x => new tbl_Room_Type_Room_Rel() { LevelID = model.Id, roomid = x.Id }); // db.InsertAll(romconfig); //} tran.Commit(); return(true); } catch (Exception e) { tran.Rollback(); return(false); throw; } } } }
/// <summary> /// /// </summary> /// <param name="listRoom"></param> /// <param name="model"></param> /// <param name="listXtraDay"></param> /// <param name="listPriceDay"></param> /// <param name="listXtraNight"></param> /// <param name="listEarlyDay"></param> /// <param name="listEarlyNight"></param> /// <param name="listLimitPerson"></param> /// <returns></returns> public bool InsertRoomPriceLevel(List <tbl_Room> listRoom, tbl_RoomPriceLevel model, List <tbl_RoomPriceLevel_Extra> listXtraDay, List <tbl_RoomPriceLevel_Hour> listPriceDay, List <tbl_RoomPriceLevel_Extra> listXtraNight, List <tbl_RoomPriceLevel_Extra> listEarlyDay, List <tbl_RoomPriceLevel_Extra> listEarlyNight, List <tbl_RoomPriceLevel_Extra> listLimitPerson, List <tbl_RoomPriceLevel_Extra> listLimitPerson_Child) { using (var db = _connectionData.OpenDbConnection()) { using (var tran = db.OpenTransaction()) { try { // model.DateCreate = DateTime.Now; //var roomtype = new tbl_Room_Type() //{ // Name = RoomTypeName.Trim(), // Code = "", // DouldBed = model.Twin, // SingBed = model._Single, // Note = "", // HotelID = model.SysHotelID, // UserLimit = model.CreateID //}; //db.Save(roomtype, true); //model.RoomTypeID = roomtype.Id; model.DateCreate = DateTime.Now; model.Status = true; db.Save(model, true); //db.Delete<tbl_Room_Type_Room_Rel>(p => p.LevelID == model.RoomTypeID); //phụ trội muộn theo ngày if (listXtraDay != null) { var xtraday = listXtraDay.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(xtraday); } //phụ trội muộn theo đêm if (listXtraNight != null) { var xtranight = listXtraNight.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(xtranight); } //Gias theo ngayf if (listPriceDay != null) { var xpriceday = listPriceDay.Select( x => new tbl_RoomPriceLevel_Hour() { RoomPriceLevelID = model.Id, numberHours = x.numberHours, price = x.price }); db.InsertAll(xpriceday); } //phụ trội sowms theo ngày if (listEarlyDay != null) { var xEarlyDay = listEarlyDay.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(xEarlyDay); } //phụ trội som theo dem if (listEarlyNight != null) { var xEarlyNight = listEarlyNight.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); //vuot qua so ng db.InsertAll(xEarlyNight); } //vuot qua so ng if (listLimitPerson != null) { var limitPerson = listLimitPerson.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(limitPerson); } if (listLimitPerson_Child != null) { var limitPerson_child = listLimitPerson_Child.Select( x => new tbl_RoomPriceLevel_Extra() { RoomPriceLevelID = model.Id, numberExtra = x.numberExtra, priceExtra = x.priceExtra, typeExtra = x.typeExtra }); db.InsertAll(limitPerson_child); } // cau hinhs //if (listRoom != null) //{ // var romconfig = // listRoom.Select( // x => new tbl_Room_Type_Room_Rel() { LevelID = model.RoomTypeID, roomid = x.Id }); // db.InsertAll(romconfig); //} tran.Commit(); return(true); } catch (Exception e) { tran.Rollback(); return(false); throw; } } } }