player_id = $this->player->id; $playerWalletTransfer->platform_id = $this->platform->id; $playerWalletTransfer->department_id = $this->player->department_id; $playerWalletTransfer->type = $type; $playerWalletTransfer->amount = abs($amount); $playerWalletTransfer->reward = abs($reward); $playerWalletTransfer->platform_no = $platformNo; $playerWalletTransfer->tradeno = createOrderNo(); $playerWalletTransfer->save(); $beforeGameAmount = $this->player->wallet->money; $playerDeliveryRecord = new PlayerDeliveryRecord; if ($type == PlayerWalletTransfer::TYPE_OUT) { $this->player->wallet->money = 0; $playerDeliveryRecord->type = PlayerDeliveryRecord::TYPE_GAME_OUT; } if ($type == PlayerWalletTransfer::TYPE_IN) { $this->player->wallet->money = bcadd($this->player->wallet->money, bcadd(abs($amount), abs($reward), 2), 2); $playerDeliveryRecord->type = PlayerDeliveryRecord::TYPE_GAME_IN; } $this->player->push(); //寫入金流明細 $playerDeliveryRecord->player_id = $playerWalletTransfer->player_id; $playerDeliveryRecord->department_id = $playerWalletTransfer->department_id; $playerDeliveryRecord->target = $playerWalletTransfer->getTable(); $playerDeliveryRecord->target_id = $playerWalletTransfer->id; $playerDeliveryRecord->source = 'play_game'; $playerDeliveryRecord->amount = $playerWalletTransfer->amount; $playerDeliveryRecord->amount_before = $beforeGameAmount; $playerDeliveryRecord->amount_after = $this->player->wallet->money; $playerDeliveryRecord->tradeno = ''; $playerDeliveryRecord->remark = ''; $playerDeliveryRecord->save(); } }