feat: 修改订单逻辑和购物车列表,重构用户折扣计算方式
This commit is contained in:
parent
f919e94ec3
commit
62b5ef67f4
@ -64,7 +64,6 @@ class CartList extends BaseAdminDataLists implements ListsSearchInterface, Lists
|
||||
->toArray();
|
||||
$off_activity = Config::where('name', 'off_activity')->value('value');
|
||||
$this->off_activity=$off_activity;
|
||||
$user = User::where('id', $userId)->find();
|
||||
foreach ($list as $key => &$item) {
|
||||
|
||||
$find = StoreBranchProduct::where(['product_id' => $item['product_id'], 'store_id' => $item['store_id']])
|
||||
@ -75,20 +74,7 @@ class CartList extends BaseAdminDataLists implements ListsSearchInterface, Lists
|
||||
if ($find) {
|
||||
if($off_activity==1){
|
||||
$this->activity_price = bcadd(bcmul($find['cost'],$item['cart_num'], 2), $this->activity_price, 2);
|
||||
}else{
|
||||
if ($user && $user['user_ship'] == 1) {
|
||||
//更新 会员为1的时候原价减去会员价
|
||||
$deduction_price_count = bcmul(bcsub($find['price'], $find['vip_price'], 2), $item['cart_num'], 2);
|
||||
$this->activity_price = bcadd($this->activity_price, $deduction_price_count, 2);
|
||||
} elseif ($user && $user['user_ship'] == 4) {
|
||||
//更新 为4商户的时候减去商户价格
|
||||
$deduction_price_count = bcmul(bcsub($find['price'], $find['cost'], 2), $item['cart_num'], 2);
|
||||
$this->activity_price = bcadd($this->activity_price, $deduction_price_count, 2);
|
||||
} else {
|
||||
$this->activity_price = 0;
|
||||
}
|
||||
}
|
||||
|
||||
$item['goods_total_price'] = bcmul($item['cart_num'], $find['price'], 2);
|
||||
$this->total_price = bcadd($this->total_price, $item['goods_total_price'], 2);
|
||||
$item['imgs'] = $find['image'];
|
||||
|
@ -92,21 +92,6 @@ class OrderLogic extends BaseLogic
|
||||
$cart_select[$k]['total_price'] = bcmul($v['cart_num'], $find['price'], 2); //订单总价
|
||||
$cart_select[$k]['deduction_price'] =self::$activity_price;//抵扣金额
|
||||
$cart_select[$k]['vip'] = 0;
|
||||
if($off_activity!=1){
|
||||
if ($user && $user['user_ship'] == 1) {
|
||||
//更新 会员为1的时候原价减去会员价
|
||||
$deduction_price_count=bcmul(bcsub($find['price'], $find['vip_price'], 2),$v['cart_num'],2);
|
||||
$cart_select[$k]['deduction_price'] =$deduction_price_count;
|
||||
self::$activity_price = bcadd(self::$activity_price, $deduction_price_count, 2);
|
||||
$cart_select[$k]['vip'] =1;
|
||||
}
|
||||
if ($user && $user['user_ship'] == 4) {
|
||||
//更新 为4商户的时候减去商户价格
|
||||
$deduction_price_count=bcmul(bcsub($find['price'], $find['cost'], 2),$v['cart_num'],2);
|
||||
$cart_select[$k]['deduction_price'] =$deduction_price_count;
|
||||
self::$activity_price = bcadd(self::$activity_price, $deduction_price_count, 2);
|
||||
}
|
||||
}
|
||||
|
||||
//利润
|
||||
// $cart_select[$k]['profit'] = bcmul($v['cart_num'], $onePrice, 2); //利润
|
||||
|
@ -85,13 +85,13 @@ class StoreOrderController extends BaseAdminController
|
||||
$params = $this->request->post();
|
||||
$params['store_id'] = $this->adminInfo['store_id'];
|
||||
$user = User::where('id', $params['uid'])->find();
|
||||
$res = StoreOrderLogic::cartIdByOrderInfo($cartId, null, $user, $params);
|
||||
$res = OrderLogic::cartIdByOrderInfo($cartId, null, $user, $params);
|
||||
if ($res == false) {
|
||||
$msg = StoreOrderLogic::getError();
|
||||
$msg = OrderLogic::getError();
|
||||
if ($msg == '购物车为空') {
|
||||
return $this->data([]);
|
||||
}
|
||||
return $this->fail(StoreOrderLogic::getError());
|
||||
return $this->fail(OrderLogic::getError());
|
||||
}
|
||||
return $this->data($res);
|
||||
}
|
||||
@ -105,9 +105,9 @@ class StoreOrderController extends BaseAdminController
|
||||
if (empty($user)) {
|
||||
return $this->fail('无该用户请检查');
|
||||
}
|
||||
$order = StoreOrderLogic::cartIdByOrderInfo($params['cart_id'], null, $user, $params);
|
||||
$order = OrderLogic::cartIdByOrderInfo($params['cart_id'], null, $user, $params);
|
||||
if (!$order) {
|
||||
return $this->fail(StoreOrderLogic::getError());
|
||||
return $this->fail(OrderLogic::getError());
|
||||
}
|
||||
if ($params['type'] == 1) {
|
||||
if ($order['order']['pay_price'] > $user['purchase_funds']) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user