Buycar.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. <?php
  2. namespace app\api\controller;
  3. use app\api\model\BuycarModel;
  4. use app\common\controller\Api;
  5. /**
  6. * 购物车
  7. */
  8. class Buycar extends APi
  9. {
  10. protected $noNeedLogin = '*';
  11. protected $noNeedRight = '*';
  12. /**
  13. * 购物车显示
  14. * @param string $user_id 用户id
  15. */
  16. public function buyCarIndex()
  17. {
  18. $parames = $this->request->post();
  19. $rules = [
  20. 'user_id' => 'require|number'
  21. ];
  22. $msg = [
  23. 'user_id.require' => '网络错误',
  24. 'user_id.number' => '网络错误',
  25. ];
  26. $validata = $this->validate($parames, $rules, $msg);
  27. if (is_string($validata)) {
  28. return $this->result($validata, [], 100);
  29. }
  30. $data = BuycarModel::with('commodity')
  31. ->where($parames)
  32. ->select();
  33. // $data = BuycarModel::where('user_id',$parames['user_id'])
  34. // ->alias('b')
  35. // ->join('commodity c','b.c_id=c.c_id')
  36. // ->select();
  37. if ($data) {
  38. return $this->result('', $data, 200);
  39. } else {
  40. return $this->result('暂无数据', [], 100);
  41. }
  42. }
  43. /**
  44. * 购物车添加
  45. * @param string $user_id 用户id
  46. * @param string $c_id 商品c_id
  47. * @param string $p_id 规格id
  48. * @param string $p_name 规格名
  49. * @param string $colorid 颜色id
  50. * @param string $name 颜色名
  51. * @param string $number 数量
  52. * @param string $color 颜色的图片
  53. */
  54. public function buyCarAdd()
  55. {
  56. $params = $this->request->post();
  57. $rules = [
  58. 'user_id' => 'require|number',
  59. 'c_id' => 'require|number',
  60. 'p_id' => 'require|number',
  61. 'colorid' => 'require|number',
  62. 'p_name' => 'require',
  63. 'name' => 'require',
  64. 'number' => 'require|number',
  65. 'color' => 'require',
  66. ];
  67. $msg = [
  68. 'user_id.require' => '网络错误',
  69. 'user_id.number' => '网络错误',
  70. 'c_id.require' => '网络错误',
  71. 'c_id.number' => '网络错误',
  72. 'p_id.require' => '网络错误',
  73. 'p_id.number' => '网络错误',
  74. 'colorid.number' => '网络错误',
  75. 'colorid.require' => '网络错误',
  76. 'p_name.require' => '网络错误',
  77. 'name.require' => '网络错误',
  78. 'number.require' => '网络错误',
  79. 'number.number' => '网络错误',
  80. 'color.require' => '网络错误',
  81. ];
  82. $validata = $this->validate($params, $rules, $msg);
  83. if (is_string($validata)) {
  84. return $this->result($validata, [], 100);
  85. }
  86. $list = $params;
  87. unset($list['number']);
  88. $issetcar = BuycarModel::where($list)->find(); //判断购物车是否已存在此商品
  89. if ($issetcar) { //存在的话把数量加上
  90. $addnumber = BuycarModel::where('k_id',$issetcar['k_id'])->setInc('number',$params['number']);
  91. if ($addnumber) {
  92. return $this->result('添加成功', '', 200);
  93. } else {
  94. return $this->result('添加失败', '', 100);
  95. }
  96. } else {
  97. echo 1111;die;
  98. }
  99. $model = new BuycarModel();
  100. $addCar = $model->allowField(true)->save($params);
  101. if ($addCar) {
  102. return $this->result('添加成功', '', 200);
  103. } else {
  104. return $this->result('添加失败', '', 100);
  105. }
  106. }
  107. /**
  108. * 购物车批量删除
  109. * @param string $list 购物车id(数组)
  110. */
  111. public function carDel () {
  112. $params = $this->request->post();
  113. $rules = [
  114. 'list' => 'require'
  115. ];
  116. $msg = [
  117. 'list.require' => '网络错误'
  118. ];
  119. $validata = $this->validate($params,$rules,$msg);
  120. if (is_string($validata)) {
  121. return $this->result($validata,[],100);
  122. }
  123. foreach ($params as $v) {
  124. $del = BuycarModel::where('k_id',$v['id'])->delete();
  125. }
  126. return $this->result('删除成功',[],200);
  127. }
  128. }