public virtual List <ThongKeLuotXuatBenItem> GetThongKeLuotXuatBen(int ThangId, int NamId, int[] arrNhanVien, int HanhTrinhId) { //lay tat ca ngay trong thang if (ThangId > 0 && NamId > 0) { var arritem = _historyxexuatbenRepository.Table .Where(c => (c.TrangThaiId == (int)ENTrangThaiXeXuatBen.DANG_DI || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.CHO_XUAT_BEN || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.KET_THUC) && c.NgayDi.Month == ThangId && c.NgayDi.Year == NamId && (c.LaiPhuXes.Any(n => arrNhanVien.Contains(n.NhanVien_Id))) ); if (HanhTrinhId > 0) { arritem = arritem.Where(c => c.HanhTrinhId == HanhTrinhId); } var query = arritem.ToList().Select(m => { var item = new ThongKeLuotXuatBenItem(); item.NhanVienIds = m.LaiPhuXes.Select(n => n.NhanVien_Id).ToArray(); item.Ngay = m.NgayDi.Day; item.Thang = ThangId; var pvs = GetPhoiVeByChuyenDi(m.Id); item.DoanhThu = pvs.Sum(c => c.GiaVeHienTai); item.Nam = NamId; item.SoLuot = 1; return(item); }).ToList(); return(query); } //lay du lieu trong nam if (NamId > 0) { var arritem = _historyxexuatbenRepository.Table .Where(c => (c.TrangThaiId == (int)ENTrangThaiXeXuatBen.DANG_DI || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.CHO_XUAT_BEN || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.KET_THUC) && c.NgayDi.Year == NamId && (c.LaiPhuXes.Any(n => arrNhanVien.Contains(n.NhanVien_Id))) ); if (HanhTrinhId > 0) { arritem = arritem.Where(c => c.HanhTrinhId == HanhTrinhId); } var query = arritem.ToList().Select(m => { var item = new ThongKeLuotXuatBenItem(); item.NhanVienIds = m.LaiPhuXes.Select(n => n.NhanVien_Id).ToArray(); item.Ngay = 0; item.Thang = m.NgayDi.Month; var pvs = GetPhoiVeByChuyenDi(m.Id); item.DoanhThu = pvs.Sum(c => c.GiaVeHienTai); item.Nam = NamId; item.SoLuot = 1; return(item); }).ToList(); return(query); } //lay du lieu trong vong 5 nam int _nam = DateTime.Now.Year; var arritem1 = _historyxexuatbenRepository.Table .Where(c => (c.TrangThaiId == (int)ENTrangThaiXeXuatBen.DANG_DI || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.CHO_XUAT_BEN || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.KET_THUC) && c.NgayDi.Year <= _nam && (c.LaiPhuXes.Any(n => arrNhanVien.Contains(n.NhanVien_Id))) ); if (HanhTrinhId > 0) { arritem1 = arritem1.Where(c => c.HanhTrinhId == HanhTrinhId); } var query1 = arritem1.ToList().Select(m => { var item = new ThongKeLuotXuatBenItem(); item.NhanVienIds = m.LaiPhuXes.Select(n => n.NhanVien_Id).ToArray(); item.Ngay = 0; item.Thang = 0; item.Nam = m.NgayDi.Year; var pvs = GetPhoiVeByChuyenDi(m.Id); item.DoanhThu = pvs.Sum(c => c.GiaVeHienTai); item.SoLuot = 1; return(item); }).ToList(); return(query1); }
public virtual List <ThongKeLuotXuatBenItem> GetThongKeLuotXuatBen(int ThangId, int NamId, int[] arrNhanVien) { //lay tat ca ngay trong thang if (ThangId > 0 && NamId > 0) { var query = _chuyendiRepository.Table .Where(c => (c.TrangThaiId == (int)ENTrangThaiXeXuatBen.DANG_DI || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.CHO_XUAT_BEN || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.KET_THUC) && c.NgayDi.Month == ThangId && c.NgayDi.Year == NamId && (arrNhanVien.Contains(c.LaiXeId.Value)) ).ToList().Select(m => { var item = new ThongKeLuotXuatBenItem(); item.LaiXeId = m.LaiXeId.Value; item.Ngay = m.NgayDi.Day; item.Thang = ThangId; item.Nam = NamId; item.SoLuot = 1; return(item); }).ToList(); return(query); } //lay du lieu trong nam if (NamId > 0) { var query = _chuyendiRepository.Table .Where(c => (c.TrangThaiId == (int)ENTrangThaiXeXuatBen.DANG_DI || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.CHO_XUAT_BEN || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.KET_THUC) && c.NgayDi.Year == NamId && (arrNhanVien.Contains(c.LaiXeId.Value)) ).ToList().Select(m => { var item = new ThongKeLuotXuatBenItem(); item.LaiXeId = m.LaiXeId.Value; item.Ngay = 0; item.Thang = m.NgayDi.Month; item.Nam = NamId; item.SoLuot = 1; return(item); }).ToList(); return(query); } //lay du lieu trong vong 5 nam int _nam = DateTime.Now.Year; var query1 = _chuyendiRepository.Table .Where(c => (c.TrangThaiId == (int)ENTrangThaiXeXuatBen.DANG_DI || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.CHO_XUAT_BEN || c.TrangThaiId == (int)ENTrangThaiXeXuatBen.KET_THUC) && c.NgayDi.Year <= _nam && (arrNhanVien.Contains(c.LaiXeId.Value)) ).ToList().Select(m => { var item = new ThongKeLuotXuatBenItem(); item.LaiXeId = m.LaiXeId.Value; item.Ngay = 0; item.Thang = 0; item.Nam = m.NgayDi.Year; item.SoLuot = 1; return(item); }).ToList(); return(query1); }