updated apis

This commit is contained in:
Frank John Begornia
2021-02-04 19:45:27 +08:00
parent c144810352
commit acf9c2e931
6 changed files with 69 additions and 11 deletions

View File

@@ -81,6 +81,8 @@ class ApiController extends Controller
{ {
$ApiModel = new ApiModel; $ApiModel = new ApiModel;
$invoice = Input::get('invoice'); $invoice = Input::get('invoice');
$getStep = Input::get('step');
// $response = $ApiModel->getTrackingStatus($invoice); // $response = $ApiModel->getTrackingStatus($invoice);
$selectPaymentDetails = $ApiModel->selectPaymentDetails($invoice); $selectPaymentDetails = $ApiModel->selectPaymentDetails($invoice);
@@ -91,9 +93,12 @@ class ApiController extends Controller
$selectOrderList = $ApiModel->selectOrderList($selectPaymentDetails[0]->CartKey); $selectOrderList = $ApiModel->selectOrderList($selectPaymentDetails[0]->CartKey);
$getCurrentTrackingSteps = $ApiModel->getCurrentTrackingSteps($invoice); $getCurrentTrackingSteps = $ApiModel->getCurrentTrackingSteps($invoice);
$selectPaymentDetails[0]->tracking_steps = $getCurrentTrackingSteps; $selectPaymentDetails[0]->tracking_steps = $getCurrentTrackingSteps;
$currentStep = $ApiModel->selectCurrentStep($invoice);
$selectPaymentDetails[0]->current_step = $currentStep;
$stp = ($getStep != "") ? $getStep : $currentStep->Order; // check if step
foreach ($selectOrderList as $k => $order) { foreach ($selectOrderList as $k => $order) {
$table_fields[] = $ApiModel->selectOrderListTableFields($order->CartKey, $order->ProductId); $table_fields[] = $ApiModel->selectOrderListTableFields($order->CartKey, $order->ProductId, $stp);
$product_images[] = $ApiModel->selectProductImages($order->ProductId); $product_images[] = $ApiModel->selectProductImages($order->ProductId);
$selectOrderList[$k]->table_fields = $table_fields[$k]; $selectOrderList[$k]->table_fields = $table_fields[$k];
@@ -127,5 +132,18 @@ class ApiController extends Controller
], 200); ], 200);
} }
public function getSteps(){
$ApiModel = new ApiModel;
$selectSteps = $ApiModel->selectSteps();
if (!$selectSteps) {
return response()->json(['status' => false, 'data' => ""], 404);
}
return response()->json([
'status' => true,
'data' => $selectSteps
], 200);
} }
}

View File

@@ -71,6 +71,13 @@ class PaypalController extends Controller
return Redirect::back(); return Redirect::back();
} }
// $request->session()->forget('cartkey');
if(!$request->session()->has('cartkey')){
$message = 'Your cart is empty';
Session::flash('cartkeyError', $message);
return Redirect::back();
}
$payer = PayPal::Payer(); $payer = PayPal::Payer();
$payer->setPaymentMethod('paypal'); $payer->setPaymentMethod('paypal');

View File

@@ -191,5 +191,5 @@ Route::group(array('middleware' => ['isAuthorized', 'cors'], 'prefix' => 'api'),
Route::post('insert', 'ApiController@insert'); Route::post('insert', 'ApiController@insert');
Route::get('tracking', 'ApiController@getTrackingStatus'); Route::get('tracking', 'ApiController@getTrackingStatus');
Route::get('order-status', 'ApiController@getOrderStatus'); Route::get('order-status', 'ApiController@getOrderStatus');
Route::get('steps', 'ApiController@getSteps');
}); });

View File

@@ -61,7 +61,7 @@ class ApiModel extends Model
return $i; return $i;
} }
function selectOrderListTableFields($cartKey, $productId) function selectOrderListTableFields($cartKey, $productId, $stepid)
{ {
// $i = DB::table('orders')->select('Id', 'Name', 'Name2', 'Number', 'Size', 'JerseySize', 'ShortsSize', 'Quantity') // $i = DB::table('orders')->select('Id', 'Name', 'Name2', 'Number', 'Size', 'JerseySize', 'ShortsSize', 'Quantity')
// ->where('CartKey', $cartKey) // ->where('CartKey', $cartKey)
@@ -70,8 +70,9 @@ class ApiModel extends Model
// return $i; // return $i;
$i = DB::table('orders')->select('orders.Id', 'orders.Name', 'orders.Name2', 'orders.Number', 'orders.Size', 'orders.JerseySize', $i = DB::table('orders')->select('orders.Id', 'orders.Name', 'orders.Name2', 'orders.Number', 'orders.Size', 'orders.JerseySize',
'orders.ShortsSize', 'orders.Quantity', DB::raw('COUNT(tracking.Id) AS Status')) 'orders.ShortsSize', 'orders.Quantity', DB::raw('(SELECT COUNT(*) FROM tracking WHERE StepId = '.$stepid.' AND OrdersId = orders.Id) AS Status'))
->leftjoin('tracking', 'orders.Id', '=', 'tracking.OrdersId') // ->leftjoin('tracking', 'orders.Id', '=', 'tracking.OrdersId')
// ->where('tracking.StepId', $stepid)
->where('orders.CartKey', $cartKey) ->where('orders.CartKey', $cartKey)
->where('orders.ProductId', $productId) ->where('orders.ProductId', $productId)
->groupBy('orders.Id') ->groupBy('orders.Id')
@@ -124,4 +125,28 @@ class ApiModel extends Model
->get(); ->get();
return $i; return $i;
} }
function selectSteps(){
$i = DB::table('tracking_steps')
->orderBy('Order', 'ASC')
->get();
return $i;
}
function selectCurrentStep($invoice){
$i = DB::table('tracking')->select('tracking_steps.*')
->leftjoin('tracking_steps', 'tracking_steps.Id', '=', 'tracking.StepId')
->where('tracking.InvoiceNumber', $invoice)
->orderBy('tracking.StepId', 'DESC')
->first();
return $i;
}
function selectCurrentStepOrder($stepOrder){
$i = DB::table('tracking_steps')
->where('Order', $stepOrder)
->get();
return $i;
}
} }

View File

@@ -26,6 +26,13 @@
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<h2 style="font-size: 20px; font-weight: bold;">MY CART</h2> <h2 style="font-size: 20px; font-weight: bold;">MY CART</h2>
@if(Session::has('cartkeyError'))
<div class="alert alert-danger alert-dismissible">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<h4><i class="fa fa-exclamation-circle"></i> Error:</h4>
{!! Session::get('cartkeyError') !!}
</div>
@endif
<hr> <hr>
</div> </div>
</div> </div>

View File

@@ -178,9 +178,10 @@
<p><b>Please read:</b></p> <p><b>Please read:</b></p>
1. Items purchased are made on demand. Orders will be shipped based on dates set by your store administrator.<br> 1. Items purchased are made on demand. Orders will be shipped based on dates set by your store administrator.<br>
2. Store payments are processed through PayPal. A PayPal account is not required to make a purchase.<br> 2. Store payments are processed through PayPal. A PayPal account is not required to make a purchase.<br>
3. We are currently only shipping to US locations. For international orders, please contact <b>orders@crewsportswear.com</b> if you'd like to place an order.<br> 3. Orders will be batch processed on a weekly basis, please allow 2-3 weeks for delivery.<br>
4. Expect shipping delays due to COVID-19.<br> 4. We are currently only shipping to US locations. For international orders, please contact <b>orders@crewsportswear.com</b> if you'd like to place an order.<br>
5. All sales are final. No returns or exchanges will be accepted.<br><br> 5. Expect shipping delays due to COVID-19.<br>
6. All sales are final. No returns or exchanges will be accepted.<br><br>
<b>DISCLAIMER:</b> Masks and gaiters sold by Crew Sportswear are not intended for medical use. Crew Sportswear does not make any medical or health claims. <b>DISCLAIMER:</b> Masks and gaiters sold by Crew Sportswear are not intended for medical use. Crew Sportswear does not make any medical or health claims.
</div> </div>