private ThongKeTheoThangDTO DoanhThuChoThuePhongTheoThang(int thang, int nam, List <PhongDTO> phongDTOs, List <KhachHangDTO> khachHangDTOs) { int cuoiThang = TinhNgayCuoiThang(thang, nam); double doanhThu = 0; foreach (var phong in phongDTOs) { var lstKhachHangTheoPhong = khachHangDTOs.Where(kh => kh.IDPhong == phong.ID && kh.ThoiGianTra.Year == nam && kh.ThoiGianTra.Month == thang).GroupBy(kh => kh.ThoiGianNhan).ToList(); foreach (var key in lstKhachHangTheoPhong) { var khachHang = key.FirstOrDefault(); if (KiemTraThoiGianDatPhong(khachHang.ThoiGianTra, cuoiThang)) { TimeSpan timeSpan = khachHang.ThoiGianTra - khachHang.ThoiGianNhan; int soNgay = timeSpan.Days; doanhThu += phong.Gia * soNgay; } } } ThongKeTheoThangDTO baoCaoThongKe = new ThongKeTheoThangDTO(); baoCaoThongKe.TenDichVu = "Cho thuê phòng"; baoCaoThongKe.DoanThu = doanhThu; return(baoCaoThongKe); }
private ThongKeTheoThangDTO ThongKeDichVuTheoThang(int thang, int nam, string tenDV) { ThongKeTheoThangDTO thongKeTheoThangDTO = new ThongKeTheoThangDTO(); double doanhThu = 0; var lstDV = models.LichSuDichVus.Where(l => l.TenDichVu.Equals(tenDV) && l.NgayGoiDichVu.Month == thang && l.NgayGoiDichVu.Year == nam).ToList(); var gia = models.DichVus.Where(d => d.TenDichVu.Equals(tenDV)).Select(d => d.Gia).FirstOrDefault(); foreach (var dv in lstDV) { doanhThu += gia; } thongKeTheoThangDTO.DoanThu = doanhThu; thongKeTheoThangDTO.TenDichVu = tenDV; return(thongKeTheoThangDTO); }