This commit is contained in:
skidoodle 2024-03-13 00:33:46 +01:00
commit e124a47765
19374 changed files with 9806149 additions and 0 deletions

View file

@ -0,0 +1,41 @@
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.Core.Exceptions;
using Kreta.Web.Areas.TanuloErtekeles.ApiControllers;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
public class BaseElektronikusUzenetKeresoController : Controller
{
#region Properties
public static string GridName => "ElektronikusUzenetKeresoGrid";
public static string SearchFormName => "ElektronikusUzenetKeresoSearchForm";
public static string InfoPopUpId => "ElektronikusUzenetKeresoInfoPopUpWindow";
#endregion Properties
public ActionResult OpenElektronikusUzenetKeresoInfoPopUp(int feljegyzesId, int tanuloId, string osztalyNev)
{
try
{
var co = new FeljegyzesekHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeljegyzesById(feljegyzesId, tanuloId, osztalyNev: osztalyNev);
var model = BaseFeljegyzesekApiController.ConvertFeljegyzesCoToModel(co);
var popUpModel = new PopUpModel(model, "ElektronikusUzenetKereso_Info_PopUp");
popUpModel = popUpModel.AddCancelBtn(popUpModel, "FeljegyzesKeresoHelper.elektronikusUzenetKeresoInfoPopUpCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
}
}

View file

@ -0,0 +1,41 @@
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.Core.Exceptions;
using Kreta.Web.Areas.TanuloErtekeles.ApiControllers;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
public class BaseFeljegyzesKeresoController : Controller
{
#region Properties
public static string GridName => "FeljegyzesKeresoGrid";
public static string SearchFormName => "FeljegyzesKeresoSearchForm";
public static string InfoPopUpId => "FeljegyzesKeresoInfoPopUpWindow";
#endregion Properties
public ActionResult OpenFeljegyzesKeresoInfoPopUp(int feljegyzesId, int tanuloId, int? osztalyId)
{
try
{
var co = new FeljegyzesekHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeljegyzesById(feljegyzesId, tanuloId, osztalyId);
var model = BaseFeljegyzesekApiController.ConvertFeljegyzesCoToModel(co);
var popUpModel = new PopUpModel(model, "FeljegyzesKereso_Info_PopUp");
popUpModel = popUpModel.AddCancelBtn(popUpModel, "FeljegyzesKeresoHelper.feljegyzesKeresoInfoPopUpCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
}
}

View file

@ -0,0 +1,94 @@
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Classes.ComboBox;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Framework.Caching;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Adminisztracio.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
public abstract class BaseTanuloErtekelesController : Controller
{
#region Properties
public static string MondatbankItemSelectPopupName => "TanuloErtekelesMondatbankItemSelectPopup";
public static string MondatbankItemSelectFormName => "TanuloErtekelesMondatbankItemSelectForm";
public static string GridName => "TanuloErtekelesGrid";
public static string FormName => "TanuloErtekelesForm";
public static string DetailGridName => "TanuloErtekelesDetailGrid";
#endregion Properties
public List<SelectListItem> GetOsztalyzatList(bool osztalyzatSzammal = false)
{
List<DictionaryItem> osztalyzatList = ((int)GeneratedAdatszotarTipusEnum.OsztalyzatTipus).GetItemsByType(ClaimData.AktivTanevID.Value);
List<SelectListItem> result = osztalyzatList.Select(x => new SelectListItem
{
Value = x.Id.ToString(),
Text = osztalyzatSzammal ? x.Value.ToString() : x.Name
}).ToList();
return result.OrderBy(x => x.Text).ToList();
}
protected static IEnumerable<ExtraDataComboBoxListItem> GetOsztalyCsoportList(int? feladatKategoriaId = null)
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
return osztalyCsoportHelper.GetOsztalyCsoportForDropDownList(feladatKategoriaId);
}
protected IEnumerable<ExtraDataComboBoxListItem> GetOsztalyCsoportListByFelhasznaloId()
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
return osztalyCsoportHelper.GetOsztalyCsoportByFelhasznaloIdForDropDownList();
}
protected static List<SelectListItem> GetMondatbankItemSelectList(List<DataRow> tanuloErtekelesMondatbankItemRows)
{
var tanuloErtekelesMondatbankItemSelectList = new Dictionary<string, string>();
foreach (DataRow row in tanuloErtekelesMondatbankItemRows)
{
string id = SDAConvert.ToString(row["MondatbankSelectPopupId"]);
string rovidNevText = SDAConvert.ToString(row["MondatbankSelectPopupRovidNev"]);
string rovidNevShowText = string.IsNullOrWhiteSpace(rovidNevText) ? TanuloErtekelesResource.TanuloErtekelesMondatbankNa : rovidNevText;
string szovegText = RichTextLogic.CutHtmlTagsAndDecodeAndBR2Space(SDAConvert.ToString(row["MondatbankSelectPopupSzoveg"]).ReplaceMultipleSpacesAndTrim());
tanuloErtekelesMondatbankItemSelectList.Add(id, $"{rovidNevShowText} - {(szovegText.Length <= 100 ? szovegText : szovegText.Substring(0, 97) + "...")}");
}
List<SelectListItem> result = tanuloErtekelesMondatbankItemSelectList.ToSelectListItemList();
return result;
}
protected static List<TanuloErtekelesMondatbankItemModel> GetMondatbankItemList(List<DataRow> tanuloErtekelesMondatbankItemRows)
{
var tanuloErtekelesMondatbankItemList = new List<TanuloErtekelesMondatbankItemModel>();
foreach (DataRow row in tanuloErtekelesMondatbankItemRows)
{
tanuloErtekelesMondatbankItemList.Add(new TanuloErtekelesMondatbankItemModel(false)
{
ID = SDAConvert.ToInt32(row["MondatbankSelectPopupId"]),
RovidNev = SDAConvert.ToString(row["MondatbankSelectPopupRovidNev"]),
Szoveg = SDAConvert.ToString(row["MondatbankSelectPopupSzoveg"]),
SzovegNemet = SDAConvert.ToString(row["MondatbankSelectPopupSzovegNemet"]),
SzovegHorvat = SDAConvert.ToString(row["MondatbankSelectPopupSzovegHorvat"]),
SzovegRoman = SDAConvert.ToString(row["MondatbankSelectPopupSzovegRoman"]),
SzovegSzerb = SDAConvert.ToString(row["MondatbankSelectPopupSzovegSzerb"])
});
}
return tanuloErtekelesMondatbankItemList;
}
}
}

View file

@ -0,0 +1,202 @@
using System.Net;
using System.Web.Http;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Logic.TanuloErtekeles;
using Kreta.Core;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Framework;
using Kreta.KretaServer.Exceptions;
using Kreta.Resources;
using Kreta.Web.Areas.TanuloErtekeles.Logic;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
public class BaseTanuloErtekelesKeresoController : Controller
{
#region Properties
public static string GridName => "TanuloErtekelesKeresoGrid";
public static string SearchFormName => "TanuloErtekelesKeresoSearchForm";
public static string InfoPopUpId => "TanuloErtekelesKeresoInfoPopUpWindow";
#endregion Properties
public ActionResult OpenTanuloErtekelesKeresoInfoPopUp(int id)
{
try
{
var co = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloErtekelesCoById(id);
var model = new TanuloErtekelesKeresoInfoModel
{
ID = co.Id.ToString(),
TanuloNev = co.TanuloNyomtatasiNev,
OsztalyCsoportNev = co.OsztalyCsoportNev,
TantargyNev = co.TantargyNev,
ErtekeloNyomtatasiNev = co.ErtekeloNyomtatasiNev,
TanuloErtekelesText = GetTanuloErtekelesText(co, ClaimData.SelectedTanevID.Value),
TipusNev = co.TipusId.GetDisplayName<ErtekelesTipusEnum>(ClaimData.SelectedTanevID.Value),
ErtekelesModNev = co.ErtekelesModId.GetDisplayName<ErtekelesModEnum>(ClaimData.SelectedTanevID.Value),
Datum = co.Datum.ToShortDateString(),
RogzitesDatum = co.RogzitesDatum.ToShortDateString(),
ErtekelesTema = co.ErtekelesTema
};
var popUpModel = new PopUpModel(model, "TanuloErtekelesKereso_Info_PopUp");
popUpModel = popUpModel.AddCancelBtn(popUpModel, "TanuloErtekelesKeresoHelper.tanuloErtekelesKeresoInfoPopUpCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
public static string GetTanuloErtekelesText(TanuloErtekelesCo co, int tanevId)
{
string tanuloErtekelesText;
if (!co.IsMagatartasSzorgalom)
{
tanuloErtekelesText = GetErtekelesText(co, tanevId);
}
else
{
var magatartasText = GetMagatartasText(co, tanevId);
var szorgalomText = GetSzorgalomText(co, tanevId);
tanuloErtekelesText = string.Format(TanuloErtekelesResource.MagatartasSzorgalomText, magatartasText, szorgalomText);
}
return tanuloErtekelesText;
}
private static string GetErtekelesText(TanuloErtekelesCo co, int tanevId)
{
string ertekelesText;
if (co.ErtekelesOsztalyzatId.IsEntityId())
{
ertekelesText = co.TargykategoriaId != (int)TargyKategoriaTipusEnum.Szorgalom
? TanuloErtekelesLogicWeb.GetOsztalyzatText(co.ErtekelesOsztalyzatId, tanevId)
: TanuloErtekelesLogicWeb.GetOsztalyzatTextSzorgalom(co.ErtekelesOsztalyzatId, tanevId);
}
else if (!string.IsNullOrWhiteSpace(co.ErtekelesSzovegFormazott))
{
ertekelesText = co.ErtekelesSzovegFormazott;
}
else if (co.ErtekelesSzazalek.HasValue)
{
ertekelesText = co.ErtekelesSzazalek + "%";
}
else
{
var ex = new KretaException(ErrorResource.HibaTortentAMuveletKozben);
SDAServer.Instance.Logger.ExceptionThrown(ex);
throw ex;
}
return ertekelesText;
}
private static string GetMagatartasText(TanuloErtekelesCo co, int tanevId)
{
var magatartasText = string.Empty;
if (co.MagatartasOsztalyzatId.IsEntityId() || co.SzorgalomOsztalyzatId.IsEntityId())
{
if (co.MagatartasOsztalyzatId.IsEntityId())
{
magatartasText = TanuloErtekelesLogicWeb.GetOsztalyzatText(co.MagatartasOsztalyzatId, tanevId);
}
}
else if (!string.IsNullOrWhiteSpace(co.MagatartasSzoveg) || !string.IsNullOrWhiteSpace(co.SzorgalomSzoveg))
{
magatartasText = !string.IsNullOrWhiteSpace(co.MagatartasSzovegFormazott) ?
co.MagatartasSzovegFormazott :
co.MagatartasSzoveg;
}
else if (co.MagatartasErtekId.IsEntityId() || co.SzorgalomErtekId.IsEntityId())
{
if (co.MagatartasErtekId.IsEntityId())
{
magatartasText = TanuloErtekelesLogicWeb.GetMagatartasErtek(co.MagatartasErtekId, tanevId);
}
}
else
{
var ex = new KretaException(ErrorResource.HibaTortentAMuveletKozben);
SDAServer.Instance.Logger.ExceptionThrown(ex);
throw ex;
}
return magatartasText;
}
private static string GetSzorgalomText(TanuloErtekelesCo co, int tanevId)
{
var szorgalomText = string.Empty;
if (co.MagatartasOsztalyzatId.IsEntityId() || co.SzorgalomOsztalyzatId.IsEntityId())
{
if (co.SzorgalomOsztalyzatId.IsEntityId())
{
szorgalomText = TanuloErtekelesLogicWeb.GetOsztalyzatText(co.SzorgalomOsztalyzatId, tanevId);
}
}
else if (!string.IsNullOrWhiteSpace(co.MagatartasSzoveg) || !string.IsNullOrWhiteSpace(co.SzorgalomSzoveg))
{
szorgalomText = !string.IsNullOrWhiteSpace(co.SzorgalomSzovegFormazott) ?
co.SzorgalomSzovegFormazott :
co.SzorgalomSzoveg;
}
else if (co.MagatartasErtekId.IsEntityId() || co.SzorgalomErtekId.IsEntityId())
{
if (co.SzorgalomErtekId.IsEntityId())
{
szorgalomText = TanuloErtekelesLogicWeb.GetSzorgalomErtek(co.SzorgalomErtekId, tanevId);
}
}
else
{
var ex = new KretaException(ErrorResource.HibaTortentAMuveletKozben);
SDAServer.Instance.Logger.ExceptionThrown(ex);
throw ex;
}
return szorgalomText;
}
#region Export
public ActionResult ExportTanulokEvkoziJegyei([FromUri] TanuloErtekelesListModel data)
{
var result = GetExport((int)ErtekelesTipusEnum.evkozi_jegy_ertekeles, TanuloErtekelesResource.TanulokEvkoziJegyeiExportFileName, data);
return result;
}
public ActionResult ExportTanulokFeleviJegyei([FromUri] TanuloErtekelesListModel data)
{
var result = GetExport((int)ErtekelesTipusEnum.felevi_jegy_ertekeles, TanuloErtekelesResource.TanulokFeleviJegyeiExportFileName, data);
return result;
}
public ActionResult ExportTanulokEvVegiJegyei([FromUri] TanuloErtekelesListModel data)
{
var result = GetExport((int)ErtekelesTipusEnum.evvegi_jegy_ertekeles, TanuloErtekelesResource.TanulokEvVegiJegyeiExportFileName, data);
return result;
}
private static ActionResult GetExport(int tipusId, string fileDownloadName, TanuloErtekelesListModel model)
{
return TanuloErtekelesWebLogic.GetExport(tipusId, fileDownloadName, model);
}
#endregion Export
}
}

View file

@ -0,0 +1,29 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue)]
public class DolgozatokController : Controller
{
// GET: TanuloErtekeles/Dolgozatok
public ActionResult Index()
{
return View();
}
public ActionResult IndexAtlag()
{
var model = new DolgozatokAtlagaSearchModel();
return View("Index", model);
}
public ActionResult DolgozatokReszletekGrid(DolgozatokAtlagaGridModel model)
{
return PartialView("DolgozatDetailGrid", model);
}
}
}

View file

@ -0,0 +1,51 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue, KretaClaimPackages.IsDefaultAdminUser.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
public class DualisElektronikusUzenetKeresoController : BaseElektronikusUzenetKeresoController
{
private IKretaAuthorization Authorization { get; }
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
public DualisElektronikusUzenetKeresoController(IKretaAuthorization authorization)
{
Authorization = authorization;
}
public ActionResult Index()
{
if (!Authorization.IsValidDualisFeljegyzesek())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = new FeljegyzesKeresoModel(Constants.Controllers.DualisElektronikusUzenetKereso, Constants.ApiControllers.DualisFeljegyzesekApi)
{
FeladatEllatasiHelyId = ClaimData.FelhelySzuro
};
if (IsDualisKepzesEnabled)
{
model.SzervezetTipusEnum = SzervezetTipusEnum.Dualis;
}
if (ClaimData.FelhasznaloSzerepkor != SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("~/Areas/TanuloErtekeles/Views/ElektronikusUzenetKereso/Index.cshtml", model);
}
}
}

View file

@ -0,0 +1,475 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.BusinessLogic.Utils;
using Kreta.Core;
using Kreta.Core.ConnectionType;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Enums.ManualEnums.SystemSettings;
using Kreta.Framework.Util;
using Kreta.KretaServer.SystemSettings;
using Kreta.Resources;
using Kreta.Web.Areas.Adminisztracio.Models;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Classes;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
using Kreta.Web.Utils;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Naplo.ClaimValue, KretaClaimPackages.IsDualisKepzohelyiOktato.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
public class DualisErtekelesController : BaseTanuloErtekelesController
{
#region Properties
public static string StartPopupFormName => "ErtekelesStartPopupForm";
public static string StartPopupId => "ErtekelesStartPopupWindow";
public static string EditPopupFormName => "ErtekelesEditPopupForm";
public static string EditPopupId => "ErtekelesEditPopupWindow";
public static string FotargyAltargyGridName => "FotargyAltargyGrid";
#endregion Properties
private IKretaAuthorization Authorization { get; }
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
public DualisErtekelesController(IKretaAuthorization authorization)
{
Authorization = authorization;
}
public ActionResult IndexEvkozi()
{
if (!Authorization.IsValidDualisOktato())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
ErtekelesListModel model = GetErtekelesListModel((int)ErtekelesTipusEnum.evkozi_jegy_ertekeles);
model.ErtekelesModId = (int)ErtekelesModEnum.gyakorlati_feladat;
return View("~/Areas/TanuloErtekeles/Views/Ertekeles/Index.cshtml", model);
}
public ActionResult ErtekelesGridDetail(ErtekelesDetailModel model)
{
model.NamePrefix = "Ertekeles";
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
bool hasFotargyAltargy = helper.HasTantargyFotargyAltargy(model.TantargyId);
model.HasFotargyAltargy = hasFotargyAltargy;
return PartialView("~/Areas/TanuloErtekeles/Views/Ertekeles/GridDetail.cshtml", model);
}
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
public ActionResult NaplozasErtekelesGridDetail(ErtekelesDetailModel model)
{
model.NamePrefix = "NaplozasErtekeles";
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
bool hasFotargyAltargy = helper.HasTantargyFotargyAltargy(model.TantargyId);
model.HasFotargyAltargy = hasFotargyAltargy;
return PartialView("GridDetail", model);
}
internal ErtekelesListModel NaplozasPartialViewModel()
{
return GetErtekelesListModel((int)ErtekelesTipusEnum.evkozi_jegy_ertekeles);
}
public ActionResult OpenStartPopup(int? tipusId)
{
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSet ertekelesFoglalkozasData = helper.GetErtekelesFoglalkozasData(IsDualisKepzesEnabled);
DataSet ertekelesFotargyiFoglalkozasData = helper.GetErtekelesFotargyiFoglalkozasData();
var foglalkozasList = GetFoglalkozasList(ertekelesFoglalkozasData);
var fotargyiFoglalkozasList = GetFoglalkozasList(ertekelesFotargyiFoglalkozasData);
var ertekelesFoglalkozasItemList = GetErtekelesFoglalkozasList(ertekelesFoglalkozasData);
var ertekelesFotargyiFoglalkozasItemList = GetErtekelesFoglalkozasList(ertekelesFotargyiFoglalkozasData);
var keresoAdatTipus = GetKeresoAdatTipus();
var model = new ErtekelesStartPopupModel
{
ErtekelesKeresoAdatTipus = keresoAdatTipus,
ErtekelesKeresoSzuro = (int)ErtekelesKeresoSzuroEnum.Ttf,
TipusId = (int)ErtekelesTipusEnum.evkozi_jegy_ertekeles,
ErtekelesKeresoSzuroList = GetErtekelesKeresoSzuroList(keresoAdatTipus, ertekelesFotargyiFoglalkozasItemList.Any()),
TipusList = GetTipusList(),
FoglalkozasList = foglalkozasList,
ErtekelesFoglalkozasItemModelList = ertekelesFoglalkozasItemList,
FotargyiFoglalkozasList = fotargyiFoglalkozasList,
ErtekelesFotargyiFoglalkozasItemModelList = ertekelesFotargyiFoglalkozasItemList,
OsztalyCsoportList = GetOsztalyCsoportList(),
OsztalyCsoportListByFelhasznaloId = GetOsztalyCsoportListByFelhasznaloId(),
TantargyList = GetTantargyList(),
IsFromSzervezet = IsDualisKepzesEnabled
};
return PartialView("~/Areas/TanuloErtekeles/Views/Ertekeles/Start_Popup.cshtml", model);
}
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
public ActionResult OpenEditPopup(int id)
{
if (!Authorization.IsValidErtekeles(id))
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.NincsJogaAzOldalMegtekintesehez);
}
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var helper = new TanuloErtekelesHelper(connectionType);
TanuloErtekelesCo tanuloErtekelesCo = helper.GetTanuloErtekelesCoById(id);
var naplozarasDatum = new OrarendHelper(connectionType).GetNaplozarasDate(startDate: null);
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var ertekelesEditModel = new ErtekelesEditModel
{
IdEdit = tanuloErtekelesCo.Id.Value,
TanuloIdEdit = tanuloErtekelesCo.TanuloId,
DatumMinValueEdit = naplozarasDatum,
OsztalyCsoportIdEdit = tanuloErtekelesCo.OsztalyCsoportId,
ErtekeloNyomtatasiNevEdit = tanuloErtekelesCo.ErtekeloNyomtatasiNev,
DatumEdit = tanuloErtekelesCo.Datum,
TipusIdEdit = tanuloErtekelesCo.TipusId,
TipusList = GetTipusList(),
OsztalyzatList = GetOsztalyzatList(true),
TantargyIdEdit = tanuloErtekelesCo.TantargyId,
ErtekelesModIdEdit = tanuloErtekelesCo.ErtekelesModId,
ErtekelesTemaEdit = tanuloErtekelesCo.ErtekelesTema,
ErtekelesTemaNemetEdit = tanuloErtekelesCo.ErtekelesTemaNemet,
ErtekelesTemaHorvatEdit = tanuloErtekelesCo.ErtekelesTemaHorvat,
ErtekelesTemaRomanEdit = tanuloErtekelesCo.ErtekelesTemaRoman,
ErtekelesTemaSzerbEdit = tanuloErtekelesCo.ErtekelesTemaSzerb,
ErtekelesOsztalyzatIdEdit = tanuloErtekelesCo.ErtekelesOsztalyzatId,
ErtekelesSzovegEdit = tanuloErtekelesCo.ErtekelesSzovegFormazott,
ErtekelesSzovegNemetEdit = tanuloErtekelesCo.ErtekelesSzovegFormazottNemet,
ErtekelesSzovegHorvatEdit = tanuloErtekelesCo.ErtekelesSzovegFormazottHorvat,
ErtekelesSzovegRomanEdit = tanuloErtekelesCo.ErtekelesSzovegFormazottRoman,
ErtekelesSzovegSzerbEdit = tanuloErtekelesCo.ErtekelesSzovegFormazottSzerb,
ErtekelesSzovegRovidNevEdit = tanuloErtekelesCo.ErtekelesSzovegRovidNev,
ErtekelesSzazalekEdit = tanuloErtekelesCo.ErtekelesSzazalek,
ErtekelesModList = GetErtekelesModList(),
IsFromSzervezet = IsDualisKepzesEnabled,
NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek)
};
var popUpModel = new PopUpModel(ertekelesEditModel, "~/Areas/TanuloErtekeles/Views/Ertekeles/Edit_Popup.cshtml");
popUpModel.AddBtn(popUpModel, "ErtekelesPopupCancelButton", CommonResource.Megse, "ErtekelesHelper.editCancel", "BtnCancel");
popUpModel.AddBtn(popUpModel, "ErtekelesPopupSaveButton", CommonResource.Mentes, "ErtekelesHelper.editSave", "BtnOk");
popUpModel.AddBtn(popUpModel, "ErtekelesPopupDeleteButton", CommonResource.Torles, "ErtekelesHelper.editDeleteConfirmWindow", "BtnDelete");
return PartialView(Constants.General.PopupView, popUpModel);
}
public ActionResult OpenMondatbankSelectPopup(TanuloErtekelesMondatbankItemSelectModel model)
{
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
model.NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
int? evfolyamTipusId = null;
if (model.MondatbankSelectPopupOsztalyCsoportId.IsEntityId())
{
evfolyamTipusId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportEvfolyamTipusId(model.MondatbankSelectPopupOsztalyCsoportId.Value);
}
var helper = new TanuloErtekelesMondatbankHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = new GridParameters
{
OrderBy = "RovidNev ASC"
}
};
DataSet dataSet = helper.GetMondatbankSelectListData(model.MondatbankSelectPopupTanuloErtekelesTipusId, model.MondatbankSelectPopupTipusId, model.MondatbankSelectPopupTantargyId, evfolyamTipusId);
List<DataRow> mondatbankItemRows = dataSet.Tables[0].Rows.Cast<DataRow>().ToList();
model.MondatbankItemSelectList = GetMondatbankItemSelectList(mondatbankItemRows);
model.MondatbankItemList = GetMondatbankItemList(mondatbankItemRows);
var popUpModel = new PopUpModel(model, "MondatbankItem_Select_Popup");
popUpModel.AddBtn(popUpModel, "ErtekelesMondatbankSelectPopupCancelButton", CommonResource.Megse, "ErtekelesHelper.mondatbankSelectPopupCancel", "BtnCancel");
popUpModel.AddBtn(popUpModel, "ErtekelesMondatbankSelectPopupSelectButton", CommonResource.Kivalasztas, "ErtekelesHelper.mondatbankSelectPopupSelect", "BtnOk");
return PartialView(Constants.General.PopupView, popUpModel);
}
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
public string GetAtlag(int osztalyCsoportId, int tantargyId, DateTime? datum)
{
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var result = helper.GetAtlag(osztalyCsoportId, tantargyId, ProfileUtils.AtlagMegjelenitesTipusa, ProfileUtils.AtlagbaBeleszamitoOsztalyTipusa, datum);
return result;
}
private ErtekelesListModel GetErtekelesListModel(int? tipusId = null)
{
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var systemSettingsHelper = new SystemSettingsHelper(connectionType);
List<int> ertekeleseknelMegjelenoSpecialisGombokLathatosagaList = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Ertekeleseknel_Megjeleno_Specialis_Gombok_Lathatosaga);
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
List<ErtekelesFoglalkozasItemModel> ertekelesFoglalkozasItemList = GetErtekelesFoglalkozasList(helper.GetErtekelesFoglalkozasData(IsDualisKepzesEnabled));
List<ErtekelesFoglalkozasItemModel> ertekelesFotargyiFoglalkozasItemList = GetErtekelesFoglalkozasList(helper.GetErtekelesFotargyiFoglalkozasData());
bool isJegyekAtlagaMegjelenik = SystemSettingsManager.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Ertekelesnel_a_naplojegyek_atlaga_megjelenik, ClaimData.IntezmenyAzonosito, ClaimData.SelectedTanevID.Value);
var ertekelesZarasDatuma = new OrarendHelper(connectionType).GetErtekelesZarasDatuma();
var lezartOsztalyokEsBontottCsoportjaik = new NaplozarasLogic(connectionType).GetLezartOsztalyokEsBontottCsoportjaik();
var model = new ErtekelesListModel
{
NamePrefix = "Ertekeles",
TipusId = tipusId,
Datum = DateTime.Today,
DatumMinValue = ertekelesZarasDatuma,
OsztalyCsoportId = null,
OsztalyzatList = GetOsztalyzatWithSpecialisList(ertekeleseknelMegjelenoSpecialisGombokLathatosagaList),
MentesitettOsztalyzatList = GetMentesitettOsztalyzatWithSpecialisList(ertekeleseknelMegjelenoSpecialisGombokLathatosagaList),
TipusList = GetTipusList(),
OsztalyCsoportList = GetOsztalyCsoportList(),
OsztalyCsoportListByFelhasznaloId = GetOsztalyCsoportListByFelhasznaloId(),
IsNaploErtekeles = false,
ErtekelesModId = null,
ErtekelesTema = null,
ErtekelesTemaText = null,
TemaList = new List<SelectListItem>(),
IsJegyekAtlagaMegjelenik = isJegyekAtlagaMegjelenik,
FoglalkozasId = null,
TantargyId = null,
ErtekelesKeresoAdatTipus = GetKeresoAdatTipus(),
ErtekelesModList = GetErtekelesModList(),
ErtekelesFoglalkozasItemModelList = ertekelesFoglalkozasItemList,
ErtekelesFotargyiFoglalkozasItemModelList = ertekelesFotargyiFoglalkozasItemList,
EgyszerAdhatoErtekelesTipusIds = EnumExtensions.GetErtekelesTipusDictionaryItems(ClaimData.SelectedTanevID.Value, true).Select(x => x.Id).ToList(),
NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek),
LezartOsztalyCsoportok = lezartOsztalyokEsBontottCsoportjaik,
ControllerName = Constants.Controllers.DualisErtekeles,
ApiControllerName = Constants.ApiControllers.DualisErtekelesApi
};
if (IsDualisKepzesEnabled)
{
model.SzervezetTipusEnum = SzervezetTipusEnum.Dualis;
}
return model;
}
private static int GetKeresoAdatTipus()
{
int ertekelesKeresoAdatTipus;
if (ClaimData.IsSzuperOsztalyfonok)
{
ertekelesKeresoAdatTipus = (int)SystemSettingsErtekelesKeresesSzuroEnum.Mindenki;
}
else
{
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
ertekelesKeresoAdatTipus = (int)systemSettingsHelper.GetSystemSettingValue<SystemSettingsErtekelesKeresesSzuroEnum>(RendszerBeallitasTipusEnum.Ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan);
}
return ertekelesKeresoAdatTipus;
}
private static List<SelectListItem> GetFoglalkozasList(DataSet ertekelesFogalkozasData)
{
var result = new List<SelectListItem>();
foreach (DataRow row in ertekelesFogalkozasData.Tables[0].Rows)
{
result.Add(new SelectListItem
{
Value = SDAConvert.ToInt32(row["ID"]).ToString(),
Text = SDAConvert.ToString(row["Nev"])
});
}
return result;
}
private static List<ErtekelesFoglalkozasItemModel> GetErtekelesFoglalkozasList(DataSet dataSet)
{
var itemList = new List<ErtekelesFoglalkozasItemModel>();
foreach (DataRow row in dataSet.Tables[0].Rows)
{
itemList.Add(new ErtekelesFoglalkozasItemModel
{
FoglalkozasId = SDAConvert.ToNullableInt32(row["ID"]),
OsztalyCsoportId = SDAConvert.ToNullableInt32(row["OsztalyCsoportId"]),
TantargyId = SDAConvert.ToNullableInt32(row["TantargyId"])
});
}
return itemList;
}
private List<SelectListItem> GetErtekelesKeresoSzuroList(int ertekelesKeresoAdatTipus, bool showFotargyi)
{
var removeTipusList = new List<string>();
if (ertekelesKeresoAdatTipus == (int)SystemSettingsErtekelesKeresesSzuroEnum.Mindenki && ClaimData.IsOnlyTanar)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Osztalyfonok).ToString());
}
else if (ertekelesKeresoAdatTipus == (int)SystemSettingsErtekelesKeresesSzuroEnum.Osztalyfonok)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Mindenki).ToString());
if (ClaimData.IsOnlyTanar)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Osztalyfonok).ToString());
}
}
else if (ertekelesKeresoAdatTipus == (int)SystemSettingsErtekelesKeresesSzuroEnum.TTF)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Mindenki).ToString());
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Osztalyfonok).ToString());
}
if (!showFotargyi)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Fotargyi).ToString());
}
var result = FrameworkEnumExtensions.EnumToListManual<ErtekelesKeresoSzuroEnum>().ToSelectListItemList(removeTipusList);
return result;
}
private List<SelectListItem> GetTipusList()
{
return ((int)GeneratedAdatszotarTipusEnum.ErtekelesTipus).GetItemsByType(ClaimData.SelectedTanevID.Value, true).ToSelectItemList();
}
private List<SelectListItem> GetErtekelesModList()
{
return ((int)GeneratedAdatszotarTipusEnum.ErtekelesMod).GetItemsByType(ClaimData.SelectedTanevID.Value, true).ToSelectItemList();
}
private static List<SelectListItem> GetTantargyList()
{
List<SelectListItem> selectListItemList = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTantargyakForComboBox();
return selectListItemList.OrderBy(x => x.Text).ToList();
}
private List<ExtendedSelectListItem> GetOsztalyzatWithSpecialisList(List<int> ertekeleseknelMegjelenoSpecialisGombokLathatosagaList)
{
List<SelectListItem> selectListItemList = GetOsztalyzatList(true);
List<ExtendedSelectListItem> extendedSelectListItemList = selectListItemList.Select(x => new ExtendedSelectListItem(x)
{
Tooltip = int.Parse(x.Value).GetDisplayName<OsztalyzatTipusEnum>(ClaimData.SelectedTanevID.Value)
}).ToList();
var nemIrtValue = (int)SpecialisErtekelesOsztalyzatEnum.NemIrt;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(nemIrtValue))
{
extendedSelectListItemList.Add(new ExtendedSelectListItem
{
Value = nemIrtValue.ToString(),
Text = TanuloErtekelesResource.NemIrtRovidNev,
Tooltip = TanuloErtekelesResource.NemIrt
});
}
var dicseretValue = (int)SpecialisErtekelesOsztalyzatEnum.Dicseret;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(dicseretValue))
{
extendedSelectListItemList.Add(new ExtendedSelectListItem
{
Value = dicseretValue.ToString(),
Text = TanuloErtekelesResource.DicseretRovidNev,
Tooltip = TanuloErtekelesResource.Dicseret
});
}
var kitunoValue = (int)SpecialisErtekelesOsztalyzatEnum.Kituno;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(kitunoValue))
{
extendedSelectListItemList.Add(new ExtendedSelectListItem
{
Value = kitunoValue.ToString(),
Text = TanuloErtekelesResource.KitunoRovidNev,
Tooltip = TanuloErtekelesResource.Kituno
});
}
var mentesitveValue = (int)SpecialisErtekelesOsztalyzatEnum.Mentesitve;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(mentesitveValue))
{
extendedSelectListItemList.Add(new ExtendedSelectListItem
{
Value = mentesitveValue.ToString(),
Text = TanuloErtekelesResource.MentesitveRovidNev,
Tooltip = TanuloErtekelesResource.Mentesitve
});
}
return extendedSelectListItemList;
}
private List<ExtendedSelectListItem> GetMentesitettOsztalyzatWithSpecialisList(List<int> ertekeleseknelMegjelenoSpecialisGombokLathatosagaList)
{
var extendedSelectListItemList = new List<ExtendedSelectListItem>();
var mentesitveValue = (int)SpecialisErtekelesOsztalyzatEnum.Mentesitve;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(mentesitveValue))
{
extendedSelectListItemList = new List<ExtendedSelectListItem>
{
new ExtendedSelectListItem
{
Value = mentesitveValue.ToString(),
Text = TanuloErtekelesResource.MentesitveRovidNev,
Tooltip = TanuloErtekelesResource.Mentesitve
}
};
}
return extendedSelectListItemList;
}
public JsonResult GetErtekelesKorlatozasok(int tantargyId)
{
var (isOsztalyzattalErtekelheto, isSzovegesenErtekelheto, isSzazalekosanErtekelheto) = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetErtekelesKorlatozasok(tantargyId);
return Json(new { isOsztalyzattalErtekelheto, isSzazalekosanErtekelheto, isSzovegesenErtekelheto }, JsonRequestBehavior.AllowGet);
}
}
}

View file

@ -0,0 +1,51 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue, KretaClaimPackages.IsDefaultAdminUser.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
public class DualisFeljegyzesKeresoController : BaseFeljegyzesKeresoController
{
private IKretaAuthorization Authorization { get; }
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
public DualisFeljegyzesKeresoController(IKretaAuthorization authorization)
{
Authorization = authorization;
}
public ActionResult Index()
{
if (!Authorization.IsValidDualisFeljegyzesek())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = new FeljegyzesKeresoModel(Constants.Controllers.DualisFeljegyzesKereso, Constants.ApiControllers.DualisFeljegyzesekApi)
{
FeladatEllatasiHelyId = ClaimData.FelhelySzuro
};
if (IsDualisKepzesEnabled)
{
model.SzervezetTipusEnum = SzervezetTipusEnum.Dualis;
}
if (ClaimData.FelhasznaloSzerepkor != SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetId = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("~/Areas/TanuloErtekeles/Views/FeljegyzesKereso/Index.cshtml", model);
}
}
}

View file

@ -0,0 +1,53 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue, KretaClaimPackages.IsDefaultAdminUser.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Dualis_Admin.ClaimValue)]
[Attributes.KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
public class DualisTanuloErtekelesKeresoController : BaseTanuloErtekelesKeresoController
{
private IKretaAuthorization Authorization { get; }
public bool IsDualisKepzesEnabled => new IntezmenyConfigHelper(ConnectionTypeExtensions.GetSystemConnectionType()).GetIntezmenyConfig<bool>(IntezmenyConfigModulEnum.DualisKepzes, IntezmenyConfigTipusEnum.IsEnabled);
public DualisTanuloErtekelesKeresoController(IKretaAuthorization authorization)
{
Authorization = authorization;
}
public ActionResult Index()
{
if (!Authorization.IsValidDualisErtekelesek())
{
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
}
var model = new TanuloErtekelesListModel
{
FeladatEllatasiHelyIdSearch = ClaimData.FelhelySzuro,
ControllerName = Constants.Controllers.DualisTanuloErtekelesKereso,
ApiControllerName = Constants.ApiControllers.DualisTanuloErtekelesKeresoApi
};
if (IsDualisKepzesEnabled)
{
model.SzervezetTipusEnum = SzervezetTipusEnum.Dualis;
}
if (ClaimData.FelhasznaloSzerepkor != SzerepkorTipusEnum.Adminisztrator)
{
model.SzervezetIdSearch = new SzervezetHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetAlkalmazottSzervezetId(ClaimData.FelhasznaloId);
}
return View("~/Areas/TanuloErtekeles/Views/TanuloErtekelesKereso/Index.cshtml", model);
}
}
}

View file

@ -0,0 +1,23 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class ElektronikusUzenetKeresoController : BaseElektronikusUzenetKeresoController
{
public ActionResult Index()
{
var model = new FeljegyzesKeresoModel(Constants.Controllers.ElektronikusUzenetKereso, Constants.ApiControllers.FeljegyzesekApi)
{
TipusID = (int)EsemenyTipusEnum.ElektronikusUzenet
};
return View(model);
}
}
}

View file

@ -0,0 +1,117 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
public class ErettsegiEredmenyekController : Controller
{
#region Properties
public static string StartPopupFormName => "ErettsegiEredmenyekStartPopupForm";
public static string StartPopupId => "ErettsegiEredmenyekStartWindow";
public static string GridName => "ErettsegiEredmenyekGrid";
#endregion Properties
protected ErettsegiEredmenyekModel GetErettsegiEredmenyekModel()
{
var model = new ErettsegiEredmenyekModel
{
OsztalyList = GetOsztCsopList()
};
return model;
}
// GET: Ertekeles/ErettsegiEredmenyek
public ActionResult Index()
{
var osztalyList = GetOsztCsopList();
var model = new ErettsegiEredmenyekModel
{
OsztalyList = osztalyList
};
if (osztalyList.Count == 1)
{
model.OsztalyId = Convert.ToInt32(osztalyList.Single().Value);
model.OsztalyNev = osztalyList.Single().Text;
}
else
{
model.OsztalyId = null;
model.OsztalyNev = string.Empty;
}
return View(model);
}
public ActionResult ErettsegiEredmenyekDetailGrid(ErettsegiEredmenyekGridModel model)
{
var helper = new ErettsegiEredmenyekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
model.ErettsegiTantargyList = GetErettsegiTantargyList(helper);
model.ErettsegiSzintList = GetErettsegiSzintList(helper);
model.ErettsegiTipusList = GetErettsegiTipusList(helper);
var dictionary = helper.GetErettsegiMaxPontszamList();
model.IrasbeliMaxPontszam = dictionary["IrasbeliMaxPontszam"];
model.SzobeliMaxPontszam = dictionary["SzobeliMaxPontszam"];
model.GyakorlatiMaxPontszam = dictionary["GyakorlatiMaxPontszam"];
return PartialView("DetailGrid", model);
}
#region Popup actions
[HttpPost]
[MvcValidateAjaxAntiForgeryToken]
public ActionResult OpenStartPopup()
{
var model = GetErettsegiEredmenyekModel();
return PartialView("Start_Popup", model);
}
#endregion Popup actions
private List<SelectListItem> GetErettsegiTantargyList(ErettsegiEredmenyekHelper helper)
{
var dictionary = helper.GetErettsegiTantargyakForComboBox(string.Empty);
var result = dictionary.ToSelectListItemList();
return result;
}
private List<SelectListItem> GetErettsegiSzintList(ErettsegiEredmenyekHelper helper)
{
var dictionary = helper.GetErettsegiSzintekForComboBox(string.Empty);
var result = dictionary.ToSelectListItemList();
return result;
}
private List<SelectListItem> GetErettsegiTipusList(ErettsegiEredmenyekHelper helper)
{
var dictionary = helper.GetErettsegiTipusokForComboBox(string.Empty);
var result = dictionary.ToSelectListItemList();
return result;
}
private List<SelectListItem> GetOsztCsopList()
{
IDictionary<string, string> csakOsztalyok = OsztalyokEsCsoportokHelpers.GetCsakOsztalyok(ClaimData.FelhasznaloId, feladatKategoriaId: null);
return csakOsztalyok.ToSelectListItemList();
}
}
}

View file

@ -0,0 +1,52 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class ErettsegiEredmenyekKeresoController : Controller
{
// GET: TanuloErtekeles/ErettsegiEredmenyekKereso
public ActionResult Index()
{
return View(new ErettsegiEredmenyekKeresoSearchModel() { FeladatEllatasiHelyId = ClaimData.FelhelySzuro });
}
public ActionResult OpenErettsegiEredmenyInfoPopUp(int erettsegiEredmenyId)
{
var erettsegiEredmenyModel = new ErettsegiEredmenyModel();
var helper = new ErettsegiEredmenyekHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var result = helper.GetErettsegiEredmeny(erettsegiEredmenyId);
erettsegiEredmenyModel.Tanulo = result.Tanulo;
erettsegiEredmenyModel.AnyjaNeve = result.AnyjaNeve;
erettsegiEredmenyModel.SzuletesiDatum = result.SzuletesiDatum;
erettsegiEredmenyModel.OktatasiAzonosito = result.OktatasiAzonosito;
erettsegiEredmenyModel.Tantargy = result.Tantargy;
erettsegiEredmenyModel.GyakorlatiPontszam = result.GyakorlatiPontszam;
erettsegiEredmenyModel.IrasbeliPontszam = result.IrasbeliPontszam;
erettsegiEredmenyModel.SzobeliPontszam = result.SzobeliPontszam;
erettsegiEredmenyModel.OsszPontszam = result.OsszPontszam;
erettsegiEredmenyModel.Tipus = result.Tipus;
erettsegiEredmenyModel.Szint = result.Szint;
erettsegiEredmenyModel.Szazalek = result.Szazalek;
erettsegiEredmenyModel.Erdemjegy = result.Erdemjegy;
erettsegiEredmenyModel.Megjegyzes = result.Megjegyzes;
var model = new PopUpModel(erettsegiEredmenyModel, "Info_PopUp");
model.AddCancelBtn(model, "ErettsegiEredmenyekKeresoHelper.erettsegiEredmenyInfoCancel");
return PartialView(Constants.General.PopupView, model);
}
}
}

View file

@ -0,0 +1,474 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.BusinessLogic.Utils;
using Kreta.Core;
using Kreta.Core.ConnectionType;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Enums.ManualEnums.SystemSettings;
using Kreta.Framework.Util;
using Kreta.KretaServer.SystemSettings;
using Kreta.Resources;
using Kreta.Web.Areas.Adminisztracio.Models;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Classes;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
using Kreta.Web.Utils;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
public class ErtekelesController : BaseTanuloErtekelesController
{
#region Properties
public static string StartPopupFormName => "ErtekelesStartPopupForm";
public static string StartPopupId => "ErtekelesStartPopupWindow";
public static string EditPopupFormName => "ErtekelesEditPopupForm";
public static string EditPopupId => "ErtekelesEditPopupWindow";
public static string FotargyAltargyGridName => "FotargyAltargyGrid";
#endregion Properties
private IKretaAuthorization Authorization { get; }
public ErtekelesController(IKretaAuthorization authorization)
{
Authorization = authorization;
}
public ActionResult IndexEvkozi()
{
ErtekelesListModel model = GetErtekelesListModel((int)ErtekelesTipusEnum.evkozi_jegy_ertekeles);
return View("Index", model);
}
public ActionResult IndexFelevi()
{
ErtekelesListModel model = GetErtekelesListModel((int)ErtekelesTipusEnum.felevi_jegy_ertekeles);
return View("Index", model);
}
public ActionResult IndexEvvegi()
{
ErtekelesListModel model = GetErtekelesListModel((int)ErtekelesTipusEnum.evvegi_jegy_ertekeles);
return View("Index", model);
}
public ActionResult IndexEgyeb()
{
ErtekelesListModel model = GetErtekelesListModel();
return View("Index", model);
}
public ActionResult ErtekelesGridDetail(ErtekelesDetailModel model)
{
model.NamePrefix = "Ertekeles";
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
bool hasFotargyAltargy = helper.HasTantargyFotargyAltargy(model.TantargyId);
model.HasFotargyAltargy = hasFotargyAltargy;
return PartialView("GridDetail", model);
}
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
public ActionResult NaplozasErtekelesGridDetail(ErtekelesDetailModel model)
{
model.NamePrefix = "NaplozasErtekeles";
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
bool hasFotargyAltargy = helper.HasTantargyFotargyAltargy(model.TantargyId);
model.HasFotargyAltargy = hasFotargyAltargy;
return PartialView("GridDetail", model);
}
internal ErtekelesListModel NaplozasPartialViewModel()
{
return GetErtekelesListModel((int)ErtekelesTipusEnum.evkozi_jegy_ertekeles);
}
public ActionResult OpenStartPopup(int? tipusId)
{
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
DataSet ertekelesFoglalkozasData = helper.GetErtekelesFoglalkozasData();
DataSet ertekelesFotargyiFoglalkozasData = helper.GetErtekelesFotargyiFoglalkozasData();
var foglalkozasList = GetFoglalkozasList(ertekelesFoglalkozasData);
var fotargyiFoglalkozasList = GetFoglalkozasList(ertekelesFotargyiFoglalkozasData);
var ertekelesFoglalkozasItemList = GetErtekelesFoglalkozasList(ertekelesFoglalkozasData);
var ertekelesFotargyiFoglalkozasItemList = GetErtekelesFoglalkozasList(ertekelesFotargyiFoglalkozasData);
var keresoAdatTipus = GetKeresoAdatTipus();
var model = new ErtekelesStartPopupModel
{
ErtekelesKeresoAdatTipus = keresoAdatTipus,
ErtekelesKeresoSzuro = (int)ErtekelesKeresoSzuroEnum.Ttf,
TipusId = tipusId,
ErtekelesKeresoSzuroList = GetErtekelesKeresoSzuroList(keresoAdatTipus, ertekelesFotargyiFoglalkozasItemList.Any()),
TipusList = GetTipusList(),
FoglalkozasList = foglalkozasList,
ErtekelesFoglalkozasItemModelList = ertekelesFoglalkozasItemList,
FotargyiFoglalkozasList = fotargyiFoglalkozasList,
ErtekelesFotargyiFoglalkozasItemModelList = ertekelesFotargyiFoglalkozasItemList,
OsztalyCsoportList = GetOsztalyCsoportList(),
OsztalyCsoportListByFelhasznaloId = GetOsztalyCsoportListByFelhasznaloId(),
TantargyList = GetTantargyList()
};
return PartialView("Start_Popup", model);
}
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
public ActionResult OpenEditPopup(int id)
{
if (!Authorization.IsValidErtekeles(id))
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.NincsJogaAzOldalMegtekintesehez);
}
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var helper = new TanuloErtekelesHelper(connectionType);
TanuloErtekelesCo tanuloErtekelesCo = helper.GetTanuloErtekelesCoById(id);
var naplozarasDatum = new OrarendHelper(connectionType).GetNaplozarasDate(startDate: null);
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var ertekelesEditModel = new ErtekelesEditModel
{
IdEdit = tanuloErtekelesCo.Id.Value,
TanuloIdEdit = tanuloErtekelesCo.TanuloId,
DatumMinValueEdit = naplozarasDatum,
OsztalyCsoportIdEdit = tanuloErtekelesCo.OsztalyCsoportId,
ErtekeloNyomtatasiNevEdit = tanuloErtekelesCo.ErtekeloNyomtatasiNev,
DatumEdit = tanuloErtekelesCo.Datum,
TipusIdEdit = tanuloErtekelesCo.TipusId,
TipusList = GetTipusList(),
OsztalyzatList = GetOsztalyzatList(true),
TantargyIdEdit = tanuloErtekelesCo.TantargyId,
ErtekelesModIdEdit = tanuloErtekelesCo.ErtekelesModId,
ErtekelesTemaEdit = tanuloErtekelesCo.ErtekelesTema,
ErtekelesTemaNemetEdit = tanuloErtekelesCo.ErtekelesTemaNemet,
ErtekelesTemaHorvatEdit = tanuloErtekelesCo.ErtekelesTemaHorvat,
ErtekelesTemaRomanEdit = tanuloErtekelesCo.ErtekelesTemaRoman,
ErtekelesTemaSzerbEdit = tanuloErtekelesCo.ErtekelesTemaSzerb,
ErtekelesOsztalyzatIdEdit = tanuloErtekelesCo.ErtekelesOsztalyzatId,
ErtekelesSzovegEdit = tanuloErtekelesCo.ErtekelesSzovegFormazott,
ErtekelesSzovegNemetEdit = tanuloErtekelesCo.ErtekelesSzovegFormazottNemet,
ErtekelesSzovegHorvatEdit = tanuloErtekelesCo.ErtekelesSzovegFormazottHorvat,
ErtekelesSzovegRomanEdit = tanuloErtekelesCo.ErtekelesSzovegFormazottRoman,
ErtekelesSzovegSzerbEdit = tanuloErtekelesCo.ErtekelesSzovegFormazottSzerb,
ErtekelesSzovegRovidNevEdit = tanuloErtekelesCo.ErtekelesSzovegRovidNev,
ErtekelesSzazalekEdit = tanuloErtekelesCo.ErtekelesSzazalek,
ErtekelesModList = GetErtekelesModList(),
NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek)
};
var popUpModel = new PopUpModel(ertekelesEditModel, "Edit_Popup");
popUpModel.AddBtn(popUpModel, "ErtekelesPopupCancelButton", CommonResource.Megse, "ErtekelesHelper.editCancel", "BtnCancel");
popUpModel.AddBtn(popUpModel, "ErtekelesPopupSaveButton", CommonResource.Mentes, "ErtekelesHelper.editSave", "BtnOk");
popUpModel.AddBtn(popUpModel, "ErtekelesPopupDeleteButton", CommonResource.Torles, "ErtekelesHelper.editDeleteConfirmWindow", "BtnDelete");
return PartialView(Constants.General.PopupView, popUpModel);
}
public ActionResult OpenMondatbankSelectPopup(TanuloErtekelesMondatbankItemSelectModel model)
{
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
model.NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
int? evfolyamTipusId = null;
if (model.MondatbankSelectPopupOsztalyCsoportId.IsEntityId())
{
evfolyamTipusId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportEvfolyamTipusId(model.MondatbankSelectPopupOsztalyCsoportId.Value);
}
var helper = new TanuloErtekelesMondatbankHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = new GridParameters
{
OrderBy = "RovidNev ASC"
}
};
DataSet dataSet = helper.GetMondatbankSelectListData(model.MondatbankSelectPopupTanuloErtekelesTipusId, model.MondatbankSelectPopupTipusId, model.MondatbankSelectPopupTantargyId, evfolyamTipusId);
List<DataRow> mondatbankItemRows = dataSet.Tables[0].Rows.Cast<DataRow>().ToList();
model.MondatbankItemSelectList = GetMondatbankItemSelectList(mondatbankItemRows);
model.MondatbankItemList = GetMondatbankItemList(mondatbankItemRows);
var popUpModel = new PopUpModel(model, "MondatbankItem_Select_Popup");
popUpModel.AddBtn(popUpModel, "ErtekelesMondatbankSelectPopupCancelButton", CommonResource.Megse, "ErtekelesHelper.mondatbankSelectPopupCancel", "BtnCancel");
popUpModel.AddBtn(popUpModel, "ErtekelesMondatbankSelectPopupSelectButton", CommonResource.Kivalasztas, "ErtekelesHelper.mondatbankSelectPopupSelect", "BtnOk");
return PartialView(Constants.General.PopupView, popUpModel);
}
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
public string GetAtlag(int osztalyCsoportId, int tantargyId, DateTime? datum)
{
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
var result = helper.GetAtlag(osztalyCsoportId, tantargyId, ProfileUtils.AtlagMegjelenitesTipusa, ProfileUtils.AtlagbaBeleszamitoOsztalyTipusa, datum);
return result;
}
private ErtekelesListModel GetErtekelesListModel(int? tipusId = null)
{
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var systemSettingsHelper = new SystemSettingsHelper(connectionType);
List<int> ertekeleseknelMegjelenoSpecialisGombokLathatosagaList = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Ertekeleseknel_Megjeleno_Specialis_Gombok_Lathatosaga);
var helper = new TanuloErtekelesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
List<ErtekelesFoglalkozasItemModel> ertekelesFoglalkozasItemList = GetErtekelesFoglalkozasList(helper.GetErtekelesFoglalkozasData());
List<ErtekelesFoglalkozasItemModel> ertekelesFotargyiFoglalkozasItemList = GetErtekelesFoglalkozasList(helper.GetErtekelesFotargyiFoglalkozasData());
bool isJegyekAtlagaMegjelenik = SystemSettingsManager.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Ertekelesnel_a_naplojegyek_atlaga_megjelenik, ClaimData.IntezmenyAzonosito, ClaimData.SelectedTanevID.Value);
var ertekelesZarasDatuma = new OrarendHelper(connectionType).GetErtekelesZarasDatuma();
var lezartOsztalyokEsBontottCsoportjaik = new NaplozarasLogic(connectionType).GetLezartOsztalyokEsBontottCsoportjaik();
var model = new ErtekelesListModel
{
NamePrefix = "Ertekeles",
TipusId = tipusId,
Datum = DateTime.Today,
DatumMinValue = ertekelesZarasDatuma,
OsztalyCsoportId = null,
OsztalyzatList = GetOsztalyzatWithSpecialisList(ertekeleseknelMegjelenoSpecialisGombokLathatosagaList),
MentesitettOsztalyzatList = GetMentesitettOsztalyzatWithSpecialisList(ertekeleseknelMegjelenoSpecialisGombokLathatosagaList),
TipusList = GetTipusList(),
OsztalyCsoportList = GetOsztalyCsoportList(),
OsztalyCsoportListByFelhasznaloId = GetOsztalyCsoportListByFelhasznaloId(),
IsNaploErtekeles = false,
ErtekelesModId = null,
ErtekelesTema = null,
ErtekelesTemaText = null,
TemaList = new List<SelectListItem>(),
IsJegyekAtlagaMegjelenik = isJegyekAtlagaMegjelenik,
FoglalkozasId = null,
TantargyId = null,
ErtekelesKeresoAdatTipus = GetKeresoAdatTipus(),
ErtekelesModList = GetErtekelesModList(),
ErtekelesFoglalkozasItemModelList = ertekelesFoglalkozasItemList,
ErtekelesFotargyiFoglalkozasItemModelList = ertekelesFotargyiFoglalkozasItemList,
EgyszerAdhatoErtekelesTipusIds = EnumExtensions.GetErtekelesTipusDictionaryItems(ClaimData.SelectedTanevID.Value, true).Select(x => x.Id).ToList(),
NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek),
LezartOsztalyCsoportok = lezartOsztalyokEsBontottCsoportjaik,
};
return model;
}
private static int GetKeresoAdatTipus()
{
int ertekelesKeresoAdatTipus;
if (ClaimData.IsSzuperOsztalyfonok)
{
ertekelesKeresoAdatTipus = (int)SystemSettingsErtekelesKeresesSzuroEnum.Mindenki;
}
else
{
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
ertekelesKeresoAdatTipus = (int)systemSettingsHelper.GetSystemSettingValue<SystemSettingsErtekelesKeresesSzuroEnum>(RendszerBeallitasTipusEnum.Ertekelesek_oldalon_levo_keresok_alapertelemezett_feltoltese_ezek_alapjan);
}
return ertekelesKeresoAdatTipus;
}
private static List<SelectListItem> GetFoglalkozasList(DataSet ertekelesFogalkozasData)
{
var result = new List<SelectListItem>();
foreach (DataRow row in ertekelesFogalkozasData.Tables[0].Rows)
{
result.Add(new SelectListItem
{
Value = SDAConvert.ToInt32(row["ID"]).ToString(),
Text = SDAConvert.ToString(row["Nev"])
});
}
return result;
}
private static List<ErtekelesFoglalkozasItemModel> GetErtekelesFoglalkozasList(DataSet dataSet)
{
var itemList = new List<ErtekelesFoglalkozasItemModel>();
foreach (DataRow row in dataSet.Tables[0].Rows)
{
itemList.Add(new ErtekelesFoglalkozasItemModel
{
FoglalkozasId = SDAConvert.ToNullableInt32(row["ID"]),
OsztalyCsoportId = SDAConvert.ToNullableInt32(row["OsztalyCsoportId"]),
TantargyId = SDAConvert.ToNullableInt32(row["TantargyId"])
});
}
return itemList;
}
private List<SelectListItem> GetErtekelesKeresoSzuroList(int ertekelesKeresoAdatTipus, bool showFotargyi)
{
var removeTipusList = new List<string>();
if (ertekelesKeresoAdatTipus == (int)SystemSettingsErtekelesKeresesSzuroEnum.Mindenki && ClaimData.IsOnlyTanar)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Osztalyfonok).ToString());
}
else if (ertekelesKeresoAdatTipus == (int)SystemSettingsErtekelesKeresesSzuroEnum.Osztalyfonok)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Mindenki).ToString());
if (ClaimData.IsOnlyTanar)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Osztalyfonok).ToString());
}
}
else if (ertekelesKeresoAdatTipus == (int)SystemSettingsErtekelesKeresesSzuroEnum.TTF)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Mindenki).ToString());
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Osztalyfonok).ToString());
}
if (!showFotargyi)
{
removeTipusList.Add(((int)ErtekelesKeresoSzuroEnum.Fotargyi).ToString());
}
var result = FrameworkEnumExtensions.EnumToListManual<ErtekelesKeresoSzuroEnum>().ToSelectListItemList(removeTipusList);
return result;
}
private List<SelectListItem> GetTipusList()
{
return ((int)GeneratedAdatszotarTipusEnum.ErtekelesTipus).GetItemsByType(ClaimData.SelectedTanevID.Value, true).ToSelectItemList();
}
private List<SelectListItem> GetErtekelesModList()
{
return ((int)GeneratedAdatszotarTipusEnum.ErtekelesMod).GetItemsByType(ClaimData.SelectedTanevID.Value, true).ToSelectItemList();
}
private static List<SelectListItem> GetTantargyList()
{
bool isFromSzervezet = false;
List<SelectListItem> selectListItemList = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTantargyakForComboBox(isSzakkepzo: ClaimData.IsSzakkepzoIntezmeny, isFromSzervezet: isFromSzervezet);
return selectListItemList.OrderBy(x => x.Text).ToList();
}
private List<ExtendedSelectListItem> GetOsztalyzatWithSpecialisList(List<int> ertekeleseknelMegjelenoSpecialisGombokLathatosagaList)
{
List<SelectListItem> selectListItemList = GetOsztalyzatList(true);
List<ExtendedSelectListItem> extendedSelectListItemList = selectListItemList.Select(x => new ExtendedSelectListItem(x)
{
Tooltip = int.Parse(x.Value).GetDisplayName<OsztalyzatTipusEnum>(ClaimData.SelectedTanevID.Value)
}).ToList();
var nemIrtValue = (int)SpecialisErtekelesOsztalyzatEnum.NemIrt;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(nemIrtValue))
{
extendedSelectListItemList.Add(new ExtendedSelectListItem
{
Value = nemIrtValue.ToString(),
Text = TanuloErtekelesResource.NemIrtRovidNev,
Tooltip = TanuloErtekelesResource.NemIrt
});
}
var dicseretValue = (int)SpecialisErtekelesOsztalyzatEnum.Dicseret;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(dicseretValue))
{
extendedSelectListItemList.Add(new ExtendedSelectListItem
{
Value = dicseretValue.ToString(),
Text = TanuloErtekelesResource.DicseretRovidNev,
Tooltip = TanuloErtekelesResource.Dicseret
});
}
var kitunoValue = (int)SpecialisErtekelesOsztalyzatEnum.Kituno;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(kitunoValue))
{
extendedSelectListItemList.Add(new ExtendedSelectListItem
{
Value = kitunoValue.ToString(),
Text = TanuloErtekelesResource.KitunoRovidNev,
Tooltip = TanuloErtekelesResource.Kituno
});
}
var mentesitveValue = (int)SpecialisErtekelesOsztalyzatEnum.Mentesitve;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(mentesitveValue))
{
extendedSelectListItemList.Add(new ExtendedSelectListItem
{
Value = mentesitveValue.ToString(),
Text = TanuloErtekelesResource.MentesitveRovidNev,
Tooltip = TanuloErtekelesResource.Mentesitve
});
}
return extendedSelectListItemList;
}
private List<ExtendedSelectListItem> GetMentesitettOsztalyzatWithSpecialisList(List<int> ertekeleseknelMegjelenoSpecialisGombokLathatosagaList)
{
var extendedSelectListItemList = new List<ExtendedSelectListItem>();
var mentesitveValue = (int)SpecialisErtekelesOsztalyzatEnum.Mentesitve;
if (ertekeleseknelMegjelenoSpecialisGombokLathatosagaList.Contains(mentesitveValue))
{
extendedSelectListItemList = new List<ExtendedSelectListItem>
{
new ExtendedSelectListItem
{
Value = mentesitveValue.ToString(),
Text = TanuloErtekelesResource.MentesitveRovidNev,
Tooltip = TanuloErtekelesResource.Mentesitve
}
};
}
return extendedSelectListItemList;
}
public JsonResult GetErtekelesKorlatozasok(int tantargyId)
{
var (isOsztalyzattalErtekelheto, isSzovegesenErtekelheto, isSzazalekosanErtekelheto) = new TantargyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetErtekelesKorlatozasok(tantargyId);
return Json(new { isOsztalyzattalErtekelheto, isSzazalekosanErtekelheto, isSzovegesenErtekelheto }, JsonRequestBehavior.AllowGet);
}
}
}

View file

@ -0,0 +1,49 @@
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Enums;
using Kreta.Web.Areas.TanuloErtekeles.ApiControllers;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class FaliujsagKeresoController : Controller
{
public ActionResult Index()
{
var model = new FeljegyzesKeresoModel(Constants.Controllers.FaliujsagKereso, Constants.ApiControllers.FeljegyzesekApi)
{
TipusID = (int)EsemenyTipusEnum.FaliujsagBejegyzes,
FeladatEllatasiHelyId = ClaimData.FelhelySzuro
};
return View(model);
}
public ActionResult OpenFeljegyzesAdatok(int feljegyzesId)
{
try
{
var co = new FeljegyzesekHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeljegyzesById(feljegyzesId);
var model = BaseFeljegyzesekApiController.ConvertFeljegyzesCoToModel(co);
var popUpModel = new PopUpModel(model, "Feljegyzes_Info");
popUpModel = popUpModel.AddCancelBtn(popUpModel, "FeljegyzesKeresoHelper.adatokCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
}
}

View file

@ -0,0 +1,22 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class FeljegyzesKeresoController : BaseFeljegyzesKeresoController
{
public ActionResult Index()
{
var model = new FeljegyzesKeresoModel(Constants.Controllers.FeljegyzesKereso, Constants.ApiControllers.FeljegyzesekApi)
{
FeladatEllatasiHelyId = ClaimData.FelhelySzuro
};
return View(model);
}
}
}

View file

@ -0,0 +1,41 @@
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Core.Exceptions;
using Kreta.Web.Areas.TanuloErtekeles.ApiControllers;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue)]
public class InformaciokFeljegyzesekController : Controller
{
public ActionResult Index(int? id)
{
return View(id);
}
public ActionResult OpenFeljegyzesAdatok(int feljegyzesId, int tanuloId)
{
try
{
var co = new FeljegyzesekHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeljegyzesById(feljegyzesId, tanuloId);
var model = BaseFeljegyzesekApiController.ConvertFeljegyzesCoToModel(co);
var popUpModel = new PopUpModel(model, "Feljegyzes_Info");
popUpModel = popUpModel.AddCancelBtn(popUpModel, "InformaciokFeljegyzesekHelper.adatokCancel");
return PartialView(Constants.General.PopupView, popUpModel);
}
catch (BlException ex)
{
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
}
}
}
}

View file

@ -0,0 +1,349 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Net;
using System.Web.Mvc;
using Kreta.BusinessLogic.Classes;
using Kreta.BusinessLogic.Classes.ComboBox;
using Kreta.BusinessLogic.HelperClasses;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Helpers.SystemSettings;
using Kreta.BusinessLogic.Security;
using Kreta.Core;
using Kreta.Enums;
using Kreta.Enums.ManualEnums;
using Kreta.Enums.ManualEnums.SystemSettings;
using Kreta.Framework.Util;
using Kreta.Resources;
using Kreta.Web.Areas.Adminisztracio.Models;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Classes;
using Kreta.Web.Helpers;
using Kreta.Web.Helpers.Error;
using Kreta.Web.Models.EditorTemplates;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
public class MagatartasSzorgalomController : BaseTanuloErtekelesController
{
#region Properties
public static string StartPopupFormName => "MagatartasSzorgalomStartPopupForm";
public static string StartPopupId => "MagatartasSzorgalomStartPopupWindow";
public static string EditPopupFormName => "MagatartasSzorgalomEditPopupForm";
public static string EditPopupId => "MagatartasSzorgalomEditPopupWindow";
#endregion Properties
private IKretaAuthorization Authorization { get; }
public MagatartasSzorgalomController(IKretaAuthorization authorization)
{
Authorization = authorization;
}
[MvcRolePackageAuthorize(KretaClaimPackages.TanarAdhatMagatartasSzorgalomJegyet.ClaimValue)]
public ActionResult IndexEvkoziTanar()
{
return IndexEvkozi(isTanarEvkozi: true);
}
public ActionResult IndexEvkoziOfo()
{
return IndexEvkozi(isTanarEvkozi: false);
}
private ActionResult IndexEvkozi(bool isTanarEvkozi)
{
MagatartasSzorgalomListModel model = GetMagatartasSzorgalomListModel((int)ErtekelesTipusEnum.evkozi_jegy_ertekeles, isTanarEvkozi);
return View("Index", model);
}
public ActionResult IndexFeleviOfo()
{
return IndexFelevi();
}
private ActionResult IndexFelevi()
{
MagatartasSzorgalomListModel model = GetMagatartasSzorgalomListModel((int)ErtekelesTipusEnum.felevi_jegy_ertekeles);
return View("Index", model);
}
public ActionResult IndexEvvegiOfo()
{
return IndexEvvegi();
}
private ActionResult IndexEvvegi()
{
MagatartasSzorgalomListModel model = GetMagatartasSzorgalomListModel((int)ErtekelesTipusEnum.evvegi_jegy_ertekeles);
return View("Index", model);
}
public ActionResult IndexEgyebOfo()
{
return IndexEgyeb();
}
private ActionResult IndexEgyeb()
{
MagatartasSzorgalomListModel model = GetMagatartasSzorgalomListModel();
return View("Index", model);
}
public ActionResult MagatartasSzorgalomGridDetail(MagatartasSzorgalomDetailModel model)
{
model.NamePrefix = "MagatartasSzorgalom";
model.IsAmiMagatartasErtekelheto = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.magatartas_ertekeles_szabalyozasa);
return PartialView("GridDetail", model);
}
[MvcRolePackageAuthorize(KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.TanarAdhatMagatartasSzorgalomJegyet.ClaimValue)]
public ActionResult OpenStartPopup(int? tipusId)
{
int keresoAdatTipus = GetKeresoAdatTipus();
var model = new MagatartasSzorgalomStartPopupModel
{
MagatartasSzorgalomKeresoAdatTipus = keresoAdatTipus,
MagatartasSzorgalomKeresoSzuro = ClaimData.IsOnlyTanar ? (int)MagatartasSzorgalomKeresoSzuroEnum.Ttf : (int)MagatartasSzorgalomKeresoSzuroEnum.Osztalyfonok,
TipusId = tipusId,
MagatartasSzorgalomKeresoSzuroList = GetMagatartasSzorgalomKeresoSzuroList(keresoAdatTipus),
TipusList = GetTipusList(),
OsztalyCsoportList = GetOsztalyCsoportList(),
OsztalyCsoportListByFelhasznaloId = GetOsztalyCsoportListByFelhasznaloId(),
OsztalyCsoportListByFoglalkozas = GetOsztalyCsoportListByFoglalkozas()
};
return PartialView("Start_Popup", model);
}
[MvcRolePackageAuthorize(KretaClaimPackages.CsoportVezeto.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.TanarAdhatMagatartasSzorgalomJegyet.ClaimValue)]
public ActionResult OpenEditPopup(int id, int ellatottFeladatTipusId)
{
if (!Authorization.IsValidMagatartasSzorgalom(id))
{
throw new StatusError(HttpStatusCode.Forbidden, ErrorResource.NincsJogaAzOldalMegtekintesehez);
}
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var helper = new TanuloErtekelesHelper(connectionType);
TanuloErtekelesCo tanuloErtekelesCo = helper.GetTanuloErtekelesCoById(id);
var naplozarasDatum = new OrarendHelper(connectionType).GetNaplozarasDate(startDate: null);
var systemSettingsHelper = new SystemSettingsHelper(connectionType);
var magatartasSzorgalomEditModel = new MagatartasSzorgalomEditModel
{
IdEdit = tanuloErtekelesCo.Id.Value,
TanuloIdEdit = tanuloErtekelesCo.TanuloId,
DatumMinValueEdit = naplozarasDatum,
OsztalyCsoportIdEdit = tanuloErtekelesCo.OsztalyCsoportId,
ErtekeloNyomtatasiNevEdit = tanuloErtekelesCo.ErtekeloNyomtatasiNev,
DatumEdit = tanuloErtekelesCo.Datum,
TipusIdEdit = tanuloErtekelesCo.TipusId,
EllatottFeladatTipusId = ellatottFeladatTipusId,
IsAmiMagatartasErtekelheto = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.magatartas_ertekeles_szabalyozasa),
TipusList = GetTipusList(),
OsztalyzatList = GetOsztalyzatList(true),
MagatartasOsztalyzatIdEdit = tanuloErtekelesCo.MagatartasOsztalyzatId,
MagatartasSzovegEdit = tanuloErtekelesCo.MagatartasSzovegFormazott,
MagatartasSzovegNemetEdit = tanuloErtekelesCo.MagatartasSzovegFormazottNemet,
MagatartasSzovegHorvatEdit = tanuloErtekelesCo.MagatartasSzovegFormazottHorvat,
MagatartasSzovegRomanEdit = tanuloErtekelesCo.MagatartasSzovegFormazottRoman,
MagatartasSzovegSzerbEdit = tanuloErtekelesCo.MagatartasSzovegFormazottSzerb,
MagatartasSzovegRovidNevEdit = tanuloErtekelesCo.MagatartasSzovegRovidNev,
MagatartasErtekIdEdit = tanuloErtekelesCo.MagatartasErtekId,
SzorgalomOsztalyzatIdEdit = tanuloErtekelesCo.SzorgalomOsztalyzatId,
SzorgalomSzovegEdit = tanuloErtekelesCo.SzorgalomSzovegFormazott,
SzorgalomSzovegNemetEdit = tanuloErtekelesCo.SzorgalomSzovegFormazottNemet,
SzorgalomSzovegHorvatEdit = tanuloErtekelesCo.SzorgalomSzovegFormazottHorvat,
SzorgalomSzovegRomanEdit = tanuloErtekelesCo.SzorgalomSzovegFormazottRoman,
SzorgalomSzovegSzerbEdit = tanuloErtekelesCo.SzorgalomSzovegFormazottSzerb,
SzorgalomSzovegRovidNevEdit = tanuloErtekelesCo.SzorgalomSzovegRovidNev,
SzorgalomErtekIdEdit = tanuloErtekelesCo.SzorgalomErtekId,
MagatartasErtekList = GetMagatartasErtekList(),
SzorgalomErtekList = GetSzorgalomErtekList(),
NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek)
};
var popUpModel = new PopUpModel(magatartasSzorgalomEditModel, "Edit_Popup");
popUpModel.AddBtn(popUpModel, "MagatartasSzorgalomPopupCancelButton", CommonResource.Megse, "MagatartasSzorgalomHelper.editCancel", "BtnCancel");
popUpModel.AddBtn(popUpModel, "MagatartasSzorgalomPopupSaveButton", CommonResource.Mentes, "MagatartasSzorgalomHelper.editSave", "BtnOk");
popUpModel.AddBtn(popUpModel, "MagatartasSzorgalomPopupDeleteButton", CommonResource.Torles, "MagatartasSzorgalomHelper.editDeleteConfirmWindow", "BtnDelete");
return PartialView(Constants.General.PopupView, popUpModel);
}
public ActionResult OpenMondatbankSelectPopup(TanuloErtekelesMondatbankItemSelectModel model)
{
model.NemzetiDokumentumNyelvek = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
int? evfolyamTipusId = null;
if (model.MondatbankSelectPopupOsztalyCsoportId.IsEntityId())
{
evfolyamTipusId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyCsoportEvfolyamTipusId(model.MondatbankSelectPopupOsztalyCsoportId.Value);
}
var helper = new TanuloErtekelesMondatbankHelper(ConnectionTypeExtensions.GetSessionConnectionType())
{
GridParameters = new GridParameters
{
OrderBy = "RovidNev ASC"
}
};
DataSet dataSet = helper.GetMondatbankSelectListData(model.MondatbankSelectPopupTanuloErtekelesTipusId, model.MondatbankSelectPopupTipusId, model.MondatbankSelectPopupTantargyId, evfolyamTipusId);
List<DataRow> mondatbankItemRows = dataSet.Tables[0].Rows.Cast<DataRow>().ToList();
model.MondatbankItemSelectList = GetMondatbankItemSelectList(mondatbankItemRows);
model.MondatbankItemList = GetMondatbankItemList(mondatbankItemRows);
var popUpModel = new PopUpModel(model, "MondatbankItem_Select_Popup");
popUpModel.AddBtn(popUpModel, "MagatartasSzorgalomMondatbankSelectPopupCancelButton", CommonResource.Megse, "MagatartasSzorgalomHelper.mondatbankSelectPopupCancel", "BtnCancel");
popUpModel.AddBtn(popUpModel, "MagatartasSzorgalomMondatbankSelectPopupSelectButton", CommonResource.Kivalasztas, "MagatartasSzorgalomHelper.mondatbankSelectPopupSelect", "BtnOk");
return PartialView(Constants.General.PopupView, popUpModel);
}
private MagatartasSzorgalomListModel GetMagatartasSzorgalomListModel(int? tipusId = null, bool isTanarEvkozi = false)
{
int keresoAdatTipus = GetKeresoAdatTipus();
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
var ertekelesZarasDatuma = new OrarendHelper(connectionType).GetErtekelesZarasDatuma();
var lezartOsztalyokEsBontottCsoportjaik = new NaplozarasLogic(connectionType).GetLezartOsztalyokEsBontottCsoportjaik();
var systemSettingsHelper = new SystemSettingsHelper(connectionType);
var model = new MagatartasSzorgalomListModel
{
NamePrefix = "MagatartasSzorgalom",
TipusId = tipusId,
Datum = DateTime.Today,
DatumMinValue = ertekelesZarasDatuma,
OsztalyCsoportId = ClaimData.FelhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Naplo) ? new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyfonokElsonekMegtalaltOsztalya(ClaimData.FelhasznaloId) : null,
OsztalyzatList = GetOsztalyzatList(true).Select(x => new ExtendedSelectListItem(x)).ToList(),
TipusList = GetTipusList(isTanarEvkozi),
OsztalyCsoportList = GetOsztalyCsoportList(),
OsztalyCsoportListByFelhasznaloId = GetOsztalyCsoportListByFelhasznaloId(),
MagatartasSzorgalomKeresoAdatTipus = keresoAdatTipus,
MagatartasErtekList = GetMagatartasErtekList(),
SzorgalomErtekList = GetSzorgalomErtekList(),
OsztalyCsoportListByFoglalkozas = GetOsztalyCsoportListByFoglalkozas(),
IsAmiMagatartasErtekelheto = systemSettingsHelper.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.magatartas_ertekeles_szabalyozasa),
NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek),
LezartOsztalyCsoportok = lezartOsztalyokEsBontottCsoportjaik,
};
return model;
}
private static int GetKeresoAdatTipus()
{
int keresoAdatTipus;
if (ClaimData.IsSzuperOsztalyfonok)
{
keresoAdatTipus = (int)SystemSettingsMagatartasSzorgalomKeresesSzuroEnum.Mindenki;
}
else if (ClaimData.IsOnlyTanar)
{
keresoAdatTipus = (int)SystemSettingsMagatartasSzorgalomKeresesSzuroEnum.TTF;
}
else
{
keresoAdatTipus = (int)SystemSettingsMagatartasSzorgalomKeresesSzuroEnum.Osztalyfonok;
}
return keresoAdatTipus;
}
private List<SelectListItem> GetTipusList(bool isTanarEvkozi = false)
{
var enumList = new List<ErtekelesTipusEnum>
{
ErtekelesTipusEnum.evkozi_jegy_ertekeles
};
//NOTE: Ha szaktanárok is adhatnak m/sz-at (rendszerbeállítás), akkor nekik csak évközi típus engedélyezett.
if (!isTanarEvkozi)
{
List<int> egyszerAdhatoErtekelesTipusIds = EnumExtensions.GetErtekelesTipusDictionaryItems(ClaimData.SelectedTanevID.Value, true).Select(x => x.Id).ToList();
enumList.AddRange(egyszerAdhatoErtekelesTipusIds.Select(egyszerAdhatoErtekelesTipusId => (ErtekelesTipusEnum)egyszerAdhatoErtekelesTipusId));
}
IDictionary<string, string> enumItemDictironaryToSelectList = enumList.EnumItemListToDictionary(ClaimData.SelectedTanevID.Value);
List<SelectListItem> result = enumItemDictironaryToSelectList.ToSelectListItemList();
return result;
}
private static IEnumerable<ExtraDataComboBoxListItem> GetOsztalyCsoportListByFoglalkozas()
{
var osztalyCsoportHelper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType());
return osztalyCsoportHelper.GetOsztalyCsoportByFoglalkozasForDropDownList();
}
private List<SelectListItem> GetMagatartasErtekList()
{
var result = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.MagatartasErtekelesTipus, ClaimData.SelectedTanevID.Value).ToSelectListItemList();
return result;
}
private List<SelectListItem> GetSzorgalomErtekList()
{
var result = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.SzorgalomErtekelesTipus, ClaimData.SelectedTanevID.Value).ToSelectListItemList();
return result;
}
private List<SelectListItem> GetMagatartasSzorgalomKeresoSzuroList(int magatartasSzorgalomKeresoAdatTipus)
{
if (magatartasSzorgalomKeresoAdatTipus == (int)SystemSettingsMagatartasSzorgalomKeresesSzuroEnum.Osztalyfonok)
{
return new List<SelectListItem>();
}
var removeTipusList = new List<string>();
if (magatartasSzorgalomKeresoAdatTipus == (int)SystemSettingsMagatartasSzorgalomKeresesSzuroEnum.Mindenki && ClaimData.IsOnlyTanar)
{
removeTipusList.Add(((int)MagatartasSzorgalomKeresoSzuroEnum.Osztalyfonok).ToString());
}
else if (magatartasSzorgalomKeresoAdatTipus == (int)SystemSettingsMagatartasSzorgalomKeresesSzuroEnum.TTF)
{
removeTipusList.Add(((int)MagatartasSzorgalomKeresoSzuroEnum.Mindenki).ToString());
if (ClaimData.IsOnlyTanar)
{
removeTipusList.Add(((int)MagatartasSzorgalomKeresoSzuroEnum.Osztalyfonok).ToString());
}
}
else if (magatartasSzorgalomKeresoAdatTipus == (int)SystemSettingsMagatartasSzorgalomKeresesSzuroEnum.Osztalyfonok)
{
removeTipusList.Add(((int)MagatartasSzorgalomKeresoSzuroEnum.Mindenki).ToString());
removeTipusList.Add(((int)MagatartasSzorgalomKeresoSzuroEnum.Osztalyfonok).ToString());
}
var result = FrameworkEnumExtensions.EnumToListManual<MagatartasSzorgalomKeresoSzuroEnum>().ToSelectListItemList(removeTipusList);
return result;
}
}
}

View file

@ -0,0 +1,34 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
public class NaploEllenorzesController : Controller
{
// GET: TanuloErtekeles/NaploEllenorzes
public ActionResult Index()
{
NaploEllenorzesKeresoModel model = new NaploEllenorzesKeresoModel();
if (ClaimData.FelhasznaloSzerepkorok.ContainsKey(SzerepkorTipusEnum.Naplo))
{
model.OsztalyId = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyfonokElsonekMegtalaltOsztalya(ClaimData.FelhasznaloId);
}
return View("Index", model);
}
public ActionResult NaploEllenorzesDetailGrid(NaploEllenorzesGridModel model)
{
return PartialView("NaploEllenorzesDetail_Partial", model);
}
}
}

View file

@ -0,0 +1,23 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.TanuloErtekeles.Models;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue)]
public class OsztalyzatokController : Controller
{
public ActionResult Index()
{
OsztalyzatokRequestModel model = new OsztalyzatokRequestModel();
model.OktatasNevelesiFeladatIdList = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloOktatasiNevelesiFeladatIdList(ClaimData.FelhasznaloId);
model.IsOsztalyAtlagMegjelenik = true;
return View(model);
}
}
}

View file

@ -0,0 +1,50 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Helpers;
using Kreta.Web.Models;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue)]
public class OsztalyzatokEvvegiErtesitoController : Controller
{
[MvcRolePackageAuthorize(KretaClaimPackages.EvvegiJegy.ClaimValue, KretaClaimPackages.EvvegiVegzosJegy.ClaimValue)]
public ActionResult Index()
{
var items = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloOsztalyDictionary(ClaimData.FelhasznaloId);
var list = new List<SelectListItem>();
foreach (var item in items)
{
list.Add(new SelectListItem
{
Value = item.Key,
Text = item.Value
});
}
int? osztalyId = null;
var firstOsztalyItem = list.FirstOrDefault();
if (firstOsztalyItem != null)
{
osztalyId = int.Parse(firstOsztalyItem.Value);
}
var tanuloCo = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloiAdatok(ClaimData.FelhasznaloId, kovTanevId: null, ClaimData.IsSelectedTanev20_21OrLater, ClaimData.IsSelectedTanev21_22OrLater, osztalyId);
var model = new OsztalyzatokFeleviEvvegiErtesitoModel
{
OsztalyId = osztalyId,
OsztalyList = list,
ZaradekModel = tanuloCo.Zaradek.TanuloCsoportId.HasValue ? new ZaradekModel(tanuloCo.Zaradek.TanuloCsoportId.Value, tanuloCo.ID) : new ZaradekModel()
};
return View("Index", model);
}
}
}

View file

@ -0,0 +1,46 @@
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
using Kreta.BusinessLogic.Helpers;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Helpers;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue)]
public class OsztalyzatokFeleviErtesitoController : Controller
{
[MvcRolePackageAuthorize(KretaClaimPackages.FeleviJegy.ClaimValue)]
public ActionResult Index()
{
Dictionary<string, string> items = new TanuloHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetTanuloOsztalyDictionary(ClaimData.FelhasznaloId);
var list = new List<SelectListItem>();
foreach (KeyValuePair<string, string> item in items)
{
list.Add(new SelectListItem
{
Value = item.Key,
Text = item.Value
});
}
int? osztalyId = null;
SelectListItem firstOsztalyItem = list.FirstOrDefault();
if (firstOsztalyItem != null)
{
osztalyId = int.Parse(firstOsztalyItem.Value);
}
OsztalyzatokFeleviEvvegiErtesitoModel model = new OsztalyzatokFeleviEvvegiErtesitoModel
{
OsztalyId = osztalyId,
OsztalyList = list
};
return View("Index", model);
}
}
}

View file

@ -0,0 +1,54 @@
using System.Collections.Generic;
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Enums;
using Kreta.KretaServer.SystemSettings;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageAuthorize(KretaClaimPackages.Tanulo.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Adminisztrator.ClaimValue)]
public class TanuloErtekelesByTanuloController : BaseTanuloErtekelesController
{
public List<TanuloErtekelesByTanuloListModel> PartialViewModel(int? tanuloId, string namePrefix = null, List<int> oktatasiNevelesiFeladatIds = null, bool isOsztalyAtlagMegjelenik = false)
{
var model = new List<TanuloErtekelesByTanuloListModel>();
if (oktatasiNevelesiFeladatIds == null || oktatasiNevelesiFeladatIds.Count < 1)
{
return model;
}
bool isJegyekAtlagaMegjelenik = SystemSettingsManager.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Ertekelesnel_a_naplojegyek_atlaga_megjelenik, ClaimData.IntezmenyAzonosito, ClaimData.SelectedTanevID.Value);
bool isOsztalyAtlagMegjelenikSystemSetting = SystemSettingsManager.GetSystemSettingValue<bool>(RendszerBeallitasTipusEnum.Osztalyatlag_megjelenitese_az_ellenorzo_feluleten, ClaimData.IntezmenyAzonosito, ClaimData.SelectedTanevID.Value);
foreach (int oktatasiNevelesiFeladatId in oktatasiNevelesiFeladatIds)
{
string feladatNamePrefix = namePrefix + oktatasiNevelesiFeladatId;
model.Add(new TanuloErtekelesByTanuloListModel
{
// TODO: jó lenne, ha egyértelműen látszódna a tényleges logika az IsNullOrWhiteSpace helyett
NamePrefix = string.IsNullOrWhiteSpace(feladatNamePrefix) ? "DefaultByTanulo" : feladatNamePrefix,
IsJegyekAtlagaMegjelenik = isJegyekAtlagaMegjelenik,
IsOsztalyAtlagMegjelenik = isOsztalyAtlagMegjelenikSystemSetting && isOsztalyAtlagMegjelenik,
TanuloId = tanuloId,
OktatasiNevelesiFeladatId = oktatasiNevelesiFeladatId
});
}
return model;
}
public ActionResult TanuloErtekelesByTanuloGridDetail(TanuloErtekelesByTanuloDetailModel model, int oktatasiNevelesiFeladatId, string namePrefix = null)
{
// TODO: jó lenne, ha egyértelműen látszódna a tényleges logika az IsNullOrWhiteSpace helyett
model.NamePrefix = string.IsNullOrWhiteSpace(namePrefix) ? "DefaultByTanulo" : namePrefix;
model.OktatasiNevelesiFeladatId = oktatasiNevelesiFeladatId;
return PartialView("GridDetail", model);
}
}
}

View file

@ -0,0 +1,22 @@
using System.Web.Mvc;
using Kreta.BusinessLogic.Security;
using Kreta.Web.Areas.TanuloErtekeles.Models.TanuloErtekeles;
using Kreta.Web.Security;
namespace Kreta.Web.Areas.TanuloErtekeles.Controllers
{
[MvcRoleClaimsAuthorize(true)]
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
public class TanuloErtekelesKeresoController : BaseTanuloErtekelesKeresoController
{
public ActionResult Index()
{
var model = new TanuloErtekelesListModel
{
FeladatEllatasiHelyIdSearch = ClaimData.FelhelySzuro
};
return View("Index", model);
}
}
}