using DataRWDAL.Base;
using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using XCommon.Log;
using XImagingXhandler.XDAL;
namespace DataRWDAL
{
///
/// 审计日志库表操作类
///
public class OperateAuditLogDB : BaseDB
{
#region 添加操作数据
///
/// 添加操作数据
///
/// 操作实体对象
/// 1:成功;其他失败
public static int AddOperateAuditLogIntodb(OperateAuditLog operateAuditLog)
{
using (var db = GetInstance())
{
var result = 0;
db.BeginTran(); // 开启事务
try
{
result = db.Insertable(operateAuditLog).ExecuteCommand();
db.CommitTran(); // 提交事务
}
catch (Exception ex)
{
db.RollbackTran(); // 事务回滚
// 处理异常
result = 0;
}
return result;
}
}
#endregion
#region 从数据库获取所有用户操作记录
///
/// 从数据库获取所有用户操作记录
///
/// 操作用户
/// 操作模块
/// 操作记录实体集合
public static ObservableCollection GetExperimentCollectionFromdb(string strOperateType, string strCreateName)
{
using (var db = GetInstance())
{
if (!strOperateType.Equals("")&& strCreateName.Equals(""))
{
return new ObservableCollection(db.Queryable().Where(it => it.WorkflowTemplateId.Contains(strOperateType)
).OrderBy(it => it.CreateTime, SqlSugar.OrderByType.Desc).ToList());
}
else if (strOperateType.Equals("") && !strCreateName.Equals(""))
{
return new ObservableCollection(db.Queryable().Where(it => it.CreateName.ToString().Contains(strCreateName)
).OrderBy(it => it.CreateTime, SqlSugar.OrderByType.Desc).ToList());
}
else if (!strOperateType.Equals("") && !strCreateName.Equals(""))
{
return new ObservableCollection(db.Queryable().Where(it => it.WorkflowTemplateId.Contains(strOperateType)&& it.CreateName.ToString().Contains(strCreateName)
).OrderBy(it => it.CreateTime, SqlSugar.OrderByType.Desc).ToList());
}
else if (strOperateType.Equals("") && strCreateName.Equals(""))
{
return new ObservableCollection(db.Queryable().OrderBy(it => it.CreateTime, SqlSugar.OrderByType.Desc).ToList());
}
}
return null;
}
#endregion
#region 从数据库获取所有用户操作记录---通过Id
///
/// 从数据库获取所有用户操作记录---通过Id
///
/// Id
/// 一个操作记录实体集合
public static OperateAuditLog GetAOperateAuditLogFromdb(string strOpereateId)
{
using (var db = GetInstance())
{
return db.Queryable().Single(it => it.Id.Equals(strOpereateId));
}
}
#endregion
}
}