6
0
Fork 0
jiqu-library-server/app/Services/Dealer/ManagerSubsidyService.php

44 lines
1.2 KiB
PHP

<?php
namespace App\Services\Dealer;
use App\Enums\DealerEarningStatus;
use App\Enums\DealerManagerSubsidyStatus;
use App\Enums\DealerWalletAction;
use App\Exceptions\BizException;
use App\Models\DealerEarning;
use App\Models\DealerManagerSubsidy;
class ManagerSubsidyService
{
/**
* @param \App\Models\DealerManagerSubsidy $dealerManagerSubsidy
* @return void
*/
public function pay(DealerManagerSubsidy $dealerManagerSubsidy)
{
if (! $dealerManagerSubsidy->isPending()) {
throw new BizException('管理者津贴 不是待付款状态');
}
$dealerManagerSubsidy->update([
'status' => DealerManagerSubsidyStatus::Completed,
]);
$dealerManagerSubsidy->earning->update([
'pay_way' => DealerEarning::PAY_WAY_WALLET,
'pay_at' => now(),
'pay_info' => null,
'status' => DealerEarningStatus::Completed,
]);
(new WalletService())->changeBalance(
$dealerManagerSubsidy->user,
$dealerManagerSubsidy->real_amount,
DealerWalletAction::ManagerSubsidyIn,
'收入-管理者津贴',
$dealerManagerSubsidy
);
}
}