You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

82 lines
1.8 KiB

<?php
class SalesmanBonus
{
const REPAIR_BONUS_KIND = 'repair';
const REBUILD_BONUS_KIND = 'rebuild';
const CONTRACT_BONUS_KIND = 'contract';
#定金比例
const DEPOSIT_RATE = 0.3;
#出货比例
const SHIPMENT_RATE = 0.5;
#验收比例
const ACCEPTANCE_RATE = 0.2;
#修理奖金系数
const REPAIR_BONUS_COEFFICIENT = 0.06;
#汰改奖金系数
const REBUILD_BONUS_COEFFICIENT = 0.018;
#计算奖金
/**
*
*$data= (
* 'yyyymm',
* 'customer_id',
* 'item_no',
* 'amount',
* 'amount_kind',
* 'remark',
* 'salesman',
* 'cost',
* 'contract_kind'
* )
*/
static function bonus($data = [])
{
switch ($data['amount_kind']) {
#保养款
case '1':
return self::contractBonus($data);
break;
#修理款
case '2':
return ($data['amount'] - $data['cost']) * SalesmanBonus::REPAIR_BONUS_COEFFICIENT;
break;
#定金
case '3':
return 0;
break;
#出货款
case '4':
return 0;
break;
#验收款
case '5':
return 0;
break;
default:
return 0;
}
// $func = $bonusKind . "Bonus";
// return call_user_func(array('SalesmanBonus', $func), $data);
}
#修理奖金
static function repairBonus($data)
{
var_dump($data);
}
#修理奖金
static function rebuildBonus($data)
{
var_dump($data);
}
#契约奖金
static function contractBonus($data)
{
var_dump($data);
}
}