清結算臨時分潤方案

原始計算公式:




以上公式當商戶手續費率小於外判機構成本費率時即會出現負數。

補充計算公式:


現在需要使用補充計算公式解決分潤不能為負數和0的情況。解決方案如下:

  1. 新增按商戶配置的三類外判機構(代理、出機、維護)的定制化分潤比率。
  2. 新增全局默認三類外判機構定制化分潤比率。

注意:三類外判所有配置必須同時存在,即如果為商戶設置了定制化分潤方案,那麼代理、出機、維護三類都必須同時配置,缺一不可。

方案如下(偽碼):

// 計算單個外判分潤
Module Input: amount, merchantRate, costRate, profitRate, customizedRate, defCustomizedRate

//amount: 訂單單價
//merchantRate: 商戶手續費率
//costRate: 外判機構成本費率
//profitRate: 外判機構分潤比率
// customizedRate: 定制化分潤比率
// defCustomizedRate: 默認零限額分潤比率

if exists customizedRate then
    return amount * customizedRate //補充計算公式,商戶設置了定制化值
else 
    const tmp = amount * (merchantRate - costRate) * profitRate; //原始計算公式
    if 0 < tmp then return tmp
    else 
          return amount * defCustomizedRate //補充計算公式,當原始計算結果為0,使用默認分潤。

擴展點:
默認分潤比率按外判機構作為維度來設置。

你可能感兴趣的:(清結算臨時分潤方案)