kreta/KretaWeb/Areas/GRModul/Logic/BeszerzesiIgenyLogic.cs
2024-03-13 00:33:46 +01:00

117 lines
5.4 KiB
C#

using System.Collections.Generic;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Interfaces;
using Kreta.Core;
using Kreta.Core.Iktato.Poszeidon.Factory.Interface;
using Kreta.Enums.ManualEnums;
using Kreta.Resources;
using Kreta.Web.Areas.GRModul.Models;
using Kreta.Web.Areas.Intezmeny.ApiControllers;
using Kreta.Web.Helpers;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.GRModul.Logic
{
public class BeszerzesiIgenyLogic
{
private IIktatoRepositoryFactory IktatoRepositoryFactory { get; }
private IktatoServiceConfiguration IktatoServiceConfiguration { get; }
private readonly IJiraHelper JiraHelper;
public BeszerzesiIgenyLogic(IJiraHelper jiraHelper, IIktatoRepositoryFactory iktatoServiceFactory, IktatoServiceConfiguration iktatoServiceConfiguration)
{
IktatoRepositoryFactory = iktatoServiceFactory;
IktatoServiceConfiguration = iktatoServiceConfiguration;
JiraHelper = jiraHelper;
}
public BeszerzesiIgenyModel GetBeszerzesiIgenyModel(int? beszerzesiIgenyId)
{
var model = new BeszerzesiIgenyModel
{
ChildModels = new List<PanelBarChildModel>(),
PanelName = "BeszerzesiIgenyPanel",
ExpandMode = Kendo.Mvc.UI.PanelBarExpandMode.Multiple,
Animation = true,
BeszerzesiIgenyId = beszerzesiIgenyId
};
//Intézmény adatok GET
IntezmenyApiController api = new IntezmenyApiController(JiraHelper);
model.IntezmenyModel = api.GetIntezmeny(IktatoRepositoryFactory, IktatoServiceConfiguration);
var helper = new BeszerzesiModulHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
if (!beszerzesiIgenyId.HasValue || beszerzesiIgenyId.Value <= 0)
{
model.RogzitoId = ClaimData.FelhasznaloId;
model.IgenyAdatokModel = new IgenyAdatokModel();
model.SzallitoModel = new SzallitoModel();
model.MegjegyzesModel = new MegjegyzesModel();
}
else
{
var co = helper.BeszerzesiIgenyAdatok(beszerzesiIgenyId.Value);
model.RogzitoId = co.RogzitoId;
model.IgenyAdatokModel = ConvertCoToModel(co).IgenyAdatokModel;
model.SzallitoModel = ConvertCoToModel(co).SzallitoModel;
}
//Vezető flag beállítása
model.IsVezeto = helper.IsLeader(ClaimData.FelhasznaloId);
List<object> childModel = new List<object>();
childModel.Add(model);
model.ChildModels.Add(new PanelBarChildModel { PartialViewName = "IntezmenyAdatok_Bevitel", PartialViewTitle = GRModulResource.IntezmenyAdatok, Data = childModel });
model.ChildModels.Add(new PanelBarChildModel { PartialViewName = "IgenyAdatok_Bevitel", PartialViewTitle = GRModulResource.IgenyAdatok, Data = childModel });
model.ChildModels.Add(new PanelBarChildModel { PartialViewName = "SzallitoAdatok_Bevitel", PartialViewTitle = GRModulResource.SzallitoAdatok, Data = childModel });
model.ChildModels.Add(new PanelBarChildModel { PartialViewName = "Dokumentumok_Bevitel", PartialViewTitle = GRModulResource.Dokumentumok, Data = childModel });
model.ChildModels.Add(new PanelBarChildModel { PartialViewName = "Megjegyzesek_Bevitel", PartialViewTitle = GRModulResource.Megjegyzesek, Data = childModel });
return model;
}
private BeszerzesiIgenyModel ConvertCoToModel(BeszerzesiIgenyCo co)
{
return new BeszerzesiIgenyModel()
{
IgenyAdatokModel = new IgenyAdatokModel()
{
AnyagId = co.AnyagId,
AnyagMegnevezes = co.AnyagMegnevezes,
AnyagMennyisegiEgysegId = co.AnyagMennyisegiEgysegId,
AnyagRovidLeiras = co.AnyagRovidLeiras,
AnyagTetelEgysegar = co.AnyagTetelEgysegar,
AnyagTetelMegnevezes = co.AnyagTetelMegnevezes,
AnyagTetelMennyiseg = co.AnyagTetelMennyiseg,
AnyagTetelMennyisegiEgysegId = co.AnyagTetelMennyisegiEgysegId,
IsBVOP = co.IsBVOP,
IsKEF = co.IsKEF,
IsNKOH = co.IsNKOH,
IsPalyazat = co.IsPalyazat ? (int)IgenNemEnum.Igen : (int)IgenNemEnum.Nem,
PalyazatAzonosito = co.PalyazatAzonosito
},
SzallitoModel = new SzallitoModel()
{
Adoszam = co.Adoszam,
Ajto = co.Ajto,
EmailCim = co.EmailCim,
Emelet = co.Emelet,
FizetesiMod = co.FizetesiMod,
Hazszam = co.Hazszam,
HelysegNev = co.HelysegNev,
IrSzam = co.Iranyitoszam,
KepviseloNeve = co.KepviseloNev,
KozteruletJellegId = co.KozteruletJellegeId,
KozteruletNev = co.KozteruletNev,
SzallitoId = co.SzallitoId,
SzallitoNev = co.SzallitoNev,
Telefonszam = co.Telefonszam
}
};
}
}
}