private void picbx_Delete_Click(object sender, EventArgs e) { if (dgv.SelectedRows.Count == 1 && dgv.Rows.Count > 0) { int selectedIdRoom = int.Parse(dgv.SelectedRows[0].Cells["BoodetIdroom"].Value.ToString()); // int index = subBookings.FindIndex(x => x.BoodetIdroom == selectedIdRoom); SubBookingDetailVM val = subBookings.Where(x => x.BoodetIdroom == selectedIdRoom).FirstOrDefault(); if (val.IdBoodet != 0) { listDel.Add(val.IdBoodet); } subBookings.Remove(val); if (storeRoomDel.ContainsKey(val.RoomType)) { AvailableRoomVM store = storeRoomDel[val.RoomType].Find(x => x.IdRoom == selectedIdRoom); listForCbb.Add(store); storeRoomDel[val.RoomType].Remove(store); } // AvailableRoomVM store = storeDelRoom.Find(x =>x.IdRoom == selectedIdRoom); // storeDelRoom.Remove(store); // listForCbb.Add(store); LoadCbbRoom(); LoadBookedRoomList(); tb_Total.Text = calTotalPrice().ToString(); tb_Deposit.Text = (calTotalPrice() * 3 / 10).ToString(); } else { MessageBox.Show("Bạn chưa chọn hoặc chọn nhiều hơn một phòng để xóa khỏi đơn booking", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public BookingDetailVM GetDetail(int id) { try { int i = 0; Booking booking = _bookingDALManageFacade.FindBookingById(id); List <Room> listRoom = _bookingDALManageFacade.FindRoomByIdBook(id); BookingDetailVM result = mapper.Map <BookingDetailVM>(booking); result.clientVM = mapper.Map <ClientVM>(booking.BookIdclientNavigation); foreach (BookingDetail val in booking.BookingDetails) { SubBookingDetailVM subBookingDetailVM = mapper.Map <SubBookingDetailVM>(val); subBookingDetailVM.RoomName = listRoom[i].RoomName; subBookingDetailVM.RoomType = listRoom[i].RoomIdroomtypeNavigation.RotyName; subBookingDetailVM.Duration = result.CheckoutDate.Subtract(result.CheckinDate).Days; subBookingDetailVM.Amount = subBookingDetailVM.Duration * subBookingDetailVM.BoodetPrice; i++; result.ListSub.Add(subBookingDetailVM); } return(result); } catch (Exception) { throw; } }