diff --git a/app/Http/Controllers/Admin/ConfigController.php b/app/Http/Controllers/Admin/ConfigController.php index 94d4541c..65a3ccbd 100755 --- a/app/Http/Controllers/Admin/ConfigController.php +++ b/app/Http/Controllers/Admin/ConfigController.php @@ -18,7 +18,8 @@ class ConfigController extends Controller 'invite_force' => (int)config('v2board.invite_force', 0), 'invite_commission' => config('v2board.invite_commission', 10), 'invite_gen_limit' => config('v2board.invite_gen_limit', 5), - 'invite_never_expire' => config('v2board.invite_never_expire', 0) + 'invite_never_expire' => config('v2board.invite_never_expire', 0), + 'commission_first_time_enable' => config('v2board.commission_first_time_enable', 1) ], 'site' => [ 'safe_mode_enable' => (int)config('v2board.safe_mode_enable', 0), diff --git a/app/Http/Controllers/User/OrderController.php b/app/Http/Controllers/User/OrderController.php index 3bf45d8e..8c6c0b1f 100755 --- a/app/Http/Controllers/User/OrderController.php +++ b/app/Http/Controllers/User/OrderController.php @@ -206,12 +206,14 @@ class OrderController extends Controller } // invite process if ($user->invite_user_id && $order->total_amount > 0) { - $order->invite_user_id = $user->invite_user_id; - $inviter = User::find($user->invite_user_id); - if ($inviter && $inviter->commission_rate) { - $order->commission_balance = $order->total_amount * ($inviter->commission_rate / 100); - } else { - $order->commission_balance = $order->total_amount * (config('v2board.invite_commission', 10) / 100); + if (!((int)config('v2board.commission_first_time', 1) && Order::where('user_id', $user->id)->first())) { + $order->invite_user_id = $user->invite_user_id; + $inviter = User::find($user->invite_user_id); + if ($inviter && $inviter->commission_rate) { + $order->commission_balance = $order->total_amount * ($inviter->commission_rate / 100); + } else { + $order->commission_balance = $order->total_amount * (config('v2board.invite_commission', 10) / 100); + } } } if (!$order->save()) { diff --git a/app/Http/Requests/Admin/ConfigSave.php b/app/Http/Requests/Admin/ConfigSave.php index 84c608f5..5aca0f4d 100755 --- a/app/Http/Requests/Admin/ConfigSave.php +++ b/app/Http/Requests/Admin/ConfigSave.php @@ -7,11 +7,14 @@ use Illuminate\Foundation\Http\FormRequest; class ConfigSave extends FormRequest { CONST RULES = [ + // invite & commission 'safe_mode_enable' => 'in:0,1', 'invite_force' => 'in:0,1', 'invite_commission' => 'integer', 'invite_gen_limit' => 'integer', 'invite_never_expire' => 'in:0,1', + 'commission_first_time_enable' => 'in:0,1', + // site 'stop_register' => 'in:0,1', 'email_verify' => 'in:0,1', 'app_name' => '',