예제 #1
0
        public virtual void ApplyAudit(AuditObjectModel auditObjectModel)
        {
            //if there is no user login.do nothing.
            if (_currentMiCakeUser.UserId.Equals(default(TKey)))
            {
                return;
            }

            var entity = auditObjectModel.AuditEntity;
            var userID = _currentMiCakeUser.UserId;

            switch (auditObjectModel.EntityState)
            {
            case RepositoryEntityState.Deleted:
                SetDeleteUser(entity, userID);
                break;

            case RepositoryEntityState.Modified:
                SetModifyUser(entity, userID);
                break;

            case RepositoryEntityState.Added:
                SetCreateUser(entity, userID);
                break;

            default:
                break;
            }
        }
        public virtual void ApplyAudit(AuditObjectModel auditObjectModel)
        {
            if (auditObjectModel.EntityState != RepositoryEntityState.Deleted)
            {
                return;
            }

            var entity = auditObjectModel.AuditEntity;

            if (!(entity is ISoftDeletion softDeletionObj))
            {
                return;
            }

            softDeletionObj.IsDeleted = true;

            if (entity is IHasDeletionTime hasDeletionTimeObj)
            {
                hasDeletionTimeObj.DeletionTime = DateTime.Now;
            }
        }
예제 #3
0
 public void ApplyAudit(AuditObjectModel auditObjectModel)
 {
     throw new NotImplementedException();
 }