• File: VoucherHistoryController.php
  • Full Path: /var/www/imalipartnersapi/app/Http/Controllers/VoucherHistoryController.php
  • Date Modified: 02/07/2023 8:01 PM
  • File size: 3.27 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php

namespace App\Http\Controllers;

use App\Imali\ImaliAccount;
use App\TransactionHistory;
use App\VoucherHistory;
use Illuminate\Http\Request;

class VoucherHistoryController extends Controller
{
    public function getVoucherHistories($datainicial, $datafinal)
    {

        if ($datainicial === $datafinal) {

            $data = VoucherHistory::query()
                ->with(['voucher', 'water', 'credelec', 'user'])
                ->orderByDesc('voucher_histories.created_at')
                ->whereDate('voucher_histories.created_at', '=', $datainicial)
                ->paginate(10);

            $data->makeHidden(['user_id', 'voucher_id', 'credelec_id', 'water_id', 'transfer_history_id', 'payment_id', 'transfer_id', 'recharge_id', 'money_request_id', 'id', 'category_id']);

            foreach ($data as $d) {

                $d->makeHidden([
                    'voucher.id',
                    'voucher.user_id',
                    'voucher.category_id',
                ]);
                $d->makeHidden([
                    'user.id',
                    'user.profile',
                    'user.email',
                    'user.status',
                    'user.photo',
                    'user.email_verified_at',
                    'user.phone_reference',
                    'user.balance_visibility',
                    'user.created_at',
                    'user.updated_at',
                    'user.update_info_status',
                    'user.user_update_info_status',
                    'user.document_id',
                    'user.firebase_token',
                ]);

            }


            return response()->json($data);

        } else {

            $data = VoucherHistory::query()
                ->with(['voucher', 'water', 'credelec', 'user'])
                ->orderByDesc('voucher_histories.created_at')
                ->whereDate('voucher_histories.created_at', '>=', $datainicial)
                ->whereDate('voucher_histories.created_at', '<=', $datafinal)
                ->paginate(10);

            $data->makeHidden(['user_id', 'voucher_id', 'credelec_id', 'water_id', 'transfer_history_id', 'payment_id', 'transfer_id', 'recharge_id', 'money_request_id', 'id', 'category_id']);

            foreach ($data as $d) {
//                $d->makeHidden(['user_id', 'voucher_id', 'credelec_id', 'water_id']);
                $d->makeHidden([
                    'voucher.id',
                    'voucher.user_id',
                    'voucher.category_id',
                ]);
                $d->makeHidden([
                    'user.id',
                    'user.profile',
                    'user.email',
                    'user.status',
                    'user.photo',
                    'user.email_verified_at',
                    'user.phone_reference',
                    'user.balance_visibility',
                    'user.created_at',
                    'user.updated_at',
                    'user.update_info_status',
                    'user.user_update_info_status',
                    'user.document_id',
                    'user.firebase_token',
                ]);

            }


            return response()->json($data);


        }
    }
}