|
@@ -182,7 +182,7 @@ class StoreCart extends BaseModel
|
|
|
|
|
|
public static function getUserProductCartList($uid, $cartIds = '', $status = 0, $store_id = 0)
|
|
|
{
|
|
|
- $productInfoField = 'id,image,price,ot_price,vip_price,postage,give_integral,sales,stock,store_name,unit_name,is_show,is_del,is_postage,cost,is_sub,temp_id,store_type,give_coupon';
|
|
|
+ $productInfoField = 'id,image,price,ot_price,vip_price,postage,give_integral,sales,stock,store_name,unit_name,is_show,is_del,is_postage,cost,is_sub,temp_id,store_type,give_coupon,only_store_user';
|
|
|
$seckillInfoField = 'id,image,price,ot_price,postage,give_integral,sales,stock,title as store_name,unit_name,is_show,is_del,is_postage,cost,temp_id,weight,volume,start_time,stop_time,time_id';
|
|
|
$bargainInfoField = 'id,image,min_price as price,price as ot_price,postage,give_integral,sales,stock,title as store_name,unit_name,status as is_show,is_del,is_postage,cost,temp_id,weight,volume';
|
|
|
$combinationInfoField = 'id,image,price,postage,sales,stock,title as store_name,is_show,is_del,is_postage,cost,temp_id,weight,volume';
|
|
@@ -198,6 +198,7 @@ class StoreCart extends BaseModel
|
|
|
$list = $model->select()->toArray();
|
|
|
if (!count($list)) return compact('valid', 'invalid');
|
|
|
$now = time();
|
|
|
+ $only_store_user = false;
|
|
|
foreach ($list as $k => $cart) {
|
|
|
if ($cart['seckill_id']) {
|
|
|
$product = StoreSeckill::field($seckillInfoField)
|
|
@@ -220,7 +221,9 @@ class StoreCart extends BaseModel
|
|
|
}
|
|
|
$product['image'] = set_file_url($product['image']);
|
|
|
$cart['productInfo'] = $product;
|
|
|
-
|
|
|
+ if ($product['only_store_user'] ?? 0) {
|
|
|
+ $only_store_user = true;
|
|
|
+ }
|
|
|
|
|
|
if (!$product) {
|
|
|
$model->where('id', $cart['id'])->update(['is_del' => 1]);
|
|
@@ -307,12 +310,14 @@ class StoreCart extends BaseModel
|
|
|
}
|
|
|
}
|
|
|
foreach ($valid as $k => $cart) {
|
|
|
+ if ($only_store_user && !($cart['productInfo']['only_store_user'] ?? 0)) {
|
|
|
+ return self::setErrorInfo('采购商品不可和其他商品一起结算');
|
|
|
+ }
|
|
|
if ($cart['trueStock'] < $cart['cart_num']) {
|
|
|
$cart['cart_num'] = $cart['trueStock'];
|
|
|
$model->where('id', $cart['id'])->update(['cart_num' => $cart['cart_num']]);
|
|
|
$valid[$k] = $cart;
|
|
|
}
|
|
|
-
|
|
|
unset($valid[$k]['uid'], $valid[$k]['is_del'], $valid[$k]['is_new'], $valid[$k]['is_pay'], $valid[$k]['add_time']);
|
|
|
if (isset($valid[$k]['productInfo'])) {
|
|
|
unset($valid[$k]['productInfo']['is_del'], $valid[$k]['productInfo']['is_del'], $valid[$k]['productInfo']['is_show']);
|
|
@@ -325,7 +330,7 @@ class StoreCart extends BaseModel
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- return compact('valid', 'invalid');
|
|
|
+ return compact('valid', 'invalid', 'only_store_user');
|
|
|
}
|
|
|
|
|
|
|