661 lines
34 KiB
C#
661 lines
34 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Net.Mime;
|
|
using System.Text;
|
|
using System.Web;
|
|
using System.Web.Http;
|
|
using System.Web.Mvc;
|
|
using Aspose.Cells;
|
|
using Kreta.BusinessLogic.Helpers;
|
|
using Kreta.BusinessLogic.Helpers.SystemSettings;
|
|
using Kreta.BusinessLogic.Interfaces;
|
|
using Kreta.BusinessLogic.Logic;
|
|
using Kreta.Client.Leltar;
|
|
using Kreta.Core.FeatureToggle;
|
|
using Kreta.Enums;
|
|
using Kreta.Enums.ManualEnums;
|
|
using Kreta.Resources;
|
|
using Kreta.Web.Areas.Alkalmazott.ApiControllers;
|
|
using Kreta.Web.Areas.Alkalmazott.Helpers;
|
|
using Kreta.Web.Areas.Alkalmazott.Models;
|
|
using Kreta.Web.Controllers;
|
|
using Kreta.Web.Helpers;
|
|
using Kreta.Web.Helpers.Error;
|
|
using Kreta.Web.Helpers.Modal;
|
|
using Kreta.Web.Models;
|
|
using Kreta.Web.Models.EditorTemplates;
|
|
using Kreta.Web.Security;
|
|
|
|
namespace Kreta.Web.Areas.Alkalmazott.Controllers
|
|
{
|
|
public class BaseAlkalmazottController : Controller
|
|
{
|
|
protected readonly IFeatureContext _featureContext;
|
|
protected readonly IKozpontiKretaHelper _kozpontiKretaHelper;
|
|
protected readonly ILeltarClient _leltarClient;
|
|
|
|
public BaseAlkalmazottController(IFeatureContext featureContext, IKozpontiKretaHelper kozpontiKretaHelper, ILeltarClient leltarClient)
|
|
{
|
|
_featureContext = featureContext;
|
|
_kozpontiKretaHelper = kozpontiKretaHelper;
|
|
_leltarClient = leltarClient ?? throw new ArgumentNullException(nameof(leltarClient));
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenNewAlkalmazottPopUp()
|
|
{
|
|
var alkalmazottModel = new AlkalmazottModel();
|
|
|
|
alkalmazottModel.AlapAdatModel = new AlapAdatModel()
|
|
{
|
|
NemList = AlkalmazottViewHelper.GetNemList().Where(x => x.Value == 4.ToString() || x.Value == 5.ToString()).ToList(),
|
|
IgazolvanyTipus = (int?)Enums.IgazolvanyTipusEnum.Szemelyi_igazolvany,
|
|
Allampolgarsag = (int?)AllampolgarsagEnum.magyar,
|
|
Anyanyelve = (int?)AnyanyelvEnum.magyar,
|
|
SzuletesiOrszag = (int?)OrszagTipusEnum.Magyarorszag,
|
|
};
|
|
alkalmazottModel.JogosultsagModel = new JogosultsagModel()
|
|
{
|
|
JogosultsagiSzintList = AlkalmazottViewHelper.GetJogosultsagiSzintList(_featureContext.IsEnabled(Core.Constants.FeatureName.IERSzerepkorokHozzaadasa, instituteId: ClaimData.IntezmenyAzonosito)),
|
|
JogosultsagiSzint = new string[] { ((int)SzerepkorTipusEnum.Naplo).ToString() }
|
|
};
|
|
|
|
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
var egy_statuszra_juto_kotelezo_oraszam = systemSettingsHelper.GetSystemSettingValue<double>(RendszerBeallitasTipusEnum.Egy_statuszra_juto_kotelezo_oraszam);
|
|
|
|
alkalmazottModel.MunkaugyAdatModel = new MunkaugyAdatModel()
|
|
{
|
|
PedagogusStatuszaList = AlkalmazottViewHelper.GetPedagogusStatuszaList(),
|
|
VezetoiOraszamOka = (int)VezetoiOraszamokTipusEnum.Nincs,
|
|
FoglalkoztatasTipusa = (int)FoglalkoztatasTipusaEnum.TeljesMunkaidos,
|
|
PedagogusStatusza = (int)PedagogusStatuszEnum.teljes_munkaidos,
|
|
Oraszam = egy_statuszra_juto_kotelezo_oraszam,
|
|
MunkaKor = (int)MunkakorTipusEnum.tanar,
|
|
FoglalkoztatasiJogviszony = (int)MunkaviszonyTipusEnum.kozalkalmazotti_jogviszony_hatarozatlan_idore,
|
|
PedagogusFokozat = (int)BesorolasiFokozatTipusEnum.na,
|
|
Foallasu = true
|
|
};
|
|
|
|
alkalmazottModel.CimElerhetosegModel = new CimElerhetosegModel()
|
|
{
|
|
Orszag = (int)OrszagTipusEnum.Magyarorszag,
|
|
CimTipus = (int)CimTipusEnum.allando_lakcim,
|
|
AlapertelmezettCim = true,
|
|
AlapertelmezettEmail = true,
|
|
AlapertelmezettTel = true,
|
|
TelefonKotelezo = false,
|
|
EmailcimKotelezo = false,
|
|
EmailTipusKotelezo = false,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.CimSectionVisible,
|
|
CimElerhetosegConstant.EmailSectionVisible,
|
|
CimElerhetosegConstant.TelSectionVisible,
|
|
CimElerhetosegConstant.IsNew
|
|
}
|
|
};
|
|
|
|
var model = new PopUpModel(new TabStripModel()
|
|
{
|
|
TabList = AlkalmazottViewHelper.GetNewTabs(alkalmazottModel)
|
|
}, "New_PopUp");
|
|
|
|
model.AddCancelBtn(model, "AlkalmazottHelper.newAlkalmazottCancel");
|
|
model.AddOkBtn(model, "AlkalmazottHelper.saveNewAlkPromt");
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenUjDualisKepzohelyiOktatoRogzitesePopUp(bool isFromSzervezet)
|
|
{
|
|
var dualisKepzohelyiOktatoModel = new DualisKepzohelyiOktatoModel()
|
|
{
|
|
IsDualisKepzohelyFromSzervezet = isFromSzervezet,
|
|
NevEloTag = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSpecialisAlkalmazottakNevEloTag(AlkalmazottResource.DualisKepzohelyRovid),
|
|
CsaladiNev = AlkalmazottResource.DualisCsaladNev,
|
|
Utonev = isFromSzervezet ? AlkalmazottResource.Oktato : AlkalmazottResource.KulsoGyakorlatiUtoNev,
|
|
MunkaKor = (int)MunkakorTipusEnum.KulsoGyakorlatiHely
|
|
};
|
|
dualisKepzohelyiOktatoModel.JogosultsagModel = new JogosultsagModel()
|
|
{
|
|
JogosultsagiSzintList = AlkalmazottViewHelper.GetJogosultsagiSzintForSzervezetModulList(ClaimData.SelectedTanevID.Value),
|
|
JogosultsagiSzint = new string[] { ((int)SzerepkorTipusEnum.Naplo).ToString() }
|
|
};
|
|
|
|
var model = new PopUpModel(new TabStripModel()
|
|
{
|
|
TabList = AlkalmazottViewHelper.GetNewTabs(dualisKepzohelyiOktatoModel)
|
|
}, "New_PopUp");
|
|
|
|
model.AddCancelBtn(model, "AlkalmazottHelper.ujDualisKepzohelyiOktatoRogziteseCancel");
|
|
model.AddOkBtn(model, "AlkalmazottHelper.dualisKepzohelyiOktatoSave");
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenAlkalmazottInfoPopUp(int alkalmazottId, bool isFromSzervezet)
|
|
{
|
|
var model = new PopUpModel(new TabStripModel()
|
|
{
|
|
TabList = AlkalmazottViewHelper.GetInfoTabs(alkalmazottId, ClaimData.IsKlebelsberg, isFromSzervezet)
|
|
}, "Info_PopUp");
|
|
|
|
model.AddCancelBtn(model, "AlkalmazottHelper.alkalmazottInfoCancel");
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenTanuloTanarInfoPopUp(int alkalmazottId)
|
|
{
|
|
var model = new PopUpModel(new TabStripModel()
|
|
{
|
|
TabList = AlkalmazottViewHelper.GetInfoTabs(alkalmazottId, ClaimData.IsKlebelsberg, false)
|
|
}, "Info_PopUp");
|
|
|
|
//model.AddCancelBtn(model, "TanuloTanarHelper.detailTanuloTanarCancel");
|
|
model.AddBtn(model, "TanuloTanarCancelButton", AdminisztracioResource.Megsem, "TanuloTanarHelper.detailTanuloTanarCancel");
|
|
return PartialView(Constants.General.PopupView, model);
|
|
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult NewElerhetosegCim(int alkalmazottId)
|
|
{
|
|
var model = new CimElerhetosegModel()
|
|
{
|
|
FelhasznaloId = alkalmazottId,
|
|
Orszag = (int)OrszagTipusEnum.Magyarorszag,
|
|
CimTipus = (int)CimTipusEnum.allando_lakcim,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.CimSectionVisible,
|
|
CimElerhetosegConstant.IsNew,
|
|
CimElerhetosegConstant.AlapertelmezettCimVisible
|
|
}
|
|
};
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Cim_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegCimHelper.newElerhetosegCimCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegCimHelper.newElerhetosegCimSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult ModElerhetosegCim(int cimId, bool? isKozpontilagSzinkronizalt)
|
|
{
|
|
var tac = new AlkalmazottApiController(_leltarClient);
|
|
var model = tac.GetAlkalmazottElerhetosegCim(cimId);
|
|
model.IsKozpontilagSzinkronizalt = isKozpontilagSzinkronizalt.HasValue && isKozpontilagSzinkronizalt.Value;
|
|
model.FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.CimSectionVisible,
|
|
CimElerhetosegConstant.AlapertelmezettCimVisible,
|
|
};
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Cim_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegCimHelper.modElerhetosegCimCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegCimHelper.modElerhetosegCimSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult NewElerhetosegTel(int alkalmazottId)
|
|
{
|
|
var model = new CimElerhetosegModel()
|
|
{
|
|
FelhasznaloId = alkalmazottId,
|
|
TanulovalEgyezik = true,
|
|
AlapertelmezettTel = true,
|
|
TelefonKotelezo = true,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.TelSectionVisible,
|
|
CimElerhetosegConstant.IsNew,
|
|
CimElerhetosegConstant.AlapertelmezettTelVisible
|
|
}
|
|
};
|
|
model.AlapertelmezettTel = !new AlkalmazottHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).HasAlkalmazottAlapertelmezettTelefon(alkalmazottId);
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Tel_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegTelHelper.newElerhetosegTelCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegTelHelper.newElerhetosegTelSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult ModElerhetosegTel(int id)
|
|
{
|
|
var tac = new AlkalmazottApiController(_leltarClient);
|
|
var model = tac.GetAlkalmazottElerhetosegTel(id);
|
|
model.TanulovalEgyezik = true;
|
|
model.TelefonKotelezo = true;
|
|
model.FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.TelSectionVisible,
|
|
CimElerhetosegConstant.AlapertelmezettTelVisible
|
|
};
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Tel_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegTelHelper.modElerhetosegTelCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegTelHelper.modElerhetosegTelSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult NewElerhetosegEmail(int alkalmazottId)
|
|
{
|
|
var model = new CimElerhetosegModel()
|
|
{
|
|
FelhasznaloId = alkalmazottId,
|
|
AlapertelmezettEmail = true,
|
|
TanulovalEgyezik = true,
|
|
EmailcimKotelezo = true,
|
|
EmailTipusKotelezo = true,
|
|
FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.EmailSectionVisible,
|
|
CimElerhetosegConstant.IsNew,
|
|
CimElerhetosegConstant.AlapertelmezettEmailVisible
|
|
}
|
|
};
|
|
model.AlapertelmezettEmail = !new AlkalmazottHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).HasAlkalmazottAlapertelmezettEmail(alkalmazottId);
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Email_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegEmailHelper.newElerhetosegEmailCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegEmailHelper.newElerhetosegEmailSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult ModElerhetosegEmail(int id)
|
|
{
|
|
var tac = new AlkalmazottApiController(_leltarClient);
|
|
var model = tac.GetAlkalmazottElerhetosegEmail(id);
|
|
model.TanulovalEgyezik = true;
|
|
model.EmailcimKotelezo = true;
|
|
model.EmailTipusKotelezo = true;
|
|
model.FormSettings = new List<string>() {
|
|
CimElerhetosegConstant.EmailSectionVisible,
|
|
CimElerhetosegConstant.AlapertelmezettEmailVisible
|
|
};
|
|
var pm = new PopUpModel(model, "_Elerhetoseg_Email_Bevitel");
|
|
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegCancel", Text = Resources.CommonResource.Megse, EventName = "AlkalmazottElerhetosegEmailHelper.modElerhetosegEmailCancel" });
|
|
pm.Buttons.Add(new ModalButtonModel() { Name = "BtnElerhetosegOk", Text = Resources.CommonResource.Mentes, EventName = "AlkalmazottElerhetosegEmailHelper.modElerhetosegEmailSave" });
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenModifyAlkalmazottPopUp(int alkalmazottId, bool isFromSzervezet)
|
|
{
|
|
var apiController = new AlkalmazottApiController(_leltarClient);
|
|
var alkalmazottModel = apiController.GetAlkalmazottDataForModify(alkalmazottId);
|
|
var connectionType = ConnectionTypeExtensions.GetActiveSessionConnectionType();
|
|
alkalmazottModel.IsFromSzervezet = isFromSzervezet;
|
|
alkalmazottModel.MunkaugyAdatModel.IsDualisKepzohelyFromSzervezet = isFromSzervezet;
|
|
alkalmazottModel.MunkaugyAdatModel.IsDualisKepzesEnabled = new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
|
|
if (isFromSzervezet)
|
|
{
|
|
alkalmazottModel.JogosultsagModel.JogosultsagiSzintList = AlkalmazottViewHelper.GetJogosultsagiSzintForSzervezetModulList(ClaimData.SelectedTanevID.Value);
|
|
}
|
|
else
|
|
{
|
|
alkalmazottModel.JogosultsagModel.JogosultsagiSzintList = AlkalmazottViewHelper.GetJogosultsagiSzintList(_featureContext.IsEnabled(Core.Constants.FeatureName.IERSzerepkorokHozzaadasa, instituteId: ClaimData.IntezmenyAzonosito));
|
|
}
|
|
alkalmazottModel.TabList = AlkalmazottViewHelper.GetModifyTabs(alkalmazottModel, ClaimData.IsKlebelsberg);
|
|
alkalmazottModel.AlapAdatModel.NemList = AlkalmazottViewHelper.GetNemList().Where(x => x.Value == 4.ToString() || x.Value == 5.ToString()).ToList();
|
|
alkalmazottModel.MunkaugyAdatModel.PedagogusStatuszaList = AlkalmazottViewHelper.GetPedagogusStatuszaList();
|
|
|
|
|
|
var icHelper = new IntezmenyConfigHelper(connectionType);
|
|
alkalmazottModel.JogosultsagModel.IsHrFeatureEnabled = icHelper.GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.HRModul, IntezmenyConfigTipusEnum.IsEnabled);
|
|
alkalmazottModel.MunkaugyAdatModel.IsKlebelsberg = ClaimData.IsKlebelsberg;
|
|
|
|
var intezmenyAdatok = new IntezmenyHelper(connectionType).GetIntezmenyiAdatok();
|
|
|
|
alkalmazottModel.MunkaugyAdatModel.IsApaczaiMentorVisible = intezmenyAdatok.IsSzakkepzo && intezmenyAdatok.IsSzakkepzoJuttatas;
|
|
|
|
var model = new PopUpModel(alkalmazottModel, "Modify_PopUp");
|
|
|
|
model.AddCancelBtn(model, "AlkalmazottHelper.modifyAlkalmazottCancel");
|
|
model.AddOkBtn(model, "AlkalmazottHelper.saveModAlkPromt");
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
public ActionResult GetAlapadatokPartialView(int id)
|
|
{
|
|
var model = new AlkalmazottApiController(_leltarClient).GetAlkalmazottDataForInfo(id);
|
|
|
|
return PartialView("Info_Alapadatok_Tab", model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult GetSZIRBeallitasokPartialView(int id)
|
|
{
|
|
var model = new AlkalmazottApiController(_leltarClient).GetAlkalmazottDataForInfo(id);
|
|
|
|
return PartialView("Info_SZIRBeallitasok_Tab", model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult GetElsodlegesMunkaugyiAdatokPartialView(int id, bool isFromSzervezet)
|
|
{
|
|
var model = new AlkalmazottApiController(_leltarClient).GetAlkalmazottElsodlegesMunkaugyiAdatokDataForInfo(id, ClaimData.IsKlebelsberg);
|
|
model.IsFromSzervezetOktato = isFromSzervezet;
|
|
return PartialView("Info_ElsodlegesMunkaugyiAdatok_Tab", model);
|
|
}
|
|
|
|
public ActionResult GetPartialView(int id, string partialViewName, bool isFromSzervezet = false)
|
|
{
|
|
var model = new AlkalmazottDetailModel()
|
|
{
|
|
Id = id,
|
|
AlkalmazottApiControllerName = isFromSzervezet ? Constants.ApiControllers.DualisAdminAlkalmazottApi : Constants.ApiControllers.AlkalmazottApi
|
|
};
|
|
|
|
return PartialView(partialViewName, model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenModPopUp(List<AlkalmazottModModel> alkalmazottList, bool isFromSzervezet)
|
|
{
|
|
var api = new AlkalmazottApiController(_leltarClient);
|
|
var model = new AlkalmazottModModel();
|
|
|
|
var alkalmazottListForKozpontilagSzinkronizaltCheck = new List<int>();
|
|
if (alkalmazottList.Count == 1)
|
|
{
|
|
var data = api.GetAlkalmazottDataForModify(alkalmazottList[0].AlkalmazottId.Value);
|
|
|
|
var nev = BusinessLogic.Extensions.NameExtensions.GetNevSorrendben("F", data.AlapAdatModel.NevEloTag, data.AlapAdatModel.MunkavallaloCsaladiNev, data.AlapAdatModel.MunkavallaloUtonev);
|
|
|
|
model.AlkalmazottNev = nev;
|
|
model.AlkalmazottId = data.AlkalmazottId;
|
|
|
|
var munkaugy = data.MunkaugyAdatModel;
|
|
model.FoglalkoztatasiJogviszony = munkaugy.FoglalkoztatasiJogviszony;
|
|
model.FeladatellatasiHely = munkaugy.FeladatellatasiHely;
|
|
model.Oraszam = munkaugy.Oraszam;
|
|
model.MunkaidoKedvezmenyOraszam = munkaugy.MunkaidoKedvezmenyOraszam;
|
|
model.MunkaKor = munkaugy.MunkaKor;
|
|
model.AlkalmazasKezdete = munkaugy.AlkalmazasKezdete;
|
|
model.AlkalmazasVege = munkaugy.AlkalmazasVege;
|
|
model.PedagogusFokozat = munkaugy.PedagogusFokozat;
|
|
model.PedagogusStatusza = munkaugy.PedagogusStatusza;
|
|
model.MunkaidoKedvezmenyOka = munkaugy.MunkaidoKedvezmenyOka;
|
|
model.FoglalkoztatasTipusa = munkaugy.FoglalkoztatasTipusa;
|
|
alkalmazottListForKozpontilagSzinkronizaltCheck.Add(alkalmazottList[0].AlkalmazottId.Value);
|
|
}
|
|
else
|
|
{
|
|
foreach (var item in alkalmazottList)
|
|
{
|
|
model.AlkalmazottArray += item.AlkalmazottId.ToString() + ",";
|
|
model.AlkalmazottNevArray += item.AlkalmazottNev + ", ";
|
|
|
|
alkalmazottListForKozpontilagSzinkronizaltCheck.Add(item.AlkalmazottId.Value);
|
|
}
|
|
|
|
model.AlkalmazottArray = model.AlkalmazottArray.Remove(model.AlkalmazottArray.Length - 1);
|
|
model.AlkalmazottNevArray = model.AlkalmazottNevArray.Remove(model.AlkalmazottNevArray.Length - 2);
|
|
}
|
|
model.IsFromSzervezet = isFromSzervezet;
|
|
model.NemList = AlkalmazottViewHelper.GetNemList().Where(x => x.Value == 4.ToString() || x.Value == 5.ToString()).ToList();
|
|
model.IgenNemList = new ComboBoxHelperEnumApiController(_featureContext).GetIgenNemEnumSelectList();
|
|
model.PedagogusStatuszaList = AlkalmazottViewHelper.GetPedagogusStatuszaList();
|
|
model.IsKlebelsberg = ClaimData.IsKlebelsberg;
|
|
model.IsKozpontilagSzinkronizalt = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).AnyKozpontilagSzinkorizaltAlkalmazottFromList(alkalmazottListForKozpontilagSzinkronizaltCheck);
|
|
|
|
var pm = new PopUpModel(model, isFromSzervezet ? "SzervezetAlkalmazottModify_Bevitel" : "AlkalmazottModify_Bevitel");
|
|
pm = pm.AddCancelBtn(pm, "AlkalmazottHelper.modifyCancel");
|
|
pm = pm.AddOkBtn(pm, isFromSzervezet ? "AlkalmazottHelper.confirmCsopSzervezetModWindow" : "AlkalmazottHelper.confirmCsopModWindow");
|
|
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
#region Export
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult ExportAlkalmazottakLakcimmel([FromUri] AlkalmazottSearchModel model)
|
|
{
|
|
var stream = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottakLakcimmelExcelExport(model.ConvertModelToCo());
|
|
return new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = AlkalmazottResource.AlkalmazottakLakcimmelExportFileName };
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult ExportAlkalmazottakMunkaugyiAdatai([FromUri] AlkalmazottSearchModel model)
|
|
{
|
|
model.MunkaugyiAdatokKlebelsbergOrNSZFH = _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokKlebelsberg) || _featureContext.IsEnabled(Core.Constants.FeatureName.MunkaugyiAdatokNSZFH);
|
|
var stream = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottakMunkaugyiAdataiExcelExport(model.MunkaugyiAdatokKlebelsbergOrNSZFH, model.ConvertModelToCo(), _kozpontiKretaHelper, ClaimData.IsSelectedTanev21_22OrLater);
|
|
return new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = AlkalmazottResource.AlkalmazottakMunkaugyiAdataiExportFileName };
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult ExportAlkalmazottakSzemelyiAdatai([FromUri] AlkalmazottSearchModel model)
|
|
{
|
|
var stream = new AlkalmazottHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottakSzemelyiAdataiExcelExport(model.ConvertModelToCo());
|
|
return new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = AlkalmazottResource.AlkalmazottakSzemelyiAdataiExportFileName };
|
|
}
|
|
|
|
#endregion
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenVegzettsegWizard(int alkalmazottId)
|
|
{
|
|
var helper = new AlkalmazottHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
|
|
|
var kepesites = helper.GetAlkalmazottKKKepesite(alkalmazottId);
|
|
|
|
if (kepesites == null)
|
|
{
|
|
return PartialView("Wiz_Kepesites");
|
|
}
|
|
|
|
if (kepesites == (int)KKKepesitesTipusEnum.Pedagogus)
|
|
{
|
|
return OpenVegzettsegTipusWizard();
|
|
}
|
|
|
|
return PartialView("Wiz_NemRogzithetoVegzettseg");
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenVegzettsegTipusWizard()
|
|
{
|
|
return PartialView("Wiz_VegzettsegTipus");
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenTanarVegzettsegTipusWizard()
|
|
{
|
|
var model = new TanarVegzettsegWizardModel();
|
|
return PartialView("Wiz_TanarVegzettseg", model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenAMITanarVegzettsegTipusWizard()
|
|
{
|
|
var model = new AMITanarVegzettsegWizardModel();
|
|
return PartialView("Wiz_AMITanarVegzettseg", model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenTanitoVegzettsegTipusWizard()
|
|
{
|
|
var model = new TanitoVegzettsegWizardModel();
|
|
return PartialView("Wiz_TanitoVegzettseg", model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenGyogyPedagogusVegzettsegTipusWizard()
|
|
{
|
|
var model = new GyogyPedagogusVegzettsegWizardModel();
|
|
return PartialView("Wiz_GyogypedagogusVegzettseg", model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult VegzettsegDetailGrid(AlkalmazottInfoModel.KKVegzettsegMainModel parentModel)
|
|
{
|
|
var model = new VegzettsegDetailModel()
|
|
{
|
|
KepesitesTipus = parentModel.KepesitesTipusId,
|
|
EntityId = parentModel.EntityID,
|
|
AlkalmazottId = parentModel.AlkalmazottId
|
|
};
|
|
|
|
return PartialView("Modify_Wiz_DetailGrid_Vegzettsegek_Tab", model);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenModifyVegzettsegWizard(AlkalmazottInfoModel.KKVegzettsegMainModel parentModel)
|
|
{
|
|
var helper = new VegzettsegHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
if (parentModel.KepesitesTipusId == (int)KKKepesitesJellTipusEnum.Tanar)
|
|
{
|
|
var co = helper.GetTanarVegzettseg(parentModel.EntityID.Value);
|
|
var vegzettsegModel = new TanarVegzettsegWizardModel();
|
|
vegzettsegModel.FromCo(co);
|
|
|
|
var model = new PopUpModel(vegzettsegModel, "Wiz_TanarVegzettseg");
|
|
|
|
model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" });
|
|
model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegWizard.ModifyTanarVegzettseg" });
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
if (parentModel.KepesitesTipusId == (int)KKKepesitesJellTipusEnum.TanarAMI)
|
|
{
|
|
var co = helper.GetAmiTanarVegzettseg(parentModel.EntityID.Value);
|
|
var vegzettsegModel = new AMITanarVegzettsegWizardModel();
|
|
vegzettsegModel.FromCo(co);
|
|
|
|
var model = new PopUpModel(vegzettsegModel, "Wiz_AMITanarVegzettseg");
|
|
|
|
model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" });
|
|
model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegWizard.ModifyAmiTanarVegzettseg" });
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
if (parentModel.KepesitesTipusId == (int)KKKepesitesJellTipusEnum.Gyogypedagogus)
|
|
{
|
|
var co = helper.GetGyogypedagogusVegzettseg(parentModel.AlkalmazottId);
|
|
var vegzettsegModel = new GyogyPedagogusVegzettsegWizardModel();
|
|
vegzettsegModel.FromCo(co);
|
|
var model = new PopUpModel(vegzettsegModel, "Wiz_GyogypedagogusVegzettseg");
|
|
|
|
model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" });
|
|
model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegWizard.ModifyGyogypedVegzettseg" });
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
if (parentModel.KepesitesTipusId == (int)KKKepesitesJellTipusEnum.Tanito)
|
|
{
|
|
var co = helper.GetTanitoVegzettseg(parentModel.AlkalmazottId);
|
|
var vegzettsegModel = new TanitoVegzettsegWizardModel();
|
|
vegzettsegModel.FromCo(co);
|
|
var model = new PopUpModel(vegzettsegModel, "Wiz_TanitoVegzettseg");
|
|
|
|
model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" });
|
|
model.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegOk", Text = Resources.CommonResource.Mentes, EventName = "VegzettsegWizard.ModifyTanitoVegzettseg" });
|
|
|
|
return PartialView(Constants.General.PopupView, model);
|
|
}
|
|
|
|
var nemModModel = new PopUpModel(model: null, "Wiz_NemModosithatoVegzettseg");
|
|
nemModModel.Buttons.Add(new ModalButtonModel() { Name = "BtnVegzettsegCancel", Text = Resources.CommonResource.Megse, EventName = "VegzettsegWizard.ModifyVegzettsegCancel" });
|
|
return PartialView(Constants.General.PopupView, nemModModel);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult OpenFeladatellatasiHelyekPopUp()
|
|
{
|
|
var felhelyekDDL = new FeladatEllatasiHelyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeladatEllatasiHelyDDl(hasKovTanev: true);
|
|
var model = new FeladatellatasiHelyPopupModel
|
|
{
|
|
FeladatellatasiHelyList = felhelyekDDL.Select(x => new SelectListItem
|
|
{
|
|
Text = x.Value,
|
|
Value = x.Key,
|
|
}).ToList()
|
|
};
|
|
var popupModel = new PopUpModel(model, "FeladatellatasiHelyekPopup");
|
|
popupModel.Buttons.Add(new ModalButtonModel() { Name = "BtnFelhelyMentes", Text = CommonResource.Mentes, EventName = "AlkalmazottHelper.setFeladatellatasiHelyKovTanev" });
|
|
return PartialView(Constants.General.PopupView, popupModel);
|
|
}
|
|
|
|
[System.Web.Mvc.NonAction]
|
|
public ActionResult GetExportElerhetosegOsszesGrid(int id)
|
|
{
|
|
try
|
|
{
|
|
using (var workbook = new Workbook())
|
|
{
|
|
var helper = new TanarHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
var cimCoList = helper.GetTeacherAddressDataCoList(id);
|
|
|
|
var cimModelList = new List<AlkalmazottInfoModel.ElerhetosegCimModel>();
|
|
|
|
foreach (var co in cimCoList)
|
|
{
|
|
var gridModel = new AlkalmazottInfoModel.ElerhetosegCimModel(co);
|
|
cimModelList.Add(gridModel);
|
|
}
|
|
|
|
var telefonCoList = helper.GetTeacherPhonesCoList(id);
|
|
|
|
var telefonModelList = new List<AlkalmazottInfoModel.ElerhetosegTelefonModel>();
|
|
|
|
foreach (var co in telefonCoList)
|
|
{
|
|
var gridModel = new AlkalmazottInfoModel.ElerhetosegTelefonModel(co);
|
|
telefonModelList.Add(gridModel);
|
|
}
|
|
|
|
var emailCoList = helper.GetTeacherEmailsCoList(id);
|
|
|
|
var emailModelList = new List<AlkalmazottInfoModel.ElerhetosegEmailModel>();
|
|
|
|
foreach (var co in emailCoList)
|
|
{
|
|
var gridModel = new AlkalmazottInfoModel.ElerhetosegEmailModel(co);
|
|
emailModelList.Add(gridModel);
|
|
}
|
|
|
|
var cimSimpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<AlkalmazottInfoModel.ElerhetosegCimModel>(AlkalmazottInfoModel.ElerhetosegCimModel.ElerhetosegCimExportAttributeId);
|
|
var telefonSimpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<AlkalmazottInfoModel.ElerhetosegTelefonModel>(AlkalmazottInfoModel.ElerhetosegTelefonModel.ElerhetosegTelefonExportAttributeId);
|
|
var emailSimpleExportColumnCos = SimpleExportLogic.GetSimpleExportColumnCos<AlkalmazottInfoModel.ElerhetosegEmailModel>(AlkalmazottInfoModel.ElerhetosegEmailModel.ElerhetosegEmailExportAttributeId);
|
|
|
|
Worksheet worksheetCim = SimpleExportLogic.GetWorksheet(workbook, AdatszolgaltatasokResource.ElerhetosegCimExportSheetName, cimSimpleExportColumnCos, 0);
|
|
Worksheet worksheetTelefon = SimpleExportLogic.GetWorksheet(workbook, AdatszolgaltatasokResource.ElerhetosegTelefonExportSheetName, telefonSimpleExportColumnCos, 1);
|
|
Worksheet worksheetEmail = SimpleExportLogic.GetWorksheet(workbook, AdatszolgaltatasokResource.ElerhetosegEmailExportSheetName, emailSimpleExportColumnCos, 2);
|
|
|
|
worksheetCim.FillWithData(cimModelList, cimSimpleExportColumnCos, ClaimData.SelectedTanevID.Value);
|
|
worksheetTelefon.FillWithData(telefonModelList, telefonSimpleExportColumnCos, ClaimData.SelectedTanevID.Value);
|
|
worksheetEmail.FillWithData(emailModelList, emailSimpleExportColumnCos, ClaimData.SelectedTanevID.Value);
|
|
|
|
MemoryStream memoryStream = SimpleExportLogic.GetWorkbookMemoryStream(workbook);
|
|
|
|
memoryStream.Position = 0;
|
|
|
|
return new FileContentResult(memoryStream.ToArray(), MediaTypeNames.Application.Octet)
|
|
{
|
|
FileDownloadName = HttpUtility.UrlEncode($"{helper.GetTanarAdatok(id).NyomtatasiNev}_{AdatszolgaltatasokResource.ElerhetosegOsszesFileName}_{DateTime.Now:yyyy_MM_dd}.{Constants.ImportExport.FileFormatXlsx}", Encoding.UTF8),
|
|
};
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new StatusError(HttpStatusCode.BadRequest, ex.Message, ex);
|
|
}
|
|
}
|
|
}
|
|
}
|