コード例 #1
0
 public static DataTable LayDanhSachLopDangKy(string MaHS)
 {
     List<LopDangKy> dslopDK = LopDangKyRepo.LayDanhSachLopDangKy();
     List<HoaDon> dsHD = dsHDRepo.GetAllCurrent();
     List<HocSinh> dsHS = hsRepo.GetAlls();
     List<DangKyHoc> dsDK = dkhocRepo.GetAllsCurrent();
     var dsLDKMaHSDaThamGiaTrongThang = from ldk in dslopDK
                                        join dk in dsDK on ldk.MaLopDangKy equals dk.LopDangKy
                                        join hd in dsHD on dk.HoaDon equals hd.MaHD
                                        join hs in dsHS on hd.HocSinh equals hs.MaHS
                                        where (hs.MaHS == MaHS && (dk.NgayDangKy.Month == DateTime.Now.Month && dk.NgayDangKy.Year == DateTime.Now.Year))
                                        select new
                                        {
                                            ldk.CLB,
                                            ldk.TenLopDangKy,
                                            ldk.LichHoc,
                                            ldk.MaLopDangKy
                                        };
     var dsLDKHSChuaDangKy = from ldk in dslopDK
                             where !(from ldk1 in dsLDKMaHSDaThamGiaTrongThang.ToList()
                                     select ldk1.MaLopDangKy).Contains(ldk.MaLopDangKy)
                             select ldk;
     var dsComplete = from ldk in dsLDKHSChuaDangKy.ToList()
                      where !dsLDKMaHSDaThamGiaTrongThang.ToList().Any(x => x.LichHoc == ldk.LichHoc) &&
                      !(dsLDKMaHSDaThamGiaTrongThang.ToList().Any(x => x.CLB == ldk.CLB) && dsLDKMaHSDaThamGiaTrongThang.Any(x => x.TenLopDangKy == ldk.TenLopDangKy))
                      select new
                      {
                          ldk.MaLopDangKy,
                          ldk.TenLopDangKy,
                          ldk.CLB1.TenCLB,
                          ldk.CLB,
                          ldk.NamHoc,
                          ldk.HocPhi,
                          ldk.LichHoc
                      };
     return GenericServices.ToDataTable(dsComplete.ToList());
 }
コード例 #2
0
        public static DataTable LayDanhSachHoaDonTheoNamvaThang(int Nam, int Thang)
        {
            List <DangKyHoc> DsDkHoc  = DkHocRepo.GetAlls();
            List <HoaDon>    DsHoaDon = HDrepo.GetAlls();
            List <HocSinh>   dsHS     = HsRepo.GetAlls();
            List <LopDangKy> dsLDK    = LDKRepo.LayDanhSachLopDangKy();
            var IdHoaDonvaCount       = from hs in dsHS
                                        join hd in DsHoaDon on hs.MaHS equals hd.HocSinh
                                        join dk in DsDkHoc on hd.MaHD equals dk.HoaDon
                                        join ldk in dsLDK on dk.LopDangKy equals ldk.MaLopDangKy
                                        where (dk.NgayDangKy.Month == Thang && dk.NgayDangKy.Year == Nam)
                                        select new
            {
                hd.MaHD,
                hs.MaHS,
                hs.TenHS,
                hs.NgaySinh,
                hs.NgayNhapHoc,
                hs.LopHanhChinh.TenLopHC,
                ldk.HocPhi,
                hd.TinhTrang
            } into x
            group x by new { x.MaHS } into g
                    select new
            {
                MaHocSinh        = g.Key.MaHS,
                MaHoaDon         = g.First().MaHD,
                TenHocSinh       = g.First().TenHS,
                NgaySinhCuaHS    = g.First().NgaySinh,
                NgayNhapHocCuaHS = g.First().NgayNhapHoc,
                TenLopHanhChinh  = g.First().TenLopHC,
                TinhTrangHocPhi  = g.First().TinhTrang,
                SoluongLopDangKy = g.Count(),
                TongHocPhi       = g.Sum(m => m.HocPhi)
            };

            return(GenericServices.ToDataTable(IdHoaDonvaCount.ToList()));
        }
コード例 #3
0
ファイル: CLBServices.cs プロジェクト: namnntt/TruongMamNonBK
        public static DataTable DanhSachCLBvaSoHocSinh(int Nam, int Thang)
        {
            List <DangKyHoc> dsDKHoc = dkHocRepo.GetAlls();
            List <LopDangKy> dsLopDK = LopDangKyRepo.LayDanhSachLopDangKy();
            List <CLB>       dsCLB   = CLBRepo.GetAlls();
            var MaCLBvaCount         = from dk in dsDKHoc
                                       join ldk in dsLopDK on dk.LopDangKy equals ldk.MaLopDangKy
                                       join clb in dsCLB on ldk.CLB equals clb.MaCLB
                                       group clb by new
            {
                ID    = clb.MaCLB + " - " + clb.TenCLB,
                Thang = dk.NgayDangKy.Month,
                Nam   = dk.NgayDangKy.Year
            }
            into g
            where (g.Key.Thang == Thang && g.Key.Nam == Nam)
            select new
            {
                ID    = g.Key.ID,
                Count = g.Count()
            };

            return(GenericServices.ToDataTable(MaCLBvaCount.ToList()));
        }