kokjan/frontend/controllers/OnlinequeueController.php

73 lines
2.1 KiB
PHP
Raw Normal View History

2026-02-25 06:59:34 +00:00
<?php
namespace frontend\controllers;
use common\models\Onlinequeue;
use Yii;
use yii\base\Exception;
use yii\web\Response;
use yii\widgets\ActiveForm;
class OnlinequeueController extends \yii\web\Controller
{
public function beforeAction($action)
{
if ($action->id == 'get-count') {
$this->enableCsrfValidation = false;
}
return parent::beforeAction($action);
}
public function actionIndex()
{
$model = new Onlinequeue();
$model->qdate = date('Y-m-d');
if($model->load(Yii::$app->request->post()) && $model->save()) {
try {
$quque = Onlinequeue::find()->where(['qtime'=>$model->qtime, 'qdate'=>$model->qdate])->count();
if ($quque >= 1){
Yii::$app->session->setFlash('danger', 'คิวเต็มแล้ว');
return $this->redirect(['index']);
}
Yii::$app->session->setFlash('success', 'บันทึกข้อมูลเรียบร้อยแล้ว กรุณารอการติดต่อกลับจากเจ้าหน้าที่');
Yii::$app->hanuman->sendNotify('มีการแจ้งระบบคิวการให้บริการ');
} catch (Exception $exception) {
Yii::$app->session->setFlash('error', $exception->getMessage());
}
return $this->redirect(['index']);
}else{
//var_dump($model->getFirstErrors());
}
return $this->render('index', [
'model' => $model
]);
}
public function actionGetCount()
{
Yii::$app->response->format = Response::FORMAT_JSON;
$date = Yii::$app->request->post('date');
$time = Yii::$app->request->post('time');
$quque = Onlinequeue::find()->where(['qtime'=>$time, 'qdate'=>$date])->count();
if ($quque<1){
return "คิวว่าง";
}
else{
return "คิวเต็มเต็ม";
}
//return $quque;
}
}