From 5464189e6e9a9320823456d402888a571f420b27 Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Thu, 12 Oct 2023 05:43:22 +0700 Subject: [PATCH 1/8] =?UTF-8?q?=E0=B8=88=E0=B8=B1=E0=B8=94=E0=B8=81?= =?UTF-8?q?=E0=B8=B2=E0=B8=A3=E0=B8=82=E0=B9=89=E0=B8=AD=E0=B8=A1=E0=B8=B9?= =?UTF-8?q?=E0=B8=A5=20ProfilePosition?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Commands/CommandRepository.cs | 184 +++++++++++++++++- 1 file changed, 181 insertions(+), 3 deletions(-) diff --git a/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs b/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs index f9e95cbb..943455c3 100644 --- a/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs +++ b/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs @@ -2265,6 +2265,28 @@ namespace BMA.EHR.Application.Repositories.Commands profile.Salaries.Add(salary); + // change profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == profile.Id); + if (profilePosition == null) + { + profilePosition = new ProfilePosition + { + Profile = profile, + OrganizationPosition = placementProfile.OrganizationPosition, + IsActive = true, + IsPublished = true, + }; + _dbContext.Set().Add(profilePosition); + } + else + { + profilePosition.OrganizationPosition = placementProfile.OrganizationPosition; + //_dbContext.Attatch(profilePosition); + } + // update placementstatus placementProfile.PlacementStatus = "CONTAIN"; @@ -2518,6 +2540,28 @@ namespace BMA.EHR.Application.Repositories.Commands profile.Salaries.Add(salary); + // change profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == profile.Id); + if (profilePosition == null) + { + profilePosition = new ProfilePosition + { + Profile = profile, + OrganizationPosition = placementProfile.OrganizationPosition, + IsActive = true, + IsPublished = true, + }; + _dbContext.Set().Add(profilePosition); + } + else + { + profilePosition.OrganizationPosition = placementProfile.OrganizationPosition; + //_dbContext.Attatch(profilePosition); + } + // update placementstatus placementProfile.PlacementStatus = "CONTAIN"; @@ -2748,6 +2792,28 @@ namespace BMA.EHR.Application.Repositories.Commands profile.Salaries.Add(salary); + // change profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == profile.Id); + if (profilePosition == null) + { + profilePosition = new ProfilePosition + { + Profile = profile, + OrganizationPosition = placementProfile.OrganizationPosition, + IsActive = true, + IsPublished = true, + }; + _dbContext.Set().Add(profilePosition); + } + else + { + profilePosition.OrganizationPosition = placementProfile.OrganizationPosition; + //_dbContext.Attatch(profilePosition); + } + // update placementstatus placementProfile.Status = "DONE"; @@ -2978,6 +3044,28 @@ namespace BMA.EHR.Application.Repositories.Commands profile.Salaries.Add(salary); + // change profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == profile.Id); + if (profilePosition == null) + { + profilePosition = new ProfilePosition + { + Profile = profile, + OrganizationPosition = placementProfile.OrganizationPosition, + IsActive = true, + IsPublished = true, + }; + _dbContext.Set().Add(profilePosition); + } + else + { + profilePosition.OrganizationPosition = placementProfile.OrganizationPosition; + //_dbContext.Attatch(profilePosition); + } + // update placementstatus placementProfile.Status = "DONE"; @@ -3208,6 +3296,28 @@ namespace BMA.EHR.Application.Repositories.Commands profile.Salaries.Add(salary); + // change profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == profile.Id); + if (profilePosition == null) + { + profilePosition = new ProfilePosition + { + Profile = profile, + OrganizationPosition = placementProfile.OrganizationPosition, + IsActive = true, + IsPublished = true, + }; + _dbContext.Set().Add(profilePosition); + } + else + { + profilePosition.OrganizationPosition = placementProfile.OrganizationPosition; + //_dbContext.Attatch(profilePosition); + } + // update placementstatus placementProfile.Status = "DONE"; @@ -3446,6 +3556,16 @@ namespace BMA.EHR.Application.Repositories.Commands profile.Salaries.Add(salary); + // add profile position + var profilePosition = new ProfilePosition + { + Profile = profile, + OrganizationPosition = placementProfile.OrganizationPosition, + IsActive = true, + IsPublished = true, + }; + _dbContext.Set().Add(profilePosition); + // update placementstatus placementProfile.Status = "DONE"; @@ -3693,6 +3813,16 @@ namespace BMA.EHR.Application.Repositories.Commands profile.Salaries.Add(salary); + // add profile position + var profilePosition = new ProfilePosition + { + Profile = profile, + OrganizationPosition = placementProfile.OrganizationPosition, + IsActive = true, + IsPublished = true, + }; + _dbContext.Set().Add(profilePosition); + // update placementstatus placementProfile.Status = "DONE"; @@ -4219,6 +4349,14 @@ namespace BMA.EHR.Application.Repositories.Commands data.Salaries.Add(salary); + // remove profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == data.Id); + if (profilePosition != null) + _dbContext.Set().Remove(profilePosition); + // update placementstatus //data.Status = "DONE"; @@ -4399,6 +4537,14 @@ namespace BMA.EHR.Application.Repositories.Commands data.Profile.Salaries.Add(salary); + // remove profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == data.Id); + if (profilePosition != null) + _dbContext.Set().Remove(profilePosition); + // update placementstatus //data.Status = "DONE"; @@ -4483,7 +4629,7 @@ namespace BMA.EHR.Application.Repositories.Commands } /// - /// C-PM-14 - คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ + /// C-PM-14 - คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ /// /// object ของรายการคำสั่ง /// @@ -5286,6 +5432,14 @@ namespace BMA.EHR.Application.Repositories.Commands data.Profile.Salaries.Add(salary); + // remove profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == data.Profile.Id); + if (profilePosition != null) + _dbContext.Set().Remove(profilePosition); + // update placementstatus data.Status = "DONE"; @@ -5466,6 +5620,14 @@ namespace BMA.EHR.Application.Repositories.Commands data.Profile.Salaries.Add(salary); + // remove profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == data.Profile.Id); + if (profilePosition != null) + _dbContext.Set().Remove(profilePosition); + // update placementstatus data.Status = "DONE"; @@ -5550,7 +5712,7 @@ namespace BMA.EHR.Application.Repositories.Commands } /// - /// C-PM-19 - คำสั่งให้ออกจากราชการ + /// C-PM-19 - คำสั่งปลดออกจากราชการ /// /// object ของรายการคำสั่ง /// @@ -5646,6 +5808,14 @@ namespace BMA.EHR.Application.Repositories.Commands data.Profile.Salaries.Add(salary); + // remove profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == data.Profile.Id); + if (profilePosition != null) + _dbContext.Set().Remove(profilePosition); + // update placementstatus data.Status = "DONE"; @@ -5730,7 +5900,7 @@ namespace BMA.EHR.Application.Repositories.Commands } /// - /// C-PM-20 - คำสั่งให้ออกจากราชการ + /// C-PM-20 - คำสั่งไล่ออกจากราชการ /// /// object ของรายการคำสั่ง /// @@ -5826,6 +5996,14 @@ namespace BMA.EHR.Application.Repositories.Commands data.Profile.Salaries.Add(salary); + // remove profile position + var profilePosition = await _dbContext.Set() + .Include(x => x.Profile) + .Include(x => x.OrganizationPosition) + .FirstOrDefaultAsync(x => x.Profile!.Id == data.Profile.Id); + if (profilePosition != null) + _dbContext.Set().Remove(profilePosition); + // update placementstatus data.Status = "DONE"; From 16cccbf88e4551cf9f7437aa5b943cd24fa4f6c7 Mon Sep 17 00:00:00 2001 From: "Harid Promsri (Bright)" Date: Thu, 12 Oct 2023 09:38:37 +0700 Subject: [PATCH 2/8] =?UTF-8?q?=E0=B9=81=E0=B8=9A=E0=B8=9A=E0=B8=9F?= =?UTF-8?q?=E0=B8=AD=E0=B8=A3=E0=B9=8C=E0=B8=A1=E0=B8=A5=E0=B8=B2=E0=B8=AD?= =?UTF-8?q?=E0=B8=AD=E0=B8=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Reports/RetireReportRepository.cs | 78 ++++++++++++++++++ .../Controllers/ResignReportController.cs | 47 +++++++++-- .../33-แบบฟอร์มหนังสือขอลาออกจากราชการ-1.trdp | Bin 2258 -> 2244 bytes .../33-แบบฟอร์มหนังสือขอลาออกจากราชการ-2.trdp | Bin 2521 -> 2915 bytes 4 files changed, 117 insertions(+), 8 deletions(-) diff --git a/BMA.EHR.Application/Repositories/Reports/RetireReportRepository.cs b/BMA.EHR.Application/Repositories/Reports/RetireReportRepository.cs index d1deb5a1..9838bb63 100644 --- a/BMA.EHR.Application/Repositories/Reports/RetireReportRepository.cs +++ b/BMA.EHR.Application/Repositories/Reports/RetireReportRepository.cs @@ -311,6 +311,84 @@ namespace BMA.EHR.Application.Repositories.Reports } #endregion + #region แบบฟอร์มหนังสือขอลาออกจากราชการ + public async Task GetResignByUser(Guid id) + { + var data = await _dbContext.Set().AsQueryable() + .Where(x => x.Id == id) + .Select(p => new + { + p.Id, + Prefix = p.Profile.Prefix == null ? null : p.Profile.Prefix.Name, + PrefixId = p.Profile.Prefix == null ? Guid.Parse("00000000-0000-0000-0000-000000000000") : p.Profile.Prefix.Id, + p.Profile.FirstName, + p.Profile.LastName, + ProfileId = p.Profile.Id, + p.Location, + p.SendDate, + p.ActiveDate, + p.Reason, + p.Status, + salary = p.AmountOld, + p.ApproveReason, + p.RejectReason, + p.IsActive, + p.CreatedAt, + p.PositionTypeOld, + p.PositionLevelOld, + p.PositionNumberOld, + p.OrganizationPositionOld, + p.OligarchReject, + p.OligarchApproveReason, + p.OligarchRejectReason, + p.OligarchRejectDate, + p.CommanderReject, + p.CommanderApproveReason, + p.CommanderRejectReason, + p.CommanderRejectDate, + p.RemarkHorizontal, + }) + .FirstOrDefaultAsync(); + if (data == null) + return null; + + var _data = new + { + data.Id, + data.ProfileId, + data.Prefix, + data.FirstName, + data.LastName, + data.Location, + FullName = $"{data.Prefix}{data.FirstName} {data.LastName}", + SendDate = string.IsNullOrEmpty(data.SendDate.ToString())? string.Empty : DateTime.Parse(data.SendDate.ToString()).ToThaiFullDate().ToString().ToThaiNumber(), + ActiveDate = string.IsNullOrEmpty(data.ActiveDate.ToString())? string.Empty : DateTime.Parse(data.ActiveDate.ToString()).ToThaiFullDate().ToString().ToThaiNumber(), + data.Reason, + data.Status, + data.salary, + data.PositionTypeOld, + data.PositionLevelOld, + data.PositionNumberOld, + data.OrganizationPositionOld, + data.ApproveReason, + data.RejectReason, + data.IsActive, + data.CreatedAt, + data.OligarchReject, + data.OligarchApproveReason, + data.OligarchRejectReason, + OligarchRejectDate = string.IsNullOrEmpty(data.OligarchRejectDate.ToString()) ? string.Empty : DateTime.Parse(data.OligarchRejectDate.ToString()).ToThaiFullDate().ToString().ToThaiNumber(), + data.CommanderReject, + data.CommanderApproveReason, + data.CommanderRejectReason, + CommanderRejectDate = string.IsNullOrEmpty(data.CommanderRejectDate.ToString()) ? string.Empty : DateTime.Parse(data.CommanderRejectDate.ToString()).ToThaiFullDate().ToString().ToThaiNumber(), + data.RemarkHorizontal, + }; + + return _data; + } + #endregion + #endregion } } diff --git a/BMA.EHR.Report.Service/Controllers/ResignReportController.cs b/BMA.EHR.Report.Service/Controllers/ResignReportController.cs index d5f434dc..c3d9086c 100644 --- a/BMA.EHR.Report.Service/Controllers/ResignReportController.cs +++ b/BMA.EHR.Report.Service/Controllers/ResignReportController.cs @@ -25,7 +25,7 @@ namespace BMA.EHR.Report.Service.Controllers private readonly IWebHostEnvironment _hostingEnvironment; private readonly IConfiguration _configuration; - //private readonly ProbationReportRepository _repository; + private readonly RetireReportRepository _service; private readonly GenericReportGenerator _reportGenerator; @@ -33,12 +33,12 @@ namespace BMA.EHR.Report.Service.Controllers #region " Constuctor and Destructor " - public ResignReportController(IWebHostEnvironment hostingEnvironment, IConfiguration configuration, /*ProbationReportRepository repository,*/ GenericReportGenerator reportGenerator) + public ResignReportController(IWebHostEnvironment hostingEnvironment, IConfiguration configuration, RetireReportRepository service, GenericReportGenerator reportGenerator) { _hostingEnvironment = hostingEnvironment; _configuration = configuration; - //_repository = repository; + _service = service; _reportGenerator = reportGenerator; } @@ -57,11 +57,15 @@ namespace BMA.EHR.Report.Service.Controllers /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("33/{exportType}/{id}")] - public IActionResult GetResign33ConvertReportAsync(Guid id, string exportType = "pdf") + public async Task> GetResign33ConvertReportAsync(string id= "08dbca15-bb57-4b2e-8435-69116599421b", string exportType = "pdf") { try { - + Guid ids = Guid.Parse(id); + var resign = await _service.GetResignByUser(ids); + if (resign == null) + return NotFound(); + var mimeType = ""; switch (exportType.Trim().ToLower()) { @@ -69,11 +73,38 @@ namespace BMA.EHR.Report.Service.Controllers case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; } + //var FullName = resign.GetType().GetProperty("FirstName").GetValue(resign); - var rptFile = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"33-แบบฟอร์มหนังสือขอลาออกจากราชการ-1.trdp"); - var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + var rptFile1 = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"33-แบบฟอร์มหนังสือขอลาออกจากราชการ-1.trdp"); + var rptFile2 = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"33-แบบฟอร์มหนังสือขอลาออกจากราชการ-2.trdp"); - return File(contentData, mimeType, $"resign.{exportType.Trim().ToLower()}"); + ReportPackager reportPacker = new ReportPackager(); + Telerik.Reporting.Report? report1 = null; + Telerik.Reporting.Report? report2 = null; + + using (var sourceStream1 = System.IO.File.OpenRead(rptFile1)) + using (var sourceStream2 = System.IO.File.OpenRead(rptFile2)) + + { + report1 = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream1); + report2 = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream2); + } + + report1.DataSource = resign; + + var reportBook = new ReportBook(); + reportBook.Reports.Add(report1); + reportBook.Reports.Add(report2); + + System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); + InstanceReportSource instanceReportSource = new InstanceReportSource() + { + ReportDocument = reportBook, + }; + + ReportProcessor reportProcessor = new ReportProcessor(_configuration); + RenderingResult result = reportProcessor.RenderReport($"{exportType}", instanceReportSource, deviceInfo); + return File(result.DocumentBytes, mimeType, $"แบบฟอร์มหนังสือขอลาออกจากราชการ.{exportType.Trim().ToLower()}"); } catch diff --git a/BMA.EHR.Report.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-1.trdp b/BMA.EHR.Report.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-1.trdp index b2a8f4198ac8f92e6130cef9ff5e5bd4e99b564c..d10297c43bc4c10a85d308a93f4c2eb53d75e020 100644 GIT binary patch delta 1901 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 LB?d+b00000s^u9) From 08fc019f13012bc19aa33e7a420f2c29d2b360e8 Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Thu, 12 Oct 2023 09:42:42 +0700 Subject: [PATCH 3/8] =?UTF-8?q?=E0=B9=81=E0=B8=81=E0=B9=89=E0=B8=9A?= =?UTF-8?q?=E0=B8=B1=E0=B9=89=E0=B8=81=20=E0=B8=AD=E0=B8=AD=E0=B8=81?= =?UTF-8?q?=E0=B8=84=E0=B8=B3=E0=B8=AA=E0=B8=B1=E0=B9=88=E0=B8=87=20?= =?UTF-8?q?=E0=B9=84=E0=B8=A1=E0=B9=88=E0=B9=83=E0=B8=AA=E0=B9=88=E0=B8=84?= =?UTF-8?q?=E0=B9=88=E0=B8=B2=E0=B8=9F=E0=B8=B5=E0=B8=A5=E0=B8=A3=E0=B8=AB?= =?UTF-8?q?=E0=B8=B1=E0=B8=AA=E0=B8=95=E0=B8=B3=E0=B9=81=E0=B8=AB=E0=B8=99?= =?UTF-8?q?=E0=B9=88=E0=B8=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Commands/CommandRepository.cs | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs b/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs index 943455c3..ad0786d7 100644 --- a/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs +++ b/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs @@ -1948,6 +1948,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = oc == null ? Guid.Empty : oc.Id, + PositionId = position!.Id, PositionLevel = placementProfile.PositionLevel, PositionLineId = placementProfile.PositionLine!.Id, @@ -2228,6 +2229,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = oc == null ? Guid.Empty : oc.Id, + PositionId = position!.Id, + PositionLevel = placementProfile.PositionLevel, PositionLineId = placementProfile.PositionLine!.Id, PositionTypeId = placementProfile.PositionType!.Id, @@ -2503,6 +2506,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = oc == null ? Guid.Empty : oc.Id, + PositionId = position!.Id, + PositionLevel = placementProfile.PositionLevel, PositionLineId = placementProfile.PositionLine!.Id, PositionTypeId = placementProfile.PositionType!.Id, @@ -2755,6 +2760,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = oc == null ? Guid.Empty : oc.Id, + PositionId = position!.Id, + PositionLevel = placementProfile.PositionLevel, PositionLineId = placementProfile.PositionLine!.Id, PositionTypeId = placementProfile.PositionType!.Id, @@ -3007,6 +3014,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = oc == null ? Guid.Empty : oc.Id, + PositionId = position!.Id, + PositionLevel = placementProfile.PositionLevel, PositionLineId = placementProfile.PositionLine!.Id, PositionTypeId = placementProfile.PositionType!.Id, @@ -3259,6 +3268,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = oc == null ? Guid.Empty : oc.Id, + PositionId = position!.Id, + PositionLevel = placementProfile.PositionLevel, PositionLineId = placementProfile.PositionLine!.Id, PositionTypeId = placementProfile.PositionType!.Id, @@ -3519,6 +3530,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = position!.Id, + PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, PositionTypeId = lastSarary.PositionTypeId, @@ -3776,6 +3789,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = position!.Id, + PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, PositionTypeId = lastSarary.PositionTypeId, @@ -3958,6 +3973,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, @@ -4133,6 +4149,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, @@ -4311,6 +4328,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, @@ -4499,6 +4517,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, @@ -4829,6 +4848,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = oc == null ? Guid.Empty : oc.Id, + PositionId = position!.Id, PositionLevel = placementProfile.PositionLevel, PositionLineId = placementProfile.PositionLine!.Id, @@ -5036,6 +5056,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, + PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, PositionTypeId = lastSarary.PositionTypeId, @@ -5215,6 +5237,8 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, + PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, PositionTypeId = lastSarary.PositionTypeId, @@ -5394,6 +5418,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, @@ -5582,6 +5607,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, @@ -5770,6 +5796,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, @@ -5958,6 +5985,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, From 68de2e7daa01937c959f898402bb1332b82bc791 Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Thu, 12 Oct 2023 09:46:15 +0700 Subject: [PATCH 4/8] add new param --- .../Repositories/Commands/CommandRepository.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs b/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs index ad0786d7..0bb4105a 100644 --- a/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs +++ b/BMA.EHR.Application/Repositories/Commands/CommandRepository.cs @@ -3530,7 +3530,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, - PositionId = position!.Id, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, @@ -3789,7 +3789,7 @@ namespace BMA.EHR.Application.Repositories.Commands OcId = lastSarary.OcId, - PositionId = position!.Id, + PositionId = lastSarary.PositionId, PositionLevel = lastSarary.PositionLevel, PositionLineId = lastSarary.PositionLineId, From b1439ca797cab0e42fce81e57a78b6180a810bc8 Mon Sep 17 00:00:00 2001 From: "Harid Promsri (Bright)" Date: Thu, 12 Oct 2023 11:29:17 +0700 Subject: [PATCH 5/8] =?UTF-8?q?=E0=B9=81=E0=B8=81=E0=B9=89=E0=B8=A3?= =?UTF-8?q?=E0=B8=B2=E0=B8=A2=E0=B8=87=E0=B8=B2=E0=B8=99=E0=B9=80=E0=B8=84?= =?UTF-8?q?=E0=B8=A3=E0=B8=B7=E0=B9=88=E0=B8=AD=E0=B8=87=E0=B8=A3=E0=B8=B2?= =?UTF-8?q?=E0=B8=8A=E0=B8=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BMA.EHR.Report.Service.csproj | 6 ++ .../Controllers/InsigniaReportController.cs | 57 +++++++++++++------ 2 files changed, 46 insertions(+), 17 deletions(-) diff --git a/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj b/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj index 2a290dd6..47b75761 100644 --- a/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj +++ b/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj @@ -340,6 +340,12 @@ PreserveNewest + + PreserveNewest + + + PreserveNewest + PreserveNewest diff --git a/BMA.EHR.Report.Service/Controllers/InsigniaReportController.cs b/BMA.EHR.Report.Service/Controllers/InsigniaReportController.cs index 75ffc858..b2cd8ed4 100644 --- a/BMA.EHR.Report.Service/Controllers/InsigniaReportController.cs +++ b/BMA.EHR.Report.Service/Controllers/InsigniaReportController.cs @@ -1,9 +1,12 @@ using BMA.EHR.Application.Repositories.Reports; using BMA.EHR.Domain.Common; +using BMA.EHR.Domain.Extensions; using BMA.EHR.Domain.Models.Insignias; using DocumentFormat.OpenXml.Drawing; +using DocumentFormat.OpenXml.EMMA; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.FileProviders; using Swashbuckle.AspNetCore.Annotations; using Telerik.Reporting; using Telerik.Reporting.Processing; @@ -441,14 +444,14 @@ namespace BMA.EHR.Report.Service.Controllers report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream); } report.ReportParameters["YearInsigniaPeriod"].Value = YearInsignalPeriod; - + var tbl1 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; var _Khr6List = new List(); foreach (var _data in data) { _Khr6List.Add(new { - RowNo = _Khr6List.Count + 1, + RowNo = (_Khr6List.Count + 1).ToString().ToThaiNumber(), DepartmentName = _data.GetType().GetProperty("DepartmentName").GetValue(_data), G1Male = _data.GetType().GetProperty("G1Male").GetValue(_data), G1Female = _data.GetType().GetProperty("G1Female").GetValue(_data), @@ -493,6 +496,7 @@ namespace BMA.EHR.Report.Service.Controllers { try { + var data = await _repository.GetCoinReport(id); var YearInsignalPeriod = await _repository.GetYearInsigniaPeriod(id); var mimeType = ""; @@ -502,35 +506,54 @@ namespace BMA.EHR.Report.Service.Controllers case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; } + var rptFile = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา-1.trdp"); + var rptFile2 = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา-2.trdp"); - var rptFile = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา.trdp"); ReportPackager reportPacker = new ReportPackager(); Telerik.Reporting.Report? report = null; + Telerik.Reporting.Report? report2 = null; + using (var sourceStream = System.IO.File.OpenRead(rptFile)) + using (var sourceStream2 = System.IO.File.OpenRead(rptFile2)) { report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream); + report2 = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream2); } - - report.ReportParameters["YearInsignalPeriod"].Value = YearInsignalPeriod; - - //var _Khr3List = new List(); - //int maxRows = 25; - //for (int i = 0; i < maxRows; i++) + string OCName = string.Empty; + //foreach (var info in data) //{ - // _Khr3List.Add(new - // { - // RowNo = i + 1, - // FullName = string.Empty - // }); + // OCName = info.GetType().GetProperty("OCName").GetValue(info); + // break; //} + report.ReportParameters["YearInsignalPeriod"].Value = YearInsignalPeriod; + report.ReportParameters["OCName"].Value = OCName; + var dataList = new List(data); + var detailList = new List(); - //var tbl1 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; - //tbl1.DataSource = _Khr3List; + var ChkInsigniaName = string.IsNullOrEmpty(dataList[0].GetType().GetProperty("InsigniaName").GetValue(dataList[0]))? string.Empty: dataList[0].GetType().GetProperty("InsigniaName").GetValue(dataList[0]); + for (int i = 0; i < dataList.Count; i++) + { + detailList.Add(new + { + row = detailList.Count+1, + Number = (detailList.Count+1).ToString().ToThaiNumber(), + InsigniaName = dataList[i].GetType().GetProperty("InsigniaName").GetValue(dataList[i]), + FullName = dataList[i].GetType().GetProperty("FullName").GetValue(dataList[i]), + InsigniaInitial = dataList[i].GetType().GetProperty("InsigniaInitial").GetValue(dataList[i]), + Male = dataList[i].GetType().GetProperty("Male").GetValue(dataList[i]), + Female = dataList[i].GetType().GetProperty("Female").GetValue(dataList[i]), + }); ; + } + report.DataSource = detailList; + + var reportBook = new ReportBook(); + reportBook.Reports.Add(report); + reportBook.Reports.Add(report2); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); InstanceReportSource instanceReportSource = new InstanceReportSource() { - ReportDocument = report, + ReportDocument = reportBook, }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport($"{exportType}", instanceReportSource, deviceInfo); From 7976b9174acf87a7694b41d304b4df33576e3b8a Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Thu, 12 Oct 2023 11:34:30 +0700 Subject: [PATCH 6/8] =?UTF-8?q?=E0=B8=A5=E0=B8=87=E0=B8=A7=E0=B8=B1?= =?UTF-8?q?=E0=B8=99=E0=B8=97=E0=B8=B5=E0=B9=88=E0=B9=83=E0=B8=99=E0=B9=81?= =?UTF-8?q?=E0=B8=99=E0=B8=9A=E0=B8=97=E0=B9=89=E0=B8=B2=E0=B8=A2=20?= =?UTF-8?q?=E0=B9=80=E0=B8=9E=E0=B8=B4=E0=B9=88=E0=B8=A1=20=E0=B8=9E.?= =?UTF-8?q?=E0=B8=A8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/CommandReportController.cs | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/BMA.EHR.Report.Service/Controllers/CommandReportController.cs b/BMA.EHR.Report.Service/Controllers/CommandReportController.cs index 4dbc1b5b..2d9cfbde 100644 --- a/BMA.EHR.Report.Service/Controllers/CommandReportController.cs +++ b/BMA.EHR.Report.Service/Controllers/CommandReportController.cs @@ -143,7 +143,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -262,7 +262,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -381,7 +381,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -500,7 +500,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -620,7 +620,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -741,7 +741,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -860,7 +860,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -981,7 +981,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -1105,7 +1105,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -1399,7 +1399,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -1521,7 +1521,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -1640,7 +1640,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); @@ -1830,7 +1830,7 @@ namespace BMA.EHR.Report.Service.Controllers report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); - report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate3().ToThaiNumber(); + report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); From 54f3b3f54e60e6292991c7282d3c573bff78ed0c Mon Sep 17 00:00:00 2001 From: Suphonchai Phoonsawat Date: Thu, 12 Oct 2023 12:01:43 +0700 Subject: [PATCH 7/8] =?UTF-8?q?=E0=B9=81=E0=B8=81=E0=B9=89=E0=B9=84?= =?UTF-8?q?=E0=B8=82=E0=B9=80=E0=B8=A3=E0=B8=B7=E0=B9=88=E0=B8=AD=E0=B8=87?= =?UTF-8?q?=20=E0=B8=A5=E0=B8=87=E0=B8=8A=E0=B8=B7=E0=B9=88=E0=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-3.trdp | Bin 2681 -> 2693 bytes ...ึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล และ ผู้บังคับบัญชา-2.trdp | Bin 5576 -> 5620 bytes ...ะเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-1.trdp | Bin 7327 -> 7355 bytes ...ะเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-2.trdp | Bin 3809 -> 3832 bytes 4 files changed, 0 insertions(+), 0 deletions(-) diff --git a/BMA.EHR.Report.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-3.trdp b/BMA.EHR.Report.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-3.trdp index 44c029075bb937f1bef0b73566f2946a16b0d253..bb425d9c04d39459dc3fbd4778c66c9a3127351f 100644 GIT binary patch delta 2370 zcmV-I3BC6D6onNSP)h>@6aWAK2mmWyOjq*cnAFG!008Sikr*<6eNWp)82^9LzJrxX z2*m0nc3wx)iWhaQx^}3co3#Hja3N|EGskJ^rb$hQ21T3JwNM5{NRXj!MV0!xIp4^Aa`9`)(unovb10>A-U9iB_drbRy1_2o>L>zSGr!o&nF{NVM)JJ zs1}z$HA)Nl$edBvA`y@Yh9iVQbN=#9s ziX4xiekCb)+0-gExI~2+%`BG61#R9$&Ti<;yA^Zw&Czc^M>iQLma#Lvxp;LeVIGU9Zj- zt{`$t-(t>F%VtEH(#we8i^XzHV=;slqRMs(H~p}+JEjHN?mcnAiV`3 zQ6-XVtzwW{5A0S03$@loxD+qA-V=1J+)hF&|?!SH{81d3!Wsr zuR0q?o+=^Nfus&{NK>n3uu+pyaTfC zfh1gi<9>iytP)4i=O5H&Hlh9}sA+=yeQ0fs^IH8-sh&wH6*&=$4}?s7fo`r7Z-k3j z>KI%UA&o2x0{oO%Y0+4R0syqFj6cx3FJ1pn=sMwByQbgOVRnPZQj%#D&CbBqaX8PD_j!VxeL& z88DDba3KRRf?c|DY=cK>43hzO!Pvw4g5@{iqA{!<+cAmTBWZ+0AS9$DH9r&YIP%fT z%mn(GoDftZ9V(3o8rmnx4vEzWj2S_H<&^ESQ#($|Rpv}`mFlqFrW38Xn<|l=eSqr` z+nlGJMf6cCPwYat4%%4u2QU?%G92{Dg<><}D} zhuTlr(#HSE)ke2=q;=j?Yy=wx)SQ47; z1Q8e%8sL`Qdf0aS-KO!Va~k_Fbkco;?u-t+mYvg`K;JHcNxmI9DY7;MTeQP9Cc`Fp zCpWP`8X+l#XLJwRF=RAmv@d#pDB4NbvTEsIS+$rP|F5n|Sat7HJ?T^rJ_&%;Z=G&Z zju}eUhUo6Xm6nNjWb_j$Z-ES@oQ017KVc|f3x|!ux-voin z6B0Kqi*5|@|1gHub{eAA3$H|N_2HQTd zb9XiFF|(JvcnUZ)PKTd=kr|w~NTR4h$h4+e{uoD*;8HTf2unpEho3GP9FQrp!SRPN z-3`X!rW{3Vho2%jeQXt#!#02U<|uPSf`@%otD3r@$RHt&l+B5eMRUSAPa(e_JEh?1 zK1Q;apW>S*zhe<;x>zkN8KvqiiWr~pAO5a?a6Dyt@RaWEO7H=Hm$(9qi8zF6R~Hxv z-WdeJAykohP#lzm93PnBj*>spxFobOtyd~V90ob9j5`mEoy;l2AcOl~z^DyFZW3N0G!_9)M(7<&LetJg~SJxl`6IHy^n=J>wR5K^pCa*|6?bw_Ka zXlezsXqZ9Z^4%kUg%qw#Z$l$4FW$x86yE?Yw5arFa2!m%70Gu$5mLyqec4?ffcfrZ z!wJ|x_X%D>8!sURj40GI8RIJa%RK{$?Y#UzJG%2w?7pcuqv4E_6kWxj>A)UluvGZI zY4Cng5ja^9lU4HS?x52Z!%ZZeN|r>7cGNKCR0A7hT#m1)*7bUS4Mb@@?d)pNSS(fBU-Qz68;(MNs$6$o#A|OGWd&4YN;ggTrWqHa?gZFI zb5VA@qzWJ@ENPlaAAy?dbq1)8Hzm-#7w{+7^i>25JRKOmWY$F zE^G9LgbRpbL<|OcswfiaC4I@PlpQLC-i7X*@wn4ubINT1oG-`Q8crV+>K#qwKG=y! zljX90=UTm776XwkkKJO9pnjbMLZDWI%5srLpq7J63z?$8^1*vx{AeGj z_{$0lA(hWXJ#>v$p8pq6O9KQH0000804rWhlMxBw4l7_EJ2^1DkO9ci10000200IDg0002;2><{90PgW(_5c6? delta 2341 zcmV+=3EK9B75NkxP)h>@6aWAK2mqUTJ6BKUwfDRT005dnkr*<6?QhdY82>(L|AUoD z6&1rt?7Xfis4rq52CGQfK4-0IB9gds94PxlShbdF(-^dLEmfs9tJtWJc%Sp%So=$M z_ngnUyEw5!ld2Aa;5$FQm*4Mso_p>&J9lZNQkL#&My;e*CnIq=7Ll~-g1%U)E=@-2 z=Isla$fb*)f0ny{sV(bb?swNQyjHwqOEU8@(=h?Fnt_wv=k^4CUbaWXP* z)U}9&ny%I+BSq6({wf-+Eflp%p(dMJSu;v^oGYNs=x|wsl}z zA8c#YwqDrQTPQYd>y2&g+SZ(#p@k@P!~z+0kn91jN@(;4mx1=b2ZvHuoG?i50Z3GdMg#DRq+^<85LjK)=Rij6l@HSPzP#VTW$#8SuLq6leZSrFi- z#A3@MrcC_VBcOt60Vlb}ka-Mxv<__^c3nEcO zKP=e5_E_t?km{Q@U_%Q0qb*?hE`R!^BTk zPN~6cOXUKm$*~{nx;a4>`Bzl6cfg9y+14}44i2rxB_e!&4$Z2fp~$W#e`^*sBY8tt zX0_Uad>1z=z?cdXj7ZIUgr6>k2`&JzTU)Z-dMaTD;H=*Wt`_Ja)oSc@HsJ1a>bx3% zP9)032XG7fl>-`B?Lj-P%r+?b5%n~|%}QKIyhcLe5A3wWh#?j#7Lx%3xdaz75F^;7 zE5|l?l*TX_a2Jd{tS?x86D}IV>aiV@xIL0aNCZMcN>cM1@s49(tjtcJpQ#B!CDNhN zh@hc;lI)OJjlh@@R8HAGJGJ9exyp=xBv+{p+ig10n!BkI+1UrUp1`fQKnGddToztJ zM7cu)2&Wyq0haMUvJ-yiP-txmIA=qJbB}nTjj^2Kf;qC*p(q<8^#*kPC5?1<`0dPV zu$ =U12P}~t2k10vL7C-^vc(@j#psJjf6%J;i&YlqS$PU5rh=_+O!xfKz^C>Px zR@;a>dl(1t46oQ6$PPHj`TrqxKu&xLAqQ#cUm*S`-P*e*FpMRk*-j9FL7@R|*{#QI z$KP!lPdcZu4?`#2H|Wmjz-!q#-3j#VBADdck&_~8L$F0VTw^k9f_HKg3#1W}Qg}i4 zpdCX-V@CU;$D*BtEvuFemQ{;?$?=oACSlcmNcE&sJ@_O5R=;(+NjYXHSsS9e3s+hu z-jUHyq`Vy-A~MbSJAthxuz29*zy$u*fe*p3hym>|w(==96s~lpoJs{eFyM33OhW&V z=J%1tS|S>r8K?nF{#JESGs>l^Mo$k1f`%%`)C>y;(#=c5! zQ_IRRx;EJ5OHK94cgECgTh&xK$yuKZ?-8IXWc2sBV;(0n#u#k-#LnH-xW~+1^5QAr z&^R4_MrLr{B8j33A=8?FX8B_rMS@Go3?nQRfgFCiWN<*H$OgwB#&kCrhnsQ~u^oPj zpnYAeH3^&7dD(M?B7E;5M>N&cJEKdzlFoF?c-RLDq=oj1+}CEgVWb@M$#hkwg%R&UBJB7v;V@ zj&h$KLoF+jn=347dCkOMFxRBH!m?&uD^*edQwhW(f~2;9>fGVXpc#~^b-i8#QCd$s zyIwGsO4as%cgVEjmZK1$DmR^12-~|(Spn6U)=g8dpfWB*-3hRb=A!I)NfkhnFKU`e zAAy>ibq1)8cRbL%7x5S3^d$-mJRKOmWK#qwJ~fI+Q{}RL??$~`79*7| zkKNjkpnjeFL!efJ%5rf>pq7J63yG${^1*vx{AeGj_{$0lA(hWXJ#>v$ zUi=?WO9KQH000080GoL`lN|}+4x4#9S5M}(_q+%I0GdIQ3<@p-n|V8vJqjBE1d~|` LCI;pS00000dZcIk diff --git a/BMA.EHR.Report.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล และ ผู้บังคับบัญชา-2.trdp b/BMA.EHR.Report.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล และ ผู้บังคับบัญชา-2.trdp index 596d1c8774e138732727ce58b649a4f11530c88e..f01fa1dd76b9c9f86590ce9d45c964da1d3fd98f 100644 GIT binary patch delta 5291 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 delta 7031 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

Qhkl+UI67HIhttv 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 U0000200IDg0000^4gdfE0NR(jPyhe` From 3dac22380b9d6d2883377857f2ab11ac5662c71c Mon Sep 17 00:00:00 2001 From: "Harid Promsri (Bright)" Date: Thu, 12 Oct 2023 13:28:33 +0700 Subject: [PATCH 8/8] add reports --- ...ัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา-1.trdp | Bin 0 -> 2025 bytes ...ัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา-2.trdp | Bin 0 -> 1900 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 BMA.EHR.Report.Service/Reports/45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา-1.trdp create mode 100644 BMA.EHR.Report.Service/Reports/45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา-2.trdp diff --git a/BMA.EHR.Report.Service/Reports/45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา-1.trdp b/BMA.EHR.Report.Service/Reports/45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา-1.trdp new file mode 100644 index 0000000000000000000000000000000000000000..0cd1622299c89093ad45d7e2380aef5fa0c300a0 GIT binary patch literal 2025 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 literal 0 HcmV?d00001