This commit is contained in:
kamonwan taengsuk
2022-11-07 17:43:51 +07:00
parent cea1bbbaac
commit eb9d120c11
10 changed files with 649 additions and 0 deletions

View File

@@ -499,6 +499,222 @@ namespace rmutr_report.Controllers
break;
}
return Ok();
}
[HttpPost, Route("reports/hr_discipline/{type}")]
[ApiExplorerSettings(GroupName = "reports")]
public IActionResult GetHr4Report([FromRoute] string type, [FromBody] hr_discipline _hr)
{
var hr1 = new List<hr_discipline>() {_hr};
Report report = new Report();
report.Load(_setting.report_path + "discipline.frx");
report.RegisterData(hr1, "hr_discipline");
report.Prepare();
MemoryStream stream = new MemoryStream();
switch (type)
{
case "pdf":
PDFExport pdf = new PDFExport();
report.Export(pdf, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/pdf");
break;
case "xls":
case "xlsx":
Excel2007Export excel = new Excel2007Export();
report.Export(excel, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/vnd.ms-excel");
break;
case "mht":
MHTExport mht = new MHTExport();
report.Export(mht, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "multipart/related");
break;
case "csv":
CSVExport csv = new CSVExport();
report.Export(csv, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "text/csv");
break;
}
return Ok();
}
[HttpPost, Route("reports/hr_attend/{type}")]
[ApiExplorerSettings(GroupName = "reports")]
public IActionResult GetHr5Report([FromRoute] string type, [FromBody] hr_attend _hr)
{
var hr1 = new List<hr_attend>() {_hr};
Report report = new Report();
report.Load(_setting.report_path + "hr_attend.frx");
report.RegisterData(hr1, "hr_attend");
report.Prepare();
MemoryStream stream = new MemoryStream();
switch (type)
{
case "pdf":
PDFExport pdf = new PDFExport();
report.Export(pdf, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/pdf");
break;
case "xls":
case "xlsx":
Excel2007Export excel = new Excel2007Export();
report.Export(excel, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/vnd.ms-excel");
break;
case "mht":
MHTExport mht = new MHTExport();
report.Export(mht, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "multipart/related");
break;
case "csv":
CSVExport csv = new CSVExport();
report.Export(csv, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "text/csv");
break;
}
return Ok();
}
[HttpPost, Route("reports/hr_retire/{type}")]
[ApiExplorerSettings(GroupName = "reports")]
public IActionResult GetHr6Report([FromRoute] string type, [FromBody] hr_attend _hr)
{
var hr1 = new List<hr_attend>() {_hr};
Report report = new Report();
report.Load(_setting.report_path + "hr_retire.frx");
report.RegisterData(hr1, "hr_attend");
report.Prepare();
MemoryStream stream = new MemoryStream();
switch (type)
{
case "pdf":
PDFExport pdf = new PDFExport();
report.Export(pdf, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/pdf");
break;
case "xls":
case "xlsx":
Excel2007Export excel = new Excel2007Export();
report.Export(excel, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/vnd.ms-excel");
break;
case "mht":
MHTExport mht = new MHTExport();
report.Export(mht, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "multipart/related");
break;
case "csv":
CSVExport csv = new CSVExport();
report.Export(csv, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "text/csv");
break;
}
return Ok();
}
[HttpPost, Route("reports/hr_contract_history/{type}")]
[ApiExplorerSettings(GroupName = "reports")]
public IActionResult GetHr7Report([FromRoute] string type, [FromBody] List<hr_contract_history> _hr)
{
Report report = new Report();
report.Load(_setting.report_path + "hr_contract_history.frx");
report.RegisterData(_hr, "hr_contract_history");
report.Prepare();
MemoryStream stream = new MemoryStream();
switch (type)
{
case "pdf":
PDFExport pdf = new PDFExport();
report.Export(pdf, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/pdf");
break;
case "xls":
case "xlsx":
Excel2007Export excel = new Excel2007Export();
report.Export(excel, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/vnd.ms-excel");
break;
case "mht":
MHTExport mht = new MHTExport();
report.Export(mht, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "multipart/related");
break;
case "csv":
CSVExport csv = new CSVExport();
report.Export(csv, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "text/csv");
break;
}
return Ok();
}
[HttpPost, Route("reports/hr_insignia/{type}")]
[ApiExplorerSettings(GroupName = "reports")]
public IActionResult GetHr8Report([FromRoute] string type, [FromBody] List<hr_insignia> _hr)
{
Report report = new Report();
report.Load(_setting.report_path + "hr_insignia.frx");
report.RegisterData(_hr, "hr_insignia");
report.Prepare();
MemoryStream stream = new MemoryStream();
switch (type)
{
case "pdf":
PDFExport pdf = new PDFExport();
report.Export(pdf, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/pdf");
break;
case "xls":
case "xlsx":
Excel2007Export excel = new Excel2007Export();
report.Export(excel, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "application/vnd.ms-excel");
break;
case "mht":
MHTExport mht = new MHTExport();
report.Export(mht, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "multipart/related");
break;
case "csv":
CSVExport csv = new CSVExport();
report.Export(csv, stream);
stream.Seek(0, SeekOrigin.Begin);
return File(stream, "text/csv");
break;
}
return Ok();
}
}