api รายงานเครื่องราช
This commit is contained in:
parent
cba981e432
commit
2d5f1fc8be
8 changed files with 177 additions and 17 deletions
|
|
@ -1,5 +1,6 @@
|
|||
using BMA.EHR.Application.Repositories.Reports;
|
||||
using BMA.EHR.Domain.Common;
|
||||
using BMA.EHR.Domain.Models.Insignias;
|
||||
using DocumentFormat.OpenXml.Drawing;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
|
@ -13,7 +14,7 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
[ApiVersion("2.0")]
|
||||
[ApiController]
|
||||
[Produces("application/json")]
|
||||
[Authorize]
|
||||
//[Authorize]
|
||||
[SwaggerTag("API รายงานระบบเครื่องราชอิสริยาภรณ์")]
|
||||
public class InsigniaReportController : BaseController
|
||||
{
|
||||
|
|
@ -88,7 +89,8 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
{
|
||||
_Khr1List.Add(new
|
||||
{
|
||||
RowNo = _data.GetType().GetProperty("RowNo").GetValue(_data),
|
||||
//RowNo = _data.GetType().GetProperty("RowNo").GetValue(_data),
|
||||
RowNo = _Khr1List.Count + 1,
|
||||
DepartmentName = _data.GetType().GetProperty("DepartmentName").GetValue(_data),
|
||||
G1Male = _data.GetType().GetProperty("G1Male").GetValue(_data),
|
||||
G1Female = _data.GetType().GetProperty("G1Female").GetValue(_data),
|
||||
|
|
@ -100,7 +102,7 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
G4Female = _data.GetType().GetProperty("G4Female").GetValue(_data),
|
||||
G5Male = _data.GetType().GetProperty("G5Male").GetValue(_data),
|
||||
G5Female = _data.GetType().GetProperty("G5Female").GetValue(_data),
|
||||
reason = string.Empty,
|
||||
Remark = _data.GetType().GetProperty("Remark").GetValue(_data),
|
||||
});
|
||||
}
|
||||
var tbl = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"];
|
||||
|
|
@ -169,7 +171,6 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
{
|
||||
_Khr2List.Add(new
|
||||
{
|
||||
//RowNo = _data.GetType().GetProperty("RowNo").GetValue(_data),
|
||||
RowNo = _Khr2List.Count+1,
|
||||
DepartmentName = _data.GetType().GetProperty("DepartmentName").GetValue(_data),
|
||||
G1Male = _data.GetType().GetProperty("G1Male").GetValue(_data),
|
||||
|
|
@ -190,6 +191,7 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
G8Female = _data.GetType().GetProperty("G1Female").GetValue(_data),
|
||||
G9Male = _data.GetType().GetProperty("G1Male").GetValue(_data),
|
||||
G9Female = _data.GetType().GetProperty("G1Female").GetValue(_data),
|
||||
Remark = _data.GetType().GetProperty("Remark").GetValue(_data),
|
||||
});
|
||||
}
|
||||
var tbl1 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"];
|
||||
|
|
@ -229,6 +231,9 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
try
|
||||
{
|
||||
var data = await _repository.GetKhr3Report(id);
|
||||
var YearInsignalPeriod = await _repository.GetYearInsigniaPeriod(id);
|
||||
var TwoYearInsignalPeriod = await _repository.Get2YearInsigniaPeriod(id);
|
||||
var Date = await _repository.GetDateInsigniaPeriod(id);
|
||||
var mimeType = "";
|
||||
switch (exportType.Trim().ToLower())
|
||||
{
|
||||
|
|
@ -236,12 +241,47 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
case "docx": mimeType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; break;
|
||||
case "xlsx": mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; break;
|
||||
}
|
||||
|
||||
var rptFile = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"41-แบบ ขร3 บัญชีรายชื่อข้าราชการผู้ขอพระราชทานเครื่องราชฯ.trdp");
|
||||
var contentData = _reportGenerator.GenerateReport(rptFile, exportType);
|
||||
ReportPackager reportPacker = new ReportPackager();
|
||||
Telerik.Reporting.Report? report = null;
|
||||
using (var sourceStream = System.IO.File.OpenRead(rptFile))
|
||||
{
|
||||
report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream);
|
||||
}
|
||||
|
||||
return File(contentData, mimeType, $"แบบ ขร3.{exportType.Trim().ToLower()}");
|
||||
report.ReportParameters["YearInsigniaPeriod"].Value = YearInsignalPeriod;
|
||||
report.ReportParameters["TwoYearInsignalPeriod"].Value = TwoYearInsignalPeriod;
|
||||
report.ReportParameters["EndDate"].Value = Date.GetType().GetProperty("EndDate").GetValue(Date);
|
||||
//int count = ((IEnumerable<object>)data).Count();
|
||||
//int counter = 0;
|
||||
//var _Khr3LeftList = new List<dynamic>();
|
||||
//var _Khr3RightList = new List<dynamic>();
|
||||
//foreach(var _data in data)
|
||||
//{
|
||||
// _Khr3LeftList.Add(new
|
||||
// {
|
||||
// RowNo = _Khr3LeftList.Count +1,
|
||||
// FullName = _data.GetType().GetProperty("FullName").GetValue(_data),
|
||||
// OCName = _data.GetType().GetProperty("OCName").GetValue(_data),
|
||||
// InsigniaName = _data.GetType().GetProperty("InsigniaName").GetValue(_data),
|
||||
|
||||
// });
|
||||
//}
|
||||
//var tbl1 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"];
|
||||
//tbl1.DataSource = _Khr3LeftList;
|
||||
|
||||
//var tbl2 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table2"];
|
||||
//tbl2.DataSource = _Khr3RightList;
|
||||
|
||||
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);
|
||||
|
||||
return File(result.DocumentBytes, mimeType, $"แบบ ขร3.{exportType.Trim().ToLower()}");
|
||||
}
|
||||
catch
|
||||
{
|
||||
|
|
@ -266,6 +306,8 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
try
|
||||
{
|
||||
var data = await _repository.GetKhr4Report(id);
|
||||
var YearInsignalPeriod = await _repository.GetYearInsigniaPeriod(id);
|
||||
var TwoYearInsignalPeriod = await _repository.Get2YearInsigniaPeriod(id);
|
||||
var mimeType = "";
|
||||
switch (exportType.Trim().ToLower())
|
||||
{
|
||||
|
|
@ -281,9 +323,30 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
{
|
||||
report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream);
|
||||
}
|
||||
report.ReportParameters["YearInsigniaPeriod"].Value = YearInsignalPeriod;
|
||||
report.ReportParameters["TwoYearInsignalPeriod"].Value = TwoYearInsignalPeriod;
|
||||
|
||||
var tbl1 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"];
|
||||
tbl1.DataSource = data;
|
||||
var _Khr4List = new List<dynamic>();
|
||||
foreach (var _data in data)
|
||||
{
|
||||
_Khr4List.Add(new
|
||||
{
|
||||
RowNo = _Khr4List.Count + 1,
|
||||
FullName = _data.GetType().GetProperty("FullName").GetValue(_data),
|
||||
CitizenId = _data.GetType().GetProperty("CitizenId").GetValue(_data),
|
||||
Type = _data.GetType().GetProperty("Type").GetValue(_data),
|
||||
Level = _data.GetType().GetProperty("Level").GetValue(_data),
|
||||
DateStart = _data.GetType().GetProperty("DateStart").GetValue(_data),
|
||||
SalaryAmount = _data.GetType().GetProperty("SalaryAmount").GetValue(_data),
|
||||
Position = _data.GetType().GetProperty("Position").GetValue(_data),
|
||||
InsigniaRecv = _data.GetType().GetProperty("InsigniaRecv").GetValue(_data),
|
||||
InsigniaRecvDate = _data.GetType().GetProperty("InsigniaRecvDate").GetValue(_data),
|
||||
InsigniaRequest = _data.GetType().GetProperty("InsigniaRequest").GetValue(_data),
|
||||
Remark = _data.GetType().GetProperty("Remark").GetValue(_data),
|
||||
});
|
||||
}
|
||||
tbl1.DataSource = _Khr4List;
|
||||
|
||||
System.Collections.Hashtable deviceInfo = new System.Collections.Hashtable();
|
||||
InstanceReportSource instanceReportSource = new InstanceReportSource()
|
||||
|
|
@ -354,7 +417,9 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
{
|
||||
try
|
||||
{
|
||||
|
||||
var data = await _repository.GetSummaryCoinReport(id);
|
||||
var SummaryTotal = await _repository.GetSummaryTotalCoinReport(id);
|
||||
var YearInsignalPeriod = await _repository.GetYearInsigniaPeriod(id);
|
||||
var mimeType = "";
|
||||
switch (exportType.Trim().ToLower())
|
||||
{
|
||||
|
|
@ -364,9 +429,41 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
}
|
||||
|
||||
var rptFile = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"44-บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ.trdp");
|
||||
var contentData = _reportGenerator.GenerateReport(rptFile, exportType);
|
||||
ReportPackager reportPacker = new ReportPackager();
|
||||
Telerik.Reporting.Report? report = null;
|
||||
using (var sourceStream = System.IO.File.OpenRead(rptFile))
|
||||
{
|
||||
report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream);
|
||||
}
|
||||
report.ReportParameters["YearInsigniaPeriod"].Value = YearInsignalPeriod;
|
||||
|
||||
return File(contentData, mimeType, $"insignia.{exportType.Trim().ToLower()}");
|
||||
var tbl1 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"];
|
||||
var _Khr6List = new List<dynamic>();
|
||||
foreach (var _data in data)
|
||||
{
|
||||
_Khr6List.Add(new
|
||||
{
|
||||
RowNo = _Khr6List.Count + 1,
|
||||
DepartmentName = _data.GetType().GetProperty("DepartmentName").GetValue(_data),
|
||||
G1Male = _data.GetType().GetProperty("G1Male").GetValue(_data),
|
||||
G1Female = _data.GetType().GetProperty("G1Female").GetValue(_data),
|
||||
G2Male = _data.GetType().GetProperty("G2Male").GetValue(_data),
|
||||
G2Female = _data.GetType().GetProperty("G2Female").GetValue(_data),
|
||||
Remark = _data.GetType().GetProperty("Remark").GetValue(_data),
|
||||
});
|
||||
}
|
||||
tbl1.DataSource = _Khr6List;
|
||||
|
||||
var tbl2 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table2"];
|
||||
tbl2.DataSource = SummaryTotal;
|
||||
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);
|
||||
return File(result.DocumentBytes, mimeType, $"บัญชีแสดงจำนวนชั้นตราเครื่องราชฯ{exportType.Trim().ToLower()}");
|
||||
|
||||
}
|
||||
catch
|
||||
|
|
@ -391,7 +488,8 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
{
|
||||
try
|
||||
{
|
||||
|
||||
var data = await _repository.GetCoinReport(id);
|
||||
var YearInsignalPeriod = await _repository.GetYearInsigniaPeriod(id);
|
||||
var mimeType = "";
|
||||
switch (exportType.Trim().ToLower())
|
||||
{
|
||||
|
|
@ -401,9 +499,37 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
}
|
||||
|
||||
var rptFile = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"45-บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา.trdp");
|
||||
var contentData = _reportGenerator.GenerateReport(rptFile, exportType);
|
||||
ReportPackager reportPacker = new ReportPackager();
|
||||
Telerik.Reporting.Report? report = null;
|
||||
using (var sourceStream = System.IO.File.OpenRead(rptFile))
|
||||
{
|
||||
report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream);
|
||||
}
|
||||
|
||||
return File(contentData, mimeType, $"insignia.{exportType.Trim().ToLower()}");
|
||||
report.ReportParameters["YearInsignalPeriod"].Value = YearInsignalPeriod;
|
||||
|
||||
//var _Khr3List = new List<dynamic>();
|
||||
//int maxRows = 25;
|
||||
//for (int i = 0; i < maxRows; i++)
|
||||
//{
|
||||
// _Khr3List.Add(new
|
||||
// {
|
||||
// RowNo = i + 1,
|
||||
// FullName = string.Empty
|
||||
// });
|
||||
//}
|
||||
|
||||
//var tbl1 = (Telerik.Reporting.Table)report.Items["detailSection1"].Items["table1"];
|
||||
//tbl1.DataSource = _Khr3List;
|
||||
|
||||
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);
|
||||
return File(result.DocumentBytes, mimeType, $"บัญชีแสดงรายชื่อผู้ขอพระราชทานเหรียญจักรพรรดิมาลา.{exportType.Trim().ToLower()}");
|
||||
|
||||
}
|
||||
catch
|
||||
|
|
@ -428,7 +554,8 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
{
|
||||
try
|
||||
{
|
||||
|
||||
var profile = await _repository.GetProfileInsignia(id);
|
||||
var data = await _repository.GetHistorySalaryReport(id);
|
||||
var mimeType = "";
|
||||
switch (exportType.Trim().ToLower())
|
||||
{
|
||||
|
|
@ -438,9 +565,42 @@ namespace BMA.EHR.Report.Service.Controllers
|
|||
}
|
||||
|
||||
var rptFile = System.IO.Path.Combine(_hostingEnvironment.ContentRootPath, "Reports", $"46-ประวัติสำหรับการเสนอขอพระราชทานเหรียญจักรพรรดิมาลา.trdp");
|
||||
var contentData = _reportGenerator.GenerateReport(rptFile, exportType);
|
||||
ReportPackager reportPacker = new ReportPackager();
|
||||
Telerik.Reporting.Report? report = null;
|
||||
using (var sourceStream = System.IO.File.OpenRead(rptFile))
|
||||
{
|
||||
report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream);
|
||||
}
|
||||
|
||||
return File(contentData, mimeType, $"insignia.{exportType.Trim().ToLower()}");
|
||||
report.ReportParameters["FullName"].Value = profile.GetType().GetProperty("FullName").GetValue(profile);
|
||||
report.ReportParameters["Position"].Value = profile.GetType().GetProperty("Position").GetValue(profile);
|
||||
report.ReportParameters["OCName"].Value = profile.GetType().GetProperty("OCName").GetValue(profile);
|
||||
report.ReportParameters["BirthDate"].Value = profile.GetType().GetProperty("BirthDate").GetValue(profile);
|
||||
|
||||
var historysalary = new List<dynamic>();
|
||||
foreach (var _data in data)
|
||||
{
|
||||
historysalary.Add(new
|
||||
{
|
||||
DateTh = _data.GetType().GetProperty("DateTh").GetValue(_data),
|
||||
Position = _data.GetType().GetProperty("Position").GetValue(_data),
|
||||
OCName = _data.GetType().GetProperty("OCName").GetValue(_data),
|
||||
Age = _data.GetType().GetProperty("Age").GetValue(_data),
|
||||
Amount = _data.GetType().GetProperty("Amount").GetValue(_data),
|
||||
Remark = _data.GetType().GetProperty("Remark").GetValue(_data),
|
||||
});
|
||||
}
|
||||
var tbl1 = (Telerik.Reporting.Table)report.Items["detailsection1"].Items["table1"];
|
||||
tbl1.DataSource = historysalary;
|
||||
|
||||
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);
|
||||
return File(result.DocumentBytes, mimeType, $"ประวัติสำหรับการเสนอขอพระราชทานเหรียญจักรพรรดิมาลา.{exportType.Trim().ToLower()}");
|
||||
|
||||
}
|
||||
catch
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue