⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.77
Server IP:
13.127.59.50
Server:
Linux ip-172-31-46-210 5.15.0-1033-aws #37~20.04.1-Ubuntu SMP Fri Mar 17 11:39:30 UTC 2023 x86_64
Server Software:
Apache/2.4.41 (Ubuntu)
PHP Version:
7.4.3-4ubuntu2.29
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
var
/
www
/
ecommerce_pg
/
app
/
Http
/
Controllers
/
Admin
/
View File Name :
BlacklistedAccountCrudController.php
<?php namespace App\Http\Controllers\Admin; use App\Http\Requests\BlacklistedAccountRequest; use Backpack\CRUD\app\Http\Controllers\CrudController; use Backpack\CRUD\app\Library\CrudPanel\CrudPanelFacade as CRUD; use App\Models\BlacklistedAccount; use Illuminate\Http\Request; /** * Class BlacklistedAccountCrudController * @package App\Http\Controllers\Admin * @property-read \Backpack\CRUD\app\Library\CrudPanel\CrudPanel $crud */ class BlacklistedAccountCrudController extends CrudController { use \Backpack\CRUD\app\Http\Controllers\Operations\ListOperation; use \Backpack\CRUD\app\Http\Controllers\Operations\CreateOperation; use \Backpack\CRUD\app\Http\Controllers\Operations\UpdateOperation; use \Backpack\CRUD\app\Http\Controllers\Operations\DeleteOperation; use \Backpack\CRUD\app\Http\Controllers\Operations\ShowOperation; /** * Configure the CrudPanel object. Apply settings to all operations. * * @return void */ public function setup() { CRUD::setModel(\App\Models\BlacklistedAccount::class); CRUD::setRoute(config('backpack.base.route_prefix') . '/blacklistedaccount'); CRUD::setEntityNameStrings('blacklisted account', 'blacklisted accounts'); } /** * Define what happens when the List operation is loaded. * * @see https://backpackforlaravel.com/docs/crud-operation-list-entries * @return void */ protected function setupListOperation() { //CRUD::removeAllButtons(); $this->crud->removeButtons( ['update','delete','show']); CRUD::addColumns([ 'user_id','ac_number','ifsc','phone','email' ]); $this->crud->addFilter([ 'type' => 'text', 'name' => 'user_id', 'label' => 'User ID' ], false, function($value) { $this->crud->addClause('where', 'user_id', '=', $value); }); $this->crud->addFilter([ 'type' => 'text', 'name' => 'username', 'label' => 'Username' ], false, function($value) { CRUD::addClause('whereHas', 'user', function($query) use ($user,$value){ $query->where('username','=',$value); }); }); $this->crud->addFilter([ 'type' => 'text', 'name' => 'account', 'label' => 'Account Number' ], false, function($value) { $this->crud->addClause('where', 'ac_number', '=', $value); }); /** * Columns can be defined using the fluent syntax or array syntax: * - CRUD::column('price')->type('number'); * - CRUD::addColumn(['name' => 'price', 'type' => 'number']); */ } /** * Define what happens when the Create operation is loaded. * * @see https://backpackforlaravel.com/docs/crud-operation-create * @return void */ protected function setupCreateOperation() { CRUD::setValidation(BlacklistedAccountRequest::class); // CRUD::setFromDb(); // fields CRUD::addField([ 'name' => 'ac_number', 'label' => 'Account Number', 'type'=>'text' ]); CRUD::addField([ 'name' => 'ifsc', 'label' => 'IFSC', 'type'=>'text' ]); CRUD::addField([ 'name' => 'user_id', 'label' => 'User ID', 'type'=>'text' ]); CRUD::addField([ 'name' => 'email', 'label' => 'Email', 'type'=>'email' ]); CRUD::addField([ 'name' => 'phone', 'label' => 'Phone', 'type'=>'text' ]); CRUD::addField([ 'name' => 'source', 'type' => 'hidden', 'value' => 'Paynow admin', // this does not work. ]); /** * Fields can be defined using the fluent syntax or array syntax: * - CRUD::field('price')->type('number'); * - CRUD::addField(['name' => 'price', 'type' => 'number'])); */ } /** * Define what happens when the Update operation is loaded. * * @see https://backpackforlaravel.com/docs/crud-operation-update * @return void */ protected function setupUpdateOperation() { $this->setupCreateOperation(); } public function special_whitelist(Request $request) { $user = \App\Models\User::find($request->user_id); if ($user) { $user->special_whitelist = $request->status==1?0:1; $user->save(); } return back(); } public function blacklistUserAccount(Request $requet) { $q = \DB::table('wallet_transactions as wt'); $q->where('type','2'); $q->where('user_id',$requet->user_id); $results = $q->chunkById(5000,function($transactions){ foreach ($transactions as $key => $txn) { $withdrawal_details = json_decode($txn->withdrawal_details,true); $user_id = $txn->user_id; if ($withdrawal_details['ac_number'] && $withdrawal_details['ifsc']) { \DB::table('blacklisted_accounts') ->updateOrInsert( ['user_id' => $user_id, 'ac_number' => $withdrawal_details['ac_number']], ['ifsc' => $withdrawal_details['ifsc']] ); } } }); return true; } public function store(Request $request) { $is_der = BlacklistedAccount::where('ac_number',$request->ac_number)->where('ifsc',$request->ifsc)->first(); if(!$is_der){ $blacklistedaccount = new BlacklistedAccount(); $blacklistedaccount->ifsc=$request->ifsc; $blacklistedaccount->ac_number = $request->ac_number; $blacklistedaccount->user_id=$request->user_id; $blacklistedaccount->phone=$request->phone; $blacklistedaccount->email=$request->email; $blacklistedaccount->source='PayNow admin'; $blacklistedaccount->save(); $data = [ 'email'=>$request->email, 'phone'=>$request->phone, 'ifsc'=>$request->ifsc, 'ac_number'=>$request->ac_number, 'source'=>$request->source, 'user_id'=>$request->user_id ]; $domain_list = [ 2=>'http://127.0.0.1:8001/', 3=>'http://127.0.0.1:8002/', ]; foreach ($domain_list as $key => $value) { $endpoint = $value.'crms/store'; $client = new \GuzzleHttp\Client(); $response = $client->request('POST', $endpoint, [ 'form_params'=>$data, 'force_ip_resolve' => 'v4' ]); $response=json_decode($response->getBody()->getContents(),true); } }else{ \Alert::error(trans('Account is already exists in blacklisted list!'))->flash(); } return redirect('/admin/blacklistedaccount'); } public function postCRMS(Request $request){ $is_der = BlacklistedAccount::where('ac_number',$request->ac_number)->where('ifsc',$request->ifsc)->first(); if(!$is_der){ $blacklistedaccount = new BlacklistedAccount(); $blacklistedaccount->ifsc=$request->ifsc; $blacklistedaccount->ac_number =$request->ac_number; $blacklistedaccount->user_id=$request->user_id; $blacklistedaccount->phone=$request->phone; $blacklistedaccount->email=$request->email; $blacklistedaccount->source=$request->source; $blacklistedaccount->save(); $data = [ 'email'=>$request->email, 'phone'=>$request->phone, 'ifsc'=>$request->ifsc, 'ac_number'=>$request->ac_number, 'source'=>$request->source, 'user_id'=>$request->user_id ]; $domain_list = [ '2'=>'http://127.0.0.1:8001/', '3'=>'http://127.0.0.1:8002/' ]; foreach ($domain_list as $key => $value) { $endpoint = $value.'crms/store'; $client = new \GuzzleHttp\Client(); $response = $client->request('POST', $endpoint, [ 'form_params'=>$data, 'force_ip_resolve' => 'v4' ]); $response=json_decode($response->getBody()->getContents(),true); } $message = 'Account blacklisted successfully'; }else{ $message = 'Account is already exists in blacklisted list'; } return response()->json([ 'response' => $message ]); } }