init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,17 @@
|
|||
using System.Collections.Generic;
|
||||
using Kreta.Ellenorzo.BL.VN.Ellenorzo;
|
||||
using Kreta.Ellenorzo.Domain.VN.Common;
|
||||
using Kreta.Ellenorzo.Domain.VN.Intezmeny.Hetirend;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Intezmeny.Hetirend
|
||||
{
|
||||
public class HetirendFacade : EllenorzoFacade
|
||||
{
|
||||
public HetirendFacade(MobileUser mobileUser) : base(mobileUser)
|
||||
{
|
||||
}
|
||||
|
||||
public HashSet<HetirendListResponse> ListHetirend(HetirendListRequest request)
|
||||
=> RunSubquery(() => HetirendSubqueries.ListHetirend(DefaultConnectionParameters, request));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,49 @@
|
|||
using System.Collections.Generic;
|
||||
using Kreta.Core.Enum;
|
||||
using Kreta.Core.Exceptions;
|
||||
using Kreta.Core.Logic;
|
||||
using Kreta.DataAccessManual;
|
||||
using Kreta.Ellenorzo.BL.VN.Logic;
|
||||
using Kreta.Ellenorzo.Dao.VN.Intezmeny.Hetirend;
|
||||
using Kreta.Ellenorzo.Domain.VN.Adatszotar;
|
||||
using Kreta.Ellenorzo.Domain.VN.Common;
|
||||
using Kreta.Ellenorzo.Domain.VN.Intezmeny.Hetirend;
|
||||
using Kreta.Ellenorzo.Domain.VN.UniqueIdentifier;
|
||||
using Kreta.Enums;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Intezmeny.Hetirend
|
||||
{
|
||||
internal static class HetirendSubqueries
|
||||
{
|
||||
internal static HashSet<HetirendListResponse> ListHetirend(DefaultConnectionParameters dcp, HetirendListRequest request)
|
||||
{
|
||||
new ValidatorLogic(request).ThrowExceptionIfModelIsNotvalid();
|
||||
var response = new HashSet<HetirendListResponse>(new HetirendListResponse());
|
||||
|
||||
var naptariHetAndOrarendOverlapFilter = new NaptariHetAndOrarendOverlapFilter
|
||||
{
|
||||
OrarendElemKezdoNapDatuma = request.OrarendElemKezdoNapDatuma,
|
||||
OrarendElemVegNapDatuma = request.OrarendElemVegNapDatuma
|
||||
};
|
||||
|
||||
var hetirendElemek = dcp.DalHandler.NaptariHet().GetNaptariHetList(dcp.TanevId, naptariHetAndOrarendOverlapFilter).Tables[0];
|
||||
|
||||
foreach (var hetirendElem in hetirendElemek.ToDaoList<OrarendiResponseDao>())
|
||||
{
|
||||
if (!response.Add(new HetirendListResponse
|
||||
{
|
||||
Uid = new HetirendUid(hetirendElem.Id),
|
||||
HetSorszama = hetirendElem.HetSorszama,
|
||||
KezdoNapDatuma = hetirendElem.KezdoNapDatuma,
|
||||
VegNapDatuma = hetirendElem.VegNapDatuma,
|
||||
Tipus = new Adatszotar<HetiRendTipusEnum>(hetirendElem.HetirendId ?? (int)HetiRendTipusEnum.MindegyikHet, hetirendElem.HetirendNev)
|
||||
}))
|
||||
{
|
||||
throw new BlException(BlExceptionType.DuplikaltKulcs);
|
||||
}
|
||||
}
|
||||
|
||||
return response;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
using Kreta.Ellenorzo.BL.VN.Ellenorzo;
|
||||
using Kreta.Ellenorzo.BL.VN.Intezmeny.Rendszermodul;
|
||||
using Kreta.Ellenorzo.BL.VN.Intezmeny.TestreszabasBeallitasok;
|
||||
using Kreta.Ellenorzo.Domain.VN.Common;
|
||||
using Kreta.Ellenorzo.Domain.VN.Intezmeny;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Intezmeny
|
||||
{
|
||||
public class IntezmenyFacade : EllenorzoFacade
|
||||
{
|
||||
public IntezmenyFacade(MobileUser mobileUser) : base(mobileUser)
|
||||
{
|
||||
}
|
||||
|
||||
public IntezmenyResponse GetIntezmeny() => RunSubquery(() =>
|
||||
new IntezmenyResponse
|
||||
{
|
||||
IntezmenyAdatok = IntezmenySubqueries.GetSajatIntezmenyAdatok(DefaultConnectionParameters),
|
||||
Rendszermodulok = RendszermodulSubqueries.ListRendszermodul(DefaultConnectionParameters),
|
||||
TestreszabasBeallitasok = TestreszabasBeallitasokSubqueries.GetTestreszabasBeallitasok(DefaultConnectionParameters)
|
||||
});
|
||||
}
|
||||
}
|
|
@ -0,0 +1,64 @@
|
|||
using System;
|
||||
using System.Runtime.Caching;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Core.ConnectionType;
|
||||
using Kreta.Core.Logic;
|
||||
using Kreta.DataAccessManual;
|
||||
using Kreta.DataAccessManual.Util;
|
||||
using Kreta.Ellenorzo.Dao.VN.Ellenorzo;
|
||||
using Kreta.Ellenorzo.Domain.VN.Common;
|
||||
using Kreta.Ellenorzo.Domain.VN.Intezmeny;
|
||||
using Kreta.Ellenorzo.Domain.VN.UniqueIdentifier;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Intezmeny
|
||||
{
|
||||
internal static class IntezmenySubqueries
|
||||
{
|
||||
internal static IntezmenyAdatok GetSajatIntezmenyAdatok(DefaultConnectionParameters dcp)
|
||||
{
|
||||
var intezmenyAdatok = new IntezmenyHelper(new DalHandlerConnectionType(new MobileConnectionType(dcp.FelhasznaloId, dcp.IntezmenyId, dcp.IntezmenyAzonosito, dcp.TanevId), dcp.DalHandler)).GetIntezmenyiAdatok();
|
||||
var response = new IntezmenyAdatok
|
||||
{
|
||||
Uid = new IntezmenyUid(intezmenyAdatok.IntezmenyId),
|
||||
Azonosito = intezmenyAdatok.IntezmenyAzonosito,
|
||||
TeljesNev = intezmenyAdatok.Nev,
|
||||
RovidNev = intezmenyAdatok.RovidNev
|
||||
};
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
internal static IntezmenyAdatokDao GetIntezmenyAdatokFromCache(string intezmenyAzonosito)
|
||||
{
|
||||
var cache = MemoryCache.Default;
|
||||
var cacheKey = $"{intezmenyAzonosito}_mobileIntezmenyAdatok";
|
||||
if (!(cache[cacheKey] is IntezmenyAdatokDao intezmenyAdatok))
|
||||
{
|
||||
intezmenyAdatok = new IntezmenyAdatokDao();
|
||||
|
||||
Dal.MobileConnection.Run(
|
||||
intezmenyAzonosito,
|
||||
null,
|
||||
h =>
|
||||
{
|
||||
intezmenyAdatok = h.IntezmenyDal().GetIntezmenyIdAktivTanevIdByAzonosito(intezmenyAzonosito).Tables[0].Rows[0].ToDao<IntezmenyAdatokDao>();
|
||||
});
|
||||
|
||||
var policy = new CacheItemPolicy
|
||||
{
|
||||
AbsoluteExpiration = new DateTimeOffset(DateTime.Now.AddMinutes(20))
|
||||
};
|
||||
|
||||
cache.Set(cacheKey, intezmenyAdatok, policy);
|
||||
}
|
||||
|
||||
return intezmenyAdatok;
|
||||
}
|
||||
|
||||
internal static void RemoveIntezemenyAdatokCache(string intezmenyAzonosito)
|
||||
{
|
||||
_ = MemoryCache.Default.Remove($"{intezmenyAzonosito}_mobileIntezmenyAdatok");
|
||||
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,63 @@
|
|||
using System.Collections.Generic;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Core.ConnectionType;
|
||||
using Kreta.DataAccessManual.Util;
|
||||
using Kreta.Ellenorzo.Domain.VN.Common;
|
||||
using Kreta.Ellenorzo.Domain.VN.Intezmeny.Rendszermodul;
|
||||
using Kreta.Ellenorzo.Enums.VN;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.KretaServer.SystemSettings;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Intezmeny.Rendszermodul
|
||||
{
|
||||
internal static class RendszermodulSubqueries
|
||||
{
|
||||
internal static HashSet<RendszermodulListResponse> ListRendszermodul(DefaultConnectionParameters dcp)
|
||||
{
|
||||
var helper = new IntezmenyConfigHelper(new DalHandlerConnectionType(new MobileConnectionType(dcp.FelhasznaloId, dcp.IntezmenyId, dcp.IntezmenyAzonosito, dcp.TanevId), dcp.DalHandler));
|
||||
var isEugyintezesEnabled = helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.Eugyintezes, IntezmenyConfigTipusEnum.IsEnabled);
|
||||
var isLepEnabled = SystemSettingsManager.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Lazar_Ervin_Program_kezelese, dcp.IntezmenyAzonosito, dcp.TanevId);
|
||||
var feltarAszfUrl = helper.GetIntezmenyConfig<string>(IntezmenyConfigModulEnum.FeltarASZFGondviselo, IntezmenyConfigTipusEnum.Url);
|
||||
var isFeltarGondviseloEnabled = IsFeltarGondviseloEnabled(dcp, helper);
|
||||
|
||||
var response = new HashSet<RendszermodulListResponse>(new RendszermodulListResponse())
|
||||
{
|
||||
new RendszermodulListResponse
|
||||
{
|
||||
Tipus = RendszermodulTipus.Eugyintezes,
|
||||
IsAktiv = isEugyintezesEnabled
|
||||
},
|
||||
new RendszermodulListResponse
|
||||
{
|
||||
Tipus = RendszermodulTipus.LEP,
|
||||
IsAktiv = isLepEnabled
|
||||
},
|
||||
new RendszermodulListResponse
|
||||
{
|
||||
Tipus = RendszermodulTipus.FeltarGondviselo,
|
||||
IsAktiv = isFeltarGondviseloEnabled
|
||||
},
|
||||
new RendszermodulListResponse
|
||||
{
|
||||
Tipus = RendszermodulTipus.FeltarAszf,
|
||||
IsAktiv = isFeltarGondviseloEnabled,
|
||||
Url = feltarAszfUrl //A FeltarGondviselobe kell athelyezni
|
||||
}
|
||||
};
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
private static bool IsFeltarGondviseloEnabled(DefaultConnectionParameters dcp, IntezmenyConfigHelper helper)
|
||||
{
|
||||
if (!helper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.FeltarGondviselo, IntezmenyConfigTipusEnum.IsEnabled))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return dcp.GondviseloId.HasValue
|
||||
? new GondviseloHelper(new DalHandlerConnectionType(new MobileConnectionType(dcp.FelhasznaloId, dcp.IntezmenyId, dcp.IntezmenyAzonosito, dcp.TanevId), dcp.DalHandler)).IsGondviseloTanuloinakEvfolyamTipusaLetezik(dcp.GondviseloId.Value, Core.Constants.FeltarEvfolyamList)
|
||||
: new TanuloHelper(new DalHandlerConnectionType(new MobileConnectionType(dcp.FelhasznaloId, dcp.IntezmenyId, dcp.IntezmenyAzonosito, dcp.TanevId), dcp.DalHandler)).IsTanuloFeltarEvfolyamos();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
using System.Collections.Generic;
|
||||
using Kreta.Ellenorzo.BL.VN.Ellenorzo;
|
||||
using Kreta.Ellenorzo.Domain.VN.Common;
|
||||
using Kreta.Ellenorzo.Domain.VN.Intezmeny.TanevRendje;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Intezmeny.TanevRendje
|
||||
{
|
||||
public class TanevRendjeFacade : EllenorzoFacade
|
||||
{
|
||||
public TanevRendjeFacade(MobileUser mobileUser) : base(mobileUser)
|
||||
{
|
||||
}
|
||||
|
||||
public HashSet<TanevRendjeListResponse> ListTanevRendje()
|
||||
=> RunSubquery(() => TanevRendjeSubqueries.ListTanevRendje(DefaultConnectionParameters));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Kreta.Core.Enum;
|
||||
using Kreta.Core.Exceptions;
|
||||
using Kreta.Core.Logic;
|
||||
using Kreta.Ellenorzo.Dao.VN.Intezmeny.TanevRendje;
|
||||
using Kreta.Ellenorzo.Domain.VN.Adatszotar;
|
||||
using Kreta.Ellenorzo.Domain.VN.Common;
|
||||
using Kreta.Ellenorzo.Domain.VN.Intezmeny.TanevRendje;
|
||||
using Kreta.Ellenorzo.Domain.VN.OsztalyCsoport;
|
||||
using Kreta.Ellenorzo.Domain.VN.UniqueIdentifier;
|
||||
using Kreta.Enums;
|
||||
using Kreta.KretaServer.SystemSettings;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Intezmeny.TanevRendje
|
||||
{
|
||||
internal static class TanevRendjeSubqueries
|
||||
{
|
||||
internal static HashSet<TanevRendjeListResponse> ListTanevRendje(DefaultConnectionParameters dcp)
|
||||
{
|
||||
var response = new HashSet<TanevRendjeListResponse>(new TanevRendjeListResponse());
|
||||
|
||||
var tanevRendElemek = dcp.DalHandler.TanevRendjeDal().ListTanevRendekOsztalyCsoportokkal(dcp.TanevId, null, null, dcp.TanuloId, null).ToDaoList<TanevRendjeResponseDao>();
|
||||
var kezdoIdopont = SystemSettingsManager.GetSystemSettingValue<TimeSpan>(RendszerBeallitasTipusEnum.Az_elektronikus_naplo_megjelenesenek_kezdoidopontja, dcp.IntezmenyAzonosito, dcp.TanevId);
|
||||
foreach (var tanevRendElem in tanevRendElemek)
|
||||
{
|
||||
var napTipusNeve = (tanevRendElem.IsMindenOsztalyraVonatkozik ? string.Empty : "* ")
|
||||
+ tanevRendElem.NapTipusNeve
|
||||
+ (tanevRendElem.IsOrarendiNap ? string.Empty : " (Nem órarendi nap)")
|
||||
+ (!string.IsNullOrWhiteSpace(tanevRendElem.HetNapjaNev) ? " (" + tanevRendElem.HetNapjaNev + ")" : string.Empty);
|
||||
var responseItem = new TanevRendjeListResponse
|
||||
{
|
||||
Datum = tanevRendElem.Datum.Add(kezdoIdopont).AddMinutes(-1),
|
||||
Naptipus = new Adatszotar<NapTipusEnum>(tanevRendElem.NapTipusId, napTipusNeve),
|
||||
ElteroOrarendSzerintiTanitasiNap = tanevRendElem.HetNapjaId.HasValue ? new Adatszotar<HetNapjaTipusEnum>(tanevRendElem.HetNapjaId.Value, tanevRendElem.HetNapjaNev) : null,
|
||||
OrarendiNapHetirendje = new Adatszotar<HetiRendTipusEnum>(tanevRendElem.HetirendId, tanevRendElem.HetirendNeve),
|
||||
OsztalyCsoport = tanevRendElem.OsztalyCsoportId.HasValue ? new OsztalyCsoportSimplifiedResponse { Uid = new OsztalyCsoportUid(tanevRendElem.OsztalyCsoportId.Value) } : null
|
||||
};
|
||||
|
||||
responseItem.Uid = new TanevRendjeUid(tanevRendElem.Id, responseItem.OsztalyCsoport?.Uid.Id);
|
||||
|
||||
if (!response.Add(responseItem))
|
||||
{
|
||||
throw new BlException(BlExceptionType.DuplikaltKulcs);
|
||||
}
|
||||
}
|
||||
|
||||
return response;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Helpers.SystemSettings;
|
||||
using Kreta.Core.ConnectionType;
|
||||
using Kreta.DataAccessManual.Util;
|
||||
using Kreta.Ellenorzo.Domain.VN.Common;
|
||||
using Kreta.Ellenorzo.Domain.VN.Intezmeny.TestreszabasBeallitasok;
|
||||
using Kreta.Enums;
|
||||
|
||||
namespace Kreta.Ellenorzo.BL.VN.Intezmeny.TestreszabasBeallitasok
|
||||
{
|
||||
internal static class TestreszabasBeallitasokSubqueries
|
||||
{
|
||||
internal static TestreszabasBeallitasokResponse GetTestreszabasBeallitasok(DefaultConnectionParameters dcp)
|
||||
{
|
||||
var helper = new SystemSettingsHelper(new MobileConnectionType(dcp.FelhasznaloId, dcp.IntezmenyId, dcp.IntezmenyAzonosito, dcp.TanevId));
|
||||
|
||||
return new TestreszabasBeallitasokResponse
|
||||
{
|
||||
IsDiakRogzithetHaziFeladatot = helper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Diak_altali_hazifeladatok_rogzitese),
|
||||
IsTanorakTemajaMegtekinthetoEllenorzoben = helper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Tanora_Tema_Az_Ellenorzoben),
|
||||
IsOsztalyAtlagMegjeleniteseEllenorzoben = helper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Osztalyatlag_megjelenitese_az_ellenorzo_feluleten),
|
||||
ErtekelesekMegjelenitesenekKesleltetesenekMerteke = helper.GetSystemSettingValue<int>(RendszerBeallitasTipusEnum.Ertekelesek_megjelenese_az_ellenorzo_modulban),
|
||||
KovetkezoTelepitesDatuma = new AdminHelper(new DalHandlerConnectionType(new MobileConnectionType(dcp.FelhasznaloId, dcp.IntezmenyId, dcp.IntezmenyAzonosito, dcp.TanevId), dcp.DalHandler)).GetKovTelepitesDatum()
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue