admin-api/app/validate/admin/platformCommission/ConfigValidate.php

46 lines
1.4 KiB
PHP

<?php
namespace app\validate\admin\platformCommission;
use think\Validate;
class ConfigValidate extends Validate
{
protected $failException = true;
protected $rule = [
'is_open|平台抽成' => 'require|in:0,1|rateIsCorrect',
'commission_platform_rate|平台分佣比例' => 'require|float|between:0,100',
'commission_partner_rate|合伙人分佣比例' => 'require|float|between:0,100',
'commission_partner_cycle|合伙人分佣周期' => 'require|in:0,1,2',
'commission_merchants_rate|招商员分佣比例' => 'require|float|between:0,100',
'commission_promoter_rate|推广员分佣比例' => 'require|float|between:0,100',
'commission_integral_release_rate|积分释放比例' => 'require|float|between:0,100',
];
// 判断:开启时 比例总和是否为100
protected function rateIsCorrect($value,$rule,$data = []){
if($data['is_open'] == 1){
// 开启平台抽成
$rateCount = (float)$data['commission_platform_rate'] +
(float)$data['commission_partner_rate'] +
(float)$data['commission_merchants_rate'] +
(float)$data['commission_promoter_rate'] +
(float)$data['commission_integral_release_rate'];
if($rateCount != 100) return '所有抽成分佣比例之和必须为100%';
}
return true;
}
}