Your IP : 216.73.216.79


Current Path : /var/www/html/jppmintranetv2/frontend/models/
Upload File :
Current File : /var/www/html/jppmintranetv2/frontend/models/VehicleApplication.php

<?php

namespace frontend\models;

use Yii;

/**
 * This is the model class for table "vehicle_application".
 *
 * @property int $vehicle_application_id
 * @property int|null $vehicle_staff_id_applicant pemohon
 * @property string|null $vehicle_application_category sehala atau 2 hala
 * @property string|null $vehicle_application_apply_date tarikh mohon
 * @property string|null $vehicle_application_date_go
 * @property string|null $vehicle_application_time_go
 * @property string|null $vehicle_application_date_return
 * @property string|null $vehicle_application_time_return
 * @property int|null $vehicle_application_capasity bil penumpang
 * @property string|null $vehicle_application_purpose
 * @property string|null $vehicle_application_destination
 * @property int|null $vehicle_application_status 0 => 'Draf', 1 => 'Baru', 2 =>'Lulus', 3 => 'Gagal', 4 => 'Selesai', 5 => 'Pengesahan Penumpang', 6 => 'Pengesahan Pemandu'
 * @property string|null $vehicle_application_remark
 * @property string|null $vehicle_application_remark_sppk
 * @property string|null $vehicle_application_approval_date
 * @property int|null $vehicle_staff_id_approval
 * @property string|null $vehicle_application_confirmation_remark
 * @property int|null $vehicle_application_rating_go
 * @property int|null $vehicle_application_rating_return
 * @property float|null $vehicle_application_km_reading
 * @property float|null $vehicle_application_touchngo_use
 * @property int|null $vehicle_application_rating_applicant
 * @property string|null $vehicle_application_driver_remark
 * @property int|null $created_by
 * @property string|null $created_at
 * @property int|null $updated_by
 * @property string|null $updated_at
 */
class VehicleApplication extends \yii\db\ActiveRecord {

    /**
     * {@inheritdoc}
     */
    public static function tableName() {
        return 'vehicle_application';
    }

    /**
     * {@inheritdoc}
     */
    public function rules() {
        return [
            [[
            'vehicle_application_id',
            'vehicle_staff_id_applicant',
            'vehicle_application_category',
            'vehicle_application_apply_date',
            'vehicle_application_date_go',
            'vehicle_application_time_go',
            'vehicle_application_date_return',
            'vehicle_application_time_return',
            'vehicle_application_capacity',
            'vehicle_application_purpose',
            'vehicle_application_destination',
            'vehicle_application_status',
            'vehicle_application_remark',
            'vehicle_application_remark_sppk',
            'vehicle_application_approval_date',
            'vehicle_staff_id_approval',
            'vehicle_application_confirmation_remark',
            'created_by',
            'created_at',
            'updated_by',
            'updated_at',
            'vehicle_application_destination2',
            'vehicle_application_destination3',
            'vehicle_application_passenger1',
            'vehicle_application_passenger2',
            'vehicle_application_passenger3',
            'vehicle_application_passenger4',
            'vehicle_application_passenger5',
            'vehicle_application_passenger6',
            'vehicle_application_passenger7',
            'vehicle_application_passenger8',
            'vehicle_application_passenger9',
            'vehicle_application_passenger10',
                ], 'safe'],
            [['vehicle_staff_id_applicant', 'vehicle_application_category', 'vehicle_application_date_go',
            'vehicle_application_date_return',
            'vehicle_application_purpose', 'vehicle_application_destination'], 'required', 'message' => '{attribute} tidak boleh kosong'],
            //['vehicle_application_date_go', 'checkdate']
        ];
    }

    public function checkdate() {

        if (!empty($this->vehicle_application_date_go)) {
            $model = VehicleApplication::find()
                    ->where(['BETWEEN', 'vehicle_application_date_go', 'vehicle_application_date_return', $this->vehicle_application_date_go])
                    ->andwhere(['=', 'vehicle_application_status', 'approve'])
                    ->all();
            if (!empty($model))
                $this->addError('vehicle_application_date_go', 'Kenderaan sedang digunakan pada tarikh ini');
        }
    }

    /**
     * {@inheritdoc}
     */
    public function attributeLabels() {
        return [
            'vehicle_application_category' => Yii::t('app', 'Kategori'),
            'vehicle_application_date_go' => Yii::t('app', 'Tarikh Pergi'),
            'vehicle_application_time_go' => Yii::t('app', 'Masa Pergi'),
            'vehicle_application_date_return' => Yii::t('app', 'Tarikh Balik'),
            'vehicle_application_time_return' => Yii::t('app', 'Masa Balik'),
            'vehicle_application_capacity' => Yii::t('app', 'Bilangan Penumpang'),
            'vehicle_application_purpose' => Yii::t('app', 'Tujuan'),
            'vehicle_application_destination' => Yii::t('app', 'Destinasi'),
            'vehicle_application_status' => Yii::t('app', 'Status'),
            'vehicle_application_destination2' => 'Destinasi 2',
            'vehicle_application_destination3' => 'Destinasi 3',
            'vehicle_application_passenger1' => 'Nama Penumpang 1',
            'vehicle_application_passenger2' => 'Nama Penumpang 2',
            'vehicle_application_passenger3' => 'Nama Penumpang 3',
            'vehicle_application_passenger4' => 'Nama Penumpang 4',
            'vehicle_application_passenger5' => 'Nama Penumpang 5',
            'vehicle_application_passenger6' => 'Nama Penumpang 6',
            'vehicle_application_passenger7' => 'Nama Penumpang 7',
            'vehicle_application_passenger8' => 'Nama Penumpang 8',
            'vehicle_application_passenger9' => 'Nama Penumpang 9',
            'vehicle_application_passenger10' => 'Nama Penumpang 10',
        ];
    }

    public function getUser() {
        return $this->hasOne(\backend\modules\fruserdynav2\models\FrontendUser::className(), ['id' => 'vehicle_staff_id_applicant']);
    }

}