แก้ report ระบบสรรหา

This commit is contained in:
Bright 2024-08-11 13:39:12 +07:00
parent cb7ddb5040
commit 64e6de8e99
4 changed files with 51 additions and 20 deletions

View file

@ -229,14 +229,14 @@ namespace BMA.EHR.Report.Service.Controllers
.OrderBy(x => x.ExamId)
.Select(p => new
{
ExamId = p.ExamId,
ExamId = p.ExamId != null ? p.ExamId.ToThaiNumber() : string.Empty,
FullName = $"{p.Prefix}{p.FirstName} {p.LastName}",
PositionName = p.PositionName,
ExamName =
$"{p.RecruitImport.Name} ครั้งที่ {p.RecruitImport.Order}/{p.RecruitImport.Year.ToThaiYear()}",
$"{p.RecruitImport.Name} ครั้งที่ {p.RecruitImport.Order.ToString().ToThaiNumber()}/{p.RecruitImport.Year.ToThaiYear().ToString().ToThaiNumber()}",
}).ToListAsync();
if (data.Count == 0) return Success();
if (data.Count == 0) return Error("ไม่พบข้อมูลในระบบ");
var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Report", "Recruit", $"rptCandidateList.trdp");
ReportPackager reportPackager = new ReportPackager();
@ -246,7 +246,10 @@ namespace BMA.EHR.Report.Service.Controllers
report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream);
}
report.DataSource = data;
//report.DataSource = data;
report.ReportParameters["ExamName"].Value = data[0].ExamName.ToThaiNumber();
var tbl = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"];
tbl.DataSource = data;
System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable();
InstanceReportSource instanceReportSource = new InstanceReportSource()
@ -254,7 +257,7 @@ namespace BMA.EHR.Report.Service.Controllers
ReportDocument = report
};
ReportProcessor reportProcessor = new ReportProcessor(_configuration);
RenderingResult result = reportProcessor.RenderReport("PDF", instanceReportSource, deviceInfo);
@ -294,7 +297,7 @@ namespace BMA.EHR.Report.Service.Controllers
(p, sr) => new
{
Id = p.RecruitImport.Id,
ExamId = p.ExamId,
ExamId = p.ExamId != null ? p.ExamId.ToThaiNumber() : string.Empty,
CitizenId = p.CitizenId,
p.Prefix,
FullName = $"{p.Prefix}{p.FirstName} {p.LastName}",
@ -307,10 +310,10 @@ namespace BMA.EHR.Report.Service.Controllers
University = p.Educations.First().University,
PositionName = p.PositionName,
ExamName = $"{p.RecruitImport.Name} ครั้งที่ {p.RecruitImport.Order}/{p.RecruitImport.Year.ToThaiYear()}",
ExamName = $"{p.RecruitImport.Name} ครั้งที่ {p.RecruitImport.Order.ToString().ToThaiNumber()}/{p.RecruitImport.Year.ToThaiYear().ToString().ToThaiNumber()}",
Number = sr == null ? 99999 : Convert.ToInt32(sr.Number),
Number = sr == null ? "" : sr.Number,
ExamCount = _recruitService.GetExamCount(p.CitizenId),
ScoreExpire = p.RecruitImport.AnnouncementDate == null ? "" : p.RecruitImport.AnnouncementDate.Value.AddYears(2).ToThaiShortDate(),
@ -321,7 +324,7 @@ namespace BMA.EHR.Report.Service.Controllers
SumB = sr == null ? 0 : sr.SumB,
FullC = sr == null ? 0 : sr.FullC,
SumC = sr == null ? 0 : sr.SumC,
SumScore = sr == null ? 0 : sr.SumA + sr.SumB + sr.SumC,
SumScore = sr == null ? "" : (sr.SumA + sr.SumB + sr.SumC).ToString().ToThaiNumber(),
@ -331,7 +334,16 @@ namespace BMA.EHR.Report.Service.Controllers
.Where(x => x.ExamResult == "ผ่าน")
.ToListAsync();
if (data.Count == 0) return Success();
if (data.Count == 0) return Error("ไม่พบข้อมูลในระบบ");
var data_ = data.Select(x => new
{
x.ExamName,
Number = x.Number.ToString().ToThaiNumber(),
x.ExamId,
x.FullName,
x.SumScore
}).ToList();
var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Report", "Recruit", $"rptPassExamList.trdp");
ReportPackager reportPackager = new ReportPackager();
@ -341,7 +353,10 @@ namespace BMA.EHR.Report.Service.Controllers
report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream);
}
report.DataSource = data;
//report.DataSource = data;
report.ReportParameters["ExamName"].Value = data_[0].ExamName.ToThaiNumber();
var tbl = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"];
tbl.DataSource = data_;
System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable();
InstanceReportSource instanceReportSource = new InstanceReportSource()