add preview pdf
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using ClosedXML.Excel;
|
||||
using FastReport;
|
||||
using FastReport.Export.Pdf;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using rmutr_report.Models;
|
||||
using Swashbuckle.AspNetCore.Annotations;
|
||||
@@ -21,6 +24,125 @@ namespace rmutr_report.Controllers
|
||||
[ApiExplorerSettings(GroupName = "reports")]
|
||||
public IActionResult GetDetailStdReport([FromRoute] string type, [FromBody] student_totalcampus _std)
|
||||
{
|
||||
var hr1 = new List<student_totalcampus>() {_std};
|
||||
foreach (var header in _std.header_data)
|
||||
{
|
||||
header.total1 = header.male1 + header.female1;
|
||||
header.total2 = header.male2 + header.female2;
|
||||
header.total3 = header.male3 + header.female3;
|
||||
header.total4 = header.male4 + header.female4;
|
||||
header.total5 = header.male5 + header.female5;
|
||||
header.total6 = header.male6 + header.female6;
|
||||
header.total7 = header.male1 + header.male2 + header.male3 + header.male4 +
|
||||
header.male5 + header.male6 +
|
||||
header.female1 + header.female2 + header.female3 + header.female4 +
|
||||
header.female5 + header.female6;
|
||||
header.room7 = header.room1 + header.room2 + header.room3 +
|
||||
header.room4 + header.room5 + header.room6;
|
||||
header.male7 = header.male1 + header.male2 + header.male3 + header.male4 +
|
||||
header.male5 + header.male6;
|
||||
header.female7 = header.female1 + header.female2 + header.female3 + header.female4 +
|
||||
header.female5 + header.female6;
|
||||
foreach (var data in header.data)
|
||||
{
|
||||
data.total1 = data.male1 + data.female1;
|
||||
data.total2 = data.male2 + data.female2;
|
||||
data.total3 = data.male3 + data.female3;
|
||||
data.total4 = data.male4 + data.female4;
|
||||
data.total5 = data.male5 + data.female5;
|
||||
data.total6 = data.male6 + data.female6;
|
||||
data.total7 = data.male1 + data.male2 + data.male3 + data.male4 +
|
||||
data.male5 + data.male6 +
|
||||
data.female1 + data.female2 + data.female3 + data.female4 +
|
||||
data.female5 + data.female6;
|
||||
data.room7 = data.room1 + data.room2 + data.room3 +
|
||||
data.room4 + data.room5 + data.room6;
|
||||
data.male7 = data.male1 + data.male2 + data.male3 + data.male4 +
|
||||
data.male5 + data.male6;
|
||||
data.female7 = data.female1 + data.female2 + data.female3 + data.female4 +
|
||||
data.female5 + data.female6;
|
||||
if (header.filter == "0")
|
||||
{
|
||||
data.name = null;
|
||||
data.male1 = null;
|
||||
data.male2 = null;
|
||||
data.male3 = null;
|
||||
data.male4 = null;
|
||||
data.male5 = null;
|
||||
data.male6 = null;
|
||||
data.male7 = null;
|
||||
data.female1 = null;
|
||||
data.female2 = null;
|
||||
data.female3 = null;
|
||||
data.female4 = null;
|
||||
data.female5 = null;
|
||||
data.female6 = null;
|
||||
data.female7 = null;
|
||||
data.total1 = null;
|
||||
data.total2 = null;
|
||||
data.total3 = null;
|
||||
data.total4 = null;
|
||||
data.total5 = null;
|
||||
data.total6 = null;
|
||||
data.total7 = null;
|
||||
data.room1 = null;
|
||||
data.room2 = null;
|
||||
data.room3 = null;
|
||||
data.room4 = null;
|
||||
data.room5 = null;
|
||||
data.room6 = null;
|
||||
data.room7 = null;
|
||||
}
|
||||
}
|
||||
if (header.filter == "0")
|
||||
{
|
||||
header.header_name = null;
|
||||
header.male1 = null;
|
||||
header.male2 = null;
|
||||
header.male3 = null;
|
||||
header.male4 = null;
|
||||
header.male5 = null;
|
||||
header.male6 = null;
|
||||
header.male7 = null;
|
||||
header.female1 = null;
|
||||
header.female2 = null;
|
||||
header.female3 = null;
|
||||
header.female4 = null;
|
||||
header.female5 = null;
|
||||
header.female6 = null;
|
||||
header.female7 = null;
|
||||
header.total1 = null;
|
||||
header.total2 = null;
|
||||
header.total3 = null;
|
||||
header.total4 = null;
|
||||
header.total5 = null;
|
||||
header.total6 = null;
|
||||
header.total7 = null;
|
||||
header.room1 = null;
|
||||
header.room2 = null;
|
||||
header.room3 = null;
|
||||
header.room4 = null;
|
||||
header.room5 = null;
|
||||
header.room6 = null;
|
||||
header.room7 = null;
|
||||
}
|
||||
}
|
||||
|
||||
Report report = new Report();
|
||||
report.Load(_setting.report_path + "student_total_campus.frx");
|
||||
report.RegisterData(hr1, "student_totalcampus");
|
||||
report.Prepare();
|
||||
|
||||
MemoryStream stream1 = new MemoryStream();
|
||||
switch (type)
|
||||
{
|
||||
case "pdf":
|
||||
PDFExport pdf = new PDFExport();
|
||||
report.Export(pdf, stream1);
|
||||
stream1.Seek(0, SeekOrigin.Begin);
|
||||
return File(stream1, "application/pdf");
|
||||
|
||||
}
|
||||
var workbook = new XLWorkbook();
|
||||
var ws = workbook.Worksheets.Add("student_total_campus");
|
||||
ws.Range("A1:AD1").Merge().Value = "จำนวนนักศึกษาทั้งหมด ปีการศึกษา " + _std.academic_year_name_th +
|
||||
@@ -154,7 +276,7 @@ namespace rmutr_report.Controllers
|
||||
header.room6;
|
||||
|
||||
|
||||
if (header.filter == 1)
|
||||
if (header.filter == "1")
|
||||
{
|
||||
ws.Cell(row, 1).Value = header.header_name;
|
||||
ws.Cell(row, 2).Value = null;
|
||||
@@ -207,7 +329,7 @@ namespace rmutr_report.Controllers
|
||||
row++;
|
||||
}
|
||||
|
||||
if (header.filter == (decimal?) 1.1)
|
||||
if (header.filter == "1.1")
|
||||
{
|
||||
foreach (var detail in header.data)
|
||||
{
|
||||
@@ -265,7 +387,7 @@ namespace rmutr_report.Controllers
|
||||
}
|
||||
}
|
||||
|
||||
if (header.filter == 2)
|
||||
if (header.filter == "2")
|
||||
{
|
||||
ws.Cell(row, 1).Value = header.header_name;
|
||||
ws.Cell(row, 2).Value = null;
|
||||
@@ -319,7 +441,7 @@ namespace rmutr_report.Controllers
|
||||
row++;
|
||||
}
|
||||
|
||||
if (header.filter == 3)
|
||||
if (header.filter == "3")
|
||||
{
|
||||
ws.Cell(row, 1).Value = header.header_name;
|
||||
ws.Cell(row, 2).Value = null;
|
||||
@@ -373,7 +495,7 @@ namespace rmutr_report.Controllers
|
||||
row++;
|
||||
}
|
||||
|
||||
if (header.filter == 4)
|
||||
if (header.filter == "4")
|
||||
{
|
||||
ws.Cell(row, 1).Value = header.header_name;
|
||||
ws.Cell(row, 2).Value = null;
|
||||
@@ -426,7 +548,7 @@ namespace rmutr_report.Controllers
|
||||
row++;
|
||||
}
|
||||
|
||||
if (header.filter == (decimal?) 4.1)
|
||||
if (header.filter == "4.1")
|
||||
{
|
||||
foreach (var detail in header.data)
|
||||
{
|
||||
@@ -486,7 +608,7 @@ namespace rmutr_report.Controllers
|
||||
//rowno++;
|
||||
}
|
||||
|
||||
if (header.filter == (decimal?) 4.2)
|
||||
if (header.filter == "4.2")
|
||||
{
|
||||
foreach (var detail in header.data)
|
||||
{
|
||||
@@ -552,7 +674,7 @@ namespace rmutr_report.Controllers
|
||||
}
|
||||
}
|
||||
|
||||
if (header.filter == 5)
|
||||
if (header.filter == "5")
|
||||
{
|
||||
ws.Cell(row, 1).Value = header.header_name;
|
||||
ws.Cell(row, 2).Value = null;
|
||||
@@ -605,7 +727,7 @@ namespace rmutr_report.Controllers
|
||||
row++;
|
||||
}
|
||||
|
||||
if (header.filter == (decimal?) 5.1)
|
||||
if (header.filter == "5.1")
|
||||
{
|
||||
foreach (var detail in header.data)
|
||||
{
|
||||
@@ -673,7 +795,7 @@ namespace rmutr_report.Controllers
|
||||
}
|
||||
}
|
||||
|
||||
if (header.filter == 6)
|
||||
if (header.filter == "6")
|
||||
{
|
||||
ws.Cell(row, 1).Value = header.header_name;
|
||||
ws.Cell(row, 2).Value = null;
|
||||
@@ -726,7 +848,7 @@ namespace rmutr_report.Controllers
|
||||
row++;
|
||||
}
|
||||
|
||||
if (header.filter == (decimal?) 3.1)
|
||||
if (header.filter == "3.1")
|
||||
{
|
||||
foreach (var detail in header.data)
|
||||
{
|
||||
@@ -791,7 +913,7 @@ namespace rmutr_report.Controllers
|
||||
}
|
||||
}
|
||||
|
||||
if (header.filter == 0)
|
||||
if (header.filter == "0")
|
||||
{
|
||||
ws.Cell(row, 1).Value = null;
|
||||
ws.Cell(row, 2).Value = null;
|
||||
|
||||
Reference in New Issue
Block a user