<?php

namespace App\Commands\Clients;

use App\Commands\Command;
use Illuminate\Support\Facades\DB;

class GenerateBaseAccountCommand
{
    /**
     * Create a new class instance.
     */
    public function __construct()
    {
        //
    }

    /**
     * Execute the command.
     */
    public function execute($client): void
    {
        DB::transaction(function () use ($client) {
            $client->accounts()->createMany([
                [
                    'account_type_id' => 1,
                    'account' => 'Cash',
                    'normal_balance' => 'debit',
                ],
                [
                    'account_type_id' => 1,
                    'account' => 'Input Tax',
                    'normal_balance' => 'debit',
                ],
                [
                    'account_type_id' => 1,
                    'account' => 'Creditable Withholding Tax',
                    'normal_balance' => 'debit',
                ],
                [
                    'account_type_id' => 2,
                    'account' => 'Output Tax',
                    'normal_balance' => 'credit',
                ],
                [
                    'account_type_id' => 2,
                    'account' => 'Payable Withholding Tax',
                    'normal_balance' => 'credit',
                ],
                [
                    'account_type_id' => 5,
                    'account' => 'Vat Exempt Revenue',
                    'normal_balance' => 'credit',
                ],
                [
                    'account_type_id' => 4,
                    'account' => 'Sales Discount',
                    'normal_balance' => 'debit',
                ],
            ]);
        });
    }

}
