|
@@ -6,6 +6,7 @@ use App\Models\Business;
|
|
|
use App\Models\Custom;
|
|
|
use App\Models\Product as Model;
|
|
|
use App\Models\Product\Attr as ProductAttr;
|
|
|
+use App\Models\Product\City as ProductCity;
|
|
|
use App\Models\Product\Spec as ProductSpec;
|
|
|
use App\Models\Product\Skus as ProductSkus;
|
|
|
use App\Models\ProductPhoto;
|
|
@@ -176,7 +177,7 @@ class Product extends Api{
|
|
|
* @param int $id 产品id
|
|
|
*
|
|
|
* */
|
|
|
- public function get_detail(Request $request, Model $Model, ProductPhoto $ProductPhoto, Business $Business, ProductAttr $ProductAttr, ProductSpec $ProductSpec, ProductSkus $ProductSkus, RegimentActive $RegimentActive, Regiment $Regiment, Custom $Custom, WeiBanTags $WeiBanTags, PromoProduct $PromoProduct){
|
|
|
+ public function get_detail(Request $request, Model $Model, ProductPhoto $ProductPhoto,ProductCity $ProductCity, Business $Business, ProductAttr $ProductAttr, ProductSpec $ProductSpec, ProductSkus $ProductSkus, RegimentActive $RegimentActive, Regiment $Regiment, Custom $Custom, WeiBanTags $WeiBanTags, PromoProduct $PromoProduct){
|
|
|
// 接口验签
|
|
|
// $this->verify_sign();
|
|
|
// 验证参数
|
|
@@ -188,13 +189,15 @@ class Product extends Api{
|
|
|
// 接收参数
|
|
|
$id = request('id',0);
|
|
|
// 显示
|
|
|
- $map[] = ['product.status','=','0'];
|
|
|
- // 是否有城市
|
|
|
- $wherIn = empty($custom['city_id']) ? [1] : [1,$custom['city_id']];
|
|
|
+ $map[] = ['status','=','0'];
|
|
|
// 查询
|
|
|
- $data = $Model->query()->join('product_city','product_city.product_id','=','product.id')->where($map)->whereIn('product_city.city_id',$wherIn)->find($id,['product.id','product.name','product.thumb','product.stock','product.spec','product.poster','product.price','product.business_id','product.market_price']);
|
|
|
+ $data = $Model->query()->where($map)->find($id,['id','name','thumb','stock','spec','poster','price','business_id','market_price']);
|
|
|
// 如果没有数据
|
|
|
if( !$data ) return json_send(['code'=>'error','msg'=>'产品已下架','data'=>['error'=>'产品已下架或不存在']]);
|
|
|
+ // 允许城市
|
|
|
+ $allowCity = $ProductCity->where([['product_id','=',$id]])->pluck('city_id')->toArray();
|
|
|
+ // 如果不是全国城市 也不是服务城市范围
|
|
|
+ if ( !in_array(1,$allowCity) && !in_array($custom['city_id'],$allowCity) ) return json_send(['code'=>'error','msg'=>'您的城市不在该产品服务范围','data'=>['error'=>'您的城市不在该产品服务范围']]);
|
|
|
// 转数组
|
|
|
$data = $data->toArray();
|
|
|
// 处理数据
|
|
@@ -338,7 +341,6 @@ class Product extends Api{
|
|
|
}
|
|
|
|
|
|
}
|
|
|
-
|
|
|
// 返回结果
|
|
|
return json_send(['code'=>'success','msg'=>'获取成功','data'=>$data]);
|
|
|
}
|