• File: WalletExport.php
  • Full Path: /var/www/imaliapitest/app/Exports/WalletExport.php
  • Date Modified: 05/19/2025 4:29 PM
  • File size: 1.69 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php

namespace App\Exports;

use App\Imali\ImaliAccount;
use App\Wallet;
use App\WithdrawalsRequest;
use Maatwebsite\Excel\Concerns\FromCollection;
use Maatwebsite\Excel\Concerns\WithHeadings;

class WalletExport implements FromCollection, WithHeadings
{
    /**
    * @return \Illuminate\Support\Collection
    */


    public function collection()
    { 
        $withdrawals = WithdrawalsRequest::query()
            ->join('users', 'users.id', 'withdrawals_requests.user_id')
            ->join('wallets', 'wallets.id', 'withdrawals_requests.wallets_id')
            ->where('withdrawals_requests.status', 'pending')
            ->select('users.name', 'withdrawals_requests.amount',
             'withdrawals_requests.description', 'withdrawals_requests.account_number')
            ->get()->toArray();

            $transactions = [];

            if(count($withdrawals) > 0){
                for ($i=0; $i < count($withdrawals) ; $i++) { 
                    $wd = $withdrawals[$i];

                    $transac = $wd['account_number'];

                    $transac .=','. $wd['name'] . ','. $wd['amount'] . ','. $wd['description'];

                    $value =["value".$i => $transac];

                    array_push($transactions,$value);

                }
            }

            return collect($transactions);
    }


    protected static $logAttributes = [
        'imali_account', 'name', 'amount', 'description'
    ];

    public function headings():array{
//ContaBeneficiário,NomeBeneficiário,Montante,DescritivoDebito
        return ['ContaBeneficiário,NomeBeneficiário,Montante,DescritivoDebito'];
       // return ['ContaBeneficiário,NomeBeneficiário,Montante,DescritivoDebito'];
    }
}