OperateLogHelper.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Threading.Tasks;
  5. using TEAMModelOS.SDK.DI;
  6. using TEAMModelOS.SDK.Models.Table;
  7. namespace TEAMModelOS.SDK.Helper.Common.TableHelper
  8. {
  9. public class OperateLogHelper
  10. {
  11. /// <summary>
  12. /// 保存操作日志
  13. /// </summary>
  14. /// <param name="_azureStorage"></param>
  15. /// <param name="platform">日志平台:BI 、 IES5</param>
  16. /// <param name="tmdId">醍摩豆ID</param>
  17. /// <param name="tmdName">醍摩豆名称</param>
  18. /// <param name="msg">操作描述</param>
  19. /// <param name="type">日志类型: school-update school-del 名词-动词组合方式</param>
  20. /// <param name="visitApi">访问接口</param>
  21. /// <param name="funModel">模块名称 存中文</param>
  22. /// <param name="scope">使用范围 private school</param>
  23. /// <param name="owner">数据归属 学校编码或者醍摩豆id</param>
  24. /// <param name="leve">日志等级,1普通 2重要 3非常重要</param>
  25. /// <returns></returns>
  26. public static async Task SaveTableLog(AzureStorageFactory _azureStorage, string platform, string tmdId, string tmdName, string msg, string type, string visitApi,string funModel = null, string scope = null, string owner = null, int leve = 1)
  27. {
  28. OperateLog operateLog = new OperateLog();
  29. operateLog.PartitionKey = $"Log-{platform}";
  30. operateLog.RowKey = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds().ToString();
  31. operateLog.platform = platform;
  32. operateLog.tmdId = tmdId;
  33. operateLog.tmdName = tmdName;
  34. operateLog.msg = msg;
  35. operateLog.type = type;
  36. operateLog.visitApi = visitApi;
  37. operateLog.funModule = $"{funModel}";
  38. operateLog.scope = $"{scope}";
  39. operateLog.owner = $"{owner}";
  40. operateLog.leve = leve;
  41. await _azureStorage.Save<OperateLog>(operateLog);
  42. }
  43. }
  44. }