TransactionAnalysis.php 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace App\Http\Requests\ReportStatistics\Backend;
  3. use App\Http\Requests\BaseRequest;
  4. /**
  5. * 交易分析
  6. * @author 唐远望
  7. * @version 1.0
  8. * @date 2025-07-29
  9. *
  10. */
  11. class TransactionAnalysis extends BaseRequest
  12. {
  13. /**
  14. * 获取应用于请求的规则
  15. *
  16. * @return array
  17. */
  18. public function rules()
  19. {
  20. // 返回结果
  21. return [
  22. 'name' => 'required',
  23. 'id' => 'required|integer|gt:0',
  24. 'status' => 'required|integer|in:0,1,2,3',
  25. 'page' => 'integer|min:1',
  26. 'limit' => 'integer|min:1',
  27. 'company_id' => 'required|integer|gt:0',
  28. 'user_id' => 'required|integer|gt:0',
  29. 'start_time' => 'date|before_or_equal:end_time',
  30. 'end_time' => 'date|after_or_equal:start_time',
  31. ];
  32. }
  33. // 场景列表
  34. protected $scenes = [
  35. 'detail' => [],
  36. 'list' => ['page', 'limit'],
  37. 'add' => ['company_id', 'user_id'],
  38. 'delete' => ['id'],
  39. 'edit' => [],
  40. 'getStatistics' =>['start_time','end_time'],
  41. 'getProductTrend' =>['start_time','end_time'],
  42. 'getTransactionOverview' =>['start_time','end_time'],
  43. 'getTransactionTrend' =>['start_time','end_time','select_ids'],
  44. 'getRegionDistribution' =>['start_time','end_time'],
  45. 'getTagAnalysis' =>['start_time','end_time'],
  46. 'exportTagAnalysis' =>['start_time','end_time'],
  47. ];
  48. /**
  49. * 获取已定义验证规则的错误消息
  50. *
  51. * @return array
  52. */
  53. public function messages()
  54. {
  55. return [
  56. 'name.required' => '名称必填',
  57. 'id.required' => 'ID未知',
  58. 'id.integer' => 'ID格式错误',
  59. 'id.gt' => 'ID格式错误',
  60. 'status.required' => '状态未知',
  61. 'status.integer' => '状态格式错误',
  62. 'status.in' => '状态格式错误',
  63. 'page.integer' => '页码格式错误',
  64. 'page.min' => '页码格式错误',
  65. 'limit.integer' => '每页数量格式错误',
  66. 'limit.min' => '每页数量格式错误',
  67. 'company_id.required' => '公司ID未知',
  68. 'company_id.integer' => '公司ID格式错误',
  69. 'company_id.gt' => '公司ID格式错误',
  70. 'user_id.required' => '用户ID未知',
  71. 'user_id.integer' => '用户ID格式错误',
  72. 'user_id.gt' => '用户ID格式错误',
  73. 'start_time.date' => '开始时间格式错误',
  74. 'start_time.before_or_equal' => '开始时间格式错误',
  75. 'end_time.date' => '结束时间格式错误',
  76. 'end_time.after_or_equal' => '结束时间格式错误',
  77. ];
  78. }
  79. }