Exemplo n.º 1
0
        //protected BaseObject ShadowCopy()
        //{
        //    return (BaseObject)this.MemberwiseClone();
        //}

        protected override void afterUpdate(DatabaseConnection dbConn, DBManager db)
        {
            if (dbConn is DatabaseConnectionWithAudit)
            {
                DatabaseConnectionWithAudit dbConnWithAudit = (DatabaseConnectionWithAudit)dbConn;
                EAuditTrail t = dbConnWithAudit.CurAuditTrail;
                if (t == null)
                {
                    return;
                }
                if (!t.LogDetail)
                {
                    InsertAuditTrailDetail(dbConnWithAudit, null);
                    return;
                }
                EAuditTrailDetail d = new EAuditTrailDetail();
                d.ActionType = EAuditTrailDetail.ACTIONTYPE_UPDATE;
                d.TableName  = db.dbclass.tableName;
                if (oldValueObject == null)
                {
                    d.Remark = db.GetTrailUpdate(this);
                }
                else
                {
                    d.Remark = GetTrailUpdate(dbConn, db);
                }
                InsertAuditTrailDetail(dbConnWithAudit, d);
            }
            oldValueObject = null;
        }
Exemplo n.º 2
0
        protected override void afterDelete(DatabaseConnection dbConn, DBManager db)
        {
            if (dbConn is DatabaseConnectionWithAudit)
            {
                DatabaseConnectionWithAudit dbConnWithAudit = (DatabaseConnectionWithAudit)dbConn;
                EAuditTrail t = dbConnWithAudit.CurAuditTrail;
                if (t == null)
                {
                    return;
                }
                if (!t.LogDetail)
                {
                    InsertAuditTrailDetail(dbConnWithAudit, null);
                    return;
                }

                EAuditTrailDetail d = new EAuditTrailDetail();
                d.ActionType = EAuditTrailDetail.ACTIONTYPE_DELETE;
                d.TableName  = db.dbclass.tableName;
                d.Remark     = db.GetTrailInsert(this);
                InsertAuditTrailDetail(dbConnWithAudit, d);
            }
        }
Exemplo n.º 3
0
        protected virtual void InsertAuditTrailDetail(DatabaseConnectionWithAudit dbConnWithAudit, EAuditTrailDetail d)
        {
            EAuditTrail t = dbConnWithAudit.CurAuditTrail;

            if (t != null)
            {
                if (t.AuditTrailID <= 0)
                {
                    EAuditTrail.db.insert(dbConnWithAudit, t);
                }
                if (d != null)
                {
                    d.AuditTrailID = t.AuditTrailID;
                    EAuditTrailDetail.db.insert(dbConnWithAudit, d);
                }
            }
        }