Files
zszq-trs/Framework/YLErp.Core/DBModels/Base/DBModelBaseV2.cs
T
2024-05-09 14:06:26 +08:00

68 lines
1.6 KiB
C#

using System.ComponentModel.DataAnnotations.Schema;
using YieldChain.Security;
namespace YLErp.DBModels
{
/// <summary>
/// 数据模型基类V2
/// </summary>
public abstract class DBModelBaseV2
{
public long id { get; set; }
/// <summary>
/// 加密主键
/// </summary>
[NotMapped]
public string EncryptId
{
get { return DataProtect.Encrypt(id.ToString()); }
}
/// <summary>
/// 操作人ID
/// </summary>
public virtual int OptId { set; get; }
/// <summary>
/// 操作人名称
/// </summary>
public virtual string OptName { set; get; }
/// <summary>
/// 操作时间
/// </summary>
public virtual DateTime OptTime { set; get; }
/// <summary>
/// 设置操作人操作时间
/// </summary>
public void SetOpt(DBModelBaseV2 baseModel)
{
if (baseModel == null)
{
throw new ArgumentNullException(nameof(baseModel));
}
OptId = baseModel.OptId;
OptName = baseModel.OptName;
OptTime = baseModel.OptTime;
}
/// <summary>
/// 设置操作人操作时间
/// </summary>
public void SetOpt(OptUserInfo userInfo)
{
if (userInfo is null)
{
throw new ArgumentNullException(nameof(userInfo));
}
OptId = userInfo.UserId;
OptName = userInfo.UserName;
OptTime = DateTime.Now;
}
}
}