267 lines
13 KiB
Text
267 lines
13 KiB
Text
@using Kreta.Framework
|
|
@using Kreta.Resources
|
|
@using Kreta.Web.Helpers.Grid
|
|
@using Kreta.Web.Areas.Intezmeny.Models
|
|
@model CsengetesiRendGridModel
|
|
|
|
<style type="text/css">
|
|
#CsengetesiRendGrid .rowFunction {
|
|
width: 105px;
|
|
}
|
|
</style>
|
|
|
|
<div>
|
|
@(
|
|
Html.KretaGrid<CsengetesiRendGridModel>
|
|
(
|
|
name: "CsengetesiRendGrid",
|
|
getUrl: new GridApiUrl("CsengetesiRendApi", "GetCsengetesiRendGrid", new Dictionary<string, string>() { })
|
|
)
|
|
.Columns(columns =>
|
|
{
|
|
columns.Bound(c => c.Nev);
|
|
columns.Bound(c => c.IsAktivText);
|
|
})
|
|
.RowFunction(Html, new List<RowFunction>
|
|
{
|
|
new RowFunction { NameResourceId = 116/*Módosítás*/, ClientAction = "CsengRendHelper.openCsengRendModositUj", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Modositas },
|
|
new RowFunction { NameResourceId = 118 /*Adatok*/ , ClientAction = "CsengRendHelper.openCsengRendAdatok", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Adatok },
|
|
new RowFunction { NameResourceId = 3805 /*Aktivál*/, ClientAction = "CsengRendHelper.setCsengRendToAktivConfirmWindow", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Aktival },
|
|
new RowFunction { NameResourceId = 117 /*Törlés*/ , ClientAction = "CsengRendHelper.openCsengRendTorles", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Torles }
|
|
})
|
|
.FunctionCommand(Html, new List<FunctionCommand>
|
|
{
|
|
new FunctionCommand {NameResourceId = 115 /*Új*/, ClientAction = "CsengRendHelper.openCsengRendModositUj" },
|
|
new FunctionCommand {Name = ImportExportCommonResource.Export, ClientAction = "CsengRendHelper.getExport" }
|
|
})
|
|
.Sortable(sortable => sortable
|
|
.AllowUnsort(true)
|
|
.SortMode(GridSortMode.MultipleColumn))
|
|
)
|
|
</div>
|
|
|
|
<script type="text/javascript">
|
|
var CsengRendHelper = (function () {
|
|
var csengRendHelper = function () { };
|
|
|
|
var gridName = "CsengetesiRendGrid";
|
|
var partialGridName = "CsengetesiRendOraGrid";
|
|
|
|
var url = {
|
|
OpenCsengetesiRendAdatokPopup: "@Url.Action("OpenCsengetesiRendAdatokTab", "CsengetesiRend", new {area = "Intezmeny" })",
|
|
OpenCsengRendModositUjPopup: "@Url.Action("OpenCsengRendModositUjPopup", "CsengetesiRend", new { area = "Intezmeny" })",
|
|
OpenCsengRendTorlesPopup: "@Url.Action("OpenCsengRendTorlesPopup", "CsengetesiRend", new { area = "Intezmeny" })",
|
|
MentesUjModositottCsengRend: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "CsengetesiRendApi", action = "MentesUjModositottCsengRend" })",
|
|
CsengRendTorles: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "CsengetesiRendApi", action = "CsengRendTorles" })",
|
|
CsengRendAktival: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "CsengetesiRendApi", action = "SetCsengetesiRendAktiv" })",
|
|
CsengetesiRendDetails: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "CsengetesiRendApi", action = "CsengetesiRendDetails" })",
|
|
CsengRendTorlesValidacio: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "CsengetesiRendApi", action = "CsengetesiRendValidacio" })",
|
|
CsengRendUpdateAndDel: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "CsengetesiRendApi", action = "CsengetesiRendUpdateAndDel" })",
|
|
GetExport: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.CsengetesiRendApi, action = "GetExport" })"
|
|
}
|
|
|
|
//Adatok popup
|
|
|
|
csengRendHelper.openCsengRendAdatok = function (rowData) {
|
|
if (rowData.ID) {
|
|
AjaxHelper.DoGet(url.OpenCsengetesiRendAdatokPopup, { CsRendID: rowData.ID }, popUpCsengRendProperties);
|
|
}
|
|
}
|
|
|
|
function popUpCsengRendProperties(data) {
|
|
var config = KretaWindowHelper.getWindowConfigContainer();
|
|
config.title = "@(StringResourcesUtil.GetString(3830))"; /*Csengetési rend adatok*/
|
|
config.content = data;
|
|
config.maxWidth = "960px";
|
|
config.height = "500px";
|
|
var modal = KretaWindowHelper.createWindow("CsengRendAdatokWindow", config);
|
|
KretaWindowHelper.openWindow(modal, true);
|
|
}
|
|
|
|
csengRendHelper.adatokCancel = function () {
|
|
KretaWindowHelper.destroyWindow("CsengRendAdatokWindow");
|
|
}
|
|
|
|
//Módosítás/új
|
|
|
|
csengRendHelper.modifyAddSave = function () {
|
|
var preSaveWarrning = false;
|
|
var rows = KretaGridHelper.getAllRows(partialGridName);
|
|
if (checkNev() && checkData(rows.length)) {
|
|
var rowsData = [rows.length];
|
|
var csengetesiRendModel = { CsengRendID: $('#ID').val(), CsengRendNev: $('#Nev').val(), CsengRendAktiv: $('#Aktiv').val(), Orak: [], IsVisszamenoleges: $("#IsVisszamenoleges").prop('checked') }
|
|
|
|
$.each(rows, function (index, value) {
|
|
csengetesiRendModel.Orak.push({ Oraszam: value.Oraszam, Kezd: value.ki_Kezdete, Veg: value.ki_Vege, ID: value.CsengetesiRendOraId, Aktiv: value.ki_Aktiv });
|
|
if (!preSaveWarrning && ((value.ki_Kezdete != null || value.ki_Vege != null) && value.ki_Aktiv == false)) {
|
|
preSaveWarrning = true;
|
|
}
|
|
});
|
|
|
|
if (preSaveWarrning) {
|
|
KretaWindowHelper.confirmWindow("@(StringResourcesUtil.GetString(160))", "@(CsengetesiRendResource.PreSaveMessage)", postData, csengetesiRendModel);
|
|
}
|
|
else {
|
|
postData(csengetesiRendModel);
|
|
}
|
|
}
|
|
}
|
|
|
|
function postData(csengetesiRendModel) {
|
|
AjaxHelper.DoValidationPost(url.MentesUjModositottCsengRend, "CsengRendForm", csengetesiRendModel, modifyAddSaveFeedBackOk);
|
|
}
|
|
|
|
function checkData(rowData) {
|
|
if (rowData == 0) {
|
|
KretaWindowHelper.warningWindow("@(CommonResource.Kotelezo)", "@(StringResourcesUtil.GetString(4190))" /*A mentéshez legalább egy csengetési rend óra felvétele kötelező!*/, 'undefined', "dataKotelezo");
|
|
return false;
|
|
}
|
|
else
|
|
return true;
|
|
}
|
|
|
|
function checkNev() {
|
|
if ($('#Nev').val() == "") {
|
|
KretaWindowHelper.warningWindow("@(CommonResource.Kotelezo)", "@(StringResourcesUtil.GetString(4189))" /*A csengetésirend név megadása kötelező!*/, 'undefined', "nevKotelezo");
|
|
return false;
|
|
}
|
|
else
|
|
return true;
|
|
}
|
|
|
|
csengRendHelper.openCsengRendModositUj = function (rowdata) {
|
|
AjaxHelper.DoGet(url.OpenCsengRendModositUjPopup, { CsengRendID: rowdata.ID }, popUpCsengRendModositUj);
|
|
}
|
|
|
|
csengRendHelper.openCsengRendTorles = function (rowdata) {
|
|
AjaxHelper.DoGet(url.CsengetesiRendDetails, { CsengRendID: rowdata.ID }, openCsengetesiRendWindow);
|
|
}
|
|
|
|
csengRendHelper.validationAndSaveCsengRend = function () {
|
|
var valaszottCsengRendId = $("#CsengetesiRendID").data("kendoComboBox").value();
|
|
var torlendoCsengRendId = $('#ID').val();
|
|
|
|
if (CommonUtils.isNullOrUndefined(valaszottCsengRendId) || valaszottCsengRendId < 1) {
|
|
KretaWindowHelper.warningWindow("@(CommonResource.Kotelezo)", "@(CsengetesiRendResource.NemValasztottCsengetesiRendet)");
|
|
}
|
|
else {
|
|
AjaxHelper.DoGet(url.CsengRendTorlesValidacio, { ValasztottCsengRendId: valaszottCsengRendId, TorlendoCsengRendId: torlendoCsengRendId }, confirmUpDateAndDelCsengRend);
|
|
}
|
|
|
|
}
|
|
|
|
function confirmUpDateAndDelCsengRend(data) {
|
|
var valaszottCsengRendId = $("#CsengetesiRendID").data("kendoComboBox").value();
|
|
var torlendoCsengRendId = $('#ID').val();
|
|
|
|
if (CommonUtils.isNullOrUndefined(valaszottCsengRendId) || valaszottCsengRendId < 1) {
|
|
KretaWindowHelper.warningWindow("@(CommonResource.Kotelezo)", "@(CsengetesiRendResource.NemValasztottCsengetesiRendet)");
|
|
}
|
|
else {
|
|
if (data == false) {
|
|
KretaWindowHelper.confirmWindow("@(CsengetesiRendResource.BiztosCserel)", "@(CsengetesiRendResource.NemEgyezikAzOraKezdetEsVeg)", upDateAndDelCsengRend);
|
|
}
|
|
else {
|
|
AjaxHelper.DoGet(url.CsengRendUpdateAndDel, { ValasztottCsengRendId: valaszottCsengRendId, TorlendoCsengRendId: torlendoCsengRendId }, deleteCsengRendFeedBackOk);
|
|
}
|
|
}
|
|
}
|
|
|
|
function upDateAndDelCsengRend() {
|
|
var valaszottCsengRendId = $("#CsengetesiRendID").data("kendoComboBox").value();
|
|
var torlendoCsengRendId = $('#ID').val();
|
|
|
|
AjaxHelper.DoGet(url.CsengRendUpdateAndDel, { ValasztottCsengRendId: valaszottCsengRendId, TorlendoCsengRendId: torlendoCsengRendId }, deleteCsengRendFeedBackOk);
|
|
|
|
}
|
|
|
|
function openCsengetesiRendWindow(data){
|
|
if (data.IsVanKapcsolodoOra == true) {
|
|
AjaxHelper.DoGet(url.OpenCsengRendTorlesPopup, { CsengRendID: data.ID }, popUpCsengRendTorles);
|
|
}
|
|
else {
|
|
KretaWindowHelper.confirmWindow("@(CommonResource.Kerdes)", "@(CommonResource.BiztosanTorli)", deleteCsengRend, { ID: data.ID, Aktiv: data.Aktiv });
|
|
}
|
|
|
|
}
|
|
|
|
csengRendHelper.csengRendTorlesCancel = function () {
|
|
KretaWindowHelper.destroyWindow("CsengRendTorles");
|
|
}
|
|
|
|
function popUpCsengRendTorles(data) {
|
|
var config = KretaWindowHelper.getWindowConfigContainer();
|
|
config.title = "@(CsengetesiRendResource.CsengRendTorlese)";
|
|
config.content = data;
|
|
config.height = "220px";
|
|
config.width = "500px";
|
|
config.closeFunction = csengRendHelper.modifyAddCancel;
|
|
var modal = KretaWindowHelper.createWindow("CsengRendTorles", config);
|
|
KretaWindowHelper.openWindow(modal, true);
|
|
}
|
|
|
|
function popUpCsengRendModositUj(data) {
|
|
var config = KretaWindowHelper.getWindowConfigContainer();
|
|
config.title = "@(StringResourcesUtil.GetString(1689))"; /*Csengetési rend adatai*/
|
|
config.content = data;
|
|
config.height = "600px";
|
|
config.closeFunction = csengRendHelper.modifyAddCancel;
|
|
var modal = KretaWindowHelper.createWindow("CsengRendModositUj", config);
|
|
KretaWindowHelper.openWindow(modal, true);
|
|
}
|
|
|
|
csengRendHelper.modifyAddCancel = function () {
|
|
KretaWindowHelper.destroyWindow("CsengRendModositUj");
|
|
}
|
|
|
|
function modifyAddSaveFeedBackOk() {
|
|
KretaWindowHelper.successFeedBackWindow(KretaWindowHelper.destroyAllWindow);
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
}
|
|
|
|
//Export
|
|
csengRendHelper.getExport = function () {
|
|
KretaGridHelper.getExport(gridName, url.GetExport)
|
|
}
|
|
|
|
//Törlés
|
|
|
|
function deleteCsengRend(data) {
|
|
AjaxHelper.DoPost(url.CsengRendTorles, data, deleteCsengRendFeedBackOk, FeedbackFail);
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
}
|
|
|
|
csengRendHelper.confirmCancel = function () {
|
|
KretaWindowHelper.destroyWindow("CsengRendDeleteConfirm");
|
|
}
|
|
|
|
function deleteCsengRendFeedBackOk() {
|
|
KretaWindowHelper.successFeedBackWindow(KretaWindowHelper.destroyAllWindow);
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
}
|
|
|
|
//Aktiválás
|
|
function aktivalCsengRend(data) {
|
|
AjaxHelper.DoPost(url.CsengRendAktival, data, aktivalCsengRendFeedBackOk, FeedbackFail);
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
}
|
|
|
|
csengRendHelper.setCsengRendToAktivConfirmWindow = function (rowData) {
|
|
KretaWindowHelper.confirmWindow("@(CommonResource.Kerdes)", "@(StringResourcesUtil.GetString(3806))" /*Biztosan aktiválja a kiválasztott csengetési rendet?*/, aktivalCsengRend, { ID: rowData.ID });
|
|
}
|
|
|
|
function aktivalCsengRendFeedBackOk() {
|
|
KretaWindowHelper.successFeedBackWindow(KretaWindowHelper.destroyAllWindow);
|
|
KretaGridHelper.refreshGrid(gridName);
|
|
}
|
|
|
|
//Hiba
|
|
function FeedbackFail(data) {
|
|
var message = data.responseJSON.Message;
|
|
KretaWindowHelper.feedbackWindow(Globalization.Hiba /*HIBA*/, message, true, KretaWindowHelper.destroyAllWindow);
|
|
}
|
|
|
|
return csengRendHelper;
|
|
})();
|
|
</script>
|
|
|