124 lines
3.8 KiB
C#
124 lines
3.8 KiB
C#
using Epost.Common;
|
|
using Epost.Model;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using static Epost.DAL.Enum.SqlLogType;
|
|
|
|
namespace Epost.DAL
|
|
{
|
|
public class ErrorLogDAL
|
|
{
|
|
DataBaseOpration.OprationSqlDAL db = DB_DLL.GetInstance();
|
|
|
|
#region 添加日志
|
|
public bool InsertErrorLog(ErrorLogModel model)
|
|
{
|
|
try
|
|
{
|
|
|
|
string sql = string.Format("insert into errorlog(username,ControlIP,ControlID,Address,ErrorDate,Type,BkAddress,Remark) values('{0}','{1}','{2}','{3}','{4}',{5},'{6}','{7}')",
|
|
model.UserName,
|
|
model.ControlIP,
|
|
model.ControlID,
|
|
model.Address,
|
|
DateTime.Now.ToString(),
|
|
model.Type,
|
|
model.BkAddress,
|
|
model.Remark);
|
|
int x = db.InsertSql(sql);
|
|
if (x > 0)
|
|
return true;
|
|
return false;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
LogHelper.WriteLogInfo("添加错误日志异常:" + ex.Message);
|
|
return false;
|
|
}
|
|
|
|
|
|
}
|
|
#endregion
|
|
|
|
#region 查询日志
|
|
public DataTable ErrorLogList(sqlLogType type)
|
|
{
|
|
try
|
|
{
|
|
string sql = string.Format("select * from errorlog where type='{0}' ",
|
|
type
|
|
);
|
|
DataTable dt = db.GetsqlForDT(sql);
|
|
return dt;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
LogHelper.WriteLogInfo("查询错误日志异常:" + ex.Message);
|
|
return null;
|
|
}
|
|
|
|
|
|
}
|
|
#endregion
|
|
|
|
#region 分页获取错误日志表列表
|
|
|
|
public List<ErrorLogModel> GetLog4NetDetailListByPage(string strWhere, string orderby, int startIndex, int endIndex, out int recordCount)
|
|
{
|
|
|
|
try
|
|
{
|
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("SELECT * FROM ( ");
|
|
strSql.Append(" SELECT ROW_NUMBER() OVER (");
|
|
if (!string.IsNullOrEmpty(orderby.Trim()))
|
|
{
|
|
strSql.Append("order by T." + orderby);
|
|
}
|
|
else
|
|
{
|
|
strSql.Append("order by Id asc");
|
|
}
|
|
strSql.Append(")AS Row, T.* from ErrorLog T WITH(NOLOCK) ");
|
|
if (!string.IsNullOrEmpty(strWhere.Trim()))
|
|
{
|
|
strSql.Append(" WHERE 1=1 " + strWhere);
|
|
}
|
|
strSql.Append(" ) TT");
|
|
strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex);
|
|
List<ErrorLogModel> list = ModelConvertHelper<ErrorLogModel>.ConvertToList(db.GetsqlForDT(strSql.ToString()));
|
|
|
|
strSql.Remove(0, strSql.Length);
|
|
strSql.Append("SELECT COUNT(*) FROM ErrorLog AS T ");
|
|
if (!string.IsNullOrEmpty(strWhere.Trim()))
|
|
{
|
|
strSql.AppendFormat(" WHERE 1=1 {0}", strWhere);
|
|
}
|
|
|
|
object obj = db.GetsqlForDT(strSql.ToString()).Rows[0][0];
|
|
if (obj != null)
|
|
recordCount = Convert.ToInt32(obj);
|
|
else
|
|
recordCount = 0;
|
|
|
|
return list;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.WriteLog(GetType(), ex.Message);
|
|
recordCount = 0;
|
|
return new List<Model.ErrorLogModel>();
|
|
}
|
|
|
|
}
|
|
#endregion
|
|
}
|
|
}
|