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; } } }