public static ReportBorangAModel GetReport(int bulanProses, int tahunProses, string jenisLaporan) { ReportBorangAModel reportData = new ReportBorangAModel(); switch (jenisLaporan) { case ("1"): //borangASambilan reportData.PekerjaSambilan = PekerjaReportModel.BorangASambilanSukan (bulanProses, tahunProses, false); break; case ("2"): //borangATunggakanSambilan reportData.PekerjaSambilan = PekerjaReportModel .BorangASambilanSukan (bulanProses, tahunProses, false); break; case ("3"): //borangASukan reportData.PekerjaSambilan = PekerjaReportModel .BorangASambilanSukan (bulanProses, tahunProses, true); break; case ("4"): //borangATunggakanSukan reportData.PekerjaSambilan = PekerjaReportModel.BorangASambilanSukan (bulanProses, tahunProses, true); break; } return(reportData); }
public static List <PekerjaReportModel> GetPerkesoSambilanSukan (int bulanProses, int tahunProses, bool isSukan) { SPGContext spgDb = new SPGContext(); ApplicationDbContext db = new ApplicationDbContext(); //N = sambilan, A = sukan List <string> list_pekerja = new List <string>(); if (isSukan) { list_pekerja = PageSejarahModel.ListPekerjaSukan; } else { list_pekerja = PageSejarahModel.ListPekerjaSambilan; } var listGaji = db.HR_TRANSAKSI_SAMBILAN_DETAIL .Where(s => s.HR_BULAN_DIBAYAR == bulanProses && s.HR_TAHUN == tahunProses && s.HR_KOD_IND == "G" && list_pekerja.Contains(s.HR_NO_PEKERJA)).ToList(); List <PekerjaReportModel> pekerja = new List <PekerjaReportModel>(); int counter = 0; foreach (var item in listGaji) { var bulanBekerja = item.HR_BULAN_BEKERJA; var tahunBekerja = item.HR_TAHUN_BEKERJA; var bulanDibayar = item.HR_BULAN_DIBAYAR; var tahunDibayar = item.HR_TAHUN; HR_MAKLUMAT_PERIBADI maklumatPeribat = db.HR_MAKLUMAT_PERIBADI .Where(s => s.HR_NO_PEKERJA == item.HR_NO_PEKERJA) .FirstOrDefault(); var detail = PageSejarahModel.GetTRANSAKSI_SAMBILAN_DETAIL (db, item.HR_NO_PEKERJA, tahunDibayar, bulanDibayar, tahunBekerja, bulanBekerja); var sosco = PageSejarahModel.GetPotonganSocso(db, detail); if (maklumatPeribat != null) { PekerjaReportModel m = new PekerjaReportModel(); counter++; m.Bil = counter; m.NamaPekerja = maklumatPeribat.HR_NAMA_PEKERJA; m.NoKesSosial = string.Empty; m.NoKadPengenalan = maklumatPeribat.HR_NO_KPBARU; try { decimal totalVal = Convert.ToDecimal (sosco.HR_CARUMAN_PEKERJA); totalVal = decimal.Round(totalVal); m.CarumanRM = totalVal; } catch { m.CarumanRM = 0; } pekerja.Add(m); } } return(pekerja); }
public static List <PekerjaReportModel> GetPerkesoSukan(int bulan, int tahun) { SPGContext spgDb = new SPGContext(); ApplicationDbContext db = new ApplicationDbContext(); string[] kwspSambilan = new string[] { "P0160", "P0163" }; //N = sambilan, A = sukan List <string> list_pekerja = db.HR_MAKLUMAT_PEKERJAAN .Where(s => s.HR_TARAF_JAWATAN == "A").Select(x => x.HR_NO_PEKERJA).ToList(); var potongList = spgDb.PA_TRANSAKSI_PEMOTONGAN .Where(s => s.PA_BULAN_POTONGAN == bulan && s.PA_TAHUN_POTONGAN == tahun && kwspSambilan.Contains(s.PA_KOD_PEMOTONGAN) && list_pekerja.Contains(s.PA_NO_PEKERJA)) .GroupBy(s => new { s.PA_NO_PEKERJA, s.PA_BULAN_POTONGAN, s.PA_TAHUN_POTONGAN }) .Select(g => new { PA_No_Pekerja = g.Key.PA_NO_PEKERJA, PA_Jumlah_Pemontongan = g.Sum(x => x.PA_JUMLAH_PEMOTONGAN), PA_Bulan = g.Key.PA_BULAN_POTONGAN, PA_Tahun = g.Key.PA_TAHUN_POTONGAN }) .ToList(); List <PekerjaReportModel> pekerja = new List <PekerjaReportModel>(); int counter = 0; foreach (var item in potongList) { HR_MAKLUMAT_PERIBADI maklumatPeribat = db.HR_MAKLUMAT_PERIBADI .Where(s => s.HR_NO_PEKERJA == item.PA_No_Pekerja).FirstOrDefault(); if (maklumatPeribat != null) { PekerjaReportModel m = new PekerjaReportModel(); counter++; m.Bil = counter; m.NamaPekerja = maklumatPeribat.HR_NAMA_PEKERJA; m.NoKesSosial = string.Empty; m.NoKadPengenalan = maklumatPeribat.HR_NO_KPBARU; try { decimal totalVal = Convert.ToDecimal(item.PA_Jumlah_Pemontongan); //* Convert.ToDecimal(caruman); totalVal = decimal.Round(totalVal); m.CarumanRM = totalVal; } catch { m.CarumanRM = 0; } pekerja.Add(m); } } return(pekerja); }