init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,249 @@
|
|||
using System.Data;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using Kreta.Core.ConnectionType;
|
||||
using OfficeOpenXml;
|
||||
|
||||
namespace Kreta.BusinessLogic.Helpers.Nyomtatvanyok.Excel
|
||||
{
|
||||
public class TanulokMulasztasaiExcel : BaseNyomtatvanyExcelWithDataSet
|
||||
{
|
||||
private bool _elmeletGyakorlat = false;
|
||||
public TanulokMulasztasaiExcel(IConnectionType connectionType, bool isMultisheetExcel = false, string templateFilename = null, bool elmeletGyakorlat = false) : base(connectionType, isMultisheetExcel)
|
||||
{
|
||||
FileInfo exFile = null;
|
||||
if (templateFilename != null)
|
||||
{
|
||||
exFile = new FileInfo(templateFilename);
|
||||
}
|
||||
ExcelPackage = (exFile == null) ? new ExcelPackage() : new ExcelPackage(exFile);
|
||||
_elmeletGyakorlat = elmeletGyakorlat;
|
||||
//Munkalap tulajdonságok beállítása
|
||||
SetWorkbookProperties();
|
||||
}
|
||||
|
||||
public override void CreateSheet(DataSet ds, int osztalyId, int sheetIndex = 1)
|
||||
{
|
||||
// Adatforrás összeállítása
|
||||
SetExcelDataSet(ds);
|
||||
DataTable fejlecDt = DataSet.Tables[0];
|
||||
var dv = DataSet.Tables[1].DefaultView;
|
||||
dv.Sort = "OsztalyNev ASC,TanuloNev ASC";
|
||||
DataTable mulasztasokDt = dv.ToTable(DataSet.Tables[1].TableName);
|
||||
|
||||
//Munkalap összeállítása
|
||||
string osztalyNev = fejlecDt.Rows.Cast<DataRow>().First(x => (int)x["OsztalyId"] == osztalyId)["OsztalyNev"].ToString();
|
||||
ExcelWorksheet worksheet;
|
||||
int startRow = 2;
|
||||
if (ExcelPackage.Workbook.Worksheets.All(x => x.Name != osztalyNev))
|
||||
{
|
||||
if (_elmeletGyakorlat)
|
||||
{
|
||||
worksheet = CreateSheet(osztalyNev, sheetIndex, eOrientation.Landscape, true);
|
||||
worksheet.Row(1).Height = 15;
|
||||
worksheet.Row(2).Height = 15;
|
||||
worksheet.Row(3).Height = 15;
|
||||
worksheet.View.FreezePanes(4, 2);
|
||||
|
||||
//Fejléc kialakítása
|
||||
AddLabelRange(worksheet, 1, 1, 3, 1, "Tanuló neve", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 2, 3, 2, "Oktatási azonosító", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 3, 3, 3, "Osztály", DocheaderStyleSideBordered);
|
||||
|
||||
AddLabelRange(worksheet, 1, 4, 1, 18, "Gyakorlati", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 19, 1, 37, "Elméleti", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 38, 2, 48, "Igazolások típusa", DocheaderStyleSideBordered);
|
||||
|
||||
AddLabelRange(worksheet, 2, 4, 2, 6, "Tanórai hiányzás", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 7, 2, 9, "Tanórán kívüli hiányzás", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 10, 2, 12, "Tanórai késések száma", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 13, 2, 15, "Tanóráról késett percek száma", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 16, 2, 18, "Tanóráról késett órák", DocheaderStyleSideBordered);
|
||||
|
||||
AddLabelRange(worksheet, 2, 19, 2, 21, "Tanórai hiányzás", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 22, 2, 24, "Tanórán kívüli hiányzás", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 25, 2, 27, "Tanórai késések száma", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 28, 2, 30, "Tanóráról késett percek száma", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 31, 2, 33, "Tanóráról késett órák", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 34, 2, 35, "Hozott hiányzás", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 2, 36, 2, 37, "Hozott késett perc", DocheaderStyleSideBordered);
|
||||
|
||||
for (int i = 0; i < 10; ++i)
|
||||
{
|
||||
AddLabelCell(worksheet, 3, 4 + (i * 3), "Igazolandó", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 5 + (i * 3), "Igazolt", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 6 + (i * 3), "Igazolatlan", DocheaderStyleSideBordered);
|
||||
}
|
||||
AddLabelCell(worksheet, 3, 34, "Igazolt", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 35, "Igazolatlan", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 36, "Igazolt", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 37, "Igazolatlan", DocheaderStyleSideBordered);
|
||||
|
||||
AddLabelCell(worksheet, 3, 38, "Orvosi igazolás", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 39, "Gondviselői igazolás", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 40, "Hivatalos távollét", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 41, "Iskolaérdekű távollét", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 42, "Szolgáltatói igazolás", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 43, "Iskolai engedély", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 44, "Pályaválasztási célú igazolás", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 45, "Kikérő", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 46, "Táppénz", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 47, "Hatósági házi karantén", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 3, 48, "Egyéb", DocheaderStyleSideBordered);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
worksheet = CreateSheet(osztalyNev, sheetIndex, eOrientation.Landscape, true);
|
||||
worksheet.Row(1).Height = 15;
|
||||
worksheet.Row(2).Height = 15;
|
||||
worksheet.View.FreezePanes(3, 2);
|
||||
|
||||
//Fejléc kialakítása
|
||||
AddLabelRange(worksheet, 1, 1, 2, 1, "Tanuló neve", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 2, 2, 2, "Oktatási azonosító", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 3, 2, 3, "Osztály", DocheaderStyleSideBordered);
|
||||
|
||||
AddLabelRange(worksheet, 1, 4, 1, 6, "Tanórai hiányzás", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 7, 1, 9, "Tanórán kívüli hiányzás", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 10, 1, 12, "Tanórai késések száma", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 13, 1, 15, "Tanóráról késett percek száma", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 16, 1, 18, "Tanóráról késett órák", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 19, 1, 20, "Hozott hiányzás", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 21, 1, 22, "Hozott késett perc", DocheaderStyleSideBordered);
|
||||
AddLabelRange(worksheet, 1, 23, 1, 33, "Igazolások típusa", DocheaderStyleSideBordered);
|
||||
|
||||
for (int i = 0; i < 5; ++i)
|
||||
{
|
||||
AddLabelCell(worksheet, 2, 4 + (i * 3), "Igazolandó", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 5 + (i * 3), "Igazolt", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 6 + (i * 3), "Igazolatlan", DocheaderStyleSideBordered);
|
||||
}
|
||||
AddLabelCell(worksheet, 2, 19, "Igazolt", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 20, "Igazolatlan", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 21, "Igazolt", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 22, "Igazolatlan", DocheaderStyleSideBordered);
|
||||
|
||||
AddLabelCell(worksheet, 2, 23, "Orvosi igazolás", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 24, "Gondviselői igazolás", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 25, "Hivatalos távollét", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 26, "Iskolaérdekű távollét", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 27, "Szolgáltatói igazolás", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 28, "Iskolai engedély", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 29, "Pályaválasztási célú igazolás", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 30, "Kikérő", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 31, "Táppénz", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 32, "Hatósági házi karantén", DocheaderStyleSideBordered);
|
||||
AddLabelCell(worksheet, 2, 33, "Egyéb", DocheaderStyleSideBordered);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
worksheet = ExcelPackage.Workbook.Worksheets.Single(x => x.Name == osztalyNev);
|
||||
}
|
||||
|
||||
startRow = worksheet.Dimension.End.Row + 1;
|
||||
string[] columns;
|
||||
if (_elmeletGyakorlat)
|
||||
{
|
||||
columns = new string[]
|
||||
{
|
||||
"TanuloNev"
|
||||
, "TanuloOktAzon"
|
||||
, "OsztalyNev"
|
||||
, "TanoraiHianyzasIgazolandoGyakorlati"
|
||||
, "TanoraiHianyzasIgazoltGyakorlati"
|
||||
, "TanoraiHianyzasIgazolatlanGyakorlati"
|
||||
, "TanoranKivuliHianyzasIgazolandoGyakorlati"
|
||||
, "TanoranKivuliHianyzasIgazoltGyakorlati"
|
||||
, "TanoranKivuliHianyzasIgazolatlanGyakorlati"
|
||||
, "TanoraiKesesDarabszamIgazolandoGyakorlati"
|
||||
, "TanoraiKesesDarabszamIgazoltGyakorlati"
|
||||
, "TanoraiKesesDarabszamIgazolatlanGyakorlati"
|
||||
, "TanoraiKesesIgazolandoGyakorlatiPerc"
|
||||
, "TanoraiKesesIgazoltGyakorlatiPerc"
|
||||
, "TanoraiKesesIgazolatlanGyakorlatiPerc"
|
||||
, "SzamitottKesesIgazolandoGyakorlati"
|
||||
, "SzamitottKesesIgazoltGyakorlati"
|
||||
, "SzamitottKesesIgazolatlanGyakorlati"
|
||||
, "TanoraiHianyzasIgazolandoElmeleti"
|
||||
, "TanoraiHianyzasIgazoltElmeleti"
|
||||
, "TanoraiHianyzasIgazolatlanElmeleti"
|
||||
, "TanoranKivuliHianyzasIgazolandoElmeleti"
|
||||
, "TanoranKivuliHianyzasIgazoltElmeleti"
|
||||
, "TanoranKivuliHianyzasIgazolatlanElmeleti"
|
||||
, "TanoraiKesesDarabszamIgazolandoElmeleti"
|
||||
, "TanoraiKesesDarabszamIgazoltElmeleti"
|
||||
, "TanoraiKesesDarabszamIgazolatlanElmeleti"
|
||||
, "TanoraiKesesIgazolandoElmeletiPerc"
|
||||
, "TanoraiKesesIgazoltElmeletiPerc"
|
||||
, "TanoraiKesesIgazolatlanElmeletiPerc"
|
||||
, "SzamitottKesesIgazolandoElmeleti"
|
||||
, "SzamitottKesesIgazoltElmeleti"
|
||||
, "SzamitottKesesIgazolatlanElmeleti"
|
||||
, "HozottIgazoltHianyzas"
|
||||
, "HozottIgazolatlanHianyzas"
|
||||
, "HozottIgazoltHianyzasPerc"
|
||||
, "HozottIgazolatlanKesesPerc"
|
||||
, "OrvosiIgazolas"
|
||||
, "SzuloiIgazolas"
|
||||
, "HivatalosTavolletIgazolas"
|
||||
, "IskolaerdekuTavolletIgazolas"
|
||||
, "SzolgaltatoiIgazolas"
|
||||
, "IskolaiEngedelyIgazolas"
|
||||
, "PalyavalasztasiCeluIgazolas"
|
||||
, "KikeroIgazolas"
|
||||
, "TappenzIgazolas"
|
||||
, "HatosagiHaziKaranten"
|
||||
, "EgyebIgazolas"
|
||||
};
|
||||
}
|
||||
else
|
||||
{
|
||||
columns = new string[]
|
||||
{
|
||||
"TanuloNev"
|
||||
, "TanuloOktAzon"
|
||||
, "OsztalyNev"
|
||||
, "TanoraiHianyzasIgazolando"
|
||||
, "TanoraiHianyzasIgazolt"
|
||||
, "TanoraiHianyzasIgazolatlan"
|
||||
, "TanoranKivuliHianyzasIgazolando"
|
||||
, "TanoranKivuliHianyzasIgazolt"
|
||||
, "TanoranKivuliHianyzasIgazolatlan"
|
||||
, "TanoraiKesesDarabszamIgazolando"
|
||||
, "TanoraiKesesDarabszamIgazolt"
|
||||
, "TanoraiKesesDarabszamIgazolatlan"
|
||||
, "TanoraiKesesIgazolandoPerc"
|
||||
, "TanoraiKesesIgazoltPerc"
|
||||
, "TanoraiKesesIgazolatlanPerc"
|
||||
, "SzamitottKesesIgazolando"
|
||||
, "SzamitottKesesIgazolt"
|
||||
, "SzamitottKesesIgazolatlan"
|
||||
, "HozottIgazoltHianyzas"
|
||||
, "HozottIgazolatlanHianyzas"
|
||||
, "HozottIgazoltHianyzasPerc"
|
||||
, "HozottIgazolatlanKesesPerc"
|
||||
, "OrvosiIgazolas"
|
||||
, "SzuloiIgazolas"
|
||||
, "HivatalosTavolletIgazolas"
|
||||
, "IskolaerdekuTavolletIgazolas"
|
||||
, "SzolgaltatoiIgazolas"
|
||||
, "IskolaiEngedelyIgazolas"
|
||||
, "PalyavalasztasiCeluIgazolas"
|
||||
, "KikeroIgazolas"
|
||||
, "TappenzIgazolas"
|
||||
, "HatosagiHaziKaranten"
|
||||
, "EgyebIgazolas"
|
||||
};
|
||||
}
|
||||
|
||||
AddDataTable(worksheet, startRow, 1, mulasztasokDt, "OsztalyId=" + osztalyId, NormalStyle, HeaderStyle, dtCols: columns);
|
||||
worksheet.Column(1).AutoFit(18);
|
||||
for (var i = 2; i <= mulasztasokDt.Columns.Count; ++i)
|
||||
{
|
||||
worksheet.Column(i).AutoFit(11);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue