แก้รายงานทดลองงาน, เครื่องราช
This commit is contained in:
parent
443c42252c
commit
929d9d5c96
5 changed files with 48 additions and 18 deletions
|
|
@ -872,7 +872,7 @@ namespace BMA.EHR.Application.Repositories.Reports
|
||||||
foreach (var ins in insigniaList)
|
foreach (var ins in insigniaList)
|
||||||
{
|
{
|
||||||
var count = data.Where(x => x.InsigniaId == ins.InsigniaId).Count();
|
var count = data.Where(x => x.InsigniaId == ins.InsigniaId).Count();
|
||||||
var mod_val = count <= 50 ? 50 - count : count % 50.0;
|
var mod_val = count <= 50 ? 50 - count : 50-(count % 50.0);
|
||||||
for (int i = 0; i < mod_val; i++)
|
for (int i = 0; i < mod_val; i++)
|
||||||
{
|
{
|
||||||
var p = new
|
var p = new
|
||||||
|
|
@ -890,7 +890,7 @@ namespace BMA.EHR.Application.Repositories.Reports
|
||||||
data.Add(p);
|
data.Add(p);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return data;
|
return data.OrderBy(x => x.InsigniaName);
|
||||||
}
|
}
|
||||||
|
|
||||||
//46-ประวัติสำหรับการเสนอขอพระราชทานเหรียญจักรพรรดิมาลา
|
//46-ประวัติสำหรับการเสนอขอพระราชทานเหรียญจักรพรรดิมาลา
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ namespace BMA.EHR.Report.Service.Controllers
|
||||||
[ApiVersion("2.0")]
|
[ApiVersion("2.0")]
|
||||||
[ApiController]
|
[ApiController]
|
||||||
[Produces("application/json")]
|
[Produces("application/json")]
|
||||||
//[Authorize]
|
[Authorize]
|
||||||
[SwaggerTag("API รายงานระบบเครื่องราชอิสริยาภรณ์")]
|
[SwaggerTag("API รายงานระบบเครื่องราชอิสริยาภรณ์")]
|
||||||
public class InsigniaReportController : BaseController
|
public class InsigniaReportController : BaseController
|
||||||
{
|
{
|
||||||
|
|
@ -496,7 +496,6 @@ namespace BMA.EHR.Report.Service.Controllers
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
var data = await _repository.GetCoinReport(id);
|
var data = await _repository.GetCoinReport(id);
|
||||||
var YearInsignalPeriod = await _repository.GetYearInsigniaPeriod(id);
|
var YearInsignalPeriod = await _repository.GetYearInsigniaPeriod(id);
|
||||||
var mimeType = "";
|
var mimeType = "";
|
||||||
|
|
@ -519,33 +518,64 @@ namespace BMA.EHR.Report.Service.Controllers
|
||||||
report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream);
|
report = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream);
|
||||||
report2 = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream2);
|
report2 = (Telerik.Reporting.Report)reportPacker.UnpackageDocument(sourceStream2);
|
||||||
}
|
}
|
||||||
string OCName = string.Empty;
|
var OCName = string.Empty;
|
||||||
//foreach (var info in data)
|
|
||||||
//{
|
|
||||||
// OCName = info.GetType().GetProperty("OCName").GetValue(info);
|
|
||||||
// break;
|
|
||||||
//}
|
|
||||||
report.ReportParameters["YearInsignalPeriod"].Value = YearInsignalPeriod;
|
report.ReportParameters["YearInsignalPeriod"].Value = YearInsignalPeriod;
|
||||||
report.ReportParameters["OCName"].Value = OCName;
|
report.ReportParameters["OCName"].Value = OCName;
|
||||||
|
|
||||||
var dataList = new List<dynamic>(data);
|
var dataList = new List<dynamic>(data);
|
||||||
var detailList = new List<dynamic>();
|
var detailList = new List<dynamic>();
|
||||||
|
var check = 0;
|
||||||
var ChkInsigniaName = string.IsNullOrEmpty(dataList[0].GetType().GetProperty("InsigniaName").GetValue(dataList[0]))? string.Empty: dataList[0].GetType().GetProperty("InsigniaName").GetValue(dataList[0]);
|
var status = false;
|
||||||
|
|
||||||
for (int i = 0; i < dataList.Count; i++)
|
for (int i = 0; i < dataList.Count; i++)
|
||||||
{
|
{
|
||||||
|
check++;
|
||||||
|
var gender = dataList[i].GetType().GetProperty("Gender").GetValue(dataList[i]);
|
||||||
detailList.Add(new
|
detailList.Add(new
|
||||||
{
|
{
|
||||||
|
status = status,
|
||||||
row = detailList.Count + 1,
|
row = detailList.Count + 1,
|
||||||
Number = (detailList.Count + 1).ToString().ToThaiNumber(),
|
Number = (detailList.Count + 1).ToString().ToThaiNumber(),
|
||||||
InsigniaName = dataList[i].GetType().GetProperty("InsigniaName").GetValue(dataList[i]),
|
InsigniaName = dataList[i].GetType().GetProperty("InsigniaName").GetValue(dataList[i]),
|
||||||
FullName = dataList[i].GetType().GetProperty("FullName").GetValue(dataList[i]),
|
FullName = dataList[i].GetType().GetProperty("FullName").GetValue(dataList[i]),
|
||||||
InsigniaInitial = dataList[i].GetType().GetProperty("InsigniaInitial").GetValue(dataList[i]),
|
InsigniaInitial = dataList[i].GetType().GetProperty("InsigniaInitial").GetValue(dataList[i]),
|
||||||
Male = dataList[i].GetType().GetProperty("Male").GetValue(dataList[i]),
|
Male = gender == "ชาย" ? 1 : 0,
|
||||||
Female = dataList[i].GetType().GetProperty("Female").GetValue(dataList[i]),
|
Female = gender == "หญิง" ? 1 : 0,
|
||||||
}); ;
|
});
|
||||||
|
|
||||||
|
if (check == 25)
|
||||||
|
{
|
||||||
|
status = true;
|
||||||
|
}
|
||||||
|
else if(check == 50)
|
||||||
|
{
|
||||||
|
status = false;
|
||||||
|
check = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (detailList.Count > 0)
|
||||||
|
{
|
||||||
|
var left = detailList.Where(x => x.status == false);
|
||||||
|
var right = detailList.Where(x => x.status == true);
|
||||||
|
var mergeList = new List<object>();
|
||||||
|
for (int i = 0; i < detailList.Count / 2; i++)
|
||||||
|
{
|
||||||
|
mergeList.Add(new
|
||||||
|
{
|
||||||
|
row = mergeList.Count + 1,
|
||||||
|
RowLeft = left.ElementAt(i).GetType().GetProperty("Number").GetValue(left.ElementAt(i)),
|
||||||
|
NameLeft = left.ElementAt(i).GetType().GetProperty("FullName").GetValue(left.ElementAt(i)),
|
||||||
|
RowRight = right.ElementAt(i).GetType().GetProperty("Number").GetValue(right.ElementAt(i)),
|
||||||
|
NameRight = right.ElementAt(i).GetType().GetProperty("FullName").GetValue(right.ElementAt(i)),
|
||||||
|
InsigniaInitial = left.ElementAt(i).GetType().GetProperty("InsigniaInitial").GetValue(left.ElementAt(i)),
|
||||||
|
InsigniaName = left.ElementAt(i).GetType().GetProperty("InsigniaName").GetValue(left.ElementAt(i)),
|
||||||
|
Male = left.ElementAt(i).GetType().GetProperty("Male").GetValue(left.ElementAt(i)) + right.ElementAt(i).GetType().GetProperty("Male").GetValue(right.ElementAt(i)),
|
||||||
|
Female = left.ElementAt(i).GetType().GetProperty("Female").GetValue(left.ElementAt(i)) + right.ElementAt(i).GetType().GetProperty("Female").GetValue(right.ElementAt(i)),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
report.DataSource = mergeList;
|
||||||
}
|
}
|
||||||
report.DataSource = detailList;
|
|
||||||
|
|
||||||
var reportBook = new ReportBook();
|
var reportBook = new ReportBook();
|
||||||
reportBook.Reports.Add(report);
|
reportBook.Reports.Add(report);
|
||||||
|
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue