105 lines
3.4 KiB
C#
105 lines
3.4 KiB
C#
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;
|
|
}
|
|
|
|
}
|
|
}
|