转接方分账

This commit is contained in:
李琦
2026-02-07 16:32:21 +08:00
parent aff36baaaa
commit 0297899367

View File

@@ -338,8 +338,8 @@ class LedgerForm extends BaseModel
if ($isTransferPrescription) {
/*
* 转诊处方分账逻辑:
* 1. 承接方委托诊所分走15%发起方(转诊诊所)的利润
* 2. 发起方获得85%的利润
* 1. 发起方(转诊诊所)获得100%的利润
* 2. 承接方(委托诊所)不分账
* 3. 平台分账保持不变(成本价)
*/
@@ -367,10 +367,10 @@ class LedgerForm extends BaseModel
}
// 计算分账金额:从总利润中分配
$delegateProfit = round($totalProfit * 0.15, 2); // 承接方分得15%的总利润
$transferProfit = round($totalProfit * 0.85, 2); // 发起方分得85%的总利润
// 转诊处方分账逻辑全部利润100%)分给发起方(转诊诊所),承接方不分账
$transferProfit = round($totalProfit, 2); // 发起方分得100%的总利润(全部利润)
// 第二遍遍历:按每个药品的利润占比,分配承接方和发起方的分账金额
// 第二遍遍历:按每个药品的利润占比,分配发起方的分账金额
foreach($itemData as $index => $item) {
$ledger = [];
@@ -389,10 +389,9 @@ class LedgerForm extends BaseModel
} else {
// 按该药品利润占比分配总利润
$itemProfitRatio = $totalProfit > 0 ? ($itemProfits[$index] / $totalProfit) : 0;
$itemDelegateProfit = round($delegateProfit * $itemProfitRatio, 2); // 该药品承接方应分得的金额
$itemTransferProfit = round($transferProfit * $itemProfitRatio, 2); // 该药品发起方应分得的金额
$itemTransferProfit = round($transferProfit * $itemProfitRatio, 2); // 该药品发起方应分得的金额100%利润)
// 创建分账记录:发起方(转诊诊所)分得85%利润
// 创建分账记录:发起方(转诊诊所)分得100%利润
$ledger[] = [
'order_id' => $this->order_id,
'user_id' => $transferStoreId, // 发起方诊所ID
@@ -404,25 +403,7 @@ class LedgerForm extends BaseModel
'drug_id' => $item['drug_id'],
'xd_time' => $productOrder->created_at,
'number' => $item['number'],
'money' => $itemTransferProfit, // 发起方获得85%利润
'status' => 0,
'created_at' => $time,
'updated_at' => $time
];
// 创建分账记录承接方委托诊所分得15%利润
$ledger[] = [
'order_id' => $this->order_id,
'user_id' => $delegateStoreId, // 承接方诊所ID
'user_type' => 1, //门店
'order_type' => 1,//产品订单
'fee_type' => 1,//药品费用
'su_id' => $productOrder->su_id,
'drugstore_id' => $productOrder->store_id,
'drug_id' => $item['drug_id'],
'xd_time' => $productOrder->created_at,
'number' => $item['number'],
'money' => $itemDelegateProfit, // 承接方获得15%利润
'money' => $itemTransferProfit, // 发起方获得100%利润
'status' => 0,
'created_at' => $time,
'updated_at' => $time