123 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			123 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			C#
		
	
	
	
| namespace BLL
 | ||
| {
 | ||
|     using System;
 | ||
|     using System.Collections;
 | ||
|     using System.Linq;
 | ||
|     using System.Net;
 | ||
| 
 | ||
|     public static class LogService
 | ||
|     {
 | ||
|         public static Model.SGGLDB db = Funs.DB;
 | ||
| 
 | ||
|         /// <summary>
 | ||
|         /// 添加操作日志
 | ||
|         /// </summary>
 | ||
|         /// <param name="CurrUser">操作人</param>
 | ||
|         /// <param name="code">编号</param>
 | ||
|         /// <param name="dataId">主键ID</param>
 | ||
|         /// <param name="strMenuId">菜单ID</param>
 | ||
|         /// <param name="strOperationName">操作名称</param>
 | ||
|         public static void AddSys_Log(Model.Sys_User CurrUser, string code, string dataId, string strMenuId, string strOperationName)
 | ||
|         {
 | ||
|             using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
 | ||
|             {
 | ||
|                 if (CurrUser != null)
 | ||
|                 {
 | ||
|                     Model.Sys_Log syslog = new Model.Sys_Log
 | ||
|                     {
 | ||
|                         LogId = SQLHelper.GetNewID(),
 | ||
|                         HostName = Dns.GetHostName(),
 | ||
|                         OperationTime = DateTime.Now,
 | ||
|                         UserId = CurrUser.UserId,
 | ||
|                         MenuId = strMenuId,
 | ||
|                         OperationName = strOperationName,
 | ||
|                         DataId = dataId,
 | ||
|                         LogSource = 1,
 | ||
|                     };
 | ||
| 
 | ||
|                     IPAddress[] ips = Dns.GetHostAddresses(syslog.HostName);
 | ||
|                     if (ips.Length > 0)
 | ||
|                     {
 | ||
|                         foreach (IPAddress ip in ips)
 | ||
|                         {
 | ||
|                             if (ip.ToString().IndexOf('.') != -1)
 | ||
|                             {
 | ||
|                                 syslog.Ip = ip.ToString();
 | ||
|                             }
 | ||
|                         }
 | ||
|                     }
 | ||
|                     string opLog = string.Empty;
 | ||
|                     var menu = db.Sys_Menu.FirstOrDefault(x => x.MenuId == strMenuId);
 | ||
|                     if (menu != null)
 | ||
|                     {
 | ||
|                         opLog = menu.MenuName + ":";
 | ||
|                     }
 | ||
| 
 | ||
|                     if (!string.IsNullOrEmpty(strOperationName))
 | ||
|                     {
 | ||
|                         opLog += strOperationName;
 | ||
|                     }
 | ||
| 
 | ||
|                     if (!string.IsNullOrEmpty(code))
 | ||
|                     {
 | ||
|                         syslog.OperationLog = opLog + ";" + code + "。";
 | ||
|                     }
 | ||
| 
 | ||
|                     if (!string.IsNullOrEmpty(CurrUser.LoginProjectId) && CurrUser.LoginProjectId != "null")
 | ||
|                     {
 | ||
|                         syslog.ProjectId = CurrUser.LoginProjectId;
 | ||
|                     }
 | ||
| 
 | ||
|                     db.Sys_Log.InsertOnSubmit(syslog);
 | ||
|                     db.SubmitChanges();
 | ||
|                 }
 | ||
|             }
 | ||
|         }
 | ||
| 
 | ||
|         /// <summary>
 | ||
|         /// 添加操作日志
 | ||
|         /// </summary>
 | ||
|         /// <param name="userId"></param>
 | ||
|         /// <param name="opLog"></param>
 | ||
|         public static void AddLog(string userId, string opLog)
 | ||
|         {
 | ||
|             //SetOvertime(userId);
 | ||
|             Model.Sys_Log log = new Model.Sys_Log
 | ||
|             {
 | ||
|                 LogId = SQLHelper.GetNewID(typeof(Model.Sys_Log)),
 | ||
|                 HostName = Dns.GetHostName()
 | ||
|             };
 | ||
|             IPAddress[] ips = Dns.GetHostAddresses(log.HostName);
 | ||
|             if (ips.Length > 0)
 | ||
|             {
 | ||
|                 foreach (IPAddress ip in ips)
 | ||
|                 {
 | ||
|                     if (ip.ToString().IndexOf('.') != -1)
 | ||
|                     {
 | ||
|                         log.Ip = ip.ToString();
 | ||
|                     }
 | ||
|                 }
 | ||
|             }
 | ||
|             log.OperationTime = DateTime.Now;
 | ||
|             log.OperationLog = opLog;
 | ||
|             log.UserId = userId;
 | ||
|             db.Sys_Log.InsertOnSubmit(log);
 | ||
|             db.SubmitChanges();
 | ||
|         }
 | ||
| 
 | ||
|         /// <summary>
 | ||
|         /// 根据项目Id删除所有相关日志信息
 | ||
|         /// </summary>
 | ||
|         /// <param name="projectId"></param>
 | ||
|         public static void DeleteLog(string projectId)
 | ||
|         {
 | ||
|             Model.SGGLDB db = Funs.DB;
 | ||
|             var q = (from x in db.Sys_Log where x.ProjectId == projectId select x).ToList();
 | ||
|             if (q != null)
 | ||
|             {
 | ||
|                 db.Sys_Log.DeleteAllOnSubmit(q);
 | ||
|                 db.SubmitChanges();
 | ||
|             }
 | ||
|         }
 | ||
|     }
 | ||
| } |