File: /var/www/vhost/disk-apps/agile-selling-wpb/app/Http/Controllers/Api/CartApiController.php
<?php
namespace App\Http\Controllers\Api;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Http\Controllers\OrderController;
use App\PaymentType;
use App\GatewayPayment;
use App\User;
use App\Order;
use App\Discount;
use App\DiscountOrderUser;
use Illuminate\Support\Facades\Auth;
class CartApiController extends Controller
{
public function paymentTypes(){
$paymentTypes = PaymentType::where('active', true)->get();
$data = array('status' => 'success', 'paymentTypes' => $paymentTypes);
return response()->json($data, 200);
}
public function userCreateOrder(Request $request){
$order = new OrderController($request);
return $order->create($request);
}
public function getPaymentGateway(Request $request){
$gw = GatewayPayment::where('active', true)->first();
$user = User::find(Auth::user()->id);
$order = Order::find($request->id);
if($gw->name == "PAYU"){
$signature = "{$gw->api_key}~{$gw->merchant_id}~{$order->code}~{$order->total_price}~{$gw->currency}";
$signature = hash( 'md5', $signature );
$res = array('gw' => $gw, 'u' => $user, 'signature' => $signature, 'status' => 'success');
}
return $res;
}
public function discountList(){
$user_id = Auth::user()->id;
$discountList = Discount::where('active', true)->get();
if ($discountList) {
foreach ($discountList as $discount) {
if ($discount->discount_type_id === 1) {
$discountOrderUsers = DiscountOrderUser::where([['user_id',$user_id],['discount_id',$discount->id]])->whereNotNull('limit_discount')->first();
}else{
$discountOrderUsers = DiscountOrderUser::where([['user_id',$user_id],['discount_id',$discount->id]])->first();
}
$discount->discountOrderUsers = $discountOrderUsers;
}
}
$data = array('status' => 'success', 'discountList' => $discountList);
return response()->json($data, 200);
}
}