Category.php 3.2 KB

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