| Path : /var/www/html/mini-moneyexchange/app/Http/Controllers/ |
|
B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H |
| Current File : /var/www/html/mini-moneyexchange/app/Http/Controllers/MoneyExchangeListController.php |
<?php
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Auth;
use Illuminate\Http\Request;
use App\Models\MoneyExchangeList;
use App\Models\MoneyExchangeRate;
use App\Models\Currency;
use App\Models\BankAccount;
use App\Models\User;
use App\Http\Controllers\Controller;
// use Illuminate\Support\Facades\Mail;
// use App\Mail\MoneyExchangeListMail;
class MoneyExchangeListController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$datas = $request->all();
$datas['user_id'] = Auth::id();
$moneyExchangeList = MoneyExchangeList::create($datas);
$currencies = Currency::all();
$users = User::all();
foreach($currencies as $index =>$currency) {
foreach($users as $user){
BankAccount::create([
'bank_id' => 1,
'currency_id' => $currency->id,
'bank_username' => $user->name.'-'.$currency->name,
'bank_number'=>0 ,
'user_id' =>Auth::id(),
'credit'=>0,
'is_bank'=>false,
'responsible_by_user_id' => $user->id,
'is_active' => true
]);
}
}
return redirect()->route('money-exchange-lists.index')->with('success', __('message.money exchange list').' '.__('message.created successfully'));
}
public function index(Request $request)
{
$perpage = $request->get('perpage')??25;
$moneyExchangeLists = MoneyExchangeList::orderBy('order')->paginate($perpage);
return view('moneyExchangeList.moneyExchangeListList', ['moneyExchangeLists'=> $moneyExchangeLists,'perpage'=>$perpage]);
}
public function create()
{
// $money-exchange-lists = MoneyExchangeList::all();
$currencies = Currency::all();
return view('moneyExchangeList.moneyExchangeListForm' , ['currencies'=>$currencies]);
}
public function edit($id)
{
$moneyExchangeList = MoneyExchangeList:: where("id", $id)->first();
$currencies = Currency::all();
return view('moneyExchangeList.moneyExchangeListForm', ['moneyExchangeList'=> $moneyExchangeList,'currencies'=> $currencies]);
}
public function update(Request $request, $id)
{
$moneyExchangeList = MoneyExchangeList::findOrFail($id);
$datas = $request->all();
$moneyExchangeList->update($datas);
$currencies = Currency::all();
$users = User::all();
foreach($currencies as $index =>$currency) {
foreach($users as $user){
$backAccountCheck= BankAccount::where('currency_id',$currency->id)->where('responsible_by_user_id',$user->id)->count();
if(!$backAccountCheck){
BankAccount::create([
'bank_id' => 1,
'currency_id' => $currency->id,
'bank_username' => $user->name.'-'.$currency->name,
'bank_number'=>0 ,
'user_id' =>Auth::id(),
'credit'=>0,
'is_bank'=>false,
'responsible_by_user_id' => $user->id,
'is_active' => true
]);
}
}
}
return redirect()->route('money-exchange-lists.index')->with('success', __('message.money exchange list').' '.__('message.updated successfully'));
}
public function destroy($id)
{
$moneyExchangeList = MoneyExchangeList::findOrFail($id);
if(count($moneyExchangeList->transactions)){
return redirect()->route('money-exchange-lists.index')->with('error', __('message.money exchange list').' '.__("message.can't delete"));
}
$moneyExchangeList->delete();
return redirect()->route('money-exchange-lists.index')->with('success', __('message.money exchange list').' '.__('message.deleted successfully'));
}
public function show(Request $request){
return redirect()->route('money-exchange-lists.index');
}
public function rateCreate($id)
{
$moneyExchangeList = MoneyExchangeList::where('is_active', true)->findOrFail($id);
return view('moneyExchangeList.changeRateForm' , ['moneyExchangeList'=>$moneyExchangeList]);
}
public function rateStore($moneyExchangeListId, Request $request)
{
$datas = $request->all();
$datas['user_id'] = Auth::id();
$datas['money_exchange_list_id'] = $moneyExchangeListId;
$moneyExchangeList = MoneyExchangeList::where('is_active', true)->findOrFail($moneyExchangeListId);
MoneyExchangeRate::create($datas);
$moneyExchangeList->current_rate = $datas['exchange_rate'];
$moneyExchangeList->save();
return redirect()->route('money-exchange-lists.index')->with('success', __('message.money exchange rate').' '.__('message.updated successfully'));
}
public function rateHistory($moneyExchangeListId, Request $request)
{
$perpage = $request->get('perpage')??25;
$moneyExchangeRates = MoneyExchangeRate::where('money_exchange_list_id', $moneyExchangeListId)->orderBy('created_at', 'desc')->paginate($perpage);
return view('moneyExchangeList.rateHistory' , ['moneyExchangeRates'=>$moneyExchangeRates,'perpage'=>$perpage]);
}
}