Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
WIKIPEDIA
/
imaliapi
/
app
/
Http
/
Controllers
:
ImaliAccountController.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php namespace App\Http\Controllers; use App\Bank\Payment; use App\Imali\ImaliAccount; use App\Imali\Transfer; use App\TransferHistory; use App\User; use Illuminate\Http\Request; class ImaliAccountController extends Controller { public function getImaliByPhoneNumber($phone) { $imali = ImaliAccount::query() ->join('users', 'users.id', '=', 'imali_accounts.user_id') ->where('users.phone', $phone) ->select('users.name', 'imali_accounts.account_number') ->first(); if ($imali) { return response()->json($imali); } else { return response()->json(['message' => 'Conta não encontrada'], 404); } } public function getContacts(Request $request) { $contacts = User::query() ->select('phone') ->where('phone', '<>', $request->user()->phone) ->get(); return response()->json(['data' => $contacts]); } public function getContacts2(Request $request) { $contacts = User::query() ->select('phone') ->where('phone', '<>', $request->user()->phone) ->get(); return response()->json($contacts); } public function getImaliTransactions($datainicial, $datafinal, $imali, $type) { $data1 = (string)$datainicial; $data2 = (string)$datafinal; // return (string)$datafinal. ''.''.$datainicial; // return $data1; if ($datainicial === $datafinal) { // return "Entra"; if ($type === 'transfer') { $transfers = TransferHistory::query() ->join('users', 'users.id', '=', 'transfer_histories.user_id') ->join('users as receiver', 'receiver.id', '=', 'transfer_histories.client_id') ->join('imali_accounts', 'imali_accounts.user_id', 'transfer_histories.user_id') ->orderBy('transfer_histories.created_at', 'desc') ->whereDate('transfer_histories.created_at', $datafinal) ->where('imali_accounts.account_number', $imali) ->select('transfer_histories.*', 'receiver.name as reciever_name', 'users.name as sender_name', 'imali_accounts.account_number as sender_account') ->get(); return response()->json(['data' => $transfers], 200); } if ($type === 'payment') { $imaliA = ImaliAccount::query() ->where('account_number', $imali) ->first(); $payments = Payment::query()->join('users', 'users.id', '=', 'payments.sender_id') ->join('stores', 'stores.id', '=', 'payments.store_id') ->join('imali_accounts', 'imali_accounts.user_id', 'payments.sender_id') ->where('payments.sender_id', $imaliA->user_id) ->orderBy('payments.created_at', 'desc') ->whereDate('payments.created_at', $datafinal) ->select('payments.*', 'users.name as client_name', 'stores.name as merchant_name', 'stores.account_number as merchant_account', 'imali_accounts.account_number as client_account') ->get(); return response()->json(['data' => $payments], 200); } if ($type === 'recharge') { $imaliA = ImaliAccount::query() ->where('account_number', $imali) ->first(); $recharges = ImaliAccount::query() ->join('users', 'users.id', '=', 'imali_accounts.user_id') ->join('recharge_imali_accounts', 'recharge_imali_accounts.imali_account_id', '=', 'imali_accounts.user_id') ->orderBy('recharge_imali_accounts.created_at', 'desc') // ->where('recharge_imali_accounts.imali_account_id', $imaliA->id) ->whereDate('recharge_imali_accounts.created_at', $datafinal) ->get(); return response()->json(['data' => $recharges], 200); } } else { if ($type === 'transfer') { $transfers = TransferHistory::query() ->join('users', 'users.id', '=', 'transfer_histories.user_id') ->join('users as receiver', 'receiver.id', '=', 'transfer_histories.client_id') ->join('imali_accounts', 'imali_accounts.user_id', 'transfer_histories.user_id') ->orderBy('transfer_histories.created_at', 'desc') // ->whereBetween('transfer_histories.created_at', [$datainicial, $datafinal]) ->whereDate('transfer_histories.created_at', '>=', $datainicial) ->whereDate('transfer_histories.created_at', '<=', $datafinal) ->where('imali_accounts.account_number', $imali) ->select('transfer_histories.*', 'receiver.name as reciever_name', 'users.name as sender_name', 'imali_accounts.account_number as sender_account') ->get(); return response()->json(['data' => $transfers], 200); } if ($type === 'payment') { $imaliA = ImaliAccount::query() ->where('account_number', $imali) ->first(); $payments = Payment::query()->join('users', 'users.id', '=', 'payments.sender_id') ->join('stores', 'stores.id', '=', 'payments.store_id') ->join('imali_accounts', 'imali_accounts.user_id', 'payments.sender_id') ->where('payments.sender_id', $imaliA->user_id) ->orderBy('payments.created_at', 'desc') // ->whereBetween('payments.created_at', [$datainicial, $datafinal]) ->whereDate('payments.created_at', '>=', $datainicial) ->whereDate('payments.created_at', '<=', $datafinal) ->select('payments.*', 'users.name as client_name', 'stores.name as merchant_name', 'stores.account_number as merchant_account', 'imali_accounts.account_number as client_account') ->get(); return response()->json(['data' => $payments], 200); } if ($type === 'recharge') { $imaliA = ImaliAccount::query() ->where('account_number', $imali) ->first(); $recharges = ImaliAccount::query() ->join('users', 'users.id', '=', 'imali_accounts.user_id') ->join('recharge_imali_accounts', 'recharge_imali_accounts.imali_account_id', '=', 'imali_accounts.user_id') ->orderBy('recharge_imali_accounts.created_at', 'desc') ->where('recharge_imali_accounts.imali_account_id', $imaliA->id) // ->whereBetween('recharge_imali_accounts.created_at', [$datainicial, $datafinal]) ->whereDate('recharge_imali_accounts.created_at', '>=', $datainicial) ->whereDate('recharge_imali_accounts.created_at', '<=', $datafinal) ->get(); return response()->json(['data' => $recharges], 200); } // return response()->json(['data' => $transfers, 'payments' => $payments, 'recharges' => $recharges], 200); } } public function updateKyc(Request $request) { $kyc = ImaliAccount::query() ->where('account_number', $request->account_number) ->first(); if ($kyc) { $kyc->update(['imali_account_config' => $request->kyc_id]); return response()->json(['message' => 'kyc actualizado com Sucesso']); } else { return response()->json(['Conta não encontrada'],404); } } }