56 lines
2.1 KiB
PHP
Executable File
56 lines
2.1 KiB
PHP
Executable File
<?php
|
|
|
|
namespace App\Http\Controllers\Single;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Http\Controllers\SuperController;
|
|
use App\Models\BankAccount;
|
|
use App\Models\Customer;
|
|
use App\Models\User;
|
|
use Illuminate\Http\Request;
|
|
use Symfony\Component\HttpKernel\Exception\UnprocessableEntityHttpException;
|
|
|
|
class BankAccountController extends SuperController
|
|
{
|
|
public function __construct(Request $request)
|
|
{
|
|
$query = BankAccount::where('customer_id', auth('customer')->id());
|
|
$request->request->add(['customer_id' => auth('customer')->id()]);
|
|
parent::__construct(BankAccount::class, [], ['*', BankAccount::$SELECT_STS_STR], null, $query);
|
|
}
|
|
|
|
public function destroy($id)
|
|
{
|
|
$account = BankAccount::findOrFail($id);
|
|
if ($account->sts != 3) {
|
|
throw new UnprocessableEntityHttpException('امکان حذف این کارت بانکی وجود ندارد');
|
|
}
|
|
return parent::destroy($id);
|
|
}
|
|
|
|
public function listActiveBankAccount()
|
|
{
|
|
$query = BankAccount::where('customer_id', auth('customer')->id())
|
|
->whereIn('sts', [1, 2])->get();
|
|
return response()->json($query);
|
|
}
|
|
public function StoreBankAccount(Request $request)
|
|
{
|
|
if (empty($request->shaba_number) || empty($request->bank_name) ){
|
|
// || empty($request->cart_number) || empty($request->account_number)) {
|
|
throw new UnprocessableEntityHttpException('اطلاعات کارت را کامل وارد کنید.');
|
|
}
|
|
$customer = Customer::find(auth('customer')->id());
|
|
$message = "کارت جدیدی برای $customer->name ساخته شد منتظر تایید شما هستیم.";
|
|
$message .= $this->Config('name_fa');
|
|
|
|
User::where('active', 1) ->where('send_sms', 1)->get()->each(function($admin) use ($message) {
|
|
$this->Send($admin->mobile, $message);
|
|
});
|
|
$data = $request->only(['account_number', 'bank_name', 'cart_number', 'shaba_number', 'customer_id']);
|
|
BankAccount::create($data);
|
|
return response()->json($data);
|
|
}
|
|
|
|
}
|