diff --git a/.github/workflows/release_reportV2.yaml b/.github/workflows/release_reportV2.yaml new file mode 100644 index 00000000..33c96a6c --- /dev/null +++ b/.github/workflows/release_reportV2.yaml @@ -0,0 +1,87 @@ +name: release-dev +run-name: release-dev ${{ github.actor }} +on: + # push: + # tags: + # - 'v[0-9]+.[0-9]+.[0-9]+' + # tags-ignore: + # - '2.*' + # Allow run workflow manually from Action tab + workflow_dispatch: +env: + REGISTRY: docker.frappet.com + IMAGE_NAME: ehr/bma-ehr-report-v2-service + DEPLOY_HOST: frappet.com + COMPOSE_PATH: /home/frappet/docker/bma-ehr-report-v2 + TOKEN_LINE: uxuK5hDzS2DsoC5piJBrWRLiz8GgY7iMZZldOWsDDF0 + +jobs: + # act workflow_dispatch -W .github/workflows/release_reportV2.yaml --input IMAGE_VER=test-v6.1 -s DOCKER_USER=sorawit -s DOCKER_PASS=P@ssword -s SSH_PASSWORD=P@ssw0rd + release-dev: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + # skip Set up QEMU because it fail on act and container + - name: Gen Version + id: gen_ver + run: | + if [[ $GITHUB_REF == 'refs/tags/'* ]]; then + IMAGE_VER='${GITHUB_REF/refs\/tags\//}' + else + IMAGE_VER=${{ github.event.inputs.IMAGE_VER }} + fi + if [[ $IMAGE_VER == '' ]]; then + IMAGE_VER='test-vBeta' + fi + echo '::set-output name=image_ver::'$IMAGE_VER + - name: Test Version + run: | + echo $GITHUB_REF + echo ${{ steps.gen_ver.outputs.image_ver }} + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + - name: Login in to registry + uses: docker/login-action@v2 + with: + registry: ${{env.REGISTRY}} + username: ${{secrets.DOCKER_USER}} + password: ${{secrets.DOCKER_PASS}} + - name: Build and load local docker image + uses: docker/build-push-action@v3 + with: + context: . + platforms: linux/amd64 + file: BMA.EHR.ReportV2.Service/Dockerfile + push: true + tags: ${{env.REGISTRY}}/${{env.IMAGE_NAME}}:${{ steps.gen_ver.outputs.image_ver }},${{env.REGISTRY}}/${{env.IMAGE_NAME}}:latest + + - name: Reload docker compose + uses: appleboy/ssh-action@v0.1.8 + with: + host: ${{env.DEPLOY_HOST}} + username: frappet + password: ${{ secrets.SSH_PASSWORD }} + port: 22 + script: | + cd "${{env.COMPOSE_PATH}}" + docker-compose pull + docker-compose up -d + echo "${{ steps.gen_ver.outputs.image_ver }}"> success + - uses: snow-actions/line-notify@v1.1.0 + if: success() + with: + access_token: ${{ env.TOKEN_LINE }} + message: | + -Success✅✅✅ + Image: ${{env.IMAGE_NAME}} + Version: ${{ github.event.inputs.IMAGE_VER }} + By: ${{secrets.DOCKER_USER}} + - uses: snow-actions/line-notify@v1.1.0 + if: failure() + with: + access_token: ${{ env.TOKEN_LINE }} + message: | + -Failure❌❌❌ + Image: ${{env.IMAGE_NAME}} + Version: ${{ github.event.inputs.IMAGE_VER }} + By: ${{secrets.DOCKER_USER}} diff --git a/BMA.EHR.Application/Repositories/PlacementRepository.cs b/BMA.EHR.Application/Repositories/PlacementRepository.cs index b881e40b..9dd3f03a 100644 --- a/BMA.EHR.Application/Repositories/PlacementRepository.cs +++ b/BMA.EHR.Application/Repositories/PlacementRepository.cs @@ -7,19 +7,59 @@ namespace BMA.EHR.Application.Repositories { public class PlacementRepository : GenericRepository { + #region " Fields " + private readonly IApplicationDBContext _dbContext; private readonly IHttpContextAccessor _httpContextAccessor; + + #endregion + + #region " Constructor and Destructor " + public PlacementRepository(IApplicationDBContext dbContext, IHttpContextAccessor httpContextAccessor) : base(dbContext, httpContextAccessor) { _dbContext = dbContext; _httpContextAccessor = httpContextAccessor; } + #endregion + + #region " Methods " + + public async Task> GetCompetitivePlacementAsync() + { + try + { + var data = await _dbContext.Set() + .Include(p => p.PlacementType) + .Where(p => p.PlacementType.Name == "สอบแข่งขัน") + .ToListAsync(); + + return data; + } + catch + { + throw; + } + } + + public async Task> GetQualifyingPlacementAsync() + { + var data = await _dbContext.Set() + .Include(p => p.PlacementType) + .Where(p => p.PlacementType.Name != "สอบแข่งขัน") + .ToListAsync(); + + return data; + } + public async Task> FindByNameAsync(string name) { var data = await _dbContext.Set().Where(x => x.Name == name).ToListAsync(); return data; } + + #endregion } } diff --git a/BMA.EHR.Command.Service/Controllers/OrderController.cs b/BMA.EHR.Command.Service/Controllers/OrderController.cs index 9c395559..fd4ffb05 100644 --- a/BMA.EHR.Command.Service/Controllers/OrderController.cs +++ b/BMA.EHR.Command.Service/Controllers/OrderController.cs @@ -466,20 +466,23 @@ namespace BMA.EHR.Command.Service.Controllers /// /// PM7-24 : dropdown รอบการสอบ หน้ารายละเอียดการออกคำสั่ง /// + /// Code ของประเภทคำสั่ง /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน - [HttpGet("detail/exam-round")] + [HttpGet("detail/exam-round/{commandCode}")] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] - public async Task> GetExamRoundAsync() + public async Task> GetExamRoundAsync(string commandCode) { try { - var data = (await _placementRepository.GetAllAsync()) - .Select(x => new + var rawData = commandCode.Trim().ToUpper() == "C-PM-01" ? await _placementRepository.GetCompetitivePlacementAsync() : await _placementRepository.GetQualifyingPlacementAsync(); + + + var data = rawData.Select(x => new { examRoundValue = x.Id, examRoundName = $"{x.Name} ครั้งที่ {x.Round}/{x.Year.ToThaiYear()}" diff --git a/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj b/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj index b22fea5b..9059bb4c 100644 --- a/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj +++ b/BMA.EHR.Report.Service/BMA.EHR.Report.Service.csproj @@ -1,15 +1,15 @@  - - net7.0 - enable - enable - 1fb39f37-45f3-4d47-9c86-c0458563770e - Linux - True - . - BMA.EHR.Report.Service - + + net7.0 + enable + enable + 1fb39f37-45f3-4d47-9c86-c0458563770e + Linux + True + . + BMA.EHR.Report.Service + @@ -40,469 +40,469 @@ - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - - PreserveNewest - - + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + diff --git a/BMA.EHR.Report.Service/Controllers/CommandReportController.cs b/BMA.EHR.Report.Service/Controllers/CommandReportController.cs index 458cac2b..dcc0b28a 100644 --- a/BMA.EHR.Report.Service/Controllers/CommandReportController.cs +++ b/BMA.EHR.Report.Service/Controllers/CommandReportController.cs @@ -3,14 +3,10 @@ using BMA.EHR.Domain.Common; using BMA.EHR.Domain.Extensions; using BMA.EHR.Domain.Shared; using Microsoft.AspNetCore.Authorization; -using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Swashbuckle.AspNetCore.Annotations; -using static System.Runtime.InteropServices.JavaScript.JSType; using Telerik.Reporting; using Telerik.Reporting.Processing; -using Microsoft.IdentityModel.Protocols.OpenIdConnect; -using Microsoft.AspNetCore.Mvc.ModelBinding.Binders; namespace BMA.EHR.Report.Service.Controllers { diff --git a/BMA.EHR.ReportGenerator/BMA.EHR.ReportGenerator.csproj b/BMA.EHR.ReportGenerator/BMA.EHR.ReportGenerator.csproj new file mode 100644 index 00000000..0611aa8a --- /dev/null +++ b/BMA.EHR.ReportGenerator/BMA.EHR.ReportGenerator.csproj @@ -0,0 +1,30 @@ + + + + net6.0 + enable + enable + + + + + + + + + + + + + + + + + + PreserveNewest + true + PreserveNewest + + + + diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Blazor.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Blazor.17.0.23.315.nupkg new file mode 100644 index 00000000..06af74a5 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Blazor.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Blazor.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Blazor.17.1.23.718.nupkg new file mode 100644 index 00000000..07c68369 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Blazor.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.BlazorNative.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.BlazorNative.17.0.23.315.nupkg new file mode 100644 index 00000000..b1e81f4f Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.BlazorNative.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.BlazorNative.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.BlazorNative.17.1.23.718.nupkg new file mode 100644 index 00000000..a6b859f2 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.BlazorNative.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Html5.WebForms.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Html5.WebForms.17.0.23.315.nupkg new file mode 100644 index 00000000..8fee2691 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Html5.WebForms.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Html5.WebForms.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Html5.WebForms.17.1.23.718.nupkg new file mode 100644 index 00000000..64f6f23b Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Html5.WebForms.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Mvc.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Mvc.17.0.23.315.nupkg new file mode 100644 index 00000000..e247f007 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Mvc.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Mvc.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Mvc.17.1.23.718.nupkg new file mode 100644 index 00000000..a9f70c48 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Mvc.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinForms.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinForms.17.0.23.315.nupkg new file mode 100644 index 00000000..2d6ff585 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinForms.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinForms.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinForms.17.1.23.718.nupkg new file mode 100644 index 00000000..565c7472 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinForms.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinUI.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinUI.17.0.23.315.nupkg new file mode 100644 index 00000000..07bf588b Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinUI.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinUI.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinUI.17.1.23.718.nupkg new file mode 100644 index 00000000..5c3d0397 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.WinUI.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.17.0.23.315.nupkg new file mode 100644 index 00000000..3c2c2494 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.17.1.23.718.nupkg new file mode 100644 index 00000000..aa66c79e Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.Themes.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.Themes.17.0.23.315.nupkg new file mode 100644 index 00000000..3aa503ee Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.Themes.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.Themes.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.Themes.17.1.23.718.nupkg new file mode 100644 index 00000000..27c4b518 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.ReportViewer.Wpf.Themes.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.17.0.23.315.nupkg new file mode 100644 index 00000000..1eb635fb Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.17.1.23.718.nupkg new file mode 100644 index 00000000..43db23e6 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Adomd.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Adomd.17.0.23.315.nupkg new file mode 100644 index 00000000..c7cb14f7 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Adomd.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Adomd.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Adomd.17.1.23.718.nupkg new file mode 100644 index 00000000..41717624 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Adomd.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.Database.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.Database.17.0.23.315.nupkg new file mode 100644 index 00000000..8954912c Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.Database.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.Database.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.Database.17.1.23.718.nupkg new file mode 100644 index 00000000..68230bb4 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.Database.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.17.0.23.315.nupkg new file mode 100644 index 00000000..0950b16c Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.17.1.23.718.nupkg new file mode 100644 index 00000000..57a746f6 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.2.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.2.17.0.23.315.nupkg new file mode 100644 index 00000000..2e8f359a Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.2.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.2.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.2.17.1.23.718.nupkg new file mode 100644 index 00000000..6a7cea3d Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Cache.StackExchangeRedis.2.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.JsonSerialization.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.JsonSerialization.17.0.23.315.nupkg new file mode 100644 index 00000000..4d89f01f Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.JsonSerialization.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.JsonSerialization.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.JsonSerialization.17.1.23.718.nupkg new file mode 100644 index 00000000..e05b5c52 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.JsonSerialization.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.OpenXmlRendering.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.OpenXmlRendering.17.0.23.315.nupkg new file mode 100644 index 00000000..d182f08a Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.OpenXmlRendering.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.OpenXmlRendering.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.OpenXmlRendering.17.1.23.718.nupkg new file mode 100644 index 00000000..105ad728 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.OpenXmlRendering.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.AspNetCore.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.AspNetCore.17.0.23.315.nupkg new file mode 100644 index 00000000..7cd9b22a Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.AspNetCore.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.AspNetCore.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.AspNetCore.17.1.23.718.nupkg new file mode 100644 index 00000000..fd57af17 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.AspNetCore.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.HttpClient.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.HttpClient.17.0.23.315.nupkg new file mode 100644 index 00000000..c019ae02 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.HttpClient.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.HttpClient.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.HttpClient.17.1.23.718.nupkg new file mode 100644 index 00000000..bae97d09 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.HttpClient.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.ServiceStack.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.ServiceStack.17.0.23.315.nupkg new file mode 100644 index 00000000..499576eb Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.ServiceStack.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.ServiceStack.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.ServiceStack.17.1.23.718.nupkg new file mode 100644 index 00000000..eb421ce5 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.ServiceStack.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.WebApi.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.WebApi.17.0.23.315.nupkg new file mode 100644 index 00000000..72e4e344 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.WebApi.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.WebApi.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.WebApi.17.1.23.718.nupkg new file mode 100644 index 00000000..b4cd0106 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.Services.WebApi.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.WebServiceDataSource.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.WebServiceDataSource.17.0.23.315.nupkg new file mode 100644 index 00000000..34abde7c Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.WebServiceDataSource.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.WebServiceDataSource.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.WebServiceDataSource.17.1.23.718.nupkg new file mode 100644 index 00000000..adb06391 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.Reporting.WebServiceDataSource.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Blazor.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Blazor.17.0.23.315.nupkg new file mode 100644 index 00000000..fb8e96c1 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Blazor.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Blazor.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Blazor.17.1.23.718.nupkg new file mode 100644 index 00000000..45000459 Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Blazor.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Services.17.0.23.315.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Services.17.0.23.315.nupkg new file mode 100644 index 00000000..349e332d Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Services.17.0.23.315.nupkg differ diff --git a/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Services.17.1.23.718.nupkg b/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Services.17.1.23.718.nupkg new file mode 100644 index 00000000..f065519e Binary files /dev/null and b/BMA.EHR.ReportGenerator/Components/Telerik.WebReportDesigner.Services.17.1.23.718.nupkg differ diff --git a/BMA.EHR.ReportGenerator/GenericReportGenerator.cs b/BMA.EHR.ReportGenerator/GenericReportGenerator.cs new file mode 100644 index 00000000..a213e08f --- /dev/null +++ b/BMA.EHR.ReportGenerator/GenericReportGenerator.cs @@ -0,0 +1,64 @@ +using Microsoft.Extensions.Configuration; +using Telerik.Reporting; +using Telerik.Reporting.Processing; + +namespace BMA.EHR.ReportGenerator +{ + public class GenericReportGenerator + { + #region " Fields " + + private readonly IConfiguration _configuration; + + #endregion + + #region " Constructor and Destructor " + + public GenericReportGenerator(IConfiguration configuration) + { + _configuration = configuration; + } + + #endregion + + #region " Methods " + + public virtual byte[] GenerateReport(string fileName, string exportType) + { + try + { + //var rptFile = Path.Combine("Reports", fileName); + + ReportPackager reportPackager = new ReportPackager(); + Telerik.Reporting.Report? report = null; + using (var sourceStream = System.IO.File.OpenRead(fileName)) + { + report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); + } + + //report.DataSource = command; + + System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); + + InstanceReportSource instanceReportSource = new InstanceReportSource() + { + ReportDocument = report + }; + + + ReportProcessor reportProcessor = new ReportProcessor(_configuration); + RenderingResult result = reportProcessor.RenderReport(exportType, instanceReportSource, deviceInfo); + + var content = result.DocumentBytes; + + return content; + } + catch + { + throw; + } + } + + #endregion + } +} \ No newline at end of file diff --git a/BMA.EHR.ReportGenerator/ReportGeneratorServicesRegistration.cs b/BMA.EHR.ReportGenerator/ReportGeneratorServicesRegistration.cs new file mode 100644 index 00000000..a7826332 --- /dev/null +++ b/BMA.EHR.ReportGenerator/ReportGeneratorServicesRegistration.cs @@ -0,0 +1,14 @@ +using Microsoft.Extensions.DependencyInjection; + +namespace BMA.EHR.ReportGenerator +{ + public static class ReportGeneratorServicesRegistration + { + public static IServiceCollection AddReportGenerator(this IServiceCollection services) + { + services.AddTransient(); + + return services; + } + } +} diff --git a/BMA.EHR.ReportGenerator/nuget.config b/BMA.EHR.ReportGenerator/nuget.config new file mode 100644 index 00000000..7d34cfc1 --- /dev/null +++ b/BMA.EHR.ReportGenerator/nuget.config @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/BMA.EHR.ReportGenerator/runtimeconfig.template.json b/BMA.EHR.ReportGenerator/runtimeconfig.template.json new file mode 100644 index 00000000..e3ad204d --- /dev/null +++ b/BMA.EHR.ReportGenerator/runtimeconfig.template.json @@ -0,0 +1,5 @@ +{ + "configProperties": { + "System.Drawing.EnableUnixSupport": true + } +} \ No newline at end of file diff --git a/BMA.EHR.ReportV2.Service/BMA.EHR.ReportV2.Service.csproj b/BMA.EHR.ReportV2.Service/BMA.EHR.ReportV2.Service.csproj new file mode 100644 index 00000000..da28fd4c --- /dev/null +++ b/BMA.EHR.ReportV2.Service/BMA.EHR.ReportV2.Service.csproj @@ -0,0 +1,671 @@ + + + + net7.0 + enable + enable + 7a4e5b6f-8770-4563-bef2-517999d37b32 + Linux + True + . + BMA.EHR.ReportV2.Service + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + + + + + + + + + all + runtime; build; native; contentfiles; analyzers; buildtransitive + + + + + + + + + + + + + + + + + + + + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + + diff --git a/BMA.EHR.ReportV2.Service/ConfigureSwaggerOptions.cs b/BMA.EHR.ReportV2.Service/ConfigureSwaggerOptions.cs new file mode 100644 index 00000000..e7c6dd0c --- /dev/null +++ b/BMA.EHR.ReportV2.Service/ConfigureSwaggerOptions.cs @@ -0,0 +1,84 @@ +using Microsoft.AspNetCore.Mvc.ApiExplorer; +using Microsoft.Extensions.Options; +using Microsoft.OpenApi.Models; +using Swashbuckle.AspNetCore.SwaggerGen; +using System.Reflection; + +namespace BMA.EHR.ReportV2.Service +{ + public class ConfigureSwaggerOptions : IConfigureNamedOptions + { + private readonly IApiVersionDescriptionProvider _provider; + + public ConfigureSwaggerOptions( + IApiVersionDescriptionProvider provider) + { + _provider = provider; + } + + public void Configure(SwaggerGenOptions options) + { + // add swagger document for every API version discovered + foreach (var description in _provider.ApiVersionDescriptions) + { + options.EnableAnnotations(); + + options.SwaggerDoc( + description.GroupName, + CreateVersionInfo(description)); + } + + options.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme + { + In = ParameterLocation.Header, + Description = "Please enter a valid token", + Name = "Authorization", + Type = SecuritySchemeType.Http, + BearerFormat = "JWT", + Scheme = "Bearer" + }); + + options.AddSecurityRequirement(new OpenApiSecurityRequirement + { + { + new OpenApiSecurityScheme + { + Reference = new OpenApiReference + { + Type = ReferenceType.SecurityScheme, + Id = "Bearer" + } + }, + new string[]{} + } + }); + + // generate the XML docs that'll drive the swagger docs + var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml"; + var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); + options.IncludeXmlComments(xmlPath); + } + + public void Configure(string name, SwaggerGenOptions options) + { + Configure(options); + } + + private OpenApiInfo CreateVersionInfo( + ApiVersionDescription desc) + { + var info = new OpenApiInfo() + { + Title = "BMA EHR Report(V2) Service Document", + Version = desc.ApiVersion.ToString() + }; + + if (desc.IsDeprecated) + { + info.Description += " This API version has been deprecated. Please use one of the new APIs available from the explorer."; + } + + return info; + } + } +} diff --git a/BMA.EHR.ReportV2.Service/Controllers/CommandReportController.cs b/BMA.EHR.ReportV2.Service/Controllers/CommandReportController.cs new file mode 100644 index 00000000..2d54a187 --- /dev/null +++ b/BMA.EHR.ReportV2.Service/Controllers/CommandReportController.cs @@ -0,0 +1,1312 @@ +using BMA.EHR.ReportGenerator; +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; +using Swashbuckle.AspNetCore.Annotations; + +namespace BMA.EHR.ReportV2.Service.Controllers +{ + [Route("api/v{version:apiVersion}/report/order")] + [ApiVersion("2.0")] + [ApiController] + [Produces("application/json")] + [Authorize] + [SwaggerTag("API รายงานระบบออกคำสั่ง")] + public class CommandReportController : ControllerBase + { + #region " Fields " + + private readonly GenericReportGenerator _reportGenerator; + private readonly IWebHostEnvironment _hostingEnvironment; + + #endregion + + #region " Constructor and Destructor " + + public CommandReportController(GenericReportGenerator reportGenerator, + IWebHostEnvironment hostEnvironment) + { + _reportGenerator = reportGenerator; + _hostingEnvironment = hostEnvironment; + } + + #endregion + + #region " Methods " + + #region " C-PM-01 คำสั่งบรรจุและแต่งตั้ง: สำหรับผู้สอบแข่งขันได้ " + + /// + /// คำสั่ง C-PM-01 คำสั่งบรรจุและแต่งตั้ง: สำหรับผู้สอบแข่งขันได้ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-01/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType01CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-1.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-01 คำสั่งบรรจุและแต่งตั้ง: สำหรับผู้สอบแข่งขันได้ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-01/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType01AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-2.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-02 คำสั่งบรรจุและแต่งตั้ง: สำหรับผู้ได้รับคัดเลือก " + + /// + /// คำสั่ง C-PM-02 คำสั่งบรรจุและแต่งตั้ง: สำหรับผู้ได้รับคัดเลือก + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-02/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType02CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-3.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-02 คำสั่งบรรจุและแต่งตั้ง: สำหรับผู้ได้รับคัดเลือก + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-02/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType02AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-4.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-03 คำสั่งแต่งตั้ง : สำหรับข้าราชการ กทม. เดิม " + + /// + /// คำสั่ง C-PM-03 คำสั่งแต่งตั้ง : สำหรับข้าราชการ กทม. เดิม + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-03/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType03CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"03-คำสั่งแต่งตั้งผู้สอบแข่งขัน-Head.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-03 คำสั่งแต่งตั้ง : สำหรับข้าราชการ กทม. เดิม + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-03/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType03AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"03-คำสั่งแต่งตั้งผู้สอบแข่งขัน.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-04 คำสั่งย้าย : สำหรับข้าราชการ กทม. เดิม " + + /// + /// คำสั่ง C-PM-04 คำสั่งย้าย : สำหรับข้าราชการ กทม. เดิม + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-04/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType04CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"04-คำสั่งย้ายผู้สอบแข่งขัน-Head.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-04 คำสั่งย้าย : สำหรับข้าราชการ กทม. เดิม + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-04/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType04AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"04-คำสั่งย้ายผู้สอบแข่งขัน.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-05 คำสั่งแต่งตั้ง " + + /// + /// คำสั่ง C-PM-05 คำสั่งแต่งตั้ง + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-05/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType05CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"05-06-คำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-05 คำสั่งแต่งตั้ง + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-05/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType05AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"05-06-แนบท้ายคำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-06 คำสั่งเลื่อน " + + /// + /// คำสั่ง C-PM-06 คำสั่งเลื่อน + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-06/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType06CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"05-06-คำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-06 คำสั่งเลื่อน + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-06/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType06AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"05-06-แนบท้ายคำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-07 คำสั่งย้าย " + + /// + /// คำสั่ง C-PM-07 คำสั่งย้าย + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-07/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType07CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"07-คำสั่งย้าย.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-07 คำสั่งย้าย + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-07/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType07AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"07-แนบท้ายคำสั่งย้าย.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-08 คำสั่งบรรจุและแต่งตั้งข้าราชการฯ กลับเข้ารับราชการ " + + /// + /// คำสั่ง C-PM-08 คำสั่งบรรจุและแต่งตั้งข้าราชการฯ กลับเข้ารับราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-08/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType08CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-5.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-08 คำสั่งบรรจุและแต่งตั้งข้าราชการฯ กลับเข้ารับราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-08/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType08AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-6.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-09 คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ " + + /// + /// คำสั่ง C-PM-09 คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-09/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType09CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-7.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-09 คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-09/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType09AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-8.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-10 คำสั่งแต่งตั้งคณะกรรมการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ " + + /// + /// คำสั่ง C-PM-10 คำสั่งแต่งตั้งคณะกรรมการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-10/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType10CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"10-แต่งตั้งคณะกรรมการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-11 คำสั่งให้ข้าราชการที่มีผลการทดลองปฏิบัติหน้าที่ราชการไม่ต่ำกว่ามาตรฐานที่กำหนดรับราชการต่อไป " + + /// + /// คำสั่ง C-PM-11 คำสั่งให้ข้าราชการที่มีผลการทดลองปฏิบัติหน้าที่ราชการไม่ต่ำกว่ามาตรฐานที่กำหนดรับราชการต่อไป + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-11/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType11CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"11-คำสั่งให้ข้าราชการที่ผ่านการประเมิน รับราชการต่อไป.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-12 คำสั่งให้ข้าราชการออกจากราชการเพราะผลการทดลองปฏิบัติหน้าที่ราชการต่ำกว่ามาตรฐานที่กำหนด " + + /// + /// คำสั่ง C-PM-12 คำสั่งให้ข้าราชการออกจากราชการเพราะผลการทดลองปฏิบัติหน้าที่ราชการต่ำกว่ามาตรฐานที่กำหนด + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-12/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType12CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"12-คำสั่งให้ข้าราชการที่ไม่ผ่านการประเมิน ออกจากราชการ.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-13 คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ " + + /// + /// คำสั่ง C-PM-13 คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-13/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType13CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-1.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-13 คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-13/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType13AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-2.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-14 คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ " + + /// + /// คำสั่ง C-PM-14 คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-14/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType14CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-5.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-14 คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-14/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType14AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ5-10.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-15 คำสั่งให้ช่วยราชการ " + + /// + /// คำสั่ง C-PM-15 คำสั่งให้ช่วยราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-15/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType15CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + return StatusCode(500, new { message = "ยังไม่มีไฟล์ Template สำหรับสร้างรายงาน!!" }); + + //var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp"); + //var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + //return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-16 คำสั่งส่งตัวกลับ " + + /// + /// คำสั่ง C-PM-16 คำสั่งส่งตัวกลับ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-16/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType16CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + return StatusCode(500, new { message = "ยังไม่มีไฟล์ Template สำหรับสร้างรายงาน!!" }); + + //var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp"); + //var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + //return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-17 คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ " + + /// + /// คำสั่ง C-PM-17 คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-17/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType17CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + /// + /// เอกสารแนบท้าย C-PM-17 คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-17/attachment/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType17AttachmentReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-5.trdp"); + var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + return File(contentData, mimeType, $"command-attachment.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-18 คำสั่งให้ออกจากราชการ " + + /// + /// คำสั่ง C-PM-18 คำสั่งให้ออกจากราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-18/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType18CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + return StatusCode(500, new { message = "ยังไม่มีไฟล์ Template สำหรับสร้างรายงาน!!" }); + + //var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp"); + //var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + //return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-19 คำสั่งปลดออกจากราชการ " + + /// + /// คำสั่ง C-PM-19 คำสั่งปลดออกจากราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-19/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType19CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + return StatusCode(500, new { message = "ยังไม่มีไฟล์ Template สำหรับสร้างรายงาน!!" }); + + //var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp"); + //var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + //return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #region " C-PM-20 คำสั่งไล่ออกจากราชการ " + + /// + /// คำสั่ง C-PM-20 คำสั่งไล่ออกจากราชการ + /// + /// Record Id ของคำสั่ง + /// pdf, docx หรือ xlsx + /// + /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ + /// ไม่ได้ Login เข้าระบบ + /// เมื่อเกิดข้อผิดพลาดในการทำงาน + [HttpGet("c-pm-20/cover/{exportType}/{id}")] + [AllowAnonymous] + [ProducesResponseType(StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + public IActionResult GetCommandType20CoverReport(Guid id, string exportType = "pdf") + { + try + { + var mimeType = ""; + switch (exportType.Trim().ToLower()) + { + case "pdf": mimeType = "application/pdf"; break; + case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break; + case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break; + } + + return StatusCode(500, new { message = "ยังไม่มีไฟล์ Template สำหรับสร้างรายงาน!!" }); + + //var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp"); + //var contentData = _reportGenerator.GenerateReport(rptFile, exportType); + + //return File(contentData, mimeType, $"command.{exportType.Trim().ToLower()}"); + } + catch + { + throw; + } + } + + #endregion + + #endregion + } +} diff --git a/BMA.EHR.ReportV2.Service/Dockerfile b/BMA.EHR.ReportV2.Service/Dockerfile new file mode 100644 index 00000000..b6810c6d --- /dev/null +++ b/BMA.EHR.ReportV2.Service/Dockerfile @@ -0,0 +1,43 @@ +FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base +WORKDIR /app +EXPOSE 80 +EXPOSE 443 + +FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build +WORKDIR /src + +#COPY ["BMA.EHR.Domain/BMA.EHR.Domain.csproj", "BMA.EHR.Domain/"] +#COPY ["BMA.EHR.Application/BMA.EHR.Application.csproj", "BMA.EHR.Application/"] +#COPY ["BMA.EHR.Infrastructure/BMA.EHR.Infrastructure.csproj", "BMA.EHR.Infrastructure/"] +COPY ["BMA.EHR.ReportGenerator/BMA.EHR.ReportGenerator.csproj", "BMA.EHR.ReportGenerator/"] +COPY ["BMA.EHR.ReportV2.Service/BMA.EHR.ReportV2.Service.csproj", "BMA.EHR.ReportV2.Service/"] + +COPY ./BMA.EHR.ReportGenerator/Components ./BMA.EHR.ReportGenerator/Components +COPY ./BMA.EHR.ReportGenerator/nuget.config ./BMA.EHR.ReportGenerator/ + +RUN dotnet restore "BMA.EHR.ReportGenerator/BMA.EHR.ReportGenerator.csproj" + +RUN dotnet restore "BMA.EHR.ReportV2.Service/BMA.EHR.ReportV2.Service.csproj" +COPY . . +WORKDIR "/src/BMA.EHR.ReportV2.Service" +RUN dotnet build "BMA.EHR.ReportV2.Service.csproj" -c Release -o /app/build + +FROM build AS publish +RUN dotnet publish "BMA.EHR.ReportV2.Service.csproj" -c Release -o /app/publish /p:UseAppHost=false + +FROM base AS final + +RUN apt-get update && apt-get -y install fontconfig && apt-get install -y --allow-unauthenticated libgdiplus libc6-dev libx11-dev && rm -rf /var/lib/apt/lists/* +COPY ./BMA.EHR.Report.Service/Fonts/THSarabunIT.ttf /usr/share/fonts/truetype/ +COPY ./BMA.EHR.Report.Service/Fonts/THSarabunITBold.ttf /usr/share/fonts/truetype/ +COPY ./BMA.EHR.Report.Service/Fonts/THSarabunITItalic.ttf /usr/share/fonts/truetype/ +COPY ./BMA.EHR.Report.Service/Fonts/THSarabunITBoldItalic.ttf /usr/share/fonts/truetype/ +COPY ./BMA.EHR.Report.Service/Fonts/THSarabunNew.ttf /usr/share/fonts/truetype/ +COPY ./BMA.EHR.Report.Service/Fonts/THSarabunNewBold.ttf /usr/share/fonts/truetype/ +COPY ./BMA.EHR.Report.Service/Fonts/THSarabunNewItalic.ttf /usr/share/fonts/truetype/ +COPY ./BMA.EHR.Report.Service/Fonts/THSarabunNewBoldItalic.ttf /usr/share/fonts/truetype/ +RUN fc-cache -f -v + +WORKDIR /app +COPY --from=publish /app/publish . +ENTRYPOINT ["dotnet", "BMA.EHR.ReportV2.Service.dll"] \ No newline at end of file diff --git a/BMA.EHR.ReportV2.Service/Fonts/THSarabunIT.ttf b/BMA.EHR.ReportV2.Service/Fonts/THSarabunIT.ttf new file mode 100644 index 00000000..d5d56bfd Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Fonts/THSarabunIT.ttf differ diff --git a/BMA.EHR.ReportV2.Service/Fonts/THSarabunITBold.ttf b/BMA.EHR.ReportV2.Service/Fonts/THSarabunITBold.ttf new file mode 100644 index 00000000..e8651045 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Fonts/THSarabunITBold.ttf differ diff --git a/BMA.EHR.ReportV2.Service/Fonts/THSarabunITBoldItalic.ttf b/BMA.EHR.ReportV2.Service/Fonts/THSarabunITBoldItalic.ttf new file mode 100644 index 00000000..b105a1b5 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Fonts/THSarabunITBoldItalic.ttf differ diff --git a/BMA.EHR.ReportV2.Service/Fonts/THSarabunITItalic.ttf b/BMA.EHR.ReportV2.Service/Fonts/THSarabunITItalic.ttf new file mode 100644 index 00000000..cb58ca2a Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Fonts/THSarabunITItalic.ttf differ diff --git a/BMA.EHR.ReportV2.Service/Fonts/THSarabunNew.ttf b/BMA.EHR.ReportV2.Service/Fonts/THSarabunNew.ttf new file mode 100644 index 00000000..13c55aee Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Fonts/THSarabunNew.ttf differ diff --git a/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewBold.ttf b/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewBold.ttf new file mode 100644 index 00000000..a059996b Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewBold.ttf differ diff --git a/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewBoldItalic.ttf b/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewBoldItalic.ttf new file mode 100644 index 00000000..e38f6d2f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewBoldItalic.ttf differ diff --git a/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewItalic.ttf b/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewItalic.ttf new file mode 100644 index 00000000..15312bc0 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Fonts/THSarabunNewItalic.ttf differ diff --git a/BMA.EHR.ReportV2.Service/Program.cs b/BMA.EHR.ReportV2.Service/Program.cs new file mode 100644 index 00000000..d690be48 --- /dev/null +++ b/BMA.EHR.ReportV2.Service/Program.cs @@ -0,0 +1,158 @@ +using Microsoft.AspNetCore.Authentication.JwtBearer; +using Microsoft.AspNetCore.Mvc.Versioning; +using Microsoft.AspNetCore.Mvc; +using Microsoft.IdentityModel.Logging; +using Microsoft.IdentityModel.Tokens; +using Serilog; +using System.Text; +using BMA.EHR.ReportV2.Service; +using BMA.EHR.ReportGenerator; +using Serilog.Exceptions; +using Serilog.Sinks.Elasticsearch; +using System.Reflection; +using Microsoft.AspNetCore.Mvc.ApiExplorer; + +var builder = WebApplication.CreateBuilder(args); +{ + var issuer = builder.Configuration["Jwt:Issuer"]; + var key = builder.Configuration["Jwt:Key"]; + + + IdentityModelEventSource.ShowPII = true; + + builder.Services.AddHttpContextAccessor(); + + builder.Services.AddApiVersioning(opt => + { + opt.DefaultApiVersion = new ApiVersion(1, 0); + opt.AssumeDefaultVersionWhenUnspecified = true; + opt.ReportApiVersions = true; + opt.ApiVersionReader = ApiVersionReader.Combine(new UrlSegmentApiVersionReader(), + new HeaderApiVersionReader("x-api-version"), + new MediaTypeApiVersionReader("x-api-version")); + }); + + builder.Services.AddVersionedApiExplorer(setup => + { + setup.GroupNameFormat = "'v'VVV"; + setup.SubstituteApiVersionInUrl = true; + }); + + builder.Services.AddEndpointsApiExplorer(); + + // Authorization + builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme).AddJwtBearer(opt => + { + opt.RequireHttpsMetadata = false; //false for dev + opt.Authority = issuer; + opt.TokenValidationParameters = new() + { + ValidateIssuer = true, + ValidateAudience = false, + ValidateLifetime = true, + ValidateIssuerSigningKey = true, + ValidIssuer = issuer, + IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(key)) + }; + }); + builder.Services.AddAuthorization(); + + // use serilog + ConfigureLogs(); + builder.Host.UseSerilog(); + + // Add config CORS + builder.Services.AddCors(options => options.AddDefaultPolicy(builder => + { + builder + .AllowAnyOrigin() + .AllowAnyMethod() + .AllowAnyHeader() + .SetIsOriginAllowedToAllowWildcardSubdomains(); + })); + + + // Add services to the container. + builder.Services.AddReportGenerator(); + // builder.Services.AddApplication(); + // builder.Services.AddPersistence(builder.Configuration); + + builder.Services.AddControllers(options => + { + options.SuppressAsyncSuffixInActionNames = false; + }) + .AddNewtonsoftJson(x => x.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore); + + builder.Services.AddSwaggerGen(); + builder.Services.ConfigureOptions(); + + builder.Services.AddHealthChecks(); +} + + +var app = builder.Build(); +{ + var apiVersionDescriptionProvider = app.Services.GetRequiredService(); + + if (app.Environment.IsDevelopment()) + { + app.UseSwagger(); + app.UseSwaggerUI(options => + { + foreach (var description in apiVersionDescriptionProvider.ApiVersionDescriptions) + { + options.SwaggerEndpoint($"/swagger/{description.GroupName}/swagger.json", + description.GroupName.ToUpperInvariant()); + } + }); + } + + app.MapHealthChecks("/health"); + + + app.UseHttpsRedirection(); + app.UseCors(); + app.UseAuthentication(); + app.UseAuthorization(); + app.UseDefaultFiles(); + app.UseStaticFiles(); + app.MapControllers(); + //app.UseMiddleware(); + + // apply migrations + //await using var scope = app.Services.CreateAsyncScope(); + //await using var db = scope.ServiceProvider.GetRequiredService(); + //await db.Database.MigrateAsync(); + + app.Run(); +} + +void ConfigureLogs() +{ + var environment = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); + var configuration = new ConfigurationBuilder() + .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true) + .AddJsonFile( + $"appsettings.{Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT")}.json", + optional: true) + .Build(); + + Log.Logger = new LoggerConfiguration() + .Enrich.FromLogContext() + .MinimumLevel.Error() + .WriteTo.Console() + .Enrich.WithExceptionDetails() + .WriteTo.Elasticsearch(ConfigureElasticSink(configuration, environment ?? "")) + .Enrich.WithProperty("Environment", environment) + .ReadFrom.Configuration(configuration) + .CreateLogger(); +} + +ElasticsearchSinkOptions ConfigureElasticSink(IConfigurationRoot configuration, string environment) +{ + return new ElasticsearchSinkOptions(new Uri(configuration["ElasticConfiguration:Uri"] ?? "")) + { + AutoRegisterTemplate = true, + IndexFormat = $"{Assembly.GetExecutingAssembly()?.GetName()?.Name?.ToLower().Replace(".", "-")}-{environment?.ToLower().Replace(".", "-")}" + }; +} diff --git a/BMA.EHR.ReportV2.Service/Properties/launchSettings.json b/BMA.EHR.ReportV2.Service/Properties/launchSettings.json new file mode 100644 index 00000000..bfd5c98e --- /dev/null +++ b/BMA.EHR.ReportV2.Service/Properties/launchSettings.json @@ -0,0 +1,48 @@ +{ + "profiles": { + "http": { + "commandName": "Project", + "launchBrowser": true, + "launchUrl": "swagger", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "dotnetRunMessages": true, + "applicationUrl": "http://localhost:5089" + }, + "https": { + "commandName": "Project", + "launchBrowser": true, + "launchUrl": "swagger", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "dotnetRunMessages": true, + "applicationUrl": "https://localhost:7094;http://localhost:5089" + }, + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "launchUrl": "swagger", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "Docker": { + "commandName": "Docker", + "launchBrowser": true, + "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/swagger", + "publishAllPorts": true, + "useSSL": true + } + }, + "$schema": "https://json.schemastore.org/launchsettings.json", + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:17826", + "sslPort": 44315 + } + } +} \ No newline at end of file diff --git a/BMA.EHR.ReportV2.Service/Reports/01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-1.trdp b/BMA.EHR.ReportV2.Service/Reports/01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-1.trdp new file mode 100644 index 00000000..5ca6ca92 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-2.trdp b/BMA.EHR.ReportV2.Service/Reports/01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-2.trdp new file mode 100644 index 00000000..552737f5 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-3.trdp b/BMA.EHR.ReportV2.Service/Reports/02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-3.trdp new file mode 100644 index 00000000..5010ffc4 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-4.trdp b/BMA.EHR.ReportV2.Service/Reports/02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-4.trdp new file mode 100644 index 00000000..c8c175ab Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/03-คำสั่งแต่งตั้งผู้สอบแข่งขัน-Head.trdp b/BMA.EHR.ReportV2.Service/Reports/03-คำสั่งแต่งตั้งผู้สอบแข่งขัน-Head.trdp new file mode 100644 index 00000000..91ab6d79 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/03-คำสั่งแต่งตั้งผู้สอบแข่งขัน-Head.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/03-คำสั่งแต่งตั้งผู้สอบแข่งขัน.trdp b/BMA.EHR.ReportV2.Service/Reports/03-คำสั่งแต่งตั้งผู้สอบแข่งขัน.trdp new file mode 100644 index 00000000..2fabcfd8 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/03-คำสั่งแต่งตั้งผู้สอบแข่งขัน.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/04-คำสั่งย้ายผู้สอบแข่งขัน-Head.trdp b/BMA.EHR.ReportV2.Service/Reports/04-คำสั่งย้ายผู้สอบแข่งขัน-Head.trdp new file mode 100644 index 00000000..4d4e757a Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/04-คำสั่งย้ายผู้สอบแข่งขัน-Head.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/04-คำสั่งย้ายผู้สอบแข่งขัน.trdp b/BMA.EHR.ReportV2.Service/Reports/04-คำสั่งย้ายผู้สอบแข่งขัน.trdp new file mode 100644 index 00000000..1e60f1d8 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/04-คำสั่งย้ายผู้สอบแข่งขัน.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/05-06-คำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp b/BMA.EHR.ReportV2.Service/Reports/05-06-คำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp new file mode 100644 index 00000000..686219d9 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/05-06-คำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/05-06-แนบท้ายคำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp b/BMA.EHR.ReportV2.Service/Reports/05-06-แนบท้ายคำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp new file mode 100644 index 00000000..b79be7ac Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/05-06-แนบท้ายคำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/07-คำสั่งย้าย.trdp b/BMA.EHR.ReportV2.Service/Reports/07-คำสั่งย้าย.trdp new file mode 100644 index 00000000..50172123 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/07-คำสั่งย้าย.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/07-แนบท้ายคำสั่งย้าย.trdp b/BMA.EHR.ReportV2.Service/Reports/07-แนบท้ายคำสั่งย้าย.trdp new file mode 100644 index 00000000..aede6a4e Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/07-แนบท้ายคำสั่งย้าย.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-5.trdp b/BMA.EHR.ReportV2.Service/Reports/08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-5.trdp new file mode 100644 index 00000000..85021603 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-5.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-6.trdp b/BMA.EHR.ReportV2.Service/Reports/08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-6.trdp new file mode 100644 index 00000000..ca16da37 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-6.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-7.trdp b/BMA.EHR.ReportV2.Service/Reports/09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-7.trdp new file mode 100644 index 00000000..56c43d29 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-7.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-8.trdp b/BMA.EHR.ReportV2.Service/Reports/09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-8.trdp new file mode 100644 index 00000000..c4864a0b Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-8.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/10-แต่งตั้งคณะกรรมการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ.trdp b/BMA.EHR.ReportV2.Service/Reports/10-แต่งตั้งคณะกรรมการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ.trdp new file mode 100644 index 00000000..4ae38b8b Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/10-แต่งตั้งคณะกรรมการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/11-คำสั่งให้ข้าราชการที่ผ่านการประเมิน รับราชการต่อไป.trdp b/BMA.EHR.ReportV2.Service/Reports/11-คำสั่งให้ข้าราชการที่ผ่านการประเมิน รับราชการต่อไป.trdp new file mode 100644 index 00000000..079b8903 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/11-คำสั่งให้ข้าราชการที่ผ่านการประเมิน รับราชการต่อไป.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/12-คำสั่งให้ข้าราชการที่ไม่ผ่านการประเมิน ออกจากราชการ.trdp b/BMA.EHR.ReportV2.Service/Reports/12-คำสั่งให้ข้าราชการที่ไม่ผ่านการประเมิน ออกจากราชการ.trdp new file mode 100644 index 00000000..f99af7d9 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/12-คำสั่งให้ข้าราชการที่ไม่ผ่านการประเมิน ออกจากราชการ.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-1.trdp b/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-1.trdp new file mode 100644 index 00000000..f070febf Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-2.trdp b/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-2.trdp new file mode 100644 index 00000000..536ea370 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-3.trdp b/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-3.trdp new file mode 100644 index 00000000..9da3be1f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/13-แบบมอบหมายงานการทดลองปฏิบัติหน้าที่ราชการ-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-1.trdp b/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-1.trdp new file mode 100644 index 00000000..d1fb10ba Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-2.trdp b/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-2.trdp new file mode 100644 index 00000000..6fe99ba6 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-3.trdp b/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-3.trdp new file mode 100644 index 00000000..dff42245 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-4.trdp b/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-4.trdp new file mode 100644 index 00000000..06da9fb9 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/14-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้ดูแล-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-1.trdp b/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-1.trdp new file mode 100644 index 00000000..4ec23444 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-2.trdp b/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-2.trdp new file mode 100644 index 00000000..918bcf5f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-3.trdp b/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-3.trdp new file mode 100644 index 00000000..dc7b067e Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-4.trdp b/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-4.trdp new file mode 100644 index 00000000..dccb34e6 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/15-แบบบันทึกผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/16-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-1.trdp b/BMA.EHR.ReportV2.Service/Reports/16-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-1.trdp new file mode 100644 index 00000000..c396769d Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/16-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/16-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-2.trdp b/BMA.EHR.ReportV2.Service/Reports/16-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-2.trdp new file mode 100644 index 00000000..8b0a1a19 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/16-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับผู้บังคับบัญชา-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-1.trdp b/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-1.trdp new file mode 100644 index 00000000..67f391b6 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-2.trdp b/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-2.trdp new file mode 100644 index 00000000..25fda0ed Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-3.trdp b/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-3.trdp new file mode 100644 index 00000000..2bdbfe6f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/17-แบบประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับคณะกรรมการ-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/18-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับประธาน-1.trdp b/BMA.EHR.ReportV2.Service/Reports/18-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับประธาน-1.trdp new file mode 100644 index 00000000..66d32350 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/18-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับประธาน-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/18-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับประธาน-2.trdp b/BMA.EHR.ReportV2.Service/Reports/18-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับประธาน-2.trdp new file mode 100644 index 00000000..98fe641d Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/18-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ สำหรับประธาน-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/19-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ กรณีขยายเวลา.trdp b/BMA.EHR.ReportV2.Service/Reports/19-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ กรณีขยายเวลา.trdp new file mode 100644 index 00000000..e9d8166e Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/19-แบบรายงานการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ กรณีขยายเวลา.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-1.trdp b/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-1.trdp new file mode 100644 index 00000000..90ecf6f2 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-2.trdp b/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-2.trdp new file mode 100644 index 00000000..d22e0795 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-3.trdp b/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-3.trdp new file mode 100644 index 00000000..6e3ca166 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-4.trdp b/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-4.trdp new file mode 100644 index 00000000..f680ecb4 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-5.trdp b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-5.trdp new file mode 100644 index 00000000..07383996 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-5.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-6.trdp b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-6.trdp new file mode 100644 index 00000000..468aa66f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-6.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-7.trdp b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-7.trdp new file mode 100644 index 00000000..745ba152 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-7.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-8.trdp b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-8.trdp new file mode 100644 index 00000000..786818a2 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-8.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-9.trdp b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-9.trdp new file mode 100644 index 00000000..a0e31ba0 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-9.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ5-10.trdp b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ5-10.trdp new file mode 100644 index 00000000..5249de8a Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ5-10.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-1.trdp b/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-1.trdp new file mode 100644 index 00000000..5e28cec7 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-2.trdp b/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-2.trdp new file mode 100644 index 00000000..359c400a Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-3.trdp b/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-3.trdp new file mode 100644 index 00000000..fdf73627 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ.trdp b/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ.trdp new file mode 100644 index 00000000..8bce7808 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/31-ประกาศเกษียณข้าราชการ.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/32-ประกาศเกษียณลูกจ้างประจำ.trdp b/BMA.EHR.ReportV2.Service/Reports/32-ประกาศเกษียณลูกจ้างประจำ.trdp new file mode 100644 index 00000000..bbb55bcf Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/32-ประกาศเกษียณลูกจ้างประจำ.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-1.trdp b/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-1.trdp new file mode 100644 index 00000000..79123977 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-2.trdp b/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-2.trdp new file mode 100644 index 00000000..4508d179 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-3.trdp b/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-3.trdp new file mode 100644 index 00000000..999a8183 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/33-แบบฟอร์มหนังสือขอลาออกจากราชการ-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp b/BMA.EHR.ReportV2.Service/Reports/34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp new file mode 100644 index 00000000..47491558 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-5.trdp b/BMA.EHR.ReportV2.Service/Reports/34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-5.trdp new file mode 100644 index 00000000..0a828c29 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-5.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/39-แบบ ขร1 บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ ข้าราชการ ชั้นสายสะพาย.trdp b/BMA.EHR.ReportV2.Service/Reports/39-แบบ ขร1 บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ ข้าราชการ ชั้นสายสะพาย.trdp new file mode 100644 index 00000000..d86540cd Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/39-แบบ ขร1 บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ ข้าราชการ ชั้นสายสะพาย.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/40-แบบ ขร2 บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ ข้าราชการ ชั้นต่ำกว่าสายสะพาย.trdp b/BMA.EHR.ReportV2.Service/Reports/40-แบบ ขร2 บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ ข้าราชการ ชั้นต่ำกว่าสายสะพาย.trdp new file mode 100644 index 00000000..998092bd Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/40-แบบ ขร2 บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ ข้าราชการ ชั้นต่ำกว่าสายสะพาย.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/41-แบบ ขร3 บัญชีรายชื่อข้าราชการผู้ขอพระราชทานเครื่องราชฯ.trdp b/BMA.EHR.ReportV2.Service/Reports/41-แบบ ขร3 บัญชีรายชื่อข้าราชการผู้ขอพระราชทานเครื่องราชฯ.trdp new file mode 100644 index 00000000..f77f5fdd Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/41-แบบ ขร3 บัญชีรายชื่อข้าราชการผู้ขอพระราชทานเครื่องราชฯ.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/42-แบบ ขร4 บัญชีแสดงคุณสมบัติของข้าราชการซึ่งเสนอขอเครื่องราชฯ.trdp b/BMA.EHR.ReportV2.Service/Reports/42-แบบ ขร4 บัญชีแสดงคุณสมบัติของข้าราชการซึ่งเสนอขอเครื่องราชฯ.trdp new file mode 100644 index 00000000..f852a6df Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/42-แบบ ขร4 บัญชีแสดงคุณสมบัติของข้าราชการซึ่งเสนอขอเครื่องราชฯ.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/43-บัญชีระดับผลการประเมินผลการปฏิบัติราชการในรอบ 5 ปี.trdp b/BMA.EHR.ReportV2.Service/Reports/43-บัญชีระดับผลการประเมินผลการปฏิบัติราชการในรอบ 5 ปี.trdp new file mode 100644 index 00000000..5cf9466c Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/43-บัญชีระดับผลการประเมินผลการปฏิบัติราชการในรอบ 5 ปี.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/44-บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ.trdp b/BMA.EHR.ReportV2.Service/Reports/44-บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ.trdp new file mode 100644 index 00000000..9e56a06d Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/44-บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา.trdp b/BMA.EHR.ReportV2.Service/Reports/45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา.trdp new file mode 100644 index 00000000..0aa2168c Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/46-ประวัติสำหรับการเสนอขอพระราชทานเหรียญจักรพรรดิมาลา.trdp b/BMA.EHR.ReportV2.Service/Reports/46-ประวัติสำหรับการเสนอขอพระราชทานเหรียญจักรพรรดิมาลา.trdp new file mode 100644 index 00000000..0afb030c Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/46-ประวัติสำหรับการเสนอขอพระราชทานเหรียญจักรพรรดิมาลา.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/คำสั่งบรรจุ-examination.trdp b/BMA.EHR.ReportV2.Service/Reports/คำสั่งบรรจุ-examination.trdp new file mode 100644 index 00000000..01366689 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/คำสั่งบรรจุ-examination.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/คำสั่งบรรจุ-examinationHead.trdp b/BMA.EHR.ReportV2.Service/Reports/คำสั่งบรรจุ-examinationHead.trdp new file mode 100644 index 00000000..99cc1f15 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/คำสั่งบรรจุ-examinationHead.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/คำสั่งย้าย-transfer.trdp b/BMA.EHR.ReportV2.Service/Reports/คำสั่งย้าย-transfer.trdp new file mode 100644 index 00000000..1e60f1d8 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/คำสั่งย้าย-transfer.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/คำสั่งย้าย-transferHead.trdp b/BMA.EHR.ReportV2.Service/Reports/คำสั่งย้าย-transferHead.trdp new file mode 100644 index 00000000..4e4fe4d1 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/คำสั่งย้าย-transferHead.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/คำสั่งแต่งตั้ง-appointment.trdp b/BMA.EHR.ReportV2.Service/Reports/คำสั่งแต่งตั้ง-appointment.trdp new file mode 100644 index 00000000..2fabcfd8 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/คำสั่งแต่งตั้ง-appointment.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/คำสั่งแต่งตั้ง-appointmentHead.trdp b/BMA.EHR.ReportV2.Service/Reports/คำสั่งแต่งตั้ง-appointmentHead.trdp new file mode 100644 index 00000000..8430294a Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/คำสั่งแต่งตั้ง-appointmentHead.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-1.trdp new file mode 100644 index 00000000..aed6b1b1 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-2.trdp new file mode 100644 index 00000000..df8d0373 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-3.trdp new file mode 100644 index 00000000..c19d4617 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-4.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-4.trdp new file mode 100644 index 00000000..9394c4f5 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-5.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-5.trdp new file mode 100644 index 00000000..85021603 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-5.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-6.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-6.trdp new file mode 100644 index 00000000..6327dd42 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-6.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-7.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-7.trdp new file mode 100644 index 00000000..221bafee Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-7.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-8.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-8.trdp new file mode 100644 index 00000000..b2da7641 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก23-8.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-1.trdp new file mode 100644 index 00000000..32c1c618 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-2.trdp new file mode 100644 index 00000000..536ea370 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-3.trdp new file mode 100644 index 00000000..9da3be1f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก24-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-1.trdp new file mode 100644 index 00000000..d1fb10ba Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-2.trdp new file mode 100644 index 00000000..6fe99ba6 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-3.trdp new file mode 100644 index 00000000..dff42245 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-4.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-4.trdp new file mode 100644 index 00000000..06da9fb9 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก25-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-1.trdp new file mode 100644 index 00000000..5930abfe Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-2.trdp new file mode 100644 index 00000000..918bcf5f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-3.trdp new file mode 100644 index 00000000..dc7b067e Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-4.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-4.trdp new file mode 100644 index 00000000..dccb34e6 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก26-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก27-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก27-1.trdp new file mode 100644 index 00000000..c396769d Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก27-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก27-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก27-2.trdp new file mode 100644 index 00000000..8b0a1a19 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก27-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-1.trdp new file mode 100644 index 00000000..67f391b6 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-2.trdp new file mode 100644 index 00000000..25fda0ed Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-3.trdp new file mode 100644 index 00000000..2bdbfe6f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก28-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก29-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก29-1.trdp new file mode 100644 index 00000000..66d32350 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก29-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก29-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก29-2.trdp new file mode 100644 index 00000000..98fe641d Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก29-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก30.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก30.trdp new file mode 100644 index 00000000..e9d8166e Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก30.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก31.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก31.trdp new file mode 100644 index 00000000..4ae38b8b Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก31.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก32.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก32.trdp new file mode 100644 index 00000000..07a0fcb6 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก32.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก33.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก33.trdp new file mode 100644 index 00000000..d0a1bc0c Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก33.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-1.trdp new file mode 100644 index 00000000..89b0b7ab Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-10.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-10.trdp new file mode 100644 index 00000000..09085f0a Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-10.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-11.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-11.trdp new file mode 100644 index 00000000..0bb94128 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-11.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-12.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-12.trdp new file mode 100644 index 00000000..bd79004f Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-12.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-13.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-13.trdp new file mode 100644 index 00000000..bce57111 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-13.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-14.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-14.trdp new file mode 100644 index 00000000..876ba558 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-14.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-15.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-15.trdp new file mode 100644 index 00000000..2bb62335 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-15.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-16.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-16.trdp new file mode 100644 index 00000000..de5831aa Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-16.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-17.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-17.trdp new file mode 100644 index 00000000..1960f3cb Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-17.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-18.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-18.trdp new file mode 100644 index 00000000..f388d2d5 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-18.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-19.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-19.trdp new file mode 100644 index 00000000..a0aacf29 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-19.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-2.trdp new file mode 100644 index 00000000..0f639b7a Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-3.trdp new file mode 100644 index 00000000..571ee54b Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-4.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-4.trdp new file mode 100644 index 00000000..a8af1ac9 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-5.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-5.trdp new file mode 100644 index 00000000..2d106767 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-5.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-6.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-6.trdp new file mode 100644 index 00000000..a4ba406d Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-6.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-7.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-7.trdp new file mode 100644 index 00000000..433e2aac Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-7.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-8.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-8.trdp new file mode 100644 index 00000000..27f58877 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-8.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-9.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-9.trdp new file mode 100644 index 00000000..7e3c2d0a Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก34-9.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-1.trdp new file mode 100644 index 00000000..90ecf6f2 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-10.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-10.trdp new file mode 100644 index 00000000..475ade62 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-10.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-2.trdp new file mode 100644 index 00000000..d22e0795 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-3.trdp new file mode 100644 index 00000000..77dd6b5c Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-4.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-4.trdp new file mode 100644 index 00000000..a21aec5e Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-5.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-5.trdp new file mode 100644 index 00000000..0f28cb9d Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-5.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-6.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-6.trdp new file mode 100644 index 00000000..9165d361 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-6.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-7.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-7.trdp new file mode 100644 index 00000000..745ba152 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-7.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-8.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-8.trdp new file mode 100644 index 00000000..b2c0bdab Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-8.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-9.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-9.trdp new file mode 100644 index 00000000..a0e31ba0 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก35-9.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-1.trdp new file mode 100644 index 00000000..7011f8aa Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-2.trdp new file mode 100644 index 00000000..4508d179 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-3.trdp new file mode 100644 index 00000000..ae31df45 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-4.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-4.trdp new file mode 100644 index 00000000..47491558 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-5.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-5.trdp new file mode 100644 index 00000000..0a828c29 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก36-5.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ1.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ1.trdp new file mode 100644 index 00000000..4ba8d6ef Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ1.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ10.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ10.trdp new file mode 100644 index 00000000..ffa9f5e5 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ10.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ11.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ11.trdp new file mode 100644 index 00000000..96fef2d8 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ11.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ2.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ2.trdp new file mode 100644 index 00000000..fe274955 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ2.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ3.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ3.trdp new file mode 100644 index 00000000..c60abb20 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ3.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ4.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ4.trdp new file mode 100644 index 00000000..60c777f2 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ4.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ5.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ5.trdp new file mode 100644 index 00000000..fe1653b3 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ5.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ6.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ6.trdp new file mode 100644 index 00000000..46f392c1 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ6.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ7.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ7.trdp new file mode 100644 index 00000000..5cda1589 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ7.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ8.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ8.trdp new file mode 100644 index 00000000..a9c443b7 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ8.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ9.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ9.trdp new file mode 100644 index 00000000..c63b9303 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก59-เครื่องราชฯ9.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก7.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก7.trdp new file mode 100644 index 00000000..8bce7808 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก7.trdp differ diff --git a/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก8.trdp b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก8.trdp new file mode 100644 index 00000000..31a57df3 Binary files /dev/null and b/BMA.EHR.ReportV2.Service/Reports/ภาคผนวก8.trdp differ diff --git a/BMA.EHR.ReportV2.Service/appsettings.Development.json b/BMA.EHR.ReportV2.Service/appsettings.Development.json new file mode 100644 index 00000000..0c208ae9 --- /dev/null +++ b/BMA.EHR.ReportV2.Service/appsettings.Development.json @@ -0,0 +1,8 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + } +} diff --git a/BMA.EHR.ReportV2.Service/appsettings.json b/BMA.EHR.ReportV2.Service/appsettings.json new file mode 100644 index 00000000..a06ebbd5 --- /dev/null +++ b/BMA.EHR.ReportV2.Service/appsettings.json @@ -0,0 +1,35 @@ +{ + "Serilog": { + "MinimumLevel": { + "Default": "Information", + "Override": { + "Microsoft": "Information", + "System": "Warning" + } + } + }, + "ElasticConfiguration": { + "Uri": "http://localhost:9200" + }, + "AllowedHosts": "*", + "ConnectionStrings": { + //"DefaultConnection": "User Id=sys;Password=P@ssw0rd;DBA Privilege=SYSDBA;Data Source=localhost:1521/ORCLCDB", + "DefaultConnection": "server=192.168.1.9;user=root;password=adminVM123;port=3306;database=bma_ehr_demo;Convert Zero Datetime=True;Allow User Variables=true;Pooling=True;" + }, + "Jwt": { + "Key": "HP-FnQMUj9msHMSD3T9HtdEnphAKoCJLEl85CIqROFI", + "Issuer": "https://identity.frappet.com/realms/bma-ehr" + }, + "EPPlus": { + "ExcelPackage": { + "LicenseContext": "NonCommercial" + } + }, + "MinIO": { + "Endpoint": "https://s3.frappet.com/", + "AccessKey": "frappet", + "SecretKey": "P@ssw0rd", + "BucketName": "bma-recruit" + }, + "Protocol": "HTTPS" +} diff --git a/BMA.EHR.Solution.sln b/BMA.EHR.Solution.sln index 66cf5704..04d14ce6 100644 --- a/BMA.EHR.Solution.sln +++ b/BMA.EHR.Solution.sln @@ -25,7 +25,11 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BMA.EHR.Command.Service", " EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BMA.EHR.Insignia.Service", "BMA.EHR.Insignia.Service\BMA.EHR.Insignia.Service.csproj", "{04B37ACD-65CF-44ED-BC40-B5E7A71C374B}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BMA.EHR.Retirement.Service", "BMA.EHR.Retirement.Service\BMA.EHR.Retirement.Service.csproj", "{3FFE378C-387F-42EA-96E2-68E63BB295F9}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "BMA.EHR.Retirement.Service", "BMA.EHR.Retirement.Service\BMA.EHR.Retirement.Service.csproj", "{3FFE378C-387F-42EA-96E2-68E63BB295F9}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BMA.EHR.ReportGenerator", "BMA.EHR.ReportGenerator\BMA.EHR.ReportGenerator.csproj", "{8DB08650-980C-4B7E-B3C2-4435F2A5AD10}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BMA.EHR.ReportV2.Service", "BMA.EHR.ReportV2.Service\BMA.EHR.ReportV2.Service.csproj", "{DE23F598-F561-45DF-9F8C-C766568809BD}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -73,6 +77,14 @@ Global {3FFE378C-387F-42EA-96E2-68E63BB295F9}.Debug|Any CPU.Build.0 = Debug|Any CPU {3FFE378C-387F-42EA-96E2-68E63BB295F9}.Release|Any CPU.ActiveCfg = Release|Any CPU {3FFE378C-387F-42EA-96E2-68E63BB295F9}.Release|Any CPU.Build.0 = Release|Any CPU + {8DB08650-980C-4B7E-B3C2-4435F2A5AD10}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {8DB08650-980C-4B7E-B3C2-4435F2A5AD10}.Debug|Any CPU.Build.0 = Debug|Any CPU + {8DB08650-980C-4B7E-B3C2-4435F2A5AD10}.Release|Any CPU.ActiveCfg = Release|Any CPU + {8DB08650-980C-4B7E-B3C2-4435F2A5AD10}.Release|Any CPU.Build.0 = Release|Any CPU + {DE23F598-F561-45DF-9F8C-C766568809BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DE23F598-F561-45DF-9F8C-C766568809BD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DE23F598-F561-45DF-9F8C-C766568809BD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DE23F598-F561-45DF-9F8C-C766568809BD}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -89,6 +101,8 @@ Global {E4E905EE-61DF-4451-B063-5C86BC7574CE} = {FA618F0C-1AF5-49AB-AE13-C020B403B64F} {04B37ACD-65CF-44ED-BC40-B5E7A71C374B} = {FA618F0C-1AF5-49AB-AE13-C020B403B64F} {3FFE378C-387F-42EA-96E2-68E63BB295F9} = {FA618F0C-1AF5-49AB-AE13-C020B403B64F} + {8DB08650-980C-4B7E-B3C2-4435F2A5AD10} = {F3C2F68F-8DC8-45A3-825B-24F17867D380} + {DE23F598-F561-45DF-9F8C-C766568809BD} = {FA618F0C-1AF5-49AB-AE13-C020B403B64F} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {3111A492-1818-4438-B718-75199D8E779A}