34 lines
1.2 KiB
C#
34 lines
1.2 KiB
C#
using Gremlin_BlazorServer.Data.EntityClasses;
|
|
using System.Globalization;
|
|
using System.Runtime.CompilerServices;
|
|
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;
|
|
|
|
}
|
|
}
|
|
}
|