SqlDiffLogService.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. using Infrastructure.Attribute;
  2. using ZR.Model;
  3. using ZR.Model.System;
  4. using ZR.Model.System.Dto;
  5. using ZR.Repository;
  6. namespace ZR.ServiceCore.Services
  7. {
  8. /// <summary>
  9. /// 数据差异日志Service业务层处理
  10. /// </summary>
  11. [AppService(ServiceType = typeof(ISqlDiffLogService), ServiceLifetime = LifeTime.Transient)]
  12. public class SqlDiffLogService : BaseService<SqlDiffLog>, ISqlDiffLogService
  13. {
  14. /// <summary>
  15. /// 查询数据差异日志列表
  16. /// </summary>
  17. /// <param name="parm"></param>
  18. /// <returns></returns>
  19. public PagedInfo<SqlDiffLogDto> GetList(SqlDiffLogQueryDto parm)
  20. {
  21. var predicate = Expressionable.Create<SqlDiffLog>();
  22. predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.TableName), it => it.TableName == parm.TableName);
  23. predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.DiffType), it => it.DiffType == parm.DiffType);
  24. predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.UserName), it => it.UserName == parm.UserName);
  25. predicate = predicate.AndIF(parm.BeginAddTime == null, it => it.AddTime >= DateTime.Now.ToShortDateString().ParseToDateTime());
  26. predicate = predicate.AndIF(parm.BeginAddTime != null, it => it.AddTime >= parm.BeginAddTime);
  27. predicate = predicate.AndIF(parm.EndAddTime != null, it => it.AddTime <= parm.EndAddTime);
  28. var response = Queryable()
  29. //.OrderBy("PId desc")
  30. .Where(predicate.ToExpression())
  31. .ToPage<SqlDiffLog, SqlDiffLogDto>(parm);
  32. return response;
  33. }
  34. /// <summary>
  35. /// 获取详情
  36. /// </summary>
  37. /// <param name="PId"></param>
  38. /// <returns></returns>
  39. public SqlDiffLog GetInfo(long PId)
  40. {
  41. var response = Queryable()
  42. .Where(x => x.PId == PId)
  43. .First();
  44. return response;
  45. }
  46. /// <summary>
  47. /// 添加数据差异日志
  48. /// </summary>
  49. /// <param name="model"></param>
  50. /// <returns></returns>
  51. public SqlDiffLog AddSqlDiffLog(SqlDiffLog model)
  52. {
  53. return Context.Insertable(model).ExecuteReturnEntity();
  54. }
  55. /// <summary>
  56. /// 修改数据差异日志
  57. /// </summary>
  58. /// <param name="model"></param>
  59. /// <returns></returns>
  60. public int UpdateSqlDiffLog(SqlDiffLog model)
  61. {
  62. //var response = Update(w => w.PId == model.PId, it => new SqlDiffLog()
  63. //{
  64. // TableName = model.TableName,
  65. // BusinessData = model.BusinessData,
  66. // DiffType = model.DiffType,
  67. // Sql = model.Sql,
  68. // BeforeData = model.BeforeData,
  69. // AfterData = model.AfterData,
  70. // UserName = model.UserName,
  71. // AddTime = model.AddTime,
  72. // ConfigId = model.ConfigId,
  73. //});
  74. //return response;
  75. return Update(model, true);
  76. }
  77. }
  78. }