public static void ApplyLogAction(SqlTransaction tran, DALEntity.Sys_Log la) { if (la == null) return; DataTable dt = DALHelper.GetMasterEmpty(tran, "Sys_Log"); DataRow dr; dr = dt.NewRow(); dr["LogID"] = la.LogID; dr["Module"] = la.Module; dr["Page"] = la.Page; dr["Action"] = la.Action; dr["Table"] = la.Table; dr["Key"] = la.Key; dr["Value"] = la.Value; dr["User"] = la.User; dr["WlanIP"] = la.WlanIP; dr["LanIP"] = la.LanIP; dr["MacAddr"] = la.MacAddr; dr["PCName"] = la.PCName; dr["OS"] = la.OS; dr["Browser"] = la.Browser; dr["DateTime"] = la.DateTime; dr["Backup"] = GetBackupString(tran, la); dt.Rows.Add(dr); new RDFNew.Module.Admin.Sys.Sys_Log().ApplyMaster(dt, tran); }
public object[] GetMaster(DALEntity.QuerySet qrys) { object[] rtn = new object[] { 0, null, 0 }; //0成功或1失败,DataTable或Exception,0总行数 string Sql = ""; string OrderBy = ""; StringBuilder sb = new StringBuilder(); List<SqlParameter> parms = new List<SqlParameter>(); try { if (qrys != null) { foreach (DALEntity.QueryInfo qi in qrys.QueryInfos) { sb.Append(string.Format(" {0} {1} {2} {3} @{4} {5} ", qi.Union, qi.GroupBegin, qi.FieldName, qi.Oper, qi.ParamName, qi.GroupEnd)); parms.Add(new SqlParameter("@" + qi.ParamName, qi.ParamValue)); } OrderBy = qrys.OrderBy != "" ? " Order By " + qrys.OrderBy : ""; } if (qrys == null || qrys.PageInfo == null) { Sql = @" Select Flow_ToDoM.*,b.EmployeeName As OwnerName From Flow_ToDoM Left Join Bas_Employee b On b.EmployeeID=Flow_ToDoM.OwnerID Where 1=1 {0} {1} "; rtn[1] = SqlHelper.ExecuteDataTable(SqlHelper.ConnectionString, CommandType.Text, String.Format(Sql, sb.ToString(), OrderBy), parms.ToArray()); } else { Sql = @" Select Count(1) From Flow_ToDoM Left Join Bas_Employee b On b.EmployeeID=Flow_ToDoM.OwnerID Where 1=1 {0} "; rtn[2] = SqlHelper.ExecuteScalar(String.Format(Sql, sb.ToString()), parms.ToArray()); Sql = @" Select Top {2} Flow_ToDoM.*,b.EmployeeName As OwnerName From Flow_ToDoM Left Join Bas_Employee b On b.EmployeeID=Flow_ToDoM.OwnerID Where 1=1 {0} And Flow_ToDoM.ToDoMID Not In ( Select Top {3} Flow_ToDoM.ToDoMID From Flow_ToDoM Left Join Bas_Employee b On b.EmployeeID=Flow_ToDoM.OwnerID Where 1=1 {0} {1} ) {1} "; rtn[1] = SqlHelper.ExecuteDataTable(String.Format(Sql, sb.ToString(), OrderBy, qrys.PageInfo.PageSize, qrys.PageInfo.PageIndex * qrys.PageInfo.PageSize), parms.ToArray()); } } catch (Exception ex) { rtn[0] = 1; //失败 rtn[1] = ex; } return rtn; }
public static DataTable GetMaster(SqlTransaction tran, string tbName, DALEntity.QuerySet qrys) { DataTable dt; string Sql = @" Select * From {0} Where 1=1 {1} {2} "; string OrderBy = ""; StringBuilder sb = new StringBuilder(); List<SqlParameter> parms = new List<SqlParameter>(); if (qrys != null) { foreach (DALEntity.QueryInfo qi in qrys.QueryInfos) { sb.Append(string.Format(" And [{0}] {1} @{2} ", qi.FieldName, qi.Oper, qi.ParamName)); parms.Add(new SqlParameter("@" + qi.ParamName, qi.ParamValue)); } OrderBy = qrys.OrderBy != "" ? " Order By " + qrys.OrderBy : ""; } if (tran != null) dt = SqlHelper.ExecuteDataTable(tran, String.Format(Sql, tbName, sb.ToString(), OrderBy), parms.ToArray()); else dt = SqlHelper.ExecuteDataTable(String.Format(Sql, tbName, sb.ToString(), OrderBy), parms.ToArray()); return dt; }
static string GetBackupString(SqlTransaction tran, DALEntity.Sys_Log la) { System.Text.StringBuilder sb = new StringBuilder(); if (la != null) { if (la.Action.ToLower() == "edit" || la.Action.ToLower() == "delete") { DataTable dt = null; dt = GetMaster(tran, la.Table, new RDFNew.Module.DALEntity.QuerySet(new List<RDFNew.Module.DALEntity.QueryInfo>(){ new RDFNew.Module.DALEntity.QueryInfo(la.Key,"=",la.Value)})); foreach (DataColumn dc in dt.Columns) { if (dt.Rows[0][dc.ColumnName].ToString().Length <= 6000) { sb.Append(String.Format("[{0}]:{1}|", dc.ColumnName, dt.Rows[0][dc.ColumnName])); } } } } return sb.ToString().TrimEnd('|'); }