kreta/KretaWeb/Areas/TanuloErtekeles/Views/FeljegyzesKereso/Index.cshtml
2024-03-13 00:33:46 +01:00

182 lines
No EOL
9.5 KiB
Text

@using Kreta.BusinessLogic.Classes
@using Kreta.Enums.ManualEnums
@using Kreta.Framework
@using Kreta.Resources
@using Kreta.Web.Areas.TanuloErtekeles.Controllers
@using Kreta.Web.Areas.TanuloErtekeles.Models
@using Kreta.Web.Helpers.Grid
@using Kreta.Web.Security
@model FeljegyzesKeresoModel
@section AddCss {
@Styles.Render(Constants.General.FeljegyzesekCSS)
}
@{
var gridName = FeljegyzesKeresoController.GridName;
var searchFormName = FeljegyzesKeresoController.SearchFormName;
var infoPopUpId = FeljegyzesKeresoController.InfoPopUpId;
}
@section AddSearchPanel {
@using (Html.SearchPanelSideBar(searchFormName, gridName))
{
if (!Model.IsFromSzervezet)
{
if (ClaimData.IsVegyes)
{
@Html.KretaComboBoxFor(x => x.FeladatKategoriaId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = "GetFeladatKategoriaSzuro" }), "Text", "Value").AutoBind(true).RenderSearchPanelSideBar()
}
@Html.KretaComboBoxFor(x => x.FeladatEllatasiHelyId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = "GetFeladatEllatasiHelyList" })).RenderSearchPanelSideBar()
}
@Html.KretaRangeDatePickerSideBar(x => x.DatumTOL, x => x.DatumIG)
@Html.KretaComboBoxFor(x => x.TanuloID, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = "GetTanuloComboBoxListItemList", szervezetTipusEnumId = (int?)Model.SzervezetTipusEnum })).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.OsztalyId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = Model.IsFromSzervezet ? "GetOsztalyCsoportDualisListByEvfolyam" : "GetOsztalyListByEvfolyam" }), useGroup: !Model.IsFromSzervezet).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.FeljegyzoID, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = "GetAlkalmazottComboBoxListItemList", szervezetTipusEnumId = (int?)Model.SzervezetTipusEnum })).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.TipusID, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Model.ApiControllerName, action = "GetFeljegyzesTipusList" }), "Text", "Value").RenderSearchPanelSideBar()
@Html.KretaTextBoxFor(x => x.FeljegyzesSzovege).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.OsztalyCsoportID, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = Model.IsFromSzervezet ? "GetOsztalyCsoportDualisListByEvfolyam" : "GetOsztalyCsoportListByEvfolyam" }), useGroup: !Model.IsFromSzervezet).RenderSearchPanelSideBar()
if (!Model.IsFromSzervezet)
{
@Html.KretaCheckBoxFor(x => x.IsKellKapcsolodoCsoportok).RenderSearchPanelSideBar()
}
@Html.KretaRangeDatePickerSideBar(x => x.RogzitesDatumTol, x => x.RogzitesDatumIg)
if (Model.IsFromSzervezet)
{
@Html.KretaTextBoxFor(x => x.SzervezetNevSzoveg).RenderSearchPanelSideBar()
@Html.KretaTextBoxFor(x => x.SzervezetAzonositoSzoveg).RenderSearchPanelSideBar()
}
@Html.HiddenFor(x => x.SzervezetId)
}
}
@{
List<RowFunction> conditionalRowFunctions = new List<RowFunction>
{
new RowFunction { NameResourceId = 118 /*Adatok*/, ClientAction = "FeljegyzesKeresoHelper.openFeljegyzesKeresoInfoPopUp", IconEnum = GridRowFunctionIconEnum.Adatok },
new RowFunction { NameResourceId = 117 /*Törlés*/, ClientAction = "FeljegyzesKeresoHelper.deleteFeljegyzesConfirmWindow", IconEnum = GridRowFunctionIconEnum.Torles }
};
List<FunctionCommand> nestedExportFunctions = new List<FunctionCommand>
{
new FunctionCommand { Name = ImportExportCommonResource.Export, ClientAction = "FeljegyzesKeresoHelper.getExport" }
};
if (!Model.IsFromSzervezet)
{
nestedExportFunctions.Add(new FunctionCommand { Name = FeljegyzesekResource.FeljegyzesExport, ClientAction = "FeljegyzesKeresoHelper.exportFeljegyzes" });
}
List<FunctionCommand> functions = new List<FunctionCommand>
{
new FunctionCommand { Name = TanuloResource.Export.ToUpper(), NestedCommands = nestedExportFunctions }
};
}
<div>
@(
Html.KretaGrid<FeljegyzesKeresoGridModel>(
gridName,
new GridApiUrl(Model.ApiControllerName, "GetFeljegyzesKeresoGrid"),
allowScrolling: true,
dataParameterFunction: searchFormName,
sort: sort => sort.Add(m => m.Datum).Descending()
)
.Columns(columns =>
{
columns.Bound(c => c.TanuloNevElotagNelkul).Width("15%").SetDisplayProperty("TanuloNev");
columns.Bound(c => c.OsztalyNev).Width("10%").SetDisplayProperty("OsztalyNev");
columns.Bound(c => c.Datum).Width("10%").Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]);
columns.Bound(c => c.TipusNev).Width("10%").SetDisplayProperty("TipusNev");
columns.Bound(c => c.Tartalom).SetDisplayPropertyWithToolip("Tartalom").Sortable(false);
columns.Bound(c => c.OsztalyCsoportNev).Width("10%").SetDisplayProperty("OsztalyCsoportNev");
columns.Bound(c => c.FeljegyzesRogzitesenekDatuma).Width("10%").Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]);
columns.Bound(c => c.FeljegyzoNevElotagNelkul).Width("15%").SetDisplayProperty("FeljegyzoNev");
})
.ConditionalRowFunction(Html, conditionalRowFunctions, "FeljegyzesKeresoHelper.setRowEditing")
.FunctionCommand(Html, functions)
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.MultipleColumn))
)
</div>
<script type="text/javascript">
$(document).ready(function() {
var isFromSzervezet = CommonUtils.parseBool("@Model.IsFromSzervezet");
if (!CommonUtils.isNullOrUndefined("@ClaimData.FelhelySzuro") &&
!CommonUtils.isNullOrUndefined($("#FeladatEllatasiHelyId").data("kendoComboBox")) &&
!isFromSzervezet) {
$("#FeladatEllatasiHelyId").data("kendoComboBox").value("@ClaimData.FelhelySzuro");
}
});
var FeljegyzesKeresoHelper = (function() {
var feljegyzesKeresoHelper = function() {};
var gridName = "@gridName";
var searchFormName = "@searchFormName";
var infoPopUpId = "@infoPopUpId";
var url = {
OpenFeljegyzesKeresoInfoPopUp: "@Url.Action("OpenFeljegyzesKeresoInfoPopUp", Model.ControllerName, new { area = "TanuloErtekeles" })",
GetExportFeljegyzesek: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Model.ApiControllerName, action = "GetExportFeljegyzesek" })",
GetExportFeljegyzesekGrid: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Model.ApiControllerName, action = "GetExportFeljegyzesekGrid" })",
DeleteFeljegyzes: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Model.ApiControllerName, action = "DeleteFeljegyzes" })"
}
feljegyzesKeresoHelper.setRowEditing = function(rowData) {
return rowData.FeljegyzoNev != "@Html.Raw(Kreta.Core.Constants.SpecialUserName.Rendszeruzenet)";
}
feljegyzesKeresoHelper.openFeljegyzesKeresoInfoPopUp = function (rowData) {
var postData = { feljegyzesId: rowData.ID, tanuloId: rowData.TanuloId, osztalyId: rowData.OsztalyCsoportId };
AjaxHelper.DoGet(url.OpenFeljegyzesKeresoInfoPopUp, postData, popUpInfoWindow);
}
feljegyzesKeresoHelper.feljegyzesKeresoInfoPopUpCancel = function () {
KretaWindowHelper.destroyWindow(infoPopUpId);
}
feljegyzesKeresoHelper.deleteFeljegyzesConfirmWindow = function(rowData) {
KretaWindowHelper.confirmWindow("@(CommonResource.Kerdes)", "@(CommonResource.BiztosanTorli)", deleteFeljegyzes, rowData.ID);
}
feljegyzesKeresoHelper.exportFeljegyzes = function () {
KretaGridHelper.getExportBySearchForm(gridName, url.GetExportFeljegyzesek, searchFormName);
}
feljegyzesKeresoHelper.getExport = function() {
KretaGridHelper.getExportBySearchForm(gridName, url.GetExportFeljegyzesekGrid, searchFormName);
}
function popUpInfoWindow(data) {
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@(StringResourcesUtil.GetString(1733))"; /*Feljegyzés adatai*/
config.content = data;
var modal = KretaWindowHelper.createWindow(infoPopUpId, config);
KretaWindowHelper.openWindow(modal, true);
}
function deleteFeljegyzes(data) {
AjaxHelper.DoPost(url.DeleteFeljegyzes, data, deleteSuccessCallBack, errorCallBack);
}
function deleteSuccessCallBack() {
KretaWindowHelper.successFeedBackWindow(KretaWindowHelper.destroyAllWindow);
KretaGridHelper.refreshGridSearchPanel(gridName, searchFormName);
}
function errorCallBack() {
var content = "@(StringResourcesUtil.GetString(367 /*Hiba*/))";
KretaWindowHelper.feedbackWindow("@(StringResourcesUtil.GetString(367))" /*Hiba*/, content, true, KretaWindowHelper.destroyAllWindow);
}
return feljegyzesKeresoHelper;
})();
</script>