using System; using System.ComponentModel.DataAnnotations; using System.Web.Http.ModelBinding; using Kreta.BusinessLogic.Classes; using Kreta.BusinessLogic.HelperClasses; using Kreta.Resources; namespace Kreta.Web.Areas.Orarend.Models { public class SzamonkeresElorejelzesModel { #region Constructors public SzamonkeresElorejelzesModel() { } public SzamonkeresElorejelzesModel(bool isFromSzervezet) { IsFromSzervezet_SzamonkeresElorejelzes = isFromSzervezet; } public SzamonkeresElorejelzesModel(SzamonkeresElorejelzesCO co, bool isFromSzervezet) { OraGroupId = co.OrarendiOraGroupId; Datum = co.Datum; Megnevezes = co.Megnevezes; ErtekelesModId = co.SzamonkeresModId; Oraszam = co.Oraszam; IsFromSzervezet_SzamonkeresElorejelzes = isFromSzervezet; } #endregion Constructors #region Properties [Display(Name = nameof(OrarendResource.SzamonkeresMegnevezes), ResourceType = typeof(OrarendResource))] [MaxLength(300, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))] public string Megnevezes { get; set; } [KretaRequired] [Display(Name = nameof(OrarendResource.ErtekelesMod), ResourceType = typeof(OrarendResource))] public int? ErtekelesModId { get; set; } public int? OraGroupId { get; set; } public int? Oraszam { get; set; } public int? OsztalyCsoportId { get; set; } public DateTime? Datum { get; set; } public bool IsFromSzervezet_SzamonkeresElorejelzes { get; set; } #endregion Properties public ModelStateDictionary Validate() { var modelStateDictionary = new ModelStateDictionary(); if (!ErtekelesModId.HasValueAndPositive()) { modelStateDictionary.AddModelError(nameof(OrarendResource.ErtekelesMod), string.Format(CommonResource.Required, $"\"{OrarendResource.ErtekelesMod}\"")); } return modelStateDictionary; } public SzamonkeresElorejelzesCO ToCo() { var result = new SzamonkeresElorejelzesCO { OrarendiOraGroupId = OraGroupId.Value, Datum = Datum.Value, Megnevezes = Megnevezes, SzamonkeresModId = ErtekelesModId, Oraszam = Oraszam }; return result; } } }