public ActionResult Index() { // doanh thu theo tháng List <DoanhThuModel> lst_doanhthutheothang = new List <DoanhThuModel>(); var list = db.HoaDonBans.ToList(); string[] list_thang = { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12" }; List <double> lst_tongtien = new List <double>(); foreach (var item_thang in list_thang) { var doanhthu = new DoanhThuModel(); doanhthu.Label = item_thang; double tongtien = 0; int tongsoluong = 0; foreach (var item in list) { var dao = new DoanhThuDao(); if (dao.thang_hoadon(item.NgayBan) == Convert.ToInt32(item_thang)) { tongsoluong += new HoaDonBanDao().tongsoluong(item.Id); tongtien += Convert.ToDouble(item.TongTien); } } doanhthu.NgayBan = item_thang + "/" + DateTime.Now.Year; doanhthu.Y = tongtien; doanhthu.SoLuongBan = tongsoluong; lst_doanhthutheothang.Add(doanhthu); } ViewBag.ListDoanhThu = lst_doanhthutheothang; ViewBag.DataPoints = JsonConvert.SerializeObject(lst_doanhthutheothang); return(View()); }
// GET: Admin/Home public ActionResult Index() { if (Session["Account"] == null) { return(RedirectToAction("Index", "Login", new { area = "" })); } else { CustomerModel cus = new CustomerModel(); ProductModel pro = new ProductModel(); OrderModel ord = new OrderModel(); DoanhThuModel doanhthu = new DoanhThuModel(); string customer = cus.countCustomer(); string product = pro.countProduct(); string order = ord.countOrder(); string dt = doanhthu.DoanhThu(); List <int> doanhthuthang = new List <int>(); for (int i = 0; i < 12; i++) { doanhthuthang.Add(doanhthu.DoanhThuThang(i + 1)); } ViewBag.DoanhThuThang = doanhthuthang.ToList(); ViewBag.countCus = customer; ViewBag.countPro = product; ViewBag.countOrder = order; ViewBag.DoanhThu = dt; return(View()); } }
private DoanhThuModel CalDoanhThuNgay(string date) { DoanhThuModel doanhThu = new DoanhThuModel(); // Tính doanh thu của từng phòng // Khởi tạo doanh thu = 0 cho từng phòng var phongs = db.PHONGs.ToList(); List <DoanhThuPhongModel> doanhThuPhongs = new List <DoanhThuPhongModel>(); phongs.ForEach(phong => { DoanhThuPhongModel doanhThuPhong = new DoanhThuPhongModel(); doanhThuPhong.maPhong = phong.MA_PHONG; doanhThuPhong.doanhThu = 0; doanhThuPhongs.Add(doanhThuPhong); }); // chuyển ngày cần tính daonh thu sang DateTime DateTime dateNeed = DateTime.ParseExact(date, "yyyy-MM-dd", System.Globalization.CultureInfo.InvariantCulture); // Lọc các phiếu thêu phòng thỏa ngày cần tính doanh thu // -> cộng doanh thu cho phòng tương ứng khi được thuê (có trong bảng CT thuê phòng) var phieuThuePhongs = db.PHIEU_THUEPHONG.ToList(); phieuThuePhongs .Where(phieu => { return(DateTime.Compare(phieu.NGAYDEN, dateNeed) <= 0 && DateTime.Compare(phieu.NGAYDI, dateNeed) >= 0); }) .ToList() .ForEach(phieu => { var ctPhieu = phieu.CHITIET_THUEPHONG.ToList(); ctPhieu.ForEach(ct => { doanhThuPhongs.Find(dt => dt.maPhong == ct.MAPHONG).doanhThu += (decimal)ct.GIAPHONG; }); }); doanhThu.doanhThuPhongs = doanhThuPhongs; // Tính doanh thu thuê dịch vụ decimal doanhThuDichVu = 0; phieuThuePhongs .Where(phieu => DateTime.Compare(phieu.NGAYDI, dateNeed) == 0) .ToList() .ForEach(phieu => { var ctPhieu = phieu.CHITIET_THUEDICHVU.ToList(); ctPhieu.ForEach(ct => { doanhThuDichVu += (decimal)ct.GIA_DICHVU * ct.SOLUONG; }); }); doanhThu.doanhThuDichVu = doanhThuDichVu; return(doanhThu); }
// GET: Admin/DoanhThu public ActionResult Index() { var doanhthu = new DoanhThuModel(); List <int> doanhthuthang = new List <int>(); for (int i = 0; i < 12; i++) { doanhthuthang.Add(doanhthu.DoanhThuThang(i + 1)); } ViewBag.DoanhThu = doanhthuthang.ToList(); return(View()); }
public void DoanhThuNamDownload(string year) { DoanhThuModel doanhThu = CalDoanhThuNam(year); string titleSheet = $"DOANH THU NĂM {year}"; string nameSheet = year; ExcelPackage ep = CreateExcelDoanhThu(doanhThu, titleSheet, nameSheet); Response.Clear(); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.AddHeader("content-disposition", "attachment: filename=" + "Report.xlsx"); Response.BinaryWrite(ep.GetAsByteArray()); Response.End(); }
public ActionResult DoanhThuNam(string year) { if (year == null) { ViewBag.username = ((LoginSessionModel)Session["session"]).name; return(View(new DoanhThuModel())); } DoanhThuModel doanhThu = CalDoanhThuNam(year); ViewBag.year = year; ViewBag.username = ((LoginSessionModel)Session["session"]).name; return(View(doanhThu)); }
public ActionResult DoanhThuThang(string monthAndYear) { if (monthAndYear == null) { ViewBag.username = ((LoginSessionModel)Session["session"]).name; return(View(new DoanhThuModel())); } DoanhThuModel doanhThu = CalDoanhThuThang(monthAndYear); ViewBag.monthandyear = monthAndYear; ViewBag.username = ((LoginSessionModel)Session["session"]).name; return(View(doanhThu)); }
public ActionResult DoanhThuNgay(string date) { if (date == null) { ViewBag.username = ((LoginSessionModel)Session["session"]).name; return(View(new DoanhThuModel())); } DoanhThuModel doanhThu = CalDoanhThuNgay(date); ViewBag.date = date; ViewBag.username = ((LoginSessionModel)Session["session"]).name; return(View(doanhThu)); }
public void DoanhThuThangDownload(string monthAndYear) { string[] my = monthAndYear.Split(new[] { '-' }); DoanhThuModel doanhThu = CalDoanhThuThang(monthAndYear); string titleSheet = $"DOANH THU THÁNG {my[1]} NĂM {my[0]}"; string nameSheet = $"{my[0]}-{my[1]}"; ExcelPackage ep = CreateExcelDoanhThu(doanhThu, titleSheet, nameSheet); Response.Clear(); Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; Response.AddHeader("content-disposition", "attachment: filename=" + "Report.xlsx"); Response.BinaryWrite(ep.GetAsByteArray()); Response.End(); }
// GET: Admin/DoanhThu public ActionResult Index() { if (Session["Account"] == null) { return(RedirectToAction("Index", "Login", new { area = "" })); } else { var doanhthu = new DoanhThuModel(); List <int> doanhthuthang = new List <int>(); for (int i = 0; i < 12; i++) { doanhthuthang.Add(doanhthu.DoanhThuThang(i + 1)); } ViewBag.DoanhThu = doanhthuthang.ToList(); return(View()); } }
public ActionResult Index() { // doanh thu theo tháng var session = (DoAn.Common.Session.UserLogin)Session[DoAn.Common.Constants.USER_SESSION]; if (session != null) { List <DoanhThuModel> lst_doanhthutheothang = new List <DoanhThuModel>(); var list = db.HoaDonBans.Where(x => x.DaThanhToan == 1).ToList(); string[] list_thang = { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12" }; List <double> lst_tongtien = new List <double>(); foreach (var item_thang in list_thang) { double tongtien = 0; int tongsoluong = 0; foreach (var item in list) { var dao = new DoanhThuDao(); if (dao.thang_hoadon(item.NgayBan) == Convert.ToInt32(item_thang)) { tongsoluong += new HoaDonBanDao().tongsoluong(item.Id); tongtien += Convert.ToDouble(item.TongTien); } } var ngayban = item_thang + "/" + DateTime.Now.Year; var doanhthu = new DoanhThuModel(item_thang, tongtien, ngayban, tongsoluong); lst_doanhthutheothang.Add(doanhthu); } ViewBag.ListDoanhThu = lst_doanhthutheothang; ViewBag.DataPoints = JsonConvert.SerializeObject(lst_doanhthutheothang); return(View()); } else { return(RedirectToAction("Index", "Home")); } }
// GET: Admin/Home public ActionResult Index() { CustomerModel cus = new CustomerModel(); ProductModel pro = new ProductModel(); OrderModel ord = new OrderModel(); DoanhThuModel doanhthu = new DoanhThuModel(); string customer = cus.countCustomer(); string product = pro.countProduct(); string order = ord.countOrder(); string dt = doanhthu.DoanhThu(); List <int> doanhthuthang = new List <int>(); for (int i = 0; i < 12; i++) { doanhthuthang.Add(doanhthu.DoanhThuThang(i + 1)); } ViewBag.DoanhThuThang = doanhthuthang.ToList(); ViewBag.countCus = customer; ViewBag.countPro = product; ViewBag.countOrder = order; ViewBag.DoanhThu = dt; return(View()); }
public ActionResult DoanhThuTheoNgay(DateTime?from = null, DateTime?to = null) { // doanh thu theo tháng List <DoanhThuModel> lst_doanhthutheothang = new List <DoanhThuModel>(); DateTime dt = DateTime.Now; List <double> lst_tongtien = new List <double>(); var list = db.HoaDonBans.ToList(); if (from == null || to == null) { var list_ngay_now = new DoanhThuDao().dsngaytrongthang(dt.Month, dt.Year); var list_ngay_now_split = list_ngay_now.Split(','); foreach (var item_ngay in list_ngay_now_split) { if (item_ngay != "") { var ngay_split = item_ngay.Split('/'); var ngay = ngay_split[0]; var doanhthu = new DoanhThuModel(); doanhthu.Label = item_ngay; double tongtien = 0; int tongsoluong = 0; foreach (var item in list) { var dao = new DoanhThuDao(); if (dao.ngay_hoadon(item.NgayBan) == Convert.ToInt32(ngay) && dao.thang_hoadon(item.NgayBan) == Convert.ToInt32(dt.Month) && dao.nam_hoadon(item.NgayBan) == Convert.ToInt32(dt.Year)) { tongsoluong += new HoaDonBanDao().tongsoluong(item.Id); tongtien += Convert.ToDouble(item.TongTien); } } doanhthu.NgayBan = item_ngay; doanhthu.SoLuongBan = tongsoluong; doanhthu.Y = tongtien; lst_doanhthutheothang.Add(doanhthu); } } } else { var ngayfrom1 = Convert.ToDateTime(from).Day; var thangfrom1 = Convert.ToDateTime(from).Month; var namfrom1 = Convert.ToDateTime(from).Year; var ngayto1 = Convert.ToDateTime(to).Day; var thangto1 = Convert.ToDateTime(to).Month; var namto1 = Convert.ToDateTime(to).Year; var ngayfrom = Convert.ToInt32(ngayfrom1); var thangfrom = Convert.ToInt32(thangfrom1); var namfrom = Convert.ToInt32(namfrom1); var ngayto = Convert.ToInt32(ngayto1); var thangto = Convert.ToInt32(thangto1); var namto = Convert.ToInt32(namto1); if (namto != namfrom || thangto < thangfrom || (thangto < thangfrom && ngayto < ngayfrom)) { } else { var tru = thangto - thangfrom; string string_ngay = ""; if (tru == 0) { string_ngay += new DoanhThuDao().ds_ngay_tru_trongthang(ngayfrom, ngayto, thangfrom, namfrom); } else { string_ngay += new DoanhThuDao().ds_ngay_tru_thangfrom(ngayfrom, thangfrom, namfrom); for (int i = thangfrom + 1; i < thangto; i++) { string_ngay += new DoanhThuDao().dsngaytrongthang(i, namfrom); } string_ngay += new DoanhThuDao().ds_ngay_tru_thangto(ngayto, thangto, namto); } var string_ngay_split = string_ngay.Split(','); foreach (var item_ngay in string_ngay_split) { if (item_ngay != "") { var ngay_split = item_ngay.Split('/'); var ngay = ngay_split[0]; var thang = ngay_split[1]; var doanhthu = new DoanhThuModel(); doanhthu.Label = item_ngay; double tongtien = 0; int tongsoluong = 0; foreach (var item in list) { var dao = new DoanhThuDao(); if (dao.ngay_hoadon(item.NgayBan) == Convert.ToInt32(ngay) && dao.thang_hoadon(item.NgayBan) == Convert.ToInt32(thang) && dao.nam_hoadon(item.NgayBan) == Convert.ToInt32(namto)) { tongsoluong += new HoaDonBanDao().tongsoluong(item.Id); tongtien += Convert.ToDouble(item.TongTien); } } doanhthu.NgayBan = item_ngay; doanhthu.SoLuongBan = tongsoluong; doanhthu.Y = tongtien; lst_doanhthutheothang.Add(doanhthu); } } } } ViewBag.TongSoLuong = lst_doanhthutheothang; ViewBag.DoanhThuTheoNgay = JsonConvert.SerializeObject(lst_doanhthutheothang); return(View()); }
public ActionResult DoanhThuTheoNgay_ChiNhanh(string thang = null) { var session = (DoAn.Common.Session.UserLogin)Session[DoAn.Common.Constants.USER_SESSION]; if (session != null) { List <DoanhThuModel> lst_doanhthutheothang = new List <DoanhThuModel>(); List <double> lst_tongtien = new List <double>(); var list = db.HoaDonBans.ToList(); var list_chinhanh = db.ChiNhanhs.ToList(); if (thang == null) { foreach (var item in list_chinhanh) { var doanhthu = new DoanhThuModel(); int?tongtien = 0; foreach (var itemhdb in list) { if (itemhdb.MaChiNhanh == item.Id) { tongtien += itemhdb.TongTien_HoaDon; } } doanhthu.Label = item.TenChiNhanh; doanhthu.Y = tongtien; lst_doanhthutheothang.Add(doanhthu); } } else { string[] thang_split = thang.Split('-'); var thang_bc = Convert.ToInt32(thang_split[1]); var nam_bc = Convert.ToInt32(thang_split[0]); var dao = new DoanhThuDao(); foreach (var item in list_chinhanh) { var doanhthu = new DoanhThuModel(); int?tongtien = 0; foreach (var itemhdb in list) { if (itemhdb.MaChiNhanh == item.Id && dao.thang_hoadon(itemhdb.NgayBan) == thang_bc && dao.nam_hoadon(itemhdb.NgayBan) == nam_bc) { tongtien += itemhdb.TongTien_HoaDon; } } doanhthu.Label = item.TenChiNhanh; doanhthu.Y = tongtien; lst_doanhthutheothang.Add(doanhthu); } } ViewBag.TongSoLuong = lst_doanhthutheothang; ViewBag.DoanhThuTheoNgay = JsonConvert.SerializeObject(lst_doanhthutheothang); return(View()); } else { return(RedirectToAction("Index", "Home")); } // doanh thu theo tháng }
private static ExcelPackage CreateExcelDoanhThu(DoanhThuModel doanhThu, string titleSheet, string nameSheet) { // create excel file ExcelPackage ep = new ExcelPackage(); ExcelWorksheet sheet = ep.Workbook.Worksheets.Add(nameSheet); sheet.Column(1).Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; sheet.Column(2).Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; sheet.Column(2).Width = 24.85; sheet.Column(3).Style.Numberformat.Format = "#,##0.00"; sheet.Row(1).Style.Font.Bold = true; //sheet.Row(1).Style.Fill.PatternType = ExcelFillStyle.Solid; //sheet.Row(1).Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.FromArgb(180, 198, 231)); sheet.Cells["A1:C1"].Merge = true; sheet.Cells["A1"].Value = titleSheet; sheet.Cells["A2"].Value = "STT"; sheet.Cells["B2"].Value = "Phòng"; sheet.Cells["C2"].Value = "Tổng tiền phòng"; sheet.Cells["C2"].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; sheet.Row(2).Style.Font.Bold = true; int row = 3; doanhThu.doanhThuPhongs.ForEach(phong => { sheet.Cells[$"A{row}"].Value = row - 2; sheet.Cells[$"B{row}"].Value = phong.maPhong; sheet.Cells[$"C{row}"].Value = phong.doanhThu; row++; }); sheet.Row(row).Style.Font.Bold = true; sheet.Cells[$"A{row}:B{row}"].Merge = true; sheet.Cells[$"A{row}"].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; sheet.Cells[$"A{row}"].Value = "Tổng doanh thu tiền thuê phòng"; sheet.Cells[$"C{row}"].Formula = $"SUM(C{3}:C{row - 1})"; row++; sheet.Row(row).Style.Font.Bold = true; sheet.Cells[$"A{row}:B{row}"].Merge = true; sheet.Cells[$"A{row}"].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; sheet.Cells[$"A{row}"].Value = "Tổng doanh thu tiền thuê dịch vụ"; sheet.Cells[$"C{row}"].Value = doanhThu.doanhThuDichVu; row++; sheet.Row(row).Style.Font.Bold = true; sheet.Cells[$"A{row}:B{row}"].Merge = true; sheet.Cells[$"A{row}"].Style.HorizontalAlignment = OfficeOpenXml.Style.ExcelHorizontalAlignment.Center; sheet.Cells[$"A{row}"].Value = "Tổng doanh thu"; sheet.Cells[$"C{row}"].Formula = $"SUM(C{row - 2}, C{row - 1})"; var range = sheet.Cells[$"A1:C{row}"]; range.Style.Border.Top.Style = ExcelBorderStyle.Thin; range.Style.Border.Bottom.Style = ExcelBorderStyle.Thin; range.Style.Border.Left.Style = ExcelBorderStyle.Thin; range.Style.Border.Right.Style = ExcelBorderStyle.Thin; sheet.Column(3).AutoFit(); return(ep); }
private DoanhThuModel CalDoanhThuNam(string year) { DoanhThuModel doanhThu = new DoanhThuModel(); int yearNeed = Int32.Parse(year); DateTime dateMin = new DateTime(yearNeed, 1, 1); DateTime dateMax = new DateTime(yearNeed, 12, 31); // Tính doanh thu của từng phòng // Khởi tạo doanh thu = 0 cho từng phòng var phongs = db.PHONGs.ToList(); List <DoanhThuPhongModel> doanhThuPhongs = new List <DoanhThuPhongModel>(); phongs.ForEach(phong => { DoanhThuPhongModel doanhThuPhong = new DoanhThuPhongModel(); doanhThuPhong.maPhong = phong.MA_PHONG; doanhThuPhong.doanhThu = 0; doanhThuPhongs.Add(doanhThuPhong); }); // Lọc các phiếu thêu phòng thỏa ngày cần tính doanh thu var phieuThuePhongs = db.PHIEU_THUEPHONG.ToList(); // cộng doanh thu cho phòng tương ứng khi được thuê (có trong bảng CT thuê phòng) phieuThuePhongs .Where(phieu => { return(DateTime.Compare(phieu.NGAYDEN, dateMax) <= 0 && DateTime.Compare(phieu.NGAYDI, dateMin) >= 0); }) .ToList() .ForEach(phieu => { var ctPhieu = phieu.CHITIET_THUEPHONG.ToList(); if (DateTime.Compare(phieu.NGAYDEN, dateMin) >= 0) { if (DateTime.Compare(phieu.NGAYDI, dateMax) <= 0) { ctPhieu.ForEach((ct) => { doanhThuPhongs .Find(dt => dt.maPhong == ct.MAPHONG) .doanhThu += (decimal)ct.GIAPHONG * (decimal)((phieu.NGAYDI - phieu.NGAYDEN).Ticks / 864e9); }); } else { ctPhieu.ForEach((ct) => { doanhThuPhongs .Find(dt => dt.maPhong == ct.MAPHONG) .doanhThu += (decimal)ct.GIAPHONG * (decimal)((dateMax - phieu.NGAYDEN).Ticks / 864e9); }); } } else { if (DateTime.Compare(phieu.NGAYDI, dateMax) <= 0) { ctPhieu.ForEach((ct) => { doanhThuPhongs .Find(dt => dt.maPhong == ct.MAPHONG) .doanhThu += (decimal)ct.GIAPHONG * (decimal)((phieu.NGAYDI - dateMin).Ticks / 864e9); }); } else { ctPhieu.ForEach((ct) => { doanhThuPhongs .Find(dt => dt.maPhong == ct.MAPHONG) .doanhThu += (decimal)ct.GIAPHONG * (decimal)((dateMax - dateMin).Ticks / 864e9); }); } } }); doanhThu.doanhThuPhongs = doanhThuPhongs; // Tính doanh thu thuê dịch vụ decimal doanhThuDichVu = 0; phieuThuePhongs .Where(phieu => phieu.NGAYDI.Year == yearNeed) .ToList() .ForEach(phieu => { var ctPhieu = phieu.CHITIET_THUEDICHVU.ToList(); ctPhieu.ForEach(ct => { doanhThuDichVu += (decimal)ct.GIA_DICHVU * ct.SOLUONG; }); }); doanhThu.doanhThuDichVu = doanhThuDichVu; return(doanhThu); }