Initial import
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
<?php
|
||||
|
||||
use app\models\Order;
|
||||
use app\services\JR;
|
||||
|
||||
$user = \app\services\Auth::getUserByToken();
|
||||
//$user = \app\models\UserPublic::findOne(34);
|
||||
$lg = Yii::$app->language;
|
||||
$data = [];
|
||||
if ($user) {
|
||||
$per_page = 10;
|
||||
$page = $_GET['page'] ?? 1;
|
||||
$orders = Order::find()->where(['user_id' => $user->id])->offset($per_page * $page - $per_page)->orderBy(['id' => SORT_DESC]);
|
||||
|
||||
$count = $orders->count();
|
||||
foreach ($orders->all() as $order) {
|
||||
|
||||
$paying = $order->payment;
|
||||
//$booking = $order->booking;
|
||||
//$event = $booking && $booking->event ? $booking->event->title() : '';
|
||||
$booking = [];
|
||||
foreach ($order->booking as $ticket) {
|
||||
$count = $ticket->tickets_count;
|
||||
|
||||
$booking[] = [
|
||||
'id' => $ticket->id,
|
||||
'ticket_type' => $ticket->{'name_' . $lg},
|
||||
'event' => $ticket->event->title(),
|
||||
'event_img' => $ticket->event->image('16:11'),
|
||||
'single_price' => $ticket->single_price,
|
||||
'datetime' => $ticket->formatedHtmlDate(),
|
||||
'hashed_id' => $ticket->getHashedId(),
|
||||
'tickets_count' => $count
|
||||
];
|
||||
}
|
||||
$default = $booking[0] ?? null;
|
||||
$event = null;
|
||||
if (!empty($booking[0])) {
|
||||
$event = [
|
||||
'name' => $booking[0]['event'],
|
||||
'img' => $booking[0]['event_img'],
|
||||
];
|
||||
}
|
||||
|
||||
$status = [
|
||||
'PAID' => [
|
||||
'bg' => 'Платено',
|
||||
'en' => 'Paid'
|
||||
],
|
||||
'PENDING' => [
|
||||
'bg' => 'Изчаква се плащане',
|
||||
'en' => 'Payment pending'
|
||||
]
|
||||
];
|
||||
|
||||
$item = [
|
||||
'id' => $order->id,
|
||||
'price' => $order->total_price,
|
||||
'date' => $order->order_date,
|
||||
'status' => $paying->status == 'PAID' ? ($status['PAID'][$lg]) : $status['PENDING'][$lg],
|
||||
'booking' => $booking,
|
||||
];
|
||||
if ($event) {
|
||||
$item['event'] = $event;
|
||||
}
|
||||
$data[] = $item;
|
||||
}
|
||||
|
||||
JR::message(JR::done, ['data' => $data, 'lastPage' => ceil($count / $per_page), 'count' => $count]);
|
||||
}
|
||||
Reference in New Issue
Block a user