feat: 修改订单逻辑增加订单总价和订单支付金额字段
This commit is contained in:
parent
0b8c373c79
commit
25ad3924a1
@ -38,7 +38,8 @@ use Yansongda\Pay\Event\PayEnd;
|
|||||||
*/
|
*/
|
||||||
class OrderLogic extends BaseLogic
|
class OrderLogic extends BaseLogic
|
||||||
{
|
{
|
||||||
public static $total;
|
public static $total_price;
|
||||||
|
public static $pay_price;
|
||||||
public static $cost;
|
public static $cost;
|
||||||
public static $profit;
|
public static $profit;
|
||||||
public static $activity_price;
|
public static $activity_price;
|
||||||
@ -58,7 +59,8 @@ class OrderLogic extends BaseLogic
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
self::$total = 0;
|
self::$total_price = 0;
|
||||||
|
self::$pay_price = 0;
|
||||||
self::$cost = 0; //成本
|
self::$cost = 0; //成本
|
||||||
self::$profit = 0; //利润
|
self::$profit = 0; //利润
|
||||||
self::$activity_price = 0; //活动减少
|
self::$activity_price = 0; //活动减少
|
||||||
@ -73,18 +75,18 @@ class OrderLogic extends BaseLogic
|
|||||||
unset($cart_select[$k]['id']);
|
unset($cart_select[$k]['id']);
|
||||||
|
|
||||||
$cart_select[$k]['price'] = $find['price'];
|
$cart_select[$k]['price'] = $find['price'];
|
||||||
|
$cart_select[$k]['total_price'] = bcmul($v['cart_num'], $find['price'], 2); //订单总价
|
||||||
if (isset($check) && $check['status'] == 1) {
|
if (isset($check) && $check['status'] == 1) {
|
||||||
//零售价*折扣率
|
//零售价*折扣率
|
||||||
$activity_price = bcmul($find['price'], 0.9, 2);
|
$activity_price = bcmul($find['price'], 0.9, 2);
|
||||||
self::$activity_price = bcadd(self::$activity_price, bcsub($find['price'], $activity_price, 2), 2);
|
self::$activity_price = bcadd(self::$activity_price, bcmul(bcsub($find['price'], $activity_price, 2),$v['cart_num'], 2), 2);
|
||||||
$find['price'] = $activity_price;
|
$find['price'] = $activity_price;
|
||||||
}
|
}
|
||||||
//利润
|
//利润
|
||||||
$onePrice = bcsub($find['price'], $find['cost'], 2);
|
$onePrice = bcsub($find['price'], $find['cost'], 2);
|
||||||
$cart_select[$k]['profit'] = bcmul($v['cart_num'], $onePrice, 2); //利润
|
$cart_select[$k]['profit'] = bcmul($v['cart_num'], $onePrice, 2); //利润
|
||||||
$cart_select[$k]['cost'] = bcmul($v['cart_num'], $find['cost'], 2) ?? 0;
|
$cart_select[$k]['cost'] = bcmul($v['cart_num'], $find['cost'], 2) ?? 0; //成本
|
||||||
$cart_select[$k]['total'] = bcmul($v['cart_num'], $find['price'], 2); //钱
|
$cart_select[$k]['pay_price'] = bcmul($v['cart_num'], $find['price'], 2); //订单支付金额
|
||||||
$cart_select[$k]['total_price'] = bcmul($v['cart_num'], $find['price'], 2); //钱
|
|
||||||
$cart_select[$k]['product_id'] = $find['product_id'];
|
$cart_select[$k]['product_id'] = $find['product_id'];
|
||||||
$cart_select[$k]['old_cart_id'] = $v['id'];
|
$cart_select[$k]['old_cart_id'] = $v['id'];
|
||||||
$cart_select[$k]['cart_num'] = $v['cart_num'];
|
$cart_select[$k]['cart_num'] = $v['cart_num'];
|
||||||
@ -102,14 +104,15 @@ class OrderLogic extends BaseLogic
|
|||||||
//理论上每笔都是拆分了
|
//理论上每笔都是拆分了
|
||||||
$cart_select[$k]['name'] = $find['store_name'];
|
$cart_select[$k]['name'] = $find['store_name'];
|
||||||
$cart_select[$k]['imgs'] = $find['image'];
|
$cart_select[$k]['imgs'] = $find['image'];
|
||||||
$cart_select[$k]['store_id'] = $params['store_id']??0;
|
$cart_select[$k]['store_id'] = $params['store_id'] ?? 0;
|
||||||
$cart_select[$k]['unit_name'] = StoreProductUnit::where(['id' => $find['unit']])->value('name');
|
$cart_select[$k]['unit_name'] = StoreProductUnit::where(['id' => $find['unit']])->value('name');
|
||||||
self::$total = bcadd(self::$total, $cart_select[$k]['total'], 2);
|
self::$total_price = bcadd(self::$total_price, $cart_select[$k]['total_price'], 2);
|
||||||
|
self::$pay_price = bcadd(self::$pay_price, $cart_select[$k]['pay_price'], 2);
|
||||||
self::$cost = bcadd(self::$cost, $cart_select[$k]['cost'], 2);
|
self::$cost = bcadd(self::$cost, $cart_select[$k]['cost'], 2);
|
||||||
self::$profit = bcadd(self::$profit, $cart_select[$k]['profit'], 2);
|
self::$profit = bcadd(self::$profit, $cart_select[$k]['profit'], 2);
|
||||||
}
|
}
|
||||||
//TODO 收单打9.9折 会员按照比例打折 等级按照充值去升级
|
//TODO 收单打9.9折 会员按照比例打折 等级按照充值去升级
|
||||||
$pay_price = self::$total;
|
$pay_price = self::$pay_price;
|
||||||
// $check = StoreOrder::where('uid',\request()->userId)->count();//首单逻辑
|
// $check = StoreOrder::where('uid',\request()->userId)->count();//首单逻辑
|
||||||
$vipPrice = 0;
|
$vipPrice = 0;
|
||||||
// if (isset($check) && $check['status'] == 1) {
|
// if (isset($check) && $check['status'] == 1) {
|
||||||
@ -153,7 +156,7 @@ class OrderLogic extends BaseLogic
|
|||||||
$order = [
|
$order = [
|
||||||
'create_time' => time(),
|
'create_time' => time(),
|
||||||
'order_id' => getNewOrderId('PF'),
|
'order_id' => getNewOrderId('PF'),
|
||||||
'total_price' => self::$total, //总价
|
'total_price' => self::$total_price, //总价
|
||||||
'cost' => self::$cost, //成本价
|
'cost' => self::$cost, //成本价
|
||||||
'profit' => self::$profit, //利润
|
'profit' => self::$profit, //利润
|
||||||
'pay_price' => $pay_price, //后期可能有降价抵扣
|
'pay_price' => $pay_price, //后期可能有降价抵扣
|
||||||
@ -167,6 +170,8 @@ class OrderLogic extends BaseLogic
|
|||||||
'activity' => '减免',
|
'activity' => '减免',
|
||||||
'activity_price' => self::$activity_price,
|
'activity_price' => self::$activity_price,
|
||||||
'activities' => $check['status'],
|
'activities' => $check['status'],
|
||||||
|
'deduction_price' => self::$activity_price
|
||||||
|
|
||||||
];
|
];
|
||||||
$order['default_delivery'] = 0;
|
$order['default_delivery'] = 0;
|
||||||
if ($params['store_id']) {
|
if ($params['store_id']) {
|
||||||
@ -192,7 +197,6 @@ class OrderLogic extends BaseLogic
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
$_order = $orderInfo['order'];
|
$_order = $orderInfo['order'];
|
||||||
$_order['deduction_price'] = 0;
|
|
||||||
$_order['uid'] = request()->userId;
|
$_order['uid'] = request()->userId;
|
||||||
$user = User::where('id', \request()->userId)->find();
|
$user = User::where('id', \request()->userId)->find();
|
||||||
$_order['real_name'] = $user['real_name'];
|
$_order['real_name'] = $user['real_name'];
|
||||||
@ -212,7 +216,7 @@ class OrderLogic extends BaseLogic
|
|||||||
$_order['user_address'] = $address['detail'];
|
$_order['user_address'] = $address['detail'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if($params['shipping_type'] == 2){
|
if ($params['shipping_type'] == 2) {
|
||||||
$_order['status'] = 1;
|
$_order['status'] = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -338,7 +342,7 @@ class OrderLogic extends BaseLogic
|
|||||||
if ($find) {
|
if ($find) {
|
||||||
|
|
||||||
$find['goods_list'] = StoreOrderCartInfo::where('oid', $find['id'])
|
$find['goods_list'] = StoreOrderCartInfo::where('oid', $find['id'])
|
||||||
->field('product_id,cart_num nums,store_id')->select()->each(function ($item) use($find) {
|
->field('product_id,cart_num nums,store_id')->select()->each(function ($item) use ($find) {
|
||||||
$find = StoreBranchProduct::where('product_id', $item['product_id'])->where('store_id', $find['store_id'])->find();
|
$find = StoreBranchProduct::where('product_id', $item['product_id'])->where('store_id', $find['store_id'])->find();
|
||||||
$item['store_name'] = $find['store_name'];
|
$item['store_name'] = $find['store_name'];
|
||||||
$item['image'] = $find['image'];
|
$item['image'] = $find['image'];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user