diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs
index 02809ccb..57fbd85e 100644
--- a/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs
+++ b/BMA.EHR.Placement.Service/Controllers/PlacementAppointmentController.cs
@@ -1815,5 +1815,46 @@ namespace BMA.EHR.Placement.Service.Controllers
}
return Success();
}
+
+ ///
+ /// ออกคำสั่ง C-PM-21 คำสั่งแต่งตั้งลูกจ้างชั่วคราวเป็นลูกจ้างประจำ (ใช้สำหรับรายงานจำนวนลูกจ้างประจำ กทม. ที่ได้รับการจ้าง แต่งตั้งและย้าย)
+ ///
+ ///
+ ///
+ /// ค่าตัวแปรที่ส่งมาไม่ถูกต้อง
+ /// ไม่ได้ Login เข้าระบบ
+ /// เมื่อเกิดข้อผิดพลาดในการทำงาน
+ [HttpPost("employee-appoint-21/report/excecute")]
+ public async Task> PostReportAppointExecute([FromBody] ReportExecutePlacementAppointRequest req)
+ {
+
+ if (req == null || req.profileEmps.Length == 0)
+ return Error("ไม่พบรายชื่อรายการแต่งตั้งลูกจ้างชั่วคราวเป็นลูกจ้างประจำ", 404);
+
+ foreach (var profile in req.profileEmps)
+ {
+ var placementAppointEmployee = new PlacementAppointmentEmployee
+ {
+ profileId = profile.profileId,
+ prefix = profile.prefix,
+ firstName = profile.firstName,
+ lastName = profile.lastName,
+ citizenId = profile.citizenId,
+ root = profile.root,
+ rootId = profile.rootId,
+ rootShortName = profile.rootShortName,
+
+ CreatedFullName = FullName ?? "System Administrator",
+ CreatedUserId = UserId ?? "",
+ CreatedAt = DateTime.Now,
+ LastUpdateFullName = FullName ?? "System Administrator",
+ LastUpdateUserId = UserId ?? "",
+ LastUpdatedAt = DateTime.Now,
+ };
+ await _context.PlacementAppointmentEmployee.AddAsync(placementAppointEmployee);
+ }
+ await _context.SaveChangesAsync();
+ return Success();
+ }
}
}
diff --git a/BMA.EHR.Placement.Service/Controllers/PlacementController.cs b/BMA.EHR.Placement.Service/Controllers/PlacementController.cs
index c1d26bd2..6fe0ae1d 100644
--- a/BMA.EHR.Placement.Service/Controllers/PlacementController.cs
+++ b/BMA.EHR.Placement.Service/Controllers/PlacementController.cs
@@ -3221,7 +3221,15 @@ namespace BMA.EHR.Placement.Service.Controllers
})
.ToList();
- var pa_appoint = placementAppointments.FirstOrDefault(x => x.TypeCommand == "APPOINTED")?.Count ?? 0;
+ var pae_count = _context.PlacementAppointmentEmployee
+ .Where(x =>
+ x.CreatedAt.Date >= startDate &&
+ x.CreatedAt.Date <= endDate &&
+ x.rootId.Contains(item.rootId))
+ .Count();
+
+ //var pa_appoint = placementAppointments.FirstOrDefault(x => x.TypeCommand == "APPOINTED")?.Count ?? 0;
+ var pa_appoint = pae_count;
var pa_slip = placementAppointments.FirstOrDefault(x => x.TypeCommand == "SLIP")?.Count ?? 0;
var pa_move = placementAppointments.FirstOrDefault(x => x.TypeCommand == "MOVE")?.Count ?? 0;
@@ -3254,7 +3262,15 @@ namespace BMA.EHR.Placement.Service.Controllers
})
.ToList();
- var pa_appoint = placementAppointments.FirstOrDefault(x => x.TypeCommand == "APPOINTED")?.Count ?? 0;
+ var pae_count = _context.PlacementAppointmentEmployee
+ .Where(x =>
+ x.CreatedAt.Date >= startDate &&
+ x.CreatedAt.Date <= endDate &&
+ x.rootId.Contains(item.rootId))
+ .Count();
+
+ //var pa_appoint = placementAppointments.FirstOrDefault(x => x.TypeCommand == "APPOINTED")?.Count ?? 0;
+ var pa_appoint = pae_count;
var pa_slip = placementAppointments.FirstOrDefault(x => x.TypeCommand == "SLIP")?.Count ?? 0;
var pa_move = placementAppointments.FirstOrDefault(x => x.TypeCommand == "MOVE")?.Count ?? 0;