GoodsController.php 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <?php
  2. /**
  3. * 重庆赤晓店信息科技有限公司
  4. * https://www.chixiaodian.com
  5. * Copyright (c) 2023 赤店商城 All rights reserved.
  6. */
  7. namespace app\plugins\wxlive\controllers;
  8. use app\models\Goods;
  9. use app\plugins\wxlive\models\goods\GoodsDetailForm;
  10. class GoodsController
  11. {
  12. public function actionIndex()
  13. {
  14. $liveForm = new GoodsDetailForm();
  15. $liveForm->store_id = get_store_id();
  16. $liveForm->page = get_params('pageNo',1);
  17. $liveForm->limit = get_params('pageSize',10);
  18. $liveForm->status = get_params('status',-1);
  19. $res = $liveForm->getGoodsList();
  20. if ($res['errcode'] > 0) {
  21. return [
  22. 'code' => 1,
  23. 'msg' => $res['errmsg'],
  24. ];
  25. }
  26. return [
  27. 'code' => 0,
  28. 'data' => [
  29. 'total' => $res['total'],
  30. 'list' => $res['goods']
  31. ]
  32. ];
  33. }
  34. /**
  35. * @return array|string
  36. * 添加商品
  37. */
  38. public function actionGoodsAdd () {
  39. $data = post_params();
  40. $liveForm = new GoodsDetailForm();
  41. $liveForm->store_id = get_store_id();
  42. $liveForm->data = $data;
  43. $res = $liveForm->submitGoods();
  44. if ($res['errcode'] == 0) {
  45. return [
  46. 'code' => 0,
  47. 'msg' => '添加成功'
  48. ];
  49. }else {
  50. return [
  51. 'code' => 1,
  52. 'msg' =>$res['errmsg']
  53. ];
  54. }
  55. }
  56. public function actionDelete() {
  57. $goods_id = post_params('goods_id');
  58. $liveForm = new GoodsDetailForm();
  59. $liveForm->store_id = get_store_id();
  60. $liveForm->goods_id = $goods_id;
  61. $res = $liveForm->delGoods();
  62. if ($res['errcode'] == 0) {
  63. return [
  64. 'code' => 0,
  65. 'msg' => '删除成功'
  66. ];
  67. }
  68. return [
  69. 'code' => 1,
  70. 'msg' =>$res['errmsg']
  71. ];
  72. }
  73. public function actionSearchGoods()
  74. {
  75. $query = Goods::find()->where([
  76. 'store_id' => get_store_id(),
  77. 'is_delete' => 0,
  78. ]);
  79. if (get_params('keyword')) {
  80. $query->andWhere(['LIKE', 'name', get_params('keyword')]);
  81. }
  82. $list = $query->orderBy('sort ASC, created_at DESC')->limit(20)->all();
  83. $new_list = [];
  84. foreach ($list as $item) {
  85. $new_list[] = [
  86. 'id' => $item->id,
  87. 'name' => $item->name,
  88. 'price' => $item->price,
  89. 'cover_pic' => $item->getGoodsCover(),
  90. ];
  91. }
  92. return [
  93. 'code' => 0,
  94. 'data' => [
  95. 'list' => $new_list,
  96. ],
  97. ];
  98. }
  99. }