Esempio n. 1
0
        public IList <BaoCaoPhieuChiViewModel> ListView(string nhanVienCode, DateTime dateFrom, DateTime dateTo)
        {
            IQueryable <PhieuChi>          danhSachPhieuChi = _phieuChiRepo.GetAll();
            List <BaoCaoPhieuChiViewModel> allForManager    = new List <BaoCaoPhieuChiViewModel>();

            if ((!(dateFrom == default(DateTime))) && (!(dateTo == default(DateTime))))
            {
                allForManager = (from phieuChi in danhSachPhieuChi
                                 //join nhanVien in _nhanVienRepo.GetAll()
                                 //on phieuChi.MaNhanVien equals nhanVien.MaNhanVien
                                 where phieuChi.NgayChi >= dateFrom.Date && phieuChi.NgayChi <= dateTo.Date
                                 select new
                {
                    NgayChi = phieuChi.NgayChi,
                    GhiChu = phieuChi.GhiChu,
                    TongTienChi = phieuChi.TongTienChi
                }).AsEnumerable().Select(x => new BaoCaoPhieuChiViewModel()
                {
                    ngayChi     = x.NgayChi,
                    ghiChu      = x.GhiChu,
                    tongTienChi = x.TongTienChi
                }).OrderBy(x => x.ngayChi).ToList();
                return(allForManager);
            }
            else
            {
                allForManager = (from phieuChi in danhSachPhieuChi
                                 //join nhanVien in _nhanVienRepo.GetAll()
                                 //on phieuChi.MaNhanVien equals nhanVien.MaNhanVien
                                 where phieuChi.NgayChi.Month == DateTime.Now.Month && phieuChi.NgayChi.Year == DateTime.Now.Year
                                 select new
                {
                    NgayChi = phieuChi.NgayChi,
                    GhiChu = phieuChi.GhiChu,
                    TongTienChi = phieuChi.TongTienChi
                }).AsEnumerable().Select(x => new BaoCaoPhieuChiViewModel()
                {
                    ngayChi     = x.NgayChi,
                    ghiChu      = x.GhiChu,
                    tongTienChi = x.TongTienChi
                }).OrderBy(x => x.ngayChi).ToList();
                return(allForManager);
            }
        }
        public IList <PhieuChiViewModel> SearchDanhSachPhieuChi(String key, string trangthai, DateTime tungay, DateTime denngay, string MaNhanVien)
        {
            IQueryable <PhieuChi>    danhSachPhieuChi = _phieuChiRepo.GetAll();
            List <PhieuChiViewModel> all           = new List <PhieuChiViewModel>();
            List <PhieuChiViewModel> allForManager = new List <PhieuChiViewModel>();

            //Nếu là thủ kho
            if (_nhanVienBus.layMaChucVu(MaNhanVien) == 7)
            {
                if ((!(tungay == default(DateTime))) && (!(denngay == default(DateTime))))
                {
                    all = (from phieuchi in danhSachPhieuChi
                           join nhanvien in _nhanVienRepo.GetAll()
                           on phieuchi.MaNhanVien equals nhanvien.MaNhanVien
                           where (phieuchi.NgayChi >= tungay.Date && phieuchi.NgayChi <= denngay.Date && nhanvien.MaNhanVien.Equals(MaNhanVien))
                           select new
                    {
                        SoPhieuchi = phieuchi.SoPhieuChi,
                        NgayChi = phieuchi.NgayChi,
                        TenNhanVien = nhanvien.TenNhanvien,
                        TongTienChi = phieuchi.TongTienChi,
                        GhiChu = phieuchi.GhiChu,
                        TrangThai = phieuchi.TrangThai,
                    }).AsEnumerable().Select(x => new PhieuChiViewModel()
                    {
                        soPhieuChi  = x.SoPhieuchi,
                        ngayChi     = x.NgayChi,
                        tenNhanVien = x.TenNhanVien,
                        tongTienChi = x.TongTienChi,
                        ghiChu      = x.GhiChu,
                        trangThai   = x.TrangThai,
                    }).OrderByDescending(x => x.soPhieuChi).ToList();
                    return(all);
                }
                if (!string.IsNullOrEmpty(key))
                {
                    all = (from phieuchi in danhSachPhieuChi
                           join nhanvien in _nhanVienRepo.GetAll()
                           on phieuchi.MaNhanVien equals nhanvien.MaNhanVien
                           where (nhanvien.UserName.Equals(MaNhanVien) && (
                                      phieuchi.SoPhieuChi.ToString().Contains(key) ||
                                      phieuchi.TrangThai.ToString().Equals(trangthai)) && nhanvien.MaNhanVien.Equals(MaNhanVien))
                           select new
                    {
                        SoPhieuchi = phieuchi.SoPhieuChi,
                        NgayChi = phieuchi.NgayChi,
                        TenNhanVien = nhanvien.TenNhanvien,
                        TongTienChi = phieuchi.TongTienChi,
                        GhiChu = phieuchi.GhiChu,
                        TrangThai = phieuchi.TrangThai,
                    }).AsEnumerable().Select(x => new PhieuChiViewModel()
                    {
                        soPhieuChi  = x.SoPhieuchi,
                        ngayChi     = x.NgayChi,
                        tenNhanVien = x.TenNhanVien,
                        tongTienChi = x.TongTienChi,
                        ghiChu      = x.GhiChu,
                        trangThai   = x.TrangThai,
                    }).OrderByDescending(x => x.soPhieuChi).ToList();
                    return(all);
                }
                if (!string.IsNullOrEmpty(trangthai))
                {
                    all = (from phieuchi in danhSachPhieuChi
                           join nhanvien in _nhanVienRepo.GetAll()
                           on phieuchi.MaNhanVien equals nhanvien.MaNhanVien
                           where (nhanvien.UserName.Equals(MaNhanVien) && phieuchi.TrangThai.ToString().Equals(trangthai))
                           select new
                    {
                        SoPhieuchi = phieuchi.SoPhieuChi,
                        NgayChi = phieuchi.NgayChi,
                        TenNhanVien = nhanvien.TenNhanvien,
                        TongTienChi = phieuchi.TongTienChi,
                        GhiChu = phieuchi.GhiChu,
                        TrangThai = phieuchi.TrangThai,
                    }).AsEnumerable().Select(x => new PhieuChiViewModel()
                    {
                        soPhieuChi  = x.SoPhieuchi,
                        ngayChi     = x.NgayChi,
                        tenNhanVien = x.TenNhanVien,
                        tongTienChi = x.TongTienChi,
                        ghiChu      = x.GhiChu,
                        trangThai   = x.TrangThai,
                    }).OrderByDescending(x => x.soPhieuChi).ToList();
                    return(all);
                }

                all = (from phieuchi in danhSachPhieuChi
                       join nhanvien in _nhanVienRepo.GetAll()
                       on phieuchi.MaNhanVien equals nhanvien.MaNhanVien
                       where (nhanvien.UserName.Equals(MaNhanVien) && phieuchi.TrangThai.Equals(true))
                       select new
                {
                    SoPhieuchi = phieuchi.SoPhieuChi,
                    NgayChi = phieuchi.NgayChi,
                    TenNhanVien = nhanvien.TenNhanvien,
                    TongTienChi = phieuchi.TongTienChi,
                    GhiChu = phieuchi.GhiChu,
                    TrangThai = phieuchi.TrangThai,
                }).AsEnumerable().Select(x => new PhieuChiViewModel()
                {
                    soPhieuChi  = x.SoPhieuchi,
                    ngayChi     = x.NgayChi,
                    tenNhanVien = x.TenNhanVien,
                    tongTienChi = x.TongTienChi,
                    ghiChu      = x.GhiChu,
                    trangThai   = x.TrangThai,
                }).OrderByDescending(x => x.soPhieuChi).ToList();
                return(all);
            }
            else
            {
                if ((!(tungay == default(DateTime))) && (!(denngay == default(DateTime))))
                {
                    allForManager = (from phieuchi in danhSachPhieuChi
                                     join nhanvien in _nhanVienRepo.GetAll()
                                     on phieuchi.MaNhanVien equals nhanvien.MaNhanVien
                                     where (phieuchi.NgayChi >= tungay.Date && phieuchi.NgayChi <= denngay.Date)
                                     select new
                    {
                        SoPhieuchi = phieuchi.SoPhieuChi,
                        NgayChi = phieuchi.NgayChi,
                        TenNhanVien = nhanvien.TenNhanvien,
                        TongTienChi = phieuchi.TongTienChi,
                        GhiChu = phieuchi.GhiChu,
                        TrangThai = phieuchi.TrangThai,
                    }).AsEnumerable().Select(x => new PhieuChiViewModel()
                    {
                        soPhieuChi  = x.SoPhieuchi,
                        ngayChi     = x.NgayChi,
                        tenNhanVien = x.TenNhanVien,
                        tongTienChi = x.TongTienChi,
                        ghiChu      = x.GhiChu,
                        trangThai   = x.TrangThai,
                    }).OrderByDescending(x => x.soPhieuChi).ToList();
                    return(allForManager);
                }
                if (!string.IsNullOrEmpty(key))
                {
                    allForManager = (from phieuchi in danhSachPhieuChi
                                     join nhanvien in _nhanVienRepo.GetAll()
                                     on phieuchi.MaNhanVien equals nhanvien.MaNhanVien
                                     where (phieuchi.SoPhieuChi.ToString().Contains(key))
                                     select new
                    {
                        SoPhieuchi = phieuchi.SoPhieuChi,
                        NgayChi = phieuchi.NgayChi,
                        TenNhanVien = nhanvien.TenNhanvien,
                        TongTienChi = phieuchi.TongTienChi,
                        GhiChu = phieuchi.GhiChu,
                        TrangThai = phieuchi.TrangThai,
                    }).AsEnumerable().Select(x => new PhieuChiViewModel()
                    {
                        soPhieuChi  = x.SoPhieuchi,
                        ngayChi     = x.NgayChi,
                        tenNhanVien = x.TenNhanVien,
                        tongTienChi = x.TongTienChi,
                        ghiChu      = x.GhiChu,
                        trangThai   = x.TrangThai,
                    }).OrderByDescending(x => x.soPhieuChi).ToList();
                    return(allForManager);
                }
                if (!string.IsNullOrEmpty(trangthai))
                {
                    allForManager = (from phieuchi in danhSachPhieuChi
                                     join nhanvien in _nhanVienRepo.GetAll()
                                     on phieuchi.MaNhanVien equals nhanvien.MaNhanVien
                                     where phieuchi.TrangThai.ToString().Equals(trangthai)
                                     select new
                    {
                        SoPhieuchi = phieuchi.SoPhieuChi,
                        NgayChi = phieuchi.NgayChi,
                        TenNhanVien = nhanvien.TenNhanvien,
                        TongTienChi = phieuchi.TongTienChi,
                        GhiChu = phieuchi.GhiChu,
                        TrangThai = phieuchi.TrangThai,
                    }).AsEnumerable().Select(x => new PhieuChiViewModel()
                    {
                        soPhieuChi  = x.SoPhieuchi,
                        ngayChi     = x.NgayChi,
                        tenNhanVien = x.TenNhanVien,
                        tongTienChi = x.TongTienChi,
                        ghiChu      = x.GhiChu,
                        trangThai   = x.TrangThai,
                    }).OrderByDescending(x => x.soPhieuChi).ToList();
                    return(allForManager);
                }

                allForManager = (from phieuchi in danhSachPhieuChi
                                 join nhanvien in _nhanVienRepo.GetAll()
                                 on phieuchi.MaNhanVien equals nhanvien.MaNhanVien
                                 where phieuchi.TrangThai.Equals(true)
                                 select new
                {
                    SoPhieuchi = phieuchi.SoPhieuChi,
                    NgayChi = phieuchi.NgayChi,
                    TenNhanVien = nhanvien.TenNhanvien,
                    TongTienChi = phieuchi.TongTienChi,
                    GhiChu = phieuchi.GhiChu,
                    TrangThai = phieuchi.TrangThai,
                }).AsEnumerable().Select(x => new PhieuChiViewModel()
                {
                    soPhieuChi  = x.SoPhieuchi,
                    ngayChi     = x.NgayChi,
                    tenNhanVien = x.TenNhanVien,
                    tongTienChi = x.TongTienChi,
                    ghiChu      = x.GhiChu,
                    trangThai   = x.TrangThai,
                }).OrderByDescending(x => x.soPhieuChi).ToList();
                return(allForManager);
            }
        }