HdTradeRecordService.cs 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. using Attribute;
  2. using Model;
  3. using Model.Base;
  4. using Repository;
  5. using Service;
  6. using Microsoft.AspNetCore.Mvc;
  7. using Vo.Admin;
  8. namespace Services
  9. {
  10. /// <summary>
  11. /// 好哒交易记录Service业务层处理
  12. /// </summary>
  13. [AppService(ServiceType = typeof(IHdTradeRecordService), ServiceLifetime = LifeTime.Transient)]
  14. public class HdTradeRecordService : BaseService<HdTradeRecord>, IHdTradeRecordService
  15. {
  16. /// <summary>
  17. /// 好哒交易记录-列表
  18. /// </summary>
  19. /// <param name="param">参数请求体</param>
  20. /// <param name="page">分页参数</param>
  21. /// <returns>列表</returns>
  22. public PagedInfo<GetHdTradeRecordListVo> getHdTradeRecordList([FromQuery] PagerInfo page, [FromQuery] HdTradeRecord param)
  23. {
  24. //拼装查询条件
  25. var predicate = Expressionable.Create<HdTradeRecord>();
  26. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.agentId), m => m.agentId.Contains(param.agentId));
  27. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.merchId), m => m.merchId.Contains(param.merchId));
  28. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.merchName), m => m.merchName.Contains(param.merchName));
  29. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.ordId), m => m.ordId.Contains(param.ordId));
  30. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.transAmt), m => m.transAmt.Contains(param.transAmt));
  31. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.feeAmt), m => m.feeAmt.Contains(param.feeAmt));
  32. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.simFee), m => m.simFee.Contains(param.simFee));
  33. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.s0Fee), m => m.s0Fee.Contains(param.s0Fee));
  34. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.feeRate), m => m.feeRate.Contains(param.feeRate));
  35. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.cardType), m => m.cardType.Contains(param.cardType));
  36. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.devId), m => m.devId.Contains(param.devId));
  37. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.transStat), m => m.transStat.Contains(param.transStat));
  38. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.transType), m => m.transType.Contains(param.transType));
  39. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.paymentMethod), m => m.paymentMethod.Contains(param.paymentMethod));
  40. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.settleType), m => m.settleType.Contains(param.settleType));
  41. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.transDate), m => m.transDate.Contains(param.transDate));
  42. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.transTime), m => m.transTime.Contains(param.transTime));
  43. predicate = predicate.AndIF(!string.IsNullOrEmpty(param.quickPassFlag), m => m.quickPassFlag.Contains(param.quickPassFlag));
  44. var response = Queryable()
  45. .Where(predicate.ToExpression())
  46. .SplitTable(DateTime.Now.AddMonths(-3), DateTime.Now)
  47. .OrderByDescending(m => m.id)
  48. .ToPage<HdTradeRecord, GetHdTradeRecordListVo>(page);
  49. return response;
  50. }
  51. /// <summary>
  52. /// 好哒交易记录-详情
  53. /// </summary>
  54. /// <param name="id">ID</param>
  55. /// <returns>详情</returns>
  56. public HdTradeRecord getHdTradeRecordQuery(long id)
  57. {
  58. //拼装查询条件
  59. var predicate = Expressionable.Create<HdTradeRecord>();
  60. predicate = predicate.AndIF(id > 0, m => m.id == id);
  61. var response = Queryable()
  62. .Where(predicate.ToExpression())
  63. .SplitTable(DateTime.Now.AddMonths(-3), DateTime.Now)
  64. .First();
  65. return response;
  66. }
  67. /// <summary>
  68. /// 好哒交易记录-添加
  69. /// </summary>
  70. /// <param name="param">参数请求体</param>
  71. /// <returns>添加</returns>
  72. public long addHdTradeRecord([FromBody] HdTradeRecord param)
  73. {
  74. return Insertable(param).SplitTable().ExecuteReturnSnowflakeId();
  75. }
  76. /// <summary>
  77. /// 好哒交易记录-修改
  78. /// </summary>
  79. /// <param name="param">参数请求体</param>
  80. /// <returns>修改</returns>
  81. public long updateHdTradeRecord([FromBody] HdTradeRecord param)
  82. {
  83. return Context.Updateable(param).SplitTable().ExecuteCommand();
  84. }
  85. /// <summary>
  86. /// 好哒交易记录-删除
  87. /// </summary>
  88. /// <param name="id">ID</param>
  89. /// <returns>删除</returns>
  90. public long deleteHdTradeRecord(long id)
  91. {
  92. return Context.Deleteable<HdTradeRecord>(id).SplitTable().ExecuteCommand();
  93. }
  94. }
  95. }