Category.php 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace addons\unishop\controller;
  3. use app\common\controller\Api;
  4. /**
  5. * 分类
  6. */
  7. class Category extends Api
  8. {
  9. protected $noNeedLogin = ['all','menu','inlist'];
  10. protected $noNeedRight = ['*'];
  11. public function _initialize()
  12. {
  13. parent::_initialize();
  14. $this->model = new \addons\unishop\model\Category();
  15. }
  16. /**
  17. * @ApiTitle (全部分类数据)
  18. * @ApiSummary (全部分类数据)
  19. * @ApiMethod (GET)
  20. * @ApiHeaders (name=token, type=string, required=true, description="用户登录的Token", sample="a2e3cc70-d2d1-41e6-9c14-f1d774ee5e1e")
  21. * @ApiHeaders (name=cookie, type=string, required=false, description="用户会话的cookie")
  22. * @ApiReturn ({"code":1,"msg":"","data":[]})
  23. *
  24. * @ApiReturnParams (name="id", type="integer", description="分类id")
  25. * @ApiReturnParams (name="name", type="string", description="分类名称")
  26. * @ApiReturnParams (name="pid", type="integer", description="上级id")
  27. * @ApiReturnParams (name="image", type="string", description="图片")
  28. * @ApiReturnParams (name="type", type="string", description="类型")
  29. * @ApiReturnParams (name="flag", type="integer", description="标签/位置")
  30. * @ApiReturnParams (name="weigh", type="integer", description="排序")
  31. */
  32. public function all(){
  33. $all = $this->model
  34. ->where('type','product')
  35. ->where('status','normal')
  36. ->field('id,name,pid,image,type,flag,weigh')
  37. ->order('weigh ASC')
  38. ->cache(20)
  39. ->select();
  40. if ($all) {
  41. $all = collection($all)->toArray();
  42. }
  43. $this->success('',$all);
  44. }
  45. /**
  46. * @ApiTitle (首页广告下面的分类)
  47. * @ApiSummary (首页广告下面的分类)
  48. * @ApiMethod (GET)
  49. * @ApiHeaders (name=token, type=string, required=true, description="用户登录的Token", sample="a2e3cc70-d2d1-41e6-9c14-f1d774ee5e1e")
  50. * @ApiHeaders (name=cookie, type=string, required=false, description="用户会话的cookie")
  51. * @ApiReturn ({"code":1,"msg":"","data":{}})
  52. *
  53. * @ApiReturnParams (name="id", type="integer", description="分类id")
  54. * @ApiReturnParams (name="name", type="string", description="分类名称")
  55. * @ApiReturnParams (name="pid", type="integer", description="上级id")
  56. * @ApiReturnParams (name="image", type="string", description="图片")
  57. * @ApiReturnParams (name="type", type="string", description="类型")
  58. * @ApiReturnParams (name="flag", type="integer", description="标签/位置")
  59. * @ApiReturnParams (name="weigh", type="integer", description="排序")
  60. */
  61. public function menu()
  62. {
  63. $list = $this->model
  64. ->where('flag','index')
  65. ->where('status','normal')
  66. ->cache(20)
  67. ->select();
  68. if ($list) {
  69. $list = collection($list)->toArray();
  70. }
  71. $this->success('菜单',$list);
  72. }
  73. }