get(); if ($goods->isEmpty()){ return $this->error(300); } foreach ($goods as $k=>$v){ if ($user->level==1){ $data[$k]['price']=$v->tjprice; }elseif($user->level==2){ $data[$k]['price']=$v->djprice; }elseif ($user->level==3){ $data[$k]['price']=$v->hgprice; } $goodspec_id=GoodSpec::where('goods_id',$v->id)->where('title','=','type')->value('id'); $goodspec=GoodSpec::where('pid',$goodspec_id)->get(); foreach ($goodspec as $key=>$value){ $type_name[$key]=$value->title; $type_id[$key]=$value->id; } $data[$k]['storage']=GoodSkuTotal::where('user_id',$user->id)->where('goods_id',$v->goods_id)->sum('total'); $data[$k]['img']=$v->img_url; $data[$k]['id']=$v->id; $data[$k]['type']=$type_name; $data[$k]['type_id']=$type_id; $data[$k]['name']=$v->name; $data[$k]['banner_url']=json_decode($v->banner_url); } Log::error('{----------------}'.json_encode($data)); return $this->success_list($data); } /* * 商品详情 * */ public function goods_detail(Request $request){ $level=Auth::user()->level; $goods=Goods::find($request->id); Log::error('{------------------}'.$request->id); $goodspec_id=GoodSpec::where('goods_id',$request->id)->where('title','=','type')->value('id'); $goodspec=GoodSpec::where('pid',$goodspec_id)->get(); foreach ($goodspec as $k=>$v){ $data[$k]['name']=$v->title; $data[$k]['type_id']=$v->id; $res=$this->get_good($request->id,$v->id); $data[$k]['size']=$res['size']; $data[$k]['size_id']=$res['size_id']; } $re['id']=$goods->id; if ($level==3){ $re['price']=$goods->tjprice; }elseif($level==2){ $re['price']=$goods->djprice; }elseif ($level==1){ $re['price']=$goods->hgprice; }else{ Log::error('{------这是位于GoodsController的goods_list方法----------出现了用户level不正确的情况------}'); return $this->error(400); } $re['name']=$goods->name; $re['img']=$goods->img_url; $re['imgList']=json_decode($goods->banner_url); $re['typeList']=$data; return $this->success($re); } /*---获取款式的规格(size)-----*/ public function get_good($id,$spec_id){ $data=GoodSku::where('goods_id',$id)->where('sku_path','like','%'.$spec_id.'%')->get(); $size=[]; $sizeid=[]; $totals=0; $total=[]; foreach ($data as $k=>$v){ $re=$this->typeList($v->sku_path); $size[$k]=$re['size']; $sizeid[$k]=$v->id; $num=GoodSkuTotal::where('goods_id',$id)->where('sku_id',$v->id)->where('user_id',Auth::user()->id)->value('total'); if ($totals){ $total[$k]=$num; }else{ $total[$k]=0; } $totals=$num+$totals; } return ['size'=>$size,'size_id'=>$sizeid,'total'=>$total,'totals'=>$totals]; } /*-----处理goods_sku的sku_path数据----*/ public function typeList($data){ $datas=explode('/',$data); $data=$datas[0]; $spec=GoodSpec::find($data); $size=$spec->title; return ['size_id'=>$data,'size'=>$size]; } }