This commit is contained in:
cuneytsenturk
2017-11-18 15:23:20 +03:00
parent f78237f7ce
commit 6e7b9d6964
9 changed files with 86 additions and 33 deletions

View File

@ -102,14 +102,12 @@ class Invoices extends Controller
*
* @return Response
*/
public function printInvoice($invoice_id)
public function printInvoice(Invoice $invoice)
{
$sub_total = 0;
$tax_total = 0;
$paid = 0;
$invoice = Invoice::where('id', $invoice_id)->first();
foreach ($invoice->items as $item) {
$sub_total += ($item->price * $item->quantity);
$tax_total += ($item->tax * $item->quantity);
@ -136,14 +134,12 @@ class Invoices extends Controller
*
* @return Response
*/
public function pdfInvoice($invoice_id)
public function pdfInvoice(Invoice $invoice)
{
$sub_total = 0;
$tax_total = 0;
$paid = 0;
$invoice = Invoice::where('id', $invoice_id)->first();
foreach ($invoice->items as $item) {
$sub_total += ($item->price * $item->quantity);
$tax_total += ($item->tax * $item->quantity);
@ -177,10 +173,13 @@ class Invoices extends Controller
*
* @return Response
*/
public function payment(PaymentRequest $request)
public function payment(Invoice $invoice, PaymentRequest $request)
{
$invoice = Invoice::where(['id' => $request['invoice_id'], 'customer_id' => Auth::user()->customer->id])->first();
if (!$invoice) {
return response()->json(
);
}
// Fire the event to extend the menu
$result = event(new PaymentGatewayConfirm($request['payment_method'], $invoice));

View File

@ -13,37 +13,55 @@ class Modules
public static function getPaymentMethods()
{
$payment_methods = Cache::get('payment_methods');
$payment_methods = Cache::get('payment_methods.admin');
$customer = auth()->user()->customer;
if ($customer) {
$payment_methods = Cache::get('payment_methods.customer');
}
if (!empty($payment_methods)) {
return $payment_methods;
}
$gateways = array();
$gateways = [];
$methods = [];
// Fire the event to extend the menu
$results = event(new PaymentGatewayListing($gateways));
foreach ($results as $gateways) {
foreach ($gateways as $gateway) {
if ($customer && empty($gateway['customer'])) {
continue;
}
$methods[] = $gateway;
}
}
$sort_order = array();
$sort_order = [];
foreach ($methods as $key => $value) {
$sort_order[$key] = $value['order'];
if ($methods) {
foreach ($methods as $key => $value) {
$sort_order[$key] = $value['order'];
}
array_multisort($sort_order, SORT_ASC, $methods);
foreach ($methods as $method) {
$payment_methods[$method['code']] = $method['name'];
}
}
array_multisort($sort_order, SORT_ASC, $methods);
foreach ($methods as $method) {
$payment_methods[$method['code']] = $method['name'];
if ($customer) {
Cache::put('payment_methods.customer', $payment_methods, Date::now()->addHour(6));
} else {
Cache::put('payment_methods.admin', $payment_methods, Date::now()->addHour(6));
}
Cache::put('payment_methods', $payment_methods, Date::now()->addHour(6));
return $payment_methods;
}
}