295 lines
14 KiB
C#
295 lines
14 KiB
C#
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web.Http;
|
|
using System.Web.Mvc;
|
|
using Kreta.BusinessLogic.HelperClasses;
|
|
using Kreta.BusinessLogic.Helpers;
|
|
using Kreta.BusinessLogic.Helpers.SystemSettings;
|
|
using Kreta.BusinessLogic.Security;
|
|
using Kreta.Enums;
|
|
using Kreta.Enums.ManualEnums;
|
|
using Kreta.Framework;
|
|
using Kreta.Framework.Util;
|
|
using Kreta.Resources;
|
|
using Kreta.Web.Areas.Tantargy.Logic;
|
|
using Kreta.Web.Areas.Tantargy.Models;
|
|
using Kreta.Web.Helpers;
|
|
using Kreta.Web.Helpers.TabStrip;
|
|
using Kreta.Web.Models;
|
|
using Kreta.Web.Models.EditorTemplates;
|
|
using Kreta.Web.Security;
|
|
|
|
namespace Kreta.Web.Areas.Tantargy.Controllers
|
|
{
|
|
[MvcRoleClaimsAuthorize(true)]
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public class TantargyakController : Controller
|
|
{
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult Index(string filter)
|
|
{
|
|
TantargySearchModel model = TantargySearchModel.SetFilterTantargySearchModel(filter);
|
|
model.NemzetiDokumentumNyelvek = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
|
|
model.IsSzakkepzo = ClaimData.IsSzakkepzoIntezmeny;
|
|
|
|
return View("Index", model);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult ErrorIndex(bool? nincsTantargykategoria)
|
|
{
|
|
TantargySearchModel model = new TantargySearchModel();
|
|
|
|
if (nincsTantargykategoria.HasValue && nincsTantargykategoria.Value)
|
|
{
|
|
model.nincsTantargykategoria = nincsTantargykategoria;
|
|
}
|
|
|
|
return View("Index", model);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult OpenTantargyPropertiesTab(int tantargyID)
|
|
{
|
|
TantargyModel tmodel = new TantargyModel()
|
|
{
|
|
ID = tantargyID,
|
|
RadioButtonItems = GetMinositesRadioButtonItems()
|
|
};
|
|
tmodel.TabList = GetTabItems(tmodel);
|
|
PopUpModel pm = new PopUpModel(tmodel, "TantargyProperties_Info");
|
|
pm = pm.AddCancelBtn(pm, "TantargyHelper.propertiesCancel");
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public ActionResult OpenTantargyModifyAddPopup(int? tantargyID)
|
|
{
|
|
TantargyModel tmodel;
|
|
if (tantargyID.HasValue)
|
|
{
|
|
tmodel = GetTantargyBaseProperties(tantargyID.Value);
|
|
}
|
|
else
|
|
{
|
|
tmodel = new TantargyModel();
|
|
tmodel.SetDefaultsForNew();
|
|
}
|
|
|
|
tmodel.NemzetiDokumentumNyelvek = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
|
|
|
|
var tabModel = TantargyLogic.GetTabModel(tmodel);
|
|
|
|
PopUpModel pm = new PopUpModel(tabModel, "TantargyModifyAdd_Bevitel");
|
|
pm = pm.AddCancelBtn(pm, "TantargyHelper.modifyAddCancel");
|
|
pm = pm.AddBtn(pm, "saveTantargy", CommonResource.Mentes, "TantargyHelper.saveModifyAddTantargy");
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
public static List<TabStripItemModel> GetTantargyTobbesModTabs(TantargyModModel model)
|
|
{
|
|
List<TabStripItemModel> list = new List<TabStripItemModel>();
|
|
|
|
list.Add(new TabStripItemModel() { ItemId = "1", ItemName = TantargyResource.Alapadatok, Model = model, PartialViewName = "~/Areas/Tantargy/Views/Tantargyak/TantargyTobbesModify.cshtml" });
|
|
list[0].IsActive = true;
|
|
|
|
return list;
|
|
}
|
|
|
|
public ActionResult OpenModPopup(List<TantargyModModel> tantargyakList)
|
|
{
|
|
TantargyModModel tmodel = new TantargyModModel();
|
|
|
|
tmodel.TabList = GetTantargyTobbesModTabs(tmodel);
|
|
|
|
foreach (var item in tantargyakList)
|
|
{
|
|
tmodel.TantargyakIDArray += item.ID.ToString() + ",";
|
|
tmodel.TantargyakNevArray += item.TantargyNev.ToString() + ", ";
|
|
}
|
|
|
|
tmodel.TantargyakIDArray = tmodel.TantargyakIDArray.Remove(tmodel.TantargyakIDArray.Length - 1);
|
|
tmodel.TantargyakNevArray = tmodel.TantargyakNevArray.Remove(tmodel.TantargyakNevArray.Length - 2);
|
|
|
|
PopUpModel pm = new PopUpModel(tmodel, "TantargyModify_bevitel");
|
|
pm = pm.AddCancelBtn(pm, "TantargyHelper.modifyAddCancel");
|
|
pm = pm.AddBtn(pm, "saveTantargy", CommonResource.Mentes, "TantargyHelper.saveCsoportosModifyAddTantargy");
|
|
return PartialView(Constants.General.PopupView, pm);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult OpenTantargyakBaseProperties(int id)
|
|
{
|
|
TantargyModel tmodel = GetTantargyBaseProperties(id);
|
|
tmodel.NemzetiDokumentumNyelvek = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
|
|
|
|
return PartialView("TantargyBasicProperties_Tab", tmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult OpenTantargyakFoglalkozasai(int id)
|
|
{
|
|
TantargyModel tmodel = new TantargyModel()
|
|
{
|
|
ID = id
|
|
};
|
|
return PartialView("TantargyFoglalkozasai_Tab", tmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult OpenTantargyakOrarendiOrai(int id)
|
|
{
|
|
TantargyModel tmodel = new TantargyModel()
|
|
{
|
|
ID = id
|
|
};
|
|
return PartialView("TantargyOrarendiOrai_Tab", tmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult OpenTantargyakTanmenetei(int id)
|
|
{
|
|
TantargyModel tmodel = new TantargyModel()
|
|
{
|
|
ID = id
|
|
};
|
|
return PartialView("TantargyTanmenetei_Tab", tmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult OpenTantargyakMegtartottTanorai(int id)
|
|
{
|
|
TantargyModel tmodel = new TantargyModel()
|
|
{
|
|
ID = id
|
|
};
|
|
return PartialView("TantargyMegtartottTanorai_Tab", tmodel);
|
|
}
|
|
|
|
[MvcRolePackageAuthorize(TanevEnum.Mind, KretaClaimPackages.Adminisztrator.ClaimValue)]
|
|
public ActionResult OpenTantargyakErtekelesei(int id)
|
|
{
|
|
TantargyModel tmodel = new TantargyModel()
|
|
{
|
|
ID = id
|
|
};
|
|
return PartialView("TantargyErtekelesei_Tab", tmodel);
|
|
}
|
|
|
|
private List<TabStripItemModel> GetTabItems(TantargyModel tmodel)
|
|
{
|
|
var items = new List<TabStripItemModel>();
|
|
//Alapadatok
|
|
items.Add(new TabStripItemModel { ItemId = "1", ItemName = StringResourcesUtil.GetString(161), Area = "Tantargy", Controller = "Tantargyak", Action = "OpenTantargyakBaseProperties", RouteParameters = new Dictionary<string, string>() { { "Id", tmodel.ID.ToString() } } });
|
|
//Foglalkozasok
|
|
items.Add(new TabStripItemModel { ItemId = "2", ItemName = StringResourcesUtil.GetString(164), Area = "Tantargy", Controller = "Tantargyak", Action = "OpenTantargyakFoglalkozasai", RouteParameters = new Dictionary<string, string>() { { "Id", tmodel.ID.ToString() } } });
|
|
//Orarendi orak
|
|
items.Add(new TabStripItemModel { ItemId = "3", ItemName = StringResourcesUtil.GetString(165), Area = "Tantargy", Controller = "Tantargyak", Action = "OpenTantargyakOrarendiOrai", RouteParameters = new Dictionary<string, string>() { { "Id", tmodel.ID.ToString() } }, IsETTFDisabled = true });
|
|
//Tanmenetek
|
|
items.Add(new TabStripItemModel { ItemId = "4", ItemName = StringResourcesUtil.GetString(166), Area = "Tantargy", Controller = "Tantargyak", Action = "OpenTantargyakTanmenetei", RouteParameters = new Dictionary<string, string>() { { "Id", tmodel.ID.ToString() } }, IsETTFDisabled = true });
|
|
//Megtartott tanorak
|
|
items.Add(new TabStripItemModel { ItemId = "5", ItemName = StringResourcesUtil.GetString(167), Area = "Tantargy", Controller = "Tantargyak", Action = "OpenTantargyakMegtartottTanorai", RouteParameters = new Dictionary<string, string>() { { "Id", tmodel.ID.ToString() } }, IsETTFDisabled = true });
|
|
//Ertekeles
|
|
items.Add(new TabStripItemModel { ItemId = "6", ItemName = StringResourcesUtil.GetString(168), Area = "Tantargy", Controller = "Tantargyak", Action = "OpenTantargyakErtekelesei", RouteParameters = new Dictionary<string, string>() { { "Id", tmodel.ID.ToString() } }, IsETTFDisabled = true });
|
|
//Minositesek
|
|
//items.Add(new TabStripItemModel { ItemId = "7", ItemName = StringResourcesUtil.GetString(3233), Area = "Tantargy", Controller = "Tantargyak", Action = "OpenTantargyakMinositesei", RouteParameters = new Dictionary<string, string>() { { "Id", tmodel.ID.ToString() } }, IsETTFDisabled = true });
|
|
return items;
|
|
}
|
|
|
|
private List<SelectListItem> GetMinositesRadioButtonItems()
|
|
{
|
|
List<SelectListItem> list = new List<SelectListItem>();
|
|
list.Add(new SelectListItem() { Value = "0", Text = StringResourcesUtil.GetString(3231), Selected = true });
|
|
list.Add(new SelectListItem() { Value = "1", Text = StringResourcesUtil.GetString(30) });
|
|
return list;
|
|
}
|
|
|
|
private List<SelectListItem> GetTargyKategoriaList()
|
|
{
|
|
List<SelectListItem> list = new List<SelectListItem>();
|
|
var itemlist = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.TargyKategoriaTipus, ClaimData.SelectedTanevID.Value, true);
|
|
foreach (var item in itemlist)
|
|
{
|
|
SelectListItem sli = new SelectListItem() { Text = item.Value, Value = item.Key };
|
|
list.Add(sli);
|
|
}
|
|
return list;
|
|
}
|
|
|
|
private List<SelectListItem> GetFotargyakList(int tanevId, int id)
|
|
{
|
|
IDictionary<string, string> fotargyLista;
|
|
List<SelectListItem> list = new List<SelectListItem>();
|
|
var helper = new TantargyHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
|
|
|
fotargyLista = helper.GetFotargyak(kiveve: id).OrderBy(x => x.Value).ToDictionary(k => k.Key, v => v.Value);
|
|
|
|
foreach (var item in fotargyLista)
|
|
{
|
|
SelectListItem sli = new SelectListItem() { Text = item.Value, Value = item.Key };
|
|
list.Add(sli);
|
|
}
|
|
return list;
|
|
}
|
|
|
|
#region Export
|
|
|
|
public ActionResult ExportTantargyakMindenAdata([FromUri] TantargySearchModel data)
|
|
{
|
|
data.IsSzakkepzo = ClaimData.IsSzakkepzoIntezmeny;
|
|
|
|
return TantargyLogic.ExportTantargyakMindenAdata(data);
|
|
}
|
|
#endregion
|
|
|
|
private TantargyModel GetTantargyBaseProperties(int tantargyId)
|
|
{
|
|
var t = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
|
|
|
TantargyCO tantargy = t.GetTantargyById(tantargyId);
|
|
TantargyModel tmodel = new TantargyModel()
|
|
{
|
|
ID = tantargy.ID,
|
|
AltantargyNyomtatvanyban = tantargy.AltantargyNyomtatvanyban,
|
|
FoTargyID = tantargy.FoTargyID,
|
|
FoTargyNev = tantargy.FoTargyNev,
|
|
GyakorlatiTargy = tantargy.GyakorlatiTargy,
|
|
IsFoTargy = tantargy.isFoTargy,
|
|
NevNyomtatvanyban = tantargy.NevNyomtatvanyban,
|
|
TantargyNev = tantargy.TantargyNev,
|
|
TantargyRovidNev = tantargy.TantargyRovidNev,
|
|
TargyKategoria = tantargy.TargyKategoria,
|
|
TargyKategoriaNev = tantargy.TargyKategoriaNev,
|
|
ESLTargyKategoria = tantargy.ESLTantargykategoria,
|
|
ESLTargyKategoriaNev = tantargy.ESLTantargykategoriaNev,
|
|
Tanev = tantargy.Tanev,
|
|
TantargyAngolNev = tantargy.TantargyAngolNev,
|
|
TantargyNemetNev = tantargy.TantargyNemetNev,
|
|
TantargyHorvatNev = tantargy.TantargyHorvatNev,
|
|
TantargyRomanNev = tantargy.TantargyRomanNev,
|
|
TantargySzerbNev = tantargy.TantargySzerbNev,
|
|
Sorszam = tantargy.Sorszam,
|
|
Megjegyzes = tantargy.Megjegyzes,
|
|
Gyakorlatigenyesseg = tantargy.Gyakorlatigenyesseg,
|
|
IsAmiTargyMod = tantargy.IsAmiTargy,
|
|
IsKollegiumiTargy = tantargy.IsKollegiumiTargy,
|
|
IsEgymi = tantargy.IsEgymiTargy,
|
|
IsFelnottOktatas = tantargy.IsFelnottOktatasTargy,
|
|
IsNincsBeloleOraMod = tantargy.IsNincsBeloleOra,
|
|
IsTanulmanyiAtlagbaNemSzamit = tantargy.IsTanulmanyiAtlagbaNemSzamit,
|
|
IsOsztalynaplobanNemJelenikMeg = tantargy.IsOsztalynaplobanNemJelenikMeg,
|
|
IsOsztalyOrarendjebenMegjelenik = tantargy.IsOsztalyokOrarendjebenMegjelenik,
|
|
IsMszgTargy = tantargy.IsMszgTargy,
|
|
AmiKepzesiJellemzokModel = new AmiKepzesiJellemzokModel()
|
|
{
|
|
MufajTipusId = tantargy.MufajTipusId,
|
|
TanszakTipusId = tantargy.TanszakTipusId,
|
|
MuveszetiAgId = tantargy.MuveszetiAgId
|
|
}
|
|
};
|
|
|
|
tmodel.SetErtekelesKorlatozasIdList(tantargy);
|
|
|
|
return tmodel;
|
|
}
|
|
}
|
|
}
|