109 lines
3.0 KiB
PHP
109 lines
3.0 KiB
PHP
<?php
|
|
/**
|
|
* Created by PhpStorm.
|
|
* User: zn
|
|
* Date: 2017/5/17
|
|
* Time: 18:22
|
|
*/
|
|
|
|
namespace common\models;
|
|
|
|
|
|
use common\services\UserService;
|
|
use common\utils\EnumUtil;
|
|
use yii\behaviors\TimestampBehavior;
|
|
use yii\db\ActiveRecord;
|
|
|
|
/**
|
|
* 用户小喇叭消息
|
|
* @property int $id
|
|
* @property int $user_id 所属用户ID
|
|
* @property string $wx_id 微信号
|
|
* @property string $phone
|
|
* @property string $message
|
|
* @property int $pass 是否审核通过
|
|
* @property int $del 删除
|
|
* @property integer $created_at
|
|
* @property integer $updated_at
|
|
*/
|
|
class UserBroadcastMessage extends ActiveRecord
|
|
{
|
|
public function behaviors()
|
|
{
|
|
return [
|
|
TimestampBehavior::className(),
|
|
];
|
|
}
|
|
|
|
public function rules()
|
|
{
|
|
return [
|
|
['id', 'default', 'value' => 0],
|
|
|
|
['user_id', 'required'],
|
|
['user_id', 'exist', 'targetClass' => '\common\models\User', 'targetAttribute' => 'id'],
|
|
['user_id', 'number', 'integerOnly' => true],
|
|
|
|
['wx_id', 'default', 'value' => ''],
|
|
['wx_id', 'string', 'max' => 50],
|
|
|
|
['phone', 'default', 'value' => ''],
|
|
['phone', 'string', 'max' => 11],
|
|
|
|
['message', 'default', 'value' => ''],
|
|
['message', 'string', 'max' => 50],
|
|
|
|
['pass', 'default', 'value' => EnumUtil::VERIFY_WAIT],
|
|
['pass', 'in', 'range' => EnumUtil::VERIFY_LIST],
|
|
|
|
['del', 'default', 'value' => EnumUtil::DELETE_NOT],
|
|
['del', 'in', 'range' => EnumUtil::DELETE_LIST],
|
|
|
|
['created_at', 'default', 'value' => 0],
|
|
['updated_at', 'default', 'value' => 0],
|
|
];
|
|
}
|
|
|
|
public static function findByID($id)
|
|
{
|
|
return self::findOne(['id' => $id, 'del' => EnumUtil::DELETE_NOT]);
|
|
}
|
|
|
|
public static function findByUserID($userID)
|
|
{
|
|
return self::findOne(['user_id' => $userID, 'del' => EnumUtil::DELETE_NOT]);
|
|
}
|
|
|
|
public function __get($name)
|
|
{
|
|
if ($name == 'pass_str') return EnumUtil::VERIFY_LIST_STR[$this->pass];
|
|
if ($name == 'nickname') return UserService::getUserNickName($this->user_id);
|
|
if ($name == 'created_at_str') return date('Y-m-d H:i:s', $this->created_at);
|
|
return parent::__get($name);
|
|
}
|
|
|
|
public function attributeLabels()
|
|
{
|
|
$data = parent::attributeLabels();
|
|
$data['user_id'] = '用户ID';
|
|
$data['wx_id'] = '微信号';
|
|
$data['phone'] = '电话';
|
|
$data['nickname'] = '昵称';
|
|
$data['message'] = '发布消息';
|
|
$data['pass_str'] = '状态';
|
|
$data['created_at_str'] = '创建时间';
|
|
return $data;
|
|
}
|
|
|
|
public function genClientData()
|
|
{
|
|
return [
|
|
'id' => $this->id,
|
|
'user_id' => $this->user_id,
|
|
'wx_id' => $this->wx_id,
|
|
'phone' => $this->phone,
|
|
'nickname' => UserService::getUserNickName($this->user_id),
|
|
'message' => $this->message,
|
|
];
|
|
}
|
|
} |