Task.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <?php
  2. namespace app\api\controller\plus\bargain;
  3. use app\api\controller\Controller;
  4. use app\api\model\plus\bargain\Task as TaskModel;
  5. /**
  6. * 砍价任务模型
  7. */
  8. class Task extends Controller
  9. {
  10. /**
  11. * 创建砍价任务
  12. */
  13. public function add($bargain_activity_id, $bargain_product_id, $bargain_product_sku_id, $product_sku_id)
  14. {
  15. // 用户信息
  16. $user = $this->getUser();
  17. // 创建砍价任务
  18. $model = new TaskModel;
  19. if (!$model->add($user['user_id'], $bargain_activity_id, $bargain_product_id, $bargain_product_sku_id, $product_sku_id)) {
  20. return $this->renderError($model->getError() ?: '砍价任务创建失败');
  21. }
  22. return $this->renderSuccess('', [
  23. 'bargain_task_id' => $model['bargain_task_id']
  24. ]);
  25. }
  26. /**
  27. * 获取砍价任务详情
  28. */
  29. public function detail($bargain_task_id, $url = '')
  30. {
  31. $detail = (new TaskModel)->getTaskDetail($bargain_task_id, $this->getUser(false));
  32. //分享
  33. $share = $this->getShareParams($url, "发现了一个好物,快来帮我砍一刀吧", $detail['task']['product_name'], '/pages/plus/bargain/haggle/haggle', $detail['product']['product']['image'][0]['file_path']);
  34. return $this->renderSuccess('', array_merge($detail, compact('share')));
  35. }
  36. /**
  37. * 帮砍一刀
  38. */
  39. public function cut($bargain_task_id)
  40. {
  41. // 砍价任务详情
  42. $model = TaskModel::detail($bargain_task_id);
  43. // 砍一刀的金额
  44. $cut_money = $model->getCutMoney();
  45. // 帮砍一刀事件
  46. $status = $model->helpCut($this->getUser());
  47. if ($status == true) {
  48. return $this->renderSuccess('砍价成功', compact('cut_money'));
  49. }
  50. return $this->renderError($model->getError() ?: '砍价失败');
  51. }
  52. }