示例#1
0
        /// <summary>
        /// 删除一条数据
        /// </summary>
        public bool Delete(int UserID, int ID)
        {
            Model.SOURCEVIEW original = GetModel(UserID, ID);

            StringBuilder strSql = new StringBuilder();

            strSql.Append("delete from SOURCEVIEW ");
            strSql.Append(" where ID=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@ID", SqlDbType.Int, 4)
            };
            parameters[0].Value = ID;

            int rows = DbHelperSQL.ExecuteSql(UserID, strSql.ToString(), parameters);

            if (rows > 0)
            {
                Model.AUDITLOG auditobj = original.GetAuditLogObject(null);
                auditobj.UserID      = UserID;
                auditobj.CreateDate  = DateTime.Now;
                auditobj.MessageType = Model.AUDITLOG.Severity.Audit;
                auditobj.ModuleName  = "DAL.SOURCEVIEW.Delete";
                auditobj.Message     = String.Format(AppNum.AuditMessage.SourceViewDeleteSuccess, ID);

                AUDITLOG.Add(auditobj);

                return(true);
            }
            else
            {
                return(false);
            }
        }
示例#2
0
        /// <summary>
        /// Create AUDITLOG object and set MessageDetail according to object difference
        /// </summary>
        /// <param name="newvalue">Model holding new values</param>
        /// <param name="oldvalue">Model holding original values, can be null if it's insert action</param>
        /// <returns></returns>
        internal static Model.AUDITLOG GetAuditLogObject(this Model.SOURCEVIEW newvalue, Model.SOURCEVIEW oldvalue)
        {
            Model.AUDITLOG result = new Model.AUDITLOG();
            PropertyInfo[] pinfo  = typeof(Model.SOURCEVIEW).GetProperties();
            StringBuilder  sb     = new StringBuilder();


            if (oldvalue == null)
            {
                // new record
                foreach (PropertyInfo p in pinfo)
                {
                    switch (p.Name)
                    {
                    case "SOURCETYPE":
                    case "FORMATTYPE":
                    {
                        // skip these properties
                    }
                    break;

                    default:
                    {
                        sb.AppendFormat("{0} = {1}\r\n", p.Name, p.GetValue(newvalue, null));
                    }
                    break;
                    }
                }
            }
            else
            {
                // old record
                foreach (PropertyInfo p in pinfo)
                {
                    switch (p.Name)
                    {
                    case "SOURCETYPE":
                    case "FORMATTYPE":
                    {
                        // skip these properties
                    }
                    break;

                    default:
                    {
                        if (p.GetValue(newvalue, null) != p.GetValue(oldvalue, null))
                        {
                            sb.AppendFormat("{0} = {1} -> {2}\r\n", p.Name, p.GetValue(oldvalue, null), p.GetValue(newvalue, null));
                        }
                    }
                    break;
                    }
                }
            }

            result.MessageDetail = sb.ToString();

            return(result);
        }
示例#3
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(int UserID, CUSTOMRP.Model.SOURCEVIEW model)
        {
            Model.SOURCEVIEW original = GetModel(UserID, model.ID);

            StringBuilder strSql = new StringBuilder();

            strSql.Append("update SOURCEVIEW set ");
            strSql.Append("SOURCEVIEWNAME=@SOURCEVIEWNAME,");
            strSql.Append("DATABASEID=@DATABASEID,");
            strSql.Append("SOURCETYPE=@SOURCETYPE,");
            strSql.Append("TBLVIEWNAME=@TBLVIEWNAME,");
            strSql.Append("AUDODATE=@AUDODATE,");
            strSql.Append("VIEWLEVEL=@VIEWLEVEL,");
            strSql.Append("[DESC]=@DESC,");
            strSql.Append("FORMATTYPE=@FORMATTYPE");
            strSql.Append(" where ID=@ID");
            SqlParameter[] parameters =
            {
                new SqlParameter("@SOURCEVIEWNAME", SqlDbType.NVarChar,   50),
                new SqlParameter("@DATABASEID",     SqlDbType.Int,         4),
                new SqlParameter("@SOURCETYPE",     SqlDbType.Int,         4),
                new SqlParameter("@TBLVIEWNAME",    SqlDbType.NVarChar,  128),
                new SqlParameter("@AUDODATE",       SqlDbType.DateTime),
                new SqlParameter("@VIEWLEVEL",      SqlDbType.Decimal,     9),
                new SqlParameter("@DESC",           SqlDbType.NVarChar,   50),
                new SqlParameter("@FORMATTYPE",     SqlDbType.Int,         4),
                new SqlParameter("@ID",             SqlDbType.Int, 4)
            };
            parameters[0].Value = model.SOURCEVIEWNAME;
            parameters[1].Value = model.DATABASEID;
            parameters[2].Value = model.SOURCETYPE;
            parameters[3].Value = model.TBLVIEWNAME;
            parameters[4].Value = model.AUDODATE;
            parameters[5].Value = model.VIEWLEVEL;
            parameters[6].Value = model.DESC;
            parameters[7].Value = model.FORMATTYPE;
            parameters[8].Value = model.ID;

            int rows = DbHelperSQL.ExecuteSql(UserID, strSql.ToString(), parameters);

            if (rows > 0)
            {
                Model.AUDITLOG auditobj = model.GetAuditLogObject(original);
                auditobj.UserID      = UserID;
                auditobj.CreateDate  = DateTime.Now;
                auditobj.MessageType = Model.AUDITLOG.Severity.Audit;
                auditobj.ModuleName  = "DAL.SOURCEVIEW.Update";
                auditobj.Message     = String.Format(AppNum.AuditMessage.SourceViewUpdateSuccess, model.ID);

                AUDITLOG.Add(auditobj);

                return(true);
            }
            else
            {
                return(false);
            }
        }