public IList <PhieuBanHangViewModel> SearchDanhSachPhieuBanHang(String key, string trangthai, DateTime tungay, DateTime denngay, string userName) { IQueryable <PhieuBanHang> danhSachPhieuBanHang = _phieuBanHangRepo.GetAll(); List <PhieuBanHangViewModel> all = new List <PhieuBanHangViewModel>(); List <PhieuBanHangViewModel> allForManager = new List <PhieuBanHangViewModel>(); //Nếu là nhân viên if (_nhanVienBus.layMaChucVu(userName) == 4) { if ((!(tungay == default(DateTime))) && (!(denngay == default(DateTime)))) { all = (from phieubanhang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieubanhang.MaNhanVien equals nhanvien.MaNhanVien where (nhanvien.MaNhanVien.Equals(userName) && (phieubanhang.NgayBan >= tungay.Date && phieubanhang.NgayBan <= denngay.Date)) select new { SoPhieuBanHang = phieubanhang.SoPhieuBanHang, NgayBan = phieubanhang.NgayBan, TenNhanVien = nhanvien.TenNhanvien, KhachHang = phieubanhang.TenKhachHang, TongTien = phieubanhang.TongTien, TrangThai = phieubanhang.TrangThai, ChuThich = phieubanhang.Ghichu, SoDienThoai = phieubanhang.SoDienThoai }).AsEnumerable().Select(x => new PhieuBanHangViewModel() { soPhieuBanHang = x.SoPhieuBanHang, ngayBan = x.NgayBan, tenKhachHang = x.KhachHang, tongTien = x.TongTien, tenNhanVien = x.TenNhanVien, trangThai = x.TrangThai, soDienThoai = x.SoDienThoai, ghiChu = x.ChuThich, }).OrderByDescending(x => x.soPhieuBanHang).ToList(); return(all); } if (!string.IsNullOrEmpty(key)) { all = (from phieubanhang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieubanhang.MaNhanVien equals nhanvien.MaNhanVien where (nhanvien.UserName.Equals(userName) && ( phieubanhang.SoPhieuBanHang.ToString().Contains(key) || phieubanhang.TenKhachHang.Contains(key) || phieubanhang.SoDienThoai.Contains(key))) select new { KhachHang = phieubanhang.TenKhachHang, TongTien = phieubanhang.TongTien, SoPhieuBanHang = phieubanhang.SoPhieuBanHang, NgayBan = phieubanhang.NgayBan, TenNhanVien = nhanvien.TenNhanvien, TrangThai = phieubanhang.TrangThai, ChuThich = phieubanhang.Ghichu, SoDienThoai = phieubanhang.SoDienThoai }).AsEnumerable().Select(x => new PhieuBanHangViewModel() { tenKhachHang = x.KhachHang, tongTien = x.TongTien, soPhieuBanHang = x.SoPhieuBanHang, ngayBan = x.NgayBan, tenNhanVien = x.TenNhanVien, trangThai = x.TrangThai, ghiChu = x.ChuThich, soDienThoai = x.SoDienThoai, }).OrderByDescending(x => x.soPhieuBanHang).ToList(); return(all); } if (!string.IsNullOrEmpty(trangthai)) { all = (from phieubanhang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieubanhang.MaNhanVien equals nhanvien.MaNhanVien where (nhanvien.UserName.Equals(userName) && phieubanhang.TrangThai.ToString().Equals(trangthai)) select new { KhachHang = phieubanhang.TenKhachHang, TongTien = phieubanhang.TongTien, SoPhieuBanHang = phieubanhang.SoPhieuBanHang, NgayBan = phieubanhang.NgayBan, TenNhanVien = nhanvien.TenNhanvien, TrangThai = phieubanhang.TrangThai, ChuThich = phieubanhang.Ghichu, SoDienThoai = phieubanhang.SoDienThoai }).AsEnumerable().Select(x => new PhieuBanHangViewModel() { tenKhachHang = x.KhachHang, tongTien = x.TongTien, soPhieuBanHang = x.SoPhieuBanHang, ngayBan = x.NgayBan, tenNhanVien = x.TenNhanVien, trangThai = x.TrangThai, ghiChu = x.ChuThich, soDienThoai = x.SoDienThoai, }).OrderByDescending(x => x.soPhieuBanHang).ToList(); return(all); } all = (from phieubanhang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieubanhang.MaNhanVien equals nhanvien.MaNhanVien where (nhanvien.UserName.Equals(userName) && phieubanhang.TrangThai.Equals(true)) select new { KhachHang = phieubanhang.TenKhachHang, TongTien = phieubanhang.TongTien, SoPhieuBanHang = phieubanhang.SoPhieuBanHang, NgayBan = phieubanhang.NgayBan, TenNhanVien = nhanvien.TenNhanvien, TrangThai = phieubanhang.TrangThai, ChuThich = phieubanhang.Ghichu, SoDienThoai = phieubanhang.SoDienThoai }).AsEnumerable().Select(x => new PhieuBanHangViewModel() { tenKhachHang = x.KhachHang, tongTien = x.TongTien, soPhieuBanHang = x.SoPhieuBanHang, ngayBan = x.NgayBan, tenNhanVien = x.TenNhanVien, trangThai = x.TrangThai, ghiChu = x.ChuThich, soDienThoai = x.SoDienThoai, }).OrderByDescending(x => x.soPhieuBanHang).ToList(); return(all); } //////////////// else { if ((!(tungay == default(DateTime))) && (!(denngay == default(DateTime)))) { allForManager = (from phieubanhang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieubanhang.MaNhanVien equals nhanvien.MaNhanVien where (phieubanhang.NgayBan >= tungay.Date && phieubanhang.NgayBan <= denngay.Date) select new { KhachHang = phieubanhang.TenKhachHang, TongTien = phieubanhang.TongTien, SoPhieuBanHang = phieubanhang.SoPhieuBanHang, NgayBan = phieubanhang.NgayBan, TenNhanVien = nhanvien.TenNhanvien, TrangThai = phieubanhang.TrangThai, ChuThich = phieubanhang.Ghichu, SoDienThoai = phieubanhang.SoDienThoai }).AsEnumerable().Select(x => new PhieuBanHangViewModel() { tenKhachHang = x.KhachHang, tongTien = x.TongTien, soPhieuBanHang = x.SoPhieuBanHang, ngayBan = x.NgayBan, tenNhanVien = x.TenNhanVien, trangThai = x.TrangThai, ghiChu = x.ChuThich, soDienThoai = x.SoDienThoai, }).OrderByDescending(x => x.soPhieuBanHang).ToList(); return(allForManager); } if (!string.IsNullOrEmpty(key)) { allForManager = (from phieubanhang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieubanhang.MaNhanVien equals nhanvien.MaNhanVien where (phieubanhang.SoPhieuBanHang.ToString().Contains(key) || phieubanhang.TenKhachHang.Contains(key) || phieubanhang.SoDienThoai.Contains(key)) select new { KhachHang = phieubanhang.TenKhachHang, TongTien = phieubanhang.TongTien, SoPhieuBanHang = phieubanhang.SoPhieuBanHang, NgayBan = phieubanhang.NgayBan, TenNhanVien = nhanvien.TenNhanvien, TrangThai = phieubanhang.TrangThai, ChuThich = phieubanhang.Ghichu, SoDienThoai = phieubanhang.SoDienThoai }).AsEnumerable().Select(x => new PhieuBanHangViewModel() { tenKhachHang = x.KhachHang, tongTien = x.TongTien, soPhieuBanHang = x.SoPhieuBanHang, ngayBan = x.NgayBan, tenNhanVien = x.TenNhanVien, trangThai = x.TrangThai, ghiChu = x.ChuThich, soDienThoai = x.SoDienThoai, }).OrderByDescending(x => x.soPhieuBanHang).ToList(); return(allForManager); } if (!string.IsNullOrEmpty(trangthai)) { allForManager = (from phieubanhang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieubanhang.MaNhanVien equals nhanvien.MaNhanVien where phieubanhang.TrangThai.ToString().Equals(trangthai) select new { KhachHang = phieubanhang.TenKhachHang, TongTien = phieubanhang.TongTien, SoPhieuBanHang = phieubanhang.SoPhieuBanHang, NgayBan = phieubanhang.NgayBan, TenNhanVien = nhanvien.TenNhanvien, TrangThai = phieubanhang.TrangThai, ChuThich = phieubanhang.Ghichu, SoDienThoai = phieubanhang.SoDienThoai }).AsEnumerable().Select(x => new PhieuBanHangViewModel() { tenKhachHang = x.KhachHang, tongTien = x.TongTien, soPhieuBanHang = x.SoPhieuBanHang, ngayBan = x.NgayBan, tenNhanVien = x.TenNhanVien, trangThai = x.TrangThai, ghiChu = x.ChuThich, soDienThoai = x.SoDienThoai, }).OrderByDescending(x => x.soPhieuBanHang).ToList(); return(allForManager); } allForManager = (from phieubanhang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieubanhang.MaNhanVien equals nhanvien.MaNhanVien where phieubanhang.TrangThai.Equals(true) select new { KhachHang = phieubanhang.TenKhachHang, TongTien = phieubanhang.TongTien, SoPhieuBanHang = phieubanhang.SoPhieuBanHang, NgayBan = phieubanhang.NgayBan, TenNhanVien = nhanvien.TenNhanvien, TrangThai = phieubanhang.TrangThai, ChuThich = phieubanhang.Ghichu, SoDienThoai = phieubanhang.SoDienThoai }).AsEnumerable().Select(x => new PhieuBanHangViewModel() { tenKhachHang = x.KhachHang, tongTien = x.TongTien, soPhieuBanHang = x.SoPhieuBanHang, ngayBan = x.NgayBan, tenNhanVien = x.TenNhanVien, trangThai = x.TrangThai, ghiChu = x.ChuThich, soDienThoai = x.SoDienThoai, }).OrderByDescending(x => x.soPhieuBanHang).ToList(); return(allForManager); } }
public IList <BaoCaoBanHangViewModel> ListView(string userName, DateTime dateFrom, DateTime dateTo) { IQueryable <PhieuBanHang> danhSachPhieuBanHang = _phieuBanHangRepo.GetAll(); List <BaoCaoBanHangViewModel> all = new List <BaoCaoBanHangViewModel>(); List <BaoCaoBanHangViewModel> allForManager = new List <BaoCaoBanHangViewModel>(); if (_nhanVienBus.layMaChucVu(userName) == 4) { all = (from phieuBanHang in danhSachPhieuBanHang join nhanvien in _nhanVienRepo.GetAll() on phieuBanHang.MaNhanVien equals nhanvien.MaNhanVien where (nhanvien.UserName.Equals(userName)) select new { NgayBan = phieuBanHang.NgayBan, SoDonHang = 0, TongTien = phieuBanHang.TongTien }).AsEnumerable().Select(x => new BaoCaoBanHangViewModel() { ngayBan = x.NgayBan, soDonHang = x.SoDonHang, tongTien = x.TongTien }).OrderBy(x => x.ngayBan).ToList(); return(all); } else { if ((!(dateFrom == default(DateTime))) && (!(dateTo == default(DateTime)))) { allForManager = (from phieuBanHang in danhSachPhieuBanHang join nhanVien in _nhanVienRepo.GetAll() on phieuBanHang.MaNhanVien equals nhanVien.MaNhanVien where phieuBanHang.NgayBan >= dateFrom.Date && phieuBanHang.NgayBan <= dateTo.Date group phieuBanHang by phieuBanHang.NgayBan into pgroup select new { NgayBan = pgroup.Key, SoDonHang = pgroup.Count(), TongTien = pgroup.Sum(phieuBanHang => phieuBanHang.TongTien) }).AsEnumerable().Select(x => new BaoCaoBanHangViewModel() { ngayBan = x.NgayBan, soDonHang = x.SoDonHang, tongTien = x.TongTien }).OrderBy(x => x.ngayBan).ToList(); return(allForManager); } } allForManager = (from phieuBanHang in danhSachPhieuBanHang join nhanVien in _nhanVienRepo.GetAll() on phieuBanHang.MaNhanVien equals nhanVien.MaNhanVien where phieuBanHang.NgayBan.Month == DateTime.Now.Month && phieuBanHang.NgayBan.Year == DateTime.Now.Year group phieuBanHang by phieuBanHang.NgayBan into pgroup select new { NgayBan = pgroup.Key, SoDonHang = pgroup.Count(), TongTien = pgroup.Sum(phieuBanHang => phieuBanHang.TongTien) }).AsEnumerable().Select(x => new BaoCaoBanHangViewModel() { ngayBan = x.NgayBan, soDonHang = x.SoDonHang, tongTien = x.TongTien }).OrderBy(x => x.ngayBan).ToList(); return(allForManager); }