| Current Path : /var/www/html/dvs/backend/models/ |
| Current File : /var/www/html/dvs/backend/models/Staff.php |
<?php
namespace backend\models;
use Yii;
use common\models\Dermaga;
use common\models\User;
use yii\base\Model;
use backend\models\StaffDetail;
class Staff extends StaffDetail {
/**
* @inheritdoc
*/
public $username;
public $email;
public $file;
// public $password_hash;
// public $status;
// public $confirmPassword;
/**
* @inheritdoc
*/
public function rules() {
return [
[['staff_ic', 'email', 'gender'], 'required', 'on' => 'manageStaff'],
[['staff_name'], 'required', 'on' => 'bulksv'], //fa add 20161110
[['staff_name'], 'required', 'on' => 'bulkhod'], //fa add 20161110
[['company_email', 'userid', 'created_at', 'updated_at'], 'safe'],
[['staff_no'], 'unique'],
[['reset_password'], 'integer'],
[['passportno', 'staff_no', 'staff_ic', 'userid'], 'string', 'max' => 14],
[['passhint'], 'string', 'max' => 100],
[['userid', 'created_at', 'updated_at'], 'safe'],
[['staff_no'], 'unique'],
[['reset_password'], 'integer'],
[['passportno', 'staff_no', 'staff_ic', 'staff_army_no', 'userid'], 'string', 'max' => 14],
[['staff_name', 'passhint'], 'string', 'max' => 100],
// ['staff_photo', 'file', 'extensions' => ['png', 'jpg', 'jpeg'], 'maxSize' => 45000],
// [['staff_photo'], 'safe'],
[['title_code', 'city_code', 'state_code', 'office_ext_no'], 'string', 'max' => 5],
[['gender', 'user_status'], 'string', 'max' => 1],
[['phone_no', 'mobile_no', 'office_no'], 'string', 'max' => 12],
[['company_email', 'staff_photo', 'created_by', 'updated_by'], 'string', 'max' => 50],
[['company_email'], 'email'],
];
}
/**
* @inheritdoc
*/
public function attributeLabels() {
return [
'id' => 'ID',
'userid' => Yii::t('app', 'ID Pengguna'),
'staff_no' => Yii::t('app', 'No. Pekerja'),
'staff_name' => Yii::t('app', 'Nama Penuh'),
'staff_ic' => Yii::t('app', 'No. Kad Pengenalan'),
'passportno' => Yii::t('app', 'No. Passport'),
'staff_army_no' => Yii::t('app', 'Staff Army No'),
'title_code' => Yii::t('app', 'Tajuk'),
'gender' => Yii::t('app', 'Jantina'),
'city_code' => Yii::t('app', 'Bandar'),
'state_code' => Yii::t('app', 'Negeri'),
'phone_no' => Yii::t('app', 'No. Telefon'),
'mobile_no' => Yii::t('app', 'No. Telefon Bimbit'),
'office_no' => Yii::t('app', 'No. Pejabat'),
'office_ext_no' => Yii::t('app', 'No. Ext Pejabat'),
'company_email' => Yii::t('app', 'Emel Syarikat'),
'staff_photo' => Yii::t('app', ''),
'user_status' => Yii::t('app', 'Status'),
'reset_password' => Yii::t('app', 'Set Semula Kata Laluan'),
'passhint' => Yii::t('app', 'Passhint'),
'created_by' => Yii::t('app', 'Created By'),
'created_at' => Yii::t('app', 'Created At'),
'updated_by' => Yii::t('app', 'Updated By'),
'updated_at' => Yii::t('app', 'Updated At'),
];
}
// public function getImageUrl()
// {
// // return a default image placeholder if your source avatar is not found
// $avatar = isset($this->avatar) ? $this->avatar : 'user-icon.png';
// return Yii::$app->params['uploadUrl'] . $avatar;
// }
public function getUser() {
return $this->hasOne(User::className(), ['id' => 'userid']);
}
public function getStaff() {
return $this->hasOne(Staff::className(), ['userid' => 'id']);
}
// public function getHod() {
// return $this->hasOne(Staff::className(), ['hod_id' => 'id']);
// }
public function getStaffInfoId($userid) {
$data = Staff::find()->where("userid='$userid'")->one();
return $data->id;
}
public function getName() {
return $this->staff_name;
}
public function getSender($id) {
$staffData = Staff::findOne($id);
if (count($staffData) > 0) {
return $staffData->staff_name;
} else {
return "<i style='color:#c55;'>{Pengguna tiada dalam rekod}</i>";
}
return FALSE;
}
public function getStaffName($id) {
$staffData = Staff::findOne($id);
if (count($staffData) > 0) {
return $staffData->staff_name;
} else {
return "<i style='color:#c55;'>{Pengguna tiada dalam rekod}</i>";
}
return FALSE;
}
public function displayStatus() {
if ($this->user_status == 10)
return 'Active';
else
return 'Not Active';
}
public static function getList() {
$arr2 = [];
$arr = self::find()->all();
foreach ($arr as $code) {
$arr2[$code->id] = $code->staff_name;
}
return $arr2;
}
public function getRoles(){
return $this->hasMany(\backend\models\StaffAccess::className(),['staff_info_id'=>'id']);
}
}