sku_path; $arr=explode('/',$path); $goodsSku=[]; foreach($arr as $k=>$v){ $upSpec=GoodsSpec::where('id',$v)->first(); if($upSpec){ $upSpec['uptitle']=GoodsSpec::where('id',$upSpec->pid)->value('title'); $goodsSku[$upSpec['uptitle']]=$upSpec->title; } } return $goodsSku; } /*获取商品规格*/ public function getGoodsSpec($goodsId){ $goodsSpec=GoodsSpec::where('goods_id',$goodsId)->where('is_show',1)->get(); $spec=[]; if($goodsSpec){ foreach($goodsSpec as $key =>$val){ $n=0; if($val->pid==0){ foreach($goodsSpec as $k =>$v) { if($v->pid<>0 && $val->id==$v->pid){ $spec[$val->title][$n]=$v->title; $n++; } } } } } return $spec; } /*获取商品价格组合*/ public function getGoodsSkuPrice($goodsId){ $goodsSkuPrice=GoodsSkuPrice::select('goods_id','sku_id')->where('goods_id',$goodsId)->groupBy('goods_id','sku_id')->get(); $goodsSku=[]; foreach($goodsSkuPrice as $key =>$val){ $price=GoodsSkuPrice::where('goods_id',$goodsId)->where('sku_id',$val->sku_id)->pluck('price','user_level')->toArray(); $path=GoodsSku::where('id',$val->sku_id)->where('is_show',1)->value('sku_path'); $arr=explode('/',$path); $goodsSku[$key]=[]; foreach($arr as $k=>$v){ $upSpec=GoodsSpec::where('id',$v)->first(); if($upSpec){ $upSpec['uptitle']=GoodsSpec::where('id',$upSpec->pid)->value('title'); $goodsSku[$key][$upSpec['uptitle']]=$upSpec->title; } } $goodsSku[$key]['price']=$price; } return $goodsSku; } /*添加商品基本信息*/ public function createGoodsInfo($request){ $data['name']=$request['name']; $data['title']=$request['desc']; $data['type']=$request['type']; $data['tjprice']=$request['tjPrice']; $data['djprice']=$request['djPrice']; $data['hgprice']=$request['hgPrice']; $data['status']='0'; $data['is_specifica']='1'; $data['total']=$request['total']; $data['banner_url']=json_encode($request['banner_url']); $data['img_url']=$request['img_url']; $data['contents']=$request['content']; $res=Goods::create($data);//添加商品信息 return $res->id; } /*修改商品基本信息*/ public function updateGoodsInfo($request){ $data['name']=$request['name']; $data['title']=$request['desc']; $data['type']=$request['type']; $data['tjprice']=$request['tjPrice']; $data['djprice']=$request['djPrice']; $data['hgprice']=$request['hgPrice']; $data['status']='0'; $data['total']=$request['total']; $data['banner_url']=json_encode($request['banner_url']); $data['img_url']=$request['img_url']; $data['contents']=$request['content']; $res=Goods::where('id',$request['id'])->update($data);//添加商品信息 } /*添加商品规格信息*/ public function createGoodsSpecInfo($tagList,$goodsId){ foreach($tagList as $key =>$val){ $data['pid']=0; $data['goods_id']=$goodsId; $data['title']=$key; $data['is_show']=1; $data['name']=$goodsId.'|0|'.$key; $spec=GoodsSpec::create($data);//添加商品规格(父级) foreach($val as $v){ $da_zi['pid']=$spec->id; $da_zi['goods_id']=$goodsId; $da_zi['title']=$v; $da_zi['is_show']='1';//1 $da_zi['name']=$goodsId.'|'.$key.'|'.$v; GoodsSpec::create($da_zi);//添加商品规格标签(子元素) } } return true; } /*添加商品规格组合价格信息*/ public function createGoodsSkuInfo($goodsSku,$goodsId){ foreach($goodsSku as $keys =>$value){ $path=''; $price_arr=[]; $price_arr['tj']=$value['tjPrice']; $price_arr['dj']=$value['djPrice']; $price_arr['hg']=$value['hgPrice']; array_splice($value,-3,3); foreach($value as $key =>$val){ $name=$goodsId.'|'.$key.'|'.$val; $skuId=GoodsSpec::where('name',$name)->value('id'); if(empty($path)){ $path=$skuId; }else{ $path=$path.'/'.$skuId; } } $da['goods_id']=$goodsId; $da['sku_path']=$path; $da['is_show']=1; $res_sku=GoodsSku::create($da);//添加商品sku组合 foreach($price_arr as $key =>$val){ $d['goods_id']=$goodsId; $d['sku_id']=$res_sku->id; switch($key){ case 'hg': $d['user_level']=1; break; case 'dj': $d['user_level']=2; break; case 'tj': $d['user_level']=3; break; } $d['price']=$val; GoodsSkuPrice::create($d);//添加商品sku组合价格 } } } }