/var/www/vhosts/nabawater/frontend/controllers
Edit: /var/www/vhosts/nabawater/frontend/controllers/OrderController.php (5578B)
enableCsrfValidation = false;
return parent::beforeAction($action);
}
/**
*
* @return type Html
* @Title("add coupon verify")
*/
public function actionApplyCoupon()
{
if (Yii::$app->getRequest()->isAjax) {
$user = yii::$app->getUser()->getIdentity();
$get = yii::$app->request->get();
$response['items'] = Com::getCartData();
if (!isset($get['coupon_code'])) {
//goto skip;
}
$dummydata = [
'branch_key' => "",
"coupon_code" => $get['coupon_code'],
"order_type" => 1,
"latitude" => '',
"longitude" => '',
"payment_type" => '',
"user_key" => $user->user_key,
'delivery_time' => '',
"email" => $user->email,
'mobile_number' => '',
];
$verify = ArrayHelper::merge($response, $dummydata);
print_r($verify);
exit;
}
}
public function actionDetails()
{
// print_r(Yii::$app->language); die;
$post = Yii::$app->request->post();
$response['status'] = Com::SUCCESS;
$orderData = ApiHelper::getInstance()
->setRequestMethod(ApiHelper::REQUEST_METHOD_GET)
->setUrl('order/view',['order_key'=> $post['key']]);
$apiResponse = $orderData->run();
if(!$apiResponse->isSuccess()) {
$message = $apiResponse->getMessage();
$response['status'] = false;
$response['message'] = $message;
}
// print_r($apiResponse->getData()); die;
if(!empty($apiResponse->getData())) {
$response['html'] = $this->renderPartial('/user/order-details', ['order_details' => $apiResponse->getData()]);
}
echo json_encode($response); exit;
}
public function actionOrderConfirm($id)
{
$modelOrder = Order::find()->where(['order_key' => $id])->one();
$modelOrder->reschedule_status = 2;
$modelOrder->is_deliveryboy_request_for_reschdule = 0;
$modelVendor = Vendor::findOne($modelOrder->vendor_id);
$modelOrder->reschedule_status = 2;
$modelOrder->is_deliveryboy_request_for_reschdule = 0;
$requestData = [];
$requestData['vendor_location'] = [
'latitude' => $modelVendor->vendor_latitude,
'longitude' => $modelVendor->vendor_longitude,
];
$responseData = Com::getJsonData('PUT', Configuration::get(Configuration::DELIVERY_BOY_ACCESS_URL) . "order/".$modelOrder->order_key."/2?company_id=" .Configuration::get(Configuration::COMPANY_KEY), $requestData, 1);
$modelOrder->save(false);
return $this->asJson(['status' => 1, 'msg' => 'Order Confirmed successfully..']);
}
public function actionReschduleOrder()
{
$post = Yii::$app->request->post();
$modelOrder = Order::findOne(['order_key' => $post['key']]);
$modelOrder->delivery_option = 2;
$modelOrder->pickup_delivery_date_time = date('Y-m-d',strtotime($post['date'])).' '.$post['time'];
$modelOrder->is_deliveryboy_request_for_reschdule = 0;
$modelOrder->save(false);
return $this->asJson(['status' => 1, 'msg' => ' Order Reschedule successfully..']);
}
public function actionCancelOrder()
{
$post = Yii::$app->request->post();
$modelOrder = Order::findOne(['order_key' => $post['key']]);
if($modelOrder->order_status == Order::ORDER_STATUS_DELIVERED) {
return $this->asJson(['status' => 1, 'msg' => 'Order is Delivered already']);
}
$modelOrder->order_status = Order::ORDER_STATUS_IS_CUSTOMER_CANCELED;
$modelOrder->save(false);
if ($modelOrder->order_type == Order::ORDER_TYPE_DELIVERY) {
$status = Order::ORDER_STATUS_REJECTED;
$responseData = Com::getJsonData('PUT', Configuration::get(Configuration::DELIVERY_BOY_ACCESS_URL) . "order/".$modelOrder->order_key."/".$status."?company_id=" . Configuration::get(Configuration::COMPANY_KEY), [], 0);
}
$orderItem = OrderItem::find()->where(['order_id' => $modelOrder->order_id])->all();
foreach ($orderItem as $key => $orderItemModel) {
$itemModel = Item::find()
->where(['item_id' => $orderItemModel->item_id])
->one();
if ($itemModel !== null) {
$itemModel->quantity = $itemModel->quantity + $orderItemModel->quantity;
$itemModel->save(false);
}
}
Com::successFlash('Order Cancelled successfully');
return $this->asJson(['status' => 1, 'msg' => ' Order Reschedule successfully..']);
}
}