using BMA.EHR.Application.Repositories.Commands; using BMA.EHR.Domain.Common; using BMA.EHR.Domain.Extensions; using BMA.EHR.Domain.Shared; using iTextSharp.text.pdf; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Newtonsoft.Json; using Swashbuckle.AspNetCore.Annotations; using Telerik.Reporting; using Telerik.Reporting.Processing; namespace BMA.EHR.Report.Service.Controllers { [Route("api/v{version:apiVersion}/report/order")] [ApiVersion("2.0")] [ApiController] [Produces("application/json")] [Authorize] [SwaggerTag("API รายงานระบบออกคำสั่ง")] public class CommandReportController : BaseController { #region " Fields " private readonly CommandRepository _repository; private readonly IWebHostEnvironment _hostingEnvironment; private readonly IConfiguration _configuration; private readonly CommandReportRepository _commandReportRepository; private readonly GenericReportGenerator _reportGenerator; #endregion #region " Constuctor and Destructor " public CommandReportController(CommandRepository repository, IWebHostEnvironment hostingEnvironment, IConfiguration configuration, CommandReportRepository commandReportRepository, GenericReportGenerator reportGenerator) { _repository = repository; _hostingEnvironment = hostingEnvironment; _configuration = configuration; _commandReportRepository = commandReportRepository; _reportGenerator = reportGenerator; } #endregion #region " Methods " #region " Private " #region " C-PM-01 " private async Task GenerateCommandReportType01_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); var positionList = await _repository.GetReceiverPositionByCommandIdAsync(commandId); var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = positionList, Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-1.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType01_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType01AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"01-คำสั่งบรรจุและแต่งตั้งผู้สอบแข่งขันได้-2.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-02 " private async Task GenerateCommandReportType02_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); var positionList = await _repository.GetReceiverPositionByCommandIdAsync(commandId); var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = positionList, Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-3.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType02_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType02AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"02-คำสั่งบรรจุและแต่งตั้งผู้ได้รับคัดเลือก-4.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-03 " private async Task GenerateCommandReportType03_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); var positionList = await _repository.GetReceiverPositionByCommandIdAsync(commandId); var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = positionList, Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"03-คำสั่งแต่งตั้งผู้สอบแข่งขัน-Head.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType03_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType03AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"03-คำสั่งแต่งตั้งผู้สอบแข่งขัน.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-04 " private async Task GenerateCommandReportType04_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); var positionList = await _repository.GetReceiverPositionByCommandIdAsync(commandId); var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = positionList, Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"04-คำสั่งย้ายผู้สอบแข่งขัน-Head.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType04_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType03AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"04-คำสั่งย้ายผู้สอบแข่งขัน.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-05 " private async Task GenerateCommandReportType05_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); var positionList = await _repository.GetReceiverPosition2ByCommandIdAsync(commandId); var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionMeetingNo = raw_data.ConclusionMeetingNo == null ? "" : raw_data.ConclusionMeetingNo.ToThaiNumber(), ConclusionMeetingDate = raw_data.ConclusionMeetingDate == null ? "" : raw_data.ConclusionMeetingDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = positionList, Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"05-06-คำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType05_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType05_06AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"05-06-แนบท้ายคำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-06 " private async Task GenerateCommandReportType06_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); var positionList = await _repository.GetReceiverPosition2ByCommandIdAsync(commandId); var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = positionList, Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, ConclusionMeetingNo = raw_data.ConclusionMeetingNo == null ? "" : raw_data.ConclusionMeetingNo.ToThaiNumber(), ConclusionMeetingDate = raw_data.ConclusionMeetingDate == null ? "" : raw_data.ConclusionMeetingDate.Value.ToThaiFullDate3().ToThaiNumber(), Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"05-06-คำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType06_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType05_06AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"05-06-แนบท้ายคำสั่งแต่งตั้ง-คำสั่งเลื่อน.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-07 " private async Task GenerateCommandReportType07_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); var positionList = await _repository.GetReceiverPosition2ByCommandIdAsync(commandId); var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = positionList, Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"07-คำสั่งย้าย.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType07_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType07AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"07-แนบท้ายคำสั่งย้าย.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-08 " private async Task GenerateCommandReportType08_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, ConclusionReturnNo = raw_data.ConclusionReturnNo == null ? "" : raw_data.ConclusionReturnNo.ToThaiNumber(), ConclusionReturnDate = raw_data.ConclusionReturnDate == null ? "" : raw_data.ConclusionReturnDate.Value.ToThaiFullDate3().ToThaiNumber(), Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-5.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType08_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType08AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"08-คำสั่งบรรจุและแต่งตั้งข้าราชการฯกลับเข้ารับราชการ-6.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-09 " private async Task GenerateCommandReportType09_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, ConclusionReturnNo = raw_data.ConclusionReturnNo == null ? "" : raw_data.ConclusionReturnNo.ToThaiNumber(), ConclusionReturnDate = raw_data.ConclusionReturnDate == null ? "" : raw_data.ConclusionReturnDate.Value.ToThaiFullDate3().ToThaiNumber(), SourceOrganizationName = raw_data.SourceOrganizationName, MilitaryCommandNo = raw_data.MilitaryCommandNo == null ? "" : raw_data.MilitaryCommandNo.ToThaiNumber(), MilitaryCommanDate = raw_data.MilitaryCommanDate == null ? "" : raw_data.MilitaryCommanDate.Value.ToThaiFullDate3().ToThaiNumber(), Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-7.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType09_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType09AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"09-คำสั่งบรรจุและแต่งตั้งผู้ออกไปรับราชการทหารกลับเข้ารับราชการ-8.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-10 " private async Task GenerateCommandReportType10_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, PlacementCommandIssuer = raw_data.PlacementCommandIssuer, PlacementCommandNo = raw_data.PlacementCommandNo == null ? "" : raw_data.PlacementCommandNo.ToThaiNumber(), PlacementCommandDate = raw_data.PlacementCommandDate == null ? "" : raw_data.PlacementCommandDate.Value.ToThaiFullDate3().ToThaiNumber(), PlacementPositionName = raw_data.PlacementPositionName, PlacementOrganizationName = raw_data.PlacementOrganizationName, ProbationStartDate = raw_data.ProbationStartDate == null ? "" : raw_data.ProbationStartDate.Value.ToThaiFullDate3().ToThaiNumber(), ProbationEndDate = raw_data.ProbationEndDate == null ? "" : raw_data.ProbationEndDate.Value.ToThaiFullDate3().ToThaiNumber(), ChairManFullName = raw_data.ChairManFullName, Member1FullName = raw_data.Member1FullName, Member2FullName = raw_data.Member2FullName, Duration = raw_data.ProbationStartDate == null || raw_data.ProbationEndDate == null ? "" : raw_data.ProbationStartDate.Value.CalculateBetweenDateV2(raw_data.ProbationEndDate.Value).ToThaiNumber(), Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"10-แต่งตั้งคณะกรรมการประเมินผลการทดลองปฏิบัติหน้าที่ราชการ.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } #endregion #region " C-PM-11 " private async Task GenerateCommandReportType11_Cover(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType11Async(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"11-คำสั่งให้ข้าราชการที่ผ่านการประเมิน รับราชการต่อไป.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = data; 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 #region " C-PM-12 " private async Task GenerateCommandReportType12_Cover(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType11Async(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"12-คำสั่งให้ข้าราชการที่ไม่ผ่านการประเมิน ออกจากราชการ.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = data; 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 #region " C-PM-13 " private async Task GenerateCommandReportType13_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, ReceiveOrganizationName = raw_data.ReceiveOrganizationName, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-1.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType13_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType13AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"27-คำสั่งให้โอนข้าราชการกรุงเทพมหานครสามัญ-2.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-14 " private async Task GenerateCommandReportType14_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, TransferOrganizationName = raw_data.TransferOrganizationName, ConclusionReceiveNo = raw_data.ConclusionReceiveNo == null ? "" : raw_data.ConclusionReceiveNo.ToThaiNumber(), ConclusionReceiveDate = raw_data.ConclusionReceiveDate == null ? "" : raw_data.ConclusionReceiveDate.Value.ToThaiFullDate3().ToThaiNumber(), Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ-5.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType14_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType14AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"28-คำสั่งรับโอนข้าราชการกรุงเทพมหานครสามัญ5-10.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-15 " private async Task GenerateCommandReportType15_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"29-คำสั่งให้ช่วยราชการ-1.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType15_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType15AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"29-คำสั่งให้ช่วยราชการ-2.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-16 " private async Task GenerateCommandReportType16_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; //var command = new //{ // CommandNo = raw_data.CommandNo.ToThaiNumber(), // CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), // IssuerOrganizationName = raw_data.IssuerOrganizationName, // ConclusionRegisterNo = raw_data.ConclusionRegisterNo.ToThaiNumber(), // ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), // ConclusionResultNo = raw_data.ConclusionResultNo.ToThaiNumber(), // ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), // PositionList = "", // Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), // CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), // AuthorizedUserFullName = raw_data.AuthorizedUserFullName, // AuthorizedPosition = raw_data.AuthorizedPosition, // GovAidCommandNo = raw_data.GovAidCommandNo.ToThaiNumber(), // GovAidCommandDate = raw_data.GovAidCommandDate == null ? "" : raw_data.GovAidCommandDate.Value.ToThaiFullDate3().ToThaiNumber(), //}; var data = await _commandReportRepository.GetCommandType16Async(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"30-คำสั่งส่งตัวกลับไปปฏิบัติงานทางต้นสังกัดเดิม.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = data; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } #endregion #region " C-PM-17 " private async Task GenerateCommandReportType17_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-4.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType17_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType17AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"34-คำสั่งอนุญาตให้ข้าราชการลาออกจากราชการ-5.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-18 " private async Task GenerateCommandReportType18_Cover(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType18Async(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"37-คำสั่งให้ออกจากราชการ.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = data; 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 #region " C-PM-19 " private async Task GenerateCommandReportType19_Cover(Guid commandId, string exportType) { try { // var command = await _repository.GetByIdAsync(commandId); // if (command == null) // { // throw new Exception(GlobalMessages.CommandNotFound); // } // var data = await _commandReportRepository.GetCommandType19Async(commandId); // var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"37-คำสั่งปลดออกจากราชการ.trdp"); // ReportPackager reportPackager = new ReportPackager(); // Telerik.Reporting.Report? report = null; // using (var sourceStream = System.IO.File.OpenRead(rptFile)) // { // report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); // } // report.DataSource = data; // 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; var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } var raw_data_profile = await _commandReportRepository.GetCommandType25AttachmentAsync(commandId); var command = new { No = raw_data.CommandNo.ToThaiNumber(), Year = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), Issuerorganizationname = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, ReceiveOrganizationName = raw_data.ReceiveOrganizationName, Title = $"{raw_data.CommandSubject}", CaseFault = raw_data.CaseFault == null ? "" : raw_data.CaseFault.ToThaiNumber(), FaultLevel = raw_data.FaultLevel == null ? "" : raw_data.FaultLevel.ToThaiNumber(), RefRaw = raw_data.RefRaw == null ? "" : raw_data.RefRaw.ToThaiNumber(), Result = raw_data.Result == null ? "" : raw_data.Result.ToThaiNumber(), Fullname = raw_data_profile == null ? "" : raw_data_profile.FullName, Positionname = raw_data_profile == null ? "" : raw_data_profile.Positionname, Positionno = raw_data_profile == null || raw_data_profile.Positionno == null ? "" : raw_data_profile.Positionno.ToThaiNumber(), Organizationname = raw_data_profile == null || raw_data_profile.Organizationname == null ? "" : raw_data_profile.Organizationname.ToThaiNumber(), Salary = raw_data_profile == null || raw_data_profile.Salary == null ? "" : raw_data_profile.Salary.ToThaiNumber(), OrderDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), SignatoryBy = raw_data.AuthorizedUserFullName, SignatoryPosition = raw_data.AuthorizedPosition, ConclusionFireNo = raw_data.ConclusionFireNo == null ? "" : raw_data.ConclusionFireNo.ToThaiNumber(), ConclusionFireDate = raw_data.ConclusionFireDate == null ? "" : raw_data.ConclusionFireDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionFireResolution = raw_data.ConclusionFireResolution, }; return command; } catch { throw; } } #endregion #region " C-PM-20 " private async Task GenerateCommandReportType20_Cover(Guid commandId, string exportType) { try { // var command = await _repository.GetByIdAsync(commandId); // if (command == null) // { // throw new Exception(GlobalMessages.CommandNotFound); // } // var data = await _commandReportRepository.GetCommandType20Async(commandId); // var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"38-คำสั่งลงโทษไล่ข้าราชการออกจากราชการ.trdp"); // ReportPackager reportPackager = new ReportPackager(); // Telerik.Reporting.Report? report = null; // using (var sourceStream = System.IO.File.OpenRead(rptFile)) // { // report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); // } // report.DataSource = data; // 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; var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } var raw_data_profile = await _commandReportRepository.GetCommandType25AttachmentAsync(commandId); var command = new { No = raw_data.CommandNo.ToThaiNumber(), Year = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), Issuerorganizationname = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, ReceiveOrganizationName = raw_data.ReceiveOrganizationName, Title = $"{raw_data.CommandSubject}", CaseFault = raw_data.CaseFault == null ? "" : raw_data.CaseFault.ToThaiNumber(), FaultLevel = raw_data.FaultLevel == null ? "" : raw_data.FaultLevel.ToThaiNumber(), RefRaw = raw_data.RefRaw == null ? "" : raw_data.RefRaw.ToThaiNumber(), Result = raw_data.Result == null ? "" : raw_data.Result.ToThaiNumber(), Fullname = raw_data_profile == null ? "" : raw_data_profile.FullName, Positionname = raw_data_profile == null ? "" : raw_data_profile.Positionname, Positionno = raw_data_profile == null || raw_data_profile.Positionno == null ? "" : raw_data_profile.Positionno.ToThaiNumber(), Organizationname = raw_data_profile == null || raw_data_profile.Organizationname == null ? "" : raw_data_profile.Organizationname.ToThaiNumber(), Salary = raw_data_profile == null || raw_data_profile.Salary == null ? "" : raw_data_profile.Salary.ToThaiNumber(), OrderDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), SignatoryBy = raw_data.AuthorizedUserFullName, SignatoryPosition = raw_data.AuthorizedPosition, ConclusionFireNo = raw_data.ConclusionFireNo == null ? "" : raw_data.ConclusionFireNo.ToThaiNumber(), ConclusionFireDate = raw_data.ConclusionFireDate == null ? "" : raw_data.ConclusionFireDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionFireResolution = raw_data.ConclusionFireResolution == null ? "" : raw_data.ConclusionFireResolution.ToThaiNumber(), }; return command; } catch { throw; } } #endregion #region " C-PM-21 " private async Task GenerateCommandReportType21_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var receiver = await _commandReportRepository.GetCommandType21AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"20-คำสั่งแต่งตั้งลูกจ้างชั่วคราวเป็นลูกจ้างประจำ-2.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; tblData.DataSource = receiver; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } #endregion #region " C-PM-22 " private async Task GenerateCommandReportType22_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, // ConclusionRegisterNo = raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), // ConclusionResultNo = raw_data.ConclusionResultNo.ToThaiNumber(), // ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), // PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, // ConclusionReturnNo = raw_data.ConclusionReturnNo.ToThaiNumber(), // ConclusionReturnDate = raw_data.ConclusionReturnDate == null ? "" : raw_data.ConclusionReturnDate.Value.ToThaiFullDate3().ToThaiNumber(), Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"คำสั่งแต่งตั้งลูกจ้างประจำ(ปรับระดับชั้นงาน).trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType22_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType22AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"คำสั่งแต่งตั้งลูกจ้างประจำ(ปรับระดับชั้นงาน)-แนบท้าย.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-23 " private async Task GenerateCommandReportType23_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, Subject = $"เรื่อง {raw_data.CommandSubject}", }; var receiver = await _commandReportRepository.GetCommandType23AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"35-คำสั่งอนุญาตให้ลูกจ้างลาออก.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"]; tblData.DataSource = receiver; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } #endregion #region " C-PM-24 " private async Task GenerateCommandReportType24_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } //var recvId = raw_data.Receivers.Select(x => x.RefPlacementProfileId).ToList(); //var positionList = string.Empty; var command = new { CommandNo = raw_data.CommandNo.ToThaiNumber(), ConclusionTranferNo = raw_data.ConclusionTranferNo == null ? "" : raw_data.ConclusionTranferNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), // ConclusionResultNo = raw_data.ConclusionResultNo.ToThaiNumber(), // ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), // PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionTranferDate = raw_data.ConclusionTranferDate == null ? "" : raw_data.ConclusionTranferDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, // ConclusionReturnNo = raw_data.ConclusionReturnNo.ToThaiNumber(), // ConclusionReturnDate = raw_data.ConclusionReturnDate == null ? "" : raw_data.ConclusionReturnDate.Value.ToThaiFullDate3().ToThaiNumber(), Subject = $"เรื่อง {raw_data.CommandSubject}", }; var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"คำสั่งแต่งตั้งลูกจ้างประจำ(ย้าย).trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } report.DataSource = command; System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable(); if (exportType == "docx") deviceInfo["OutputFormat"] = "DOCX"; InstanceReportSource instanceReportSource = new InstanceReportSource() { ReportDocument = report }; ReportProcessor reportProcessor = new ReportProcessor(_configuration); RenderingResult result = reportProcessor.RenderReport(exportType.ToUpper(), instanceReportSource, deviceInfo); var content = result.DocumentBytes; return content; } catch { throw; } } private async Task GenerateCommandReportType24_Attachment(Guid commandId, string exportType) { try { var command = await _repository.GetByIdAsync(commandId); if (command == null) { throw new Exception(GlobalMessages.CommandNotFound); } var data = await _commandReportRepository.GetCommandType24AttachmentAsync(commandId); var rptFile = Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"คำสั่งแต่งตั้งลูกจ้างประจำ(ย้าย)-แนบท้าย.trdp"); ReportPackager reportPackager = new ReportPackager(); Telerik.Reporting.Report? report = null; using (var sourceStream = System.IO.File.OpenRead(rptFile)) { report = (Telerik.Reporting.Report)reportPackager.UnpackageDocument(sourceStream); } var tblData = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["tblData"]; tblData.DataSource = data; report.ReportParameters["IssuerOrganizationName"].Value = command.IssuerOrganizationName; report.ReportParameters["CommandNo"].Value = command.CommandNo.ToThaiNumber(); report.ReportParameters["CommandYear"].Value = command.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(); report.ReportParameters["CommandExecuteDate"].Value = command.CommandExcecuteDate == null ? "" : command.CommandExcecuteDate.Value.ToThaiFullDate2().ToThaiNumber(); 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 #region " C-PM-25 " private async Task GenerateCommandReportType25_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } var raw_data_profile = await _commandReportRepository.GetCommandType25AttachmentAsync(commandId); var command = new { No = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), CommandNo = raw_data.CommandNo.ToThaiNumber(), Year = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), Issuerorganizationname = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, ReceiveOrganizationName = raw_data.ReceiveOrganizationName, Title = $"{raw_data.CommandSubject}", CaseFault = raw_data.CaseFault == null ? "" : raw_data.CaseFault.ToThaiNumber(), FaultLevel = raw_data.FaultLevel == null ? "" : raw_data.FaultLevel.ToThaiNumber(), RefRaw = raw_data.RefRaw == null ? "" : raw_data.RefRaw.ToThaiNumber(), Result = raw_data.Result == null ? "" : raw_data.Result.ToThaiNumber(), Fullname = raw_data_profile == null ? "" : raw_data_profile.FullName, Positionname = raw_data_profile == null ? "" : raw_data_profile.Positionname, Positionno = raw_data_profile == null || raw_data_profile.Positionno == null ? "" : raw_data_profile.Positionno.ToThaiNumber(), Organizationname = raw_data_profile == null || raw_data_profile.Organizationname == null ? "" : raw_data_profile.Organizationname.ToThaiNumber(), Salary = raw_data_profile == null || raw_data_profile.Salary == null ? "" : raw_data_profile.Salary.ToThaiNumber(), OrderDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), SignatoryBy = raw_data.AuthorizedUserFullName, SignatoryPosition = raw_data.AuthorizedPosition, CreatedAt = raw_data.CreatedAt.ToThaiFullDate3().ToThaiNumber(), }; return command; } catch { throw; } } #endregion #region " C-PM-33 " private async Task GenerateCommandReportType33_Cover(Guid commandId, string exportType) { try { var raw_data = await _repository.GetByIdAsync(commandId); if (raw_data == null) { throw new Exception(GlobalMessages.CommandNotFound); } // var raw_data_profile = await _commandReportRepository.GetCommandType25AttachmentAsync(commandId); var command = new { No = raw_data.CommandNo.ToThaiNumber(), CommandYear = raw_data.CommandYear.ToInteger().ToThaiYear().ToString().ToThaiNumber(), CommandNo = raw_data.CommandNo.ToThaiNumber(), Year = raw_data.Year.ToInteger().ToThaiYear().ToString().ToThaiNumber(), YearOld = (raw_data.Year.ToInteger() - 1).ToThaiYear().ToString().ToThaiNumber(), IssuerOrganizationName = raw_data.IssuerOrganizationName, ConclusionRegisterNo = raw_data.ConclusionRegisterNo == null ? "" : raw_data.ConclusionRegisterNo.ToThaiNumber(), ConclusionRegisterDate = raw_data.ConclusionRegisterDate == null ? "" : raw_data.ConclusionRegisterDate.Value.ToThaiFullDate3().ToThaiNumber(), ConclusionResultNo = raw_data.ConclusionResultNo == null ? "" : raw_data.ConclusionResultNo.ToThaiNumber(), ConclusionResultDate = raw_data.ConclusionResultDate == null ? "" : raw_data.ConclusionResultDate.Value.ToThaiFullDate3().ToThaiNumber(), PositionList = "", Count = raw_data.Receivers.Count.ToString().ToThaiNumber(), CommandAffectDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), AuthorizedUserFullName = raw_data.AuthorizedUserFullName, AuthorizedPosition = raw_data.AuthorizedPosition, ReceiveOrganizationName = raw_data.ReceiveOrganizationName, Title = $"{raw_data.CommandSubject}", CaseFault = raw_data.CaseFault == null ? "" : raw_data.CaseFault.ToThaiNumber(), FaultLevel = raw_data.FaultLevel == null ? "" : raw_data.FaultLevel.ToThaiNumber(), RefRaw = raw_data.RefRaw == null ? "" : raw_data.RefRaw.ToThaiNumber(), Result = raw_data.Result == null ? "" : raw_data.Result.ToThaiNumber(), // Fullname = raw_data_profile == null ? "" : raw_data_profile.FullName, // Positionname = raw_data_profile == null ? "" : raw_data_profile.Positionname, // Positionno = raw_data_profile == null || raw_data_profile.Positionno == null ? "" : raw_data_profile.Positionno.ToThaiNumber(), // Organizationname = raw_data_profile == null || raw_data_profile.Organizationname == null ? "" : raw_data_profile.Organizationname.ToThaiNumber(), // Salary = raw_data_profile == null || raw_data_profile.Salary == null ? "" : raw_data_profile.Salary.ToThaiNumber(), OrderDate = raw_data.CommandAffectDate == null ? "" : raw_data.CommandAffectDate.Value.ToThaiFullDate3().ToThaiNumber(), SignatoryBy = raw_data.AuthorizedUserFullName, SignatoryPosition = raw_data.AuthorizedPosition, CreatedAt = raw_data.CreatedAt.ToThaiFullDate3().ToThaiNumber(), }; return command; } catch { throw; } } #endregion #endregion #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 async Task> GetCommandType01CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType01_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType01AttachmentReportAsync(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType01_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType02CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType02_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{exportType.Trim().ToLower()}"); //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 async Task> GetCommandType02AttachmentReportAsync(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType02_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType03CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType03_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType03AttachmentReportAsync(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType03_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType04CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType04_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType04AttachmentReportAsync(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType04_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> 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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType05_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType05AttachmentReport(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType05_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> 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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType06_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType06AttachmentReport(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType06_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> 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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType07_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType07AttachmentReport(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType07_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType08CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType08_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType08AttachmentReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType08_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType09CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType09_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType09AttachmentReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType09_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType10CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType10_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType11CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType11_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType12CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType12_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType13CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType13_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType13AttachmentReportAsync(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType13_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType14CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType14_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType14AttachmentReportAsync(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType14_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> 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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType15_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{exportType.Trim().ToLower()}"); } catch { throw; } } /// /// เอกสารแนบท้าย C-PM-15 คำสั่งให้ช่วยราชการ /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-15/attachment/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType15AttachmentReport(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType15_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType16CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType16_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType17CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType17_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> GetCommandType17AttachmentReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType17_Attachment(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> 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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType18_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{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 async Task> 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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType19_Cover(id, exportType); var data = new { template = "DP6_005", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } 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 async Task> 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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType20_Cover(id, exportType); var data = new { template = "DP6_008", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-21 คำสั่งแต่งตั้งลูกจ้างชั่วคราวเป็นลูกจ้างประจำ " /// /// คำสั่ง C-PM-21 คำสั่งแต่งตั้งลูกจ้างชั่วคราวเป็นลูกจ้างประจำ /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-21/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType21CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType21_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{exportType.Trim().ToLower()}"); } catch { throw; } } #endregion #region " C-PM-22 คำสั่งแต่งตั้งลูกจ้างประจำ(ปรับระดับชั้นงาน) " /// /// คำสั่ง C-PM-22 คำสั่งแต่งตั้งลูกจ้างประจำ(ปรับระดับชั้นงาน) /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-22/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType22CoverReport(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType22_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{exportType.Trim().ToLower()}"); } catch { throw; } } /// /// เอกสารแนบท้าย C-PM-22 คำสั่งแต่งตั้งลูกจ้างประจำ(ปรับระดับชั้นงาน) /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-22/attachment/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType22AttachmentReport(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType22_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{exportType.Trim().ToLower()}"); } catch { throw; } } #endregion #region " C-PM-23 คำสั่งให้ลูกจ้างออกจากราชการ " /// /// คำสั่ง C-PM-23 คำสั่งให้ลูกจ้างออกจากราชการ /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-23/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType23CoverReportAsync(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType23_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{exportType.Trim().ToLower()}"); } catch { throw; } } #endregion #region " C-PM-24 คำสั่งแต่งตั้งลูกจ้างประจำ(ย้าย) " /// /// คำสั่ง C-PM-24 คำสั่งแต่งตั้งลูกจ้างประจำ(ย้าย) /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-24/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType24CoverReport(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 cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType24_Cover(id, exportType); return File(contentData, mimeType, $"command-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{exportType.Trim().ToLower()}"); } catch { throw; } } /// /// เอกสารแนบท้าย C-PM-24 คำสั่งแต่งตั้งลูกจ้างประจำ(ย้าย) /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-24/attachment/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType24AttachmentReport(Guid id, string exportType = "pdf") { try { var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); 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 contentData = await GenerateCommandReportType24_Attachment(id, exportType); return File(contentData, mimeType, $"command-attachment-{cmd.CommandNo}-{cmd.CommandYear.ToInteger().ToThaiYear()}.{exportType.Trim().ToLower()}"); } catch { throw; } } #endregion #region " C-PM-25 คำสั่งพักจากราชการxxxx " /// /// คำสั่ง C-PM-25 คำสั่งพักจากราชการ /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-25/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType25CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType25_Cover(id, exportType); var data = new { template = "DP6_006", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-26 คำสั่งให้ออกจากราชการไว้ก่อนxxxx " /// /// คำสั่ง C-PM-26 คำสั่งให้ออกจากราชการไว้ก่อน /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-26/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType26CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType25_Cover(id, exportType); var data = new { template = "DP6_006", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-27 คำสั่งลงโทษ ภาคทัณฑ์ " /// /// คำสั่ง C-PM-27 คำสั่งลงโทษ ภาคทัณฑ์ /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-27/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType27CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType25_Cover(id, exportType); var data = new { template = "DP6_006", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-28 คำสั่งลงโทษ ตัดเงินเดือน " /// /// คำสั่ง C-PM-28 คำสั่งลงโทษ ตัดเงินเดือน /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-28/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType28CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType25_Cover(id, exportType); var data = new { template = "DP6_004", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-29 คำสั่งลงโทษ ลดขั้นเงินเดือน " /// /// คำสั่ง C-PM-29 คำสั่งลงโทษ ลดขั้นเงินเดือน /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-29/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType29CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType25_Cover(id, exportType); var data = new { template = "DP6_007", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-30 คำสั่งเพิ่มโทษ " /// /// คำสั่ง C-PM-30 คำสั่งเพิ่มโทษ /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-30/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType30CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType25_Cover(id, exportType); var data = new { template = "DP6_002", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-31 คำสั่งงดโทษ " /// /// คำสั่ง C-PM-31 คำสั่งงดโทษ /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-31/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType31CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType25_Cover(id, exportType); var data = new { template = "DP6_001", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-32 คำสั่งยุติเรื่อง " /// /// คำสั่ง C-PM-32 คำสั่งยุติเรื่อง /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-32/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType32CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType25_Cover(id, exportType); var data = new { template = "DP6_003", reportName = "docx-report", data = contentData }; // var apiUrl = "https://report-server.frappet.synology.me/api/v1/report-template/docx"; // using (var client = new HttpClient()) // { // // client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token); // var req = new HttpRequestMessage(HttpMethod.Post, apiUrl); // // var res = await client.SendAsync(req); // var res = await client.PostAsJsonAsync(apiUrl, data); // var result = await res.Content.ReadAsStringAsync(); // return Success(res); // } return Success(data); } catch { throw; } } #endregion #region " C-PM-33 คำสั่งยุติเรื่อง " /// /// คำสั่ง C-PM-33 คำสั่งยุติเรื่อง /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-33/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType33CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType33_Cover(id, exportType); var data = new { template = cmd.SalaryPeriod == "APR" ? "gov1-07" : "gov2-08", reportName = "docx-report", data = contentData }; return Success(data); } catch { throw; } } #endregion #region " C-PM-34 คำสั่งยุติเรื่อง " /// /// คำสั่ง C-PM-34 คำสั่งยุติเรื่อง /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-34/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType34CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType33_Cover(id, exportType); var data = new { template = cmd.SalaryPeriod == "APR" ? "gov1-08" : "gov2-09", reportName = "docx-report", data = contentData }; return Success(data); } catch { throw; } } #endregion #region " C-PM-35 คำสั่งยุติเรื่อง " /// /// คำสั่ง C-PM-35 คำสั่งยุติเรื่อง /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-35/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType35CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType33_Cover(id, exportType); var data = new { template = "gov2-07", reportName = "docx-report", data = contentData }; return Success(data); } catch { throw; } } #endregion #region " C-PM-36 คำสั่งยุติเรื่อง " /// /// คำสั่ง C-PM-36 คำสั่งยุติเรื่อง /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-36/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType36CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType33_Cover(id, exportType); var data = new { template = cmd.SalaryPeriod == "APR" ? "emp1-11" : "emp2-12", reportName = "docx-report", data = contentData }; return Success(data); } catch { throw; } } #endregion #region " C-PM-37 คำสั่งยุติเรื่อง " /// /// คำสั่ง C-PM-37 คำสั่งยุติเรื่อง /// /// Record Id ของคำสั่ง /// pdf, docx หรือ xlsx /// /// เมื่อทำการอ่านข้อมูลจาก Relational Database สำเร็จ /// ไม่ได้ Login เข้าระบบ /// เมื่อเกิดข้อผิดพลาดในการทำงาน [HttpGet("c-pm-37/cover/{exportType}/{id}")] [AllowAnonymous] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status401Unauthorized)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] public async Task> GetCommandType37CoverReport(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; } var cmd = await _repository.GetByIdAsync(id); if (cmd == null) throw new Exception(GlobalMessages.CommandNotFound); var contentData = await GenerateCommandReportType33_Cover(id, exportType); var data = new { template = cmd.SalaryPeriod == "APR" ? "emp1-14" : "emp2-16", reportName = "docx-report", data = contentData }; return Success(data); } catch { throw; } } #endregion #endregion } }