TimestampBehavior::className(), 'value' => function(){ return date('Y-m-d H:i:s' ); }, 'updatedAtAttribute' => false, ] ], parent::behaviors()); } /** * @inheritdoc */ public function rules() { return [ [['id_card', 'id_customer', 'id_key', 'direction', 'type'], 'integer'], [['created_at'], 'required'], [['created_at'], 'safe'] ]; } /** * @inheritdoc */ public function attributeLabels() { return [ 'id_door_log' => Yii::t('common/door_log', 'Id Door Log'), 'id_card' => Yii::t('common/door_log', 'Bérlet kártya'), 'id_customer' => Yii::t('common/door_log', 'Vendég'), 'id_key' => Yii::t('common/door_log', 'Kulcs'), 'direction' => Yii::t('common/door_log', 'Esemény'), 'type' => Yii::t('common/door_log', 'Típus'), 'created_at' => Yii::t('common/door_log', 'Időpont'), 'source_app' => Yii::t('common/door_log', 'Eszköz'), ]; } public function getCustomer(){ return $this->hasOne( Customer::className(), ["id_customer" =>"id_customer" ] ); } public function getCustomerName(){ $result = ""; if (isset($this->customer)){ $result = $this->customer->name; } return $result; } public function getCard(){ return $this->hasOne( Card::className(), ["id_card" =>"id_card" ] ); } public function getCardNumber(){ $result = ""; if (isset($this->card)){ $result = $this->card->number; } return $result; } public function getKey(){ return $this->hasOne( Key::className(), ["id_key" =>"id_key" ] ); } public function getKeyNumber(){ $result = ""; if (isset($this->key)){ $result = $this->key->number; } return $result; } public function getDirectionName(){ $result = ""; if ( $this->source_app == 'forgo_villa'){ if (isset($this->direction)){ $result = Helper::getArrayValue(self::getDirectionTypes() , $this->direction, "-"); } }else{ $result = "Kézi olvasás"; } return $result; } public static function getSourceAppName($source_app){ $result = ""; switch ($source_app){ case self::$SOURCE_APP_FITNESS_ADMIN : $result = "Recepciós alkalmazás"; break; case self::$SOURCE_APP_FORGO_VILLA: $result = "Forgó villa"; break; } return $result; } public static function getDirectionTypes( ){ return [ -2 => "Kézi olvasás/Kulcs ki", -1 => "Kézi olvasás/Kulcs vissza", 0 => "Kézi olvasás", 1 => "KI olvastatás mozgás nélkül", 3 => "BE olvastatás mozgás nélkül", 5 => "KI mozgás", 7 => "BE mozgás", 9 => "KI olvastatás, van érvényes öltöző kulcs (nem enged)", 11 => "BE olvastatás, nincs érvényes öltöző kulcs (nem enged)", 17 => "Bérlet érvényességi időn kívüli KI olvastatás (nem enged)", 19 => "Bérlet érvényességi időn kívüli BE olvastatás (nem enged)", 128 => "Vésznyitás", 256 => "Kártya tiltva -> információ mező", ]; } public static function getCardFlagTexts( ){ return [ 0 => "Kártya érvényes bérlettel", 1 => "Nincs érvényes bérlet", 2 => "Kártya inaktív/Érvényes bérlet", 3 => "Kártya inaktív/Nincs érvényes bérlet" ]; } public static function mkDoorLog($direction,$card,$customer = null,$key = null){ $dlog = new DoorLog(); $dlog->id_card = $card->id_card; if ( isset($customer)){ $dlog->id_customer = $customer->id_customer; } if ( isset($key)){ $dlog->id_key = $key->id_key; } $dlog->direction = $direction; $dlog->type = $card->type; $dlog->source_app = DoorLog::$SOURCE_APP_FITNESS_ADMIN; $dlog->id_account = Account::readDefault(); if ( $dlog->direction == 0){ $dlog->card_flag = $card->flag; }else{ $dlog->card_flag = -1; } $dlog->created_at = date('Y-m-d H:i:s'); $dlog->save(false); } }