diff --git a/Controllers/CandidateController.cs b/Controllers/CandidateController.cs
index 812f993..54755f3 100644
--- a/Controllers/CandidateController.cs
+++ b/Controllers/CandidateController.cs
@@ -1460,6 +1460,33 @@ namespace BMA.EHR.Recurit.Exam.Service.Controllers
return Error(ex);
}
}
+
+ ///
+ /// โหลดใบชำระเงิน
+ ///
+ /// รหัสรอบสมัคร
+ /// Id ตำแหน่งสมัครสอบ
+ ///
+ /// เมื่อทำการโหลดใบชำระเงิน สำเร็จ
+ /// ไม่ได้ Login เข้าระบบ
+ /// เมื่อเกิดข้อผิดพลาดในการทำงาน
+ [HttpPut("check/citizen/{examId:length(36)}/{positionId:length(36)}")]
+ [ProducesResponseType(StatusCodes.Status200OK)]
+ [ProducesResponseType(StatusCodes.Status401Unauthorized)]
+ [ProducesResponseType(StatusCodes.Status500InternalServerError)]
+ public async Task> CheckCitizen(string examId, string positionId, RequestCitizen item)
+ {
+ try
+ {
+ await _candidateService.CheckCitizen(examId, positionId, item.CitizenId);
+
+ return Success();
+ }
+ catch (Exception ex)
+ {
+ return Error(ex);
+ }
+ }
#endregion
}
}
diff --git a/Core/GlobalMessages.cs b/Core/GlobalMessages.cs
index 2199735..9f423b9 100644
--- a/Core/GlobalMessages.cs
+++ b/Core/GlobalMessages.cs
@@ -24,5 +24,6 @@
public const string SubDistrictNotFound = "ไม่พบข้อมูลตำบล/แขวง";
public const string CMSNotFound = "ไม่พบข้อมูล CMS";
public const string OrganizationNotFound = "ไม่พบข้อมูลสังกัด";
+ public const string CitizanDupicate = "เลขบัตรประชาชนนี้ได้ทำการสมัครไว้แล้ว";
}
}
diff --git a/Request/RequestCitizen.cs b/Request/RequestCitizen.cs
new file mode 100644
index 0000000..c259330
--- /dev/null
+++ b/Request/RequestCitizen.cs
@@ -0,0 +1,9 @@
+using System.Net;
+
+namespace BMA.EHR.Recurit.Exam.Service.Request
+{
+ public class RequestCitizen
+ {
+ public string CitizenId { get; set; }
+ }
+}
diff --git a/Response/CandidateResponseItem.cs b/Response/CandidateResponseItem.cs
index 9baa441..ebed8c2 100644
--- a/Response/CandidateResponseItem.cs
+++ b/Response/CandidateResponseItem.cs
@@ -86,5 +86,11 @@ namespace BMA.EHR.Recurit.Exam.Service.Response
public DateTime EducationEndDate { get; set; }
public string EducationScores { get; set; } = string.Empty;
public Guid EducationLevelHighId { get; set; }
+
+ public Guid? ContactPrefixId { get; set; }
+ public string? ContactFirstname { get; set; }
+ public string? ContactLastname { get; set; }
+ public string? ContactRelations { get; set; }
+ public string? ContactTel { get; set; }
}
}
diff --git a/Services/CandidateService.cs b/Services/CandidateService.cs
index 55f0a3a..137bb96 100644
--- a/Services/CandidateService.cs
+++ b/Services/CandidateService.cs
@@ -751,6 +751,18 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
candidate.PrefixName = prefix.Name;
}
+ if (updated.ContactPrefixId != null)
+ {
+ var prefix = await _contextMetadata.Prefixes.AsQueryable()
+ .FirstOrDefaultAsync(x => x.Id == updated.ContactPrefixId);
+
+ if (prefix == null)
+ throw new Exception(GlobalMessages.PrefixNotFound);
+
+ candidate.ContactPrefixId = prefix.Id;
+ candidate.ContactPrefixName = prefix.Name;
+ }
+
if (updated.ReligionId != null)
{
var religion = await _contextMetadata.Religions.AsQueryable()
@@ -859,6 +871,11 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
candidate.OccupationPositionType = updated.OccupationPositionType;
candidate.OccupationTelephone = updated.OccupationTelephone;
+ candidate.ContactFirstname = updated.ContactFirstname;
+ candidate.ContactLastname = updated.ContactLastname;
+ candidate.ContactRelations = updated.ContactRelations;
+ candidate.ContactTel = updated.ContactTel;
+
var educationLevelExam = await _contextMetadata.EducationLevels.AsQueryable()
.FirstOrDefaultAsync(x => x.Id == updated.EducationLevelExamId);
@@ -936,6 +953,18 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
candidate.PrefixName = prefix.Name;
}
+ if (updated.ContactPrefixId != null)
+ {
+ var prefix = await _contextMetadata.Prefixes.AsQueryable()
+ .FirstOrDefaultAsync(x => x.Id == updated.ContactPrefixId);
+
+ if (prefix == null)
+ throw new Exception(GlobalMessages.PrefixNotFound);
+
+ candidate.ContactPrefixId = prefix.Id;
+ candidate.ContactPrefixName = prefix.Name;
+ }
+
if (updated.ReligionId != null)
{
var religion = await _contextMetadata.Religions.AsQueryable()
@@ -1044,6 +1073,11 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
candidate.OccupationPositionType = updated.OccupationPositionType;
candidate.OccupationTelephone = updated.OccupationTelephone;
+ candidate.ContactFirstname = updated.ContactFirstname;
+ candidate.ContactLastname = updated.ContactLastname;
+ candidate.ContactRelations = updated.ContactRelations;
+ candidate.ContactTel = updated.ContactTel;
+
var educationLevelExam = await _contextMetadata.EducationLevels.AsQueryable()
.FirstOrDefaultAsync(x => x.Id == updated.EducationLevelExamId);
@@ -1856,7 +1890,10 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
candidate.RegisterDate = DateTime.Now;
var periodExam = await _context.Candidates.AsQueryable()
- .Where(x => x.PeriodExam == candidate.PeriodExam && x.PositionExam == candidate.PositionExam && x.ExamIdenNumber != null)
+ .Where(x => x.PeriodExam == candidate.PeriodExam)
+ .Where(x => x.PositionExam == candidate.PositionExam)
+ .Where(x => x.ExamIdenNumber != null)
+ .Where(x => x.Status == "checkRegister")
.OrderByDescending(d => d.CreatedAt)
.ToListAsync();
@@ -2263,6 +2300,38 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
await _context.SaveChangesAsync();
}
+ public async Task CheckCitizen(string examId, string positionId, string citizenId)
+ {
+ var exam = await _context.PeriodExams.AsQueryable()
+ .Where(p => p.CheckDisability == false)
+ .FirstOrDefaultAsync(x => x.Id == Guid.Parse(examId));
+
+ if (exam == null)
+ throw new Exception(GlobalMessages.ExamNotFound);
+
+ if (positionId != "00000000-0000-0000-0000-000000000000")
+ {
+ var position = await _context.PositionExams.AsQueryable()
+ .FirstOrDefaultAsync(x => x.Id == Guid.Parse(positionId) && x.PeriodExam == exam);
+
+ if (position == null)
+ throw new Exception(GlobalMessages.PositionExamNotFound);
+
+ var candidate1 = await _context.Candidates.AsQueryable()
+ .Where(x => x.PeriodExam == exam && x.UserId != UserId && x.PositionExam == position && x.CitizenId == citizenId)
+ .FirstOrDefaultAsync();
+ if (candidate1 != null)
+ throw new Exception(GlobalMessages.CitizanDupicate);
+ return;
+ }
+
+ var candidate2 = await _context.Candidates.AsQueryable()
+ .Where(x => x.PeriodExam == exam && x.UserId != UserId && x.CitizenId == citizenId)
+ .FirstOrDefaultAsync();
+ if (candidate2 != null)
+ throw new Exception(GlobalMessages.CitizanDupicate);
+ }
+
#endregion
}
}
diff --git a/Services/PeriodExamService.cs b/Services/PeriodExamService.cs
index b517ae7..f4fb3a5 100644
--- a/Services/PeriodExamService.cs
+++ b/Services/PeriodExamService.cs
@@ -1121,6 +1121,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
{
candidates = await _context.Candidates
.AsQueryable()
+ .Include(x => x.PositionExam)
.OrderBy(x => x.ExamIdenNumber)
.Where(x => x.PeriodExam == periodExam)
.Where(x => x.Status != "waiver")
@@ -1131,6 +1132,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
{
candidates = await _context.Candidates
.AsQueryable()
+ .Include(x => x.PositionExam)
.OrderBy(x => x.ExamIdenNumber)
.Where(x => x.PeriodExam == periodExam)
.Where(x => x.Status != "register")
@@ -1144,70 +1146,76 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
summarySheet.TabColor = System.Drawing.Color.Black;
// summarySheet.DefaultRowHeight = 17;
summarySheet.Row(1).Style.Font.Bold = true;
- summarySheet.Cells[1, 1, 1, 5].Value = "ข้อมูลผู้สมัครสอบ";
- summarySheet.Cells[1, 1, 1, 5].Merge = true;
+ summarySheet.Cells[1, 1, 1, 8].Value = "ข้อมูลผู้สมัครสอบ";
+ summarySheet.Cells[1, 1, 1, 8].Merge = true;
summarySheet.Cells[2, 1, 3, 1].Value = "ลำดับที่สอบได้";
summarySheet.Cells[2, 1, 3, 1].Merge = true;
summarySheet.Cells[2, 2, 3, 2].Value = "เลขประจำตัวสอบ";
summarySheet.Cells[2, 2, 3, 2].Merge = true;
summarySheet.Cells[2, 3, 3, 3].Value = "เลขบัตรประชาชน";
summarySheet.Cells[2, 3, 3, 3].Merge = true;
- summarySheet.Cells[2, 4, 3, 4].Value = "เลขนั่งสอบ";
+ summarySheet.Cells[2, 4, 3, 4].Value = "สนามสอบ";
summarySheet.Cells[2, 4, 3, 4].Merge = true;
- summarySheet.Cells[2, 5, 3, 5].Value = "ชื่อ-ชื่อสกุล";
+ summarySheet.Cells[2, 5, 3, 5].Value = "คำนำหน้า";
summarySheet.Cells[2, 5, 3, 5].Merge = true;
+ summarySheet.Cells[2, 6, 3, 6].Value = "ชื่อ-ชื่อสกุล";
+ summarySheet.Cells[2, 6, 3, 6].Merge = true;
+ summarySheet.Cells[2, 7, 3, 7].Value = "ตำแหน่ง";
+ summarySheet.Cells[2, 7, 3, 7].Merge = true;
+ summarySheet.Cells[2, 8, 3, 8].Value = "ระดับ";
+ summarySheet.Cells[2, 8, 3, 8].Merge = true;
- summarySheet.Cells[1, 6, 1, 11].Value = "ความรู้ความสามารถทั่วไป (ภาค ก.)";
- summarySheet.Cells[1, 6, 1, 11].Merge = true;
- summarySheet.Cells[2, 6].Value = "ความสามารถในการคิดวิเคราะห์";
- summarySheet.Cells[3, 6].Value = "100 คะแนน";
- summarySheet.Cells[2, 7].Value = "ภาษาอังกฤษ";
- summarySheet.Cells[3, 7].Value = "50 คะแนน";
- summarySheet.Cells[2, 8].Value = "ความรู้และลักษณะการเป็นข้าราชการที่ดี";
- summarySheet.Cells[3, 8].Value = "50 คะแนน";
+ summarySheet.Cells[1, 9, 1, 14].Value = "ความรู้ความสามารถทั่วไป (ภาค ก.)";
+ summarySheet.Cells[1, 9, 1, 14].Merge = true;
+ summarySheet.Cells[2, 9].Value = "ความสามารถในการคิดวิเคราะห์";
+ summarySheet.Cells[3, 9].Value = "100 คะแนน";
+ summarySheet.Cells[2, 10].Value = "ภาษาอังกฤษ";
+ summarySheet.Cells[3, 10].Value = "50 คะแนน";
+ summarySheet.Cells[2, 11].Value = "ความรู้และลักษณะการเป็นข้าราชการที่ดี";
+ summarySheet.Cells[3, 11].Value = "50 คะแนน";
// summarySheet.Cells[2, 9].Value = "คะแนนเต็มภาค ก";
// summarySheet.Cells[3, 9].Value = "100 คะแนน";
- summarySheet.Cells[2, 9].Value = "คะแนนรวม";
- summarySheet.Cells[3, 9].Value = "200 คะแนน";
- summarySheet.Cells[2, 10, 3, 10].Value = "ร้อยละ";
- summarySheet.Cells[2, 10, 3, 10].Merge = true;
- summarySheet.Cells[2, 11, 3, 11].Value = "ผลประเมิน ภาค ก";
- summarySheet.Cells[2, 11, 3, 11].Merge = true;
-
- summarySheet.Cells[1, 12, 1, 14].Value = "ภาคความรู้ความสามารถที่ใช้เฉพาะตำแหน่ง(ภาค ข)";
- summarySheet.Cells[1, 12, 1, 14].Merge = true;
- // summarySheet.Cells[1, 13].Value = "คะแนนเต็มภาค ข";
summarySheet.Cells[2, 12].Value = "คะแนนรวม";
summarySheet.Cells[3, 12].Value = "200 คะแนน";
summarySheet.Cells[2, 13, 3, 13].Value = "ร้อยละ";
summarySheet.Cells[2, 13, 3, 13].Merge = true;
- summarySheet.Cells[2, 14, 3, 14].Value = "ผลประเมิน ภาค ข";
+ summarySheet.Cells[2, 14, 3, 14].Value = "ผลประเมิน ภาค ก";
summarySheet.Cells[2, 14, 3, 14].Merge = true;
- summarySheet.Cells[1, 15, 1, 19].Value = "ภาคความเหมาะสมกับตำแหน่ง (ภาค ค)";
- summarySheet.Cells[1, 15, 1, 19].Merge = true;
- summarySheet.Cells[2, 15].Value = "ทดสอบสมรรถนะหลัก";
- summarySheet.Cells[3, 15].Value = "50 คะแนน";
- summarySheet.Cells[2, 16].Value = "สัมภาษณ์";
- summarySheet.Cells[3, 16].Value = "50 คะแนน";
- // summarySheet.Cells[1, 19].Value = "คะแนนเต็มภาค ค";
- summarySheet.Cells[2, 17].Value = "คะแนนรวม";
- summarySheet.Cells[3, 17].Value = "100 คะแนน";
- summarySheet.Cells[2, 18, 3, 18].Value = "ร้อยละ";
- summarySheet.Cells[2, 18, 3, 18].Merge = true;
- summarySheet.Cells[2, 19, 3, 19].Value = "ผลประเมิน ภาค ค";
- summarySheet.Cells[2, 19, 3, 19].Merge = true;
+ summarySheet.Cells[1, 15, 1, 17].Value = "ภาคความรู้ความสามารถที่ใช้เฉพาะตำแหน่ง(ภาค ข)";
+ summarySheet.Cells[1, 15, 1, 17].Merge = true;
+ // summarySheet.Cells[1, 15].Value = "คะแนนเต็มภาค ข";
+ summarySheet.Cells[2, 15].Value = "คะแนนรวม";
+ summarySheet.Cells[3, 15].Value = "200 คะแนน";
+ summarySheet.Cells[2, 16, 3, 16].Value = "ร้อยละ";
+ summarySheet.Cells[2, 16, 3, 16].Merge = true;
+ summarySheet.Cells[2, 17, 3, 17].Value = "ผลประเมิน ภาค ข";
+ summarySheet.Cells[2, 17, 3, 17].Merge = true;
- summarySheet.Cells[1, 20, 3, 20].Value = "ได้ / ตก";
- summarySheet.Cells[1, 20, 3, 20].Merge = true;
- summarySheet.Cells[1, 21, 3, 21].Value = "ชำระค่าธรรมเนียม";
- summarySheet.Cells[1, 21, 3, 21].Merge = true;
- summarySheet.Cells[1, 22, 3, 22].Value = "วันเวลาชำระ";
- summarySheet.Cells[1, 22, 3, 22].Merge = true;
- summarySheet.Cells[1, 23, 3, 23].Value = "วันและเวลาที่สมัคร";
+ summarySheet.Cells[1, 18, 1, 22].Value = "ภาคความเหมาะสมกับตำแหน่ง (ภาค ค)";
+ summarySheet.Cells[1, 18, 1, 22].Merge = true;
+ summarySheet.Cells[2, 18].Value = "ทดสอบสมรรถนะหลัก";
+ summarySheet.Cells[3, 18].Value = "50 คะแนน";
+ summarySheet.Cells[2, 19].Value = "สัมภาษณ์";
+ summarySheet.Cells[3, 19].Value = "50 คะแนน";
+ // summarySheet.Cells[1, 19].Value = "คะแนนเต็มภาค ค";
+ summarySheet.Cells[2, 20].Value = "คะแนนรวม";
+ summarySheet.Cells[3, 20].Value = "100 คะแนน";
+ summarySheet.Cells[2, 21, 3, 21].Value = "ร้อยละ";
+ summarySheet.Cells[2, 21, 3, 21].Merge = true;
+ summarySheet.Cells[2, 22, 3, 22].Value = "ผลประเมิน ภาค ค";
+ summarySheet.Cells[2, 22, 3, 22].Merge = true;
+
+ summarySheet.Cells[1, 23, 3, 23].Value = "ได้ / ตก";
summarySheet.Cells[1, 23, 3, 23].Merge = true;
- summarySheet.Cells[1, 24, 3, 24].Value = "หมายเหตุ";
+ summarySheet.Cells[1, 24, 3, 24].Value = "ชำระค่าธรรมเนียม";
summarySheet.Cells[1, 24, 3, 24].Merge = true;
+ summarySheet.Cells[1, 25, 3, 25].Value = "วันเวลาชำระ";
+ summarySheet.Cells[1, 25, 3, 25].Merge = true;
+ summarySheet.Cells[1, 26, 3, 26].Value = "วันและเวลาที่สมัคร";
+ summarySheet.Cells[1, 26, 3, 26].Merge = true;
+ summarySheet.Cells[1, 27, 3, 27].Value = "หมายเหตุ";
+ summarySheet.Cells[1, 27, 3, 27].Merge = true;
int row = 4;
foreach (var item in candidates)
@@ -1216,33 +1224,36 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
summarySheet.Cells[row, 2].Value = item.ExamIdenNumber;
summarySheet.Cells[row, 3].Value = item.CitizenId;
summarySheet.Cells[row, 4].Value = item.SeatNumber;
- summarySheet.Cells[row, 5].Value = $"{item.FirstName} {item.LastName}";
+ summarySheet.Cells[row, 5].Value = item.PrefixName;
+ summarySheet.Cells[row, 6].Value = $"{item.FirstName} {item.LastName}";
+ summarySheet.Cells[row, 7].Value = item.PositionExam == null ? "-" : item.PositionExam.PositionName;
+ summarySheet.Cells[row, 8].Value = item.PositionExam == null ? "-" : item.PositionExam.PositionLevelName;
- summarySheet.Cells[row, 6].Value = item.PointPath1A;
- summarySheet.Cells[row, 7].Value = item.PointPath2A;
- summarySheet.Cells[row, 8].Value = item.PointPath3A;
+ summarySheet.Cells[row, 9].Value = item.PointPath1A;
+ summarySheet.Cells[row, 10].Value = item.PointPath2A;
+ summarySheet.Cells[row, 11].Value = item.PointPath3A;
// summarySheet.Cells[row, 9].Value = item.PointTotalA;
- summarySheet.Cells[row, 9].Value = item.PointA;
- summarySheet.Cells[row, 10].Value = item.PointPerA;
- summarySheet.Cells[row, 11].Value = item.ResultA;
+ summarySheet.Cells[row, 12].Value = item.PointA;
+ summarySheet.Cells[row, 13].Value = item.PointPerA;
+ summarySheet.Cells[row, 14].Value = item.ResultA;
- // summarySheet.Cells[row, 13].Value = item.PointTotalB;
- summarySheet.Cells[row, 12].Value = item.PointB;
- summarySheet.Cells[row, 13].Value = item.PointPerB;
- summarySheet.Cells[row, 14].Value = item.ResultB;
+ // summarySheet.Cells[row, 15].Value = item.PointTotalB;
+ summarySheet.Cells[row, 15].Value = item.PointB;
+ summarySheet.Cells[row, 16].Value = item.PointPerB;
+ summarySheet.Cells[row, 17].Value = item.ResultB;
- summarySheet.Cells[row, 15].Value = item.PointPath1C;
- summarySheet.Cells[row, 16].Value = item.PointPath2C;
- // summarySheet.Cells[row, 19].Value = item.PointTotalC;
- summarySheet.Cells[row, 17].Value = item.PointC;
- summarySheet.Cells[row, 18].Value = item.PointPerC;
- summarySheet.Cells[row, 19].Value = item.ResultC;
+ summarySheet.Cells[row, 17].Value = item.PointPath1C;
+ summarySheet.Cells[row, 19].Value = item.PointPath2C;
+ // summarySheet.Cells[row, 20].Value = item.PointTotalC;
+ summarySheet.Cells[row, 20].Value = item.PointC;
+ summarySheet.Cells[row, 21].Value = item.PointPerC;
+ summarySheet.Cells[row, 22].Value = item.ResultC;
- summarySheet.Cells[row, 20].Value = item.Pass;
- summarySheet.Cells[row, 21].Value = item.PaymentDate == null ? "ยังไม่ชำระเงิน" : "ชำระแล้ว";
- summarySheet.Cells[row, 22].Value = item.PaymentDate == null ? "" : item.PaymentDate.Value.ToThaiShortDateTime();
- summarySheet.Cells[row, 23].Value = item.RegisterDate == null ? "" : item.RegisterDate.Value.ToThaiShortDateTime();
- summarySheet.Cells[row, 24].Value = item.ExamReason;
+ summarySheet.Cells[row, 23].Value = item.Pass;
+ summarySheet.Cells[row, 24].Value = item.PaymentDate == null ? "ยังไม่ชำระเงิน" : "ชำระแล้ว";
+ summarySheet.Cells[row, 25].Value = item.PaymentDate == null ? "" : item.PaymentDate.Value.ToThaiShortDateTime();
+ summarySheet.Cells[row, 26].Value = item.RegisterDate == null ? "" : item.RegisterDate.Value.ToThaiShortDateTime();
+ summarySheet.Cells[row, 27].Value = item.ExamReason;
row++;
}
summarySheet.Cells[summarySheet.Dimension.Address].AutoFitColumns();
@@ -1484,75 +1495,75 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
summarySheet.Cells[1, 53].Value = "ผลสอบภาค ค";
summarySheet.Cells[1, 54].Value = "ผลการสอบ";
summarySheet.Cells[1, 55].Value = "วันที่สมัคร";
- summarySheet.Cells[1, 56].Value = "วันเและเวลาที่สมัคร";
+ summarySheet.Cells[1, 56].Value = "วันและเวลาที่สมัคร";
int row = 2;
foreach (var item in candidates)
{
- var educations = await _context.Educations
+ var education = await _context.Educations
.AsQueryable()
.OrderBy(x => x.EducationEndDate)
.Where(x => x.Candidate.Id == item.Id)
- .ToListAsync();
+ .FirstOrDefaultAsync();
- foreach (var education in educations)
- {
- summarySheet.Cells[row, 1].Value = GenerateStatusCandidate(item.Status);
- summarySheet.Cells[row, 2].Value = item.CitizenId;
- summarySheet.Cells[row, 3].Value = item.FullName;
- summarySheet.Cells[row, 4].Value = item.Nationality;
- summarySheet.Cells[row, 5].Value = item.DateOfBirth;
- summarySheet.Cells[row, 6].Value = item.Age;
- summarySheet.Cells[row, 7].Value = item.ReligionName;
- summarySheet.Cells[row, 8].Value = item.Telephone;
- summarySheet.Cells[row, 9].Value = item.MobilePhone;
- summarySheet.Cells[row, 10].Value = item.Email;
- summarySheet.Cells[row, 11].Value = item.Knowledge;
- summarySheet.Cells[row, 12].Value = item.RegistAddress;
- summarySheet.Cells[row, 13].Value = item.RegistProvinceName;
- summarySheet.Cells[row, 14].Value = item.RegistDistrictName;
- summarySheet.Cells[row, 15].Value = item.RegistSubDistrictName;
- summarySheet.Cells[row, 16].Value = item.RegistZipCode;
- summarySheet.Cells[row, 17].Value = item.CurrentAddress;
- summarySheet.Cells[row, 18].Value = item.CurrentProvinceName;
- summarySheet.Cells[row, 19].Value = item.CurrentDistrictName;
- summarySheet.Cells[row, 20].Value = item.CurrentSubDistrictName;
- summarySheet.Cells[row, 21].Value = item.CurrentZipCode;
+ // foreach (var education in educations)
+ // {
+ // summarySheet.Cells[row, 1].Value = GenerateStatusCandidate(item.Status);
+ // summarySheet.Cells[row, 2].Value = item.CitizenId;
+ // summarySheet.Cells[row, 3].Value = item.FullName;
+ // summarySheet.Cells[row, 4].Value = item.Nationality;
+ // summarySheet.Cells[row, 5].Value = item.DateOfBirth;
+ // summarySheet.Cells[row, 6].Value = item.Age;
+ // summarySheet.Cells[row, 7].Value = item.ReligionName;
+ // summarySheet.Cells[row, 8].Value = item.Telephone;
+ // summarySheet.Cells[row, 9].Value = item.MobilePhone;
+ // summarySheet.Cells[row, 10].Value = item.Email;
+ // summarySheet.Cells[row, 11].Value = item.Knowledge;
+ // summarySheet.Cells[row, 12].Value = item.RegistAddress;
+ // summarySheet.Cells[row, 13].Value = item.RegistProvinceName;
+ // summarySheet.Cells[row, 14].Value = item.RegistDistrictName;
+ // summarySheet.Cells[row, 15].Value = item.RegistSubDistrictName;
+ // summarySheet.Cells[row, 16].Value = item.RegistZipCode;
+ // summarySheet.Cells[row, 17].Value = item.CurrentAddress;
+ // summarySheet.Cells[row, 18].Value = item.CurrentProvinceName;
+ // summarySheet.Cells[row, 19].Value = item.CurrentDistrictName;
+ // summarySheet.Cells[row, 20].Value = item.CurrentSubDistrictName;
+ // summarySheet.Cells[row, 21].Value = item.CurrentZipCode;
- summarySheet.Cells[row, 22].Value = item.OccupationPosition;
- summarySheet.Cells[row, 23].Value = item.OccupationSalary;
- summarySheet.Cells[row, 24].Value = item.OccupationGroup;
- summarySheet.Cells[row, 25].Value = item.OccupationPile;
- summarySheet.Cells[row, 26].Value = item.OccupationOrg;
- summarySheet.Cells[row, 27].Value = item.OccupationPositionType == null ? null : GenerateStatusOccupation(item.OccupationPositionType);
- summarySheet.Cells[row, 28].Value = item.OccupationTelephone;
+ // summarySheet.Cells[row, 22].Value = item.OccupationPosition;
+ // summarySheet.Cells[row, 23].Value = item.OccupationSalary;
+ // summarySheet.Cells[row, 24].Value = item.OccupationGroup;
+ // summarySheet.Cells[row, 25].Value = item.OccupationPile;
+ // summarySheet.Cells[row, 26].Value = item.OccupationOrg;
+ // summarySheet.Cells[row, 27].Value = item.OccupationPositionType == null ? null : GenerateStatusOccupation(item.OccupationPositionType);
+ // summarySheet.Cells[row, 28].Value = item.OccupationTelephone;
- summarySheet.Cells[row, 29].Value = education.EducationLevelExamName;
- summarySheet.Cells[row, 30].Value = education.EducationName;
- summarySheet.Cells[row, 31].Value = education.EducationMajor;
- summarySheet.Cells[row, 32].Value = education.EducationLocation;
- summarySheet.Cells[row, 33].Value = education.EducationType;
- summarySheet.Cells[row, 34].Value = education.EducationEndDate == null ? "-" : education.EducationEndDate.Value.Date.ToThaiShortDate();
- summarySheet.Cells[row, 35].Value = education.EducationScores;
- summarySheet.Cells[row, 36].Value = education.EducationLevelHighName;
+ // summarySheet.Cells[row, 29].Value = education.EducationLevelExamName;
+ // summarySheet.Cells[row, 30].Value = education.EducationName;
+ // summarySheet.Cells[row, 31].Value = education.EducationMajor;
+ // summarySheet.Cells[row, 32].Value = education.EducationLocation;
+ // summarySheet.Cells[row, 33].Value = education.EducationType;
+ // summarySheet.Cells[row, 34].Value = education.EducationEndDate == null ? "-" : education.EducationEndDate.Value.Date.ToThaiShortDate();
+ // summarySheet.Cells[row, 35].Value = education.EducationScores;
+ // summarySheet.Cells[row, 36].Value = education.EducationLevelHighName;
- summarySheet.Cells[row, 42].Value = item.Number;
- summarySheet.Cells[row, 43].Value = item.ExamIdenNumber;
- summarySheet.Cells[row, 44].Value = item.SeatNumber;
- summarySheet.Cells[row, 45].Value = item.PointTotalA;
- summarySheet.Cells[row, 46].Value = item.PointA;
- summarySheet.Cells[row, 47].Value = item.ResultA;
- summarySheet.Cells[row, 48].Value = item.PointTotalB;
- summarySheet.Cells[row, 49].Value = item.PointB;
- summarySheet.Cells[row, 50].Value = item.ResultB;
- summarySheet.Cells[row, 51].Value = item.PointTotalC;
- summarySheet.Cells[row, 52].Value = item.PointC;
- summarySheet.Cells[row, 53].Value = item.ResultC;
- summarySheet.Cells[row, 54].Value = item.Pass;
- summarySheet.Cells[row, 55].Value = item.CreatedAt.Date.ToThaiShortDate();
- summarySheet.Cells[row, 56].Value = item.RegisterDate;
- row++;
- }
+ // summarySheet.Cells[row, 42].Value = item.Number;
+ // summarySheet.Cells[row, 43].Value = item.ExamIdenNumber;
+ // summarySheet.Cells[row, 44].Value = item.SeatNumber;
+ // summarySheet.Cells[row, 45].Value = item.PointTotalA;
+ // summarySheet.Cells[row, 46].Value = item.PointA;
+ // summarySheet.Cells[row, 47].Value = item.ResultA;
+ // summarySheet.Cells[row, 48].Value = item.PointTotalB;
+ // summarySheet.Cells[row, 49].Value = item.PointB;
+ // summarySheet.Cells[row, 50].Value = item.ResultB;
+ // summarySheet.Cells[row, 51].Value = item.PointTotalC;
+ // summarySheet.Cells[row, 52].Value = item.PointC;
+ // summarySheet.Cells[row, 53].Value = item.ResultC;
+ // summarySheet.Cells[row, 54].Value = item.Pass;
+ // summarySheet.Cells[row, 55].Value = item.CreatedAt.Date.ToThaiShortDate();
+ // summarySheet.Cells[row, 56].Value = item.RegisterDate;
+ // row++;
+ // }
var careers = await _context.Careers
.AsQueryable()
.OrderBy(x => x.DurationStart)
@@ -1591,6 +1602,15 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
summarySheet.Cells[row, 27].Value = item.OccupationPositionType == null ? null : GenerateStatusOccupation(item.OccupationPositionType);
summarySheet.Cells[row, 28].Value = item.OccupationTelephone;
+ summarySheet.Cells[row, 29].Value = education == null ? "-" : education.EducationLevelExamName;
+ summarySheet.Cells[row, 30].Value = education == null ? "-" : education.EducationName;
+ summarySheet.Cells[row, 31].Value = education == null ? "-" : education.EducationMajor;
+ summarySheet.Cells[row, 32].Value = education == null ? "-" : education.EducationLocation;
+ summarySheet.Cells[row, 33].Value = education == null ? "-" : education.EducationType;
+ summarySheet.Cells[row, 34].Value = education == null ? "-" : (education.EducationEndDate == null ? "-" : education.EducationEndDate.Value.Date.ToThaiShortDate());
+ summarySheet.Cells[row, 35].Value = education == null ? "-" : education.EducationScores;
+ summarySheet.Cells[row, 36].Value = education == null ? "-" : education.EducationLevelHighName;
+
summarySheet.Cells[row, 37].Value = career.Position;
summarySheet.Cells[row, 38].Value = career.Type;
// summarySheet.Cells[row, 39].Value = career.Pile;
@@ -1616,7 +1636,7 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
summarySheet.Cells[row, 56].Value = item.RegisterDate;
row++;
}
- if (educations.Count() == 0 && careers.Count() == 0)
+ if (careers.Count() == 0)
{
summarySheet.Cells[row, 1].Value = GenerateStatusCandidate(item.Status);
summarySheet.Cells[row, 2].Value = item.CitizenId;
@@ -1648,6 +1668,15 @@ namespace BMA.EHR.Recurit.Exam.Service.Services
summarySheet.Cells[row, 27].Value = item.OccupationPositionType == null ? null : GenerateStatusOccupation(item.OccupationPositionType);
summarySheet.Cells[row, 28].Value = item.OccupationTelephone;
+ summarySheet.Cells[row, 29].Value = education == null ? "-" : education.EducationLevelExamName;
+ summarySheet.Cells[row, 30].Value = education == null ? "-" : education.EducationName;
+ summarySheet.Cells[row, 31].Value = education == null ? "-" : education.EducationMajor;
+ summarySheet.Cells[row, 32].Value = education == null ? "-" : education.EducationLocation;
+ summarySheet.Cells[row, 33].Value = education == null ? "-" : education.EducationType;
+ summarySheet.Cells[row, 34].Value = education == null ? "-" : (education.EducationEndDate == null ? "-" : education.EducationEndDate.Value.Date.ToThaiShortDate());
+ summarySheet.Cells[row, 35].Value = education == null ? "-" : education.EducationScores;
+ summarySheet.Cells[row, 36].Value = education == null ? "-" : education.EducationLevelHighName;
+
summarySheet.Cells[row, 42].Value = item.Number;
summarySheet.Cells[row, 43].Value = item.ExamIdenNumber;
summarySheet.Cells[row, 44].Value = item.SeatNumber;