Product.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?php
  2. /**
  3. * @copyright Copyright (c) 2017 https://www.sapixx.com All rights reserved.
  4. * @license Licensed (http://www.apache.org/licenses/LICENSE-2.0).
  5. * @author pillar<ltmn@qq.com>
  6. * 产品管理
  7. */
  8. namespace app\bestbao\controller;
  9. use app\bestbao\model\BestbaoCategory;
  10. use app\bestbao\model\BestbaoProduct;
  11. use think\facade\Request;
  12. class Product extends Common{
  13. public function initialize(){
  14. parent::initialize();
  15. $this->assign('pathMaps',[['name'=>'产品管理','url'=>'javascript:;']]);
  16. }
  17. /**
  18. * 列表
  19. */
  20. public function index(){
  21. $view['lists'] = BestbaoProduct::where(['member_miniapp_id' => $this->member_miniapp_id])->order('sort desc,id desc')->paginate(20);
  22. return view()->assign($view);
  23. }
  24. /**
  25. * 添加
  26. */
  27. public function create(){
  28. if(request()->isAjax()){
  29. $data = [
  30. 'code' => $this->request->param('code/s'),
  31. 'category_id' => $this->request->param('category_id/d'),
  32. 'title' => $this->request->param('title/s'),
  33. 'note' => $this->request->param('note/s'),
  34. 'images' => $this->request->param('images/s'),
  35. 'member_miniapp_id' => $this->member_miniapp_id,
  36. ];
  37. $validate = $this->validate($data,'Product.edit');
  38. if(true !== $validate){
  39. return json(['code'=>0,'msg'=>$validate]);
  40. }
  41. $result = BestbaoProduct::edit($data);
  42. if($result){
  43. return enjson(200,'操作成功',['url'=>url('product/index')]);
  44. }else{
  45. return enjson(0);
  46. }
  47. }else{
  48. $view['category'] = BestbaoCategory::where(['member_miniapp_id' => $this->member_miniapp_id])->order('sort desc,id desc')->paginate(20);
  49. return view()->assign($view);
  50. }
  51. }
  52. //编辑
  53. public function edit(){
  54. if(request()->isAjax()){
  55. $data = [
  56. 'id' => $this->request->param('id/s'),
  57. 'code' => $this->request->param('code/s'),
  58. 'category_id' => $this->request->param('category_id/d'),
  59. 'title' => $this->request->param('title/s'),
  60. 'note' => $this->request->param('note/s'),
  61. 'images' => $this->request->param('images/s'),
  62. ];
  63. $validate = $this->validate($data,'product.edit');
  64. if(true !== $validate){
  65. return json(['code'=>0,'msg'=>$validate]);
  66. }
  67. $result = BestbaoProduct::edit($data);
  68. if($result){
  69. return enjson(200,'操作成功',['url'=>url('product/index')]);
  70. }else{
  71. return enjson(0);
  72. }
  73. }else{
  74. $view['info'] = BestbaoProduct::where(['id' => Request::param('id/d'),'member_miniapp_id' => $this->member_miniapp_id])->find();
  75. $view['category'] = BestbaoCategory::where(['member_miniapp_id' => $this->member_miniapp_id])->order('sort desc,id desc')->paginate(20);
  76. return view()->assign($view);
  77. }
  78. }
  79. /**
  80. * 排序
  81. */
  82. public function sort(){
  83. if(request()->isAjax()){
  84. $data = [
  85. 'sort' => $this->request->param('sort/d'),
  86. 'id' => $this->request->param('id/d'),
  87. ];
  88. $validate = $this->validate($data,'product.sort');
  89. if(true !== $validate){
  90. return json(['code'=>0,'msg'=>$validate]);
  91. }
  92. $result = BestbaoProduct::update(['sort'=>$data['sort']],['id' => $data['id']]);
  93. if($result){
  94. return enjson(200);
  95. }else{
  96. return enjson(0);
  97. }
  98. }
  99. }
  100. //删除
  101. public function delete(int $id){
  102. $result = BestbaoProduct::destroy($id);
  103. if($result){
  104. return enjson(200);
  105. }else{
  106. return enjson(403,'删除失败');
  107. }
  108. }
  109. }