GoodsController.php 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <?php
  2. namespace App\Http\Controllers\Api\v1;
  3. use App\Http\Controllers\Api\webApp;
  4. use App\Http\Validator\GoodsValidator;
  5. use App\Services\Api\GoodsService;
  6. use App\Services\Api\GoodsCategoryService;
  7. use App\Services\RedisService;
  8. /**
  9. * 商品服务管理
  10. * @package App\Http\Controllers\Api
  11. */
  12. class GoodsController extends webApp
  13. {
  14. /**
  15. * 列表
  16. * @return array
  17. */
  18. public function index()
  19. {
  20. try {
  21. $params = request()->post();
  22. $pageSize = request()->post('pageSize', 0);
  23. $datas = GoodsService::make()->getDataList($params, $pageSize,'', $this->userId);
  24. return showJson(1010, true, $datas);
  25. } catch (\Exception $exception){
  26. RedisService::set("caches:request:error_goods_index", ['trace'=>$exception->getTrace()], 7200);
  27. return showJson(1018, false, ['error'=>env('APP_DEBUG')? $exception->getMessage() : '']);
  28. }
  29. }
  30. /**
  31. * 分类
  32. * @return array
  33. */
  34. public function category()
  35. {
  36. $params = request()->post();
  37. $pageSize = request()->post('pageSize', 99);
  38. $datas = GoodsCategoryService::make()->getDataList($params, $pageSize);
  39. return showJson(1010, true, $datas);
  40. }
  41. /**
  42. * 详情
  43. * @return array
  44. */
  45. public function info()
  46. {
  47. $id = request()->post('goods_id', 0);
  48. $info = GoodsService::make()->getInfo($id);
  49. return showJson(1010, true, $info);
  50. }
  51. /**
  52. * 运费
  53. * @return array
  54. */
  55. public function freight()
  56. {
  57. $addressId = request()->post('address_id', 0);
  58. if($addressId<=0){
  59. return showJson(1009, false);
  60. }
  61. $info = GoodsService::make()->getFreight($this->userId, $addressId);
  62. return showJson(1010, true, $info);
  63. }
  64. }