doorlogmanager view: show human readable errorcodes; DoorManagerLogController.php authorization fix
This commit is contained in:
parent
ad7042c300
commit
8f63efa946
@ -98,7 +98,12 @@ class DoorManager extends BaseObject
|
||||
$direction = DoorLog::$DIRECTION_OUT;
|
||||
break;
|
||||
default:
|
||||
throw new BadRequestHttpException("$requestId: Direction not supported: " . $direction);
|
||||
throw new FitnessException(
|
||||
"Direction $direction not supported",
|
||||
FitnessException::TYPE_BAD_REQUEST,
|
||||
"INVALID_DIRECTION",
|
||||
$context
|
||||
);
|
||||
}
|
||||
$context->direction = $direction;
|
||||
|
||||
@ -108,18 +113,24 @@ class DoorManager extends BaseObject
|
||||
$virtualKey = VirtualKey::findOne(['number' => $identifier]);
|
||||
|
||||
if (!isset($virtualKey)) {
|
||||
$context->error = true;
|
||||
$context->errorCode = "VIRTUAL_KEY_NOT_FOUND";
|
||||
throw new BadRequestHttpException("$requestId: Virtual key not found: " . $identifier);
|
||||
throw new FitnessException(
|
||||
"Virtual Key Not Found",
|
||||
FitnessException::TYPE_BAD_REQUEST,
|
||||
"VIRTUAL_KEY_NOT_FOUND",
|
||||
$context
|
||||
);
|
||||
}
|
||||
$card = Card::findOne($virtualKey->id_card);
|
||||
if ($card != null) {
|
||||
$card = Card::readCard($card->number);
|
||||
}
|
||||
if ($card == null) {
|
||||
$context->error = true;
|
||||
$context->errorCode = "CARD_NOT_FOUND";
|
||||
throw new BadRequestHttpException("$requestId: Card not found by virtual key: " . $identifier . '/' . $virtualKey->id_card);
|
||||
throw new FitnessException(
|
||||
"Virtual Key Not Found",
|
||||
FitnessException::TYPE_BAD_REQUEST,
|
||||
"CARD_FOR_VIRTUAL_KEY_NOT_FOUND",
|
||||
$context
|
||||
);
|
||||
}
|
||||
$cardNumber = $card->number;
|
||||
\Yii::info("$requestId: virtual key and card loaded in sec " . $stopWatch->split());
|
||||
@ -128,9 +139,12 @@ class DoorManager extends BaseObject
|
||||
$card = Card::readCard(Helper::fixAsciiChars($identifier));
|
||||
\Yii::info("$requestId: Card loaded in sec " . $stopWatch->split());
|
||||
if (!isset($card)) {
|
||||
$context->error = true;
|
||||
$context->errorCode = "CARD_NOT_FOUND";
|
||||
throw new BadRequestHttpException("$requestId: Card not found with number: " . $identifier);
|
||||
throw new FitnessException(
|
||||
"Virtual Key Not Found",
|
||||
FitnessException::TYPE_BAD_REQUEST,
|
||||
"CARD_NOT_FOUND",
|
||||
$context
|
||||
);
|
||||
}
|
||||
\Yii::info("$requestId: card loaded in sec " . $stopWatch->split());
|
||||
$virtualKey = VirtualKey::findOne(['id_card' => $card->id_card]);
|
||||
|
||||
@ -30,6 +30,25 @@ use frontend\models\LogForm;
|
||||
*/
|
||||
class DoorManagerLogController extends Controller {
|
||||
|
||||
public function behaviors()
|
||||
{
|
||||
return [
|
||||
'access' => [
|
||||
'class' => \yii\filters\AccessControl::className(),
|
||||
'only' => ['index'],
|
||||
'rules' => [
|
||||
// allow authenticated users
|
||||
[
|
||||
'allow' => true,
|
||||
'roles' => ['@'],
|
||||
],
|
||||
// everything else is denied
|
||||
],
|
||||
],
|
||||
|
||||
];
|
||||
}
|
||||
|
||||
public function actionIndex()
|
||||
{
|
||||
$searchModel = new DoorManagerLogSearch();
|
||||
|
||||
@ -5,7 +5,7 @@ use yii\grid\GridView;
|
||||
use yii\helpers\Url;
|
||||
|
||||
/* @var $this yii\web\View */
|
||||
/* @var $searchModel backend\models\DoorLogManagerSearch */
|
||||
/* @var $searchModel frontend\models\DoorManagerLogSearch */
|
||||
/* @var $dataProvider yii\data\ActiveDataProvider */
|
||||
|
||||
$this->title = "Kapu események";
|
||||
@ -34,29 +34,43 @@ $this->params['breadcrumbs'][] = $this->title;
|
||||
[ 'attribute' => 'validation_kind', "value" =>"validation_kind", "label" => 'Típus' ],
|
||||
[ 'attribute' => 'key_number', "value" =>"key_number", "label" => 'Kulcs' ],
|
||||
[ 'attribute' => 'error', "value" =>"error", "label" => 'Hiba' ],
|
||||
[ 'attribute' => 'error_code', "value" =>"error_code", "label" => 'Hiba kód' ],
|
||||
|
||||
|
||||
// 'id_door_ma',
|
||||
// 'name',
|
||||
// [ 'attribute' => 'id_user', "value" =>"userName" ],
|
||||
// [ 'attribute' => 'id_user', "value" =>"userName" ],
|
||||
//
|
||||
// ['class' => 'yii\grid\ActionColumn',
|
||||
// 'template' => '{view}',
|
||||
// 'urlCreator' => function( $action, $model, $key, $index ){
|
||||
// if ( $action == 'view' ){
|
||||
// return Url::to(['inventory-item/index' , 'id'=> $model->id_inventory]);
|
||||
// }
|
||||
// },
|
||||
// 'buttons' =>[
|
||||
// 'view' =>function ($url, $model, $key) {
|
||||
// return Html::a('Részletek', $url,['class' => 'btn btn-xs btn-primary',
|
||||
// ]) ;
|
||||
// }
|
||||
// ]
|
||||
//
|
||||
// ],
|
||||
[ 'attribute' => 'error_code', "label" => 'Hiba kód' ,"value" =>function ($model) {
|
||||
switch ($model->error_code){
|
||||
case "CARD_NOT_FOUND":
|
||||
return "Ismeretlen Kártya";
|
||||
case "VIRTUAL_KEY_NOT_FOUND":
|
||||
return "Ismeretlen virtuális kulcs";
|
||||
case "ALREADY_IN":
|
||||
return "Már belépett (1)";
|
||||
case "VIRTUAL_KEY_ALREADY_IN":
|
||||
return "Már belépett (2)";
|
||||
case "UNKNOWN":
|
||||
return "Ismeretlen hiba";
|
||||
case "EMERGENCY_OPEN_FAILED":
|
||||
return "Sikertelen vésznyitás";
|
||||
case "EMPLOYEE_FAILED":
|
||||
return "Sikertelen belépés 'munkatárs' kártyával";
|
||||
case "NOT_FOUND_ACTIVE_TICKET":
|
||||
return "Nem található érvényes bérlet";
|
||||
case "NOT_FOUND_CUSTOMER":
|
||||
return "Ismeretlen vendég";
|
||||
case "REQUIRED_KEY":
|
||||
return "Öltözőkulcs szükséges";
|
||||
case "CARD_STATUS_NOT_ACTIVE":
|
||||
case "CARD_STATUS_INACTIVE":
|
||||
return "Kártya inaktív";
|
||||
case "CARD_LOCKER_KEY_ASSIGNED_FLAG":
|
||||
return "Öltözőkulcs leadása kötelező (1)";
|
||||
case "CARD_LOCKER_KEY_ASSIGNED_KEY":
|
||||
return "Öltözőkulcs leadása kötelező (2)";
|
||||
case "VIRTUAL_KEY_MOVE_OUT_WITHOUT_MOVE_IN":
|
||||
return "Először belépés szükséges";
|
||||
case "VIRTUAL_KEY_ALREADY_OUT":
|
||||
return "Már kilépett";
|
||||
default:
|
||||
return $model->error_code;
|
||||
}
|
||||
}],
|
||||
],
|
||||
]); ?>
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user