init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,248 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.Extensions;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Helpers.SystemSettings;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.BusinessLogic.Logic.Naplozas;
|
||||
using Kreta.BusinessLogic.Logic.Naplozas.Elokeszites;
|
||||
using Kreta.BusinessLogic.Logic.Naplozas.Validacio;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Core.Exceptions;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Framework;
|
||||
using Kreta.Web.Areas.Orarend.Logic;
|
||||
using Kreta.Web.Areas.Orarend.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Error;
|
||||
using Kreta.Web.Helpers.TabStrip;
|
||||
using Kreta.Web.Models.EditorTemplates;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Orarend.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
|
||||
public class AdminNaploEllenorzesController : BaseNaploTanariOrarendController
|
||||
{
|
||||
private readonly IFileServiceHelper fileServiceHelper;
|
||||
|
||||
public AdminNaploEllenorzesController(IFileServiceHelper fileServiceHelper)
|
||||
{
|
||||
this.fileServiceHelper = fileServiceHelper ?? throw new ArgumentNullException(nameof(fileServiceHelper));
|
||||
}
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
var model = new TanariOrarendModelKeresheto();
|
||||
var orarendHelper = new OrarendHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
var tanevHelper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
model.IsNemKellNemKotott = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.kotott_munkaido_nevelesseloktatassal_le_nem_kotott_resz_kezelesenek_tiltasa);
|
||||
var fogadooraMegjelenik = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Fogadoorak_megjelenitese) && !ClaimData.FelhasznaloSzerepCsomagok.Contains(KretaClaimPackages.IsDualisKepzohelyiOktato.ClaimValue);
|
||||
|
||||
model.HetirendJson = orarendHelper.GetHetirendek();
|
||||
model.NaptariHetekHetirendJson = orarendHelper.GetNaptariHetekHetirendek();
|
||||
|
||||
model.TanorakServiceAction = "GetAdminNaploEllenorzesTanorakOrarendiOrak";
|
||||
model.TanoranKivuliFoglalkozasokServiceAction = "GetAdminNaploEllenorzesTanoranKivuliFoglalkozasok";
|
||||
model.NemKotottMunkaidoServiceAction = "GetAdminNaploEllenorzesNemKotottMunkaido";
|
||||
model.FogadoorakServiceAction = "GetAdminNaploEllenorzesFogadoora";
|
||||
|
||||
model.TanorakCalendarClickJSFunction = "AdminNaploEllenorzesHelper.TanorakCalendarClickEvent";
|
||||
model.TanoranKivuliFoglalkozasokCalendarClickJSFunction = "AdminNaploEllenorzesHelper.FoglalkozasokCalendarClickEvent";
|
||||
model.NemKotottMunkaidoCalendarClickJSFunction = "AdminNaploEllenorzesHelper.NemKotottCalendarClickEvent";
|
||||
model.FogadooraCalendarClickJSFunction = "AdminNaploEllenorzesHelper.FogadooraCalendarClickEvent";
|
||||
|
||||
model.TanoranKivuliFoglalkozasokCalendarSelectJSFunction = model.NemKotottMunkaidoCalendarSelectJSFunction = model.FogadooraCalendarSelectJSFunction = "undefined";
|
||||
|
||||
var naplozarasLogic = new NaplozarasLogic(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
model.LezartOsztalyokEsOsztalybontottCsoportokIdList = naplozarasLogic.GetLezartOsztalyokEsBontottCsoportjaik();
|
||||
|
||||
model.RendkivuliTanitasiNapok = tanevHelper.GetTanevRendkivuliNapok();
|
||||
model.IsShowRogzitottOrak = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.kotott_munkaido_megjelenitese);
|
||||
|
||||
#region Calendar megjelenítés
|
||||
var co = orarendHelper.GetCalendarMinMax();
|
||||
model.CalendarMinTime = co.CalendarMin.Subtract(new TimeSpan(0, 15, 0)); // "15 perccel legyen előbb"
|
||||
model.CalendarMaxTime = co.CalendarMax.Add(new TimeSpan(0, 15, 0)); // "15 perccel legyen később"
|
||||
|
||||
model.CsengetesiRendMinTime = new TimeSpan();
|
||||
model.CsengetesiRendMaxTime = new TimeSpan(0, 25, 0);
|
||||
|
||||
#endregion Calendar megjelenítés
|
||||
|
||||
model.ShowKerdoivPopup = new KerdoivHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetShowKerdoivPopup(ClaimData.IsAlkalmazottPedagogus);
|
||||
model.TabList = GetTanariOrarendTabs(fogadooraMegjelenik);
|
||||
|
||||
ViewBag.nemKotottMunkaidoStart = systemSettingsHelper.GetSystemSettingValue<TimeSpan>(RendszerBeallitasTipusEnum.Nem_kotott_munkaido_megjelenesenek_kezdoidopontja).RoundDownToNearestTargetMinute(15).ToString();
|
||||
ViewBag.nemKotottMunkaidoEnd = systemSettingsHelper.GetSystemSettingValue<string>(RendszerBeallitasTipusEnum.Nem_kotott_munkaido_megjelenesenek_zaroidopontja);
|
||||
ViewBag.napirendStart = systemSettingsHelper.GetSystemSettingValue<TimeSpan>(RendszerBeallitasTipusEnum.Az_elektronikus_naplo_megjelenesenek_kezdoidopontja).RoundDownToNearestTargetMinute(15).ToString();
|
||||
ViewBag.napirendEnd = systemSettingsHelper.GetSystemSettingValue<string>(RendszerBeallitasTipusEnum.Az_elektronikus_naplo_megjelenesenek_zaroidopontja);
|
||||
ViewBag.fogadooraStart = systemSettingsHelper.GetSystemSettingValue<TimeSpan>(RendszerBeallitasTipusEnum.Fogado_Ora_Kezdoidopontja).RoundDownToNearestTargetMinute(15).ToString();
|
||||
ViewBag.fogadooraEnd = systemSettingsHelper.GetSystemSettingValue<string>(RendszerBeallitasTipusEnum.Fogado_Ora_Zaroidopontja);
|
||||
|
||||
return View("Index", model);
|
||||
}
|
||||
|
||||
public ActionResult AdminNaploEllenorzesEvent(CalendarModel calendarModel)
|
||||
{
|
||||
try
|
||||
{
|
||||
var tbm = new TanoraIdBeallitasModel() { calendarModel = calendarModel };
|
||||
|
||||
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
|
||||
|
||||
var tanarSorszamozhat = new SystemSettingsHelper(connectionType).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Ora_sorszamozasat_naplozo_pedagogus_eldontheti);
|
||||
var elmaradtTanitasiOraRogzitesenekTiltasa = new SystemSettingsHelper(connectionType).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Elmaradt_tanitasi_ora_rogzitesenek_tiltasa);
|
||||
|
||||
var naploValidacioParameters = new NaploValidacioParameters(calendarModel.Start, ConnectionTypeExtensions.GetSessionConnectionType(), ClaimData.FelhasznaloSzerepkor);
|
||||
var validator = new NaploValidacio(naploValidacioParameters);
|
||||
|
||||
var co = new NaplozasElokeszitesCo();
|
||||
calendarModel.ConvertTo(co);
|
||||
var naplozasLogic = new NaplozasElokeszitesLogic(validator, co);
|
||||
var muveletPram = new TanoraMuveletek(ClaimData.FelhasznaloId, calendarModel);
|
||||
|
||||
var model = new TanoraNaplozasTabok();
|
||||
|
||||
var pm = new PopUpModel(model, "NaploEllenorzes");
|
||||
model.TabList = GetDetailTabs(naplozasLogic, tanarSorszamozhat, elmaradtTanitasiOraRogzitesenekTiltasa);
|
||||
model.TanoraMuveletek = muveletPram;
|
||||
|
||||
pm.AddCancelBtn(pm, "AdminNaploEllenorzesHelper.windowCancel");
|
||||
|
||||
if ((calendarModel.OraType == Enums.ManualEnums.CalendarOraTypeEnum.TanitasiOra
|
||||
|| calendarModel.OraType == Enums.ManualEnums.CalendarOraTypeEnum.TanoranKivuliNaplozottFoglalkozas)
|
||||
&& naplozasLogic.GetModel.IsElmaradtOra)
|
||||
{
|
||||
pm.Buttons.Add(new Helpers.Modal.ModalButtonModel { Name = "deleteNaplozas", Text = Resources.OrarendResource.NaplozasiAdatokTorlese, EventName = "AdminNaploEllenorzesHelper.deleteNaplozasConfirm" });
|
||||
}
|
||||
|
||||
if (calendarModel.OraType == Enums.ManualEnums.CalendarOraTypeEnum.OrarendiOra
|
||||
|| calendarModel.OraType == Enums.ManualEnums.CalendarOraTypeEnum.TanoranKivuliFoglalkozas
|
||||
|| calendarModel.OraType == Enums.ManualEnums.CalendarOraTypeEnum.TanoranKivuliTevekenyseg)
|
||||
{
|
||||
pm.Buttons.Add(new Helpers.Modal.ModalButtonModel { Name = "updateNemMegtartott", Text = Resources.OrarendResource.NemMegtartottOra, EventName = "AdminNaploEllenorzesHelper.updateNemMegtartottConfirm" });
|
||||
}
|
||||
|
||||
return PartialView(Constants.General.PopupView, pm);
|
||||
}
|
||||
catch (BlException e)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, e.Message);
|
||||
}
|
||||
}
|
||||
|
||||
public ActionResult AdminNaploEllenorzesNemKotottMunkaidoEvent(CalendarModel calendarModel)
|
||||
{
|
||||
var co = new NaplozasElokeszitesCo();
|
||||
calendarModel.ConvertTo(co);
|
||||
var muveletPram = new TanoraMuveletek(ClaimData.FelhasznaloId, calendarModel);
|
||||
|
||||
var model = new TanoraNaplozasTabok();
|
||||
|
||||
NemKotottMunkaidoHelper helper = new NemKotottMunkaidoHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
var coNkm = helper.GetNemKotottMunkaidoById(calendarModel.EventId);
|
||||
|
||||
var pm = new PopUpModel(model, "NaploEllenorzes");
|
||||
model.TabList = new List<TabStripItemModel> {
|
||||
new TabStripItemModel {
|
||||
ItemId = "1",
|
||||
ItemName = "Adatok",
|
||||
PartialViewName = "NaploEllenorzesNemKotottMunkaido_Tab",
|
||||
Model = NemKotottMunkaidoLogic.ConvertModelFromCo(coNkm),
|
||||
IsActive = true
|
||||
}
|
||||
};
|
||||
model.TanoraMuveletek = muveletPram;
|
||||
|
||||
pm.AddCancelBtn(pm, "AdminNaploEllenorzesHelper.windowCancel");
|
||||
|
||||
return PartialView(Constants.General.PopupView, pm);
|
||||
}
|
||||
|
||||
public ActionResult AdminNaploEllenorzesFogadooraEvent(CalendarModel calendarModel)
|
||||
{
|
||||
var fm = new FogadooraModel();
|
||||
var isModosithatoFogadoora = false;
|
||||
|
||||
var helper = new FogadooraHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
var fogadooraCo = helper.GetFogadooraById(calendarModel.EventId);
|
||||
fm.Id = fogadooraCo.Id;
|
||||
fm.FogadoOraDatuma = fogadooraCo.FogadoOraKezdete.Date;
|
||||
fm.FogadoOraKezdete = fogadooraCo.FogadoOraKezdete;
|
||||
fm.FogadoOraVege = fogadooraCo.FogadoOraVege;
|
||||
fm.Rendszeresseg = fogadooraCo.Rendszeresseg;
|
||||
fm.TeremId = fogadooraCo.TeremId;
|
||||
fm.JelentkezesekKezelese = (int)FogadooraTipusEnum.Jelentkezheto == fogadooraCo.FogadooraTipusEnumId || (int)FogadooraTipusEnum.JelentkezhetoDarabolt == fogadooraCo.FogadooraTipusEnumId;
|
||||
fm.IsIdosavraOsztas = fogadooraCo.IsIdosavraOsztas;
|
||||
fm.EgysegnyiIdopontok = fogadooraCo.EgysegnyiIdopontok;
|
||||
fm.SelectedOsztalyCsoportIdList = fogadooraCo.SelectedOsztalyCsoportIdList;
|
||||
fm.RendszeresFogadooraElsoDatuma = fogadooraCo.FogadoOraKezdete;
|
||||
fm.RendszeresFogadooraUtolsoDatuma = fogadooraCo.FogadoOraVege;
|
||||
fm.IsEgyAlkalomModosul = false;
|
||||
fm.IsCalendar = true;
|
||||
fm.IsFaliujsagonMegjelenjen = fogadooraCo.IsFaliujsagonMegjelenjen;
|
||||
fm.IsRendszeressegModosithato = false;
|
||||
fm.FaliujsagErvenyessegKezdete = fogadooraCo.FaliujsagErvenyessegKezdete;
|
||||
fm.FaliujsagErvenyessegVege = fogadooraCo.FaliujsagErvenyessegVege;
|
||||
|
||||
fm.TanevUtolsoNapja = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanevInfo().UtolsoTanitasiNap;
|
||||
|
||||
var jelentkezettGvDs = helper.GetJelentkezettGondviseloCntByFogadooraId(calendarModel.EventId);
|
||||
if (jelentkezettGvDs.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
fm.VanGvJelentkezes = true;
|
||||
}
|
||||
|
||||
if (!isModosithatoFogadoora)
|
||||
{
|
||||
fm.TeremNev = new TeremHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTeremNev(fogadooraCo.TeremId);
|
||||
}
|
||||
|
||||
var rendszeressegDictionary = EnumExtensions.EnumToDictionary<FogadooraRendszeressegEnum>(ClaimData.SelectedTanevID.Value);
|
||||
fm.RendszeressegText = rendszeressegDictionary.First(x => x.Key == fogadooraCo.Rendszeresseg.ToString()).Value;
|
||||
|
||||
var pm = new PopUpModel(fm, "~/Areas/Orarend/Views/TanariOrarend/Fogadoora_Details.cshtml");
|
||||
pm.AddCancelBtn(pm, "AdminNaploEllenorzesHelper.windowCancel");
|
||||
|
||||
return PartialView(Constants.General.PopupView, pm);
|
||||
}
|
||||
|
||||
private List<TabStripItemModel> GetDetailTabs(NaplozasElokeszitesLogic logic, bool tanarSorszamozhat, bool elmaradtTanitasiOraRogzitesenekTiltasa)
|
||||
{
|
||||
List<TabStripItemModel> list = new List<TabStripItemModel>();
|
||||
var naplozasModel = new TanoraNaplozas(fileServiceHelper);
|
||||
naplozasModel.Fill(logic.GetModel, tanarSorszamozhat, elmaradtTanitasiOraRogzitesenekTiltasa);
|
||||
|
||||
list.Add(new TabStripItemModel()
|
||||
{
|
||||
ItemId = "1",
|
||||
ItemName = StringResourcesUtil.GetString(3804) /*Naplózás*/,
|
||||
PartialViewName = "NaploEllenorzesMulasztas_Tab",
|
||||
Model = naplozasModel.Mulasztas,
|
||||
IsActive = true
|
||||
});
|
||||
|
||||
list.Add(new TabStripItemModel()
|
||||
{
|
||||
ItemId = "5",
|
||||
ItemName = StringResourcesUtil.GetString(1922) /*Tanóra adatai*/,
|
||||
PartialViewName = "NaploEllenorzesTanora_Tab",
|
||||
Model = naplozasModel.TanoraAdatai,
|
||||
IsActive = false
|
||||
});
|
||||
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue