kreta/KretaWeb/Areas/Tanar/Views/Fogadoora/FogadooraKereso.cshtml
2024-03-13 00:33:46 +01:00

183 lines
No EOL
9.5 KiB
Text

@using Kreta.Enums.ManualEnums
@using Kreta.Framework
@using Kreta.Resources
@using Kreta.Web.Helpers;
@using Kreta.Web.Helpers.Grid;
@using Kreta.Web.Areas.Tanar.Models;
@using Kreta.Web.Security;
@model FogadooraSearchModel
@{
Layout = "~/Views/Shared/_MasterLayout.cshtml";
}
@section AddSearchPanel {
@using (Html.SearchPanelSideBar("searchForm", "FogadooraGrid"))
{
@Html.KretaComboBoxFor(x => x.FeladatKategoriaId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "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(m => m.IdopontTolSrc, m => m.IdopontIgSrc)
@Html.KretaRangeTimePickerSideBar(m => m.IdointervallumTolSrc, m => m.IdointervallumIgSrc, interval: 30)
@Html.KretaComboBoxFor(x => x.OsztalyCsoportIdSrc, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyCsoportListByEvfolyam" })).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.TeremIdSrc, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTeremList" })).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.TanarIdSrc, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetPedagogusListByTanev" })).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.TipusIdSrc, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetFogadooraTipusEnumList" })).RenderSearchPanelSideBar()
@Html.KretaComboBoxFor(x => x.RendszeressegIdSrc, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetFogadooraRendszeressegEnumList" })).RenderSearchPanelSideBar()
}
}
<div>
@(
Html.KretaGrid<FogadooraGridModel>
(
"FogadooraGrid",
new GridApiUrl("FogadooraApi", "GetFogadooraGridForAdmin", new Dictionary<string, string>()),
dataParameterFunction: "searchForm",
allowExcelExport: true,
excelExportFileName: "Fogadoora",
exportColumnUrl: @Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { Controller = "FogadooraApi", Action = "GetExportColumnsForAdmin" }),
exportDataUrl: @Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { Controller = "FogadooraApi", Action = "GetFogadooraGridForAdminExport" }),
sort: sort =>
{
sort.Add(m => m.FogadooraKezdete).Ascending();
}
)
.Columns(columns =>
{
columns.Bound(c => c.OsztalyCsoport);
columns.Bound(c => c.Terem);
columns.Bound(c => c.FogadooraKezdete);
columns.Bound(c => c.FogadooraVege);
columns.Bound(c => c.Pedagogus);
columns.Bound(c => c.RendszeressegId).SetDisplayProperty("Rendszeresseg");
columns.Bound(c => c.JelentkezesekKezeleseId).SetDisplayProperty("JelentkezesekKezelese");
columns.Bound(c => c.JelentkezesekSzama).ClientTemplate("<div style=\"text-align: center\">#= JelentkezesekSzama #</div>");
})
.RowFunction(Html, new List<RowFunction>
{
new RowFunction { Name = TanuloResource.Adatok, ClientAction= "FogadooraHelper.openJelentkezettGondviselokWindow", IconEnum = GridRowFunctionIconEnum.Adatok },
})
.RowFunction(Html, new List<RowFunction> {
new RowFunction { Name = FogadooraResource.FogadooraLetoltesPdf, ClientAction= "FogadooraHelper.fogadooraLetoltesPdf", IconEnum = GridRowFunctionIconEnum.Pdf },
new RowFunction { Name = FogadooraResource.FogadooraLetoltesWord, ClientAction= "FogadooraHelper.fogadooraLetoltesWord", IconEnum = GridRowFunctionIconEnum.Word }
})
.ConditionalRowFunction(Html, new List<RowFunction>
{
new RowFunction { Name = TanuloResource.Torles, ClientAction= "FogadooraHelper.deleteFogadooraConfirmWindow", IconEnum = GridRowFunctionIconEnum.Torles }
}, "FogadooraHelper.isTorolhetoModosithato")
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.MultipleColumn))
)
</div>
<script type="text/javascript">
$(document).ready(function () {
if (!CommonUtils.isNullOrUndefined("@ClaimData.FelhelySzuro") && !CommonUtils.isNullOrUndefined($("#FeladatEllatasiHelyId").data("kendoComboBox"))) {
$("#FeladatEllatasiHelyId").data("kendoComboBox").value("@ClaimData.FelhelySzuro");
}
});
var FogadooraHelper = (function() {
var fogadooraHelper = function() {};
var rowId = -1;
var searchFormName = "searchForm";
var gridName = "FogadooraGrid";
var url = {
DeleteTanulo:
"@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "FogadooraApi", action = "DeleteFogadooraById" })",
OpenDetailPopUp:
"@Url.Action("OpenFogadooraJelentkezettGondviselokPopupp", Constants.Controllers.Fogadoora, new { area = Constants.Areas.Tanar })",
isFogadooraJelentkezettGondviselok:
"@Url.HttpRouteUrl("ActionApi", new { controller = "FogadooraApi", action = "IsFogadooraJelentkezettGondviselok" })",
FogadooraLetoltesPdf:
"@Url.Action("FogadooraLetoltesPdf", Constants.Controllers.Fogadoora, new { area = Constants.Areas.Tanar })",
FogadooraLetoltesWord:
"@Url.Action("FogadooraLetoltesWord", Constants.Controllers.Fogadoora, new { area = Constants.Areas.Tanar })"
}
fogadooraHelper.deleteFogadooraConfirmWindow = function (rowData) {
rowId = rowData.ID;
AjaxHelper.DoGet(url.isFogadooraJelentkezettGondviselok, { id: rowData.ID, modositasiIdoszakTipus: @((int)OraModositasiIdoszakTipus.EgyOra) }, isBiztosanTorliPopUp);
}
fogadooraHelper.isTorolhetoModosithato = function (rowData) {
return rowData.isTorolhetoModosithato_BOOL;
}
function deleteFogadooraResponseOk() {
KretaWindowHelper.successFeedBackWindow(KretaWindowHelper.destroyAllWindow);
KretaGridHelper.refreshGridSearchPanel(gridName, searchFormName);
}
function deleteFogadoora(data) {
AjaxHelper.DoPost(url.DeleteTanulo, data, deleteFogadooraResponseOk);
KretaGridHelper.refreshGridSearchPanel(gridName, searchFormName);
}
function isBiztosanTorliPopUp(data) {
if (data === true) {
KretaWindowHelper.confirmWindow("@(StringResourcesUtil.GetString(368)/*Figyelmeztetés*/)",
"@(ErrorResource.FogadooraraVanJelentkezettGondviseloBiztosanTorliE/*Biztosan törölni szeretné?*/)",
function() {
deleteFogadoora(rowId);
});
} else {
KretaWindowHelper.confirmWindow("@(StringResourcesUtil.GetString(368)/*Figyelmeztetés*/)",
"@(FogadooraResource.BiztosanToroliSzeretne/*Biztosan törölni szeretné?*/)",
function () {
deleteFogadoora(rowId);
});
}
}
fogadooraHelper.openJelentkezettGondviselokWindow = function (data) {
var postData = { FogadooraId: data.ID, handler: "FogadooraHelper" };
AjaxHelper.DoPost(url.OpenDetailPopUp, postData, popUpDetailWindow);
}
function popUpDetailWindow(data) {
var config = KretaWindowHelper.getWindowConfigContainer();
config.title = "@(FogadooraResource.FogadooraraJelentkezettGondviselok)";
config.content = data;
var modal = KretaWindowHelper.createWindow("detailJelentkezettGondviselokWindow", config);
KretaWindowHelper.openWindow(modal, true);
}
fogadooraHelper.detailJelentkezettGondviselokCancel = function () {
KretaWindowHelper.destroyWindow("detailJelentkezettGondviselokWindow");
}
fogadooraHelper.fogadooraLetoltesPdf = function (data) {
var postData = { fogadooraId: data.ID };
AjaxHelper.DoPost(url.FogadooraLetoltesPdf, postData, savePdfFile);
}
fogadooraHelper.fogadooraLetoltesWord = function (data) {
var postData = { fogadooraId: data.ID };
AjaxHelper.DoPost(url.FogadooraLetoltesWord, postData, saveWordFile);
}
function savePdfFile(fileContent) {
var dataURI = "data:@(Kreta.Core.Constants.ContentTypes.Pdf);base64," + fileContent;
kendo.saveAs({
dataURI: dataURI,
fileName: "@(FogadooraResource.FogadooraFileNamePart)" + new Date().toLocaleDateString().replace(".", "_") + ".pdf",
});
setTimeout(AjaxHelper.HideIndicator(), 2000);
}
function saveWordFile(fileContent) {
var dataURI = "data:@(Kreta.Core.Constants.ContentTypes.Doc);base64," + fileContent;
kendo.saveAs({
dataURI: dataURI,
fileName: "@(FogadooraResource.FogadooraFileNamePart)" + new Date().toLocaleDateString().replace(".", "_") + ".doc",
});
setTimeout(AjaxHelper.HideIndicator(), 2000);
}
return fogadooraHelper;
})();
</script>