MyGoodsController.php 8.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. <?php
  2. namespace app\controller;
  3. use app\business\GoodsBusiness;
  4. use app\business\LoginBusiness;
  5. use Illuminate\Support\Arr;
  6. use Respect\Validation\Validator;
  7. use support\Db;
  8. use support\Redis;
  9. use support\Request;
  10. use hg\apidoc\annotation as Apidoc;
  11. use Webman\Captcha\CaptchaBuilder;
  12. use Webman\Captcha\PhraseBuilder;
  13. #[Apidoc\Title("投资记录")]
  14. #[Apidoc\Group("Goods")]
  15. #[Apidoc\Sort(3)]
  16. class MyGoodsController
  17. {
  18. #[Apidoc\Title("投资记录列表")]
  19. #[Apidoc\Url("api/user/mygoods.html")]
  20. #[Apidoc\Method("POST")]
  21. #[Apidoc\Header("token", type: "string", require: true, desc: "身份令牌Token", mock: "@token")]
  22. #[Apidoc\Param("page", type: "int", require: true, desc: "页面", mock: 1)]
  23. #[Apidoc\Param("limit", type: "int", require: true, desc: "输出条数", mock: 10)]
  24. #[Apidoc\Returned(name: "good_name", type: "string", require: true, desc: '商品名称', default: '')]
  25. #[Apidoc\Returned(name: "pay_price", type: "string", require: true, desc: '商品单价', default: '')]
  26. #[Apidoc\Returned(name: "money", type: "string", require: true, desc: '支付金额', default: '')]
  27. #[Apidoc\Returned(name: "bonus", type: "string", require: true, desc: '每天税后', default: '')]
  28. #[Apidoc\Returned(name: "balance", type: "string", require: true, desc: '股权数量', default: '')]
  29. #[Apidoc\Returned(name: "gift_money", type: "string", require: true, desc: '股权价值', default: '')]
  30. #[Apidoc\Returned(name: "daily_limit", type: "string", require: true, desc: '日限额', default: '')]
  31. #[Apidoc\Returned(name: "monthly_limit", type: "string", require: true, desc: '月限额', default: '')]
  32. #[Apidoc\Returned(name: "created_at", type: "string", require: true, desc: '购买时间', default: '')]
  33. #[Apidoc\Returned(name: "status", type: "string", require: true, desc: '状态 1正常 2失效 3终止', default: '')]
  34. public function index(Request $request)
  35. {
  36. $param = $request->param_data;
  37. try {
  38. Validator::input($param, [
  39. 'page' => Validator::notEmpty()->intType()->setName('页面'),
  40. 'limit' => Validator::notEmpty()->intType()->setName('输出条数'),
  41. ]);
  42. $data = Db::table('wa_my_goods')
  43. ->where('user_id', $request->user_data['id'])
  44. ->where(function ($query) use ($param) {
  45. if (Arr::get($param, 'type')) {
  46. $query->where('type', $param['type']);
  47. }
  48. })
  49. ->orderByDesc('id')
  50. ->paginate(Arr::get($param, 'limit', 10), ['*'], 'page', Arr::get($param, 'page'))
  51. ->toArray();
  52. $arr = [];
  53. foreach ($data['data'] as $k => $v) {
  54. $wa_goods = Db::table('wa_goods')->where('id', $v->goods_id)->first();
  55. $arr[] = [
  56. 'good_name' => $wa_goods->name,
  57. 'pay_price' => $wa_goods->pay_price,
  58. 'bonus' => $wa_goods->bonus,
  59. 'balance' => $wa_goods->balance,
  60. 'gift_money' => $wa_goods->gift_money,
  61. 'daily_limit' => $wa_goods->daily_limit,
  62. 'monthly_limit' => $wa_goods->monthly_limit,
  63. 'img' => imageToBase64($wa_goods->img),
  64. 'created_at' => date('Y-m-d H:i:s', strtotime($v->created_at)),
  65. 'id' => $v->id,
  66. 'num' => $v->num,
  67. 'money' => $v->money,
  68. 'status' => $v->status,
  69. 'name' => $v->name,
  70. 'mobile' => $v->mobile,
  71. 'address' => $v->address,
  72. 'send_status' => $v->send_status,
  73. 'pass' => $v->pass,
  74. 'type' => $v->type,
  75. ];
  76. }
  77. } catch (\Throwable $exception) {
  78. return error($exception->getMessage());
  79. }
  80. return success($arr, '成功', 200, $data['total']);
  81. }
  82. // #[Apidoc\Title("发货记录列表")]
  83. // #[Apidoc\Url("api/user/deliverygoods.html")]
  84. // #[Apidoc\Method("POST")]
  85. // #[Apidoc\Header("token", type: "string", require: true, desc: "身份令牌Token", mock: "@token")]
  86. // #[Apidoc\Param("page", type: "int", require: true, desc: "页面", mock: 1)]
  87. // #[Apidoc\Param("limit", type: "int", require: true, desc: "输出条数", mock: 10)]
  88. // #[Apidoc\Returned(name: "good_name", type: "string", require: true, desc: '商品名称', default: '')]
  89. // #[Apidoc\Returned(name: "img", type: "string", require: true, desc: '图片', default: '')]
  90. // #[Apidoc\Returned(name: "bonus", type: "string", require: true, desc: '赠送', default: '')]
  91. // #[Apidoc\Returned(name: "pay_price", type: "string", require: true, desc: '支付金额', default: '')]
  92. // #[Apidoc\Returned(name: "created_at", type: "string", require: true, desc: '购买时间', default: '')]
  93. // #[Apidoc\Returned(name: "send_status", type: "string", require: true, desc: '发货状态:1=领取成功,2=发货中,3=已到货', default: '')]
  94. // #[Apidoc\Returned(name: "status", type: "string", require: true, desc: '状态 1正常 2失效 3终止', default: '')]
  95. // #[Apidoc\Returned(name: "name", type: "string", require: true, desc: '名称', default: '')]
  96. // #[Apidoc\Returned(name: "mobile", type: "string", require: true, desc: '手机号', default: '')]
  97. // #[Apidoc\Returned(name: "address", type: "string", require: true, desc: '地址', default: '')]
  98. // public function deliverygoods(Request $request)
  99. // {
  100. // $param = $request->param_data;
  101. // try {
  102. // Validator::input($param, [
  103. // 'page' => Validator::notEmpty()->intType()->setName('页面'),
  104. // 'limit' => Validator::notEmpty()->intType()->setName('输出条数'),
  105. // ]);
  106. // $data = Db::table('wa_my_goods')
  107. // ->where('user_id', $request->user_data['id'])
  108. // ->where(function ($query) use ($param) {
  109. //// if (Arr::get($param, 'type')) {
  110. //// $query->where('type', $param['type']);
  111. //// }
  112. // $query->whereIn('type', [0, 3, 4]);
  113. // })
  114. // ->orderByDesc('id')
  115. // ->paginate(Arr::get($param, 'limit', 1))
  116. // ->toArray();
  117. // $arr = [];
  118. // foreach ($data['data'] as $k => $v) {
  119. // $wa_goods = Db::table('wa_goods')->where('id', $v->goods_id)->first();
  120. // $arr[] = [
  121. // 'good_name' => $wa_goods->name,
  122. // 'bonus' => $wa_goods->bonus,
  123. // 'img' => imageToBase64($wa_goods->img),
  124. // 'created_at' => date('Y-m-d H:i:s', strtotime($v->created_at)),
  125. // 'id' => $v->id,
  126. // 'num' => $v->num,
  127. // 'money' => $v->money,
  128. // 'status' => $v->status,
  129. // 'name' => $v->name,
  130. // 'mobile' => $v->mobile,
  131. // 'address' => $v->address,
  132. // 'type' => $v->type,
  133. // 'send_status' => $v->send_status,
  134. // ];
  135. // }
  136. // } catch (\Throwable $exception) {
  137. // return error($exception->getMessage());
  138. // }
  139. // return success($arr, '成功', 200, $data['total']);
  140. // }
  141. }