init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,186 @@
|
|||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using Kreta.BusinessLogic.Validation;
|
||||
using Kreta.Core;
|
||||
using Kreta.Resources;
|
||||
using Newtonsoft.Json;
|
||||
|
||||
namespace Kreta.BusinessLogic.HelperClasses.ImportCo
|
||||
{
|
||||
public class TanuloErtekelesMondatbankImportCo : BaseImportCo
|
||||
{
|
||||
[JsonIgnore]
|
||||
public List<TanuloErtekelesMondatbankImportItemCo> MainImportItemList { get; set; } = new List<TanuloErtekelesMondatbankImportItemCo>();
|
||||
|
||||
[JsonIgnore]
|
||||
public List<TanuloErtekelesMondatbankImportItemCo> NemImportalhatoItemList { get; set; } = new List<TanuloErtekelesMondatbankImportItemCo>();
|
||||
|
||||
[JsonProperty("T_ERTEKELESMONDATBANK_OSSZES")]
|
||||
public List<TanuloErtekelesMondatbankImportJsonItemCo> MainImportJsonItemList { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
public List<TanuloErtekelesMondatbankItemCo> TanuloErtekelesMondatbankCoList { get; set; }
|
||||
|
||||
public Dictionary<int, List<ValidationResult>> Validate()
|
||||
{
|
||||
var validationResultDictionary = new Dictionary<int, List<ValidationResult>>();
|
||||
|
||||
foreach (TanuloErtekelesMondatbankImportItemCo importItem in MainImportItemList)
|
||||
{
|
||||
var validationResultList = new List<ValidationResult>();
|
||||
//NOTE: Az import item-eket egyesével levalidáljuk!
|
||||
var blValidator = new BlValidator(importItem);
|
||||
if (!blValidator.IsValid)
|
||||
{
|
||||
validationResultList.AddRange(blValidator.ErrorList);
|
||||
}
|
||||
|
||||
if (validationResultList.Count > 0)
|
||||
{
|
||||
validationResultDictionary.Add(importItem.LineNumber, validationResultList);
|
||||
}
|
||||
}
|
||||
|
||||
Dictionary<int, string> lineNumberCompareHashDictionary = MainImportItemList.ToDictionary(x => x.LineNumber, x => x.CompareHash);
|
||||
var duplicatedRowConditonTextList = new List<string>
|
||||
{
|
||||
ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameRovidNev,
|
||||
ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameSzoveg,
|
||||
ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameTanuloErtekelesTipus,
|
||||
ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameEvfolyamTipus,
|
||||
ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameTantargy
|
||||
};
|
||||
ValidateDuplicatedRows(validationResultDictionary, lineNumberCompareHashDictionary, duplicatedRowConditonTextList);
|
||||
return validationResultDictionary;
|
||||
}
|
||||
}
|
||||
|
||||
public class TanuloErtekelesMondatbankImportItemCo : BaseImportItemCo, IValidatableObject
|
||||
{
|
||||
[MaxLength(3, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
[Display(Name = nameof(ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameRovidNev), ResourceType = typeof(ImportExportTanuloErtekelesMondatbankResource))]
|
||||
public string RovidNevImportData { get; set; }
|
||||
|
||||
[Required(ErrorMessageResourceName = nameof(ErrorResource.Required), ErrorMessageResourceType = typeof(ErrorResource))]
|
||||
[MaxLength(4000, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
[Display(Name = nameof(ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameSzoveg), ResourceType = typeof(ImportExportTanuloErtekelesMondatbankResource))]
|
||||
public string SzovegImportData { get; set; }
|
||||
|
||||
[MaxLength(250, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
[Display(Name = nameof(ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameTanuloErtekelesTipus), ResourceType = typeof(ImportExportTanuloErtekelesMondatbankResource))]
|
||||
public string TanuloErtekelesTipusImportData { get; set; }
|
||||
|
||||
[MaxLength(250, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
[Display(Name = nameof(ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameEvfolyamTipus), ResourceType = typeof(ImportExportTanuloErtekelesMondatbankResource))]
|
||||
public string EvfolyamTipusImportData { get; set; }
|
||||
|
||||
[MaxLength(255, ErrorMessageResourceName = nameof(CommonResource.MaxLengthValidation), ErrorMessageResourceType = typeof(CommonResource))]
|
||||
[Display(Name = nameof(ImportExportTanuloErtekelesMondatbankResource.ImportHeaderNameTantargy), ResourceType = typeof(ImportExportTanuloErtekelesMondatbankResource))]
|
||||
public string TantargyImportData { get; set; }
|
||||
|
||||
public string RovidNev => GetStringValue(RovidNevImportData);
|
||||
|
||||
public string Szoveg => GetStringValue(SzovegImportData);
|
||||
|
||||
public string TanuloErtekelesTipusNev => GetStringValue(TanuloErtekelesTipusImportData, CommonResource.Mind);
|
||||
|
||||
public string EvfolyamTipusNev => GetStringValue(EvfolyamTipusImportData, CommonResource.Mind);
|
||||
|
||||
public string TantargyNev => GetStringValue(TantargyImportData, CommonResource.Mind);
|
||||
|
||||
public int? TanuloErtekelesTipusId { get; set; }
|
||||
|
||||
public int? EvfolyamTipusId { get; set; }
|
||||
|
||||
public int? TantargyId { get; set; }
|
||||
|
||||
public int TipusId { get; set; }
|
||||
|
||||
#region Validate
|
||||
|
||||
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
|
||||
{
|
||||
//NOTE: Ha a TanuloErtekelesTipusId null és nem "Mind" az tanuló értékelés típus neve, akkor rossz az adat!
|
||||
if (!TanuloErtekelesTipusId.IsEntityId() &&
|
||||
TanuloErtekelesTipusNev != CommonResource.Mind)
|
||||
{
|
||||
yield return new ValidationResult(ImportExportTanuloErtekelesMondatbankResource.ATanuloErtekelesTipusNemSzerepelAzAdatbazisban);
|
||||
}
|
||||
|
||||
//NOTE: Ha a EvfolyamTipusId null és nem "Mind" az évfolyam típus neve, akkor rossz az adat!
|
||||
if (!EvfolyamTipusId.IsEntityId() &&
|
||||
EvfolyamTipusNev != CommonResource.Mind)
|
||||
{
|
||||
yield return new ValidationResult(ImportExportTanuloErtekelesMondatbankResource.AzEvfolyamTipusNemSzerepelAzAdatbazisban);
|
||||
}
|
||||
|
||||
//NOTE: Ha a TantargyId null és nem "Mind", "Magatartás", "Szorgalom" a tantárgy neve, akkor rossz az adat!
|
||||
if (!TantargyId.IsEntityId() &&
|
||||
TantargyNev != CommonResource.Mind &&
|
||||
TantargyNev != TanuloErtekelesResource.Magatartas &&
|
||||
TantargyNev != TanuloErtekelesResource.Szorgalom)
|
||||
{
|
||||
yield return new ValidationResult(ImportExportTanuloErtekelesMondatbankResource.ATantargyNemSzerepelAzAdatbazisban);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endregion Validate
|
||||
}
|
||||
|
||||
public class TanuloErtekelesMondatbankImportJsonItemCo : BaseImportJsonItemCo
|
||||
{
|
||||
public TanuloErtekelesMondatbankImportJsonItemCo(TanuloErtekelesMondatbankImportItemCo importItemCo, int tanevId, int intezmenyId, int felhasznaloId) : base(tanevId, intezmenyId, felhasznaloId)
|
||||
{
|
||||
RovidNev = importItemCo.RovidNev;
|
||||
Szoveg = importItemCo.Szoveg;
|
||||
TanuloErtekelesTipusNev = importItemCo.TanuloErtekelesTipusNev;
|
||||
TanuloErtekelesTipusId = importItemCo.TanuloErtekelesTipusId;
|
||||
EvfolyamTipusNev = importItemCo.EvfolyamTipusNev;
|
||||
EvfolyamTipusId = importItemCo.EvfolyamTipusId;
|
||||
TantargyNev = importItemCo.TantargyNev;
|
||||
TantargyId = importItemCo.TantargyId;
|
||||
TipusId = importItemCo.TipusId;
|
||||
|
||||
Id = importItemCo.Id;
|
||||
LineNumber = importItemCo.LineNumber;
|
||||
Operation = importItemCo.Operation;
|
||||
}
|
||||
|
||||
#region Import Json Properties
|
||||
|
||||
[JsonProperty("C_ROVIDNEV")]
|
||||
public string RovidNev { get; set; }
|
||||
|
||||
[JsonProperty("C_SZOVEG")]
|
||||
public string Szoveg { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
public string TanuloErtekelesTipusNev { get; set; }
|
||||
|
||||
[JsonProperty("C_ERTEKELESTIPUSA")]
|
||||
public int? TanuloErtekelesTipusId { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
public string EvfolyamTipusNev { get; set; }
|
||||
|
||||
[JsonProperty("C_EVFOLYAMTIPUSA")]
|
||||
public int? EvfolyamTipusId { get; set; }
|
||||
|
||||
[JsonIgnore]
|
||||
public string TantargyNev { get; set; }
|
||||
|
||||
[JsonProperty("C_TANTARGYID")]
|
||||
public int? TantargyId { get; set; }
|
||||
|
||||
[JsonProperty("C_TIPUSID")]
|
||||
public int TipusId { get; set; }
|
||||
|
||||
#region Default Required Import Json Properties
|
||||
|
||||
#endregion Default Required Import Json Properties
|
||||
|
||||
#endregion Import Json Properties
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue