28 lines
1.3 KiB
C#
28 lines
1.3 KiB
C#
using System.Globalization;
|
|
using System.Runtime.CompilerServices;
|
|
using Gremlin_BlazorServer.Data.EntityClasses;
|
|
using static Gremlin_BlazorServer.Data.EntityClasses.Enums;
|
|
|
|
namespace Gremlin_BlazorServer.Data.DBClasses;
|
|
|
|
public static class MetaDataSetter {
|
|
private static readonly DateTime farInTheFuture = DateTime.Parse("2050-12-31t00:00:00.000000z", CultureInfo.CurrentCulture);
|
|
|
|
public static IMetadata ForImport(IMetadata entity, string datamodifiedby = "", string dataversioncomment = "", [CallerMemberName] string callername = "") {
|
|
_ = SetMetaData(entity, datamodifiedby, dataversioncomment, callername);
|
|
return entity;
|
|
}
|
|
|
|
private static IMetadata SetMetaData(IMetadata entity, string datamodifiedby = "", string dataversioncomment = "", [CallerMemberName] string callername = "") {
|
|
entity.DataCreationDate = DateTime.Now;
|
|
entity.DataModificationDate = DateTime.Now;
|
|
entity.DataModificationByUser = datamodifiedby == "" ? callername : datamodifiedby;
|
|
entity.DataStatus = Status.Active.ToString();
|
|
entity.DataValidFrom = DateTime.Now;
|
|
entity.DataValidUntil = farInTheFuture;
|
|
entity.DataVersionNumber++;
|
|
entity.DataVersionComment = dataversioncomment;
|
|
|
|
return entity;
|
|
}
|
|
} |