init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue