You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							123 lines
						
					
					
						
							4.9 KiB
						
					
					
				
			
		
		
	
	
							123 lines
						
					
					
						
							4.9 KiB
						
					
					
				| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.Data;
 | |
| using System.Xml.Linq;
 | |
| using FactorySystemCommon;
 | |
| using FactorySystemModel.ResponseModel;
 | |
| using FactorySystemModel.SqlSugarModel;
 | |
| using SqlSugar;
 | |
| 
 | |
| namespace FactorySystemBll
 | |
| {
 | |
|     public class OperateLogBll
 | |
|     {
 | |
|         public object GetPageList(Dictionary<string, object> inParam, out int totalCount, string orderBy = "a.FID desc")
 | |
|         {
 | |
|             totalCount = 0;
 | |
|             int pageIndex = 1, pageSize = 10;
 | |
|             List<string> paramName = new List<string>() { "FDeleted!=1" };
 | |
|             List<SugarParameter> paramVal = new List<SugarParameter>();
 | |
|             if (inParam != null && inParam.Count > 0)
 | |
|             {
 | |
|                 foreach (var item in inParam)
 | |
|                 {
 | |
|                     if (item.Key == "FPageIndex" || item.Key == "PageIndex")
 | |
|                     {
 | |
|                         int.TryParse(item.Value.ToString(), out pageIndex);
 | |
|                     }
 | |
|                     else if (item.Key == "FPageSize" || item.Key == "PageSize")
 | |
|                     {
 | |
|                         int.TryParse(item.Value.ToString(), out pageSize);
 | |
|                     }
 | |
|                     else
 | |
|                     {
 | |
|                         try
 | |
|                         {
 | |
|                             //检索,全转成字符串
 | |
|                             paramName.Add(item.Key + "=@" + item.Key);
 | |
|                             paramVal.Add(new SugarParameter("@" + item.Key, item.Value.ToString()));
 | |
|                         }
 | |
|                         catch (Exception) { }
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|             SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
 | |
|             var temp = db.Queryable<TFS_OperateLog, TUser>((a, b) => new JoinQueryInfos(JoinType.Left, a.FAddUser == b.FID))
 | |
|                 .Where(string.Join(" and ", paramName), paramVal).OrderBy(orderBy).Select<dynamic>("a.*,b.FName as FOptUser");
 | |
|             return temp.ToPageList(pageIndex, pageSize, ref totalCount);
 | |
|         }
 | |
| 
 | |
|         public List<LogRow> GetLogsByPage(string FName, int FType, int FModule, string dateFrom, string dateTo, int pageNumber, int pageSize, out int totalNumber)
 | |
|         {
 | |
|             SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
 | |
|             totalNumber = 0;
 | |
|             List<LogRow> logs = db.Queryable<TFS_OperateLog, TUser>((a, b)=> new JoinQueryInfos(JoinType.Left, a.FAddUser == b.FID))
 | |
|                 .WhereIF(!string.IsNullOrEmpty(FName), (a, b) => b.FName.Contains(FName))
 | |
|                 .WhereIF(FType > 0, (a, b) => a.FType == FType)
 | |
|                 .WhereIF(FModule > 0, (a, b) => a.FModule == FModule)
 | |
|                 .WhereIF(!string.IsNullOrEmpty(dateFrom), (a, b) => a.FAddDate >= DateTime.Parse(dateFrom))
 | |
|                 .WhereIF(!string.IsNullOrEmpty(dateTo), (a, b) => a.FAddDate <= DateTime.Parse(dateTo))
 | |
|                 .Select<LogRow>("a.*,b.FName").OrderBy((a) => a.FID, OrderByType.Desc)
 | |
|                 .ToPageList(pageNumber, pageSize, ref totalNumber);
 | |
| 
 | |
|             return logs;
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 保存日志
 | |
|         /// </summary>
 | |
|         /// <param name="teamId">协同ID</param>
 | |
|         /// <param name="type">来源类型</param>
 | |
|         /// <param name="desc">描述</param>
 | |
|         /// <param name="userId">操作人</param>
 | |
|         public static void Add(int module, int teamId, int type, string desc, int userId)
 | |
|         {
 | |
|             var db = AppSettingsHelper.GetSqlSugar();
 | |
|             db.Insertable(new TFS_OperateLog
 | |
|             {
 | |
|                 FModule = module,
 | |
|                 FTeamID = teamId,
 | |
|                 FType = type,
 | |
|                 FDesc = desc,
 | |
|                 FAddUser = userId,
 | |
|                 FAddDate = DateTime.Now
 | |
|             }).ExecuteCommand();
 | |
|         }
 | |
| 
 | |
|         public static DataTable GetLogs(int limit)
 | |
|         {
 | |
|             SqlSugarClient db = AppSettingsHelper.GetSqlSugar();
 | |
|             string strSql = @"
 | |
|                 select TOP(" + limit + @")
 | |
| 	                CONVERT(varchar(100), a.FAddDate, 120) as '操作时间',
 | |
| 	                b.FName as '操作人',
 | |
| 	                CASE a.FModule
 | |
| 		                when 1 THEN '待办事项'
 | |
| 		                WHEN 2 THEN '协同路线'
 | |
| 		                WHEN 3 THEN '物料路线'
 | |
| 		                WHEN 4 THEN '试验号变更'
 | |
| 		                WHEN 5 THEN '清单管理'
 | |
| 		                WHEN 6 THEN '系统设置'
 | |
| 		                ELSE ''
 | |
| 	                END AS '模块',
 | |
| 	                a.FTeamID as '协同ID',
 | |
| 	                c.FName as '来源类型',
 | |
| 	                LEFT(a.FDesc, 100) as '操作描述'
 | |
|                 from
 | |
| 	                TFS_OperateLog a
 | |
|                 left join TUser b on
 | |
| 	                a.FAddUser = b.FID
 | |
|                 left join TBasicCode c on
 | |
| 	                a.FType = c.FCode 
 | |
|                 WHERE c.FType = 33
 | |
|                 ORDER by
 | |
| 	                a.FAddDate desc
 | |
|                 ";
 | |
| 
 | |
|             DataTable data = db.Ado.GetDataTable(strSql);
 | |
|             return data;
 | |
|         }
 | |
| 
 | |
|     }
 | |
| }
 |