init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,38 @@
|
|||
using System.Web.Http;
|
||||
using System.Web.Http.ModelBinding;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Grid;
|
||||
using Kreta.Web.Security;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
|
||||
public class AdminTanuloKozossegiSzolgalataiApiController : ApiController
|
||||
{
|
||||
public DataSourceResult GetTanuloKozossegiSzolgalataiGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
int felhasznalo = ClaimData.IsAdministrator ? -1 : ClaimData.FelhasznaloId;
|
||||
|
||||
bool toroltElemek = !ClaimManager.HasPackage(KretaClaimPackages.Ellenorzo.ClaimValue);
|
||||
bool hasTeljesTorlesJog = toroltElemek && ClaimManager.HasPackage(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue);
|
||||
|
||||
var model = JsonConvert.DeserializeObject<AdminKozossegiSzolgalatokSearchModel>(data);
|
||||
var co = model.ConvertModelToCo();
|
||||
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
helper.GridParameters = Converter.GridParameter(request);
|
||||
var ds = helper.GetKozossegiSzolgalatokReszletekForGrid(-1, co, felhasznalo, toroltElemek, hasTeljesTorlesJog);
|
||||
|
||||
DataSourceResult result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,114 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.Exceptions;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.BusinessLogic.Utils;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Error;
|
||||
using Kreta.Web.Helpers.Grid;
|
||||
using Kreta.Web.Security;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
|
||||
public class BaseBeirasokApiController : ApiController
|
||||
{
|
||||
[NonAction]
|
||||
public DataSourceResult GetBeirasokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, SzervezetTipusEnum? szervezetTipus)
|
||||
{
|
||||
var model = JsonConvert.DeserializeObject<FeljegyzesekSearchModel>(data);
|
||||
if (model?.CsoportIdSearch == null)
|
||||
{
|
||||
return new DataSourceResult();
|
||||
}
|
||||
|
||||
var helper = new TanevHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
var tanevCo = helper.GetTanevInfo();
|
||||
|
||||
var elsoTanitasiNap = tanevCo.OraFelvetelKezdete.Date;
|
||||
|
||||
var feljegyzesHelper = new FeljegyzesHelper(ConnectionTypeExtensions.GetSessionConnectionType())
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request),
|
||||
};
|
||||
|
||||
var ds = feljegyzesHelper.GetBeirasokGrid(model.CsoportIdSearch.Value, elsoTanitasiNap, (int?)szervezetTipus);
|
||||
|
||||
var result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
|
||||
public DataSourceResult GetBeirasokReszletekGrid(int tanuloId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, SzervezetTipusEnum? szervezetTipus)
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType())
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request),
|
||||
};
|
||||
|
||||
var ds = helper.GetBeirasokReszletekForGrid(tanuloId, (int?)szervezetTipus, true);
|
||||
|
||||
var result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage SaveBeiras(BeirasModel model)
|
||||
{
|
||||
var allowedTags = new List<string> {
|
||||
"span", "#text", "b", "blockquote",
|
||||
"code", "del", "dd", "dl", "dt",
|
||||
"em", "h1", "h2", "h3", "i", "kbd",
|
||||
"li", "ol", "p", "pre", "s", "sup",
|
||||
"sub", "strong", "strike", "ul", "br", "hr", "a", "div"
|
||||
};
|
||||
model.Tartalom = CommonUtils.RemoveNotAllowedHtmlTags(WebUtility.HtmlDecode(model.Tartalom), allowedTags);
|
||||
|
||||
ModelState.Merge(model.Validate());
|
||||
|
||||
var co = model.ToCo();
|
||||
var feljegyzesHelper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
var isTanuloTagjaOsztalynakByEsemenyDatumError = feljegyzesHelper.IsTanuloTagjaOsztalyCsoportnakByEsemenyDatum(co);
|
||||
if (!string.IsNullOrWhiteSpace(isTanuloTagjaOsztalynakByEsemenyDatumError))
|
||||
{
|
||||
ModelState.AddModelError("EsemenyDatuma", isTanuloTagjaOsztalynakByEsemenyDatumError);
|
||||
}
|
||||
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
_ = feljegyzesHelper.SaveFeljegyzes(co, isBeiras: true);
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage DeleteBeiras(FeljegyzesTorlesModel model)
|
||||
{
|
||||
try
|
||||
{
|
||||
new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).DeleteBeiras(model.Id, model.TanuloId);
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
catch (CannotBeDeletedException ex)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,211 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.Exceptions;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Logic;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.BusinessLogic.Utils;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Error;
|
||||
using Kreta.Web.Helpers.Grid;
|
||||
using Kreta.Web.Security;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public class BaseElektronikusUzenetekApiController : ApiController
|
||||
{
|
||||
[NonAction]
|
||||
public DataSourceResult GetElektronikusUzenetekNaploNezetGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, SzervezetTipusEnum? szervezetTipus)
|
||||
{
|
||||
var model = JsonConvert.DeserializeObject<ElektronikusUzenetSearchModel>(data);
|
||||
if (model?.CsoportIdSearch == null)
|
||||
{
|
||||
return new DataSourceResult();
|
||||
}
|
||||
|
||||
TanevCO tanevCo;
|
||||
var connectionType = ConnectionTypeExtensions.GetSessionConnectionType();
|
||||
var helper = new TanevHelper(connectionType);
|
||||
tanevCo = helper.GetTanevInfo();
|
||||
|
||||
var elsoTanitasiNap = tanevCo.OraFelvetelKezdete.Date;
|
||||
|
||||
var feljegyzesHelper = new FeljegyzesHelper(connectionType)
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request),
|
||||
};
|
||||
var ds = feljegyzesHelper.GetElektronikusUzenetekNaploNezetGrid(model.CsoportIdSearch.Value, elsoTanitasiNap, (int?)szervezetTipus);
|
||||
|
||||
if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
foreach (var row in ds.Tables[0].AsEnumerable())
|
||||
{
|
||||
row[nameof(FaliujsagBejegyzesekGridModel.Tartalom)] = CommonUtils.RemoveAllHtmlTags(row.Field<string>(nameof(FaliujsagBejegyzesekGridModel.Tartalom)));
|
||||
}
|
||||
}
|
||||
|
||||
var result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[NonAction]
|
||||
public DataSourceResult GetElektronikusUzenetekNaploNezetReszletekGrid(int tanuloId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, SzervezetTipusEnum? szervezetTipus)
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetSessionConnectionType())
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request),
|
||||
};
|
||||
|
||||
var ds = helper.GetElektronikusUzenetekNaploNezetReszletekGrid(tanuloId, (int?)szervezetTipus, true);
|
||||
|
||||
if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
foreach (var row in ds.Tables[0].AsEnumerable())
|
||||
{
|
||||
row[nameof(FaliujsagBejegyzesekGridModel.Tartalom)] = WebUtility.HtmlDecode(CommonUtils.RemoveAllHtmlTags(row.Field<string>(nameof(FaliujsagBejegyzesekGridModel.Tartalom))));
|
||||
}
|
||||
}
|
||||
|
||||
var result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public DataSourceResult GetElektronikusUzenetekListaNezetGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request, SzervezetTipusEnum? szervezetTipus)
|
||||
{
|
||||
var model = JsonConvert.DeserializeObject<FeljegyzesekModel>(data);
|
||||
if (model?.OsztalyCsoportId == null)
|
||||
{
|
||||
return new DataSourceResult();
|
||||
}
|
||||
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetSessionConnectionType())
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request),
|
||||
};
|
||||
|
||||
var ds = helper.GetElektronikusUzenetekListaNezetGrid(model.OsztalyCsoportId.Value, (int?)szervezetTipus);
|
||||
|
||||
if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
foreach (var row in ds.Tables[0].AsEnumerable())
|
||||
{
|
||||
row[nameof(FaliujsagBejegyzesekGridModel.Tartalom)] = WebUtility.HtmlDecode(CommonUtils.RemoveAllHtmlTags(row.Field<string>(nameof(FaliujsagBejegyzesekGridModel.Tartalom))));
|
||||
}
|
||||
}
|
||||
|
||||
DataSourceResult result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public DataSourceResult GetElektronikusUzenetekModifyPopupGrid(int osztalycsoportId)
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
var ds = helper.GetElektronikusUzenetekModifyPopupGrid(osztalycsoportId);
|
||||
|
||||
DataSourceResult result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage SaveElektronikusUzenetPopup(ElektronikusUzenetPopupModel popupModel)
|
||||
{
|
||||
var model = popupModel.ToSaveModel();
|
||||
var result = SaveElektronikusUzenet(model);
|
||||
return result;
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage SaveElektronikusUzenet(ElektronikusUzenetModel model)
|
||||
{
|
||||
var allowedTags = new List<string> {
|
||||
"span", "#text", "b", "blockquote",
|
||||
"code", "del", "dd", "dl", "dt",
|
||||
"em", "h1", "h2", "h3", "i", "kbd",
|
||||
"li", "ol", "p", "pre", "s", "sup",
|
||||
"sub", "strong", "strike", "ul", "br", "hr", "a", "div"
|
||||
};
|
||||
|
||||
model.Tartalom = RichTextLogic.GetLegalHtmlString(model.Tartalom, allowedTags);
|
||||
|
||||
ModelState.Merge(model.Validate());
|
||||
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
Dictionary<int, List<string>> validationMessageDictionary = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).ValidateElektronikusUzenetTanuloListOsztalybaTartozikDatumAlapjan(model.TanuloIdList, model.OsztalyCsoportId.Value, model.EsemenyDatuma.Value, model.Vege, model.IsFaliujsagMegjelenes);
|
||||
|
||||
var responseMessageDictionary = new Dictionary<string, List<string>>();
|
||||
if (validationMessageDictionary.Any())
|
||||
{
|
||||
model.IsMindenkinek = false;
|
||||
foreach (var validationMessageDictionaryKeyValuePair in validationMessageDictionary)
|
||||
{
|
||||
var validationMessage = string.Join(Core.Constants.General.Sortores, validationMessageDictionaryKeyValuePair.Value);
|
||||
if (!responseMessageDictionary.ContainsKey("ValidationMessage"))
|
||||
{
|
||||
responseMessageDictionary.Add("ValidationMessage", new List<string> { validationMessage });
|
||||
}
|
||||
else
|
||||
{
|
||||
responseMessageDictionary["ValidationMessage"].Add(validationMessage);
|
||||
}
|
||||
model.TanuloIdList.Remove(validationMessageDictionaryKeyValuePair.Key);
|
||||
}
|
||||
}
|
||||
|
||||
_ = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).SaveFeljegyzes(model.ToCo());
|
||||
|
||||
return Request.CreateResponse(HttpStatusCode.OK, responseMessageDictionary);
|
||||
}
|
||||
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage DeleteElektronikusUzenet(FeljegyzesTorlesModel model)
|
||||
{
|
||||
try
|
||||
{
|
||||
new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).DeleteElektronikusUzenetOrFaliujsagBejegyzes(model.Id);
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
catch (CannotBeDeletedException ex)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage DeleteElektronikusUzenetForTanulo(FeljegyzesTorlesModel model)
|
||||
{
|
||||
try
|
||||
{
|
||||
new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).DeleteElektronikusUzenetForTanulo(model.Id, model.TanuloId);
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
catch (CannotBeDeletedException ex)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
using Kendo.Mvc.UI;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
public class BeirasokApiController : BaseBeirasokApiController
|
||||
{
|
||||
public DataSourceResult GetBeirasokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetBeirasokGrid(data, request, null);
|
||||
}
|
||||
|
||||
public DataSourceResult GetBeirasokReszletekGrid(int tanuloId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetBeirasokReszletekGrid(tanuloId, request, null);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,20 @@
|
|||
using Kendo.Mvc.UI;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Web.Attributes;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[KretaGlobalLanguageChangeApiActionFilter(LanguageCode = "hu-Dualis")]
|
||||
public class DualisBeirasokApiController : BaseBeirasokApiController
|
||||
{
|
||||
public DataSourceResult GetBeirasokGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetBeirasokGrid(data, request, SzervezetTipusEnum.Dualis);
|
||||
}
|
||||
|
||||
public DataSourceResult GetBeirasokReszletekGrid(int tanuloId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetBeirasokReszletekGrid(tanuloId, request, SzervezetTipusEnum.Dualis);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
using Kendo.Mvc.UI;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Web.Attributes;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[KretaGlobalLanguageChangeApiActionFilter(LanguageCode = "hu-Dualis")]
|
||||
public class DualisElektronikusUzenetekApiController : BaseElektronikusUzenetekApiController
|
||||
{
|
||||
public DataSourceResult GetElektronikusUzenetekNaploNezetGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetElektronikusUzenetekNaploNezetGrid(data, request, SzervezetTipusEnum.Dualis);
|
||||
}
|
||||
|
||||
public DataSourceResult GetElektronikusUzenetekNaploNezetReszletekGrid(int tanuloId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetElektronikusUzenetekNaploNezetReszletekGrid(tanuloId, request, SzervezetTipusEnum.Dualis);
|
||||
}
|
||||
|
||||
public DataSourceResult GetElektronikusUzenetekListaNezetGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetElektronikusUzenetekListaNezetGrid(data, request, SzervezetTipusEnum.Dualis);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
public class ElektronikusUzenetekApiController : BaseElektronikusUzenetekApiController
|
||||
{
|
||||
public DataSourceResult GetElektronikusUzenetekNaploNezetGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetElektronikusUzenetekNaploNezetGrid(data, request, null);
|
||||
}
|
||||
|
||||
public DataSourceResult GetElektronikusUzenetekNaploNezetReszletekGrid(int tanuloId, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetElektronikusUzenetekNaploNezetReszletekGrid(tanuloId, request, null);
|
||||
}
|
||||
|
||||
public DataSourceResult GetElektronikusUzenetekListaNezetGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
return GetElektronikusUzenetekListaNezetGrid(data, request, null);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,110 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.Exceptions;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Logic;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.BusinessLogic.Utils;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Error;
|
||||
using Kreta.Web.Helpers.Grid;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public class FaliujsagBejegyzesekApiController : ApiController
|
||||
{
|
||||
|
||||
public DataSourceResult GetFaliujsagBejegyzesekGrid([System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
helper.GridParameters = Converter.GridParameter(request);
|
||||
var ds = helper.GetFaliujsagBejegyzesekGrid();
|
||||
|
||||
if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
foreach (DataRow row in ds.Tables[0].Rows)
|
||||
{
|
||||
row[nameof(FaliujsagBejegyzesekGridModel.Tartalom)] = RichTextLogic.CutHtmlTagsAndDecodeAndBR2Space(row.Field<string>(nameof(FaliujsagBejegyzesekGridModel.Tartalom)));
|
||||
}
|
||||
}
|
||||
|
||||
DataSourceResult result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public DataSourceResult GetFaliujsagBejegyzesekPopupGrid([System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
helper.GridParameters = Converter.GridParameter(request);
|
||||
var ds = helper.GetFaliujsagBejegyzesekPopupGrid();
|
||||
|
||||
DataSourceResult result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public HttpResponseMessage SaveFaliujsagBejegyzes(FaliujsagBejegyzesModel model)
|
||||
{
|
||||
if (!ClaimData.IsSzuperadmin)
|
||||
{
|
||||
var allowedTags = new List<string> {
|
||||
"span", "#text", "b", "blockquote",
|
||||
"code", "del", "dd", "dl", "dt",
|
||||
"em", "h1", "h2", "h3", "i", "kbd",
|
||||
"li", "ol", "p", "pre", "s", "sup",
|
||||
"sub", "strong", "strike", "ul", "br", "hr", "a", "div"
|
||||
};
|
||||
|
||||
model.Tartalom = RichTextLogic.GetLegalHtmlString(model.Tartalom, allowedTags, false, true);
|
||||
|
||||
ModelState.Merge(model.Validate());
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
_ = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).SaveFeljegyzes(model.ToCo(false));
|
||||
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
}
|
||||
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage SaveFogadooraFaliujsagBejegyzes(FaliujsagBejegyzesModel model)
|
||||
{
|
||||
new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).SaveFeljegyzes(model.ToCo(true));
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
public HttpResponseMessage DeleteFaliujsagBejegyzes(FeljegyzesTorlesModel model)
|
||||
{
|
||||
try
|
||||
{
|
||||
new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).DeleteElektronikusUzenetOrFaliujsagBejegyzes(model.Id);
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
catch (CannotBeDeletedException ex)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,162 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using System.Web.Http.ModelBinding;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.Exceptions;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Error;
|
||||
using Kreta.Web.Helpers.Grid;
|
||||
using Kreta.Web.Security;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(
|
||||
KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue,
|
||||
KretaClaimPackages.Osztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.SzuperOsztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue
|
||||
)]
|
||||
public class KozossegiSzolgalatokApiController : ApiController
|
||||
{
|
||||
|
||||
public DataSourceResult GetKozossegiSzolgalatokGrid(string data, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
var model = JsonConvert.DeserializeObject<KozossegiSzolgalatokSearchModel>(data);
|
||||
|
||||
if (model?.CsoportIdSearch == null)
|
||||
{
|
||||
return new DataSourceResult();
|
||||
}
|
||||
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
helper.GridParameters = Converter.GridParameter(request);
|
||||
var ds = helper.GetKozossegiSzolgalatokGrid(model.ConvertModelToCo());
|
||||
|
||||
DataSourceResult result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[ApiRolePackageAuthorize(
|
||||
KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue,
|
||||
KretaClaimPackages.Osztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.SzuperOsztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue,
|
||||
KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue,
|
||||
KretaClaimPackages.IsSzirIntezmeny.ClaimValue
|
||||
)]
|
||||
public DataSourceResult GetKozossegiSzolgalatokReszletekGrid(int tanuloId, [ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
bool toroltElemek = !ClaimManager.HasPackage(KretaClaimPackages.Ellenorzo.ClaimValue);
|
||||
bool hasTeljesTorlesJog = toroltElemek && ClaimManager.HasPackage(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue);
|
||||
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
helper.GridParameters = Converter.GridParameter(request);
|
||||
var ds = helper.GetKozossegiSzolgalatokReszletekForGrid(tanuloId, toroltElemek, hasTeljesTorlesJog);
|
||||
|
||||
DataSourceResult result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
[ApiRolePackageAuthorize(
|
||||
KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue,
|
||||
KretaClaimPackages.Osztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.SzuperOsztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue,
|
||||
KretaClaimPackages.IsSzirIntezmeny.ClaimValue
|
||||
)]
|
||||
public HttpResponseMessage SaveKozossegiSzolgalat(KozossegiSzolgalatModel model)
|
||||
{
|
||||
ModelState.Merge(model.Validate());
|
||||
|
||||
if (ModelState.IsValid)
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
helper.SaveKozossegiSzolgalat(model.ToCo());
|
||||
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
[ApiRolePackageAuthorize(
|
||||
KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue,
|
||||
KretaClaimPackages.Osztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.SzuperOsztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue
|
||||
)]
|
||||
public HttpResponseMessage DeleteKozossegiSzolgalat(int id)
|
||||
{
|
||||
try
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
helper.DeleteKozossegiSzolgalat(id);
|
||||
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
catch (CannotBeDeletedException ex)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[ApiValidateAjaxAntiForgeryToken]
|
||||
[ApiRolePackageAuthorize(
|
||||
KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue,
|
||||
KretaClaimPackages.Osztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.SzuperOsztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue,
|
||||
KretaClaimPackages.FelhasznaloMunkakoreNemTiltoListas.ClaimValue,
|
||||
KretaClaimPackages.IsSzirIntezmeny.ClaimValue
|
||||
)]
|
||||
public double GetKozossegiSzolgalatOsszesOraszam(int tanuloId)
|
||||
{
|
||||
try
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
double result = helper.GetKozossegiSzolgalatOsszesOraszam(tanuloId);
|
||||
return result;
|
||||
|
||||
}
|
||||
catch (CannotBeDeletedException ex)
|
||||
{
|
||||
throw new StatusError(HttpStatusCode.BadRequest, ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
public List<System.Web.Mvc.SelectListItem> GetKozossegiSzolgalatOsztalyList([DataSourceRequest] DataSourceRequest request)
|
||||
{
|
||||
List<System.Web.Mvc.SelectListItem> osztalyList = new List<System.Web.Mvc.SelectListItem>();
|
||||
if (ClaimManager.HasPackage(
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue
|
||||
, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue
|
||||
, KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue))
|
||||
{
|
||||
osztalyList = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokForDDL().ToSelectListItemList();
|
||||
}
|
||||
else
|
||||
{
|
||||
osztalyList = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokForDDL("", ClaimData.FelhasznaloId, ClaimData.IsSzuperOsztalyfonok).ToSelectListItemList();
|
||||
}
|
||||
return osztalyList;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,56 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Web.Http;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Grid;
|
||||
using Kreta.Web.Security;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public class OsszefuggoSzakGyakApiController : ApiController
|
||||
{
|
||||
public DataSourceResult GetOsszefuggoSzakGyakGrid(string data, [System.Web.Http.ModelBinding.ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))]
|
||||
DataSourceRequest request)
|
||||
{
|
||||
var model = JsonConvert.DeserializeObject<OsszefuggoSzakGyakSearchModel>(data);
|
||||
|
||||
if (model.CsoportIdSearch == null || model.TantargyIdSearch == null)
|
||||
{
|
||||
return new DataSourceResult();
|
||||
}
|
||||
|
||||
var helper = new OsszefuggoSzakGyakHelper(ConnectionTypeExtensions.GetSessionConnectionType())
|
||||
{
|
||||
GridParameters = Converter.GridParameter(request)
|
||||
};
|
||||
DataSet dataSet = helper.GetOsszefuggoSzakGyakGrid(model.CsoportIdSearch.Value, model.TantargyIdSearch.Value);
|
||||
|
||||
return dataSet.ToDataSourceResult();
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public HttpResponseMessage Save(List<OsszefuggoSzakGyakGridModel> modelList)
|
||||
{
|
||||
var coList = new List<OsszefuggoSzakGyakGridCo>();
|
||||
foreach (var item in modelList)
|
||||
{
|
||||
coList.Add(item.ToCo());
|
||||
}
|
||||
|
||||
var helper = new OsszefuggoSzakGyakHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
helper.SaveOsszefuggoSzakGyakGrid(coList);
|
||||
|
||||
return new HttpResponseMessage(HttpStatusCode.OK);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
using System.Web.Http;
|
||||
using System.Web.Http.ModelBinding;
|
||||
using Kendo.Mvc.UI;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.Grid;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.ApiControllers
|
||||
{
|
||||
[ApiRoleClaimsAuthorize(true)]
|
||||
[ApiRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue)]
|
||||
public class TanuloKozossegiSzolgalataiApiController : ApiController
|
||||
{
|
||||
public DataSourceResult GetTanuloKozossegiSzolgalataiGrid([ModelBinder(typeof(ModelBinder.DataSourceRequestModelBinder))] DataSourceRequest request)
|
||||
{
|
||||
bool toroltElemek = !ClaimManager.HasPackage(KretaClaimPackages.Ellenorzo.ClaimValue);
|
||||
bool hasTeljesTorlesJog = toroltElemek && ClaimManager.HasPackage(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue);
|
||||
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
helper.GridParameters = Converter.GridParameter(request);
|
||||
var ds = helper.GetKozossegiSzolgalatokReszletekForGrid(ClaimData.FelhasznaloId, toroltElemek, hasTeljesTorlesJog);
|
||||
|
||||
DataSourceResult result = ds.ToDataSourceResult();
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
public abstract class AbstractFeljegyzesekController : Controller
|
||||
{
|
||||
protected FeljegyzesekModel GetFeljegyzesekModel()
|
||||
{
|
||||
FeljegyzesHelperCo feljegyzesHelperCo = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetFeljegyzesHelperCo();
|
||||
var model = new FeljegyzesekModel
|
||||
{
|
||||
ElsoTanitasiNap = feljegyzesHelperCo.ElsoTanitasiNap,
|
||||
DefaultEsemenyDatuma = feljegyzesHelperCo.DefaultEsemenyDatuma
|
||||
};
|
||||
return model;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,29 @@
|
|||
using System.Web.Http;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Areas.Hianyzas.Logic;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsSzirIntezmeny.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue)]
|
||||
public class AdminTanuloKozossegiSzolgalataiController : Controller
|
||||
{
|
||||
// GET: Feljegyzes/AdminTanuloKozossegiSzolgalatai
|
||||
public ActionResult Index()
|
||||
{
|
||||
return View();
|
||||
}
|
||||
|
||||
#region Export
|
||||
public ActionResult ExportKozossegiSzolgalat([FromUri] AdminKozossegiSzolgalatokSearchModel data)
|
||||
{
|
||||
return AdminTanuloKozossegiSzolgalataiLLogic.ExportKozossegiSzolgalat(data);
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
122
KretaWeb/Areas/Feljegyzes/Controllers/BaseBeirasokController.cs
Normal file
122
KretaWeb/Areas/Feljegyzes/Controllers/BaseBeirasokController.cs
Normal file
|
@ -0,0 +1,122 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Web.Mvc;
|
||||
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.Framework.Util;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Models.EditorTemplates;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue, KretaClaimPackages.IsPortas.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue, KretaClaimPackages.Naplo.ClaimValue)]
|
||||
public class BaseBeirasokController : AbstractFeljegyzesekController
|
||||
{
|
||||
#region Properties
|
||||
|
||||
public static string StartPopupFormName => "BeirasokStartPopupForm";
|
||||
public static string StartPopupId => "BeirasokStartWindow";
|
||||
|
||||
public static string GridName => "BeirasokGrid";
|
||||
|
||||
public static string NewModifyPopupName => "New_Modify_Popup";
|
||||
public static string NewModifyFormName => "BeirasNewModifyForm";
|
||||
|
||||
protected IKretaAuthorization Authorization { get; }
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public BaseBeirasokController(IKretaAuthorization authorization)
|
||||
{
|
||||
Authorization = authorization ?? throw new ArgumentNullException(nameof(authorization));
|
||||
}
|
||||
|
||||
// Sitemap-ben letiltásra került, NE töröld ki!
|
||||
//[MvcRolePackageAuthorize(KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
//public ActionResult IndexOsztalyfonoki()
|
||||
//{
|
||||
// return View("Index");
|
||||
//}
|
||||
|
||||
#region Popup actions
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenNewModifyPopup(int? id, int tanuloId, int? osztalyCsoportId)
|
||||
{
|
||||
bool isModify = id.IsEntityId();
|
||||
BeirasModel beirasModel;
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
FeljegyzesHelperCo feljegyzesHelperCo = helper.GetFeljegyzesHelperCo();
|
||||
if (isModify)
|
||||
{
|
||||
//NOTE: Az id az IdEntityId vizsgálat miatt nem lehet null!
|
||||
FeljegyzesCo co = helper.GetFeljegyzesById(id.Value);
|
||||
beirasModel = new BeirasModel(co, tanuloId);
|
||||
}
|
||||
else
|
||||
{
|
||||
beirasModel = new BeirasModel
|
||||
{
|
||||
TanuloId = tanuloId,
|
||||
FeljegyzoId = ClaimData.FelhasznaloId,
|
||||
FeljegyzoNev = ClaimData.FelhasznaloNev,
|
||||
EsemenyDatuma = feljegyzesHelperCo.DefaultEsemenyDatuma,
|
||||
OsztalyCsoportId = osztalyCsoportId
|
||||
};
|
||||
}
|
||||
|
||||
beirasModel.MinimumErvenyessegKezdete = feljegyzesHelperCo.MinimumErvenyessegKezdete;
|
||||
beirasModel.MaximumErvenyessegKezdete = feljegyzesHelperCo.MaximumErvenyessegKezdete;
|
||||
|
||||
beirasModel.TipusList = GetTipusList();
|
||||
|
||||
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
beirasModel.NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
|
||||
beirasModel.NyelvesitendoEsemenyTipuslist = Core.Constants.NyelvesitendoEsemenyTipuslist;
|
||||
|
||||
var popupModel = new PopUpModel(beirasModel, $"~/Areas/Feljegyzes/Views/Beirasok/{NewModifyPopupName}.cshtml");
|
||||
popupModel.AddBtn(popupModel, "BtnCancel_" + NewModifyFormName, CommonResource.Megse, "BeirasokHelper.newModifyPopupCancel");
|
||||
popupModel.AddOkBtn(popupModel, "BeirasokHelper.newModifyPopupSave");
|
||||
if (isModify)
|
||||
{
|
||||
popupModel.AddDeleteBtn(popupModel, "BeirasokHelper.newModifyPopupDelete");
|
||||
}
|
||||
|
||||
return PartialView(Constants.General.PopupView, popupModel);
|
||||
}
|
||||
|
||||
[NonAction]
|
||||
public ActionResult OpenStartPopup(bool isFromSzervezet)
|
||||
{
|
||||
var model = GetFeljegyzesekModel();
|
||||
model.IsDualisKepzohelyiCsoport = isFromSzervezet;
|
||||
return PartialView("~/Areas/Feljegyzes/Views/Beirasok/Start_Popup.cshtml", model);
|
||||
}
|
||||
|
||||
#endregion Popup actions
|
||||
|
||||
[NonAction]
|
||||
public ActionResult BeirasokReszletekGrid(BeirasokGridModel model)
|
||||
{
|
||||
return PartialView("~/Areas/Feljegyzes/Views/Beirasok/DetailGrid.cshtml", model);
|
||||
}
|
||||
|
||||
private static List<SelectListItem> GetTipusList()
|
||||
{
|
||||
var result = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.EsemenyTipus, ClaimData.SelectedTanevID.Value).ToSelectListItemList(new List<string> { ((int)EsemenyTipusEnum.ElektronikusUzenet).ToString(), ((int)EsemenyTipusEnum.FaliujsagBejegyzes).ToString() });
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,137 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Enums.ManualEnums;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Helpers.TabStrip;
|
||||
using Kreta.Web.Models.EditorTemplates;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public class BaseElektronikusUzenetekController : AbstractFeljegyzesekController
|
||||
{
|
||||
#region Properties
|
||||
|
||||
public static string TabStripId => "ElektronikusUzenetekTabStrip";
|
||||
|
||||
public static string StartPopupFormName => "ElektronikusUzenetekStartPopupForm";
|
||||
public static string StartPopupId => "ElektronikusUzenetekStartWindow";
|
||||
|
||||
public static string GridNameNaploNezet => "ElektronikusUzenetNaploNezetGrid";
|
||||
public static string GridNameListaNezet => "ElektronikusUzenetListaNezetGrid";
|
||||
|
||||
public static string NewFormName => "ElektronikusUzenetNewForm";
|
||||
|
||||
public static string ModifyPopupName => "Modify_Popup";
|
||||
public static string ModifyFormName => "ElektronikusUzenetModifyForm";
|
||||
public static string ModifyPopupGridName => "ElektronikusUzenetModifyPopupGrid";
|
||||
|
||||
protected IKretaAuthorization Authorization { get; set; }
|
||||
#endregion Properties
|
||||
|
||||
public BaseElektronikusUzenetekController(IKretaAuthorization authorization)
|
||||
{
|
||||
Authorization = authorization ?? throw new ArgumentNullException(nameof(authorization));
|
||||
}
|
||||
|
||||
[NonAction]
|
||||
public ActionResult GetNaploNezetTab(string controllerName, string apiControllerName)
|
||||
{
|
||||
var feljegyzesHelperCo = new FeljegyzesHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetFeljegyzesHelperCo();
|
||||
var model = new ElektronikusUzenetSearchModel
|
||||
{
|
||||
IsFaliujsagMegjelenes = true,
|
||||
IsMindenkinek = true,
|
||||
EsemenyDatuma = feljegyzesHelperCo.DefaultEsemenyDatuma,
|
||||
MinimumErvenyessegKezdete = feljegyzesHelperCo.MinimumErvenyessegKezdete,
|
||||
MaximumErvenyessegKezdete = feljegyzesHelperCo.MaximumErvenyessegKezdete,
|
||||
MinimumErvenyessegVege = feljegyzesHelperCo.MinimumErvenyessegVege,
|
||||
MaximumErvenyessegVege = feljegyzesHelperCo.MaximumErvenyessegVege,
|
||||
ApiControllerName = apiControllerName,
|
||||
ControllerName = controllerName,
|
||||
};
|
||||
return PartialView("~/Areas/Feljegyzes/Views/ElektronikusUzenetek/NaploNezet_Tab.cshtml", model);
|
||||
}
|
||||
|
||||
[NonAction]
|
||||
public ActionResult GetListaNezetTab(FeljegyzesekModel model)
|
||||
{
|
||||
return PartialView("~/Areas/Feljegyzes/Views/ElektronikusUzenetek/ListaNezet_Tab.cshtml", model);
|
||||
}
|
||||
|
||||
[NonAction]
|
||||
public ActionResult NaploNezetReszletekGrid(ElektronikusUzenetekNaploNezetGridModel model)
|
||||
{
|
||||
return PartialView("~/Areas/Feljegyzes/Views/ElektronikusUzenetek/DetailGrid.cshtml", model);
|
||||
}
|
||||
|
||||
protected List<TabStripItemModel> GetTabs(string controllerName)
|
||||
{
|
||||
var list = new List<TabStripItemModel>
|
||||
{
|
||||
new TabStripItemModel
|
||||
{
|
||||
ItemId = "0",
|
||||
ItemName = FeljegyzesekResource.NaploNezet,
|
||||
Area = "Feljegyzes",
|
||||
Controller = controllerName,
|
||||
Action = "GetNaploNezetTab"
|
||||
},
|
||||
new TabStripItemModel
|
||||
{
|
||||
ItemId = "1",
|
||||
ItemName = FeljegyzesekResource.ListaNezet,
|
||||
Area = "Feljegyzes",
|
||||
Controller = controllerName,
|
||||
Action = "GetListaNezetTab"
|
||||
}
|
||||
};
|
||||
|
||||
return list;
|
||||
}
|
||||
|
||||
#region Popup actions
|
||||
|
||||
[NonAction]
|
||||
public ActionResult OpenModifyPopup(int? id, int ocsID, string apiControllerName)
|
||||
{
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
|
||||
var co = helper.GetFeljegyzesById(id.Value);
|
||||
var feljegyzesHelperCo = helper.GetFeljegyzesHelperCo();
|
||||
var model = new ElektronikusUzenetPopupModel(co, ocsID)
|
||||
{
|
||||
MinimumErvenyessegKezdetePopup = feljegyzesHelperCo.MinimumErvenyessegKezdete,
|
||||
MaximumErvenyessegKezdetePopup = feljegyzesHelperCo.MaximumErvenyessegKezdete,
|
||||
MinimumErvenyessegVegePopup = feljegyzesHelperCo.MinimumErvenyessegVege,
|
||||
MaximumErvenyessegVegePopup = feljegyzesHelperCo.MaximumErvenyessegVege,
|
||||
ApiControllerName = apiControllerName,
|
||||
};
|
||||
|
||||
var popupModel = new PopUpModel(model, $"~/Areas/Feljegyzes/Views/ElektronikusUzenetek/{ModifyPopupName}.cshtml");
|
||||
popupModel.AddCancelBtn(popupModel, "ElektronikusUzenetekHelper.modifyPopupCancel");
|
||||
popupModel.AddOkBtn(popupModel, "ModifyPopupHelper.saveElektronikusUzenetPopup");
|
||||
popupModel.AddDeleteBtn(popupModel, "ElektronikusUzenetekHelper.modifyPopupDelete");
|
||||
|
||||
return PartialView(Constants.General.PopupView, popupModel);
|
||||
}
|
||||
|
||||
[NonAction]
|
||||
public ActionResult OpenStartPopup(bool isFromSzervezet)
|
||||
{
|
||||
var model = GetFeljegyzesekModel();
|
||||
model.IsDualisKepzohelyiCsoport = isFromSzervezet;
|
||||
return PartialView($"~/Areas/Feljegyzes/Views/ElektronikusUzenetek/Start_Popup.cshtml", model);
|
||||
}
|
||||
#endregion Popup actions
|
||||
}
|
||||
}
|
42
KretaWeb/Areas/Feljegyzes/Controllers/BeirasokController.cs
Normal file
42
KretaWeb/Areas/Feljegyzes/Controllers/BeirasokController.cs
Normal file
|
@ -0,0 +1,42 @@
|
|||
using System.Web.Mvc;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
public class BeirasokController : BaseBeirasokController
|
||||
{
|
||||
public BeirasokController(IKretaAuthorization authorization) : base(authorization)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
if (Authorization.IsValidDualisBeirasok())
|
||||
{
|
||||
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
|
||||
}
|
||||
var model = new FeljegyzesekSearchModel
|
||||
{
|
||||
ControllerName = Constants.Controllers.Beirasok,
|
||||
ApiControllerName = Constants.ApiControllers.BeirasokApi,
|
||||
};
|
||||
return View("Index", model);
|
||||
}
|
||||
|
||||
public new ActionResult BeirasokReszletekGrid(BeirasokGridModel model)
|
||||
{
|
||||
model.ApiControllerName = Constants.ApiControllers.BeirasokApi;
|
||||
return base.BeirasokReszletekGrid(model);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenStartPopup()
|
||||
{
|
||||
return OpenStartPopup(false);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,43 @@
|
|||
using System.Web.Mvc;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Attributes;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
|
||||
public class DualisBeirasokController : BaseBeirasokController
|
||||
{
|
||||
public DualisBeirasokController(IKretaAuthorization authorization) : base(authorization)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
if (!Authorization.IsValidDualisBeirasok())
|
||||
{
|
||||
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new { area = string.Empty }));
|
||||
}
|
||||
var model = new FeljegyzesekSearchModel
|
||||
{
|
||||
ControllerName = Constants.Controllers.DualisBeirasok,
|
||||
ApiControllerName = Constants.ApiControllers.DualisBeirasokApi,
|
||||
};
|
||||
return View("~/Areas/Feljegyzes/Views/Beirasok/Index.cshtml", model);
|
||||
}
|
||||
|
||||
public new ActionResult BeirasokReszletekGrid(BeirasokGridModel model)
|
||||
{
|
||||
model.ApiControllerName = Constants.ApiControllers.DualisBeirasokApi;
|
||||
return base.BeirasokReszletekGrid(model);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenStartPopup()
|
||||
{
|
||||
return OpenStartPopup(true);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,74 @@
|
|||
using System.Web.Mvc;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Attributes;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[KretaGlobalLanguageChangeActionFilter(LanguageCode = "hu-Dualis")]
|
||||
public class DualisElektronikusUzenetekController : BaseElektronikusUzenetekController
|
||||
{
|
||||
public DualisElektronikusUzenetekController(IKretaAuthorization authorization) : base(authorization)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
if (!Authorization.IsValidDualisElektronikusUzenetek())
|
||||
{
|
||||
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new
|
||||
{
|
||||
area = string.Empty
|
||||
}));
|
||||
}
|
||||
|
||||
var model = new FeljegyzesekModel
|
||||
{
|
||||
TabList = GetTabs(Constants.Controllers.DualisElektronikusUzenetek),
|
||||
ControllerName = Constants.Controllers.DualisElektronikusUzenetek,
|
||||
ApiControllerName = Constants.ApiControllers.DualisElektronikusUzenetekApi,
|
||||
IsDualisKepzohelyiCsoport = true,
|
||||
};
|
||||
return View("~/Areas/Feljegyzes/Views/ElektronikusUzenetek/Index.cshtml", model);
|
||||
}
|
||||
|
||||
public ActionResult GetNaploNezetTab()
|
||||
{
|
||||
return GetNaploNezetTab(Constants.Controllers.DualisElektronikusUzenetek, Constants.ApiControllers.DualisElektronikusUzenetekApi);
|
||||
}
|
||||
|
||||
public ActionResult GetListaNezetTab()
|
||||
{
|
||||
var model = new FeljegyzesekModel
|
||||
{
|
||||
ApiControllerName = Constants.ApiControllers.DualisElektronikusUzenetekApi,
|
||||
};
|
||||
return GetListaNezetTab(model);
|
||||
}
|
||||
|
||||
public new ActionResult NaploNezetReszletekGrid(ElektronikusUzenetekNaploNezetGridModel model)
|
||||
{
|
||||
model.ApiControllerName = Constants.ApiControllers.DualisElektronikusUzenetekApi;
|
||||
return base.NaploNezetReszletekGrid(model);
|
||||
}
|
||||
|
||||
#region Popup actions
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenStartPopup()
|
||||
{
|
||||
return OpenStartPopup(true);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenModifyPopup(int? id, int ocsID)
|
||||
{
|
||||
return OpenModifyPopup(id, ocsID, Constants.ApiControllers.DualisElektronikusUzenetekApi);
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -0,0 +1,94 @@
|
|||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public class ElektronikusUzenetekController : BaseElektronikusUzenetekController
|
||||
{
|
||||
#region Properties
|
||||
|
||||
public static string TabStripId => "ElektronikusUzenetekTabStrip";
|
||||
|
||||
public static string StartPopupFormName => "ElektronikusUzenetekStartPopupForm";
|
||||
public static string StartPopupId => "ElektronikusUzenetekStartWindow";
|
||||
|
||||
public static string GridNameNaploNezet => "ElektronikusUzenetNaploNezetGrid";
|
||||
public static string GridNameListaNezet => "ElektronikusUzenetListaNezetGrid";
|
||||
|
||||
public static string NewFormName => "ElektronikusUzenetNewForm";
|
||||
|
||||
public static string ModifyPopupName => "Modify_Popup";
|
||||
public static string ModifyFormName => "ElektronikusUzenetModifyForm";
|
||||
public static string ModifyPopupGridName => "ElektronikusUzenetModifyPopupGrid";
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public ElektronikusUzenetekController(IKretaAuthorization authorization) : base(authorization)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
if (Authorization.IsValidDualisElektronikusUzenetek())
|
||||
{
|
||||
return Redirect(Url.Action("AccessDenied", "ErrorHandler", new
|
||||
{
|
||||
area = string.Empty
|
||||
}));
|
||||
}
|
||||
|
||||
var model = new FeljegyzesekModel
|
||||
{
|
||||
TabList = GetTabs(Constants.Controllers.ElektronikusUzenetek),
|
||||
ControllerName = Constants.Controllers.ElektronikusUzenetek,
|
||||
ApiControllerName = Constants.ApiControllers.ElektronikusUzenetekApi,
|
||||
IsDualisKepzohelyiCsoport = false,
|
||||
};
|
||||
return View("Index", model);
|
||||
}
|
||||
|
||||
public ActionResult GetNaploNezetTab()
|
||||
{
|
||||
return GetNaploNezetTab(Constants.Controllers.ElektronikusUzenetek, Constants.ApiControllers.ElektronikusUzenetekApi);
|
||||
}
|
||||
|
||||
public ActionResult GetListaNezetTab()
|
||||
{
|
||||
var model = new FeljegyzesekModel
|
||||
{
|
||||
ApiControllerName = Constants.ApiControllers.ElektronikusUzenetekApi,
|
||||
};
|
||||
return GetListaNezetTab(model);
|
||||
}
|
||||
|
||||
public new ActionResult NaploNezetReszletekGrid(ElektronikusUzenetekNaploNezetGridModel model)
|
||||
{
|
||||
model.ApiControllerName = Constants.ApiControllers.ElektronikusUzenetekApi;
|
||||
return base.NaploNezetReszletekGrid(model);
|
||||
}
|
||||
|
||||
#region Popup actions
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenStartPopup()
|
||||
{
|
||||
return OpenStartPopup(false);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenModifyPopup(int? id, int ocsID)
|
||||
{
|
||||
return OpenModifyPopup(id, ocsID, Constants.ApiControllers.ElektronikusUzenetekApi);
|
||||
}
|
||||
|
||||
#endregion Popup actions
|
||||
}
|
||||
}
|
|
@ -0,0 +1,81 @@
|
|||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Core;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Models.EditorTemplates;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public class FaliujsagBejegyzesekController : AbstractFeljegyzesekController
|
||||
{
|
||||
public static string GridName => "FaliujsagBejegyzesekGrid";
|
||||
|
||||
public static string NewModifyPopupName => "New_Modify_Popup";
|
||||
public static string NewModifyFormName => "FaliujsagBejegyzesekNewModifyForm";
|
||||
public static string NewModifyPopupGridName => "FaliujsagBejegyzesekNewModifyPopupGrid";
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
return View();
|
||||
}
|
||||
|
||||
#region Popup actions
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.Szuperadmin.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Adminisztrator.ClaimValue, KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public ActionResult OpenNewModifyPopup(int? id)
|
||||
{
|
||||
bool isModify = id.IsEntityId();
|
||||
FaliujsagBejegyzesModel faliujsagModel;
|
||||
var helper = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
var hasAdminJogosultsag = ClaimManager.HasPackage(KretaClaimPackages.Adminisztrator.ClaimValue);
|
||||
FeljegyzesHelperCo feljegyzesHelperCo = helper.GetFeljegyzesHelperCo();
|
||||
if (isModify)
|
||||
{
|
||||
//NOTE: Az id az IdEntityId vizsgálat miatt nem lehet null!
|
||||
FeljegyzesCo co = helper.GetFeljegyzesById(id.Value);
|
||||
co.HasAdminJogosultsag = hasAdminJogosultsag;
|
||||
faliujsagModel = new FaliujsagBejegyzesModel(co);
|
||||
}
|
||||
else
|
||||
{
|
||||
faliujsagModel = new FaliujsagBejegyzesModel
|
||||
{
|
||||
IsMindenkinek = true,
|
||||
FeljegyzoId = ClaimData.FelhasznaloId,
|
||||
FeljegyzoNev = ClaimData.FelhasznaloNev,
|
||||
HasAdminJogosultsag = hasAdminJogosultsag,
|
||||
EsemenyDatuma = feljegyzesHelperCo.DefaultEsemenyDatuma
|
||||
};
|
||||
}
|
||||
|
||||
faliujsagModel.MinimumErvenyessegKezdete = feljegyzesHelperCo.MinimumErvenyessegKezdete;
|
||||
faliujsagModel.MaximumErvenyessegKezdete = feljegyzesHelperCo.MaximumErvenyessegKezdete;
|
||||
faliujsagModel.MinimumErvenyessegVege = feljegyzesHelperCo.MinimumErvenyessegVege;
|
||||
faliujsagModel.MaximumErvenyessegVege = feljegyzesHelperCo.MaximumErvenyessegVege;
|
||||
|
||||
var javascriptHelper = hasAdminJogosultsag ? "FeljegyzesKeresoHelper" : "FaliujsagBejegyzesekHelper";
|
||||
|
||||
var popupModel = new PopUpModel(faliujsagModel, NewModifyPopupName);
|
||||
popupModel.AddCancelBtn(popupModel, $"{javascriptHelper}.newModifyPopupCancel");
|
||||
popupModel.AddOkBtn(popupModel, "ModifyPopupHelper.saveFaliujsagPopup");
|
||||
if (isModify)
|
||||
{
|
||||
popupModel.AddDeleteBtn(popupModel, $"{javascriptHelper}.newModifyPopupDelete");
|
||||
}
|
||||
|
||||
return PartialView(Constants.General.PopupView, popupModel);
|
||||
}
|
||||
|
||||
#endregion Popup actions
|
||||
}
|
||||
}
|
|
@ -0,0 +1,185 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Linq;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Classes.ExcelHelpers;
|
||||
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.Framework.Util;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Areas.Nyomtatvanyok.Logic;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Models.EditorTemplates;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(
|
||||
KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue,
|
||||
KretaClaimPackages.Osztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.SzuperOsztalyfonok.ClaimValue
|
||||
)]
|
||||
public class KozossegiSzolgalatokController : Controller
|
||||
{
|
||||
|
||||
#region Properties
|
||||
|
||||
public static string StartPopupFormName => "KozossegiSzolgalatokStartPopupForm";
|
||||
public static string StartPopupId => "KozossegiSzolgalatokStartWindow";
|
||||
|
||||
public static string GridName => "KozossegiSzolgalatokGrid";
|
||||
public static string DetailGridNamePrefix => "KozossegiSzolgalatokReszletekGrid_";
|
||||
|
||||
public static string NewModifyPopupName => "New_Modify_Popup";
|
||||
public static string NewModifyFormName => "KozossegiSzolgalatNewModifyForm";
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
var helper = new OsztalyCsoportHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType());
|
||||
var model = new KozossegiSzolgalatokSearchModel();
|
||||
List<SelectListItem> osztalyList = new List<SelectListItem>();
|
||||
if (ClaimManager.HasPackage(
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue
|
||||
, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue
|
||||
, KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue))
|
||||
{
|
||||
osztalyList = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokForDDL().ToSelectListItemList();
|
||||
}
|
||||
else
|
||||
{
|
||||
osztalyList = new OsztalyHelper(ConnectionTypeExtensions.GetSessionConnectionType()).GetOsztalyokForDDL("", ClaimData.FelhasznaloId).ToSelectListItemList();
|
||||
}
|
||||
model.OsztalyCsoportList = osztalyList;
|
||||
if (osztalyList.Count == 1)
|
||||
{
|
||||
var csoportId = Convert.ToInt32(osztalyList.Single().Value);
|
||||
model.CsoportIdSearch = csoportId;
|
||||
model.OsztalyCsoportId = csoportId;
|
||||
model.OsztalyCsoportNev = osztalyList.Single().Text;
|
||||
}
|
||||
else
|
||||
{
|
||||
model.OsztalyCsoportId = null;
|
||||
model.OsztalyCsoportNev = string.Empty;
|
||||
}
|
||||
return View(model);
|
||||
}
|
||||
|
||||
#region Popup actions
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenStartPopup()
|
||||
{
|
||||
var model = new KozossegiSzolgalatokModel();
|
||||
return PartialView("Start_Popup", model);
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
[MvcRolePackageAuthorize(Enums.ManualEnums.TanevEnum.Mind,
|
||||
KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue,
|
||||
KretaClaimPackages.Osztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.SzuperOsztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue,
|
||||
KretaClaimPackages.IsSzirIntezmeny.ClaimValue
|
||||
)]
|
||||
public ActionResult OpenNewModifyPopup(int? id, int tanuloId)
|
||||
{
|
||||
bool isModify = id.IsEntityId();
|
||||
KozossegiSzolgalatModel kozossegiSzolgalatModel;
|
||||
|
||||
if (isModify)
|
||||
{
|
||||
//NOTE: Az id az IdEntityId vizsgálat miatt nem lehet null!
|
||||
KozossegiSzolgalatCo co = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetKozossegiSzolgalatById(id.Value);
|
||||
kozossegiSzolgalatModel = new KozossegiSzolgalatModel(co);
|
||||
}
|
||||
else
|
||||
{
|
||||
kozossegiSzolgalatModel = new KozossegiSzolgalatModel
|
||||
{
|
||||
TanuloId = tanuloId,
|
||||
IntervallumKezdete = DateTime.Today,
|
||||
IntervallumVege = DateTime.Today,
|
||||
RogzitesDatuma = DateTime.Today,
|
||||
Oraszam = 1
|
||||
};
|
||||
}
|
||||
|
||||
var systemSettingsHelper = new SystemSettingsHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
kozossegiSzolgalatModel.NemzetiDokumentumNyelvek = systemSettingsHelper.GetSystemSettingValue<List<int>>(RendszerBeallitasTipusEnum.Nemzeti_Nyelvi_Dokumentum_Nyelvek);
|
||||
kozossegiSzolgalatModel.KozossegiSzolgalatTipusList = GetKozossegiSzolgalatTipusList();
|
||||
|
||||
var popupModel = new PopUpModel(kozossegiSzolgalatModel, NewModifyPopupName);
|
||||
popupModel.AddBtn(popupModel, "KozsossegiSzolgalatBtnCancel", CommonResource.Megse, "KozossegiSzolgalatokHelper.newModifyPopupCancel", "BtnCancel");
|
||||
popupModel.AddBtn(popupModel, "KozsossegiSzolgalatBtnOk", CommonResource.Mentes, "KozossegiSzolgalatokHelper.newModifyPopupSave", "BtnOk");
|
||||
if (isModify)
|
||||
{
|
||||
popupModel.AddBtn(popupModel, "KozsossegiSzolgalatBtnDelete", CommonResource.Torles, "KozossegiSzolgalatokHelper.newModifyPopupDelete", "BtnDelete");
|
||||
}
|
||||
|
||||
return PartialView(Constants.General.PopupView, popupModel);
|
||||
}
|
||||
|
||||
#endregion Popup actions
|
||||
|
||||
[MvcRolePackageAuthorize(
|
||||
KretaClaimPackages.IsKozossegiSzolgalatKezelo.ClaimValue,
|
||||
KretaClaimPackages.Osztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.SzuperOsztalyfonok.ClaimValue,
|
||||
KretaClaimPackages.Adminisztrator.ClaimValue
|
||||
)]
|
||||
public ActionResult KozossegiSzolgalatokReszletekGrid(KozossegiSzolgalatokGridModel model)
|
||||
{
|
||||
return PartialView("DetailGrid", model);
|
||||
}
|
||||
|
||||
private static List<SelectListItem> GetKozossegiSzolgalatTipusList()
|
||||
{
|
||||
//NOTE: Az Na a korábban migrált és/vagy létrehozott közösségi szolgálatokhoz kell, mivel korábban még nem lehetett kiválasztani közösségi szolgálat típust/tevékenységet.
|
||||
var result = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.KozossegiSzolgalatTipus, ClaimData.SelectedTanevID.Value).ToSelectListItemList(new List<string> { ((int)KozossegiSzolgalatTipusEnum.Na).ToString() });
|
||||
return result;
|
||||
}
|
||||
|
||||
public ActionResult KozossegiSzolgalatokExportGrid([System.Web.Http.FromUri] KozossegiSzolgalatokSearchModel kozossegiSzolgalatokSearchModel)
|
||||
{
|
||||
try
|
||||
{
|
||||
var helper = new NyomtatvanyokHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
|
||||
KozossegiSzolgalatokSearchCo co = new KozossegiSzolgalatokSearchCo();
|
||||
co.OsztalyCsoportIdList = kozossegiSzolgalatokSearchModel.CsoportIdSearch.HasValue ? new List<int> { kozossegiSzolgalatokSearchModel.CsoportIdSearch.Value } : null;
|
||||
co.TanuloIdList = new List<int>();
|
||||
co.TanuloNev = kozossegiSzolgalatokSearchModel.TanuloNeve;
|
||||
co.IntervallumKezdete = kozossegiSzolgalatokSearchModel.IdoszakKezdete;
|
||||
co.IntervallumVege = kozossegiSzolgalatokSearchModel.IdoszakVege;
|
||||
co.OsszesOraszamKezdete = kozossegiSzolgalatokSearchModel.OsszesOraszamKezdete;
|
||||
co.OsszesOraszamVege = kozossegiSzolgalatokSearchModel.OsszesOraszamVege;
|
||||
co.AnyjaNeve = kozossegiSzolgalatokSearchModel.AnyjaNeve;
|
||||
|
||||
DataSet dataSet = helper.GetKozossegiSzolgalatokExcelExport(co);
|
||||
var data = FeljegyzesHelper.GetExcelData(dataSet);
|
||||
var excel = new ExcelExportManager();
|
||||
var stream = excel.CreateExcelExport(data, fejlec: false);
|
||||
|
||||
return File(stream, Kreta.Core.Constants.ContentTypes.Xlsx, $"{FeljegyzesekResource.KozossegiSzolgalatokExportFileName}.xlsx");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
throw NyomtatvanyokLogic.NyomtatvanyError(ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,62 @@
|
|||
using System.IO;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Areas.TanuloErtekeles.Controllers;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Tanar.ClaimValue, KretaClaimPackages.Osztalyfonok.ClaimValue, KretaClaimPackages.SzuperOsztalyfonok.ClaimValue)]
|
||||
public class OsszefuggoSzakGyakController : Controller
|
||||
{
|
||||
public static string StartPopupFormName => "OsszefuggoSzakGyakStartPopupForm";
|
||||
public static string StartPopupId => "OsszefuggoSzakGyakStartWindow";
|
||||
public static string StartPopupTitle => ClaimData.IsSelectedTanev20_21OrLater ? FeljegyzesekResource.EgybefuggoSzakmaiGyakorlat : FeljegyzesekResource.OsszefuggoSzakmaiGyakorlat;
|
||||
public static string GridName => "OsszefuggoSzakGyakGrid";
|
||||
private IKretaAuthorization Authorization { get; }
|
||||
|
||||
public OsszefuggoSzakGyakController(IKretaAuthorization authorization)
|
||||
{
|
||||
Authorization = authorization;
|
||||
}
|
||||
|
||||
public ActionResult Index()
|
||||
{
|
||||
var model = new OsszefuggoSzakGyakSearchModel
|
||||
{
|
||||
OsztalyzatList = new ErtekelesController(Authorization).GetOsztalyzatList(true)
|
||||
};
|
||||
|
||||
return View("Index", model);
|
||||
}
|
||||
|
||||
public ActionResult EgybefuggoSzakGyakIndex() => Index();
|
||||
|
||||
[HttpPost]
|
||||
[MvcValidateAjaxAntiForgeryToken]
|
||||
public ActionResult OpenStartPopup()
|
||||
{
|
||||
var model = new OsszefuggoSzakGyakModel
|
||||
{
|
||||
OsztalyzatList = new ErtekelesController(Authorization).GetOsztalyzatList(true)
|
||||
};
|
||||
|
||||
return PartialView("Start_Popup", model);
|
||||
}
|
||||
|
||||
public ActionResult Export(int csoportId, int tantargyId)
|
||||
{
|
||||
var helper = new OsszefuggoSzakGyakHelper(ConnectionTypeExtensions.GetSessionConnectionType());
|
||||
MemoryStream memoryStream = helper.Export(csoportId, tantargyId);
|
||||
|
||||
var fileStreamResult = new FileStreamResult(memoryStream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = FeljegyzesekResource.OsszefuggoSzakmaiGyakorlatExport };
|
||||
return fileStreamResult;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Security;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
{
|
||||
[MvcRoleClaimsAuthorize(true)]
|
||||
[MvcRolePackageDenyAuthorize(KretaClaimPackages.IsOnlyAlkalmozott.ClaimValue)]
|
||||
[MvcRolePackageAuthorize(KretaClaimPackages.Ellenorzo.ClaimValue)]
|
||||
public class TanuloKozossegiSzolgalataiController : Controller
|
||||
{
|
||||
// GET: Feljegyzes/TanuloKozossegiSzolgalatai
|
||||
public ActionResult Index()
|
||||
{
|
||||
return View();
|
||||
}
|
||||
}
|
||||
}
|
20
KretaWeb/Areas/Feljegyzes/FeljegyzesAreaRegistration.cs
Normal file
20
KretaWeb/Areas/Feljegyzes/FeljegyzesAreaRegistration.cs
Normal file
|
@ -0,0 +1,20 @@
|
|||
using System.Web.Mvc;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes
|
||||
{
|
||||
public class FeljegyzesAreaRegistration : AreaRegistration
|
||||
{
|
||||
|
||||
public override string AreaName => "Feljegyzes";
|
||||
|
||||
public override void RegisterArea(AreaRegistrationContext context)
|
||||
{
|
||||
context.MapRoute(
|
||||
"Feljegyzes_default",
|
||||
"Feljegyzes/{controller}/{action}/{id}",
|
||||
new { action = "Index", id = UrlParameter.Optional }
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
using System.IO;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Areas.Feljegyzes.Models;
|
||||
using Kreta.Web.Helpers;
|
||||
|
||||
namespace Kreta.Web.Areas.Hianyzas.Logic
|
||||
{
|
||||
public class AdminTanuloKozossegiSzolgalataiLLogic
|
||||
{
|
||||
public static ActionResult ExportKozossegiSzolgalat(AdminKozossegiSzolgalatokSearchModel model)
|
||||
{
|
||||
bool toroltElemek = false; // !ClaimManager.HasPackage(KretaClaimPackages.Ellenorzo.ClaimValue);
|
||||
|
||||
var co = model.ConvertModelToCo();
|
||||
|
||||
MemoryStream stream = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetTanulokKozossegiSzolgalatExcelExport(co, toroltElemek);
|
||||
var result = new FileStreamResult(stream, Core.Constants.ContentTypes.Xlsx) { FileDownloadName = FeljegyzesekResource.KozossegiSzolgalatExport };
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Framework.Util;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class AdminKozossegiSzolgalatokSearchModel
|
||||
{
|
||||
public AdminKozossegiSzolgalatokSearchModel()
|
||||
{
|
||||
KozossegiSzolgalatTipusList = FrameworkEnumExtensions.EnumToList((int)GeneratedAdatszotarTipusEnum.KozossegiSzolgalatTipus, ClaimData.SelectedTanevID.Value).ToSelectListItemList(new List<string> { ((int)KozossegiSzolgalatTipusEnum.Na).ToString() });
|
||||
}
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Intervallum), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime? IntervallumKezdete { get; set; }
|
||||
public DateTime? IntervallumVege { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntezmenyNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TeljesitesiHelye { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Oraszam), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public double? Oraszam { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TanuloNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TanuloNev { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.OsztalyNev), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string OsztalyNev { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tevekenyseg), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public int? KozossegiSzolgalatTipusa { get; set; }
|
||||
|
||||
public List<SelectListItem> KozossegiSzolgalatTipusList { get; set; }
|
||||
|
||||
public KozossegiSzolgalatokSearchCo ConvertModelToCo()
|
||||
{
|
||||
return new KozossegiSzolgalatokSearchCo
|
||||
{
|
||||
IntervallumKezdete = this.IntervallumKezdete,
|
||||
IntervallumVege = this.IntervallumVege,
|
||||
TeljesitesiHelye = this.TeljesitesiHelye,
|
||||
Oraszam = this.Oraszam,
|
||||
TanuloNev = this.TanuloNev,
|
||||
OsztalyNev = this.OsztalyNev,
|
||||
KozossegiSzolgalatTipusa = this.KozossegiSzolgalatTipusa
|
||||
};
|
||||
}
|
||||
|
||||
}
|
||||
}
|
94
KretaWeb/Areas/Feljegyzes/Models/BaseFeljegyzesModel.cs
Normal file
94
KretaWeb/Areas/Feljegyzes/Models/BaseFeljegyzesModel.cs
Normal file
|
@ -0,0 +1,94 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Helpers;
|
||||
using Microsoft.Ajax.Utilities;
|
||||
using ModelStateDictionary = System.Web.Http.ModelBinding.ModelStateDictionary;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class BaseFeljegyzesModel
|
||||
{
|
||||
public int? Id { get; set; }
|
||||
|
||||
public int? FeljegyzoId { get; set; }
|
||||
public bool HasAdminJogosultsag { get; set; }
|
||||
|
||||
public List<int> NemzetiDokumentumNyelvek { get; set; } = new List<int>();
|
||||
|
||||
public List<int> NyelvesitendoEsemenyTipuslist { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tanar), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string FeljegyzoNev { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.Datum), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime? EsemenyDatuma { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Cim), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string Targy { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Megjegyzes), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string Megjegyzes { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tartalom), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Tartalom { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TartalomNemet), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TartalomNemet { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TartalomHorvat), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TartalomHorvat { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TartalomRoman), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TartalomRoman { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TartalomSzerb), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TartalomSzerb { get; set; }
|
||||
|
||||
public DateTime? MinimumErvenyessegKezdete { get; set; }
|
||||
|
||||
public DateTime? MaximumErvenyessegKezdete { get; set; }
|
||||
|
||||
protected ModelStateDictionary BaseValidation()
|
||||
{
|
||||
var modelStateDictionary = new ModelStateDictionary();
|
||||
|
||||
if (Tartalom.IsNullOrWhiteSpace())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Tartalom), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.Tartalom}\""));
|
||||
}
|
||||
|
||||
if (Megjegyzes?.Length > 255)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Tartalom), string.Format(CommonResource.MaxLengthValidation, $"\"{FeljegyzesekResource.Megjegyzes}\"", 255));
|
||||
}
|
||||
|
||||
if (!EsemenyDatuma.HasValue)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(EsemenyDatuma), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.Datum}\""));
|
||||
}
|
||||
else
|
||||
{
|
||||
FeljegyzesHelperCo feljegyzesHelperCo = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetFeljegyzesHelperCo();
|
||||
var minimumErvenyessegKezdete = feljegyzesHelperCo.MinimumErvenyessegKezdete;
|
||||
var maximumErvenyessegKezdete = feljegyzesHelperCo.MaximumErvenyessegKezdete;
|
||||
var minOk = EsemenyDatuma >= minimumErvenyessegKezdete;
|
||||
var maxOk = EsemenyDatuma <= maximumErvenyessegKezdete;
|
||||
if (!minOk || !maxOk)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(EsemenyDatuma), string.Format(FeljegyzesekResource.ADatumCsakKozeEshet, minimumErvenyessegKezdete.ToString("yyyy. MM. dd."), maximumErvenyessegKezdete.ToString("yyyy. MM. dd.")));
|
||||
}
|
||||
}
|
||||
|
||||
return modelStateDictionary;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,76 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class BaseFeljegyzesNaploNezetGridModel : IKretaIdentity
|
||||
{
|
||||
|
||||
public string ID { get; set; }
|
||||
|
||||
public string TanuloId { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TanuloNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TanuloNev { get; set; }
|
||||
|
||||
public string OsztalyNev { get; set; }
|
||||
|
||||
public string AnyjaNeve { get; set; }
|
||||
|
||||
public DateTime SzuletesiIdo { get; set; }
|
||||
|
||||
public string SzuletesiIdoFormatted { get; set; }
|
||||
|
||||
public DateTime EsemenyDatuma { get; set; }
|
||||
|
||||
public string Tipus { get; set; }
|
||||
|
||||
public string FeljegyzoNeve { get; set; }
|
||||
|
||||
public string Targy { get; set; }
|
||||
|
||||
public string Tartalom { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Januar_I), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string JanuarI { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Januar_II), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string JanuarII { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Feb_02), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Februar { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Marc_03), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Marcius { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Apr_04), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Aprilis { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Maj_05), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Majus { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Jun_06), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Junius { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Jul_07), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Julius { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Aug_08), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Augusztus { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Szept_09), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Szeptember { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Okt_10), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Oktober { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Nov_11), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string November { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Dec_12), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string December { get; set; }
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class BaseFeljegyzesNaploNezetReszletekGridModel : IKretaIdentity
|
||||
{
|
||||
|
||||
public string ID { get; set; }
|
||||
|
||||
public int TanuloId { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Datum), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime EsemenyDatuma { get; set; }
|
||||
|
||||
public int Tipus { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tipus), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Tipus_DNAME { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Targy), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Targy { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tartalom), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Tartalom { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tanar), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string FeljegyzoNeve { get; set; }
|
||||
|
||||
public string Torolt { get; set; }
|
||||
|
||||
public bool Torolt_BOOL { get; set; }
|
||||
|
||||
}
|
||||
}
|
105
KretaWeb/Areas/Feljegyzes/Models/BeirasModel.cs
Normal file
105
KretaWeb/Areas/Feljegyzes/Models/BeirasModel.cs
Normal file
|
@ -0,0 +1,105 @@
|
|||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.Core;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Security;
|
||||
using ModelStateDictionary = System.Web.Http.ModelBinding.ModelStateDictionary;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class BeirasModel : BaseFeljegyzesModel
|
||||
{
|
||||
|
||||
#region Constructors
|
||||
|
||||
public BeirasModel()
|
||||
{
|
||||
}
|
||||
|
||||
public BeirasModel(FeljegyzesCo co, int tanuloId)
|
||||
{
|
||||
Id = co.Id;
|
||||
TanuloId = tanuloId;
|
||||
FeljegyzoId = co.FeljegyzoId;
|
||||
FeljegyzoNev = co.FeljegyzoNev;
|
||||
EsemenyDatuma = co.EsemenyDatuma;
|
||||
Tipus = co.Tipus;
|
||||
Targy = co.Targy;
|
||||
Megjegyzes = co.Megjegyzes;
|
||||
Tartalom = co.Tartalom;
|
||||
TartalomNemet = co.TartalomNemet;
|
||||
TartalomHorvat = co.TartalomHorvat;
|
||||
TartalomRoman = co.TartalomRoman;
|
||||
TartalomSzerb = co.TartalomSzerb;
|
||||
OsztalyCsoportId = co.RogziteskoriOsztalyId;
|
||||
}
|
||||
|
||||
#endregion Constructors
|
||||
|
||||
#region Properties
|
||||
|
||||
public int? TanuloId { get; set; }
|
||||
public int? OsztalyCsoportId { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tipus), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public int? Tipus { get; set; }
|
||||
|
||||
public List<SelectListItem> TipusList { get; set; }
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public ModelStateDictionary Validate()
|
||||
{
|
||||
var modelStateDictionary = BaseValidation();
|
||||
|
||||
if (!TanuloId.IsEntityId())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(TanuloId), TanuloResource.TanuloKivalasztasaKotelezo);
|
||||
}
|
||||
|
||||
if (!Tipus.IsEntityId())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Tipus), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.Tipus}\""));
|
||||
}
|
||||
|
||||
return modelStateDictionary;
|
||||
}
|
||||
|
||||
public FeljegyzesCo ToCo()
|
||||
{
|
||||
var result = new FeljegyzesCo
|
||||
{
|
||||
Id = Id,
|
||||
FeljegyzoId = FeljegyzoId,
|
||||
FeljegyzoNev = null,
|
||||
Kezdete = null,
|
||||
IsFaliujsagMegjelenes = false,
|
||||
IsMindenkinek = false,
|
||||
Megjegyzes = Megjegyzes,
|
||||
OsztalyCsoportIdList = new List<int> { },
|
||||
EsemenyDatuma = EsemenyDatuma,
|
||||
TanitasiOraId = null,
|
||||
TantargyId = null,
|
||||
//NOTE: A TanuloId nem lehet null, ha mégis, akkor ott hibás a működés!
|
||||
TanuloIdList = new List<int> { TanuloId.Value },
|
||||
Targy = string.IsNullOrWhiteSpace(Targy) ? Tipus.GetDisplayName<EsemenyTipusEnum>(ClaimData.SelectedTanevID.Value) : Targy,
|
||||
Tartalom = Tartalom,
|
||||
TartalomNemet = TartalomNemet,
|
||||
TartalomHorvat = TartalomHorvat,
|
||||
TartalomRoman = TartalomRoman,
|
||||
TartalomSzerb = TartalomSzerb,
|
||||
Tipus = Tipus,
|
||||
Vege = null,
|
||||
RogziteskoriOsztalyId = OsztalyCsoportId,
|
||||
BeirasOsztalyCsoportId = OsztalyCsoportId
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
7
KretaWeb/Areas/Feljegyzes/Models/BeirasokGridModel.cs
Normal file
7
KretaWeb/Areas/Feljegyzes/Models/BeirasokGridModel.cs
Normal file
|
@ -0,0 +1,7 @@
|
|||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class BeirasokGridModel : BaseFeljegyzesNaploNezetGridModel
|
||||
{
|
||||
public string ApiControllerName { get; set; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class BeirasokReszletekGridModel : BaseFeljegyzesNaploNezetReszletekGridModel
|
||||
{
|
||||
|
||||
}
|
||||
}
|
108
KretaWeb/Areas/Feljegyzes/Models/ElektronikusUzenetModel.cs
Normal file
108
KretaWeb/Areas/Feljegyzes/Models/ElektronikusUzenetModel.cs
Normal file
|
@ -0,0 +1,108 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using System.Web.Http.ModelBinding;
|
||||
using Foolproof;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Core;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class ElektronikusUzenetModel : BaseFeljegyzesModel
|
||||
{
|
||||
#region Properties
|
||||
|
||||
public List<int> TanuloIdList { get; set; } = new List<int>();
|
||||
|
||||
public int? OsztalyCsoportId { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IsFaliujsagMegjelenes), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public bool? IsFaliujsagMegjelenes { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IsMindenkinek), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public bool? IsMindenkinek { get; set; }
|
||||
|
||||
[RequiredIf("IsFaliujsagMegjelenes", true, ErrorMessage = "A következő mező kitöltése kötelező: \"Érvényesség vége\".")]
|
||||
[Display(Name = nameof(FeljegyzesekResource.ErvenyessegVege), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime? Vege { get; set; }
|
||||
|
||||
public DateTime? MinimumErvenyessegVege { get; set; }
|
||||
|
||||
public DateTime? MaximumErvenyessegVege { get; set; }
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public ModelStateDictionary Validate()
|
||||
{
|
||||
var modelStateDictionary = BaseValidation();
|
||||
|
||||
if (!OsztalyCsoportId.IsEntityId())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(OsztalyCsoportId), OsztalyCsoportResource.OsztalyCsoportKotelezo);
|
||||
}
|
||||
|
||||
if (!TanuloIdList.Any())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(TanuloIdList), TanuloResource.LegalabbEgyTanuloKivalasztasaKotelezo);
|
||||
}
|
||||
|
||||
if (IsFaliujsagMegjelenes.HasValue && IsFaliujsagMegjelenes.Value)
|
||||
{
|
||||
if (!Vege.HasValue)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.ErvenyessegVege}\""));
|
||||
}
|
||||
else
|
||||
{
|
||||
FeljegyzesHelperCo feljegyzesHelperCo = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetFeljegyzesHelperCo();
|
||||
var minimumErvenyessegVege = feljegyzesHelperCo.MinimumErvenyessegVege;
|
||||
var maximumErvenyessegVege = feljegyzesHelperCo.MaximumErvenyessegVege;
|
||||
var minOk = Vege >= minimumErvenyessegVege;
|
||||
var maxOk = Vege <= maximumErvenyessegVege;
|
||||
if (!minOk || !maxOk)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), string.Format(FeljegyzesekResource.AzErvenyessegVegeCsakKozeEshet, minimumErvenyessegVege.ToString("yyyy. MM. dd."), maximumErvenyessegVege.ToString("yyyy. MM. dd.")));
|
||||
}
|
||||
if (EsemenyDatuma.HasValue && Vege.Value < EsemenyDatuma.Value)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), FeljegyzesekResource.AzErvenyessegVegeNemLehetKisebbADatumnal);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return modelStateDictionary;
|
||||
}
|
||||
|
||||
public FeljegyzesCo ToCo()
|
||||
{
|
||||
var result = new FeljegyzesCo
|
||||
{
|
||||
Id = Id,
|
||||
FeljegyzoId = FeljegyzoId,
|
||||
FeljegyzoNev = null,
|
||||
Kezdete = IsFaliujsagMegjelenes != null && IsFaliujsagMegjelenes.Value ? EsemenyDatuma : null,
|
||||
IsFaliujsagMegjelenes = IsFaliujsagMegjelenes,
|
||||
IsMindenkinek = IsMindenkinek,
|
||||
Megjegyzes = Megjegyzes,
|
||||
//NOTE: A OsztalyCsoportId nem lehet null, ha mégis, akkor ott hibás a működés!
|
||||
OsztalyCsoportIdList = new List<int> { OsztalyCsoportId.Value },
|
||||
EsemenyDatuma = EsemenyDatuma,
|
||||
TanitasiOraId = null,
|
||||
TantargyId = null,
|
||||
TanuloIdList = TanuloIdList,
|
||||
Targy = string.IsNullOrWhiteSpace(Targy) ? EsemenyTipusEnum.ElektronikusUzenet.GetDisplayName(ClaimData.SelectedTanevID.Value) : Targy,
|
||||
Tartalom = Tartalom,
|
||||
Tipus = (int)EsemenyTipusEnum.ElektronikusUzenet,
|
||||
Vege = IsFaliujsagMegjelenes != null && IsFaliujsagMegjelenes.Value ? Vege : null
|
||||
};
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,25 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class ElektronikusUzenetPopupGridModel : IKretaIdentity
|
||||
{
|
||||
|
||||
public string ID { get; set; }
|
||||
|
||||
public string OsztalyNev { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TanuloNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TanuloNev { get; set; }
|
||||
|
||||
public string AnyjaNeve { get; set; }
|
||||
|
||||
public DateTime SzuletesiIdo { get; set; }
|
||||
|
||||
public string SzuletesiIdoFormatted { get; set; }
|
||||
|
||||
}
|
||||
}
|
110
KretaWeb/Areas/Feljegyzes/Models/ElektronikusUzenetPopupModel.cs
Normal file
110
KretaWeb/Areas/Feljegyzes/Models/ElektronikusUzenetPopupModel.cs
Normal file
|
@ -0,0 +1,110 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Foolproof;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class ElektronikusUzenetPopupModel
|
||||
{
|
||||
#region Constructors
|
||||
|
||||
public ElektronikusUzenetPopupModel()
|
||||
{
|
||||
}
|
||||
|
||||
public ElektronikusUzenetPopupModel(FeljegyzesCo co, int ocsID)
|
||||
{
|
||||
Id = co.Id;
|
||||
TanuloIdList = co.TanuloIdList;
|
||||
FeljegyzoIdPopup = co.FeljegyzoId;
|
||||
FeljegyzoNevPopup = co.FeljegyzoNev;
|
||||
EsemenyDatumaPopup = co.EsemenyDatuma;
|
||||
TargyPopup = co.Targy;
|
||||
MegjegyzesPopup = co.Megjegyzes;
|
||||
TartalomPopup = co.Tartalom;
|
||||
VegePopup = co.Vege;
|
||||
IsFaliujsagMegjelenesPopup = co.IsFaliujsagMegjelenes;
|
||||
IsMindenkinekPopup = co.IsMindenkinek;
|
||||
OsztalyCsoportId = ocsID;
|
||||
}
|
||||
|
||||
#endregion Constructors
|
||||
|
||||
#region Properties
|
||||
|
||||
public List<int> TanuloIdList { get; set; } = new List<int>();
|
||||
|
||||
public int? OsztalyCsoportId { get; set; }
|
||||
|
||||
public int? Id { get; set; }
|
||||
|
||||
public int? FeljegyzoIdPopup { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tanar), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string FeljegyzoNevPopup { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.Datum), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime? EsemenyDatumaPopup { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Cim), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string TargyPopup { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Megjegyzes), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string MegjegyzesPopup { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tartalom), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TartalomPopup { get; set; }
|
||||
|
||||
public DateTime? MinimumErvenyessegKezdetePopup { get; set; }
|
||||
|
||||
public DateTime? MaximumErvenyessegKezdetePopup { get; set; }
|
||||
|
||||
public DateTime? MinimumErvenyessegVegePopup { get; set; }
|
||||
|
||||
public DateTime? MaximumErvenyessegVegePopup { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IsFaliujsagMegjelenes), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public bool? IsFaliujsagMegjelenesPopup { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IsMindenkinek), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public bool? IsMindenkinekPopup { get; set; }
|
||||
|
||||
[RequiredIf("IsFaliujsagMegjelenesPopup", true, ErrorMessage = "A következő mező kitöltése kötelező: \"Érvényesség vége\".")]
|
||||
[Display(Name = nameof(FeljegyzesekResource.ErvenyessegVege), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime? VegePopup { get; set; }
|
||||
|
||||
public string ApiControllerName { get; set; }
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public ElektronikusUzenetModel ToSaveModel()
|
||||
{
|
||||
var result = new ElektronikusUzenetModel
|
||||
{
|
||||
Id = Id,
|
||||
TanuloIdList = TanuloIdList,
|
||||
OsztalyCsoportId = OsztalyCsoportId,
|
||||
FeljegyzoId = FeljegyzoIdPopup,
|
||||
FeljegyzoNev = FeljegyzoNevPopup,
|
||||
EsemenyDatuma = EsemenyDatumaPopup,
|
||||
Vege = IsFaliujsagMegjelenesPopup != null && IsFaliujsagMegjelenesPopup.Value ? VegePopup : null,
|
||||
Targy = string.IsNullOrWhiteSpace(TargyPopup) ? EsemenyTipusEnum.ElektronikusUzenet.GetDisplayName(ClaimData.SelectedTanevID.Value) : TargyPopup,
|
||||
Megjegyzes = MegjegyzesPopup,
|
||||
Tartalom = TartalomPopup,
|
||||
IsFaliujsagMegjelenes = IsFaliujsagMegjelenesPopup,
|
||||
IsMindenkinek = IsMindenkinekPopup
|
||||
};
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,114 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using System.Web.Http.ModelBinding;
|
||||
using Foolproof;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Core;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class ElektronikusUzenetSearchModel : BaseFeljegyzesModel
|
||||
{
|
||||
#region Properties
|
||||
|
||||
public int? CsoportIdSearch { get; set; }
|
||||
|
||||
public List<int> TanuloIdList { get; set; } = new List<int>();
|
||||
|
||||
public int? OsztalyCsoportId { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IsFaliujsagMegjelenes), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public bool? IsFaliujsagMegjelenes { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IsMindenkinek), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public bool? IsMindenkinek { get; set; }
|
||||
|
||||
[RequiredIf("IsFaliujsagMegjelenes", true, ErrorMessage = "A következő mező kitöltése kötelező: \"Érvényesség vége\".")]
|
||||
[Display(Name = nameof(FeljegyzesekResource.ErvenyessegVege), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime? Vege { get; set; }
|
||||
|
||||
public DateTime? MinimumErvenyessegVege { get; set; }
|
||||
|
||||
public DateTime? MaximumErvenyessegVege { get; set; }
|
||||
|
||||
public string ControllerName { get; set; }
|
||||
|
||||
public string ApiControllerName { get; set; }
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public ModelStateDictionary Validate()
|
||||
{
|
||||
var modelStateDictionary = BaseValidation();
|
||||
|
||||
if (!OsztalyCsoportId.IsEntityId())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(OsztalyCsoportId), OsztalyCsoportResource.OsztalyCsoportKotelezo);
|
||||
}
|
||||
|
||||
if (!TanuloIdList.Any())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(TanuloIdList), TanuloResource.LegalabbEgyTanuloKivalasztasaKotelezo);
|
||||
}
|
||||
|
||||
if (IsFaliujsagMegjelenes.HasValue && IsFaliujsagMegjelenes.Value)
|
||||
{
|
||||
if (!Vege.HasValue)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.ErvenyessegVege}\""));
|
||||
}
|
||||
else
|
||||
{
|
||||
FeljegyzesHelperCo feljegyzesHelperCo = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetFeljegyzesHelperCo();
|
||||
var minimumErvenyessegVege = feljegyzesHelperCo.MinimumErvenyessegVege;
|
||||
var maximumErvenyessegVege = feljegyzesHelperCo.MaximumErvenyessegVege;
|
||||
var minOk = Vege >= minimumErvenyessegVege;
|
||||
var maxOk = Vege <= maximumErvenyessegVege;
|
||||
if (!minOk || !maxOk)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), string.Format(FeljegyzesekResource.AzErvenyessegVegeCsakKozeEshet, minimumErvenyessegVege.ToString("yyyy. MM. dd."), maximumErvenyessegVege.ToString("yyyy. MM. dd.")));
|
||||
}
|
||||
if (EsemenyDatuma.HasValue && Vege.Value < EsemenyDatuma.Value)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), FeljegyzesekResource.AzErvenyessegVegeNemLehetKisebbADatumnal);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return modelStateDictionary;
|
||||
}
|
||||
|
||||
public FeljegyzesCo ToCo()
|
||||
{
|
||||
var result = new FeljegyzesCo
|
||||
{
|
||||
Id = Id,
|
||||
FeljegyzoId = FeljegyzoId,
|
||||
FeljegyzoNev = null,
|
||||
Kezdete = IsFaliujsagMegjelenes != null && IsFaliujsagMegjelenes.Value ? EsemenyDatuma : null,
|
||||
IsFaliujsagMegjelenes = IsFaliujsagMegjelenes,
|
||||
IsMindenkinek = IsMindenkinek,
|
||||
Megjegyzes = Megjegyzes,
|
||||
//NOTE: A OsztalyCsoportId nem lehet null, ha mégis, akkor ott hibás a működés!
|
||||
OsztalyCsoportIdList = new List<int> { OsztalyCsoportId.Value },
|
||||
EsemenyDatuma = EsemenyDatuma,
|
||||
TanitasiOraId = null,
|
||||
TantargyId = null,
|
||||
TanuloIdList = TanuloIdList,
|
||||
Targy = string.IsNullOrWhiteSpace(Targy) ? EsemenyTipusEnum.ElektronikusUzenet.GetDisplayName(ClaimData.SelectedTanevID.Value) : Targy,
|
||||
Tartalom = Tartalom,
|
||||
Tipus = (int)EsemenyTipusEnum.ElektronikusUzenet,
|
||||
Vege = IsFaliujsagMegjelenes != null && IsFaliujsagMegjelenes.Value ? Vege : null
|
||||
};
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class ElektronikusUzenetekListaNezetGridModel : IKretaIdentity
|
||||
{
|
||||
|
||||
public string ID { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Datum), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime EsemenyDatuma { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tanar), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string FeljegyzoNeve { get; set; }
|
||||
|
||||
public string IsFaliujsagMegjelenes { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.FaliujsagMegjelenes), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string IsFaliujsagMegjelenes_BNAME { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Targy), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Targy { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tartalom), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Tartalom { get; set; }
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class ElektronikusUzenetekNaploNezetGridModel : BaseFeljegyzesNaploNezetGridModel
|
||||
{
|
||||
public string ApiControllerName { get; set; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class ElektronikusUzenetekNaploNezetReszletekGridModel : BaseFeljegyzesNaploNezetReszletekGridModel
|
||||
{
|
||||
|
||||
}
|
||||
}
|
117
KretaWeb/Areas/Feljegyzes/Models/FaliujsagBejegyzesModel.cs
Normal file
117
KretaWeb/Areas/Feljegyzes/Models/FaliujsagBejegyzesModel.cs
Normal file
|
@ -0,0 +1,117 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Web.Http.ModelBinding;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Helpers;
|
||||
using Kreta.Enums;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Helpers;
|
||||
using Kreta.Web.Security;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class FaliujsagBejegyzesModel : BaseFeljegyzesModel
|
||||
{
|
||||
#region Constructors
|
||||
|
||||
public FaliujsagBejegyzesModel()
|
||||
{
|
||||
}
|
||||
|
||||
public FaliujsagBejegyzesModel(FeljegyzesCo co)
|
||||
{
|
||||
Id = co.Id;
|
||||
FeljegyzoId = co.FeljegyzoId;
|
||||
FeljegyzoNev = co.FeljegyzoNev;
|
||||
OsztalyCsoportIdList = co.OsztalyCsoportIdList;
|
||||
EsemenyDatuma = co.EsemenyDatuma;
|
||||
Targy = co.Targy;
|
||||
Megjegyzes = co.Megjegyzes;
|
||||
Tartalom = co.Tartalom;
|
||||
Vege = co.Vege;
|
||||
IsMindenkinek = co.IsMindenkinek;
|
||||
HasAdminJogosultsag = co.HasAdminJogosultsag;
|
||||
}
|
||||
|
||||
#endregion Constructors
|
||||
|
||||
#region Properties
|
||||
|
||||
public List<int> OsztalyCsoportIdList { get; set; } = new List<int>();
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.BejegyzesElerhetoEgeszIntezmenySzamara), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public bool? IsMindenkinek { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.ErvenyessegVege), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime? Vege { get; set; }
|
||||
|
||||
public DateTime? MinimumErvenyessegVege { get; set; }
|
||||
|
||||
public DateTime? MaximumErvenyessegVege { get; set; }
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public ModelStateDictionary Validate()
|
||||
{
|
||||
var modelStateDictionary = BaseValidation();
|
||||
|
||||
if (!Vege.HasValue)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.ErvenyessegVege}\""));
|
||||
}
|
||||
else
|
||||
{
|
||||
FeljegyzesHelperCo feljegyzesHelperCo = new FeljegyzesHelper(ConnectionTypeExtensions.GetActiveSessionConnectionType()).GetFeljegyzesHelperCo();
|
||||
var minimumErvenyessegVege = feljegyzesHelperCo.MinimumErvenyessegVege;
|
||||
var maximumErvenyessegVege = feljegyzesHelperCo.MaximumErvenyessegVege;
|
||||
var minOk = Vege >= minimumErvenyessegVege;
|
||||
var maxOk = Vege <= maximumErvenyessegVege;
|
||||
if (!minOk || !maxOk)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), string.Format(FeljegyzesekResource.AzErvenyessegVegeCsakKozeEshet, minimumErvenyessegVege.ToString("yyyy. MM. dd."), maximumErvenyessegVege.ToString("yyyy. MM. dd.")));
|
||||
}
|
||||
if (EsemenyDatuma.HasValue && Vege.Value < EsemenyDatuma.Value)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Vege), FeljegyzesekResource.AzErvenyessegVegeNemLehetKisebbADatumnal);
|
||||
}
|
||||
}
|
||||
|
||||
return modelStateDictionary;
|
||||
}
|
||||
|
||||
public FeljegyzesCo ToCo(bool isFogadoora = false)
|
||||
{
|
||||
var result = new FeljegyzesCo
|
||||
{
|
||||
Id = Id,
|
||||
FeljegyzoId = FeljegyzoId,
|
||||
FeljegyzoNev = null,
|
||||
Kezdete = EsemenyDatuma,
|
||||
IsFaliujsagMegjelenes = true,
|
||||
IsMindenkinek = IsMindenkinek,
|
||||
Megjegyzes = Megjegyzes,
|
||||
OsztalyCsoportIdList = OsztalyCsoportIdList,
|
||||
EsemenyDatuma = EsemenyDatuma,
|
||||
TanitasiOraId = null,
|
||||
TantargyId = null,
|
||||
TanuloIdList = new List<int>(),
|
||||
Targy = string.IsNullOrWhiteSpace(Targy) ? EsemenyTipusEnum.FaliujsagBejegyzes.GetDisplayName(ClaimData.SelectedTanevID.Value) : Targy,
|
||||
Tartalom = Tartalom,
|
||||
Tipus = (int)EsemenyTipusEnum.FaliujsagBejegyzes,
|
||||
Vege = Vege
|
||||
};
|
||||
|
||||
if (isFogadoora)
|
||||
{
|
||||
var now = DateTime.Now;
|
||||
var newKezdetDatum = result.Vege.Value.AddDays(-7).Date.AddHours(now.Hour).AddMinutes(now.Minute);
|
||||
result.Kezdete = newKezdetDatum < now ? now : newKezdetDatum;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,15 @@
|
|||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class FaliujsagBejegyzesPopupGridModel : IKretaIdentity
|
||||
{
|
||||
|
||||
public string ID { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.OsztalyCsoportNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string OsztalyCsoportNeve { get; set; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class FaliujsagBejegyzesekGridModel : IKretaIdentity
|
||||
{
|
||||
|
||||
public string ID { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.ErvenyessegKezdete), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime Kezdete { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.ErvenyessegVege), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime Vege { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Targy), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Targy { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tartalom), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Tartalom { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tanar), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string FeljegyzoNeve { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Cimzettek), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Cimzettek { get; set; }
|
||||
|
||||
}
|
||||
}
|
11
KretaWeb/Areas/Feljegyzes/Models/FeljegyzesTorlesModel.cs
Normal file
11
KretaWeb/Areas/Feljegyzes/Models/FeljegyzesTorlesModel.cs
Normal file
|
@ -0,0 +1,11 @@
|
|||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class FeljegyzesTorlesModel
|
||||
{
|
||||
|
||||
public int Id { get; set; }
|
||||
|
||||
public int TanuloId { get; set; }
|
||||
|
||||
}
|
||||
}
|
28
KretaWeb/Areas/Feljegyzes/Models/FeljegyzesekModel.cs
Normal file
28
KretaWeb/Areas/Feljegyzes/Models/FeljegyzesekModel.cs
Normal file
|
@ -0,0 +1,28 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.Resources;
|
||||
using Kreta.Web.Helpers.TabStrip;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class FeljegyzesekModel
|
||||
{
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(OsztalyCsoportResource.OsztalyCsoport), ResourceType = typeof(OsztalyCsoportResource))]
|
||||
public int? OsztalyCsoportId { get; set; }
|
||||
|
||||
public DateTime? ElsoTanitasiNap { get; set; }
|
||||
|
||||
public DateTime? DefaultEsemenyDatuma { get; set; }
|
||||
|
||||
public List<TabStripItemModel> TabList { get; set; }
|
||||
|
||||
public string ControllerName { get; set; }
|
||||
|
||||
public string ApiControllerName { get; set; }
|
||||
|
||||
public bool IsDualisKepzohelyiCsoport { get; set; }
|
||||
}
|
||||
}
|
13
KretaWeb/Areas/Feljegyzes/Models/FeljegyzesekSearchModel.cs
Normal file
13
KretaWeb/Areas/Feljegyzes/Models/FeljegyzesekSearchModel.cs
Normal file
|
@ -0,0 +1,13 @@
|
|||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class FeljegyzesekSearchModel
|
||||
{
|
||||
public bool IsNaploFeljegyzes { get; set; }
|
||||
|
||||
public int? CsoportIdSearch { get; set; }
|
||||
|
||||
public string ControllerName { get; set; }
|
||||
|
||||
public string ApiControllerName { get; set; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class FelmentesekSearchModel
|
||||
{
|
||||
}
|
||||
}
|
206
KretaWeb/Areas/Feljegyzes/Models/KozossegiSzolgalatModel.cs
Normal file
206
KretaWeb/Areas/Feljegyzes/Models/KozossegiSzolgalatModel.cs
Normal file
|
@ -0,0 +1,206 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.Classes;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.Core;
|
||||
using Kreta.Resources;
|
||||
using Microsoft.Ajax.Utilities;
|
||||
using ModelStateDictionary = System.Web.Http.ModelBinding.ModelStateDictionary;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class KozossegiSzolgalatModel
|
||||
{
|
||||
|
||||
#region Constructors
|
||||
|
||||
public KozossegiSzolgalatModel()
|
||||
{
|
||||
}
|
||||
|
||||
public KozossegiSzolgalatModel(KozossegiSzolgalatCo co)
|
||||
{
|
||||
Id = co.Id;
|
||||
|
||||
TanuloId = co.TanuloId;
|
||||
IntervallumKezdete = co.IntervallumKezdete;
|
||||
IntervallumVege = co.IntervallumVege;
|
||||
TeljesitesiHelye = co.TeljesitesiHelye;
|
||||
TeljesitesiHelyeNemet = co.TeljesitesiHelyeNemet;
|
||||
TeljesitesiHelyeHorvat = co.TeljesitesiHelyeHorvat;
|
||||
TeljesitesiHelyeRoman = co.TeljesitesiHelyeRoman;
|
||||
TeljesitesiHelyeSzerb = co.TeljesitesiHelyeSzerb;
|
||||
Oraszam = co.Oraszam;
|
||||
KozossegiSzolgalatTipusa = co.KozossegiSzolgalatTipusa;
|
||||
Megjegyzes = co.Megjegyzes;
|
||||
MegjegyzesNemet = co.MegjegyzesNemet;
|
||||
MegjegyzesHorvat = co.MegjegyzesHorvat;
|
||||
MegjegyzesRoman = co.MegjegyzesRoman;
|
||||
MegjegyzesSzerb = co.MegjegyzesSzerb;
|
||||
RogzitesDatuma = co.RogzitesDatuma;
|
||||
}
|
||||
|
||||
#endregion Constructors
|
||||
|
||||
#region Properties
|
||||
|
||||
public int? Id { get; set; }
|
||||
|
||||
public int FeljegyzoId { get; set; }
|
||||
|
||||
public int TanuloId { get; set; }
|
||||
|
||||
public int OsztalyCsoportId { get; set; }
|
||||
|
||||
public List<int> NemzetiDokumentumNyelvek { get; set; } = new List<int>();
|
||||
|
||||
[KretaRequired]
|
||||
[DateRange(ErrorMessageResourceName = nameof(ErrorResource.IntervallumKezdeteNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))]
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntervallumKezdete), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime IntervallumKezdete { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[DateRange(ErrorMessageResourceName = nameof(ErrorResource.IntervallumVegeNemErvenyes), ErrorMessageResourceType = typeof(ErrorResource))]
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntervallumVege), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime IntervallumVege { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntezmenyNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[KretaRequired]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string TeljesitesiHelye { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntezmenyNeveNemet), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string TeljesitesiHelyeNemet { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntezmenyNeveHorvat), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string TeljesitesiHelyeHorvat { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntezmenyNeveRoman), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string TeljesitesiHelyeRoman { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntezmenyNeveSzerb), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string TeljesitesiHelyeSzerb { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.Oraszam), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public double? Oraszam { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Megjegyzes), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(1000, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string Megjegyzes { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.MegjegyzesNemet), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(1000, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string MegjegyzesNemet { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.MegjegyzesHorvat), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(1000, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string MegjegyzesHorvat { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.MegjegyzesRoman), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(1000, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string MegjegyzesRoman { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.MegjegyzesSzerb), ResourceType = typeof(FeljegyzesekResource))]
|
||||
[MaxLength(1000, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
public string MegjegyzesSzerb { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.RogzitesDatuma), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime RogzitesDatuma { get; set; }
|
||||
|
||||
[KretaRequired]
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tevekenyseg), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public int? KozossegiSzolgalatTipusa { get; set; }
|
||||
|
||||
public List<SelectListItem> KozossegiSzolgalatTipusList { get; set; }
|
||||
|
||||
#endregion Properties
|
||||
|
||||
public ModelStateDictionary Validate()
|
||||
{
|
||||
var modelStateDictionary = new ModelStateDictionary();
|
||||
|
||||
var now = DateTime.Today;
|
||||
|
||||
if (Oraszam > 50)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Oraszam), ErrorResource.OraszamEgyes50Koze);
|
||||
}
|
||||
|
||||
if (IntervallumVege > now)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(IntervallumVege), FeljegyzesekResource.IntervallumVegeNagyobbMintAMaiNap);
|
||||
}
|
||||
if (IntervallumKezdete > IntervallumVege)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(IntervallumKezdete), FeljegyzesekResource.IntervallumKezdeteNagyobbMintAVege);
|
||||
}
|
||||
|
||||
if (TeljesitesiHelye.IsNullOrWhiteSpace())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(TeljesitesiHelye), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.IntezmenyNeve}\""));
|
||||
}
|
||||
|
||||
if (!Oraszam.HasValue)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Oraszam), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.Oraszam}\""));
|
||||
}
|
||||
else
|
||||
{
|
||||
var oraszam = Oraszam.Value;
|
||||
if (oraszam < 1)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(Oraszam), FeljegyzesekResource.AzOraszamNemLehetKisebb1);
|
||||
}
|
||||
}
|
||||
|
||||
if (!KozossegiSzolgalatTipusa.IsEntityId())
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(KozossegiSzolgalatTipusa), string.Format(CommonResource.Required, $"\"{FeljegyzesekResource.Tevekenyseg}\""));
|
||||
}
|
||||
if (RogzitesDatuma < IntervallumKezdete)
|
||||
{
|
||||
modelStateDictionary.AddModelError(nameof(RogzitesDatuma), FeljegyzesekResource.RogzitesDatumaNemLehetNagyobbMintAzIntervallumKedete);
|
||||
}
|
||||
|
||||
return modelStateDictionary;
|
||||
}
|
||||
|
||||
public KozossegiSzolgalatCo ToCo()
|
||||
{
|
||||
var result = new KozossegiSzolgalatCo
|
||||
{
|
||||
Id = Id,
|
||||
|
||||
TanuloId = TanuloId,
|
||||
IntervallumKezdete = IntervallumKezdete,
|
||||
IntervallumVege = IntervallumVege,
|
||||
Megjegyzes = Megjegyzes,
|
||||
MegjegyzesNemet = MegjegyzesNemet,
|
||||
MegjegyzesHorvat = MegjegyzesHorvat,
|
||||
MegjegyzesRoman = MegjegyzesRoman,
|
||||
MegjegyzesSzerb = MegjegyzesSzerb,
|
||||
//NOTE: Validáció miatt nem lehet null az Oraszam!!!
|
||||
Oraszam = Oraszam.Value,
|
||||
TeljesitesiHelye = TeljesitesiHelye,
|
||||
TeljesitesiHelyeNemet = TeljesitesiHelyeNemet,
|
||||
TeljesitesiHelyeHorvat = TeljesitesiHelyeHorvat,
|
||||
TeljesitesiHelyeRoman = TeljesitesiHelyeRoman,
|
||||
TeljesitesiHelyeSzerb = TeljesitesiHelyeSzerb,
|
||||
FeljegyzoId = FeljegyzoId,
|
||||
//NOTE: Validáció miatt nem lehet null a KozossegiSzolgalatTipusa!!!
|
||||
KozossegiSzolgalatTipusa = KozossegiSzolgalatTipusa.Value,
|
||||
RogzitesDatuma = RogzitesDatuma
|
||||
};
|
||||
return result;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,28 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class KozossegiSzolgalatokGridModel : IKretaIdentity
|
||||
{
|
||||
|
||||
public string ID { get; set; }
|
||||
|
||||
public string TanuloId { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TanuloNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TanuloNev { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.SzuletesiIdo), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime SzuletesiIdo { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.AnyjaNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string AnyjaNeve { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.OsszesOraszam), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public double OsszesOraszam { get; set; }
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class KozossegiSzolgalatokModel
|
||||
{
|
||||
[Display(Name = nameof(CommonResource.OsztalyCsoport), ResourceType = typeof(CommonResource))]
|
||||
public int? OsztalyCsoportId { get; set; }
|
||||
|
||||
public string OsztalyCsoportNev { get; set; }
|
||||
|
||||
public List<SelectListItem> OsztalyCsoportList { get; set; }
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,56 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class KozossegiSzolgalatokReszletekGridModel : IKretaIdentity
|
||||
{
|
||||
|
||||
public string ID { get; set; }
|
||||
|
||||
public int TanuloId { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntervallumKezdete), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime IntervallumKezdete { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntervallumVege), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime IntervallumVege { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.IntezmenyNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TeljesitesiHelye { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Oraszam), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public double Oraszam { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TanuloNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TanuloNev { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.OsztalyNev), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string OsztalyNev { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Tevekenyseg), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string KozossegiSzolgalatTipusa_DNAME { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.Megjegyzes), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string Megjegyzes { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.RogzitesDatuma), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public DateTime RogzitesDatuma { get; set; }
|
||||
|
||||
[Display(Name = nameof(CommonResource.Ugyiratszam), ResourceType = typeof(CommonResource))]
|
||||
public string Ugyiratszam { get; set; }
|
||||
|
||||
public string Modosithato { get; set; }
|
||||
|
||||
public bool Modosithato_BOOL { get; set; }
|
||||
|
||||
public string Torolt { get; set; }
|
||||
|
||||
public bool Torolt_BOOL { get; set; }
|
||||
|
||||
public bool Torolheto_BOOL { get; set; }
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,49 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class KozossegiSzolgalatokSearchModel
|
||||
{
|
||||
[Display(Name = nameof(TanuloResource.IntervallumKezdete), ResourceType = typeof(TanuloResource))]
|
||||
public DateTime? IdoszakKezdete { get; set; }
|
||||
public DateTime? IdoszakVege { get; set; }
|
||||
|
||||
[Display(Name = nameof(FelhasznalokResource.TanuloNeve), ResourceType = typeof(FelhasznalokResource))]
|
||||
public string TanuloNeve { get; set; }
|
||||
|
||||
[Display(Name = nameof(AdminisztracioResource.AnyjaNeve), ResourceType = typeof(AdminisztracioResource))]
|
||||
public string AnyjaNeve { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.OsszesOraszam), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public double OsszesOraszamKezdete { get; set; }
|
||||
public double OsszesOraszamVege { get; set; }
|
||||
|
||||
public int? CsoportIdSearch { get; set; }
|
||||
|
||||
public int? OsztalyCsoportId { get; set; }
|
||||
|
||||
public string OsztalyCsoportNev { get; set; }
|
||||
|
||||
public List<SelectListItem> OsztalyCsoportList { get; set; }
|
||||
|
||||
public KozossegiSzolgalatokSearchCo ConvertModelToCo()
|
||||
{
|
||||
var co = new KozossegiSzolgalatokSearchCo
|
||||
{
|
||||
IntervallumKezdete = this.IdoszakKezdete,
|
||||
IntervallumVege = this.IdoszakVege,
|
||||
TanuloNev = this.TanuloNeve,
|
||||
AnyjaNeve = this.AnyjaNeve,
|
||||
OsszesOraszamKezdete = this.OsszesOraszamKezdete,
|
||||
OsszesOraszamVege = this.OsszesOraszamVege,
|
||||
OsztalyCsoportIdList = this.CsoportIdSearch.HasValue ? new List<int> { CsoportIdSearch.Value } : null
|
||||
};
|
||||
return co;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using Kreta.BusinessLogic.HelperClasses;
|
||||
using Kreta.BusinessLogic.Interfaces;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class OsszefuggoSzakGyakGridModel : IKretaIdentity
|
||||
{
|
||||
public string ID { get; set; }
|
||||
|
||||
[Display(Name = nameof(FeljegyzesekResource.TanuloNeve), ResourceType = typeof(FeljegyzesekResource))]
|
||||
public string TanuloNev { get; set; }
|
||||
|
||||
public string Teljesitett { get; set; }
|
||||
|
||||
public string ErtekelesOsztalyzatId { get; set; }
|
||||
|
||||
public string ErtekelesSzoveg { get; set; }
|
||||
|
||||
public string Megjegyzes { get; set; }
|
||||
|
||||
public DateTime? TeljesitesDatum => !string.IsNullOrWhiteSpace(TeljesitesDatumFormatted) ? DateTime.Parse(TeljesitesDatumFormatted) : (DateTime?)null;
|
||||
|
||||
public string TeljesitesDatumFormatted { get; set; }
|
||||
|
||||
public int CsoportId { get; set; }
|
||||
|
||||
public int TantargyId { get; set; }
|
||||
|
||||
public OsszefuggoSzakGyakGridCo ToCo()
|
||||
{
|
||||
var co = new OsszefuggoSzakGyakGridCo
|
||||
{
|
||||
ID = int.Parse(ID),
|
||||
TanuloNev = TanuloNev,
|
||||
Teljesitett = !string.IsNullOrWhiteSpace(Teljesitett) ? Teljesitett == "T" : (bool?)null,
|
||||
ErtekelesOsztalyzatId = !string.IsNullOrWhiteSpace(ErtekelesOsztalyzatId) ? int.Parse(ErtekelesOsztalyzatId) : (int?)null,
|
||||
ErtekelesSzoveg = ErtekelesSzoveg,
|
||||
Megjegyzes = Megjegyzes,
|
||||
TeljesitesDatum = TeljesitesDatum,
|
||||
CsoportId = CsoportId,
|
||||
TantargyId = TantargyId
|
||||
};
|
||||
|
||||
return co;
|
||||
|
||||
}
|
||||
}
|
||||
}
|
28
KretaWeb/Areas/Feljegyzes/Models/OsszefuggoSzakGyakModel.cs
Normal file
28
KretaWeb/Areas/Feljegyzes/Models/OsszefuggoSzakGyakModel.cs
Normal file
|
@ -0,0 +1,28 @@
|
|||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class OsszefuggoSzakGyakModel
|
||||
{
|
||||
public OsszefuggoSzakGyakModel()
|
||||
{
|
||||
TeljesitettList = new List<SelectListItem>
|
||||
{
|
||||
new SelectListItem { Value = "T", Text = FeljegyzesekResource.Teljesitve },
|
||||
new SelectListItem { Value = "F", Text = FeljegyzesekResource.NemTeljesitve }
|
||||
};
|
||||
}
|
||||
|
||||
[Display(Name = nameof(CommonResource.Csoport), ResourceType = typeof(CommonResource))]
|
||||
public int? CsoportId { get; set; }
|
||||
|
||||
[Display(Name = nameof(CommonResource.Tantargy), ResourceType = typeof(CommonResource))]
|
||||
public int? TantargyId { get; set; }
|
||||
|
||||
public List<SelectListItem> OsztalyzatList { get; set; }
|
||||
public List<SelectListItem> TeljesitettList { get; set; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Web.Mvc;
|
||||
using Kreta.Resources;
|
||||
|
||||
namespace Kreta.Web.Areas.Feljegyzes.Models
|
||||
{
|
||||
public class OsszefuggoSzakGyakSearchModel
|
||||
{
|
||||
public OsszefuggoSzakGyakSearchModel()
|
||||
{
|
||||
TeljesitettList = new List<SelectListItem>
|
||||
{
|
||||
new SelectListItem { Value = "T", Text = FeljegyzesekResource.Teljesitve },
|
||||
new SelectListItem { Value = "F", Text = FeljegyzesekResource.NemTeljesitve }
|
||||
};
|
||||
}
|
||||
|
||||
public int? CsoportIdSearch { get; set; }
|
||||
|
||||
public int? TantargyIdSearch { get; set; }
|
||||
|
||||
public List<SelectListItem> OsztalyzatList { get; set; }
|
||||
|
||||
public List<SelectListItem> TeljesitettList { get; set; }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,95 @@
|
|||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
@using Kreta.Resources
|
||||
|
||||
@section AddCss {
|
||||
@Styles.Render(Constants.General.FeljegyzesekCSS)
|
||||
}
|
||||
|
||||
@{
|
||||
string gridName = KozossegiSzolgalatokController.GridName;
|
||||
}
|
||||
|
||||
@model AdminKozossegiSzolgalatokSearchModel
|
||||
|
||||
@section AddSearchPanel {
|
||||
@using (Html.SearchPanelSideBar("searchForm", gridName))
|
||||
{
|
||||
@Html.KretaRangeDatePickerSideBar(x => x.IntervallumKezdete, x => x.IntervallumVege)
|
||||
@Html.KretaTextBoxFor(x => x.TanuloNev).RenderSearchPanelSideBar()
|
||||
@Html.KretaComboBoxFor(x => x.OsztalyNev, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = Constants.ApiControllers.ComboBoxHelperApi, action = "GetOsztalyListForCascadeCB", isOsztalyNevValue = true })).AutoBind(true).RenderSearchPanelSideBar()
|
||||
@Html.KretaTextBoxFor(x => x.TeljesitesiHelye).RenderSearchPanelSideBar()
|
||||
@Html.KretaNumericFor(x => x.Oraszam).Min(1).Max(50).RenderSearchPanelSideBar()
|
||||
@Html.KretaComboBoxFor(x => x.KozossegiSzolgalatTipusa, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetKozossegiSzolgalatTipusList" })).RenderSearchPanelSideBar()
|
||||
}
|
||||
}
|
||||
|
||||
@{
|
||||
List<FunctionCommand> nestedExportFunctions = new List<FunctionCommand>
|
||||
{
|
||||
new FunctionCommand {Name = FeljegyzesekResource.TanulokKozossegiSzolgalataiExport, ClientAction = "KozossegiSzolgalatHelper.exportKzossegiSzolgalat"},
|
||||
};
|
||||
List<FunctionCommand> functions = new List<FunctionCommand>
|
||||
{
|
||||
new FunctionCommand { Name = FeljegyzesekResource.Export.ToUpper(), NestedCommands = nestedExportFunctions }
|
||||
};
|
||||
}
|
||||
|
||||
<div>
|
||||
@(
|
||||
Html.KretaGrid<KozossegiSzolgalatokReszletekGridModel>(
|
||||
gridName,
|
||||
new GridApiUrl("AdminTanuloKozossegiSzolgalataiApi", "GetTanuloKozossegiSzolgalataiGrid"),
|
||||
useToolBar: true,
|
||||
dataParameterFunction: "searchForm",
|
||||
dataBoundAdditionalFunction: "KozossegiSzolgalatHelper.setAthuzas(this)",
|
||||
sort: sort => sort.Add(s => s.IntervallumKezdete).Descending(),
|
||||
allowSorting: true,
|
||||
allowScrolling: true,
|
||||
allowPaging: true
|
||||
)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.ID).Hidden();
|
||||
columns.Bound(c => c.TanuloId).Hidden();
|
||||
columns.Bound(c => c.TanuloNev).Width("10%");
|
||||
columns.Bound(c => c.OsztalyNev).Width("8%");
|
||||
columns.Bound(c => c.IntervallumKezdete).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.IntervallumVege).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.TeljesitesiHelye).Width("15%").SetDisplayPropertyWithToolip("TeljesitesiHelye").Width("10%");
|
||||
columns.Bound(c => c.Oraszam).Width("5%");
|
||||
columns.Bound(c => c.KozossegiSzolgalatTipusa_DNAME).Width("20%").SetDisplayPropertyWithToolip("KozossegiSzolgalatTipusa_DNAME");
|
||||
columns.Bound(c => c.Megjegyzes).Width("30").SetDisplayPropertyWithToolip("Megjegyzes");
|
||||
columns.Bound(c => c.RogzitesDatuma).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
})
|
||||
.FunctionCommand(Html, functions)
|
||||
)
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
||||
var KozossegiSzolgalatHelper = (function () {
|
||||
var kozossegiSzolgalatHelper = function () { };
|
||||
var searchFormName = "searchForm";
|
||||
|
||||
var url = {
|
||||
ExportKzossegiSzolgalat: "@Url.Action("ExportKozossegiSzolgalat", "AdminTanuloKozossegiSzolgalatai", new {area = "Feljegyzes" })"
|
||||
}
|
||||
|
||||
kozossegiSzolgalatHelper.exportKzossegiSzolgalat = function () {
|
||||
window.location = url.ExportKzossegiSzolgalat + "?" + $.param(KretaGridHelper.getSearchParametersWithoutInputNames(searchFormName));
|
||||
}
|
||||
|
||||
kozossegiSzolgalatHelper.setAthuzas = function (sender) {
|
||||
var toroltUids = sender.dataSource.data().filter(function (e) { return e.Torolt_BOOL }).map(function (e) { return e.uid });
|
||||
$.each(sender.items(), function () {
|
||||
if (($.inArray(($(this).attr("data-uid")), toroltUids)) !== -1) $(this).addClass("kretaStrikedGridRow disabledItem");
|
||||
})
|
||||
}
|
||||
|
||||
return kozossegiSzolgalatHelper;
|
||||
})();
|
||||
|
||||
</script>
|
66
KretaWeb/Areas/Feljegyzes/Views/Beirasok/DetailGrid.cshtml
Normal file
66
KretaWeb/Areas/Feljegyzes/Views/Beirasok/DetailGrid.cshtml
Normal file
|
@ -0,0 +1,66 @@
|
|||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Enums.ManualEnums
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model BeirasokGridModel
|
||||
|
||||
<script>
|
||||
|
||||
var DetailGridHelper = (function () {
|
||||
var detailGridHelper = function () { };
|
||||
|
||||
detailGridHelper.setAthuzas = function () {
|
||||
var gridName = "BeirasokReszletekGrid_" + "@Model.TanuloId";
|
||||
var dataSource = KretaGridHelper.getKendoGridData(gridName).dataSource.data();
|
||||
$.each(dataSource, function (index, value) {
|
||||
if (value.Torolt_BOOL) {
|
||||
$('#' + gridName).find('[data-uid= ' + value.uid + ']').addClass("kretaStrikedGridRow disabledItem");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
detailGridHelper.setRowEditing = function (rowData) {
|
||||
return !rowData.Torolt_BOOL && rowData.Modosithato_BOOL;
|
||||
}
|
||||
|
||||
return detailGridHelper;
|
||||
})();
|
||||
|
||||
</script>
|
||||
|
||||
<div id="partialDetailGrid_@Model.TanuloId">
|
||||
@{
|
||||
var rowFunctionList = new List<RowFunction>
|
||||
{
|
||||
new RowFunction { Name = CommonResource.Modositas, ClientAction = "BeirasokHelper.openEditorPopupByTipus", IconEnum = GridRowFunctionIconEnum.Modositas },
|
||||
new RowFunction { Name = CommonResource.Torles, ClientAction = "BeirasokHelper.deleteConfirmWindow", IconEnum = GridRowFunctionIconEnum.Torles }
|
||||
};
|
||||
}
|
||||
|
||||
@(
|
||||
Html.KretaGrid<BeirasokReszletekGridModel>(
|
||||
"BeirasokReszletekGrid_" + Model.TanuloId,
|
||||
new GridApiUrl(Model.ApiControllerName, "GetBeirasokReszletekGrid", new Dictionary<string, string> { { "tanuloId", Model.TanuloId } }),
|
||||
useToolBar: false,
|
||||
allowPaging: false,
|
||||
allowScrolling:false,
|
||||
pageSizes: null,
|
||||
dataBoundAdditionalFunction: "DetailGridHelper.setAthuzas();",
|
||||
sort: sort => sort.Add(s => s.EsemenyDatuma).Descending()
|
||||
)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.ID).Hidden();
|
||||
columns.Bound(c => c.TanuloId).Hidden();
|
||||
columns.Bound(c => c.EsemenyDatuma).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.FeljegyzoNeve).Width("15%");
|
||||
columns.Bound(c => c.Tipus_DNAME).Width("25%");
|
||||
columns.Bound(c => c.Targy).Width("20%").SetDisplayPropertyWithToolip("Targy");
|
||||
columns.Bound(c => c.Tartalom).Width("30%").SetDisplayPropertyWithToolip("Tartalom");
|
||||
})
|
||||
.ConditionalRowFunction(Html, rowFunctionList, "DetailGridHelper.setRowEditing")
|
||||
)
|
||||
</div>
|
345
KretaWeb/Areas/Feljegyzes/Views/Beirasok/Index.cshtml
Normal file
345
KretaWeb/Areas/Feljegyzes/Views/Beirasok/Index.cshtml
Normal file
|
@ -0,0 +1,345 @@
|
|||
@using Kreta.Enums
|
||||
@using Kreta.Enums.ManualEnums
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model FeljegyzesekSearchModel
|
||||
|
||||
@section AddCss {
|
||||
@Styles.Render(Constants.General.FeljegyzesekCSS)
|
||||
}
|
||||
|
||||
@{
|
||||
string startPopupFormName = BaseBeirasokController.StartPopupFormName;
|
||||
string startPopupId = BaseBeirasokController.StartPopupId;
|
||||
|
||||
string gridName = BaseBeirasokController.GridName;
|
||||
|
||||
string newModifyPopupName = BaseBeirasokController.NewModifyPopupName;
|
||||
string newModifyFormName = BaseBeirasokController.NewModifyFormName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm("searchForm", new Dictionary<string, object> { { "style", "display:none;" } }))
|
||||
{
|
||||
@Html.HiddenFor(m => m.CsoportIdSearch)
|
||||
}
|
||||
|
||||
@{
|
||||
var clientTemplateUrl = Url.Action("BeirasokReszletekGrid", Model.ControllerName, new { area = "Feljegyzes" });
|
||||
|
||||
var rowFunctionList = new List<RowFunction>
|
||||
{
|
||||
new RowFunction {Name = CommonResource.Uj, ClientAction = "BeirasokHelper.openNewWindow", IconEnum = GridRowFunctionIconEnum.Uj},
|
||||
};
|
||||
|
||||
var functionCommandList = new List<FunctionCommand>();
|
||||
if (!Model.IsNaploFeljegyzes)
|
||||
{
|
||||
functionCommandList.Add(new FunctionCommand { Name = CommonResource.Elolrol, ClientAction = "BeirasokHelper.openStartWindow", Classes = "kendo-gridFunctionKommandRed" });
|
||||
}
|
||||
functionCommandList.Add(new FunctionCommand { Classes = "beirasokInfoText clearFunctionCommand" });
|
||||
|
||||
var grid = Html.KretaGrid<BeirasokGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl(Model.ApiControllerName, "GetBeirasokGrid"),
|
||||
dataBoundAdditionalFunction: "BeirasokHelper.dataBoundAdditionalFunction();",
|
||||
clientTemplate: "beirasokDetailGrid-template",
|
||||
clientTemplateUrl: clientTemplateUrl,
|
||||
clientTemplateWholeDataRow: true,
|
||||
allowFilterable: false,
|
||||
dataParameterFunction: "searchForm",
|
||||
allowPaging: false,
|
||||
pageSizes: null,
|
||||
sort: sort => sort.Add(s => s.TanuloNev).Ascending()
|
||||
)
|
||||
.TableHtmlAttributes( new { @class = "BeirasokGrid" })
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(m => m.TanuloNev).HeaderHtmlAttributes(new { @class = "nevWidth" }).ClientTemplate(@"
|
||||
<a class='kendoTooltip beirasokTanuloNevKendoTooltip gridLinkButton'
|
||||
data-tanuloid='#: TanuloId #'
|
||||
data-tanulonev='#: TanuloNev #'
|
||||
data-osztaly='#: OsztalyNev #'
|
||||
data-anyjaneve='#: AnyjaNeve #'
|
||||
data-szuletesiido='#: SzuletesiIdoFormatted #'
|
||||
>#: TanuloNev #</a>");
|
||||
columns.Bound(m => m.Szeptember).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Oktober).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.November).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.December).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.JanuarI).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.JanuarII).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Februar).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Marcius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Aprilis).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Majus).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Junius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Julius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Augusztus).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
})
|
||||
.RowFunction(Html, rowFunctionList)
|
||||
.FunctionCommand(Html, functionCommandList)
|
||||
.AutoBind(true);
|
||||
}
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
||||
|
||||
@Html.KretaGridTemplate("beirasokDetailGrid-template")
|
||||
|
||||
@Html.KretaTooltipTemplate("kendoTooltip-feljegyzesTemplate",
|
||||
@"<div class='kendoTooltip' style='#=target.data('szinezes')#'>
|
||||
<table>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Dátum:</b></td>
|
||||
<td style='color: initial'>#:target.data('datum')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Típus:</b></td>
|
||||
<td style='color: initial'>#:target.data('tipus')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Tanár:</b></td>
|
||||
<td style='color: initial'>#:target.data('feljegyzoneve')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Cím:</b></td>
|
||||
<td style='color: initial'>#:target.data('targy')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Tartalom:</b></td>
|
||||
<td style='color: initial'>#=target.data('tartalom')#</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>")
|
||||
|
||||
@Html.KretaTooltipTemplate("kendoTooltip-beirasokTanuloNevTemplate",
|
||||
@"<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 BeirasokHelper = (function () {
|
||||
var beirasokHelper = function () { };
|
||||
|
||||
var startPopupFormName = "@startPopupFormName";
|
||||
var startPopupId = "@startPopupId";
|
||||
var startModel = null;
|
||||
|
||||
var gridName = "@gridName";
|
||||
|
||||
var newModifyPopupName = "@newModifyPopupName";
|
||||
var newModifyFormName = "@newModifyFormName";
|
||||
var currentOsztalyId = 0;
|
||||
var currentTanuloNev;
|
||||
|
||||
var url = {
|
||||
OpenStartPopup: "@Url.Action("OpenStartPopup", Model.ControllerName, new {area = "Feljegyzes" })",
|
||||
OpenNewModifyPopup: "@Url.Action("OpenNewModifyPopup", Model.ControllerName, new {area = "Feljegyzes" })",
|
||||
Save: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = Model.ApiControllerName, action = "SaveBeiras"})",
|
||||
Delete: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = Model.ApiControllerName, action = "DeleteBeiras" })"
|
||||
};
|
||||
|
||||
beirasokHelper.openStartWindow = function () {
|
||||
if (!CommonUtils.isNull(startModel)) {
|
||||
startModel = null;
|
||||
KretaGridHelper.clearGridData(gridName);
|
||||
}
|
||||
$(".beirasokInfoText").html("");
|
||||
AjaxHelper.DoPost(url.OpenStartPopup, null, popUpStartWindow);
|
||||
}
|
||||
|
||||
function popUpStartWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = "@(FeljegyzesekResource.Beirasok)";
|
||||
config.width = "500px";
|
||||
config.content = data;
|
||||
config.actions = ['Close'];
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(startPopupId, config);
|
||||
modal.setOptions({ height: 120 });
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
|
||||
beirasokHelper.startTovabb = function () {
|
||||
var form = $("#" + startPopupFormName);
|
||||
if (form.valid()) {
|
||||
startModel = KretaGridHelper.getSearchParameterObject(startPopupFormName);
|
||||
var osztalyText = KretaComboBoxHelper.getKendoComboBoxData("OsztalyCsoportId").text();
|
||||
currentOsztalyId = KretaComboBoxHelper.getKendoComboBoxData("OsztalyCsoportId").value();
|
||||
if (!CommonUtils.isNullOrEmpty(osztalyText)) {
|
||||
$(".beirasokInfoText").html(kendo.htmlEncode(osztalyText) + " @(FeljegyzesekResource.Beirasok)".toLowerCase());
|
||||
}
|
||||
|
||||
$("#CsoportIdSearch").val(startModel.OsztalyCsoportId);
|
||||
|
||||
KretaGridHelper.refreshGrid(gridName);
|
||||
KretaWindowHelper.destroyWindow(startPopupId);
|
||||
}
|
||||
}
|
||||
|
||||
beirasokHelper.dataBoundAdditionalFunction = function () {
|
||||
var feljegyzesKendoTooltip = $(".feljegyzesKendoTooltip");
|
||||
feljegyzesKendoTooltip.off("click");
|
||||
KretaTooltipHelper.setTooltip(feljegyzesKendoTooltip, "#kendoTooltip-feljegyzesTemplate");
|
||||
feljegyzesKendoTooltip.each(function () {
|
||||
var modosithato = $(this).attr("data-modosithato");
|
||||
if (CommonUtils.parseBool(modosithato)) {
|
||||
setKendoTooltipClick($(this));
|
||||
}
|
||||
|
||||
});
|
||||
var tanuloNevKendoTooltip = $(".beirasokTanuloNevKendoTooltip");
|
||||
tanuloNevKendoTooltip.off("click");
|
||||
KretaTooltipHelper.setTooltip(tanuloNevKendoTooltip, "#kendoTooltip-beirasokTanuloNevTemplate");
|
||||
setKendoTooltipClick(tanuloNevKendoTooltip);
|
||||
}
|
||||
|
||||
function setKendoTooltipClick(kendoTooltip) {
|
||||
kendoTooltip.click(function () {
|
||||
var tanuloId = $(this).attr("data-tanuloid");
|
||||
var tanuloNev = $(this).attr("data-tanulonev");
|
||||
var tipusId = parseInt($(this).attr("data-tipusId"));
|
||||
if (!CommonUtils.isNullOrEmpty(tanuloId)) {
|
||||
var data = {
|
||||
TanuloId: tanuloId,
|
||||
TanuloNev: tanuloNev,
|
||||
TipusId: tipusId
|
||||
};
|
||||
var feljegyzesId = $(this).attr("data-feljegyzesid");
|
||||
if (!CommonUtils.isNullOrEmpty(feljegyzesId)) {
|
||||
data.ID = feljegyzesId;
|
||||
} else {
|
||||
data.ID = null;
|
||||
}
|
||||
beirasokHelper.openEditorPopupByTipus(data);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
beirasokHelper.openNewWindow = function (data) {
|
||||
data.ID = null;
|
||||
beirasokHelper.openEditorPopupByTipus(data);
|
||||
}
|
||||
|
||||
beirasokHelper.openEditorPopupByTipus = function (data) {
|
||||
var tipusId = data.TipusId;
|
||||
if (tipusId === parseInt("@((int)EsemenyTipusEnum.ElektronikusUzenet)")) {
|
||||
alert("not implemented elektronikus üzenet popup hívás");
|
||||
} else if (tipusId === parseInt("@((int)EsemenyTipusEnum.FaliujsagBejegyzes)")) {
|
||||
alert("not implemented faliújság bejegyzés üzenet popup hívás");
|
||||
} else {
|
||||
var osztalyCsoportId = $("#CsoportIdSearch").val();
|
||||
var postData = {
|
||||
id: data.ID,
|
||||
tanuloId: data.TanuloId,
|
||||
osztalyCsoportId: osztalyCsoportId
|
||||
};
|
||||
currentTanuloNev = data.TanuloNev;
|
||||
AjaxHelper.DoPost(url.OpenNewModifyPopup, postData, popNewModifyWindow);
|
||||
}
|
||||
}
|
||||
|
||||
function popNewModifyWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = kendo.htmlEncode(currentTanuloNev);
|
||||
config.content = data;
|
||||
config.width = "1060px";
|
||||
config.height = "615px";
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(newModifyPopupName, config);
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
|
||||
beirasokHelper.newModifyPopupDelete = function () {
|
||||
var data = $("#" + newModifyFormName).toObject();
|
||||
deleteConfirm(data.Id, data.TanuloId);
|
||||
}
|
||||
|
||||
beirasokHelper.deleteConfirmWindow = function (data) {
|
||||
deleteConfirm(data.ID, data.TanuloId);
|
||||
}
|
||||
|
||||
function deleteConfirm(id, tanuloId) {
|
||||
var data = {
|
||||
id: id,
|
||||
tanuloId: tanuloId
|
||||
}
|
||||
KretaWindowHelper.confirmWindow(
|
||||
"@(CommonResource.Kerdes)",
|
||||
"@(CommonResource.BiztosanTorli)",
|
||||
deleteFeljegyzes,
|
||||
data
|
||||
);
|
||||
}
|
||||
|
||||
function deleteFeljegyzes(data) {
|
||||
AjaxHelper.DoValidationPost(
|
||||
url.Delete,
|
||||
newModifyFormName,
|
||||
data,
|
||||
refreshGrid,
|
||||
feedbackError
|
||||
);
|
||||
}
|
||||
|
||||
beirasokHelper.newModifyPopupSave = function () {
|
||||
var form = $('#' + newModifyFormName);
|
||||
if (form.valid()) {
|
||||
var data = form.toObject();
|
||||
AjaxHelper.DoValidationPost(
|
||||
url.Save,
|
||||
newModifyFormName,
|
||||
data,
|
||||
refreshGrid);
|
||||
}
|
||||
}
|
||||
|
||||
beirasokHelper.newModifyPopupCancel = function () {
|
||||
KretaWindowHelper.destroyWindow(newModifyPopupName);
|
||||
}
|
||||
|
||||
function feedbackError() {
|
||||
var message = "@(CommonResource.Hiba)";
|
||||
KretaWindowHelper.feedbackWindow("@(CommonResource.Hiba)", message, true, KretaWindowHelper.destroyAllWindow);
|
||||
}
|
||||
|
||||
function refreshGrid() {
|
||||
if (!CommonUtils.parseBool("@(Model.IsNaploFeljegyzes)")) {
|
||||
KretaWindowHelper.destroyAllWindow();
|
||||
} else {
|
||||
KretaWindowHelper.destroyWindow(newModifyPopupName);
|
||||
}
|
||||
|
||||
KretaGridHelper.refreshGrid(gridName);
|
||||
}
|
||||
|
||||
return beirasokHelper;
|
||||
})();
|
||||
|
||||
$(document).ready(function () {
|
||||
@if (!Model.IsNaploFeljegyzes)
|
||||
{
|
||||
<text>BeirasokHelper.openStartWindow();</text>
|
||||
}
|
||||
});
|
||||
|
||||
</script>
|
|
@ -0,0 +1,93 @@
|
|||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Enums
|
||||
|
||||
@model BeirasModel
|
||||
|
||||
@{
|
||||
var formName = BaseBeirasokController.NewModifyFormName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm(formName))
|
||||
{
|
||||
@Html.KretaValidationSummary()
|
||||
|
||||
@Html.HiddenFor(x => x.Id)
|
||||
@Html.HiddenFor(x => x.TanuloId)
|
||||
@Html.HiddenFor(x => x.OsztalyCsoportId)
|
||||
|
||||
<div class="container-fluid details">
|
||||
<div class="row">
|
||||
@Html.KretaLabelFor(x => x.FeljegyzoNev, 2, 10, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@* NOTE: Mindig kell, hogy értéket kapjon a Model.MinimumErvenyessegKezdete és a Model.MaximumErvenyessegKezdete, ha nem akkor ott hibás a működés! *@
|
||||
@Html.KretaDatePickerFor(x => x.EsemenyDatuma).Min(Model.MinimumErvenyessegKezdete.Value).Max(Model.MaximumErvenyessegKezdete.Value).RenderWithName(2, 2, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaComboBoxFor(x => x.Tipus, Model.TipusList).RenderWithName(2, 6, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.Targy).RenderWithName(2, 6, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.Megjegyzes).RenderWithName(2, 10, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextAreaFor(x => x.Tartalom, 7).RenderWithName(2, 10, true).
|
||||
</div>
|
||||
<div id="TartaloNyelvDiv">
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.horvat).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextAreaFor(x => x.TartalomHorvat, 7).RenderWithName(2, 10, true).
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.nemet).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextAreaFor(x => x.TartalomNemet, 7).RenderWithName(2, 10, true).
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.roman).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextAreaFor(x => x.TartalomRoman, 7).RenderWithName(2, 10, true).
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.szerb).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextAreaFor(x => x.TartalomSzerb, 7).RenderWithName(2, 10, true).
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
<script>
|
||||
var BeirasNyelvHelper = (function() {
|
||||
var beirasNyelvHelper = function() {};
|
||||
|
||||
beirasNyelvHelper.setTartalomNyelv = function () {
|
||||
var list = [];
|
||||
@foreach (var item in Model.NyelvesitendoEsemenyTipuslist)
|
||||
{
|
||||
@:list.push("@item");
|
||||
}
|
||||
if (list.indexOf($("#Tipus").data("kendoComboBox").value()) > -1) {
|
||||
$('#TartaloNyelvDiv').show();
|
||||
} else {
|
||||
$('#TartaloNyelvDiv').hide();
|
||||
}
|
||||
}
|
||||
return beirasNyelvHelper;
|
||||
})();
|
||||
|
||||
$(document).ready(function () {
|
||||
BeirasNyelvHelper.setTartalomNyelv();
|
||||
$("#Tipus").change(function () {
|
||||
BeirasNyelvHelper.setTartalomNyelv();
|
||||
})
|
||||
});
|
||||
</script>
|
35
KretaWeb/Areas/Feljegyzes/Views/Beirasok/Start_Popup.cshtml
Normal file
35
KretaWeb/Areas/Feljegyzes/Views/Beirasok/Start_Popup.cshtml
Normal file
|
@ -0,0 +1,35 @@
|
|||
@using Kreta.Enums.ManualEnums
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Security
|
||||
|
||||
@model FeljegyzesekModel
|
||||
|
||||
@{
|
||||
var startPopupFormName = BaseBeirasokController.StartPopupFormName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm(startPopupFormName))
|
||||
{
|
||||
@Html.HiddenFor(x => x.ElsoTanitasiNap)
|
||||
|
||||
<div class="container-fluid details">
|
||||
<div>
|
||||
@Html.KretaComboBoxFor(x => x.OsztalyCsoportId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyCsoportListForBeirasok", isDualisKepzohelyiCsoport = Model.IsDualisKepzohelyiCsoport, szervezetAdatokHalmaza = (int)SzervezetAdatokHalmazaEnum.SzervezetEsAlSzervezetek }), "Text", "Value", useGroup: true, htmlAttributes: new Dictionary<string, object> { { "class", "enterKeyPress" } }).SelectedIndex(0).AutoBind(true).RenderWithName(4, 8, true)
|
||||
</div>
|
||||
<br />
|
||||
<div align="center">
|
||||
@Html.KretaButton("StartFeljegyzes", CommonResource.Tovabb, clickEventName: "BeirasokHelper.startTovabb")
|
||||
</div>
|
||||
@Html.KretaValidationSummary()
|
||||
</div>
|
||||
}
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
$("span.enterKeyPress").onKeyPressEnter(BeirasokHelper.startTovabb);
|
||||
});
|
||||
|
||||
</script>
|
|
@ -0,0 +1,65 @@
|
|||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model ElektronikusUzenetekNaploNezetGridModel
|
||||
|
||||
<script>
|
||||
|
||||
var DetailGridHelper = (function () {
|
||||
var detailGridHelper = function () { };
|
||||
|
||||
detailGridHelper.setAthuzas = function () {
|
||||
var gridName = "ElektronikusUzenetekNaploNezetReszletekGrid_" + "@Model.TanuloId";
|
||||
var dataSource = KretaGridHelper.getKendoGridData(gridName).dataSource.data();
|
||||
$.each(dataSource, function (index, value) {
|
||||
if (value.Torolt_BOOL) {
|
||||
$('#' + gridName).find('[data-uid= ' + value.uid + ']').addClass("kretaStrikedGridRow disabledItem");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
detailGridHelper.setRowEditing = function (rowData) {
|
||||
return !rowData.Torolt_BOOL && rowData.Modosithato_BOOL;
|
||||
}
|
||||
|
||||
return detailGridHelper;
|
||||
})();
|
||||
|
||||
</script>
|
||||
|
||||
<div id="partialDetailGrid_@Model.TanuloId">
|
||||
@{
|
||||
var rowFunctionList = new List<RowFunction>
|
||||
{
|
||||
new RowFunction { Name = CommonResource.Modositas, ClientAction = "ElektronikusUzenetekHelper.openModifyWindow", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Modositas },
|
||||
new RowFunction { Name = CommonResource.Torles, ClientAction = "ElektronikusUzenetekHelper.deleteForTanulo", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Torles }
|
||||
};
|
||||
}
|
||||
|
||||
@(
|
||||
Html.KretaGrid<ElektronikusUzenetekNaploNezetReszletekGridModel>(
|
||||
"ElektronikusUzenetekNaploNezetReszletekGrid_" + Model.TanuloId,
|
||||
new GridApiUrl(Model.ApiControllerName, "GetElektronikusUzenetekNaploNezetReszletekGrid", new Dictionary<string, string> { { "tanuloId", Model.TanuloId } }),
|
||||
useToolBar: false,
|
||||
allowPaging: false,
|
||||
allowScrolling:false,
|
||||
pageSizes: null,
|
||||
dataBoundAdditionalFunction: "DetailGridHelper.setAthuzas();",
|
||||
sort: sort => sort.Add(s => s.EsemenyDatuma).Descending()
|
||||
)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.ID).Hidden();
|
||||
columns.Bound(c => c.TanuloId).Hidden();
|
||||
columns.Bound(c => c.EsemenyDatuma).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.FeljegyzoNeve).Width("15%");
|
||||
columns.Bound(c => c.Tipus_DNAME).Width("25%");
|
||||
columns.Bound(c => c.Targy).Width("20%").SetDisplayPropertyWithToolip("Targy");
|
||||
columns.Bound(c => c.Tartalom).Width("30%").SetDisplayPropertyWithToolip("Tartalom");
|
||||
})
|
||||
.ConditionalRowFunction(Html, rowFunctionList, "DetailGridHelper.setRowEditing")
|
||||
)
|
||||
</div>
|
|
@ -0,0 +1,291 @@
|
|||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
|
||||
@model FeljegyzesekModel
|
||||
|
||||
@section AddCss {
|
||||
@Styles.Render(Constants.General.FeljegyzesekCSS)
|
||||
}
|
||||
|
||||
@{
|
||||
string tabStripId = ElektronikusUzenetekController.TabStripId;
|
||||
|
||||
string startPopupFormName = ElektronikusUzenetekController.StartPopupFormName;
|
||||
string startPopupId = ElektronikusUzenetekController.StartPopupId;
|
||||
|
||||
string gridNameNaploNezet = ElektronikusUzenetekController.GridNameNaploNezet;
|
||||
string gridNameListaNezet = ElektronikusUzenetekController.GridNameListaNezet;
|
||||
|
||||
string modifyPopupName = ElektronikusUzenetekController.ModifyPopupName;
|
||||
string modifyFormName = ElektronikusUzenetekController.ModifyFormName;
|
||||
}
|
||||
|
||||
@Html.KretaTabStripAjax(tabStripId, Model.TabList)
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
var ElektronikusUzenetekHelper = (function () {
|
||||
var elektronikusUzenetekHelper = function () { };
|
||||
|
||||
var tabStripId = "@tabStripId";
|
||||
|
||||
var startPopupFormName = "@startPopupFormName";
|
||||
var startPopupId = "@startPopupId";
|
||||
var startModel = null;
|
||||
|
||||
var gridNameNaploNezet = "@gridNameNaploNezet";
|
||||
var gridNameListaNezet = "@gridNameListaNezet";
|
||||
|
||||
var modifyPopupName = "@modifyPopupName";
|
||||
var modifyFormName = "@modifyFormName";
|
||||
|
||||
var url = {
|
||||
OpenStartPopup: "@Url.Action("OpenStartPopup", Model.ControllerName, new {area = "Feljegyzes"})",
|
||||
OpenModifyPopup: "@Url.Action("OpenModifyPopup", Model.ControllerName, new {area = "Feljegyzes"})",
|
||||
Delete: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = Model.ApiControllerName, action = "DeleteElektronikusUzenet"})",
|
||||
DeleteForTanulo: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = Model.ApiControllerName, action = "DeleteElektronikusUzenetForTanulo"})"
|
||||
};
|
||||
|
||||
var currentTabIndex = 0;
|
||||
var osztalyCsoportText;
|
||||
|
||||
elektronikusUzenetekHelper.onTabStripActivate = function (tabStrip) {
|
||||
currentTabIndex = tabStrip.select().index();
|
||||
setInfoText();
|
||||
refreshTabs();
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.openStartWindow = function () {
|
||||
if (!CommonUtils.isNull(startModel)) {
|
||||
startModel = null;
|
||||
setDefaultValuesNaploNezetForm();
|
||||
KretaGridHelper.clearGridData(gridNameNaploNezet);
|
||||
KretaGridHelper.clearGridData(gridNameListaNezet);
|
||||
}
|
||||
osztalyCsoportText = "";
|
||||
setInfoText();
|
||||
|
||||
AjaxHelper.DoPost(url.OpenStartPopup, null, popUpStartWindow);
|
||||
}
|
||||
|
||||
function popUpStartWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = "@(FeljegyzesekResource.ElektronikusUzenetek)";
|
||||
config.width = "500px";
|
||||
config.content = data;
|
||||
config.actions = ['Close'];
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(startPopupId, config);
|
||||
modal.setOptions({ height: 120 });
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.startTovabb = function () {
|
||||
var tabStrip = $("#" + tabStripId).data("kendoTabStrip");
|
||||
tabStrip.bind("activate",
|
||||
function () {
|
||||
ElektronikusUzenetekHelper.onTabStripActivate(tabStrip);
|
||||
});
|
||||
var form = $("#" + startPopupFormName);
|
||||
if (form.valid()) {
|
||||
startModel = KretaGridHelper.getSearchParameterObject(startPopupFormName);
|
||||
osztalyCsoportText = KretaComboBoxHelper.getKendoComboBoxData("OsztalyCsoportId").text();
|
||||
|
||||
$("#CsoportIdSearch").val(startModel.OsztalyCsoportId);
|
||||
|
||||
setInfoText();
|
||||
refreshTabs();
|
||||
}
|
||||
}
|
||||
|
||||
function setInfoText() {
|
||||
var infoTextClass;
|
||||
if (currentTabIndex === 0) {
|
||||
infoTextClass = "infoTextNaploNezet";
|
||||
} else {
|
||||
infoTextClass = "infoTextListaNezet";
|
||||
}
|
||||
if (!CommonUtils.isNullOrEmpty(osztalyCsoportText)) {
|
||||
$("." + infoTextClass).html(kendo.htmlEncode(osztalyCsoportText) + " @(FeljegyzesekResource.ElektronikusUzenetek)"
|
||||
.toLowerCase());
|
||||
} else {
|
||||
$("." + infoTextClass).html("");
|
||||
}
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.openModifyWindow = function (data) {
|
||||
var postData = {
|
||||
id: data.ID,
|
||||
ocsID: $("#CsoportIdSearch").val()
|
||||
};
|
||||
AjaxHelper.DoPost(url.OpenModifyPopup, postData, popModifyWindow);
|
||||
}
|
||||
|
||||
function popModifyWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = "@(FeljegyzesekResource.ElektronikusUzenet)";
|
||||
config.content = data;
|
||||
config.width = "1060px";
|
||||
config.height = "615px";
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(modifyPopupName, config);
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.deleteForTanulo = function (data) {
|
||||
deleteConfirmForTanulo(data.ID, data.TanuloId);
|
||||
}
|
||||
|
||||
function deleteConfirmForTanulo(id, tanuloId) {
|
||||
var data = {
|
||||
id: id,
|
||||
tanuloId: tanuloId
|
||||
}
|
||||
KretaWindowHelper.confirmWindow(
|
||||
"@(CommonResource.Kerdes)",
|
||||
"@Html.Raw(FeljegyzesekResource.BiztosanTorliForTanulo)",
|
||||
deleteElektronikusUzenetForTanulo,
|
||||
data
|
||||
);
|
||||
}
|
||||
|
||||
function deleteElektronikusUzenetForTanulo(data) {
|
||||
AjaxHelper.DoValidationPost(
|
||||
url.DeleteForTanulo,
|
||||
modifyFormName,
|
||||
data,
|
||||
refreshTabs,
|
||||
feedbackError
|
||||
);
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.modifyPopupDelete = function () {
|
||||
var data = $("#" + modifyFormName).toObject();
|
||||
deleteConfirm(data.Id);
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.deleteConfirmWindow = function (data) {
|
||||
deleteConfirm(data.ID);
|
||||
}
|
||||
|
||||
function deleteConfirm(id) {
|
||||
var data = {
|
||||
id: id
|
||||
}
|
||||
KretaWindowHelper.confirmWindow(
|
||||
"@(CommonResource.Kerdes)",
|
||||
"@(CommonResource.BiztosanTorli)",
|
||||
deleteElektronikusUzenet,
|
||||
data
|
||||
);
|
||||
}
|
||||
|
||||
function deleteElektronikusUzenet(data) {
|
||||
AjaxHelper.DoValidationPost(
|
||||
url.Delete,
|
||||
modifyFormName,
|
||||
data,
|
||||
refreshTabs,
|
||||
feedbackError
|
||||
);
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.saveElektronikusUzenet = function (formName, gridName, saveUrl) {
|
||||
var form = $("#" + formName);
|
||||
if (form.valid()) {
|
||||
var data = form.toObject();
|
||||
var selectedRows = KretaGridHelper.getSelectedRowsByGridName(gridName);
|
||||
if (selectedRows.length === 0) {
|
||||
KretaWindowHelper.warningWindow(
|
||||
"@(CommonResource.Figyelmeztetes)",
|
||||
"@(FeljegyzesekResource.ValasszonKiLegalabbEgyTanulot)"
|
||||
);
|
||||
} else {
|
||||
var selectedIdList = [];
|
||||
$.each(selectedRows,
|
||||
function (index, value) {
|
||||
selectedIdList.push(value.ID);
|
||||
});
|
||||
data.TanuloIdList = selectedIdList;
|
||||
data.OsztalyCsoportId = parseInt(startModel.OsztalyCsoportId);
|
||||
var responseFunction = function (response) {
|
||||
ElektronikusUzenetekHelper.modifyPopupCancel();
|
||||
refreshTabs(response, form);
|
||||
};
|
||||
AjaxHelper.DoValidationPost(
|
||||
saveUrl,
|
||||
formName,
|
||||
data,
|
||||
responseFunction
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.modifyPopupCancel = function () {
|
||||
KretaWindowHelper.destroyWindow(modifyPopupName);
|
||||
}
|
||||
|
||||
function feedbackError() {
|
||||
var message = "@(CommonResource.Hiba)";
|
||||
KretaWindowHelper.feedbackWindow("@(CommonResource.Hiba)",
|
||||
message,
|
||||
true,
|
||||
KretaWindowHelper.destroyAllWindow);
|
||||
}
|
||||
|
||||
function refreshTabs(response, element) {
|
||||
if (!CommonUtils.isUndefined(response) && !CommonUtils.isNullOrEmpty(response) &&
|
||||
!CommonUtils.isUndefined(element) && !CommonUtils.isNullOrEmpty(element)) {
|
||||
AjaxHelper.RemoteErrors(element, response);
|
||||
KretaWindowHelper.feedbackWindow("@(CommonResource.Siker)", "@(CommonResource.AMentesSikeresenMegtortent)", false);
|
||||
} else {
|
||||
KretaWindowHelper.destroyAllWindow();
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.refreshNaploNezet();
|
||||
elektronikusUzenetekHelper.refreshListaNezet();
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.refreshNaploNezet = function () {
|
||||
setDefaultValuesNaploNezetForm();
|
||||
elektronikusUzenetekHelper.refreshGrid(gridNameNaploNezet);
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.refreshListaNezet = function () {
|
||||
elektronikusUzenetekHelper.refreshGrid(gridNameListaNezet);
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.getStartModelData = function () {
|
||||
return KretaGridHelper.getSearchParameterData(startModel);
|
||||
}
|
||||
|
||||
elektronikusUzenetekHelper.refreshGrid = function (gridName) {
|
||||
KretaGridHelper.refreshGrid(gridName);
|
||||
}
|
||||
|
||||
function setDefaultValuesNaploNezetForm() {
|
||||
KretaCheckBoxHelper.setValue("IsFaliujsagMegjelenes", true);
|
||||
KretaCheckBoxHelper.setValue("IsMindenkinek", true);
|
||||
@if (Model.DefaultEsemenyDatuma.HasValue)
|
||||
{
|
||||
<text>
|
||||
KretaDateTimeHelper.setDate("EsemenyDatuma", "@Model.DefaultEsemenyDatuma.Value.ToString("yyyy. MM. dd.")");
|
||||
</text>
|
||||
}
|
||||
$("#Vege").val("");
|
||||
$("#ervenyessegVege").show();
|
||||
$("#Targy").val("");
|
||||
$("#Megjegyzes").val("");
|
||||
$("#Tartalom").data("kendoEditor").value("");
|
||||
}
|
||||
|
||||
return elektronikusUzenetekHelper;
|
||||
})();
|
||||
|
||||
$(document).ready(function () {
|
||||
ElektronikusUzenetekHelper.openStartWindow();
|
||||
});
|
||||
|
||||
</script>
|
|
@ -0,0 +1,53 @@
|
|||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model FeljegyzesekModel
|
||||
|
||||
@{
|
||||
string gridName = ElektronikusUzenetekController.GridNameListaNezet;
|
||||
}
|
||||
|
||||
@{
|
||||
var functionList = new List<FunctionCommand>
|
||||
{
|
||||
new FunctionCommand { Name = CommonResource.Elolrol, ClientAction = "ElektronikusUzenetekHelper.openStartWindow", Classes = "kendo-gridFunctionKommandRed" },
|
||||
new FunctionCommand { Classes = "infoTextListaNezet clearFunctionCommand" }
|
||||
};
|
||||
var rowFunctionList = new List<RowFunction>
|
||||
{
|
||||
new RowFunction { Name = CommonResource.Modositas, ClientAction = "ElektronikusUzenetekHelper.openModifyWindow", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Modositas },
|
||||
new RowFunction { Name = CommonResource.Torles, ClientAction = "ElektronikusUzenetekHelper.deleteConfirmWindow", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Torles }
|
||||
};
|
||||
|
||||
var grid = Html.KretaGrid<ElektronikusUzenetekListaNezetGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl(Model.ApiControllerName, "GetElektronikusUzenetekListaNezetGrid"),
|
||||
readDataFunction: "ElektronikusUzenetekHelper.getStartModelData",
|
||||
allowFilterable: false,
|
||||
allowPaging: false,
|
||||
pageSizes: null,
|
||||
sort: sort => sort.Add(s => s.EsemenyDatuma).Descending()
|
||||
)
|
||||
.Sortable(sortable => sortable
|
||||
.AllowUnsort(true)
|
||||
.SortMode(GridSortMode.MultipleColumn))
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.ID).Hidden();
|
||||
columns.Bound(c => c.EsemenyDatuma).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.FeljegyzoNeve).Width("20%");
|
||||
columns.Bound(c => c.IsFaliujsagMegjelenes_BNAME).Width("20%");
|
||||
columns.Bound(c => c.Targy).Width("20%").SetDisplayPropertyWithToolip("Targy");
|
||||
columns.Bound(c => c.Tartalom).Width("30%").SetDisplayPropertyWithToolip("Tartalom");
|
||||
})
|
||||
.FunctionCommand(Html, functionList)
|
||||
.RowFunction(Html, rowFunctionList);
|
||||
}
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
|
@ -0,0 +1,184 @@
|
|||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model ElektronikusUzenetPopupModel
|
||||
|
||||
@{
|
||||
var formName = ElektronikusUzenetekController.ModifyFormName;
|
||||
var gridName = ElektronikusUzenetekController.ModifyPopupGridName;
|
||||
}
|
||||
|
||||
@{
|
||||
var grid = Html.KretaGrid<ElektronikusUzenetPopupGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl(Model.ApiControllerName, "GetElektronikusUzenetekModifyPopupGrid", new Dictionary<string, string> { { "osztalycsoportId", Model.OsztalyCsoportId.ToString() } }),
|
||||
dataBoundAdditionalFunction: "ModifyPopupHelper.dataBoundAdditionalFunction();",
|
||||
allowFilterable: false,
|
||||
allowSorting: false,
|
||||
allowPaging: false,
|
||||
pageSizes: null,
|
||||
sort: sort => sort.Add(s => s.TanuloNev).Ascending()
|
||||
)
|
||||
.SelectBoxColumn(Html, 0)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(m => m.TanuloNev).ClientTemplate(@"
|
||||
<a class='kendoTooltip modifyPopupTanuloNevKendoTooltip gridLinkButton defaultCursor'
|
||||
data-osztaly='#: OsztalyNev #'
|
||||
data-anyjaneve='#: AnyjaNeve #'
|
||||
data-szuletesiido='#: SzuletesiIdoFormatted #'
|
||||
>#: TanuloNev #</a>");
|
||||
});
|
||||
}
|
||||
|
||||
@Html.KretaTooltipTemplate("kendoTooltip-modifyPopupTanuloNevTemplate",
|
||||
@"<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>")
|
||||
|
||||
@using (Html.KretaForm(formName))
|
||||
{
|
||||
@Html.KretaValidationSummary()
|
||||
|
||||
@Html.HiddenFor(x => x.Id)
|
||||
|
||||
<div class="container-fluid details">
|
||||
<div class="row">
|
||||
@Html.KretaLabelFor(x => x.FeljegyzoNevPopup, 3, 9, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaCheckBoxFor(x => x.IsFaliujsagMegjelenesPopup).RenderWithName(3, 2)
|
||||
@Html.KretaCheckBoxFor(x => x.IsMindenkinekPopup).RenderWithName(3, 3)
|
||||
</div>
|
||||
<div class="row">
|
||||
@* NOTE: Mindig kell, hogy értéket kapjon a Model.MinimumErvenyessegKezdete és a Model.MaximumErvenyessegKezdete, ha nem akkor ott hibás a működés! *@
|
||||
@Html.KretaDatePickerFor(x => x.EsemenyDatumaPopup).Min(Model.MinimumErvenyessegKezdetePopup.Value).Max(Model.MaximumErvenyessegKezdetePopup.Value).RenderWithName(3, 2)
|
||||
<div id="ervenyessegVegePopup">
|
||||
@* NOTE: Mindig kell, hogy értéket kapjon a Model.MinimumErvenyessegVegePopup és a Model.MaximumErvenyessegVegePopup, ha nem akkor ott hibás a működés! *@
|
||||
@Html.KretaDatePickerFor(x => x.VegePopup).Min(Model.MinimumErvenyessegVegePopup.Value).Max(Model.MaximumErvenyessegVegePopup.Value).RenderWithName(3, 2)
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.TargyPopup).RenderWithName(3)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.MegjegyzesPopup).RenderWithName(3, 9)
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="@BootsrapHelper.GetSizeClasses(3)">
|
||||
@Html.LabelFor(x => x.TartalomPopup, htmlAttributes: new Dictionary<string, object> { { "class", "windowInputLabel" } })
|
||||
</div>
|
||||
<div class="@BootsrapHelper.GetSizeClasses(9)">
|
||||
@(Html.KretaHtmlEditorFor(x => x.TartalomPopup, encode: false)
|
||||
.Tools(t => t.Clear()
|
||||
.Bold()
|
||||
.Italic()
|
||||
.Underline()
|
||||
.SubScript()
|
||||
.SuperScript()
|
||||
.InsertOrderedList()
|
||||
.InsertUnorderedList()
|
||||
.JustifyLeft()
|
||||
.JustifyCenter()
|
||||
.JustifyRight()
|
||||
.JustifyFull()
|
||||
.FontColor()
|
||||
)
|
||||
.PasteCleanup(p => p.All(true))
|
||||
)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
var ModifyPopupHelper = (function () {
|
||||
var modifyPopupHelper = function () { };
|
||||
|
||||
var gridName = "@gridName";
|
||||
var formName = "@formName";
|
||||
|
||||
var url = {
|
||||
SaveElektronikusUzenetPopup: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = Model.ApiControllerName, action = "SaveElektronikusUzenetPopup" })"
|
||||
};
|
||||
|
||||
modifyPopupHelper.dataBoundAdditionalFunction = function () {
|
||||
//NOTE: Tooltip beállítások
|
||||
var tanuloNevKendoTooltip = $(".modifyPopupTanuloNevKendoTooltip");
|
||||
KretaTooltipHelper.setTooltip(tanuloNevKendoTooltip, "#kendoTooltip-modifyPopupTanuloNevTemplate");
|
||||
|
||||
//NOTE: CheckBox beállítások
|
||||
var rowSelectHeaderCheckBox = $("#" + gridName + "_chk");
|
||||
var rowSelectCheckBoxList = $("td input[id^='" + gridName + "_chk_'");
|
||||
var isMindenkinekCheckBox = $("#IsMindenkinekPopup");
|
||||
var isFaliujsagMegjelenesCheckBox = $("#IsFaliujsagMegjelenesPopup");
|
||||
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, true);
|
||||
rowSelectHeaderCheckBox.off("change");
|
||||
rowSelectHeaderCheckBox.on("change", function () {
|
||||
var result = KretaCheckBoxHelper.getValue(this.id);
|
||||
KretaCheckBoxHelper.setObjectValue(isMindenkinekCheckBox, result);
|
||||
});
|
||||
|
||||
rowSelectCheckBoxList.off("change");
|
||||
rowSelectCheckBoxList.on("change", function () {
|
||||
var result = rowSelectCheckBoxList.not(":checked").length === 0;
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, result);
|
||||
KretaCheckBoxHelper.setObjectValue(isMindenkinekCheckBox, result);
|
||||
});
|
||||
|
||||
isMindenkinekCheckBox.off("change");
|
||||
isMindenkinekCheckBox.on("change", function () {
|
||||
var result = KretaCheckBoxHelper.getValue(this.id);
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, result);
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectCheckBoxList, result);
|
||||
});
|
||||
|
||||
isFaliujsagMegjelenesCheckBox.off("change");
|
||||
isFaliujsagMegjelenesCheckBox.on("change", function () {
|
||||
var result = KretaCheckBoxHelper.getValue(this.id);
|
||||
if (result) {
|
||||
$("#ervenyessegVegePopup").show();
|
||||
} else {
|
||||
$("#ervenyessegVegePopup").hide();
|
||||
}
|
||||
});
|
||||
isFaliujsagMegjelenesCheckBox.trigger("change");
|
||||
|
||||
var tanuloIdListString = "@(Html.Raw(Json.Encode(Model.TanuloIdList)))";
|
||||
var tanuloIdList = CommonUtils.JSONparse(tanuloIdListString);
|
||||
if (tanuloIdList.length > 0) {
|
||||
$.each(tanuloIdList, function (index, value) {
|
||||
KretaCheckBoxHelper.setValue(gridName + "_chk_" + value, true);
|
||||
var result = rowSelectCheckBoxList.not(":checked").length === 0;
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, result);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
modifyPopupHelper.saveElektronikusUzenetPopup = function () {
|
||||
ElektronikusUzenetekHelper.saveElektronikusUzenet(formName, gridName, url.SaveElektronikusUzenetPopup);
|
||||
}
|
||||
|
||||
return modifyPopupHelper;
|
||||
})();
|
||||
</script>
|
|
@ -0,0 +1,250 @@
|
|||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model ElektronikusUzenetSearchModel
|
||||
|
||||
@{
|
||||
string gridName = ElektronikusUzenetekController.GridNameNaploNezet;
|
||||
string formName = ElektronikusUzenetekController.NewFormName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm("searchForm", new Dictionary<string, object> { { "style", "display:none;" } }))
|
||||
{
|
||||
@Html.HiddenFor(m => m.CsoportIdSearch)
|
||||
}
|
||||
|
||||
@{
|
||||
var clientTemplateUrl = Url.Action("NaploNezetReszletekGrid", Model.ControllerName, new { area = "Feljegyzes" });
|
||||
|
||||
var functionCommandList = new List<FunctionCommand>
|
||||
{
|
||||
new FunctionCommand { Name = CommonResource.Mentes, ClientAction = "NaploNezetHelper.saveElektronikusUzenet" },
|
||||
new FunctionCommand { Name = CommonResource.Elolrol, ClientAction = "ElektronikusUzenetekHelper.openStartWindow", Classes = "kendo-gridFunctionKommandRed" },
|
||||
new FunctionCommand { Classes = "infoTextNaploNezet clearFunctionCommand" }
|
||||
};
|
||||
|
||||
var grid = Html.KretaGrid<ElektronikusUzenetekNaploNezetGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl(Model.ApiControllerName, "GetElektronikusUzenetekNaploNezetGrid"),
|
||||
dataBoundAdditionalFunction: "NaploNezetHelper.dataBoundAdditionalFunction();",
|
||||
clientTemplate: "naploNezetDetailGrid-template",
|
||||
clientTemplateUrl: clientTemplateUrl,
|
||||
clientTemplateWholeDataRow: true,
|
||||
allowFilterable: false,
|
||||
dataParameterFunction: "searchForm",
|
||||
allowPaging: false,
|
||||
allowScrolling:false,
|
||||
pageSizes: null,
|
||||
sort: sort => sort.Add(s => s.TanuloNev).Ascending()
|
||||
)
|
||||
.SelectBoxColumn(Html, 0, true)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(m => m.TanuloNev).HeaderHtmlAttributes(new { @class = "nevWidth" }).ClientTemplate(@"
|
||||
<a class='kendoTooltip naploNezetTanuloNevKendoTooltip gridLinkButton defaultCursor'
|
||||
data-osztaly='#: OsztalyNev #'
|
||||
data-anyjaneve='#: AnyjaNeve #'
|
||||
data-szuletesiido='#: SzuletesiIdoFormatted #'
|
||||
>#: TanuloNev #</a>");
|
||||
columns.Bound(m => m.Szeptember).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Oktober).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.November).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.December).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.JanuarI).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.JanuarII).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Februar).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Marcius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Aprilis).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Majus).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Junius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Julius).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
columns.Bound(m => m.Augusztus).Encoded(false).HeaderHtmlAttributes(new { @class = "honap" }).HtmlAttributes(new { @class = "honap" }).Sortable(false);
|
||||
})
|
||||
.FunctionCommand(Html, functionCommandList);
|
||||
}
|
||||
|
||||
@Html.KretaGridTemplate("naploNezetDetailGrid-template")
|
||||
|
||||
@Html.KretaTooltipTemplate("kendoTooltip-feljegyzesTemplate",
|
||||
@"<div class='kendoTooltip' style='#=target.data('szinezes')#'>
|
||||
<table>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Dátum:</b></td>
|
||||
<td style='color: initial'>#:target.data('datum')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Típus:</b></td>
|
||||
<td style='color: initial'>#:target.data('tipus')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Tanár:</b></td>
|
||||
<td style='color: initial'>#:target.data('feljegyzoneve')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Cím:</b></td>
|
||||
<td style='color: initial'>#:target.data('targy')#</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Tartalom:</b></td>
|
||||
<td style='color: initial'>#=target.data('tartalom')#</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>")
|
||||
|
||||
@Html.KretaTooltipTemplate("kendoTooltip-naploNezetTanuloNevTemplate",
|
||||
@"<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>")
|
||||
|
||||
<div>
|
||||
@using (Html.KretaForm(formName))
|
||||
{
|
||||
@Html.KretaValidationSummary()
|
||||
|
||||
<div class="container-fluid details NaploNezetEdit">
|
||||
<div class="row">
|
||||
@Html.KretaCheckBoxFor(x => x.IsFaliujsagMegjelenes).RenderWithName(3, 2)
|
||||
@Html.KretaCheckBoxFor(x => x.IsMindenkinek).RenderWithName(3, 3)
|
||||
</div>
|
||||
<div class="row">
|
||||
@* NOTE: Mindig kell, hogy értéket kapjon a Model.MinimumErvenyessegKezdete és a Model.MaximumErvenyessegKezdete, ha nem akkor ott hibás a működés! *@
|
||||
@Html.KretaDatePickerFor(x => x.EsemenyDatuma).Min(Model.MinimumErvenyessegKezdete.Value).Max(Model.MaximumErvenyessegKezdete.Value).RenderWithName(3, 2)
|
||||
<div id="ervenyessegVege">
|
||||
@* NOTE: Mindig kell, hogy értéket kapjon a Model.MinimumErvenyessegVege és a Model.MaximumErvenyessegVege, ha nem akkor ott hibás a működés! *@
|
||||
@Html.KretaDatePickerFor(x => x.Vege).Min(Model.MinimumErvenyessegVege.Value).Max(Model.MaximumErvenyessegVege.Value).RenderWithName(3, 2)
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.Targy).RenderWithName(3)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.Megjegyzes).RenderWithName(3, 9)
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="@BootsrapHelper.GetSizeClasses(3)">
|
||||
@Html.KretaInputLabelFor(x => x.Tartalom, htmlAttributes: new Dictionary<string, object> { { "class", "windowInputLabel" } })
|
||||
</div>
|
||||
<div class="@BootsrapHelper.GetSizeClasses(9)">
|
||||
@(Html.KretaHtmlEditorFor(x => x.Tartalom, encode: false)
|
||||
.Tools(t => t.Clear()
|
||||
.Bold()
|
||||
.Italic()
|
||||
.Underline()
|
||||
.SubScript()
|
||||
.SuperScript()
|
||||
.InsertOrderedList()
|
||||
.InsertUnorderedList()
|
||||
.JustifyLeft()
|
||||
.JustifyCenter()
|
||||
.JustifyRight()
|
||||
.JustifyFull()
|
||||
.FontColor()
|
||||
)
|
||||
.PasteCleanup(p => p.All(true))
|
||||
)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
var NaploNezetHelper = (function () {
|
||||
var naploNezetHelper = function () { };
|
||||
|
||||
var gridName = "@gridName";
|
||||
var formName = "@formName";
|
||||
|
||||
var url = {
|
||||
SaveElektronikusUzenet: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = Model.ApiControllerName, action = "SaveElektronikusUzenet" })"
|
||||
};
|
||||
|
||||
naploNezetHelper.dataBoundAdditionalFunction = function () {
|
||||
//NOTE: Tooltip beállítások
|
||||
var feljegyzesKendoTooltip = $(".feljegyzesKendoTooltip");
|
||||
feljegyzesKendoTooltip.off("click");
|
||||
KretaTooltipHelper.setTooltip(feljegyzesKendoTooltip, "#kendoTooltip-feljegyzesTemplate");
|
||||
feljegyzesKendoTooltip.each(function () {
|
||||
var modosithato = $(this).attr("data-modosithato");
|
||||
if (CommonUtils.parseBool(modosithato)) {
|
||||
$(this).click(function () {
|
||||
var feljegyzesId = $(this).attr("data-feljegyzesid");
|
||||
var data = {
|
||||
ID: feljegyzesId
|
||||
};
|
||||
ElektronikusUzenetekHelper.openModifyWindow(data);
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
var tanuloNevKendoTooltip = $(".naploNezetTanuloNevKendoTooltip");
|
||||
KretaTooltipHelper.setTooltip(tanuloNevKendoTooltip, "#kendoTooltip-naploNezetTanuloNevTemplate");
|
||||
|
||||
//NOTE: CheckBox beállítások
|
||||
var rowSelectHeaderCheckBox = $("#" + gridName + "_chk");
|
||||
var rowSelectCheckBoxList = $("td input[id^='" + gridName + "_chk_'");
|
||||
var isMindenkinekCheckBox = $("#IsMindenkinek");
|
||||
var isFaliujsagMegjelenesCheckBox = $("#IsFaliujsagMegjelenes");
|
||||
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, true);
|
||||
rowSelectHeaderCheckBox.off("change");
|
||||
rowSelectHeaderCheckBox.on("change", function () {
|
||||
var result = KretaCheckBoxHelper.getValue(this.id);
|
||||
KretaCheckBoxHelper.setObjectValue(isMindenkinekCheckBox, result);
|
||||
});
|
||||
|
||||
rowSelectCheckBoxList.off("change");
|
||||
rowSelectCheckBoxList.on("change", function () {
|
||||
var result = rowSelectCheckBoxList.not(":checked").length === 0;
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, result);
|
||||
KretaCheckBoxHelper.setObjectValue(isMindenkinekCheckBox, result);
|
||||
});
|
||||
|
||||
isMindenkinekCheckBox.off("change");
|
||||
isMindenkinekCheckBox.on("change", function () {
|
||||
var result = KretaCheckBoxHelper.getValue(this.id);
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, result);
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectCheckBoxList, result);
|
||||
});
|
||||
|
||||
isFaliujsagMegjelenesCheckBox.off("change");
|
||||
isFaliujsagMegjelenesCheckBox.on("change", function () {
|
||||
var result = KretaCheckBoxHelper.getValue(this.id);
|
||||
if (result) {
|
||||
$("#ervenyessegVege").show();
|
||||
} else {
|
||||
$("#ervenyessegVege").hide();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
naploNezetHelper.saveElektronikusUzenet = function () {
|
||||
ElektronikusUzenetekHelper.saveElektronikusUzenet(formName, gridName, url.SaveElektronikusUzenet);
|
||||
}
|
||||
|
||||
return naploNezetHelper;
|
||||
})();
|
||||
|
||||
</script>
|
|
@ -0,0 +1,35 @@
|
|||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Security
|
||||
|
||||
@model FeljegyzesekModel
|
||||
|
||||
@{
|
||||
string startPopupFormName = BaseElektronikusUzenetekController.StartPopupFormName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm(startPopupFormName))
|
||||
{
|
||||
@Html.HiddenFor(x => x.ElsoTanitasiNap)
|
||||
@Html.HiddenFor(x => x.DefaultEsemenyDatuma)
|
||||
|
||||
<div class="container-fluid details">
|
||||
<div>
|
||||
@Html.KretaComboBoxFor(x => x.OsztalyCsoportId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsztalyCsoportListByEvfolyam", isDualisKepzohelyiCsoport = Model.IsDualisKepzohelyiCsoport, tanarId = ClaimData.FelhasznaloId, szervezetAdatokHalmaza = (int)Kreta.Enums.ManualEnums.SzervezetAdatokHalmazaEnum.SzervezetEsAlSzervezetek }), "Text", "Value", useGroup: true, htmlAttributes: new Dictionary<string, object> { { "class", "enterKeyPress" } }).SelectedIndex(0).AutoBind(true).RenderWithName(4, 8, true)
|
||||
</div>
|
||||
<br />
|
||||
<div align="center">
|
||||
@Html.KretaButton("StartFeljegyzes", CommonResource.Tovabb, clickEventName: "ElektronikusUzenetekHelper.startTovabb")
|
||||
</div>
|
||||
@Html.KretaValidationSummary()
|
||||
</div>
|
||||
}
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
$("span.enterKeyPress").onKeyPressEnter(ElektronikusUzenetekHelper.startTovabb);
|
||||
});
|
||||
|
||||
</script>
|
|
@ -0,0 +1,173 @@
|
|||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
|
||||
@section AddCss {
|
||||
@Styles.Render(Constants.General.FeljegyzesekCSS)
|
||||
}
|
||||
|
||||
@{
|
||||
string gridName = FaliujsagBejegyzesekController.GridName;
|
||||
|
||||
string newModifyPopupName = FaliujsagBejegyzesekController.NewModifyPopupName;
|
||||
string newModifyFormName = FaliujsagBejegyzesekController.NewModifyFormName;
|
||||
}
|
||||
@{
|
||||
|
||||
var functionList = new List<FunctionCommand>
|
||||
{
|
||||
new FunctionCommand { Name = CommonResource.Uj, ClientAction = "FaliujsagBejegyzesekHelper.openNewWindow" },
|
||||
};
|
||||
|
||||
var rowFunctionList = new List<RowFunction>
|
||||
{
|
||||
new RowFunction { Name = CommonResource.Modositas, ClientAction = "FaliujsagBejegyzesekHelper.openModifyWindow", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Modositas },
|
||||
new RowFunction { Name = CommonResource.Torles, ClientAction = "FaliujsagBejegyzesekHelper.deleteConfirmWindow", IconEnum = Kreta.Enums.ManualEnums.GridRowFunctionIconEnum.Torles }
|
||||
};
|
||||
|
||||
var grid = Html.KretaGrid<FaliujsagBejegyzesekGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl("FaliujsagBejegyzesekApi", "GetFaliujsagBejegyzesekGrid"),
|
||||
allowFilterable: false,
|
||||
allowPaging: false,
|
||||
pageSizes: null,
|
||||
allowScrolling: true,
|
||||
sort: sort => sort.Add(s => s.Kezdete).Descending()
|
||||
)
|
||||
.Sortable(sortable => sortable
|
||||
.AllowUnsort(true)
|
||||
.SortMode(GridSortMode.MultipleColumn))
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.ID).Hidden();
|
||||
columns.Bound(c => c.Kezdete).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("8%");
|
||||
columns.Bound(c => c.Vege).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("8%");
|
||||
columns.Bound(c => c.FeljegyzoNeve).Width("20%");
|
||||
columns.Bound(c => c.Targy).Width("20%").SetDisplayPropertyWithToolip("Targy");
|
||||
columns.Bound(c => c.Tartalom).Width("24%").SetDisplayPropertyWithToolip("Tartalom");
|
||||
columns.Bound(c => c.Cimzettek).SetDisplayPropertyWithToolip("Cimzettek");
|
||||
|
||||
})
|
||||
.RowFunction(Html, rowFunctionList)
|
||||
.FunctionCommand(Html, functionList);
|
||||
}
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
||||
var FaliujsagBejegyzesekHelper = (function () {
|
||||
var faliujsagBejegyzesekHelper = function () { }
|
||||
|
||||
var gridName = "@gridName";
|
||||
var newModifyPopupName = "@newModifyPopupName";
|
||||
var newModifyFormName = "@newModifyFormName";
|
||||
|
||||
var url = {
|
||||
OpenNewModifyPopup: "@Url.Action("OpenNewModifyPopup", "FaliujsagBejegyzesek", new {area = "Feljegyzes" })",
|
||||
Save: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "FaliujsagBejegyzesekApi", action = "SaveFaliujsagBejegyzes" })",
|
||||
Delete: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "FaliujsagBejegyzesekApi", action = "DeleteFaliujsagBejegyzes" })"
|
||||
};
|
||||
|
||||
faliujsagBejegyzesekHelper.openNewWindow = function () {
|
||||
AjaxHelper.DoPost(url.OpenNewModifyPopup, null, popNewModifyWindow);
|
||||
}
|
||||
|
||||
faliujsagBejegyzesekHelper.openModifyWindow = function (data) {
|
||||
var postData = {
|
||||
id: data.ID
|
||||
};
|
||||
AjaxHelper.DoPost(url.OpenNewModifyPopup, postData, popNewModifyWindow);
|
||||
}
|
||||
|
||||
function popNewModifyWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = "@FeljegyzesekResource.FaliujsagBejegyzes";
|
||||
config.content = data;
|
||||
config.width = "1060px";
|
||||
config.height = "800px";
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(newModifyPopupName, config);
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
|
||||
faliujsagBejegyzesekHelper.newModifyPopupDelete = function () {
|
||||
var data = $("#" + newModifyFormName).toObject();
|
||||
deleteConfirm(data.Id);
|
||||
}
|
||||
|
||||
faliujsagBejegyzesekHelper.deleteConfirmWindow = function (data) {
|
||||
deleteConfirm(data.ID);
|
||||
}
|
||||
|
||||
function deleteConfirm(id) {
|
||||
var data = {
|
||||
id: id
|
||||
}
|
||||
KretaWindowHelper.confirmWindow(
|
||||
"@(CommonResource.Kerdes)",
|
||||
"@(CommonResource.BiztosanTorli)",
|
||||
deleteFeljegyzes,
|
||||
data
|
||||
);
|
||||
}
|
||||
|
||||
function deleteFeljegyzes(data) {
|
||||
AjaxHelper.DoValidationPost(
|
||||
url.Delete,
|
||||
newModifyFormName,
|
||||
data,
|
||||
refreshGrid,
|
||||
feedbackError
|
||||
);
|
||||
}
|
||||
|
||||
faliujsagBejegyzesekHelper.newModifyPopupSave = function (popupGridName) {
|
||||
var form = $('#' + newModifyFormName);
|
||||
if (form.valid()) {
|
||||
var data = form.toObject();
|
||||
var selectedRows = KretaGridHelper.getSelectedRowsByGridName(popupGridName);
|
||||
if (selectedRows.length === 0) {
|
||||
KretaWindowHelper.warningWindow(
|
||||
"@(CommonResource.Figyelmeztetes)",
|
||||
"@(FeljegyzesekResource.ValasszonKiLegalabbEgyOsztalytCsoportot)"
|
||||
);
|
||||
} else {
|
||||
var selectedIdList = [];
|
||||
$.each(selectedRows,
|
||||
function (index, value) {
|
||||
selectedIdList.push(value.ID);
|
||||
});
|
||||
data.OsztalyCsoportIdList = selectedIdList;
|
||||
AjaxHelper.DoValidationPost(
|
||||
url.Save,
|
||||
newModifyFormName,
|
||||
data,
|
||||
refreshGrid);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
faliujsagBejegyzesekHelper.newModifyPopupCancel = function () {
|
||||
KretaWindowHelper.destroyWindow(newModifyPopupName);
|
||||
}
|
||||
|
||||
function feedbackError() {
|
||||
var message = "@(CommonResource.Hiba)";
|
||||
KretaWindowHelper.feedbackWindow("@(CommonResource.Hiba)", message, true, KretaWindowHelper.destroyAllWindow);
|
||||
}
|
||||
|
||||
function refreshGrid() {
|
||||
KretaWindowHelper.destroyAllWindow();
|
||||
KretaGridHelper.refreshGrid(gridName);
|
||||
}
|
||||
|
||||
return faliujsagBejegyzesekHelper;
|
||||
})();
|
||||
|
||||
</script>
|
|
@ -0,0 +1,156 @@
|
|||
@using Kreta.Core
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model FaliujsagBejegyzesModel
|
||||
|
||||
@{
|
||||
var formName = FaliujsagBejegyzesekController.NewModifyFormName;
|
||||
var gridName = FaliujsagBejegyzesekController.NewModifyPopupGridName;
|
||||
var newModifyPopupName = FaliujsagBejegyzesekController.NewModifyPopupName;
|
||||
}
|
||||
|
||||
@{
|
||||
var grid = Html.KretaGrid<FaliujsagBejegyzesPopupGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl("FaliujsagBejegyzesekApi", "GetFaliujsagBejegyzesekPopupGrid"),
|
||||
dataBoundAdditionalFunction: "ModifyPopupHelper.dataBoundAdditionalFunction();",
|
||||
allowFilterable: false,
|
||||
sort: sort => sort.Add(s => s.OsztalyCsoportNeve).Ascending(),
|
||||
allowSorting: false,
|
||||
allowPaging: false,
|
||||
pageSizes: null
|
||||
)
|
||||
.SelectBoxColumn(Html, 0)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(m => m.ID).Hidden();
|
||||
columns.Bound(m => m.OsztalyCsoportNeve);
|
||||
});
|
||||
}
|
||||
|
||||
@using (Html.KretaForm(formName))
|
||||
{
|
||||
@Html.KretaValidationSummary()
|
||||
|
||||
@Html.HiddenFor(x => x.Id)
|
||||
|
||||
<div class="container-fluid details">
|
||||
<div class="row">
|
||||
@Html.KretaLabelFor(x => x.FeljegyzoNev, 3, 9, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaCheckBoxFor(x => x.IsMindenkinek).RenderWithName(3, 3)
|
||||
</div>
|
||||
<div class="row">
|
||||
@* NOTE: Mindig kell, hogy értéket kapjon a Model.MinimumErvenyessegKezdete és a Model.MaximumErvenyessegKezdete, ha nem akkor ott hibás a működés! *@
|
||||
@Html.KretaDatePickerFor(x => x.EsemenyDatuma).Min(Model.MinimumErvenyessegKezdete.Value).Max(Model.MaximumErvenyessegKezdete.Value).RenderWithName(3, 2)
|
||||
@* NOTE: Mindig kell, hogy értéket kapjon a Model.MinimumErvenyessegVege és a Model.MaximumErvenyessegVege, ha nem akkor ott hibás a működés! *@
|
||||
@Html.KretaDatePickerFor(x => x.Vege).Min(Model.MinimumErvenyessegVege.Value).Max(Model.MaximumErvenyessegVege.Value).RenderWithName(3, 2)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.Targy).RenderWithName(3)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.Megjegyzes).RenderWithName(3, 9)
|
||||
</div>
|
||||
<div class="row">
|
||||
@(Html.KretaHtmlEditorFor(x => x.Tartalom, encode: false)
|
||||
.Tools(t => t.Clear()
|
||||
.Bold()
|
||||
.Italic()
|
||||
.Underline()
|
||||
.SubScript()
|
||||
.SuperScript()
|
||||
.InsertOrderedList()
|
||||
.InsertUnorderedList()
|
||||
.JustifyLeft()
|
||||
.JustifyCenter()
|
||||
.JustifyRight()
|
||||
.JustifyFull()
|
||||
.FontColor()
|
||||
)
|
||||
.PasteCleanup(p => p.All(true))
|
||||
)
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
var ModifyPopupHelper = (function () {
|
||||
var modifyPopupHelper = function () { };
|
||||
|
||||
var gridName = "@gridName";
|
||||
|
||||
modifyPopupHelper.dataBoundAdditionalFunction = function () {
|
||||
//NOTE: CheckBox beállítások
|
||||
var rowSelectHeaderCheckBox = $("#" + gridName + "_chk");
|
||||
var rowSelectCheckBoxList = $("td input[id^='" + gridName + "_chk_'");
|
||||
var isMindenkinekCheckBox = $("#IsMindenkinek");
|
||||
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, true);
|
||||
rowSelectHeaderCheckBox.off("change");
|
||||
rowSelectHeaderCheckBox.on("change",
|
||||
function () {
|
||||
var result = KretaCheckBoxHelper.getValue(this.id);
|
||||
KretaCheckBoxHelper.setObjectValue(isMindenkinekCheckBox, result);
|
||||
});
|
||||
|
||||
rowSelectCheckBoxList.off("change");
|
||||
rowSelectCheckBoxList.on("change",
|
||||
function () {
|
||||
var result = rowSelectCheckBoxList.not(":checked").length === 0;
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, result);
|
||||
KretaCheckBoxHelper.setObjectValue(isMindenkinekCheckBox, result);
|
||||
});
|
||||
|
||||
isMindenkinekCheckBox.off("change");
|
||||
isMindenkinekCheckBox.on("change",
|
||||
function () {
|
||||
var result = KretaCheckBoxHelper.getValue(this.id);
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, result);
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectCheckBoxList, result);
|
||||
});
|
||||
|
||||
var isNew = CommonUtils.parseBool("@(!Model.Id.IsEntityId())");
|
||||
if (isNew) {
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, true);
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectCheckBoxList, true);
|
||||
KretaCheckBoxHelper.setObjectValue(isMindenkinekCheckBox, true);
|
||||
} else {
|
||||
var osztalyCsoportIdListString = "@(Html.Raw(Json.Encode(Model.OsztalyCsoportIdList)))";
|
||||
var osztalyCsoportIdList = CommonUtils.JSONparse(osztalyCsoportIdListString);
|
||||
if (osztalyCsoportIdList.length > 0) {
|
||||
$.each(osztalyCsoportIdList, function (index, value) {
|
||||
KretaCheckBoxHelper.setValue(gridName + "_chk_" + value, true);
|
||||
var result = rowSelectCheckBoxList.not(":checked").length === 0;
|
||||
KretaCheckBoxHelper.setObjectValue(rowSelectHeaderCheckBox, result);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
modifyPopupHelper.saveFaliujsagPopup = function () {
|
||||
var isAdmin = "@Model.HasAdminJogosultsag";
|
||||
|
||||
$("#" + "@newModifyPopupName" + " .k-content").animate({ scrollTop: 0 });
|
||||
if (isAdmin === "True") {
|
||||
FeljegyzesKeresoHelper.newModifyPopupSave(gridName);
|
||||
} else {
|
||||
FaliujsagBejegyzesekHelper.newModifyPopupSave(gridName);
|
||||
}
|
||||
}
|
||||
|
||||
modifyPopupHelper.refreshGrid = function () {
|
||||
KretaGridHelper.refreshGrid(gridName);
|
||||
}
|
||||
|
||||
return modifyPopupHelper;
|
||||
})();
|
||||
</script>
|
|
@ -0,0 +1,79 @@
|
|||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Enums.ManualEnums
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model KozossegiSzolgalatokGridModel
|
||||
|
||||
@{
|
||||
string tdStart = "<td class=\"rowFunction\" data-rowfunctionparent=\"KozossegiSzolgalatokReszletekGrid_" + Model.TanuloId + "\" style=\"min-width: 80px;\" role=\"gridcell\">";
|
||||
string rowFnModifyString = "<a title=\"Módosítás\" href=\"javascript:void(0)\" onclick=\"KretaGridHelper.rowFunctionCall($(this),'KozossegiSzolgalatokReszletekGrid_" + Model.TanuloId + "',KozossegiSzolgalatokHelper.openEditorPopup);\"><i style=\"font-size: 22px;\" class=\"fa fa-pencil\" aria-hidden=\"true\"></i></a>";
|
||||
string rowFnDeleteString = "<a title=\"Törlés\" href=\"javascript: void(0)\" onclick=\"KretaGridHelper.rowFunctionCall($(this), 'KozossegiSzolgalatokReszletekGrid_" + Model.TanuloId + "', KozossegiSzolgalatokHelper.deleteConfirmWindow); \" ><i style=\"font-size: 22px;\" class=\"fa fa-trash\" aria-hidden=\"true\"></i></a>";
|
||||
string designFixString = "<i style=\"padding-left:22px;\" aria-hidden=\"true\"></i>";
|
||||
string detailGridNamePrefix = KozossegiSzolgalatokController.DetailGridNamePrefix;
|
||||
}
|
||||
<script>
|
||||
|
||||
var DetailGridHelper = (function () {
|
||||
var detailGridHelper = function () { };
|
||||
|
||||
detailGridHelper.setAthuzas = function () {
|
||||
var gridName = "@detailGridNamePrefix" + "@Model.TanuloId";
|
||||
var dataSource = KretaGridHelper.getKendoGridData(gridName).dataSource.data();
|
||||
$.each(dataSource, function (index, value) {
|
||||
if (value.Torolt_BOOL) {
|
||||
$('#' + gridName).find('[data-uid= ' + value.uid + ']').addClass("kretaStrikedGridRow disabledItem");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
detailGridHelper.setRowEditing = function (rowData) {
|
||||
return !rowData.Torolt_BOOL && rowData.Modosithato_BOOL;
|
||||
}
|
||||
|
||||
return detailGridHelper;
|
||||
})();
|
||||
|
||||
</script>
|
||||
|
||||
<div id="partialDetailGrid_@Model.TanuloId">
|
||||
@(
|
||||
Html.KretaGrid<KozossegiSzolgalatokReszletekGridModel>(
|
||||
detailGridNamePrefix + Model.TanuloId,
|
||||
new GridApiUrl("KozossegiSzolgalatokApi", "GetKozossegiSzolgalatokReszletekGrid", new Dictionary<string, string> { { "tanuloId", Model.TanuloId } }),
|
||||
useToolBar: false,
|
||||
dataBoundAdditionalFunction: "DetailGridHelper.setAthuzas();",
|
||||
sort: sort => sort.Add(s => s.IntervallumKezdete).Descending(),
|
||||
allowPaging: false,
|
||||
allowScrolling:false,
|
||||
pageSizes: null
|
||||
)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.ID).Hidden();
|
||||
columns.Bound(c => c.TanuloId).Hidden();
|
||||
columns.Bound(c => c.IntervallumKezdete).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.IntervallumVege).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.TeljesitesiHelye).Width("15%").SetDisplayPropertyWithToolip("TeljesitesiHelye");
|
||||
columns.Bound(c => c.Oraszam).Width("5%");
|
||||
columns.Bound(c => c.KozossegiSzolgalatTipusa_DNAME).Width("20%").SetDisplayPropertyWithToolip("KozossegiSzolgalatTipusa_DNAME");
|
||||
columns.Bound(c => c.Megjegyzes).Width("30%").SetDisplayPropertyWithToolip("Megjegyzes");
|
||||
columns.Bound(c => c.RogzitesDatuma).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
})
|
||||
.Columns(c => c.Template(t => t.ToString()).Title(" ").ClientTemplate(
|
||||
tdStart + @"
|
||||
#if(Modosithato_BOOL == true && Torolt_BOOL == false)
|
||||
{ #" +
|
||||
rowFnModifyString
|
||||
+ @" # } else { # " + designFixString + @"# } #" +
|
||||
|
||||
@"#if (Torolheto_BOOL == true && Torolt_BOOL == false) { #" +
|
||||
rowFnDeleteString
|
||||
+ @" # } #" + "</td >"
|
||||
|
||||
))
|
||||
)
|
||||
</div>
|
|
@ -0,0 +1,300 @@
|
|||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Enums.ManualEnums
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model KozossegiSzolgalatokSearchModel
|
||||
|
||||
@section AddCss {
|
||||
@Styles.Render(Constants.General.FeljegyzesekCSS)
|
||||
}
|
||||
|
||||
@{
|
||||
string startPopupFormName = KozossegiSzolgalatokController.StartPopupFormName;
|
||||
string startPopupId = KozossegiSzolgalatokController.StartPopupId;
|
||||
|
||||
string searchFormName = "searchForm";
|
||||
string gridName = KozossegiSzolgalatokController.GridName;
|
||||
|
||||
string newModifyPopupName = KozossegiSzolgalatokController.NewModifyPopupName;
|
||||
string newModifyFormName = KozossegiSzolgalatokController.NewModifyFormName;
|
||||
}
|
||||
@section AddSearchPanel {
|
||||
@using (Html.SearchPanelSideBar(searchFormName, gridName))
|
||||
{
|
||||
@Html.HiddenFor(m => m.CsoportIdSearch)
|
||||
@Html.KretaTextBoxFor(x => x.TanuloNeve).RenderSearchPanelSideBar()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@{
|
||||
var clientTemplateUrl = Url.Action("KozossegiSzolgalatokReszletekGrid", "KozossegiSzolgalatok", new { area = "Feljegyzes" });
|
||||
|
||||
var rowFunctionList = new List<RowFunction>
|
||||
{
|
||||
new RowFunction {Name = CommonResource.Uj, ClientAction = "KozossegiSzolgalatokHelper.openNewWindow", IconEnum = GridRowFunctionIconEnum.Uj},
|
||||
};
|
||||
|
||||
var functionCommandList = new List<FunctionCommand>
|
||||
{
|
||||
new FunctionCommand { Name = CommonResource.Elolrol, ClientAction = "KozossegiSzolgalatokHelper.openStartWindow", Classes = "kendo-gridFunctionKommandRed elolrol" },
|
||||
new FunctionCommand { Classes = "kozossegiSzolgalatokInfoText clearFunctionCommand" },
|
||||
new FunctionCommand
|
||||
{
|
||||
Name = ImportExportCommonResource.Export.ToUpper(),
|
||||
NestedCommands = new List<FunctionCommand> {
|
||||
new FunctionCommand { Name = FeljegyzesekResource.Export, ClientAction = "KozossegiSzolgalatokHelper.exportGrid" },
|
||||
}
|
||||
}
|
||||
};
|
||||
var grid = Html.KretaGrid<KozossegiSzolgalatokGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl("KozossegiSzolgalatokApi", "GetKozossegiSzolgalatokGrid"),
|
||||
dataBoundAdditionalFunction: "KozossegiSzolgalatokHelper.dataBoundAdditionalFunction();",
|
||||
clientTemplate: "kozossegiSzolgalatokDetailGrid-template",
|
||||
clientTemplateUrl: clientTemplateUrl,
|
||||
clientTemplateWholeDataRow: true,
|
||||
allowFilterable: false,
|
||||
dataParameterFunction: "searchForm",
|
||||
allowPaging: false,
|
||||
pageSizes: null,
|
||||
sort: sort => sort.Add(s => s.TanuloNev).Ascending()
|
||||
)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(m => m.TanuloNev).HeaderHtmlAttributes(new { @class = "nevWidth" }).ClientTemplate(@"
|
||||
<a class='kendoTooltip kozossegiSzolgalatokTanuloNevKendoTooltip gridLinkButton'
|
||||
data-tanuloid='#: TanuloId #'
|
||||
data-tanulonev='#: TanuloNev #'
|
||||
data-osztaly='#: OsztalyNev #'
|
||||
data-anyjaneve='#: AnyjaNeve #'
|
||||
data-szuletesiido='#: SzuletesiIdoFormatted #'
|
||||
>#: TanuloNev #</a>");
|
||||
columns.Bound(c => c.SzuletesiIdo).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]);
|
||||
columns.Bound(c => c.AnyjaNeve);
|
||||
columns.Bound(c => c.OsszesOraszam);
|
||||
})
|
||||
.RowFunction(Html, rowFunctionList)
|
||||
.FunctionCommand(Html, functionCommandList);
|
||||
}
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
||||
|
||||
@Html.KretaGridTemplate("kozossegiSzolgalatokDetailGrid-template")
|
||||
|
||||
@Html.KretaTooltipTemplate("kendoTooltip-kozossegiSzolgalatokTanuloNevTemplate",
|
||||
@"<div class='kendoTooltip'>
|
||||
<table>
|
||||
<tr>
|
||||
<td style='padding-right: 5px'><b>Osztály/Csoport:</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 KozossegiSzolgalatokHelper = (function () {
|
||||
var kozossegiSzolgalatokHelper = function () { };
|
||||
|
||||
var startPopupFormName = "@startPopupFormName";
|
||||
var startPopupId = "@startPopupId";
|
||||
kozossegiSzolgalatokHelper.startModel = null;
|
||||
|
||||
var searchFormName = "searchForm";
|
||||
var gridName = "@gridName";
|
||||
|
||||
var newModifyPopupName = "@newModifyPopupName";
|
||||
var newModifyFormName = "@newModifyFormName";
|
||||
var osztalyCsoportId = -1;
|
||||
|
||||
var currentTanuloNev;
|
||||
|
||||
var url = {
|
||||
OpenStartPopup: "@Url.Action("OpenStartPopup", "KozossegiSzolgalatok", new {area = "Feljegyzes" })",
|
||||
OpenNewModifyPopup: "@Url.Action("OpenNewModifyPopup", "KozossegiSzolgalatok", new {area = "Feljegyzes" })",
|
||||
Save: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "KozossegiSzolgalatokApi", action = "SaveKozossegiSzolgalat" })",
|
||||
Delete: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "KozossegiSzolgalatokApi", action = "DeleteKozossegiSzolgalat" })",
|
||||
ExportUrl: "@Url.Action("KozossegiSzolgalatokExportGrid", "KozossegiSzolgalatok", new {area = "Feljegyzes" })",
|
||||
};
|
||||
|
||||
kozossegiSzolgalatokHelper.openStartWindow = function () {
|
||||
if (!CommonUtils.isNull(kozossegiSzolgalatokHelper.startModel)) {
|
||||
kozossegiSzolgalatokHelper.startModel = null;
|
||||
KretaGridHelper.clearGridData(gridName);
|
||||
}
|
||||
$(".kozossegiSzolgalatokInfoText").html("");
|
||||
AjaxHelper.DoPost(url.OpenStartPopup, null, popUpStartWindow);
|
||||
}
|
||||
|
||||
function popUpStartWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = "@(FeljegyzesekResource.KozossegiSzolgalatok)";
|
||||
config.width = "500px";
|
||||
config.content = data;
|
||||
config.actions = ['Close'];
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(startPopupId, config);
|
||||
modal.setOptions({ height: 120 });
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
kozossegiSzolgalatokHelper.exportGrid = function () {
|
||||
window.location = url.ExportUrl + "?" + $.param(KretaGridHelper.getSearchParametersWithoutInputNames(searchFormName));
|
||||
}
|
||||
kozossegiSzolgalatokHelper.startTovabb = function () {
|
||||
var form = $("#" + startPopupFormName);
|
||||
if (form.valid()) {
|
||||
kozossegiSzolgalatokHelper.startModel = KretaGridHelper.getSearchParameterObject(startPopupFormName);
|
||||
var osztalyCsoportText = KretaComboBoxHelper.getKendoComboBoxData("OsztalyCsoportId").text();
|
||||
osztalyCsoportId = KretaComboBoxHelper.getKendoComboBoxData("OsztalyCsoportId").value();
|
||||
if (!CommonUtils.isNullOrEmpty(osztalyCsoportText)) {
|
||||
$(".kozossegiSzolgalatokInfoText").html(kendo.htmlEncode(osztalyCsoportText) + " @(FeljegyzesekResource.KozossegiSzolgalatok)".toLowerCase());
|
||||
}
|
||||
|
||||
$("#CsoportIdSearch").val(kozossegiSzolgalatokHelper.startModel.OsztalyCsoportId);
|
||||
|
||||
KretaGridHelper.refreshGrid(gridName);
|
||||
KretaWindowHelper.destroyWindow(startPopupId);
|
||||
}
|
||||
}
|
||||
|
||||
kozossegiSzolgalatokHelper.dataBoundAdditionalFunction = function () {
|
||||
var tanuloNevKendoTooltip = $(".kozossegiSzolgalatokTanuloNevKendoTooltip");
|
||||
tanuloNevKendoTooltip.off("click");
|
||||
KretaTooltipHelper.setTooltip(tanuloNevKendoTooltip, "#kendoTooltip-kozossegiSzolgalatokTanuloNevTemplate");
|
||||
setKendoTooltipClick(tanuloNevKendoTooltip);
|
||||
}
|
||||
|
||||
function setKendoTooltipClick(kendoTooltip) {
|
||||
kendoTooltip.click(function () {
|
||||
var tanuloId = $(this).attr("data-tanuloid");
|
||||
var tanuloNev = $(this).attr("data-tanulonev");
|
||||
if (!CommonUtils.isNullOrEmpty(tanuloId)) {
|
||||
var data = {
|
||||
ID: null,
|
||||
TanuloId: tanuloId,
|
||||
TanuloNev: tanuloNev
|
||||
};
|
||||
kozossegiSzolgalatokHelper.openEditorPopup(data);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
kozossegiSzolgalatokHelper.openNewWindow = function (data) {
|
||||
data.ID = null;
|
||||
kozossegiSzolgalatokHelper.openEditorPopup(data);
|
||||
}
|
||||
|
||||
kozossegiSzolgalatokHelper.openEditorPopup = function (data) {
|
||||
var postData = {
|
||||
id: data.ID,
|
||||
tanuloId: data.TanuloId
|
||||
};
|
||||
currentTanuloNev = data.TanuloNev;
|
||||
AjaxHelper.DoPost(url.OpenNewModifyPopup, postData, popNewModifyWindow);
|
||||
|
||||
}
|
||||
|
||||
function popNewModifyWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = kendo.htmlEncode(currentTanuloNev);
|
||||
config.content = data;
|
||||
config.width = "800px";
|
||||
config.height = "600px";
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(newModifyPopupName, config);
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
|
||||
kozossegiSzolgalatokHelper.newModifyPopupDelete = function () {
|
||||
var data = $("#" + newModifyFormName).toObject();
|
||||
deleteConfirm(data.Id, data.TanuloId);
|
||||
}
|
||||
|
||||
kozossegiSzolgalatokHelper.deleteConfirmWindow = function (data) {
|
||||
deleteConfirm(data.ID, data.TanuloId);
|
||||
}
|
||||
|
||||
function deleteConfirm(id, tanuloId) {
|
||||
var data = {
|
||||
id: id,
|
||||
tanuloId: tanuloId
|
||||
}
|
||||
KretaWindowHelper.confirmWindow(
|
||||
"@(CommonResource.Kerdes)",
|
||||
"@(CommonResource.BiztosanTorli)",
|
||||
deleteKozossegiSzolgalat,
|
||||
data
|
||||
);
|
||||
}
|
||||
|
||||
function deleteKozossegiSzolgalat(data) {
|
||||
var postData = {
|
||||
id: data.id
|
||||
}
|
||||
AjaxHelper.DoPostQuery(
|
||||
url.Delete,
|
||||
null,
|
||||
postData,
|
||||
kozossegiSzolgalatokHelper.refreshGrid,
|
||||
feedbackError
|
||||
);
|
||||
}
|
||||
|
||||
kozossegiSzolgalatokHelper.newModifyPopupSave = function () {
|
||||
var form = $('#' + newModifyFormName);
|
||||
if (form.valid()) {
|
||||
var data = form.toObject();
|
||||
data.OsztalyCsoportId = osztalyCsoportId;
|
||||
AjaxHelper.DoValidationPost(
|
||||
url.Save,
|
||||
newModifyFormName,
|
||||
data,
|
||||
kozossegiSzolgalatokHelper.refreshGrid);
|
||||
}
|
||||
}
|
||||
|
||||
kozossegiSzolgalatokHelper.newModifyPopupCancel = function () {
|
||||
KretaWindowHelper.destroyWindow(newModifyPopupName);
|
||||
}
|
||||
|
||||
function feedbackError() {
|
||||
var message = "@(CommonResource.Hiba)";
|
||||
KretaWindowHelper.feedbackWindow("@(CommonResource.Hiba)", message, true, KretaWindowHelper.destroyAllWindow);
|
||||
}
|
||||
|
||||
kozossegiSzolgalatokHelper.refreshGrid = function () {
|
||||
KretaWindowHelper.destroyAllWindow();
|
||||
KretaGridHelper.refreshGrid(gridName);
|
||||
}
|
||||
|
||||
return kozossegiSzolgalatokHelper;
|
||||
})();
|
||||
|
||||
$(document).ready(function () {
|
||||
if (!CommonUtils.parseBool("@(Model.OsztalyCsoportList.Count == 1)")) {
|
||||
KozossegiSzolgalatokHelper.openStartWindow();
|
||||
} else {
|
||||
$("button.kendo-gridFunctionKommandRed.elolrol").hide();
|
||||
KozossegiSzolgalatokHelper.startModel = {
|
||||
OsztalyCsoportId: "@Model.OsztalyCsoportId"
|
||||
};
|
||||
var osztalyCsoportText = "@Model.OsztalyCsoportNev";
|
||||
$(".kozossegiSzolgalatokInfoText").html(osztalyCsoportText + " @(FeljegyzesekResource.KozossegiSzolgalatok)".toLowerCase());
|
||||
KozossegiSzolgalatokHelper.refreshGrid();
|
||||
}
|
||||
});
|
||||
</script>
|
|
@ -0,0 +1,90 @@
|
|||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Enums
|
||||
|
||||
@model KozossegiSzolgalatModel
|
||||
|
||||
@{
|
||||
var formName = KozossegiSzolgalatokController.NewModifyFormName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm(formName))
|
||||
{
|
||||
@Html.KretaValidationSummary()
|
||||
|
||||
@Html.HiddenFor(x => x.Id)
|
||||
@Html.HiddenFor(x => x.TanuloId)
|
||||
|
||||
<div class="container-fluid details">
|
||||
<div class="row">
|
||||
@Html.KretaDatePickerFor(x => x.IntervallumKezdete).Max(DateTime.Today).RenderWithName(3, 3, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaDatePickerFor(x => x.IntervallumVege).Max(DateTime.Today).RenderWithName(3, 3, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.TeljesitesiHelye).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.horvat).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.TeljesitesiHelyeHorvat).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.nemet).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.TeljesitesiHelyeNemet).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.roman).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.TeljesitesiHelyeRoman).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.szerb).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.TeljesitesiHelyeSzerb).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
}
|
||||
<div class="row">
|
||||
@Html.KretaNumericFor(x => x.Oraszam).Min(1).Max(50).RenderWithName(3, 2, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaComboBoxFor(x => x.KozossegiSzolgalatTipusa, Model.KozossegiSzolgalatTipusList).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.Megjegyzes).RenderWithName(3, 9, true)
|
||||
</div>
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.horvat).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.MegjegyzesHorvat).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.nemet).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.MegjegyzesNemet).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.roman).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.MegjegyzesRoman).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
}
|
||||
@if (Model.NemzetiDokumentumNyelvek.Any(x => x.ToString() == ((int)AnyanyelvEnum.szerb).ToString()))
|
||||
{
|
||||
<div class="row">
|
||||
@Html.KretaTextBoxFor(x => x.MegjegyzesSzerb).RenderWithName(3, 6, true)
|
||||
</div>
|
||||
}
|
||||
<div class="row">
|
||||
@Html.KretaDatePickerFor(x => x.RogzitesDatuma).Max(DateTime.Today).RenderWithName(3, 3, true)
|
||||
</div>
|
||||
|
||||
</div>
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
|
||||
@model KozossegiSzolgalatokModel
|
||||
|
||||
@{
|
||||
var startPopupFormName = KozossegiSzolgalatokController.StartPopupFormName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm(startPopupFormName))
|
||||
{
|
||||
<div class="container-fluid details">
|
||||
<div>
|
||||
@Html.KretaComboBoxFor(x => x.OsztalyCsoportId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "KozossegiSzolgalatokApi", action = "GetKozossegiSzolgalatOsztalyList" }), "Text", "Value", useGroup: true, htmlAttributes: new Dictionary<string, object> { { "class", "enterKeyPress" } }).SelectedIndex(0).AutoBind(true).RenderWithName(4, 8, true)
|
||||
</div>
|
||||
<br />
|
||||
<div align="center">
|
||||
@Html.KretaButton("Start", CommonResource.Tovabb, clickEventName: "KozossegiSzolgalatokHelper.startTovabb")
|
||||
</div>
|
||||
@Html.KretaValidationSummary()
|
||||
</div>
|
||||
}
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
$("span.enterKeyPress").onKeyPressEnter(KozossegiSzolgalatokHelper.startTovabb);
|
||||
});
|
||||
|
||||
</script>
|
221
KretaWeb/Areas/Feljegyzes/Views/OsszefuggoSzakGyak/Index.cshtml
Normal file
221
KretaWeb/Areas/Feljegyzes/Views/OsszefuggoSzakGyak/Index.cshtml
Normal file
|
@ -0,0 +1,221 @@
|
|||
@using Kreta.Enums
|
||||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@model OsszefuggoSzakGyakSearchModel
|
||||
|
||||
@section AddCss {
|
||||
@Styles.Render(Constants.General.FeljegyzesekCSS)
|
||||
|
||||
@Styles.Render(Constants.General.TanuloErtekelesCSS)
|
||||
}
|
||||
|
||||
@{
|
||||
string startPopupFormName = OsszefuggoSzakGyakController.StartPopupFormName;
|
||||
string startPopupId = OsszefuggoSzakGyakController.StartPopupId;
|
||||
string startPopupTitle = OsszefuggoSzakGyakController.StartPopupTitle;
|
||||
|
||||
string gridName = OsszefuggoSzakGyakController.GridName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm("searchForm", new Dictionary<string, object> { { "style", "display:none;" } }))
|
||||
{
|
||||
@Html.HiddenFor(m => m.CsoportIdSearch)
|
||||
@Html.HiddenFor(m => m.TantargyIdSearch)
|
||||
}
|
||||
|
||||
@{
|
||||
var functionCommandList = new List<FunctionCommand>
|
||||
{
|
||||
new FunctionCommand { Name = CommonResource.Mentes, ClientAction = "OsszefuggoSzakGyakHelper.save" },
|
||||
new FunctionCommand { Name = ImportExportCommonResource.Export, ClientAction = "OsszefuggoSzakGyakHelper.export" },
|
||||
new FunctionCommand { Name = CommonResource.Elolrol, ClientAction = "OsszefuggoSzakGyakHelper.openStartWindow", Classes = "kendo-gridFunctionKommandRed elolrol" }
|
||||
};
|
||||
|
||||
var grid = Html.KretaGrid<OsszefuggoSzakGyakGridModel>
|
||||
(
|
||||
gridName,
|
||||
new GridApiUrl("OsszefuggoSzakGyakApi", "GetOsszefuggoSzakGyakGrid"),
|
||||
dataBoundAdditionalFunction: "OsszefuggoSzakGyakHelper.setkKendoMaskedDatePicker();",
|
||||
allowFilterable: false,
|
||||
allowPaging: false,
|
||||
allowScrolling: true,
|
||||
pageSizes: null,
|
||||
dataParameterFunction: "searchForm",
|
||||
sort: sort => sort.Add(s => s.TanuloNev).Ascending()
|
||||
)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.TanuloNev);
|
||||
})
|
||||
.FunctionCommand(Html, functionCommandList);
|
||||
|
||||
grid.Columns(c => c.Template(t => t.ToString())
|
||||
.HeaderHtmlAttributes(new { @class = "tanuloErtekelesSelectorGridColumnHeaderTh" })
|
||||
.Title(@"
|
||||
<div class='gridSelect'>
|
||||
<div class='selectorwrapper'>
|
||||
<ul class='bars weeks'>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllTeljesitettValue(""T"");'>" + FeljegyzesekResource.Teljesitve + @"</li>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllTeljesitettValue(""F"");'>" + FeljegyzesekResource.NemTeljesitve + @"</li>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllTeljesitettValue();' title='" + TanuloErtekelesResource.VisszaallitasAlapallapotba + @"'>" + TanuloErtekelesResource.X + @"</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>")
|
||||
.ClientTemplate(grid.SelectForColumnTemplate(Html.For<OsszefuggoSzakGyakGridModel>(), x => x.Teljesitett, Model.TeljesitettList)));
|
||||
|
||||
grid.Columns(c => c.Template(t => t.ToString())
|
||||
.HeaderHtmlAttributes(new { @class = "tanuloErtekelesSelectorGridColumnHeaderTh" })
|
||||
.Title(@"
|
||||
<div class='gridSelect'>
|
||||
<div class='selectorwrapper'>
|
||||
<ul class='bars weeks'>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllOsztalyzatValue(" + (int)OsztalyzatTipusEnum.elegtelen_1_ + ");' title='" + TanuloErtekelesResource.ElegtelenFullText + @"'>" + TanuloErtekelesResource.ElegtelenSzammal + @"</li>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllOsztalyzatValue(" + (int)OsztalyzatTipusEnum.elegseges_2_ + ");' title='" + TanuloErtekelesResource.ElegsegesFullText + @"'>" + TanuloErtekelesResource.ElegsegesSzammal + @"</li>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllOsztalyzatValue(" + (int)OsztalyzatTipusEnum.kozepes_3_ + ");' title='" + TanuloErtekelesResource.KozepesFullText + @"'>" + TanuloErtekelesResource.KozepesSzammal + @"</li>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllOsztalyzatValue(" + (int)OsztalyzatTipusEnum.jo_4_ + ");' title='" + TanuloErtekelesResource.JoFullText + @"'>" + TanuloErtekelesResource.JoSzammal + @"</li>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllOsztalyzatValue(" + (int)OsztalyzatTipusEnum.jeles_5_ + ");' title='" + TanuloErtekelesResource.JelesFullText + @"'>" + TanuloErtekelesResource.JelesSzammal + @"</li>
|
||||
<li class='kretaSelectorButton' onclick='OsszefuggoSzakGyakHelper.changeAllOsztalyzatValue();' title='" + TanuloErtekelesResource.VisszaallitasAlapallapotba + @"'>" + TanuloErtekelesResource.X + @"</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>")
|
||||
.ClientTemplate(grid.SelectForColumnTemplate(Html.For<OsszefuggoSzakGyakGridModel>(), x => x.ErtekelesOsztalyzatId, Model.OsztalyzatList, true)));
|
||||
|
||||
grid.TextBoxForColumn(Html.For<OsszefuggoSzakGyakGridModel>(), FeljegyzesekResource.SzovegesErtekeles, m => m.ErtekelesSzoveg);
|
||||
|
||||
grid.DatePickerForColumn(Html.For<OsszefuggoSzakGyakGridModel>(), FeljegyzesekResource.DatumKotelezo, m => m.TeljesitesDatumFormatted);
|
||||
|
||||
grid.TextBoxForColumn(Html.For<OsszefuggoSzakGyakGridModel>(), FeljegyzesekResource.Megjegyzes, m => m.Megjegyzes);
|
||||
|
||||
grid.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.CsoportId).Hidden(true);
|
||||
columns.Bound(c => c.TantargyId).Hidden(true);
|
||||
});
|
||||
}
|
||||
|
||||
<div>
|
||||
@(grid)
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
var OsszefuggoSzakGyakHelper = (function () {
|
||||
var osszefuggoSzakGyakHelper = function () { };
|
||||
|
||||
var startPopupFormName = "@startPopupFormName";
|
||||
var startPopupId = "@startPopupId";
|
||||
var startPopupTitle = "@startPopupTitle";
|
||||
|
||||
var gridName = "@gridName";
|
||||
|
||||
osszefuggoSzakGyakHelper.startModel = null;
|
||||
|
||||
var url = {
|
||||
OpenStartPopup: "@Url.Action("OpenStartPopup", "OsszefuggoSzakGyak", new {area = "Feljegyzes" })",
|
||||
Export: "@Url.Action("Export", "OsszefuggoSzakGyak", new {area = "Feljegyzes" })",
|
||||
Save: "@Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new {controller = "OsszefuggoSzakGyakApi", action = "Save" })"
|
||||
};
|
||||
|
||||
osszefuggoSzakGyakHelper.openStartWindow = function () {
|
||||
KretaGridHelper.clearGridData(gridName);
|
||||
AjaxHelper.DoPost(url.OpenStartPopup, null, popUpStartWindow);
|
||||
}
|
||||
|
||||
function popUpStartWindow(data) {
|
||||
var config = KretaWindowHelper.getWindowConfigContainer();
|
||||
config.title = startPopupTitle;
|
||||
config.width = "500px";
|
||||
config.content = data;
|
||||
config.actions = ['Close'];
|
||||
|
||||
var modal = KretaWindowHelper.createWindow(startPopupId, config);
|
||||
modal.setOptions({ height: 170 });
|
||||
KretaWindowHelper.openWindow(modal, true);
|
||||
}
|
||||
|
||||
osszefuggoSzakGyakHelper.startTovabb = function () {
|
||||
var form = $("#" + startPopupFormName);
|
||||
if (form.valid()) {
|
||||
osszefuggoSzakGyakHelper.startModel = KretaGridHelper.getSearchParameterObject(startPopupFormName);
|
||||
|
||||
$("#CsoportIdSearch").val(osszefuggoSzakGyakHelper.startModel.CsoportId);
|
||||
$("#TantargyIdSearch").val(osszefuggoSzakGyakHelper.startModel.TantargyId);
|
||||
|
||||
KretaGridHelper.refreshGrid(gridName);
|
||||
KretaWindowHelper.destroyWindow(startPopupId);
|
||||
}
|
||||
}
|
||||
|
||||
osszefuggoSzakGyakHelper.save = function () {
|
||||
var modifiedRows = KretaGridHelper.getModifiedRows(gridName);
|
||||
var json = [];
|
||||
$.each(modifiedRows,
|
||||
function(i, item) {
|
||||
json.push({
|
||||
"ID": item.ID,
|
||||
"Teljesitett": item.ki_Teljesitett,
|
||||
"TanuloNev": item.TanuloNev,
|
||||
"ErtekelesOsztalyzatId": item.ki_ErtekelesOsztalyzatId,
|
||||
"ErtekelesSzoveg": item.ki_ErtekelesSzoveg,
|
||||
"Megjegyzes": item.ki_Megjegyzes,
|
||||
"TeljesitesDatumFormatted": item.ki_TeljesitesDatumFormatted,
|
||||
"CsoportId": item.CsoportId,
|
||||
"TantargyId": item.TantargyId
|
||||
});
|
||||
});
|
||||
AjaxHelper.DoPost(url.Save, json, saveResponseOk);
|
||||
}
|
||||
|
||||
osszefuggoSzakGyakHelper.changeAllTeljesitettValue = function (val) {
|
||||
var defaultSelector = "td div[id*='Teljesitett'] .kretaSelectorButton";
|
||||
changeColumnValues(gridName, defaultSelector, val);
|
||||
}
|
||||
|
||||
osszefuggoSzakGyakHelper.changeAllOsztalyzatValue = function (val) {
|
||||
var defaultSelector = "td div[id*='ErtekelesOsztalyzatId'] .kretaSelectorButton";
|
||||
changeColumnValues(gridName, defaultSelector, val);
|
||||
}
|
||||
|
||||
osszefuggoSzakGyakHelper.setkKendoMaskedDatePicker = function () {
|
||||
var datePicker = $("input[id*='TeljesitesDatumFormatted']");
|
||||
datePicker.kendoMaskedDatePicker();
|
||||
datePicker.change(function() {
|
||||
KretaDateTimeHelper.validateDate($(this));
|
||||
});
|
||||
datePicker.parent().parent().css("width", "initial");
|
||||
}
|
||||
|
||||
osszefuggoSzakGyakHelper.export = function () {
|
||||
window.location = url.Export + "?csoportId=" + osszefuggoSzakGyakHelper.startModel.CsoportId + "&tantargyId=" + osszefuggoSzakGyakHelper.startModel.TantargyId;
|
||||
}
|
||||
|
||||
function changeColumnValues(gridName, selector, val) {
|
||||
if (!CommonUtils.isNullOrEmpty(val)) {
|
||||
$.each($("#" + gridName).find(selector + "[val='" + val + "']"), function () {
|
||||
if (!$(this).hasClass("activebar")) {
|
||||
$(this).click();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
$.each($("#" + gridName).find(selector), function () {
|
||||
if ($(this).hasClass("activebar")) {
|
||||
$(this).click();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function saveResponseOk() {
|
||||
KretaWindowHelper.successFeedBackWindow();
|
||||
KretaGridHelper.refreshGrid();
|
||||
}
|
||||
|
||||
return osszefuggoSzakGyakHelper;
|
||||
})();
|
||||
|
||||
$(document).ready(function () {
|
||||
OsszefuggoSzakGyakHelper.openStartWindow();
|
||||
});
|
||||
</script>
|
|
@ -0,0 +1,34 @@
|
|||
@using Kreta.Resources
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
|
||||
@model OsszefuggoSzakGyakModel
|
||||
|
||||
@{
|
||||
var startPopupFormName = OsszefuggoSzakGyakController.StartPopupFormName;
|
||||
}
|
||||
|
||||
@using (Html.KretaForm(startPopupFormName))
|
||||
{
|
||||
<div class="container-fluid details">
|
||||
@Html.KretaValidationSummary()
|
||||
<div>
|
||||
@Html.KretaComboBoxFor(x => x.CsoportId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetOsszefuggoSzakGyakosCsoportok" }), "Text", "Value", useGroup: true, htmlAttributes: new Dictionary<string, object> { { "class", "enterKeyPress" } }).AutoBind(true).RenderWithName(4, 8, true)
|
||||
</div>
|
||||
<div>
|
||||
@Html.KretaComboBoxFor(x => x.TantargyId, Url.HttpRouteUrl(Constants.RouteKey.ActionApi, new { controller = "ComboBoxHelperApi", action = "GetTantargy" }), "Text", "Value", useGroup: true, htmlAttributes: new Dictionary<string, object> { { "class", "enterKeyPress" } }).AutoBind(true).RenderWithName(4, 8, true)
|
||||
</div>
|
||||
<br />
|
||||
<div align="center">
|
||||
@Html.KretaButton("Start", CommonResource.Tovabb, clickEventName: "OsszefuggoSzakGyakHelper.startTovabb")
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
|
||||
<script>
|
||||
|
||||
$(document).ready(function () {
|
||||
$("span.enterKeyPress").onKeyPressEnter(OsszefuggoSzakGyakHelper.startTovabb);
|
||||
});
|
||||
|
||||
</script>
|
|
@ -0,0 +1,64 @@
|
|||
@using Kreta.BusinessLogic.Classes
|
||||
@using Kreta.Web.Areas.Feljegyzes.Controllers
|
||||
@using Kreta.Web.Areas.Feljegyzes.Models
|
||||
@using Kreta.Web.Helpers.Grid
|
||||
|
||||
@section AddCss {
|
||||
@Styles.Render(Constants.General.FeljegyzesekCSS)
|
||||
}
|
||||
|
||||
@{
|
||||
string gridName = KozossegiSzolgalatokController.GridName;
|
||||
}
|
||||
|
||||
<script>
|
||||
|
||||
var DetailGridHelper = (function () {
|
||||
var detailGridHelper = function () { };
|
||||
|
||||
detailGridHelper.setAthuzas = function () {
|
||||
var gridName = "@gridName";
|
||||
var dataSource = KretaGridHelper.getKendoGridData(gridName).dataSource.data();
|
||||
$.each(dataSource, function (index, value) {
|
||||
if (value.Torolt_BOOL) {
|
||||
$('#' + gridName).find('[data-uid= ' + value.uid + ']').addClass("kretaStrikedGridRow disabledItem");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
detailGridHelper.setRowEditing = function (rowData) {
|
||||
return !rowData.Torolt_BOOL && rowData.Modosithato_BOOL;
|
||||
}
|
||||
|
||||
return detailGridHelper;
|
||||
})();
|
||||
|
||||
</script>
|
||||
|
||||
<div>
|
||||
@(
|
||||
Html.KretaGrid<KozossegiSzolgalatokReszletekGridModel>(
|
||||
gridName,
|
||||
new GridApiUrl("TanuloKozossegiSzolgalataiApi", "GetTanuloKozossegiSzolgalataiGrid"),
|
||||
useToolBar: false,
|
||||
dataBoundAdditionalFunction: "DetailGridHelper.setAthuzas();",
|
||||
sort: sort => sort.Add(s => s.IntervallumKezdete).Descending(),
|
||||
allowSorting: true,
|
||||
allowScrolling: true,
|
||||
allowPaging: false,
|
||||
pageSizes: null
|
||||
)
|
||||
.Columns(columns =>
|
||||
{
|
||||
columns.Bound(c => c.ID).Hidden();
|
||||
columns.Bound(c => c.TanuloId).Hidden();
|
||||
columns.Bound(c => c.IntervallumKezdete).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.IntervallumVege).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
columns.Bound(c => c.TeljesitesiHelye).Width("15%").SetDisplayPropertyWithToolip("TeljesitesiHelye");
|
||||
columns.Bound(c => c.Oraszam).Width("5%");
|
||||
columns.Bound(c => c.KozossegiSzolgalatTipusa_DNAME).Width("20%").SetDisplayPropertyWithToolip("KozossegiSzolgalatTipusa_DNAME");
|
||||
columns.Bound(c => c.Megjegyzes).Width("30%").SetDisplayPropertyWithToolip("Megjegyzes");
|
||||
columns.Bound(c => c.RogzitesDatuma).Format(SDAFormat.Format[SDAFormat.FormatType.ShortDate]).Width("10%");
|
||||
})
|
||||
)
|
||||
</div>
|
3
KretaWeb/Areas/Feljegyzes/Views/_ViewStart.cshtml
Normal file
3
KretaWeb/Areas/Feljegyzes/Views/_ViewStart.cshtml
Normal file
|
@ -0,0 +1,3 @@
|
|||
@{
|
||||
Layout = "~/Views/Shared/_MasterLayout.cshtml";
|
||||
}
|
38
KretaWeb/Areas/Feljegyzes/Views/web.config
Normal file
38
KretaWeb/Areas/Feljegyzes/Views/web.config
Normal file
|
@ -0,0 +1,38 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
|
||||
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
|
||||
<system.web.webPages.razor>
|
||||
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
|
||||
<pages pageBaseType="System.Web.Mvc.WebViewPage">
|
||||
<namespaces>
|
||||
<add namespace="System.Web.Mvc" />
|
||||
<add namespace="System.Web.Mvc.Ajax" />
|
||||
<add namespace="System.Web.Mvc.Html" />
|
||||
<add namespace="System.Web.Routing" />
|
||||
<add namespace="System.Web.Optimization" />
|
||||
<add namespace="Kreta.Web" />
|
||||
<add namespace="Kreta.BusinessLogic.Utils" />
|
||||
<add namespace="Kendo.Mvc.UI" />
|
||||
<add namespace="Kreta.Web.Helpers" />
|
||||
</namespaces>
|
||||
</pages>
|
||||
</system.web.webPages.razor>
|
||||
|
||||
<appSettings>
|
||||
<add key="webpages:Enabled" value="false" />
|
||||
</appSettings>
|
||||
|
||||
<system.webServer>
|
||||
<handlers>
|
||||
<remove name="BlockViewHandler"/>
|
||||
<add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" />
|
||||
</handlers>
|
||||
</system.webServer>
|
||||
</configuration>
|
Loading…
Add table
Add a link
Reference in a new issue