760 lines
44 KiB
C#
760 lines
44 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.Data;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Web.Mvc;
|
|
using System.Web.Routing;
|
|
using System.Xml.Linq;
|
|
using ICSharpCode.SharpZipLib.Zip;
|
|
using Kreta.BusinessLogic.Classes;
|
|
using Kreta.BusinessLogic.Classes.AsposeHelpers;
|
|
using Kreta.BusinessLogic.HelperClasses;
|
|
using Kreta.BusinessLogic.Helpers;
|
|
using Kreta.BusinessLogic.Helpers.SystemSettings;
|
|
using Kreta.BusinessLogic.Interfaces;
|
|
using Kreta.BusinessLogic.Security;
|
|
using Kreta.Core;
|
|
using Kreta.Core.Configuratiaton.Interface;
|
|
using Kreta.Core.FeatureToggle;
|
|
using Kreta.Core.Iktato.Poszeidon.Factory.Interface;
|
|
using Kreta.Enums;
|
|
using Kreta.Enums.ManualEnums;
|
|
using Kreta.Framework;
|
|
using Kreta.Resources;
|
|
using Kreta.Web.Areas.Nyomtatvanyok.Logic;
|
|
using Kreta.Web.Areas.Nyomtatvanyok.Models;
|
|
using Kreta.Web.Controllers;
|
|
using Kreta.Web.Helpers;
|
|
using Kreta.Web.Helpers.Error;
|
|
using Kreta.Web.Helpers.Modal;
|
|
using Kreta.Web.Menu;
|
|
using Kreta.Web.Models.EditorTemplates;
|
|
using Kreta.Web.Security;
|
|
|
|
namespace Kreta.Web.Areas.Nyomtatvanyok.Controllers
|
|
{
|
|
//[AllowAnonymous]
|
|
[MvcRoleClaimsAuthorize(true)]
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue, KretaClaimPackages.IsArchivIntezmeny.ClaimValue)]
|
|
public partial class NyomtatvanyokController : BaseNyomtatvanyokController
|
|
{
|
|
private IFeatureContext FeatureContext { get; }
|
|
private IIktatoRepositoryFactory IktatoRepositoryFactory { get; }
|
|
private IktatoServiceConfiguration IktatoServiceConfiguration { get; }
|
|
private readonly IKozpontiKretaHelper KozpontiKretaHelper;
|
|
private readonly IKozpontiKretaConfiguration KozpontiKretaConfiguration;
|
|
|
|
private bool RendszerbeallitasMindenkiLathatjaAzOsszesDokumentumot => new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.osszes_dokumentum_eleresenek_engedelyezese_szaktanarok_es_osztalyfonokok_reszere);
|
|
|
|
public class NyomtatvanyModel : NyomtatvanyBaseModel
|
|
{
|
|
public int TanevId { get; set; }
|
|
public int OsztalyId { get; set; }
|
|
public int OsztalyCsoportId { get; set; }
|
|
public List<int> OsztalyCsoportIdList { get; set; }
|
|
public List<int> OsztalyIdList { get; set; }
|
|
public int CsoportId { get; set; }
|
|
public List<int> CsoportIdList { get; set; }
|
|
public int FoglalkozasId { get; set; }
|
|
public List<int> FoglalkozasIdList { get; set; }
|
|
public int PedagogusId { get; set; }
|
|
public List<int> PedagogusIdList { get; set; }
|
|
public int TanuloId { get; set; }
|
|
public List<int> TanuloIdList { get; set; }
|
|
public List<int> TanulocsoportIdList { get; set; }
|
|
public int TeremId { get; set; }
|
|
public List<int> TeremIdList { get; set; }
|
|
public int HonapId { get; set; }
|
|
public int HaladasiNaploFormatumId { get; set; }
|
|
public int HetSorszama { get; set; }
|
|
public DateTime KeltDatum { get; set; }
|
|
public int KeltFormatumId { get; set; }
|
|
public int CimzettId { get; set; }
|
|
public int AlulirottMegnevezesId { get; set; }
|
|
public int OrarendTipusaId { get; set; }
|
|
public int FormatumId { get; set; }
|
|
public string ModelXmlString { get; set; }
|
|
public int AtsoroltTanuloAdatokModId { get; set; }
|
|
public int OsztalyInditasaId { get; set; }
|
|
public int MegtartottVagyMegtarthatoModId { get; set; }
|
|
public int TeljesNaposMulasztasSzamitashozMiminalisanMulasztottOrakszamaModId { get; set; }
|
|
public int NyomtatvanyErtekelesMegjelenitesId { get; set; }
|
|
public DateTime IdoszakKezdete { get; set; }
|
|
public DateTime IdoszakVege { get; set; }
|
|
public int HelyettesitesListaFormatumId { get; set; }
|
|
public int TanulokNevsorRendezeseId { get; set; }
|
|
public DateTime OrarendErvenyessegiDatum { get; set; }
|
|
public BetuMeretEnum BetuMeret { get; set; }
|
|
public CsoportnaploTanulokSorrendjeEnum CsoportnaploTanulokSorrendje { get; set; }
|
|
public int IgazolatlanOrakSzama { get; set; }
|
|
public KotesmargoTipusEnum KotesMargoTipus { get; set; }
|
|
public bool KiiratkozottTanulokMegjelenitese { get; set; }
|
|
public HelyettesitesiNaploBontasEnum HelyettesitesiNaploBontas { get; set; }
|
|
public bool SNIAdatokMegjeleniteseUresen { get; set; }
|
|
public bool JegyzekSzerepeltetese { get; set; }
|
|
public bool OkjSzakmacsoport { get; set; }
|
|
public bool OkjAgazat { get; set; }
|
|
public bool OkjSzakkepesites { get; set; }
|
|
public bool OkjReszszakkepesites { get; set; }
|
|
public bool UjSzktAgazat { get; set; }
|
|
public bool UjSzktSzakma { get; set; }
|
|
public bool UjSzktSzakmairany { get; set; }
|
|
public bool NktTanulmanyiTerulet { get; set; }
|
|
public bool NktSzakkepesites { get; set; }
|
|
public bool NktSzakirany { get; set; }
|
|
public bool KapcsolodoCsoportokMegjelenitese { get; set; }
|
|
public bool OsztalyBontasokMegjelenitese { get; set; }
|
|
public MunkaidoelszamolasBontasEnum MunkaidoelszamolasBontas { get; set; }
|
|
public bool TanoraiFoglalkozasokUresBlokkMegjelenites { get; set; }
|
|
public bool TanoranKivuliFoglalkozasokUresBlokkMegjelenites { get; set; }
|
|
public bool EgyeniFoglalkozasokUresBlokkMegjelenites { get; set; }
|
|
public bool HelyettesitesekUresBlokkMegjelenites { get; set; }
|
|
public bool OktNevLeNemKotottMunkaidoUresBlokkMegjelenites { get; set; }
|
|
public bool ElmeletiGyakorlatiOrakElkulonitese { get; set; }
|
|
public bool FelnottkepzesiOrakElkulonitese { get; set; }
|
|
public int OktNevelesiKategoriaId { get; set; }
|
|
public List<int> FeladatellatasiHelyIdList { get; set; }
|
|
public AnyanyelvEnum NemzetisegiNyelvId { get; set; }
|
|
public bool EvfolyamSzerepelteteseTanuloiAdatokKozott { get; set; }
|
|
public bool PHMegjelenitese { get; set; } = true;
|
|
public bool HelyettesitesTipusanakMegjelenitese { get; set; } = true;
|
|
public bool ParhuzamosOrakMegjelenitese { get; set; }
|
|
public bool NegyedevreSzamoltMulasztasok { get; set; }
|
|
public bool JelenletAdatokMegjelenitese { get; set; }
|
|
public JelenletAdatokOsszesiteseEnum JelenletAdatokOsszesitese { get; set; }
|
|
public JelenletTablazatElrendezeseEnum JelenletTablazatElrendezese { get; set; }
|
|
public string IgazolasSorszama { get; set; }
|
|
public DateTime ErvenyessegVege { get; set; }
|
|
public int IgazolasKiallitasanakHelyeId { get; set; }
|
|
public bool TagintezmenyCimenekMegjelenitese { get; set; }
|
|
public int TagintezmenyCimeId { get; set; }
|
|
public bool IntezmenyNevenekMegjelenitese { get; set; }
|
|
public string MasodikIntezmenyNeve { get; set; }
|
|
public bool FeladatellatasiHelyCimenekMegjelenitese { get; set; }
|
|
public string MasodikFeladatellatasiHelyCime { get; set; }
|
|
public string GyakorlatiKepzesiHelyNeve { get; set; }
|
|
public string GyakorlatiKepzesiHelyCime { get; set; }
|
|
public IgazolasKiallitasanakOkaEnum IgazolasKiallitasanakOka { get; set; }
|
|
public int BetuMeretSzam { get; set; }
|
|
public bool IsUjSzkt { get; set; }
|
|
public int Oraszam { get; set; }
|
|
public int MuveszetiAgId { get; set; }
|
|
public bool MegjegyzesekMegjelenitese { get; set; }
|
|
public bool IsAmiHianyzasIsMegjelenjen { get; set; }
|
|
public bool? MustGondviselo { get; set; }
|
|
public bool? MustGondviseloIsTorvenyes { get; set; }
|
|
public bool IsTankoteles { get; set; }
|
|
}
|
|
|
|
public NyomtatvanyokController(IKozpontiKretaConfiguration kozpontiKretaConfiguration, IKozpontiKretaHelper kozpontiKretaHelper, IFeatureContext featureContext, IIktatoRepositoryFactory iktatoRepositoryFactory, IktatoServiceConfiguration iktatoServiceConfiguration)
|
|
{
|
|
FeatureContext = featureContext ?? throw new ArgumentNullException(nameof(featureContext));
|
|
IktatoRepositoryFactory = iktatoRepositoryFactory ?? throw new ArgumentNullException(nameof(iktatoRepositoryFactory));
|
|
IktatoServiceConfiguration = iktatoServiceConfiguration ?? throw new ArgumentNullException(nameof(iktatoServiceConfiguration));
|
|
KozpontiKretaHelper = kozpontiKretaHelper ?? throw new ArgumentNullException(nameof(kozpontiKretaHelper));
|
|
KozpontiKretaConfiguration = kozpontiKretaConfiguration ?? throw new ArgumentNullException(nameof(kozpontiKretaConfiguration));
|
|
}
|
|
|
|
public ActionResult Index()
|
|
{
|
|
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
var pbbm = new PanelBarBaseModel { PanelName = "NyomtatvanyPanel" };
|
|
var lpbcm = new List<PanelBarChildModel>();
|
|
var xdoc = XDocument.Load(Server.MapPath("~/Resources/Nyomtatvanyok.xml"));
|
|
|
|
var groups = from x in xdoc.Descendants("Group")
|
|
select new
|
|
{
|
|
GroupId = x.Attribute("Id").Value,
|
|
GroupName = x.Attribute("Name").Value,
|
|
GroupDescription = x.Attribute("Description").Value,
|
|
Nyomtatvanyok = x.Descendants("Nyomtatvany"),
|
|
isKovTanevbenElerheto = x.Attribute("isKovTanevbenElerheto"),
|
|
isVisibleOnlyOnSZIRIntezmeny = x.Attribute("isVisibleOnlyOnSZIRIntezmeny"),
|
|
isVisibleOnlyOnNemSZIRIntezmeny = x.Attribute("isVisibleOnlyOnNemSZIRIntezmeny")
|
|
};
|
|
|
|
if (ClaimData.KovTanevID.HasValue && ClaimData.SelectedTanevID.HasValue && ClaimData.KovTanevID.Value == ClaimData.SelectedTanevID.Value)
|
|
{ groups = groups.Where(x => (bool?)x.isKovTanevbenElerheto == true); }
|
|
|
|
groups = groups.Where(y => !(y.isVisibleOnlyOnSZIRIntezmeny != null || y.isVisibleOnlyOnNemSZIRIntezmeny != null) || (y.isVisibleOnlyOnSZIRIntezmeny != null && y.isVisibleOnlyOnSZIRIntezmeny.Value.ToLower() == ClaimData.IsSzakkepzoIntezmeny.ToString().ToLower() && !ClaimData.IsSelectedTanev21_22OrLater) || (y.isVisibleOnlyOnNemSZIRIntezmeny != null && y.isVisibleOnlyOnNemSZIRIntezmeny.Value.ToLower() == (!ClaimData.IsSzakkepzoIntezmeny || !ClaimData.IsSelectedTanev21_22OrLater).ToString().ToLower()));
|
|
|
|
var IsNemLathatjaDiakokAdatait = MenuHelper.IsAlkalmazottNemLathatjaDiakokAdatait();
|
|
|
|
AddNemzetisegiDokumentumok(systemSettingsHelper);
|
|
AddKozossegiSzolgalatiNaplo();
|
|
AddIfIsszakkepzojuttatas();
|
|
|
|
var isSportAdatokKezelese = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Tanulo_sportoloi_adatainak_kezelese);
|
|
var isOfoKezelhetSportAdatokat = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Osztalyfonok_megtekintheti_modosithatja_osztalyaba_jaro_tanulok_sportoloi_adatait);
|
|
var isCsopVezKezelhetSportAdatokat = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Csoportvezeto_Tanulo_Adat_Modositas);
|
|
|
|
var helper = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType());
|
|
var isPedIgHelyettKiallIsEnabled = helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Nyomtatvany_PedIgHelyettKiall, IntezmenyConfigTipusEnum.IsEnabled);
|
|
|
|
foreach (var group in groups)
|
|
{
|
|
var data = new List<object>();
|
|
foreach (var nyomtatvany in group.Nyomtatvanyok)
|
|
{
|
|
var nyomtatvanyIdAttributeValue = nyomtatvany.Attribute("Id").Value;
|
|
var nyomtatvanyName = nyomtatvany.Attribute("Name").Value;
|
|
if (!int.TryParse(nyomtatvanyIdAttributeValue, out var nyomtatvanyId))
|
|
{
|
|
nyomtatvanyId = (int)Enum.Parse(typeof(DokumentumFeluletEnum), nyomtatvanyIdAttributeValue);
|
|
var dokumentumFeluletEnum = (DokumentumFeluletEnum)Enum.Parse(typeof(DokumentumFeluletEnum), nyomtatvanyIdAttributeValue);
|
|
/// TODO: miért hasal el a GetDisplayName()?
|
|
nyomtatvanyName = dokumentumFeluletEnum.GetAttribute<DisplayAttribute>()?.GetName() ?? dokumentumFeluletEnum.ToDisplayName();
|
|
}
|
|
|
|
if (!IsNemLathatjaDiakokAdatait && IsValidNyomtatvany(nyomtatvanyId))
|
|
{
|
|
if (nyomtatvany.Attribute("SeparatorHeader") != null)
|
|
{
|
|
if (ClaimData.KovTanevID.HasValue && ClaimData.SelectedTanevID.HasValue && ClaimData.KovTanevID.Value == ClaimData.SelectedTanevID.Value)
|
|
{
|
|
var isKovTanevbenElerheto = (bool?)nyomtatvany.Attribute("isKovTanevbenElerheto");
|
|
if (isKovTanevbenElerheto.HasValue && isKovTanevbenElerheto.Value)
|
|
{
|
|
data.Add(new PanelBarChildHeaderModel { Name = nyomtatvany.Attribute("SeparatorHeader").Value, Description = string.Empty });
|
|
}
|
|
}
|
|
else
|
|
{
|
|
data.Add(new PanelBarChildHeaderModel { Name = nyomtatvany.Attribute("SeparatorHeader").Value, Description = string.Empty });
|
|
}
|
|
}
|
|
|
|
if (nyomtatvanyId == (int)DokumentumFeluletEnum.TanulokSportoloiAdatainakOsszesitojeOsztaly || nyomtatvanyId == (int)DokumentumFeluletEnum.TanulokSportoloiAdatainakOsszesitojeCsoport)
|
|
{
|
|
if (isSportAdatokKezelese)
|
|
{
|
|
if (ClaimData.IsAdministrator || (ClaimData.IsOsztalyfonok && isOfoKezelhetSportAdatokat && nyomtatvanyId == (int)DokumentumFeluletEnum.TanulokSportoloiAdatainakOsszesitojeOsztaly) || (isCsopVezKezelhetSportAdatokat && ClaimData.FelhasznaloSzerepCsomagok.Any(x => x == KretaClaimPackages.CsoportVezeto.ClaimValue && nyomtatvanyId == 1001)))
|
|
{
|
|
data.Add(new PanelBarChildDataModel { Name = nyomtatvanyName, Description = nyomtatvany.Attribute("Description").Value, Id = nyomtatvanyId.ToString(), ControllerAction = nyomtatvany.Attribute("ControllerAction").Value, DocumentType = nyomtatvany.Attribute("DocumentType").Value });
|
|
}
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (ClaimData.KovTanevID.HasValue && ClaimData.SelectedTanevID.HasValue && ClaimData.KovTanevID.Value == ClaimData.SelectedTanevID.Value)
|
|
{
|
|
var isKovTanevbenElerheto = (bool?)nyomtatvany.Attribute("isKovTanevbenElerheto");
|
|
if (isKovTanevbenElerheto.HasValue && isKovTanevbenElerheto.Value)
|
|
{
|
|
data.Add(new PanelBarChildDataModel { Name = nyomtatvanyName, Description = nyomtatvany.Attribute("Description").Value, Id = nyomtatvanyId.ToString(), ControllerAction = nyomtatvany.Attribute("ControllerAction").Value, DocumentType = nyomtatvany.Attribute("DocumentType").Value });
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (nyomtatvanyId == (int)DokumentumFeluletEnum.PedagogusigazolvanyHelyettKiallitottIgazolas)
|
|
{
|
|
if (!isPedIgHelyettKiallIsEnabled)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
data.Add(new PanelBarChildDataModel { Name = nyomtatvanyName, Description = nyomtatvany.Attribute("Description").Value, Id = nyomtatvanyId.ToString(), ControllerAction = nyomtatvany.Attribute("ControllerAction").Value, DocumentType = nyomtatvany.Attribute("DocumentType").Value });
|
|
}
|
|
else
|
|
{
|
|
data.Add(new PanelBarChildDataModel { Name = nyomtatvanyName, Description = nyomtatvany.Attribute("Description").Value, Id = nyomtatvanyId.ToString(), ControllerAction = nyomtatvany.Attribute("ControllerAction").Value, DocumentType = nyomtatvany.Attribute("DocumentType").Value });
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if (data.Count > 0)
|
|
{
|
|
lpbcm.Add(new PanelBarChildModel() { PartialViewName = "PanelBarDefaultView", PartialViewTitle = group.GroupName, Data = data });
|
|
}
|
|
}
|
|
|
|
pbbm.ChildModels = lpbcm;
|
|
|
|
return View("Index", pbbm);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktTanev, KretaClaimPackages.Tanulo.ClaimValue, KretaClaimPackages.Gondviselo.ClaimValue)]
|
|
public ActionResult TanuloiIndex()
|
|
{
|
|
var bdm = new BizonyitvanyDownloadModel()
|
|
{
|
|
ButtonModel = new ModalButtonModel
|
|
{
|
|
Name = "downloadBtn",
|
|
Text = NyomtatvanyokResource.Letoltes,
|
|
Enabled = true,
|
|
Icon = null,
|
|
Parameters = new RouteValueDictionary(),
|
|
ImageUrl = "",
|
|
SpriteCssClass = "",
|
|
EventName = "TanuloiBizonyitvanyokLetolteseHelper.downloadDocuments"
|
|
},
|
|
};
|
|
return View("TanuloiIndex", bdm);
|
|
}
|
|
|
|
#region Listák lekérése
|
|
|
|
public List<int> GetOsztalyIdList(List<int> osztalyIdList, OktNevelesiKategoriaEnum? feladatKategoria, bool forOrarend = false)
|
|
{
|
|
var nyomtatvanyHelper = new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
return osztalyIdList ?? (forOrarend
|
|
? nyomtatvanyHelper.GetOsztalyByTanevList(null, feladatKategoria)
|
|
: nyomtatvanyHelper.GetOsztalyByTanevList(AdminisztratorVagySzuperOsztalyfonok() || RendszerbeallitasMindenkiLathatjaAzOsszesDokumentumot ? -1 : ClaimData.FelhasznaloId, feladatKategoria));
|
|
}
|
|
|
|
public List<int> GetCsoportIdList(List<int> csoportIdList, OktNevelesiKategoriaEnum? feladatKategoria)
|
|
{
|
|
return csoportIdList ?? new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetCsoportByTanevList(AdminisztratorVagySzuperOsztalyfonok() || RendszerbeallitasMindenkiLathatjaAzOsszesDokumentumot ? -1 : ClaimData.FelhasznaloId, feladatKategoria);
|
|
}
|
|
|
|
public List<int> GetOsztalyCsoportIdList(List<int> osztalyCsoportIdList)
|
|
{
|
|
return osztalyCsoportIdList ?? new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportByTanevList(AdminisztratorVagySzuperOsztalyfonok() || RendszerbeallitasMindenkiLathatjaAzOsszesDokumentumot ? -1 : ClaimData.FelhasznaloId, OktNevelesiKategoriaEnum.NevelesOktatas);
|
|
}
|
|
|
|
public List<int> GetFoglalkozasIdList(List<int> foglalkozasIdList)
|
|
{
|
|
return foglalkozasIdList ?? new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetoFoglalkozasByTanevList(AdminisztratorVagySzuperOsztalyfonok() || RendszerbeallitasMindenkiLathatjaAzOsszesDokumentumot ? -1 : ClaimData.FelhasznaloId);
|
|
}
|
|
|
|
public List<int> GetPedagogusIdList(List<int> pedagogusIdList)
|
|
{
|
|
return GetPedagogusIdListCommon(pedagogusIdList);
|
|
}
|
|
|
|
public List<int> GetTeremIdList(List<int> teremIdList)
|
|
{
|
|
return GetTeremIdListCommon(teremIdList);
|
|
}
|
|
|
|
public List<int> GetPedagogusIdListByFelhasznaloId(List<int> pedagogusIdList, OktNevelesiKategoriaEnum? oktNevKategoria = null)
|
|
{
|
|
if (AdminisztratorVagySzuperOsztalyfonok() || RendszerbeallitasMindenkiLathatjaAzOsszesDokumentumot)
|
|
{
|
|
return GetPedagogusIdListCommon(pedagogusIdList, oktNevKategoria: oktNevKategoria);
|
|
}
|
|
|
|
return GetPedagogusIdListCommon(pedagogusIdList, ClaimData.FelhasznaloId, oktNevKategoria);
|
|
}
|
|
|
|
public List<int> GetOsztalyCsoportIdListByFelhasznaloId(List<int> osztalyCsoportIdList, OktNevelesiKategoriaEnum? feladatKategoria)
|
|
{
|
|
if (AdminisztratorVagySzuperOsztalyfonok() || RendszerbeallitasMindenkiLathatjaAzOsszesDokumentumot)
|
|
{
|
|
return GetOsztalyCsoportIdListCommon(osztalyCsoportIdList, feladatKategoria);
|
|
}
|
|
|
|
return GetOsztalyCsoportIdListCommon(osztalyCsoportIdList, feladatKategoria, ClaimData.FelhasznaloId);
|
|
}
|
|
|
|
private List<int> GetTanulokIdList(List<int> tanuloIdList, int osztalyId)
|
|
{
|
|
List<int> result = new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanulokByOsztalyList(osztalyId);
|
|
if (tanuloIdList == null)
|
|
{
|
|
return result;
|
|
}
|
|
|
|
var sajatTanulokListaja = result.Intersect(tanuloIdList).ToList();
|
|
if (sajatTanulokListaja.Count != 0)
|
|
{
|
|
return sajatTanulokListaja;
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
private List<int> GetPedagogusIdListCommon(List<int> pedagogusIdList, int? felhasznaloId = null, OktNevelesiKategoriaEnum? oktNevKategoria = null)
|
|
{
|
|
if (pedagogusIdList != null)
|
|
{
|
|
return pedagogusIdList;
|
|
}
|
|
|
|
var result = new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetPedagogusByTanevList(felhasznaloId, oktNevKategoria);
|
|
return result;
|
|
}
|
|
|
|
private List<int> GetOsztalyCsoportIdListCommon(List<int> osztalyCsoportIdList, OktNevelesiKategoriaEnum? feladatKategoria, int? felhasznaloId = null)
|
|
{
|
|
if (osztalyCsoportIdList != null)
|
|
{
|
|
return osztalyCsoportIdList;
|
|
}
|
|
|
|
var result = new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportByTanevList(felhasznaloId, feladatKategoria);
|
|
return result;
|
|
}
|
|
|
|
private List<int> GetTeremIdListCommon(List<int> teremIdList)
|
|
{
|
|
if (teremIdList != null)
|
|
{
|
|
return teremIdList;
|
|
}
|
|
|
|
var result = new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTeremByTanevList();
|
|
return result;
|
|
}
|
|
|
|
#endregion
|
|
|
|
public static string CreateXMLFromList(List<int> data)
|
|
{
|
|
if (data != null && data.Count > 0)
|
|
{
|
|
string xmlStringStart = $"<a><b>",
|
|
xmlStringEnd = $"</b></a>",
|
|
xmlString = string.Empty;
|
|
|
|
foreach (var d in data)
|
|
xmlString += xmlStringStart + d + xmlStringEnd;
|
|
return xmlString;
|
|
}
|
|
|
|
return null;
|
|
}
|
|
|
|
#region Közösen használt metódusok
|
|
|
|
private void AddNemzetisegiDokumentumok(SystemSettingsHelper systemSettingsHelper)
|
|
{
|
|
var nemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
|
|
//Nemzetiségi törzslap
|
|
if (nemzetiDokumentumNyelvek.Exists(x => x == (int)AnyanyelvEnum.horvat) || nemzetiDokumentumNyelvek.Exists(x => x == (int)AnyanyelvEnum.roman))
|
|
{
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.NemzetisegiTorzslap);
|
|
TanarNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.NemzetisegiTorzslap);
|
|
}
|
|
|
|
//Bizonyítvány pótlap - 1. osztály
|
|
//if (nemzetiDokumentumNyelvek.Any())
|
|
//{
|
|
// AdminisztratorNyomtatasDokumentumIds.Add(802);
|
|
//}
|
|
|
|
//Bizonyítvány pótlap - 1-4. osztály
|
|
if (nemzetiDokumentumNyelvek.Exists(x => x == (int)AnyanyelvEnum.nemet) || nemzetiDokumentumNyelvek.Exists(x => x == (int)AnyanyelvEnum.roman) || nemzetiDokumentumNyelvek.Exists(x => x == (int)AnyanyelvEnum.szerb))
|
|
{
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.NemzetisegiBizonyitvany1_4);
|
|
TanarNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.NemzetisegiBizonyitvany1_4);
|
|
}
|
|
|
|
//Bizonyítvány pótlap - felső tagozatos
|
|
if (nemzetiDokumentumNyelvek.Exists(x => x == (int)AnyanyelvEnum.roman))
|
|
{
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.NemzetisegiBizonyitvanyFelso);
|
|
TanarNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.NemzetisegiBizonyitvanyFelso);
|
|
}
|
|
|
|
//Gimnáziumi bizonyítvány pótlap
|
|
if (nemzetiDokumentumNyelvek.Exists(x => x == (int)AnyanyelvEnum.horvat) || nemzetiDokumentumNyelvek.Exists(x => x == (int)AnyanyelvEnum.nemet))
|
|
{
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.NemzetisegiGimnaziumBizonyitvany);
|
|
TanarNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.NemzetisegiGimnaziumBizonyitvany);
|
|
}
|
|
}
|
|
|
|
private void AddKozossegiSzolgalatiNaplo()
|
|
{
|
|
if (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Tanar.ClaimValue))
|
|
{
|
|
var tanarKozossegiSzolgalatKezelo = new TanarHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanarAdatok(ClaimData.FelhasznaloId).KozossegiSzolgalatKezelo;
|
|
if (tanarKozossegiSzolgalatKezelo)
|
|
{
|
|
TanarNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.KozossegiSzolgalatiNaplo);
|
|
}
|
|
}
|
|
}
|
|
|
|
private void AddIfIsszakkepzojuttatas()
|
|
{
|
|
var isSzakkepzoJuttatas = new IntezmenyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetIntezmenyiAdatok().IsSzakkepzoJuttatas;
|
|
if (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Adminisztrator.ClaimValue) && isSzakkepzoJuttatas)
|
|
{
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.Apaczai16AlattiESZABelepo2022_23);
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.Apaczai16AlattiESZAKilepo2022_23);
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.Apaczai16FelettiESZABelepo2022_23);
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.Apaczai16FelettiESZAKilepo2022_23);
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.ApaczaiHozzajarulasiNyilatkozat2022_23);
|
|
AdminisztratorNyomtatasDokumentumIds.Add((int)DokumentumFeluletEnum.ApaczaiMentoriTamogatoNyilatkozat2022_23);
|
|
}
|
|
}
|
|
|
|
private bool IsValidNyomtatvany(int nyomtatvanyId)
|
|
{
|
|
if (nyomtatvanyId == (int)DokumentumFeluletEnum.FenntartoAltalElfogadottTantargyFelosztasExcel && !ClaimData.IsActivTanev && ClaimData.SelectedTanevID != ClaimData.KovTanevID)
|
|
{
|
|
AdminisztratorNyomtatasDokumentumIds.Remove((int)DokumentumFeluletEnum.FenntartoAltalElfogadottTantargyFelosztasExcel);
|
|
AdminisztratorNyomtatasDokumentumIds.Remove((int)DokumentumFeluletEnum.FenntartoAltalElfogadottTantargyFelosztasPDF);
|
|
}
|
|
|
|
if (ApplicationData.SystemType == SystemType.KK || ApplicationData.SystemType == SystemType.AZURE || ApplicationData.SystemType == SystemType.NSZFH_EMA)
|
|
{
|
|
AdminisztratorNyomtatasDokumentumIds.Remove((int)DokumentumFeluletEnum.ReszletesTanuloiAdatokRiport);
|
|
}
|
|
|
|
if (nyomtatvanyId == (int)DokumentumFeluletEnum.OsztalyokEsOsztalyokLetszamadataiRiport && ClaimData.IsSzakkepzoIntezmeny)
|
|
{
|
|
// Osztályok és az osztályok létszámadatai riport -> NSZFH-s környezeten nem elérhető
|
|
AdminisztratorNyomtatasDokumentumIds.Remove(nyomtatvanyId);
|
|
}
|
|
|
|
if ((ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Adminisztrator.ClaimValue)
|
|
|| RendszerbeallitasMindenkiLathatjaAzOsszesDokumentumot) && AdminisztratorNyomtatasDokumentumIds.Contains(nyomtatvanyId))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (ClaimData.IsFullKretaVerzio)
|
|
{
|
|
if (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.SzuperOsztalyfonok.ClaimValue) && OsztalyfonokNyomtatasDokumentumIds.Contains(nyomtatvanyId))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Osztalyfonok.ClaimValue) && OsztalyfonokNyomtatasDokumentumIds.Contains(nyomtatvanyId))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.CsoportVezeto.ClaimValue) && CsoportvezetoNyomtatasDokumentumIds.Contains(nyomtatvanyId))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.Tanar.ClaimValue) && TanarNyomtatasDokumentumIds.Contains(nyomtatvanyId))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue) && (nyomtatvanyId == (int)DokumentumFeluletEnum.KozossegiSzolgalatiNaplo))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.SzuperOsztalyfonok.ClaimValue) && (nyomtatvanyId == (int)DokumentumFeluletEnum.KozossegiSzolgalatiNaplo))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (ClaimData.IsArchivIntezmeny && ClaimData.IsArchivAdminUser)
|
|
{
|
|
return true;
|
|
}
|
|
|
|
if (ClaimData.IsArchivIntezmeny && !ClaimData.IsArchivAdminUser && TanarNyomtatasDokumentumIds.Contains(nyomtatvanyId))
|
|
{
|
|
return true;
|
|
}
|
|
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
private void AddNyomtatvanyMintZipEntry(ZipOutputStream zipOutput, DataSet ds, string frxNeve, Dictionary<string, object> parameters = null, string nyomtatvanyNeve = "Alap", string headerImage = null, string footerImage = null, int formatumId = 1, bool egyediLablecKellOldalszam = true, Enums.DokumentumTipusEnum? dokumentumTipus = null, bool IsAspose = false, System.Reflection.MethodInfo asposeMetodus = null, AsposeHelperOptions asposeHelperOptions = null)
|
|
{
|
|
using (var stream = GetMemoryStreamByName(ds, frxNeve, parameters, nyomtatvanyNeve, headerImage, footerImage, formatumId, egyediLablecKellOldalszam, dokumentumTipus, IsAspose, asposeMetodus, asposeHelperOptions))
|
|
{
|
|
AddZipEntry(zipOutput, stream, nyomtatvanyNeve, formatumId);
|
|
}
|
|
}
|
|
|
|
private void AddExcelMintZipEntry(ZipOutputStream zipOutput, MemoryStream stream, string nyomtatvanyNeve = "Alap")
|
|
{
|
|
AddZipEntry(zipOutput, stream, nyomtatvanyNeve, NyomtatvanyFormatumEnum.Excel.AsInt());
|
|
}
|
|
|
|
private void TobbNyomtatvanyEgyDataSetbe(ref DataSet ds, DataSet mergingdDs, string excludedTables = null, string distinctTables = null)
|
|
{
|
|
if (ds.Tables.Count == 0)
|
|
{
|
|
ds = mergingdDs.Copy();
|
|
return;
|
|
}
|
|
|
|
var excludedTableNames = string.IsNullOrWhiteSpace(excludedTables) ? Array.Empty<string>() : excludedTables.Split(",".ToCharArray());
|
|
foreach (DataTable table in mergingdDs.Tables)
|
|
{
|
|
if (!excludedTableNames.Contains(table.TableName))
|
|
{
|
|
ds.Tables[table.TableName].Merge(table);
|
|
var distinctTableNames = string.IsNullOrWhiteSpace(distinctTables) ? Array.Empty<string>() : distinctTables.Split(",".ToCharArray());
|
|
if ((distinctTableNames.Length > 0) && (distinctTableNames.Contains(table.TableName)))
|
|
{
|
|
DataView dv = ds.Tables[table.TableName].DefaultView;
|
|
ds.Tables.Remove(table.TableName);
|
|
ds.Tables.Add(dv.ToTable(table.TableName, true, table.Columns.Cast<DataColumn>().Select(x => x.ColumnName).ToArray()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
private bool GetIsIskolaerdekuSzamit()
|
|
{
|
|
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
return systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Az_iskolaerdeku_tavollet_tipusu_igazolasok_beleszamitanak_a_tanulo_osszes_mulasztasaba);
|
|
}
|
|
|
|
private int GetMinTanoraSzam()
|
|
{
|
|
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
return (int)systemSettingsHelper.GetSystemSettingValue<double>(RendszerBeallitasTipusEnum.Ervenyes_tanitasi_nap_oraszam);
|
|
}
|
|
|
|
private bool AdminisztratorVagySzuperOsztalyfonok()
|
|
{
|
|
return ClaimManager.HasPackage(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue);
|
|
}
|
|
|
|
private string GetTagintezmenyCime(NyomtatvanyModel model)
|
|
{
|
|
return model.TagintezmenyCime ? model.TagintezmenyCimeDropdown : string.Empty;
|
|
}
|
|
|
|
#endregion
|
|
|
|
public FileStreamResult LEPSzakmaiUtmutato()
|
|
{
|
|
FileStream fs = new FileStream(Server.MapPath("~/Resources/LEP/Lázár_Ervin_Program_-_Szakmai_útmutatóV_1.pdf"), FileMode.Open, FileAccess.Read);
|
|
|
|
return new FileStreamResult(fs, Constants.ImportExport.FileFormatPdf)
|
|
{
|
|
FileDownloadName = "LEP_Útmutató.pdf"
|
|
};
|
|
}
|
|
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.AktTanev, KretaClaimPackages.Tanulo.ClaimValue, KretaClaimPackages.Gondviselo.ClaimValue)]
|
|
public ActionResult TanuloiBizonyitvanyokLetoltese(BizonyitvanyDownloadModel model)
|
|
{
|
|
if (model.TanevId.HasValue)
|
|
{
|
|
try
|
|
{
|
|
var OutPut = new MemoryStream();
|
|
var ZipOutPut = new ZipOutputStream(OutPut);
|
|
|
|
var nyomtatvanyModel = new NyomtatvanyModel
|
|
{
|
|
FormatumId = (int)NyomtatvanyFormatumEnum.PDF,
|
|
KeltFormatumId = (int)KeltFormatumTipusEnum.Szammal,
|
|
KeltDatum = DateTime.Today,
|
|
BetuMeret = BetuMeretEnum.Normal,
|
|
NyomtatvanyErtekelesMegjelenitesId = (int)NyomtatvanyErtekelesMegjelenitesEnum.Tablazatos,
|
|
PHMegjelenitese = true,
|
|
MulasztasokUjLapon = false,
|
|
KiiratkozottTanulokMegjelenitese = true,
|
|
isFelmentesekMegjelenitese = false,
|
|
TanitasiHetekSzamaVegzos = 32,
|
|
TanitasiHetekSzamaNemVegzos = 36,
|
|
EvesOraszam = true,
|
|
AtlagFeltuntetes = false,
|
|
TagintezmenyCime = false,
|
|
ElmeletGyakorlatKulon = false,
|
|
TanuloZaradekai = false,
|
|
KozossegiSzolgalat = false,
|
|
CimzettId = (int)ErtesitoCimzettjeEnum.GondviseloReszere,
|
|
AltantargyBeszamitasa = true,
|
|
AlapszintuNyomtatvanyokKulonDokumentumba = true,
|
|
};
|
|
|
|
var (tanuloId, osztalyai, csoportjai) = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloElozoEvesTanuloEsOsztalyCsoportjai(ClaimData.FelhasznaloId, model.TanevId.Value, new List<int> { (int)OktNevelesiKategoriaEnum.Kollegium });
|
|
|
|
if (!tanuloId.HasValue)
|
|
{
|
|
throw NyomtatvanyokLogic.NyomtatvanyError(NyomtatvanyokResource.TanuloNemTalahatoAKivalasztottElozoEvben, HttpStatusCode.BadRequest);
|
|
}
|
|
|
|
nyomtatvanyModel.OsztalyIdList = osztalyai;
|
|
nyomtatvanyModel.TanuloIdList = new List<int> { tanuloId.Value };
|
|
|
|
var origSelectedTanevId = ClaimData.SelectedTanevID;
|
|
ClaimData.SelectedTanevID = model.TanevId;
|
|
var alulirottak = new ComboBoxHelperApiController().GetAlulirottMegnevezeseEnumListItems(false, (int)NyomtatvanyNyelvEnum.Magyar);
|
|
var alulirott = alulirottak.FirstOrDefault(x => x.Selected) ?? alulirottak.Single(x => x.Text.Contains(NyomtatvanyokResource.IntezmenyiAdatokbol));
|
|
nyomtatvanyModel.AlulirottMegnevezesId = int.Parse(alulirott.Value);
|
|
|
|
var dokumentResult = (FileStreamResult)BizonyitvanyPotlap(nyomtatvanyModel, true, (int)NyomtatvanyNyelvEnum.Magyar, Enums.DokumentumTipusEnum.BizonyitvanyPotlapAz1Evfolyamon, true, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)BizonyitvanyPotlap(nyomtatvanyModel, true, (int)NyomtatvanyNyelvEnum.Magyar, Enums.DokumentumTipusEnum.BizonyitvanyPotlapAz1Evfolyamon, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)BizonyitvanyPotlap(nyomtatvanyModel, false, (int)NyomtatvanyNyelvEnum.Magyar, Enums.DokumentumTipusEnum.BizonyitvanyPotlapA2Evfolyamtol, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)BizonyitvanyPotlap(nyomtatvanyModel, true, (int)NyomtatvanyNyelvEnum.Nemet, Enums.DokumentumTipusEnum.BizonyitvanyPotlapAz1EvfolyamonNemet, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)BizonyitvanyPotlap(nyomtatvanyModel, false, (int)NyomtatvanyNyelvEnum.Nemet, Enums.DokumentumTipusEnum.BizonyitvanyPotlapA2EvfolyamtolNemet, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)BizonyitvanyPotlap(nyomtatvanyModel, true, (int)NyomtatvanyNyelvEnum.Angol, Enums.DokumentumTipusEnum.BizonyitvanyPotlapAz1EvfolyamonAngol, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)BizonyitvanyPotlap(nyomtatvanyModel, false, (int)NyomtatvanyNyelvEnum.Angol, Enums.DokumentumTipusEnum.BizonyitvanyPotlapA2EvfolyamtolAngol, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
|
|
dokumentResult = (FileStreamResult)Ertesito(nyomtatvanyModel, NyomtatvanyEnum.EvvegiErtesitoSzoveges, Enums.DokumentumTipusEnum.EvVegiSzovegesErtesito1tol4osztaly, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)Ertesito(nyomtatvanyModel, NyomtatvanyEnum.EvvegiErtesito, Enums.DokumentumTipusEnum.EvVegiErtesito, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)Ertesito(nyomtatvanyModel, NyomtatvanyEnum.EvvegiErtesitoFuzet, Enums.DokumentumTipusEnum.EvVegiSzovegesErtesitoFuzet1tol4osztaly, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)Ertesito(nyomtatvanyModel, NyomtatvanyEnum.EvvegiErtesitoFuzetNyomtatvany, Enums.DokumentumTipusEnum.EvVegiSzovegesErtesitoFuzetNyomtatvanyra, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)Ertesito(nyomtatvanyModel, NyomtatvanyEnum.EvvegiErtesitoA5Ellenorzobe, Enums.DokumentumTipusEnum.EvVegiErtesitoEllenorzobenElhelyezhetoA5Meretben, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
dokumentResult = (FileStreamResult)Ertesito(nyomtatvanyModel, NyomtatvanyEnum.EvvegiErtesitoEllenorzobe, Enums.DokumentumTipusEnum.EvVegiErtesitoEllenorzobenElhelyezheto, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
|
|
if (csoportjai.Count > 0)
|
|
{
|
|
nyomtatvanyModel.OsztalyIdList = null;
|
|
nyomtatvanyModel.CsoportIdList = csoportjai;
|
|
dokumentResult = (FileStreamResult)Ertesito(nyomtatvanyModel, NyomtatvanyEnum.EvVegiErtesitoMuveszOktatasban, Enums.DokumentumTipusEnum.EviErtesitoMuveszoktatasban, true, egyTanuloTobbNyomtatvanyaEgyben: true);
|
|
AddZipEntry(ZipOutPut, dokumentResult.FileStream, dokumentResult.FileDownloadName, null);
|
|
}
|
|
ClaimData.SelectedTanevID = origSelectedTanevId;
|
|
|
|
ZipOutPut.Finish();
|
|
OutPut.Position = 0;
|
|
|
|
var zipnevmodel = new NyomtatvanyNevGeneralasModel() { TanevID = model.TanevId };
|
|
|
|
return new FileStreamResult(OutPut, Constants.ImportExport.ContentType)
|
|
{
|
|
FileDownloadName = $"{CommonExtensions.NevGeneralas("TanuloiBizonyitvanyok", zipnevmodel)}.{Constants.ImportExport.FileFormatZip}"
|
|
};
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
if (ex is StatusError)
|
|
{
|
|
throw;
|
|
}
|
|
throw NyomtatvanyokLogic.NyomtatvanyError(ex);
|
|
}
|
|
}
|
|
throw NyomtatvanyokLogic.NyomtatvanyError(NyomtatvanyokResource.TanevKivalasztasaKotelezo);
|
|
}
|
|
|
|
}
|
|
|
|
public static class XmlParseExtension
|
|
{
|
|
public static string TryGetElementValue(this XElement parentEl, string elementName, string defaultValue = null)
|
|
{
|
|
var foundEl = parentEl.Attribute(elementName);
|
|
if (foundEl != null)
|
|
return foundEl.Value;
|
|
|
|
return defaultValue;
|
|
}
|
|
}
|
|
}
|