LiveGoods.php 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2016~2020 https://www.crmeb.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  8. // +----------------------------------------------------------------------
  9. // | Author: CRMEB Team <admin@crmeb.com>
  10. // +----------------------------------------------------------------------
  11. namespace app\controller\admin\v1\marketing\live;
  12. use app\controller\admin\AuthController;
  13. use app\services\activity\live\LiveGoodsServices;
  14. use think\facade\App;
  15. /**
  16. * 直播间商品
  17. * Class LiveGoods
  18. * @package app\controller\admin\store
  19. */
  20. class LiveGoods extends AuthController
  21. {
  22. /**
  23. * LiveGoods constructor.
  24. * @param App $app
  25. * @param LiveGoodsServices $services
  26. */
  27. public function __construct(App $app, LiveGoodsServices $services)
  28. {
  29. parent::__construct($app);
  30. $this->services = $services;
  31. }
  32. public function list()
  33. {
  34. $where = $this->request->postMore([
  35. ['kerword', ''],
  36. ['status', ''],
  37. ['is_show', ''],
  38. ['live_id', 0]
  39. ]);
  40. return app('json')->success($this->services->getList($where));
  41. }
  42. public function create()
  43. {
  44. [$product_ids] = $this->request->postMore([
  45. ['product_id', []]
  46. ], true);
  47. if (!$product_ids) return app('json')->fail('请选择商品');
  48. return app('json')->success($this->services->create($product_ids));
  49. }
  50. public function add()
  51. {
  52. [$goods_info] = $this->request->postMore([
  53. ['goods_info', []]
  54. ], true);
  55. if (!$goods_info) return app('json')->fail('请选择商品');
  56. foreach ($goods_info as $goods) {
  57. if (!$goods['id']) return app('json')->fail('请选择商品');
  58. if (!$goods['store_name']) return app('json')->fail('请输入名称');
  59. if (!$goods['image']) return app('json')->fail('请选择背景图');
  60. if (!$goods['price']) return app('json')->fail('请输入直播价格');
  61. if ($goods['price'] <= 0) return app('json')->fail('直播价格必须大于0');
  62. }
  63. $this->services->add($goods_info);
  64. return app('json')->success('添加成功');
  65. }
  66. public function detail($id)
  67. {
  68. if (!$id)
  69. return app('json')->fail('数据不存在');
  70. $goods = $this->services->get($id, ['*'], ['product']);
  71. return app('json')->success('ok', $goods ? $goods->toArray() : []);
  72. }
  73. public function syncGoods()
  74. {
  75. $this->services->syncGoodStatus();
  76. return app('json')->success('同步成功');
  77. }
  78. public function audit($id)
  79. {
  80. if (!$id)
  81. return app('json')->fail('数据不存在');
  82. $this->services->audit((int)$id);
  83. return app('json')->success('提交审核成功');
  84. }
  85. public function resetAudit($id)
  86. {
  87. if (!$id)
  88. return app('json')->fail('数据不存在');
  89. $this->services->resetAudit((int)$id);
  90. return app('json')->success('撤销成功');
  91. }
  92. public function setShow(int $id, $is_show)
  93. {
  94. if (!$id)
  95. return app('json')->fail('数据不存在');
  96. return app('json')->success($this->services->isShow($id, $is_show));
  97. }
  98. public function delete($id)
  99. {
  100. if (!$id)
  101. return app('json')->fail('数据不存在');
  102. $this->services->delete($id);
  103. return app('json')->success('删除成功');
  104. }
  105. }