hasOne(WorkClient::class, 'external_userid', 'external_userid') ->field(['external_userid', 'name']) ->bind(['name' => 'name']); } public function chat() { return $this->hasOne(WorkGroupChat::class,'chat_id','chat_id'); } /** * @param $query * @param $value */ public function searchMsgIdAttr($query, $value) { if (is_array($value)) { $query->whereIn('msg_id', $value); } else { $query->where('msg_id', $value); } } /** * @param $query * @param $value */ public function searchStatusAttr($query, $value) { if ('' !== $value) { if (is_array($value)) { $query->whereIn('status', $value); } else { $query->where('status', $value); } } } /** * @param $value * @return false|string */ public function getSendTimeAttr($value) { return $value ? date('Y-m-d H:i:s', $value) : ''; } }