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