public int Create(SystemLogInfo model) { Database db = DBHelper.CreateDataBase(); StringBuilder sb = new StringBuilder(); sb.Append("insert into SystemLog("); sb.Append("MethodName,MethodSignature,TypeName,CallContext,SystemName,UseTime,Args,CreateDate,CreateIP,ReturnValue,LogType"); sb.Append(") values("); sb.Append("@MethodName,@MethodSignature,@TypeName,@CallContext,@SystemName,@UseTime,@Args,@CreateDate,@CreateIP,@ReturnValue,@LogType);SELECT @@IDENTITY;"); DbCommand dbCommand = db.GetSqlStringCommand(sb.ToString()); db.AddInParameter(dbCommand, "@MethodName", DbType.String, model.MethodName); db.AddInParameter(dbCommand, "@MethodSignature", DbType.String, model.MethodSignature); db.AddInParameter(dbCommand, "@TypeName", DbType.String, model.TypeName); db.AddInParameter(dbCommand, "@CallContext", DbType.String, model.CallContext); db.AddInParameter(dbCommand, "@SystemName", DbType.String, model.SystemName); db.AddInParameter(dbCommand, "@UseTime", DbType.Int32, model.UseTime); db.AddInParameter(dbCommand, "@Args", DbType.String, model.Args); db.AddInParameter(dbCommand, "@CreateDate", DbType.DateTime, model.CreateDate); db.AddInParameter(dbCommand, "@CreateIP", DbType.String, model.CreateIP); db.AddInParameter(dbCommand, "@ReturnValue", DbType.String, model.ReturnValue); db.AddInParameter(dbCommand, "@LogType", DbType.Int32, model.LogType); int id = Convert.ToInt32(db.ExecuteScalar(dbCommand)); return(id); }
public ActionResult AjaxCalDaysByDiffDate(string startdate, string enddate) { if (!ValidateUtil.IsDate(startdate)) { return(ToJsonContent(new ReturnResult() { ErrorCode = 000010, ErrorMessage = dicErrInfo["E000010"].ChineseName, LogLevel = dicErrInfo["E000010"].LogLevel })); } if (!ValidateUtil.IsDate(enddate)) { return(ToJsonContent(new ReturnResult() { ErrorCode = 000011, ErrorMessage = dicErrInfo["E000011"].ChineseName, LogLevel = dicErrInfo["E000011"].LogLevel })); } TimeSpan diffDateSpan = DateTimeHelper.GetDiffTime2(DateTime.Parse(enddate), DateTime.Parse(startdate)); SystemLogInfo systemLogInfo = GetUserSystemInfo(); systemLogInfo.LogLevel = (Int32)LogLevel.LOG_LEVEL_INFO; systemLogInfo.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo.Remark = string.Format("计算日期差 开始日期:{0} 结束日期{1} 结果为:{2}", startdate, enddate, diffDateSpan.Days.ToString()); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo); return(ToJsonContent(new ReturnResult() { ErrorCode = 0, ErrorMessage = diffDateSpan.Days.ToString(), LogLevel = (short)LogLevel.LOG_LEVEL_INFO })); }
protected override void OnActionExecuted(ActionExecutedContext filterContext) { //在Action执行之后执行 输出到输出流中文字:After Action Excutexxx Int32 StartExecutedTime = 0; if (Session[filterContext.ActionDescriptor.UniqueId] != null) { StartExecutedTime = Convert.ToInt32(Session[filterContext.ActionDescriptor.UniqueId]); //清除某个Session Session[filterContext.ActionDescriptor.UniqueId] = null; Session.Remove(filterContext.ActionDescriptor.UniqueId); } Int32 ExecutedTime = DateTime.Now.Millisecond - StartExecutedTime; SystemLogInfo systemLogInfo = GetUserSystemInfo(); systemLogInfo.LogLevel = (Int32)LogLevel.LOG_LEVEL_DEBUG; systemLogInfo.ModuleInfo = filterContext.Controller.ToString(); systemLogInfo.OperationInfo = filterContext.ActionDescriptor.ActionName; systemLogInfo.Remark = string.Format("结束执行 {0}文件{1}控制器{2}函数 执行时间为{3}微秒", filterContext.ActionDescriptor.ControllerDescriptor.ControllerType.Module, filterContext.Controller.ToString(), filterContext.ActionDescriptor.ActionName, ExecutedTime); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo); if (filterContext.Result as ContentResult != null) { ReturnResult rr = JsonConvert.DeserializeObject <ReturnResult>((filterContext.Result as ContentResult).Content); rr.ErrorPath = string.Format("Controller: {0}-> Action: {1}", filterContext.Controller.ToString(), filterContext.ActionDescriptor.ActionName); rr.ExecutedTime = ExecutedTime; filterContext.Result = ToJsonContent(rr); } base.OnActionExecuted(filterContext); }
protected override void OnActionExecuting(ActionExecutingContext filterContext) { Session[filterContext.ActionDescriptor.UniqueId] = DateTime.Now.Millisecond; SystemLogInfo systemLogInfo = GetUserSystemInfo(); systemLogInfo.LogLevel = (Int32)LogLevel.LOG_LEVEL_DEBUG; systemLogInfo.ModuleInfo = filterContext.Controller.ToString(); systemLogInfo.OperationInfo = filterContext.ActionDescriptor.ActionName; //在Action执行前执行 if (filterContext.ActionParameters.Count == 0) { systemLogInfo.Remark = string.Format("开始执行 {0}文件{1}控制器{2}函数", filterContext.ActionDescriptor.ControllerDescriptor.ControllerType.Module, filterContext.Controller.ToString(), filterContext.ActionDescriptor.ActionName); } else { StringBuilder sb = new StringBuilder(); foreach (var d in filterContext.ActionParameters) { sb.Append(string.Format("{0}={1},", d.Key, d.Value)); } systemLogInfo.Remark = string.Format("开始执行 {0}文件{1}控制器{2}函数 参数内容为[{3}]", filterContext.ActionDescriptor.ControllerDescriptor.ControllerType.Module, filterContext.Controller.ToString(), filterContext.ActionDescriptor.ActionName, sb.ToString().TrimEnd(',')); } BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo); base.OnActionExecuting(filterContext); }
/// <summary> /// 真删除 /// </summary> /// <typeparam name="TEntity"></typeparam> /// <param name="exp"></param> /// <returns></returns> public virtual bool Remove <TEntity>(Expression <Func <TEntity, bool> > exp) where TEntity : class, new() { try { Kily.Set <TEntity>().Where(exp).ToList().ForEach(t => { Type EntityType = t.GetType(); if (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) != null) { string FunctionName = (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute).Description; string ThemeName = EntityType.GetProperties().Where(x => x.GetCustomAttribute(typeof(DescriptionAttribute)) != null).FirstOrDefault().GetValue(t).ToString(); SystemLogInfo Log = new SystemLogInfo(); if (CompanyInfo() != null) { Log.HandlerUser = CompanyInfo().CompanyName; Log.TypePath = CompanyInfo().TypePath; } else if (CompanyUser() != null) { Log.HandlerUser = CompanyUser().CompanyName; Log.TypePath = CompanyUser().TypePath; } else if (MerchantInfo() != null) { Log.HandlerUser = MerchantInfo().MerchantName; Log.TypePath = MerchantInfo().TypePath; } else if (MerchantUser() != null) { Log.HandlerUser = MerchantUser().MerchantName; Log.TypePath = MerchantUser().TypePath; } else if (CookInfo() != null) { Log.HandlerUser = CookInfo().TrueName + "(厨师)"; Log.TypePath = CookInfo().TypePath; } Log.HandlerType = "删除内容"; Log.HandlerTime = DateTime.Now; Log.Id = Guid.NewGuid(); Log.HandlerContent = $"[{Log.HandlerUser}]对[{FunctionName}]中的[{ThemeName}]进行了[{Log.HandlerType}]操作,操作时间[{Log.HandlerTime.Value.ToShortDateString()}]"; Kily.Add(Log); Kily.SaveChanges(); } RemovePath(t); Kily.Set <TEntity>().Remove(t); }); this.SaveChages(); return(true); } catch (Exception ex) { throw ex; } }
/// <summary> /// 生成日志信息 /// </summary> /// <param name="user"></param> /// <param name="logInfo"></param> /// <returns></returns> private SystemLogInfo CreateLogInfo(string user, string logInfo) { SystemLogInfo log = new SystemLogInfo() { User = user, LogTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), IP = Request.HttpContext.Connection.RemoteIpAddress.ToString(), LogInfo = logInfo }; return(log); }
public bool Delete(SystemLogInfo model) { Database db = DBHelper.CreateDataBase(); StringBuilder sb = new StringBuilder(); sb.Append("delete from SystemLog"); sb.Append(" where Id=@Id"); DbCommand dbCommand = db.GetSqlStringCommand(sb.ToString()); db.AddInParameter(dbCommand, "@Id", DbType.Int32, model.Id); return(db.ExecuteNonQuery(dbCommand) < 1 ? false : true); }
/// <summary> /// 服务器内部错误 500错误 /// </summary> /// <returns></returns> public ViewResult ServerError() { SystemLogInfo systemLogInfo = GetUserSystemInfo(); systemLogInfo.LogLevel = (Int32)LogLevel.LOG_LEVEL_ERR; systemLogInfo.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo.Remark = string.Format("500错误 出错的URL地址为: {0}", Request.Url); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo); return(View()); }
/// <summary> /// 添加系统日志信息 /// </summary> public int InsertSystemLogInfo(SystemLogInfo sysLog) { DynamicParameters param = new DynamicParameters(); param.Add("@Happen_Time", sysLog.Happen_Time); param.Add("@Terminal_ID", sysLog.Terminal_ID); param.Add("@Well_State", sysLog.Well_State); param.Add("@Electricity", sysLog.Electricity); param.Add("@Temperature", sysLog.Temperature); param.Add("@Humidity", sysLog.Humidity); param.Add("@Smoke_Detector", sysLog.Smoke_Detector); param.Add("@Smoke_Power", sysLog.Smoke_Power); param.Add("@Signal_Strength", sysLog.Signal_Strength); using (Conn) { return(Conn.Execute(INSERT_SystemLog, param)); } }
protected SystemLogInfo GetUserSystemInfo() { UserInfo currentUser = Session["UserInfo"] as UserInfo; SystemLogInfo systemLogInfo = new SystemLogInfo(); if (currentUser != null) { systemLogInfo.Name = currentUser.LoginName; } else { systemLogInfo.Name = "非登陆客户"; } systemLogInfo.IP = GetClientIp(); systemLogInfo.Mac = Request.ServerVariables["HTTP_USER_AGENT"]; systemLogInfo.CreatorTime = DateTimeHelper.GetServerDateTime2(); systemLogInfo.SystemtypeId = systemtypeId; systemLogInfo.SessionId = Session.SessionID; return(systemLogInfo); }
public SystemLogInfo Get(int Id) { Database db = DBHelper.CreateDataBase(); StringBuilder sb = new StringBuilder(); sb.Append("select * from SystemLog where Id=@Id"); DbCommand dbCommand = db.GetSqlStringCommand(sb.ToString()); db.AddInParameter(dbCommand, "@Id", DbType.Int32, Id); SystemLogInfo model = null; using (IDataReader dataReader = db.ExecuteReader(dbCommand)) { if (dataReader.Read()) { model = FillList(dataReader); } } return(model); }
public ActionResult AjaxCalDateByDiffDay(string date, Int32 days) { if (!ValidateUtil.IsDate(date)) { return(ToJsonContent(new ReturnResult() { ErrorCode = 000009, ErrorMessage = dicErrInfo["E000009"].ChineseName, LogLevel = dicErrInfo["E000009"].LogLevel })); } DateTime resultDT = DateTime.Parse(date).AddDays(days); SystemLogInfo systemLogInfo = GetUserSystemInfo(); systemLogInfo.LogLevel = (Int32)LogLevel.LOG_LEVEL_INFO; systemLogInfo.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo.Remark = string.Format("计算几天后的日期 日期:{0} 相差{1} 结果为:{2}", date, days, resultDT.ToString("yyyy月MM年dd日 dddd", new System.Globalization.CultureInfo("zh-CN"))); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo); //使用Json.NET的序列号类,能够更加高效、完美 return(ToJsonContent(new ReturnResult() { ErrorCode = 0, ErrorMessage = resultDT.ToString("yyyy月MM年dd日 dddd", new System.Globalization.CultureInfo("zh-CN")), LogLevel = (short)LogLevel.LOG_LEVEL_INFO })); }
public bool Update(SystemLogInfo model) { Database db = DBHelper.CreateDataBase(); StringBuilder sb = new StringBuilder(); sb.Append("update SystemLog set "); sb.Append("MethodName=@MethodName,MethodSignature=@MethodSignature,TypeName=@TypeName,CallContext=@CallContext,SystemName=@SystemName,UseTime=@UseTime,Args=@Args,CreateDate=@CreateDate,CreateIP=@CreateIP,ReturnValue=@ReturnValue,LogType=@LogType"); sb.Append(" where Id=@Id"); DbCommand dbCommand = db.GetSqlStringCommand(sb.ToString()); db.AddInParameter(dbCommand, "@Id", DbType.Int32, model.Id); db.AddInParameter(dbCommand, "@MethodName", DbType.String, model.MethodName); db.AddInParameter(dbCommand, "@MethodSignature", DbType.String, model.MethodSignature); db.AddInParameter(dbCommand, "@TypeName", DbType.String, model.TypeName); db.AddInParameter(dbCommand, "@CallContext", DbType.String, model.CallContext); db.AddInParameter(dbCommand, "@SystemName", DbType.String, model.SystemName); db.AddInParameter(dbCommand, "@UseTime", DbType.Int32, model.UseTime); db.AddInParameter(dbCommand, "@Args", DbType.String, model.Args); db.AddInParameter(dbCommand, "@CreateDate", DbType.DateTime, model.CreateDate); db.AddInParameter(dbCommand, "@CreateIP", DbType.String, model.CreateIP); db.AddInParameter(dbCommand, "@ReturnValue", DbType.String, model.ReturnValue); db.AddInParameter(dbCommand, "@LogType", DbType.Int32, model.LogType); return(db.ExecuteNonQuery(dbCommand) < 1 ? false : true); }
public bool Update(SystemLogInfo model) { return(dal.Update(model)); }
public ActionResult AjaxCalCodeConvert(InputClass model) { if (string.IsNullOrEmpty(model.DataType)) { return(ToJsonContent(new ReturnResult() { ErrorCode = 100004, ErrorMessage = dicErrInfo["E100004"].ChineseName, LogLevel = dicErrInfo["E100004"].LogLevel })); } if (string.IsNullOrEmpty(model.InputParam)) { return(ToJsonContent(new ReturnResult() { ErrorCode = 100005, ErrorMessage = dicErrInfo["E100005"].ChineseName, LogLevel = dicErrInfo["E100005"].LogLevel })); } StringBuilder sb = new StringBuilder(); switch (model.DataType) { case "ASCIIToUnicode": #region ASCIIToUnicode for (int i = 0; i < model.InputParam.Length; i++) { sb.Append("&#" + ((int)model.InputParam[i]).ToString() + ";"); } #endregion break; case "UnicodeToASCII": #region UnicodeToASCII try { if (model.InputParam.Contains("&#")) { sb.Append(System.Text.RegularExpressions.Regex.Replace( model.InputParam, @"&#(?<Value>[a-zA-Z0-9]{5});", m => { return(((char)int.Parse(m.Groups["Value"].Value)).ToString()); })); } else { string[] stringArray = model.InputParam.Split(' '); if (stringArray.Length == 1) { sb.Append(model.InputParam); } else { for (int i = 0; i < stringArray.Length - 1; i++) { int n; if (int.TryParse(stringArray[i], out n)) { sb.Append((char)int.Parse(stringArray[i])); } else { sb.Append(stringArray[i]); } } } } } catch (Exception ex) { // 系统日志 SystemLogInfo systemLogInfo1 = GetUserSystemInfo(); systemLogInfo1.LogLevel = dicErrInfo["E000031"].LogLevel; systemLogInfo1.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo1.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo1.Remark = string.Format("Source:{0}, StackTrace:{1}, TargetSite:{2}, Message:{3}", ex.Source, ex.StackTrace, ex.TargetSite, ex.Message); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo1); return(ToJsonContent(new ReturnResult() { ErrorCode = 000031, ErrorMessage = dicErrInfo["E000031"].ChineseName, LogLevel = dicErrInfo["E000031"].LogLevel })); } #endregion break; case "UnicodeToChinese": #region UnicodeToChinese System.Text.RegularExpressions.MatchCollection mc = System.Text.RegularExpressions.Regex.Matches(model.InputParam, "\\\\u([\\w]{4})"); if (mc.Count == 0) { sb.Append(model.InputParam); } else { string a = model.InputParam.Replace("\\u", ""); char[] arr = new char[mc.Count]; for (int i = 0; i < arr.Length; i++) { arr[i] = (char)Convert.ToInt32(a.Substring(i * 4, 4), 16); } sb.Append(new string(arr)); } #endregion break; case "ChineseToUnicode": #region ChineseToUnicode if (!string.IsNullOrEmpty(model.InputParam)) { for (int i = 0; i < model.InputParam.Length; i++) { //將中文轉為10進制整數,然後轉為16進制unicode sb.Append("\\u" + ((int)model.InputParam[i]).ToString("x")); } } #endregion break; case "ChineseToUTF8": case "URLEncodeByutf-8": #region ChineseToUTF8、URLEncodeByutf-8 sb.Append(HttpUtility.UrlEncode(model.InputParam, Encoding.UTF8)); #endregion break; case "UTF8ToChinese": case "URLDecodeByutf-8": #region UTF8ToChinese、URLDecodeByutf-8 sb.Append(HttpUtility.UrlDecode(model.InputParam, Encoding.UTF8)); #endregion break; case "URLEncodeBygb2312": #region URLEncodeBygb2312 sb.Append(HttpUtility.UrlEncode(model.InputParam, System.Text.Encoding.GetEncoding(936))); #endregion break; case "URLDecodeBygb2312": #region URLDecodeBygb2312 sb.Append(HttpUtility.UrlDecode(model.InputParam, System.Text.Encoding.GetEncoding(936))); #endregion break; case "TimestampToString秒": #region TimestampToString秒 // 时间戳是从 1970/1/1 8:00 开始 Int64 minTime = DateTimeHelper.GetMinDateTime().Ticks / 10000000 - 62135625600 + 28800; Int64 maxTime = DateTimeHelper.GetMaxDateTime().Ticks / 10000000 - 62135625600; // 判断输入参数是不是在这个范围内 if (Convert.ToInt64(model.InputParam) < minTime || Convert.ToInt64(model.InputParam) > maxTime) { return(ToJsonContent(new ReturnResult() { ErrorCode = 000032, ErrorMessage = dicErrInfo["E000032"].ChineseName, LogLevel = dicErrInfo["E000032"].LogLevel })); } DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); sb.Append(startTime.AddSeconds(double.Parse(model.InputParam))); /*if (model.InputParam.Length == 10) //精确到秒 * { * * }*/ /*else if (model.InputParam.Length == 13) //精确到毫秒 * { * sb.Append(startTime.AddMilliseconds(double.Parse(model.InputParam))); * }*/ #endregion break; case "TimestampToString毫秒": #region TimestampToString毫秒 // 时间戳是从 1970/1/1 8:00 开始 Int64 minTime2 = DateTimeHelper.GetMinDateTime().Ticks / 10000000 - 62135625600 + 28800; Int64 maxTime2 = DateTimeHelper.GetMaxDateTime().Ticks / 10000000 - 62135625600; // 判断输入参数是不是在这个范围内 if (Convert.ToInt64(model.InputParam) < minTime2 || Convert.ToInt64(model.InputParam) > maxTime2) { return(ToJsonContent(new ReturnResult() { ErrorCode = 000032, ErrorMessage = dicErrInfo["E000032"].ChineseName, LogLevel = dicErrInfo["E000032"].LogLevel })); } DateTime startTime2 = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); /*if (model.InputParam.Length == 10) //精确到秒 * { * sb.Append(startTime.AddSeconds(double.Parse(model.InputParam))); * } * else if (model.InputParam.Length == 13) //精确到毫秒 * { * sb.Append(startTime2.AddMilliseconds(double.Parse(model.InputParam))); * }*/ sb.Append(startTime2.AddMilliseconds(double.Parse(model.InputParam))); #endregion break; case "DateToTimestamp秒": #region DateToTimestamp秒 sb.Append((ConvertHelper.ToDateTime(model.InputParam, DateTime.Now) - TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1))).TotalSeconds); #endregion break; case "DateToTimestamp毫秒": #region DateToTimestamp毫秒 sb.Append((ConvertHelper.ToDateTime(model.InputParam, DateTime.Now) - TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1))).TotalMilliseconds); #endregion break; case "AsciiToNativeBy不转换字母和数字": #region AsciiToNativeBy不转换字母和数字 int code; char[] chars = model.InputParam.ToCharArray(); for (int i = 0; i < chars.Length; i++) { char c = chars[i]; if (c > 255) { sb.Append("\\u"); code = (c >> 8); string tmp = code.ToString("X"); if (tmp.Length == 1) { sb.Append("0"); } sb.Append(tmp); code = (c & 0xFF); tmp = code.ToString("X"); if (tmp.Length == 1) { sb.Append("0"); } sb.Append(tmp); } else { sb.Append(c); } } #endregion break; case "AsciiToNativeBy转换字母和数字": #region AsciiToNativeBy转换字母和数字 int code2; char[] chars2 = model.InputParam.ToCharArray(); for (int i = 0; i < chars2.Length; i++) { char c = chars2[i]; sb.Append("\\u"); code2 = (c >> 8); string tmp = code2.ToString("X"); if (tmp.Length == 1) { sb.Append("0"); } sb.Append(tmp); code2 = (c & 0xFF); tmp = code2.ToString("X"); if (tmp.Length == 1) { sb.Append("0"); } sb.Append(tmp); } #endregion break; case "NativeToAsciiBy不转换字母和数字": #region NativeToAsciiBy不转换字母和数字 if (!string.IsNullOrEmpty(model.InputParam)) { string[] strlist = model.InputParam.Replace("\\", "").Split('u'); try { for (int i = 1; i < strlist.Length; i++) { //将unicode字符转为10进制整数,然后转为char中文字符 // 如果出现大于4 则判断一下最后 if (strlist[i].Length > 4) { sb.Append((char)int.Parse(strlist[i].Substring(0, 4), System.Globalization.NumberStyles.HexNumber)); sb.Append(strlist[i].Substring(4, strlist[i].Length - 4)); } else { sb.Append((char)int.Parse(strlist[i], System.Globalization.NumberStyles.HexNumber)); } } } catch (FormatException ex) { // 系统日志 SystemLogInfo systemLogInfo1 = GetUserSystemInfo(); systemLogInfo1.LogLevel = dicErrInfo["E000031"].LogLevel; systemLogInfo1.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo1.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo1.Remark = string.Format("Source:{0}, StackTrace:{1}, TargetSite:{2}, Message:{3}", ex.Source, ex.StackTrace, ex.TargetSite, ex.Message); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo1); return(ToJsonContent(new ReturnResult() { ErrorCode = 000031, ErrorMessage = dicErrInfo["E000031"].ChineseName, LogLevel = dicErrInfo["E000031"].LogLevel })); } } #endregion break; case "NativeToAsciiBy转换字母和数字": #region NativeToAsciiBy转换字母和数字 if (!string.IsNullOrEmpty(model.InputParam)) { string[] strlist = model.InputParam.Replace("\\", "").Split('u'); try { for (int i = 1; i < strlist.Length; i++) { //将unicode字符转为10进制整数,然后转为char中文字符 sb.Append((char)int.Parse(strlist[i], System.Globalization.NumberStyles.HexNumber)); } } catch (FormatException ex) { // 系统日志 SystemLogInfo systemLogInfo1 = GetUserSystemInfo(); systemLogInfo1.LogLevel = dicErrInfo["E000031"].LogLevel; systemLogInfo1.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo1.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo1.Remark = string.Format("Source:{0}, StackTrace:{1}, TargetSite:{2}, Message:{3}", ex.Source, ex.StackTrace, ex.TargetSite, ex.Message); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo1); return(ToJsonContent(new ReturnResult() { ErrorCode = 000031, ErrorMessage = dicErrInfo["E000031"].ChineseName, LogLevel = dicErrInfo["E000031"].LogLevel })); } } #endregion break; case "HexEncodeByutf-8": // https://www.cnblogs.com/wxbug/p/6991445.html #region HexEncodeByutf-8 byte[] bytes = Encoding.UTF8.GetBytes(model.InputParam); for (int i = 0; i < bytes.Length; i++) { sb.Append(string.Format("%{0:X}", bytes[i])); } #endregion break; case "HexDecodeByutf-8": #region HexDecodeByutf-8 model.InputParam = model.InputParam.Replace(",", ""); model.InputParam = model.InputParam.Replace("\n", ""); model.InputParam = model.InputParam.Replace("\\", ""); model.InputParam = model.InputParam.Replace(" ", ""); model.InputParam = model.InputParam.Replace("%", ""); // 需要将 hex 转换成 byte 数组。 byte[] bytes3 = new byte[model.InputParam.Length / 2]; for (int i = 0; i < bytes3.Length; i++) { try { // 每两个字符是一个 byte。 bytes3[i] = byte.Parse(model.InputParam.Substring(i * 2, 2), System.Globalization.NumberStyles.HexNumber); } catch (Exception ex) { // 系统日志 SystemLogInfo systemLogInfo1 = GetUserSystemInfo(); systemLogInfo1.LogLevel = dicErrInfo["E000031"].LogLevel; systemLogInfo1.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo1.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo1.Remark = string.Format("Source:{0}, StackTrace:{1}, TargetSite:{2}, Message:{3}", ex.Source, ex.StackTrace, ex.TargetSite, ex.Message); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo1); return(ToJsonContent(new ReturnResult() { ErrorCode = 000031, ErrorMessage = dicErrInfo["E000031"].ChineseName, LogLevel = dicErrInfo["E000031"].LogLevel })); } } sb.Append(Encoding.UTF8.GetString(bytes3)); #endregion break; case "HexEncodeBygb2312": #region HexEncodeBygb2312 byte[] bytes2 = Encoding.GetEncoding("GB2312").GetBytes(model.InputParam); for (int i = 0; i < bytes2.Length; i++) { sb.Append(string.Format("%{0:X}", bytes2[i])); } #endregion break; case "HexDecodeBygb2312": #region URLDecodeBygb2312 model.InputParam = model.InputParam.Replace(",", ""); model.InputParam = model.InputParam.Replace("\n", ""); model.InputParam = model.InputParam.Replace("\\", ""); model.InputParam = model.InputParam.Replace(" ", ""); model.InputParam = model.InputParam.Replace("%", ""); // 需要将 hex 转换成 byte 数组。 byte[] bytes4 = new byte[model.InputParam.Length / 2]; for (int i = 0; i < bytes4.Length; i++) { try { // 每两个字符是一个 byte。 bytes4[i] = byte.Parse(model.InputParam.Substring(i * 2, 2), System.Globalization.NumberStyles.HexNumber); } catch (Exception ex) { // 系统日志 SystemLogInfo systemLogInfo1 = GetUserSystemInfo(); systemLogInfo1.LogLevel = dicErrInfo["E000031"].LogLevel; systemLogInfo1.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo1.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo1.Remark = string.Format("Source:{0}, StackTrace:{1}, TargetSite:{2}, Message:{3}", ex.Source, ex.StackTrace, ex.TargetSite, ex.Message); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo1); return(ToJsonContent(new ReturnResult() { ErrorCode = 000031, ErrorMessage = dicErrInfo["E000031"].ChineseName, LogLevel = dicErrInfo["E000031"].LogLevel })); } } sb.Append(Encoding.GetEncoding("GB2312").GetString(bytes4)); #endregion break; case "HtmlEncode": #region HtmlEncode sb.Append(HttpUtility.HtmlEncode(model.InputParam)); #endregion break; case "HtmlDecode": #region HtmlDecode sb.Append(HttpUtility.HtmlDecode(model.InputParam)); #endregion break; } if (sb.Length == 0) { sb.Append(model.InputParam); } // 系统日志 SystemLogInfo systemLogInfo = GetUserSystemInfo(); systemLogInfo.LogLevel = (Int32)LogLevel.LOG_LEVEL_INFO; systemLogInfo.ModuleInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["controller"].ToString(); systemLogInfo.OperationInfo = ControllerContext.Controller.ControllerContext.RouteData.Values["action"].ToString(); systemLogInfo.Remark = string.Format("格式转化 数据类型:{0} 输入参数{1} 输入时间戳{2} 结果为:{3}", model.DataType, model.InputParam, model.TimeStamp, sb.ToString()); BLLFactory <SystemLog> .Instance.AddSystemLog(systemLogInfo); return(ToJsonContent(new ReturnResult() { ErrorCode = 0, ErrorMessage = sb.ToString(), LogLevel = (short)LogLevel.LOG_LEVEL_INFO })); }
private SystemLogInfo FillList(IDataReader dataReader) { SystemLogInfo model = new SystemLogInfo(); object ojb; ojb = dataReader["Id"]; if (ojb != null && ojb != DBNull.Value) { model.Id = ( int)(ojb); } ojb = dataReader["MethodName"]; if (ojb != null && ojb != DBNull.Value) { model.MethodName = ( string)(ojb); } ojb = dataReader["MethodSignature"]; if (ojb != null && ojb != DBNull.Value) { model.MethodSignature = ( string)(ojb); } ojb = dataReader["TypeName"]; if (ojb != null && ojb != DBNull.Value) { model.TypeName = ( string)(ojb); } ojb = dataReader["CallContext"]; if (ojb != null && ojb != DBNull.Value) { model.CallContext = ( string)(ojb); } ojb = dataReader["SystemName"]; if (ojb != null && ojb != DBNull.Value) { model.SystemName = ( string)(ojb); } ojb = dataReader["UseTime"]; if (ojb != null && ojb != DBNull.Value) { model.UseTime = ( int)(ojb); } ojb = dataReader["Args"]; if (ojb != null && ojb != DBNull.Value) { model.Args = ( string)(ojb); } ojb = dataReader["CreateDate"]; if (ojb != null && ojb != DBNull.Value) { model.CreateDate = ( DateTime)(ojb); } ojb = dataReader["CreateIP"]; if (ojb != null && ojb != DBNull.Value) { model.CreateIP = ( string)(ojb); } ojb = dataReader["ReturnValue"]; if (ojb != null && ojb != DBNull.Value) { model.ReturnValue = ( string)(ojb); } ojb = dataReader["LogType"]; if (ojb != null && ojb != DBNull.Value) { model.LogType = ( int)(ojb); } return(model); }
/// <summary> /// 软删除 /// </summary> /// <param name="exp"></param> /// <returns></returns> public virtual bool Delete <TEntity>(Expression <Func <TEntity, bool> > exp, string FieldName = null, object Data = null) where TEntity : class, new() { try { TEntity Entity = Kily.Set <TEntity>().Where(exp).FirstOrDefault(); Type EntityType = Entity.GetType(); if (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) != null) { string FunctionName = (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute).Description; string ThemeName = EntityType.GetProperties().Where(t => t.GetCustomAttribute(typeof(DescriptionAttribute)) != null).FirstOrDefault().GetValue(Entity).ToString(); SystemLogInfo Log = new SystemLogInfo(); if (CompanyInfo() != null) { Log.HandlerUser = CompanyInfo().CompanyName; Log.TypePath = CompanyInfo().TypePath; } else if (CompanyUser() != null) { Log.HandlerUser = CompanyUser().CompanyName; Log.TypePath = CompanyUser().TypePath; } else if (MerchantInfo() != null) { Log.HandlerUser = MerchantInfo().MerchantName; Log.TypePath = MerchantInfo().TypePath; } else if (MerchantUser() != null) { Log.HandlerUser = MerchantUser().MerchantName; Log.TypePath = MerchantUser().TypePath; } else if (CookInfo() != null) { Log.HandlerUser = CookInfo().TrueName + "(厨师)"; Log.TypePath = CookInfo().TypePath; } Log.HandlerType = "删除内容"; Log.HandlerTime = DateTime.Now; Log.Id = Guid.NewGuid(); Log.HandlerContent = $"[{Log.HandlerUser}]对[{FunctionName}]中的[{ThemeName}]进行了[{Log.HandlerType}]操作,操作时间[{Log.HandlerTime.Value.ToShortDateString()}]"; Kily.Add(Log); Kily.SaveChanges(); } RemovePath(Entity); List <PropertyInfo> props = EntityType.GetProperties().Where(t => t.Name.Contains("Delete")).ToList(); if (!string.IsNullOrEmpty(FieldName)) { Entity.GetType().GetProperties().Where(t => t.Name.Equals(FieldName)).FirstOrDefault().SetValue(Entity, Data); } props.Where(t => t.Name.Equals("IsDelete")).FirstOrDefault().SetValue(Entity, true); props.Where(t => t.Name.Equals("DeleteTime")).FirstOrDefault().SetValue(Entity, DateTime.Now); if (UserInfo() != null) { props.Where(t => t.Name.Equals("DeleteUser")).FirstOrDefault().SetValue(Entity, UserInfo().Id.ToString()); } else if (CompanyInfo() != null) { props.Where(t => t.Name.Equals("DeleteUser")).FirstOrDefault().SetValue(Entity, CompanyInfo().Id.ToString()); } else if (CompanyUser() != null) { props.Where(t => t.Name.Equals("DeleteUser")).FirstOrDefault().SetValue(Entity, CompanyUser().CompanyId.ToString()); } else if (MerchantInfo() != null) { props.Where(t => t.Name.Equals("DeleteUser")).FirstOrDefault().SetValue(Entity, MerchantInfo().Id.ToString()); } else if (MerchantUser() != null) { props.Where(t => t.Name.Equals("DeleteUser")).FirstOrDefault().SetValue(Entity, MerchantUser().InfoId.ToString()); } else if (CookInfo() != null) { props.Where(t => t.Name.Equals("DeleteUser")).FirstOrDefault().SetValue(Entity, CookInfo().Id.ToString()); } else if (GovtInfo() != null) { props.Where(t => t.Name.Equals("DeleteUser")).FirstOrDefault().SetValue(Entity, GovtInfo().Id.ToString()); } else { props.Where(t => t.Name.Equals("DeleteUser")).FirstOrDefault().SetValue(Entity, null); } Kily.Entry <TEntity>(Entity).State = EntityState.Modified; this.SaveChages(); return(true); } catch (Exception ex) { return(false); //throw ex; } }
/// <summary> ///更新指定单个字段或者多个字段 /// </summary> /// <typeparam name="TEntity">实体</typeparam> /// <param name="entity">实体</param> /// <param name="field">单个字段</param> /// <param name="fields">多个字段</param> /// <returns></returns> public virtual bool UpdateField <TEntity>(TEntity Entity, string Field, IList <string> Fields = null) where TEntity : class, new() { try { Type EntityType = Entity.GetType(); if (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) != null) { string FunctionName = (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute).Description; string ThemeName = EntityType.GetProperties().Where(t => t.GetCustomAttribute(typeof(DescriptionAttribute)) != null).FirstOrDefault().GetValue(Entity).ToString(); SystemLogInfo Log = new SystemLogInfo(); if (CompanyInfo() != null) { Log.HandlerUser = CompanyInfo().CompanyName; Log.TypePath = CompanyInfo().TypePath; } else if (CompanyUser() != null) { Log.HandlerUser = CompanyUser().CompanyName; Log.TypePath = CompanyUser().TypePath; } else if (MerchantInfo() != null) { Log.HandlerUser = MerchantInfo().MerchantName; Log.TypePath = MerchantInfo().TypePath; } else if (MerchantUser() != null) { Log.HandlerUser = MerchantUser().MerchantName; Log.TypePath = MerchantUser().TypePath; } else if (CookInfo() != null) { Log.HandlerUser = CookInfo().TrueName + "(厨师)"; Log.TypePath = CookInfo().TypePath; } Log.HandlerType = "修改内容"; Log.HandlerTime = DateTime.Now; Log.Id = Guid.NewGuid(); Log.HandlerContent = $"[{Log.HandlerUser}]对[{FunctionName}]中的[{ThemeName}]进行了[{Log.HandlerType}]操作,操作时间[{Log.HandlerTime.Value.ToShortDateString()}]"; Kily.Add(Log); Kily.SaveChanges(); } if (Fields != null && string.IsNullOrEmpty(Field)) { List <PropertyInfo> EntityProps = Entity.GetType().GetProperties().Where(t => t.Name.Contains("Update")).ToList(); EntityProps.Where(t => t.Name.Equals("UpdateTime")).FirstOrDefault().SetValue(Entity, DateTime.Now); if (UserInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, UserInfo().Id.ToString()); } else if (CompanyInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CompanyInfo().Id.ToString()); } else if (CompanyUser() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CompanyUser().CompanyId.ToString()); } else if (MerchantInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, MerchantInfo().Id.ToString()); } else if (MerchantUser() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, MerchantUser().InfoId.ToString()); } else if (CookInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CookInfo().Id.ToString()); } else if (GovtInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, GovtInfo().Id.ToString()); } else { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, null); } foreach (var Prop in EntityProps) { Kily.Entry <TEntity>(Entity).Property(Prop.Name).IsModified = true;//更新的时间和更新人 } foreach (var Prop in Fields) { Kily.Entry <TEntity>(Entity).Property(Prop).IsModified = true; } this.SaveChages(); return(true); } else { List <PropertyInfo> EntityProps = Entity.GetType().GetProperties().Where(t => t.Name.Contains("Update")).ToList(); EntityProps.Where(t => t.Name.Equals("UpdateTime")).FirstOrDefault().SetValue(Entity, DateTime.Now); if (UserInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, UserInfo().Id.ToString()); } else if (CompanyInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CompanyInfo().Id.ToString()); } else if (CompanyUser() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CompanyUser().CompanyId.ToString()); } else if (MerchantInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, MerchantInfo().Id.ToString()); } else if (MerchantUser() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, MerchantUser().InfoId.ToString()); } else if (CookInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CookInfo().Id.ToString()); } else if (GovtInfo() != null) { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, GovtInfo().Id.ToString()); } else { EntityProps.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, null); } foreach (var Prop in EntityProps) { Kily.Entry <TEntity>(Entity).Property(Prop.Name).IsModified = true;//更新的时间和更新人 } Kily.Entry <TEntity>(Entity).Property(Field).IsModified = true; this.SaveChages(); return(true); } } catch (Exception ex) { throw ex; } }
/// <summary> /// 更新实体 /// </summary> /// <typeparam name="TEntity">实体</typeparam> /// <typeparam name="DEntity">数据传输对象</typeparam> /// <param name="Entity"></param> /// <param name="dto"></param> /// <param name="UseUpdate">是否使用忽略更新特性</param> /// <returns></returns> public virtual bool Update <TEntity, DEntity>(TEntity Entity, DEntity dto, bool UseUpdate = false) where TEntity : class, new() where DEntity : class, new() { try { Type EntityType = Entity.GetType(); if (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) != null) { string FunctionName = (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute).Description; string ThemeName = EntityType.GetProperties().Where(t => t.GetCustomAttribute(typeof(DescriptionAttribute)) != null).FirstOrDefault().GetValue(Entity).ToString(); SystemLogInfo Log = new SystemLogInfo(); if (CompanyInfo() != null) { Log.HandlerUser = CompanyInfo().CompanyName; Log.TypePath = CompanyInfo().TypePath; } else if (CompanyUser() != null) { Log.HandlerUser = CompanyUser().CompanyName; Log.TypePath = CompanyUser().TypePath; } else if (MerchantInfo() != null) { Log.HandlerUser = MerchantInfo().MerchantName; Log.TypePath = MerchantInfo().TypePath; } else if (MerchantUser() != null) { Log.HandlerUser = MerchantUser().MerchantName; Log.TypePath = MerchantUser().TypePath; } else if (CookInfo() != null) { Log.HandlerUser = CookInfo().TrueName + "(厨师)"; Log.TypePath = CookInfo().TypePath; } Log.HandlerType = "修改内容"; Log.HandlerTime = DateTime.Now; Log.Id = Guid.NewGuid(); Log.HandlerContent = $"[{Log.HandlerUser}]对[{FunctionName}]中的[{ThemeName}]进行了[{Log.HandlerType}]操作,操作时间[{Log.HandlerTime.Value.ToShortDateString()}]"; Kily.Add(Log); Kily.SaveChanges(); } List <PropertyInfo> DtoProps = dto.GetType().GetProperties().ToList(); List <PropertyInfo> EntityProps = Entity.GetType().GetProperties().ToList(); List <PropertyInfo> EntityProp = EntityProps.Where(t => t.Name.Contains("Update")).ToList(); EntityProp.Where(t => t.Name.Equals("UpdateTime")).FirstOrDefault().SetValue(Entity, DateTime.Now); if (UserInfo() != null) { EntityProp.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, UserInfo().Id.ToString()); } else if (CompanyInfo() != null) { EntityProp.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CompanyInfo().Id.ToString()); } else if (CompanyUser() != null) { EntityProp.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CompanyUser().CompanyId.ToString()); } else if (MerchantInfo() != null) { EntityProp.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, MerchantInfo().Id.ToString()); } else if (MerchantUser() != null) { EntityProp.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, MerchantUser().InfoId.ToString()); } else if (CookInfo() != null) { EntityProp.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, CookInfo().Id.ToString()); } else if (GovtInfo() != null) { EntityProp.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, GovtInfo().Id.ToString()); } else { EntityProp.Where(t => t.Name.Equals("UpdateUser")).FirstOrDefault().SetValue(Entity, null); } foreach (var Prop in EntityProp) { Kily.Entry <TEntity>(Entity).Property(Prop.Name).IsModified = true;//更新的时间和更新人 } foreach (var Prop in DtoProps) { if (!Prop.Name.ToUpper().Equals("Id".ToUpper()))//Id不更新 { //判断实体中是否存在DTO中的字段 if (EntityProps.Select(t => t.Name.ToUpper()).Contains(Prop.Name.ToUpper())) { if (UseUpdate) { if (Prop.CustomAttributes.Any(t => t.AttributeType != typeof(NoneUpdateAttribute))) { //需要更新的字段 Kily.Entry <TEntity>(Entity).Property(Prop.Name).IsModified = true; } } else { Kily.Entry <TEntity>(Entity).Property(Prop.Name).IsModified = true; } } } } this.SaveChages(); return(true); } catch (Exception ex) { throw ex; } }
/// <summary> /// 新增 /// </summary> /// <param name="entity"></param> /// <returns></returns> public virtual bool Insert <TEntity>(TEntity Entity, bool PrimaryKey = true) where TEntity : class, new() { try { Type EntityType = Entity.GetType(); if (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) != null) { string FunctionName = (EntityType.GetCustomAttribute(typeof(DescriptionAttribute)) as DescriptionAttribute).Description; string ThemeName = EntityType.GetProperties().Where(t => t.GetCustomAttribute(typeof(DescriptionAttribute)) != null).FirstOrDefault().GetValue(Entity).ToString(); SystemLogInfo Log = new SystemLogInfo(); if (CompanyInfo() != null) { Log.HandlerUser = CompanyInfo().CompanyName; Log.TypePath = CompanyInfo().TypePath; } else if (CompanyUser() != null) { Log.HandlerUser = CompanyUser().CompanyName; Log.TypePath = CompanyUser().TypePath; } else if (MerchantInfo() != null) { Log.HandlerUser = MerchantInfo().MerchantName; Log.TypePath = MerchantInfo().TypePath; } else if (MerchantUser() != null) { Log.HandlerUser = MerchantUser().MerchantName; Log.TypePath = MerchantUser().TypePath; } else if (CookInfo() != null) { Log.HandlerUser = CookInfo().TrueName + "(厨师)"; Log.TypePath = CookInfo().TypePath; } Log.HandlerType = "添加内容"; Log.HandlerTime = DateTime.Now; Log.Id = Guid.NewGuid(); Log.HandlerContent = $"[{Log.HandlerUser}]对[{FunctionName}]中的([{ThemeName}])进行了[{Log.HandlerType}]操作,操作时间[{Log.HandlerTime.Value.ToShortDateString()}]"; Kily.Add(Log); Kily.SaveChanges(); } List <PropertyInfo> props = EntityType.GetProperties().Where(t => t.Name.Contains("Create")).ToList(); Entity.GetType().GetProperty("IsDelete").SetValue(Entity, false); if (PrimaryKey) { Entity.GetType().GetProperty("Id").SetValue(Entity, Guid.NewGuid()); } props.Where(t => t.Name.Equals("CreateTime")).FirstOrDefault().SetValue(Entity, DateTime.Now); if (UserInfo() != null) { props.Where(t => t.Name.Equals("CreateUser")).FirstOrDefault().SetValue(Entity, UserInfo().Id.ToString()); } else if (CompanyInfo() != null) { props.Where(t => t.Name.Equals("CreateUser")).FirstOrDefault().SetValue(Entity, CompanyInfo().Id.ToString()); } else if (CompanyUser() != null) { props.Where(t => t.Name.Equals("CreateUser")).FirstOrDefault().SetValue(Entity, CompanyUser().CompanyId.ToString()); } else if (MerchantInfo() != null) { props.Where(t => t.Name.Equals("CreateUser")).FirstOrDefault().SetValue(Entity, MerchantInfo().Id.ToString()); } else if (MerchantUser() != null) { props.Where(t => t.Name.Equals("CreateUser")).FirstOrDefault().SetValue(Entity, MerchantUser().InfoId.ToString()); } else if (CookInfo() != null) { props.Where(t => t.Name.Equals("CreateUser")).FirstOrDefault().SetValue(Entity, CookInfo().Id.ToString()); } else if (GovtInfo() != null) { props.Where(t => t.Name.Equals("CreateUser")).FirstOrDefault().SetValue(Entity, GovtInfo().Id.ToString()); } else { props.Where(t => t.Name.Equals("CreateUser")).FirstOrDefault().SetValue(Entity, null); } Kily.Entry <TEntity>(Entity).State = EntityState.Added; this.SaveChages(); return(true); } catch (Exception ex) { throw ex; } }
public int Create(SystemLogInfo model) { int id = dal.Create(model); return(id); }
public bool Delete(SystemLogInfo model) { return(dal.Delete(model)); }
/// <summary> /// 添加系统日志信息 /// </summary> /// <param name="UserLog">日志信息</param> /// <returns></returns> public int InsertSystemLogInfo(SystemLogInfo sysLog) { return(syslogdal.InsertSystemLogInfo(sysLog)); }