request->param('category_id'); $list = Db::name('shopro_activity_sku_price')->alias('asp') ->field([ 'asp.activity_id','asp.goods_sku_price_id','asp.goods_id','asp.price', 'a.rules', 'g.title','g.image', 'gsp.goods_sku_text','gsp.image as sku_image','gsp.price as old_price'] ) ->join('shopro_activity a','asp.activity_id = a.id','LEFT') ->join('shopro_goods g' ,'asp.goods_id = g.id','LEFT') ->join('shopro_goods_sku_price gsp','asp.goods_sku_price_id = gsp.id','LEFT') ->where('asp.status','up') ->where('a.deletetime',NULL)->where('a.type','kan') ->where('g.deletetime',NULL)->whereIn('g.status', ['up', 'hidden']) ->where('gsp.status','up'); if(!empty($category_id)){ $list->where('find_in_set(:category_ids,g.category_ids)', ['category_ids' => $category_id]); } $list = $list->order('a.end_time asc')->autopage()->select(); $list = list_domain_image($list,['image','sku_image']); foreach($list as $key => $val){ //sku图片代替主图 if(!empty($val['sku_image'])){ $val['image'] = $val['sku_image']; } unset($val['sku_image']); $val['team_num'] = json_decode($val['rules'],true)['team_num'];//砍价人数上限 unset($val['rules']); $list[$key] = $val; } $this->success('获取成功',$list); } //发起砍价 public function kan_newone(){ $user = auth_user(); $nowtime = time(); $goods_id = $this->request->param('goods_id'); $goods_sku_price_id = $this->request->param('goods_sku_price_id'); $activity_id = $this->request->param('activity_id'); //活动 $activity = Db::name('shopro_activity')->where('id',$activity_id)->find(); if($activity['end_time'] < time()){ $this->error('该砍价活动已结束'); } $rules = json_decode($activity['rules'],true); //活动商品 $map_sku = [ 'activity_id' => $activity_id, 'goods_id' => $goods_id, 'goods_sku_price_id' => $goods_sku_price_id, 'status' => 'up', ]; $activity_sku_price = Db::name('shopro_activity_sku_price')->where($map_sku)->find(); if(empty($activity_sku_price)){ $this->error('不存在的活动商品'); } if($activity_sku_price['sales'] >= $activity_sku_price['stock']){ $this->error('该活动商品已售罄'); } //写入 $data = [ 'user_id' => $user['id'], 'goods_id' => $goods_id, 'goods_sku_price_id' => $goods_sku_price_id, 'activity_id' => $activity_id, 'num' => $rules['team_num'], 'current_num' => 0, 'status' => 'ing', 'expire_time' => $nowtime + $rules['valid_time']*3600, 'finish_time' => 0, 'createtime' => $nowtime, 'updatetime' => $nowtime, 'total_kan_price' => 0, 'activity_sku_price' => $activity_sku_price['price'], ]; $kan_id = Db::name('shopro_activity_kan')->insertGetId($data); $this->success('操作成功',$kan_id); } //帮好友砍价 public function kan_kan(){ } //某个已发起的砍价详情 public function kan_info(){ $kan_id = $this->request->param('kan_id'); $kan = Db::name('shopro_activity_kan')->alias('kan') ->field(['kan.*', 'g.title','g.image', 'gsp.goods_sku_text','gsp.image as sku_image','gsp.price as old_price', '','','','','','','','','','','','','','','','','','','','','','','','','','']) ->join('shopro_goods g','kan.goods_id = g.id','LEFT') ->join('shopro_goods_sku_price gsp','kan.goods_sku_price_id = gsp.id','LEFT') ->where('kan.id',$kan_id) ->find(); //砍价记录 Db::name('shopro_') } }