init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,419 @@
|
|||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Enums
|
||||
@using Kreta.Web.Areas.TanuloErtekeles.Controllers
|
||||
@using Kreta.Web.Helpers.Grid;
|
||||
@using Kreta.Web.Areas.TanuloErtekeles.Models
|
||||
@model ErettsegiEredmenyekModel
|
||||
|
||||
@{
|
||||
string startPopupFormName = ErettsegiEredmenyekController.StartPopupFormName;
|
||||
string startPopupId = ErettsegiEredmenyekController.StartPopupId;
|
||||
|
||||
string gridName = ErettsegiEredmenyekController.GridName;
|
||||
}
|
||||
|
||||
@{
|
||||
|
||||
var functionCommandList = new List<FunctionCommand>
|
||||
{
|
||||
new FunctionCommand { Name = CommonResource.Mentes, ClientAction = "ErettsegiEredmenyekDetailHelper.save" },
|
||||
new FunctionCommand { Name = CommonResource.Elolrol, ClientAction = "ErettsegiEredmenyekHelper.openStartWindow", Classes = "kendo-gridFunctionKommandRed elolrol" },
|
||||
new FunctionCommand { Classes = "infoText clearFunctionCommand" }
|
||||
};
|
||||
|
||||
var grid = Html.KretaGrid<ErettsegiEredmenyekGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl("ErettsegiEredmenyekApi", "GetErettsegiEredmenyekGrid"),
|
||||
dataBoundAdditionalFunction: "ErettsegiEredmenyekHelper.dataBoundAdditionalFunction();",
|
||||
clientTemplate: "detailGrid-template",
|
||||
clientTemplateUrl: Url.Action("ErettsegiEredmenyekDetailGrid", "ErettsegiEredmenyek", new { area = "TanuloErtekeles", osztalyCsoportId = Model.OsztalyId }),
|
||||
clientTemplateWholeDataRow: true,
|
||||
readDataFunction: "ErettsegiEredmenyekHelper.getStartModelData",
|
||||
allowFilterable: false,
|
||||
allowPaging: false,
|
||||
allowScrolling: true,
|
||||
pageSizes: null,
|
||||
sort: sort => sort.Add(s => s.TanuloNev).Ascending()
|
||||
)
|
||||
|
||||
.Sortable(sortable => sortable
|
||||
.AllowUnsort(true)
|
||||
.SortMode(GridSortMode.MultipleColumn))
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(m => m.ID).Hidden();
|
||||
columns.Bound(m => m.IsVegzos_BOOL).Hidden();
|
||||
columns.Bound(m => m.TanuloNev).HeaderHtmlAttributes(new { @class = "nevWidth" }).ClientTemplate(@"
|
||||
<a class='kendoTooltip erettsegiEredmenyekTanuloNevKendoTooltip gridLinkButton defaultCursor'
|
||||
data-osztaly='#: OsztalyNev #'
|
||||
data-anyjaneve='#: AnyjaNeve #'
|
||||
data-szuletesiido='#: SzuletesiIdoFormatted #'
|
||||
>#: TanuloNev #</a>");
|
||||
columns.Bound(m => m.SzuletesiIdo).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]);
|
||||
columns.Bound(m => m.AnyjaNeve);
|
||||
columns.Bound(m => m.OMAzonosito);
|
||||
columns.Bound(m => m.MentettErettsegikSzama);
|
||||
})
|
||||
.FunctionCommand(Html, functionCommandList);
|
||||
}
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
||||
|
||||
<div>
|
||||
@Html.KretaGridTemplate("detailGrid-template")
|
||||
</div>
|
||||
|
||||
@Html.KretaTooltipTemplate("kendoTooltip-erettsegiEredmenyekTanuloNevKendoTooltip",
|
||||
@"<div class='kendoTooltip'>
|
||||
<table>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Osztály:</b></td>
|
||||
<td>#:target.data('osztaly')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Anyja neve:</b></td>
|
||||
<td>#:target.data('anyjaneve')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Születési idő:</b></td>
|
||||
<td>#:target.data('szuletesiido')#</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>")
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
var ErettsegiEredmenyekHelper = (function () {
|
||||
var erettsegiEredmenyekHelper = function () { };
|
||||
|
||||
var startPopupFormName = "@startPopupFormName";
|
||||
var startPopupId = "@startPopupId";
|
||||
erettsegiEredmenyekHelper.startModel = null;
|
||||
var openedDetailGridData = [];
|
||||
|
||||
var gridName = "@gridName";
|
||||
|
||||
var tempRowId = 0;
|
||||
|
||||
var url = {
|
||||
OpenStartPopup: "@Url.Action("OpenStartPopup", "ErettsegiEredmenyek", new {area = "TanuloErtekeles" })",
|
||||
SaveErettsegiEredmenyList: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ErettsegiEredmenyekApi", action = "SaveErettsegiEredmenyList" })",
|
||||
Delete: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "ErettsegiEredmenyekApi", action = "DeleteErettsegiEredmeny" })"
|
||||
};
|
||||
|
||||
erettsegiEredmenyekHelper.dataBoundAdditionalFunction = function () {
|
||||
var tanuloNevKendoTooltip = $(".erettsegiEredmenyekTanuloNevKendoTooltip");
|
||||
KretaTooltipHelper.setTooltip(tanuloNevKendoTooltip, "#kendoTooltip-erettsegiEredmenyekTanuloNevKendoTooltip");
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.getStartModelData = function () {
|
||||
return KretaGridHelper.getSearchParameterData(erettsegiEredmenyekHelper.startModel);
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.openStartWindow = function () {
|
||||
if (!CommonUtils.isNull(erettsegiEredmenyekHelper.startModel)) {
|
||||
erettsegiEredmenyekHelper.startModel = null;
|
||||
KretaGridHelper.clearGridData(gridName);
|
||||
}
|
||||
$(".infoText").html("");
|
||||
AjaxHelper.DoPost(url.OpenStartPopup, null, popUpStartWindow);
|
||||
}
|
||||
|
||||
function popUpStartWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = "@(ErettsegiEredmenyekResource.ErettsegiEredmenyek)";
|
||||
config.maxWidth = "500px";
|
||||
config.content = data;
|
||||
config.actions = ['Close'];
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(startPopupId, config);
|
||||
modal.setOptions({ height: 120 });
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.startTovabb = function() {
|
||||
var form = $("#" + startPopupFormName);
|
||||
if (form.valid()) {
|
||||
erettsegiEredmenyekHelper.startModel = KretaGridHelper.getSearchParameterObject(startPopupFormName);
|
||||
if (!CommonUtils.isNullOrEmpty(erettsegiEredmenyekHelper.startModel.OsztalyId)) {
|
||||
var osztalyText = KretaComboBoxHelper.getKendoComboBoxData("OsztalyId").text();
|
||||
if (!CommonUtils.isNullOrEmpty(osztalyText)) {
|
||||
$(".infoText").html(kendo.htmlEncode(osztalyText) + " @(ErettsegiEredmenyekResource.ErettsegiEredmenyek)".toLowerCase());
|
||||
}
|
||||
erettsegiEredmenyekHelper.refreshGrid();
|
||||
KretaWindowHelper.destroyWindow(startPopupId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.setDetailControlsEvents = function (currentDetailGridName, tanuloId) {
|
||||
var dataSource = KretaGridHelper.getKendoGridData(currentDetailGridName).dataSource.data();
|
||||
var detailGridSelector = "#" + currentDetailGridName;
|
||||
|
||||
var data = KretaGridHelper.getKendoGridData(gridName).dataSource.data();
|
||||
var totalNumber = data.length;
|
||||
var isVegzos;
|
||||
for (var i = 0; i < totalNumber; i++) {
|
||||
if (data[i].ID === tanuloId) {
|
||||
isVegzos = data[i].IsVegzos_BOOL;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$(detailGridSelector).off("change");
|
||||
$.each(dataSource, function (index, value) {
|
||||
$(detailGridSelector).on("change", "input[id^='" + currentDetailGridName + "_ErettsegiTantargyId_" + value.ID + "']", function () {
|
||||
setControlsEnabilityAndDefaultValue(currentDetailGridName, value, isVegzos);
|
||||
});
|
||||
});
|
||||
|
||||
$.each(dataSource, function (index, value) {
|
||||
if (value.IsNew) {
|
||||
setControlsEnabilityAndDefaultValue(currentDetailGridName, value, isVegzos);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function setControlsEnabilityAndDefaultValue(currentDetailGridName, value, isVegzos) {
|
||||
var detailGridSelector = "#" + currentDetailGridName;
|
||||
|
||||
var erettsegiTantargyIdKendoComboBox = KretaComboBoxHelper.getKendoComboBoxData(currentDetailGridName + "_ErettsegiTantargyId_" + value.ID);
|
||||
var erettsegiSzintIdKendoComboBox = KretaComboBoxHelper.getKendoComboBoxData(currentDetailGridName + "_ErettsegiSzintId_" + value.ID);
|
||||
var erettsegiTipusIdKendoComboBox = KretaComboBoxHelper.getKendoComboBoxData(currentDetailGridName + "_ErettsegiTipusId_" + value.ID);
|
||||
var irasbeliPontszamKendoNumericBox = KretaNumericHelper.getKendoNumericTextBoxData(currentDetailGridName + "_IrasbeliPontszam_" + value.ID);
|
||||
var szobeliPontszamKendoNumericBox = KretaNumericHelper.getKendoNumericTextBoxData(currentDetailGridName + "_SzobeliPontszam_" + value.ID);
|
||||
var gyakorlatiPontszamKendoNumericBox = KretaNumericHelper.getKendoNumericTextBoxData(currentDetailGridName + "_GyakorlatiPontszam_" + value.ID);
|
||||
var megjegyzesTextBox = $(detailGridSelector + "_Megjegyzes_" + value.ID);
|
||||
if (!CommonUtils.isUndefined(erettsegiTantargyIdKendoComboBox) &&
|
||||
!CommonUtils.isUndefined(erettsegiSzintIdKendoComboBox) &&
|
||||
!CommonUtils.isUndefined(erettsegiTipusIdKendoComboBox) &&
|
||||
!CommonUtils.isUndefined(irasbeliPontszamKendoNumericBox) &&
|
||||
!CommonUtils.isUndefined(szobeliPontszamKendoNumericBox) &&
|
||||
!CommonUtils.isUndefined(gyakorlatiPontszamKendoNumericBox) &&
|
||||
!CommonUtils.isUndefined(megjegyzesTextBox)) {
|
||||
|
||||
var erettsegiTantargyId = erettsegiTantargyIdKendoComboBox.value();
|
||||
if (!CommonUtils.isNullOrEmpty(erettsegiTantargyId)) {
|
||||
erettsegiSzintIdKendoComboBox.enable(true);
|
||||
erettsegiTipusIdKendoComboBox.enable(true);
|
||||
irasbeliPontszamKendoNumericBox.enable(true);
|
||||
szobeliPontszamKendoNumericBox.enable(true);
|
||||
gyakorlatiPontszamKendoNumericBox.enable(true);
|
||||
megjegyzesTextBox.prop('disabled', false);
|
||||
|
||||
if (value.IsNew) {
|
||||
erettsegiSzintIdKendoComboBox.value("@((int)ErettsegiSzintEnum.KozepSzint)");
|
||||
|
||||
if (isVegzos) {
|
||||
erettsegiTipusIdKendoComboBox.value("@((int)ErettsegiTipusEnum.Rendes)");
|
||||
} else {
|
||||
erettsegiTipusIdKendoComboBox.value("@((int)ErettsegiTipusEnum.Elorehozott)");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
erettsegiSzintIdKendoComboBox.enable(false);
|
||||
erettsegiSzintIdKendoComboBox.value("");
|
||||
|
||||
erettsegiTipusIdKendoComboBox.enable(false);
|
||||
erettsegiTipusIdKendoComboBox.value("");
|
||||
|
||||
irasbeliPontszamKendoNumericBox.enable(false);
|
||||
irasbeliPontszamKendoNumericBox.value("");
|
||||
|
||||
szobeliPontszamKendoNumericBox.enable(false);
|
||||
szobeliPontszamKendoNumericBox.value("");
|
||||
|
||||
gyakorlatiPontszamKendoNumericBox.enable(false);
|
||||
gyakorlatiPontszamKendoNumericBox.value("");
|
||||
|
||||
megjegyzesTextBox.prop('disabled', true);
|
||||
megjegyzesTextBox.val("");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.addDetailGridDataToVariable = function (currentDetailGridName, formName) {
|
||||
if (!openedDetailGridData.hasValue("gridName", currentDetailGridName)) {
|
||||
openedDetailGridData.push({ gridName: currentDetailGridName, formName: formName });
|
||||
}
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.addNewErettsegiEredmeny = function (currentDetailGridName, tanuloId) {
|
||||
setModifiedDataSource(currentDetailGridName);
|
||||
var grid = KretaGridHelper.getKendoGridData(currentDetailGridName);
|
||||
var total = grid.dataSource.data().length;
|
||||
grid.dataSource.insert(total,
|
||||
{
|
||||
ID: "tempRowId_" + tempRowId,
|
||||
IsNew: true,
|
||||
Erdemjegy: "-",
|
||||
GyakorlatiPontszam: null,
|
||||
IrasbeliPontszam: null,
|
||||
Megjegyzes: null,
|
||||
OsszPontszam: "-",
|
||||
Szazalek: "-",
|
||||
ErettsegiSzintId: null,
|
||||
SzobeliPontszam: null,
|
||||
ErettsegiTantargyId: null,
|
||||
ErettsegiTipusId: null
|
||||
});
|
||||
tempRowId++;
|
||||
erettsegiEredmenyekHelper.setDetailControlsEvents(currentDetailGridName, tanuloId);
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.saveErettsegiEredmenyek = function () {
|
||||
var resultData = [];
|
||||
$.each(openedDetailGridData, function (i, gridData) {
|
||||
var formName = gridData.formName;
|
||||
var form = $('#' + formName);
|
||||
if (form.valid()) {
|
||||
var data = form.toObject();
|
||||
var tanuloId = data.ID;
|
||||
|
||||
var rows = KretaGridHelper.getAllRows(gridData.gridName);
|
||||
|
||||
if (rows.length > 0) {
|
||||
var detailData = [rows.length];
|
||||
$.each(rows,
|
||||
function (index, rowData) {
|
||||
detailData[index] = {
|
||||
Id: rowData.ID,
|
||||
TanuloId: tanuloId,
|
||||
ErettsegiTantargyId: rowData.ki_ErettsegiTantargyId,
|
||||
ErettsegiSzintId: rowData.ki_ErettsegiSzintId,
|
||||
ErettsegiTipusId: rowData.ki_ErettsegiTipusId,
|
||||
IrasbeliPontszam: rowData.ki_IrasbeliPontszam,
|
||||
SzobeliPontszam: rowData.ki_SzobeliPontszam,
|
||||
GyakorlatiPontszam: rowData.ki_GyakorlatiPontszam,
|
||||
Megjegyzes: rowData.ki_Megjegyzes,
|
||||
IsNew: rowData.IsNew
|
||||
}
|
||||
});
|
||||
resultData.push({
|
||||
FormName: formName,
|
||||
ErettsegiEredmenySaveDetailModelList: detailData
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
if (resultData.length > 0){
|
||||
AjaxHelper.DoPost(url.SaveErettsegiEredmenyList,
|
||||
resultData,
|
||||
erettsegiEredmenyekHelper.refreshGrid,
|
||||
saveFeedbackError);
|
||||
}
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.deleteErettsegiEredmenyConfirmWindow = function (currentDetailGridName, rowData) {
|
||||
var isNew = rowData.IsNew;
|
||||
if (CommonUtils.parseBool(isNew)) {
|
||||
KretaWindowHelper.confirmWindow(
|
||||
"@(CommonResource.Kerdes)",
|
||||
"@(CommonResource.BiztosanTorli)",
|
||||
function () {
|
||||
setModifiedDataSource(currentDetailGridName);
|
||||
var grid = KretaGridHelper.getKendoGridData(currentDetailGridName);
|
||||
grid.dataSource.remove(rowData);
|
||||
}
|
||||
);
|
||||
|
||||
} else {
|
||||
KretaWindowHelper.confirmWindow(
|
||||
"@(CommonResource.Kerdes)",
|
||||
"@Html.Raw(ErettsegiEredmenyekResource.BiztosanTorli)",
|
||||
deleteErettsegiEredmeny,
|
||||
rowData.ID
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
function deleteErettsegiEredmeny(data) {
|
||||
AjaxHelper.DoPost(url.Delete, data, erettsegiEredmenyekHelper.refreshGrid, feedbackError);
|
||||
}
|
||||
|
||||
erettsegiEredmenyekHelper.refreshGrid = function () {
|
||||
openedDetailGridData = [];
|
||||
KretaGridHelper.refreshGridByObject(gridName, erettsegiEredmenyekHelper.startModel);
|
||||
}
|
||||
|
||||
function saveFeedbackError(data) {
|
||||
$.each(data.responseJSON.ModelState, function (name, value) {
|
||||
var form = $('#' + name);
|
||||
var detailModelState = { detailModelState: value }
|
||||
AjaxHelper.CallRemoteErrors(form, detailModelState);
|
||||
});
|
||||
}
|
||||
|
||||
function feedbackError() {
|
||||
var message = "@(CommonResource.Hiba)";
|
||||
KretaWindowHelper.feedbackWindow("@(CommonResource.Hiba)", message, true, KretaWindowHelper.destroyAllWindow);
|
||||
}
|
||||
|
||||
function setModifiedDataSource(currentDetailGridName) {
|
||||
var grid = KretaGridHelper.getKendoGridData(currentDetailGridName);
|
||||
var currentData = KretaGridHelper.getModifiedRows(currentDetailGridName);
|
||||
$.each(currentData, function (index, value) {
|
||||
var data = grid.dataSource.getByUid(value.uid);
|
||||
data.set("ID", value.ID);
|
||||
data.set("IsNew", value.IsNew);
|
||||
data.set("Erdemjegy", value.Erdemjegy);
|
||||
data.set("GyakorlatiPontszam", value.ki_GyakorlatiPontszam);
|
||||
data.set("IrasbeliPontszam", value.ki_IrasbeliPontszam);
|
||||
data.set("Megjegyzes", value.ki_Megjegyzes);
|
||||
data.set("OsszPontszam", value.OsszPontszam);
|
||||
data.set("Szazalek", value.Szazalek);
|
||||
data.set("ErettsegiSzintId", value.ki_ErettsegiSzintId);
|
||||
data.set("SzobeliPontszam", value.ki_SzobeliPontszam);
|
||||
data.set("ErettsegiTantargyId", value.ki_ErettsegiTantargyId);
|
||||
data.set("ErettsegiTipusId", value.ki_ErettsegiTipusId);
|
||||
});
|
||||
}
|
||||
|
||||
return erettsegiEredmenyekHelper;
|
||||
})();
|
||||
|
||||
$(document).ready(function () {
|
||||
if (!CommonUtils.parseBool("@(Model.OsztalyList.Count == 1)")) {
|
||||
ErettsegiEredmenyekHelper.openStartWindow();
|
||||
} else {
|
||||
$("button.kendo-gridFunctionKommandRed.elolrol").hide();
|
||||
ErettsegiEredmenyekHelper.startModel = {
|
||||
OsztalyId: "@Model.OsztalyId"
|
||||
};
|
||||
var osztalyText = "@Model.OsztalyNev";
|
||||
$(".infoText").html(osztalyText + " @(ErettsegiEredmenyekResource.ErettsegiEredmenyek)".toLowerCase());
|
||||
ErettsegiEredmenyekHelper.refreshGrid();
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<style type="text/css">
|
||||
.k-grid .kendo-gridFunctionKommand .clearFunctionCommand {
|
||||
background-color: initial;
|
||||
color: #5c6a79;
|
||||
cursor: initial;
|
||||
text-transform: initial;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.k-grid .kendo-gridFunctionKommand .clearFunctionCommand:before {
|
||||
content: initial;
|
||||
}
|
||||
|
||||
.k-grid-content .kendo-gridFunctionKommand > .k-button.k-button-icontext {
|
||||
background-color: #54a5d1;
|
||||
}
|
||||
|
||||
.k-grid td.kozepre,
|
||||
.k-grid th.kozepre {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.k-grid td > div.gridNumericBox > span.k-numerictextbox,
|
||||
.k-grid td > div.gridTextbox > input.k-textbox {
|
||||
width: 100%;
|
||||
}
|
||||
</style>
|
Loading…
Add table
Add a link
Reference in a new issue