/// <summary> /// 写入作业日志(更新操作) /// </summary> /// <param name="oldObj">旧实体对象</param> /// <param name="newObj">新实体对象</param> /// <param name="OperationType">操作类型</param> /// <param name="Status">状态</param> /// <param name="Remark">操作说明</param> /// <returns></returns> public void WriteLog <T>(T oldObj, T newObj, OperationType OperationType, int Status, string Remark = "") { IDatabase database = DataFactory.Database(); DbTransaction isOpenTrans = database.BeginTrans(); try { SysLog.ObjectId = DatabaseCommon.GetKeyFieldValue(newObj).ToString(); SysLog.LogType = (int)OperationType; SysLog.IPAddress = ManageProvider.Provider.Current().IPAddress; SysLog.IPAddressName = ManageProvider.Provider.Current().IPAddressName; SysLog.CreateUserId = ManageProvider.Provider.Current().UserId; SysLog.CreateUserName = ManageProvider.Provider.Current().Account; SysLog.CreateTime = DateTime.Now; SysLog.ModuleId = int.Parse(DESEncrypt.Decrypt(CookieHelper.GetCookie("ModuleId"))); if (Remark == "") { SysLog.Remark = DatabaseCommon.GetClassName <T>(); } else { SysLog.Remark = Remark; } SysLog.Status = Status; int newid = database.Insert(SysLog, isOpenTrans); //添加日志详细信息 Type objTye = typeof(T); StringBuilder sbNewValue = new StringBuilder(); StringBuilder sbOldValue = new StringBuilder(); foreach (PropertyInfo pi in objTye.GetProperties()) { object oldVal = pi.GetValue(oldObj, null); object newVal = pi.GetValue(newObj, null); if (!Equals(oldVal, newVal)) { if (oldVal != null && oldVal.ToString() != " " && oldVal.ToString() != "" && newVal != null && newVal.ToString() != " " && newVal.ToString() != "") { sbNewValue.Append(pi.Name + ":" + newVal + ","); sbOldValue.Append(pi.Name + ":" + oldVal + ","); } } } SysLogDetail syslogdetail = new SysLogDetail(); syslogdetail.SysLogId = newid; syslogdetail.PropertyField = ""; syslogdetail.CreateTime = DateTime.Now; syslogdetail.PropertyName = ""; syslogdetail.NewValue = sbNewValue.ToString(); syslogdetail.OldValue = sbOldValue.ToString(); database.Insert(syslogdetail, isOpenTrans); database.Commit(); } catch (Exception e) { database.Rollback(); } }
public void WriteLog <T>(List <T> obj, OperationType type, int Status, string Remark = "") where T : new() { IDatabase database = DataFactory.Database(); DbTransaction isOpenTrans = database.BeginTrans(); try { foreach (var item in obj) { // T Oldentity = database.FindEntity<T>(item.ToString()); SysLog.ObjectId = DatabaseCommon.GetKeyFieldValue(item).ToString(); SysLog.LogType = (int)type; SysLog.IPAddress = ManageProvider.Provider.Current().IPAddress; SysLog.IPAddressName = ManageProvider.Provider.Current().IPAddressName; SysLog.CreateUserId = ManageProvider.Provider.Current().UserId; SysLog.CreateUserName = ManageProvider.Provider.Current().Account; SysLog.CreateTime = DateTime.Now; SysLog.ModuleId = int.Parse(DESEncrypt.Decrypt(CookieHelper.GetCookie("ModuleId"))); if (Remark == "") { SysLog.Remark = DatabaseCommon.GetClassName <T>(); } else { SysLog.Remark = Remark; } SysLog.Status = Status; int newid = database.Insert(SysLog, isOpenTrans); //添加日志详细信息 Type objTye = typeof(T); StringBuilder sbOldValue = new StringBuilder(); foreach (PropertyInfo pi in objTye.GetProperties()) { object value = pi.GetValue(item, null); if (value != null && value.ToString() != " " && value.ToString() != "") { sbOldValue.Append(pi.Name + ":" + value + ","); } } SysLogDetail syslogdetail = new SysLogDetail(); syslogdetail.SysLogId = newid; syslogdetail.PropertyField = ""; syslogdetail.PropertyName = ""; syslogdetail.NewValue = sbOldValue.ToString(); syslogdetail.CreateTime = DateTime.Now; database.Insert(syslogdetail, isOpenTrans); } database.Commit(); } catch { database.Rollback(); } }
/// <summary> /// 写入作业日志(更新操作) /// </summary> /// <param name="oldObj">旧实体对象</param> /// <param name="newObj">新实体对象</param> /// <param name="OperationType">操作类型</param> /// <param name="Status">状态</param> /// <param name="Remark">操作说明</param> /// <returns></returns> public void WriteLog <T>(T oldObj, T newObj, OperationType OperationType, string Status, string Remark = "") { IDatabase database = DataFactory.Database(); DbTransaction isOpenTrans = database.BeginTrans(); try { SysLog.SysLogId = CommonHelper.GetGuid; SysLog.ObjectId = DatabaseCommon.GetKeyFieldValue(newObj).ToString(); SysLog.LogType = CommonHelper.GetString((int)OperationType); SysLog.IPAddress = ManageProvider.Provider.Current().IPAddress; SysLog.IPAddressName = ManageProvider.Provider.Current().IPAddressName; SysLog.CompanyId = ManageProvider.Provider.Current().CompanyId; SysLog.DepartmentId = ManageProvider.Provider.Current().DepartmentId; SysLog.CreateUserId = ManageProvider.Provider.Current().UserId; SysLog.CreateUserName = ManageProvider.Provider.Current().UserName; SysLog.ModuleId = DESEncrypt.Decrypt(WebHelper.GetCookie("ModuleId")); SysLog.CreateDate = DateTime.Now; if (Remark == "") { SysLog.Remark = DatabaseCommon.GetClassName <T>(); } SysLog.Remark = Remark; SysLog.Status = Status; database.Insert(SysLog, isOpenTrans); //添加日志详细信息 Type objTye = typeof(T); foreach (PropertyInfo pi in objTye.GetProperties()) { object oldVal = pi.GetValue(oldObj, null); object newVal = pi.GetValue(newObj, null); if (!Equals(oldVal, newVal)) { if (oldVal != null && oldVal.ToString() != " " && oldVal.ToString() != "" && newVal != null && newVal.ToString() != " " && newVal.ToString() != "") { BaseSysLogDetail syslogdetail = new BaseSysLogDetail { SysLogDetailId = CommonHelper.GetGuid, SysLogId = SysLog.SysLogId, PropertyField = pi.Name, PropertyName = DatabaseCommon.GetFieldText(pi), NewValue = "" + newVal + "", OldValue = "" + oldVal + "" }; database.Insert(syslogdetail, isOpenTrans); } } } database.Commit(); } catch { database.Rollback(); } }
/// <summary> /// 写入作业日志(删除操作) /// </summary> /// <param name="oldObj">旧实体对象</param> /// <param name="keyValue">对象主键</param> /// <param name="status">状态</param> /// <param name="Remark">操作说明</param> public void WriteLog <T>(string[] keyValue, string status, string Remark = "") where T : new() { IDatabase database = DataFactory.Database(); DbTransaction isOpenTrans = database.BeginTrans(); try { foreach (var item in keyValue) { T oldentity = database.FindEntity <T>(item.ToString()); SysLog.SysLogId = CommonHelper.GetGuid; SysLog.ObjectId = item; SysLog.LogType = CommonHelper.GetString((int)OperationType.Delete); SysLog.IPAddress = ManageProvider.Provider.Current().IPAddress; SysLog.IPAddressName = ManageProvider.Provider.Current().IPAddressName; SysLog.CompanyId = ManageProvider.Provider.Current().CompanyId; SysLog.DepartmentId = ManageProvider.Provider.Current().DepartmentId; SysLog.CreateUserId = ManageProvider.Provider.Current().UserId; SysLog.CreateUserName = ManageProvider.Provider.Current().UserName; SysLog.ModuleId = DESEncrypt.Decrypt(WebHelper.GetCookie("ModuleId")); SysLog.CreateDate = DateTime.Now; if (Remark == "") { SysLog.Remark = DatabaseCommon.GetClassName <T>(); } SysLog.Remark = Remark; SysLog.Status = status; database.Insert(SysLog, isOpenTrans); //添加日志详细信息 Type objTye = typeof(T); foreach (PropertyInfo pi in objTye.GetProperties()) { object value = pi.GetValue(oldentity, null); if (value != null && value.ToString() != " " && value.ToString() != "") { BaseSysLogDetail syslogdetail = new BaseSysLogDetail { SysLogDetailId = CommonHelper.GetGuid, SysLogId = SysLog.SysLogId, PropertyField = pi.Name, PropertyName = DatabaseCommon.GetFieldText(pi), NewValue = "" + value + "" }; database.Insert(syslogdetail, isOpenTrans); } } } database.Commit(); } catch { database.Rollback(); } }
/// <summary> /// 写入作业日志(新增操作) /// </summary> /// <param name="entity">实体对象</param> /// <param name="operationType">操作类型</param> /// <param name="status">状态</param> /// <param name="remark">操作说明</param> /// <returns></returns> public void WriteLog <T>(T entity, OperationType operationType, string status, string remark = "") { IDatabase database = DataFactory.Database(); DbTransaction isOpenTrans = database.BeginTrans(); try { SysLog.SysLogId = CommonHelper.GetGuid; SysLog.ObjectId = DatabaseCommon.GetKeyFieldValue(entity).ToString(); SysLog.LogType = CommonHelper.GetString((int)operationType); SysLog.IPAddress = ManageProvider.Provider.Current().IPAddress; SysLog.IPAddressName = ManageProvider.Provider.Current().IPAddressName; SysLog.CompanyId = ManageProvider.Provider.Current().CompanyId; SysLog.DepartmentId = ManageProvider.Provider.Current().DepartmentId; SysLog.CreateUserId = ManageProvider.Provider.Current().UserId; SysLog.CreateUserName = ManageProvider.Provider.Current().UserName; SysLog.ModuleId = DESEncrypt.Decrypt(WebHelper.GetCookie("ModuleId")); SysLog.CreateDate = DateTime.Now; if (remark == "") { SysLog.Remark = DatabaseCommon.GetClassName <T>(); } SysLog.Remark = remark; SysLog.Status = status; database.Insert(SysLog, isOpenTrans); //添加日志详细信息 Type objTye = typeof(T); foreach (PropertyInfo pi in objTye.GetProperties()) { object value = pi.GetValue(entity, null); if (value == null || value.ToString() == " " || value.ToString() == "") { continue; } BaseSysLogDetail syslogdetail = new BaseSysLogDetail { SysLogDetailId = CommonHelper.GetGuid, SysLogId = SysLog.SysLogId, PropertyField = pi.Name, PropertyName = DatabaseCommon.GetFieldText(pi), NewValue = "" + value + "" }; database.Insert(syslogdetail, isOpenTrans); } database.Commit(); } catch { database.Rollback(); } }