更新支付流程
This commit is contained in:
parent
a991fc0789
commit
f1a67ff8d7
@ -328,6 +328,34 @@ class StoreOrderRepository extends BaseRepository
|
|||||||
'mer_id' => $order->mer_id,
|
'mer_id' => $order->mer_id,
|
||||||
'financial_record_sn' => $financeSn . ($i++)
|
'financial_record_sn' => $financeSn . ($i++)
|
||||||
];
|
];
|
||||||
|
//市级供应链
|
||||||
|
$product_mer_id = Db::name('store_order_product')->where('order_id', $order->order_id)->value('product_mer_id');
|
||||||
|
if ($product_mer_id) {
|
||||||
|
//市级供应链押金计算
|
||||||
|
if ($_payPrice > 0) {
|
||||||
|
/** @var MerchantRepository $merchantRepo */
|
||||||
|
$merchantRepo = app()->make(MerchantRepository::class);
|
||||||
|
$merchantRepo->merId = $product_mer_id;
|
||||||
|
$merchantRepo->forceMargin = false;
|
||||||
|
[$_payPrice, $a, $increase] = $merchantRepo->autoMargin($_payPrice, $order, $finance, $financeSn, $i++);
|
||||||
|
}
|
||||||
|
$finance[] = [
|
||||||
|
'order_id' => $order->order_id,
|
||||||
|
'order_sn' => $order->order_sn,
|
||||||
|
'user_info' => $groupOrder->user->nickname,
|
||||||
|
'user_id' => $uid,
|
||||||
|
'financial_type' => 'supply_chain',
|
||||||
|
'financial_pm' => 0,
|
||||||
|
'type' => 1,
|
||||||
|
'number' => $_payPrice,
|
||||||
|
'mer_id' => $product_mer_id,
|
||||||
|
'financial_record_sn' => $financeSn . (($i++)+1)
|
||||||
|
];
|
||||||
|
if (!$is_combine) {
|
||||||
|
app()->make(MerchantRepository::class)->addLockMoney($product_mer_id, 'order', $order->order_id, $_payPrice);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//计算手续费
|
//计算手续费
|
||||||
$_order_rate = bcsub($order->pay_price, $_payPrice, 2);
|
$_order_rate = bcsub($order->pay_price, $_payPrice, 2);
|
||||||
|
|
||||||
@ -390,6 +418,20 @@ class StoreOrderRepository extends BaseRepository
|
|||||||
$merchantRepo->forceMargin = false;
|
$merchantRepo->forceMargin = false;
|
||||||
[$_payPrice, $finance, $increase] = $merchantRepo->autoMargin($_payPrice, $order, $finance, $financeSn, $i++);
|
[$_payPrice, $finance, $increase] = $merchantRepo->autoMargin($_payPrice, $order, $finance, $financeSn, $i++);
|
||||||
}
|
}
|
||||||
|
if ($order->source == 103) {
|
||||||
|
$finance[] = [
|
||||||
|
'order_id' => $order->order_id,
|
||||||
|
'order_sn' => $order->order_sn,
|
||||||
|
'user_info' => $groupOrder->user->nickname,
|
||||||
|
'user_id' => $uid,
|
||||||
|
'financial_type' => 'commission_to_cloud_warehouse',
|
||||||
|
'financial_pm' => 0,
|
||||||
|
'type' => 1,
|
||||||
|
'number' => $_payPrice,
|
||||||
|
'mer_id' => $order->mer_id,
|
||||||
|
'financial_record_sn' => $financeSn . ($i++)
|
||||||
|
];
|
||||||
|
} else {
|
||||||
$finance[] = [
|
$finance[] = [
|
||||||
'order_id' => $order->order_id,
|
'order_id' => $order->order_id,
|
||||||
'order_sn' => $order->order_sn,
|
'order_sn' => $order->order_sn,
|
||||||
@ -402,6 +444,8 @@ class StoreOrderRepository extends BaseRepository
|
|||||||
'mer_id' => $order->mer_id,
|
'mer_id' => $order->mer_id,
|
||||||
'financial_record_sn' => $financeSn . ($i++)
|
'financial_record_sn' => $financeSn . ($i++)
|
||||||
];
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// if ($order->platform_coupon_price > 0) {
|
// if ($order->platform_coupon_price > 0) {
|
||||||
// $finance[] = [
|
// $finance[] = [
|
||||||
@ -483,9 +527,7 @@ class StoreOrderRepository extends BaseRepository
|
|||||||
Queue::push(SendSmsJob::class, ['tempId' => 'ORDER_CREATE', 'phone' => $phone['phone'], 'orderId' => $order->order_id, 'id' => 0]); //短信通知
|
Queue::push(SendSmsJob::class, ['tempId' => 'ORDER_CREATE', 'phone' => $phone['phone'], 'orderId' => $order->order_id, 'id' => 0]); //短信通知
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
if (count($groupOrder['give_coupon_ids']) > 0) {
|
if (count($groupOrder['give_coupon_ids']) > 0) {
|
||||||
@ -2738,7 +2780,6 @@ class StoreOrderRepository extends BaseRepository
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
$datas['product_id'] = $product_id ?? 0;
|
$datas['product_id'] = $product_id ?? 0;
|
||||||
$datas['mer_id'] = $merId;
|
$datas['mer_id'] = $merId;
|
||||||
|
@ -714,13 +714,10 @@ class FinancialRecordRepository extends BaseRepository
|
|||||||
//平台手续费 =( order_charge + 预售手续费 presell_charge - 平台退给商户的手续费 refund_charge )
|
//平台手续费 =( order_charge + 预售手续费 presell_charge - 平台退给商户的手续费 refund_charge )
|
||||||
$number_1 = bcsub($data['number_order_charge'], $data['number_charge'], 2);
|
$number_1 = bcsub($data['number_order_charge'], $data['number_charge'], 2);
|
||||||
if($data['number_supply_chain']>0){
|
if($data['number_supply_chain']>0){
|
||||||
$financialType = ['order_true'];
|
$financialType = ['commission_to_cloud_warehouse'];
|
||||||
$where['type']=2;
|
[$data['count_commission_to_cloud_warehouse'], $data['number_commission_to_cloud_warehouse']] = $this->dao->getDataByType($type, $where, $date, $financialType);
|
||||||
$where['mer_id']=$where['is_mer'];
|
|
||||||
unset($where['is_mer']);
|
|
||||||
[$data['count_order'], $data['number_order']] = $this->dao->getDataByType($type, $where, $date, $financialType);
|
|
||||||
$number_1=bcadd($number_1, $data['number_supply_chain'], 2);
|
$number_1=bcadd($number_1, $data['number_supply_chain'], 2);
|
||||||
$number_1=bcsub( $number_1, $data['number_order'], 2);
|
$number_1=bcsub( $number_1, $data['number_commission_to_cloud_warehouse'], 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
//退回收入 refund_order + 退回佣金
|
//退回收入 refund_order + 退回佣金
|
||||||
|
@ -687,9 +687,9 @@ class MerchantRepository extends BaseRepository
|
|||||||
public function autoMargin($income, $order, $finance, $financeSn, $index = 0)
|
public function autoMargin($income, $order, $finance, $financeSn, $index = 0)
|
||||||
{
|
{
|
||||||
$merchant = Merchant::find($this->merId);
|
$merchant = Merchant::find($this->merId);
|
||||||
$margin_type = Db::name('MerchantType')->where('mer_type_id', $merchant['type_id'])->value('margin');
|
// $margin_type = Db::name('MerchantType')->where('mer_type_id', $merchant['type_id'])->value('margin');
|
||||||
//商户押金大于支付押金 或者forceMargin==false 直接返回 不计算押金
|
//商户押金大于支付押金 或者forceMargin==false 直接返回 不计算押金
|
||||||
if ($merchant['paid_margin']>= $margin_type|| ($this->forceMargin === false && $merchant['auto_margin_rate'] == 0)) {
|
if ($merchant['paid_margin']>= $merchant['margin']|| ($this->forceMargin === false && $merchant['auto_margin_rate'] == 0)) {
|
||||||
return [$income, $finance, false];
|
return [$income, $finance, false];
|
||||||
}
|
}
|
||||||
$rate = $this->forceMargin ? 100 : $merchant['auto_margin_rate'];
|
$rate = $this->forceMargin ? 100 : $merchant['auto_margin_rate'];
|
||||||
@ -712,7 +712,7 @@ class MerchantRepository extends BaseRepository
|
|||||||
'mer_id' => $this->merId,
|
'mer_id' => $this->merId,
|
||||||
'financial_record_sn' => $financeSn . $index
|
'financial_record_sn' => $financeSn . $index
|
||||||
];
|
];
|
||||||
if(bcadd($merchant['paid_margin'],$margin)>=$margin_type){
|
if(bcadd($merchant['paid_margin'],$margin)>=$merchant['margin']){
|
||||||
$is_margin=10;
|
$is_margin=10;
|
||||||
}else{
|
}else{
|
||||||
$is_margin=1;
|
$is_margin=1;
|
||||||
|
@ -366,8 +366,8 @@ class ExcelService
|
|||||||
'commission_to_village_refund' => '退回平台佣金',
|
'commission_to_village_refund' => '退回平台佣金',
|
||||||
'commission_to_town_refund' => '退回平台佣金',
|
'commission_to_town_refund' => '退回平台佣金',
|
||||||
'auto_margin_refund' => '退回押金',
|
'auto_margin_refund' => '退回押金',
|
||||||
'commission_to_entry_merchant' => '订单平台佣金',
|
'commission_to_entry_merchant' => '订单平台佣金',//入口店铺佣金
|
||||||
'commission_to_cloud_warehouse' => '订单平台佣金',
|
'commission_to_cloud_warehouse' => '订单平台佣金',//云仓佣金
|
||||||
'commission_to_entry_merchant_refund' => '退回平台佣金',
|
'commission_to_entry_merchant_refund' => '退回平台佣金',
|
||||||
'commission_to_cloud_warehouse_refund' => '退回平台佣金',
|
'commission_to_cloud_warehouse_refund' => '退回平台佣金',
|
||||||
'first_order_commission' => '首单拉新',
|
'first_order_commission' => '首单拉新',
|
||||||
|
Loading…
x
Reference in New Issue
Block a user