init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
69
KretaWeb/Controllers/FileDownloadApiController.cs
Normal file
69
KretaWeb/Controllers/FileDownloadApiController.cs
Normal file
|
@ -0,0 +1,69 @@
|
|||
using System;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Core;
|
||||
using Kreta.Core.Iktato.Poszeidon.Factory.Interface;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Helpers;
|
||||
|
||||
namespace Kreta.Web.Controllers
|
||||
{
|
||||
public class FileDownloadController : ApiController
|
||||
{
|
||||
private readonly IIktatoRepositoryFactory iktatoRepositoryFactory;
|
||||
private readonly IktatoServiceConfiguration iktatoServiceConfiguration;
|
||||
|
||||
public FileDownloadController(IIktatoRepositoryFactory iktatoRepositoryFactory, IktatoServiceConfiguration iktatoServiceConfiguration)
|
||||
{
|
||||
this.iktatoRepositoryFactory = iktatoRepositoryFactory;
|
||||
this.iktatoServiceConfiguration = iktatoServiceConfiguration;
|
||||
}
|
||||
|
||||
[HttpGet]
|
||||
[AllowAnonymous]
|
||||
public HttpResponseMessage GetAlapdokumentum(string tipusNev)
|
||||
{
|
||||
try
|
||||
{
|
||||
var dokumentumTipus = (Enums.DokumentumTipusEnum)Enum.Parse(typeof(Enums.DokumentumTipusEnum), tipusNev);
|
||||
|
||||
switch (dokumentumTipus)
|
||||
{
|
||||
case Enums.DokumentumTipusEnum.AlapitoOkirat:
|
||||
case Enums.DokumentumTipusEnum.SzervezetiEsMukodesiSzabalyzat:
|
||||
case Enums.DokumentumTipusEnum.Munkaterv:
|
||||
case Enums.DokumentumTipusEnum.PedagogiaiProgram:
|
||||
case Enums.DokumentumTipusEnum.Hazirend:
|
||||
case Enums.DokumentumTipusEnum.mukodesi_engedely:
|
||||
break;
|
||||
default:
|
||||
ModelState.AddModelError("tipusNev", ErrorResource.NincsIlyenTipusuAlapdokumentum);
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
var connectionType = ConnectionTypeExtensions.GetOrganizationConnectionType();
|
||||
var pHelper = new PoszeidonHelper(connectionType, iktatoRepositoryFactory, iktatoServiceConfiguration);
|
||||
var tanevId = dokumentumTipus == Enums.DokumentumTipusEnum.Munkaterv ? connectionType.TanevId : (int?)null;
|
||||
|
||||
var dokumentumCO = pHelper.IntezmenyiKotelezoDokumentumPublikus(tanevId, dokumentumTipus);
|
||||
|
||||
var iktatottDokumentumId = dokumentumCO.IktatottDokumentumId;
|
||||
if (!iktatottDokumentumId.IsEntityId())
|
||||
{
|
||||
ModelState.AddModelError("tipusNev", ErrorResource.NincsIlyenAlapDokumentumAzIntezmenynel);
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
|
||||
(string fajlnev, byte[] tartalom) = pHelper.Lekeres(iktatottDokumentumId.ToString());
|
||||
|
||||
return HttpResponseExtensions.GetFileHttpResponse(tartalom, fajlnev);
|
||||
}
|
||||
catch
|
||||
{
|
||||
ModelState.AddModelError("tipusNev", ErrorResource.NincsIlyenTipusuDokumentum);
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue