dataRange() ->catchSearch() ->append(['depart_name', 'alarm_state_text', 'creator_user', 'model_name']) ->order($this->aliasField('id'), 'desc') ->paginate(); return $res; } /** * 获取轨迹地图列表定位不分页 只查询有定位时间的 */ public function queryLocationList() { $res = $this->dataRange() ->catchSearch() ->select(); return $res; } /** * 获取导入用户(文本) */ public function getCreatorUserAttr($value) { $uid = $this->creator_id; return Db::table('users')->where('id', $uid)->value('username') ?: ''; } /** * 使用状态 */ public function getIsUsedAttr($value) { if ($value != 0) { return true; } else { return false; } } /** * 获取部门名称(文本) */ public function getDepartNameAttr() { $id = $this->getData('department_id'); return Db::table('departments')->where('id', $id)->value('department_name'); } /** * 获取类型名称 */ public function getModelAttr($value) { return (int)$value; } /** * 校验日期 */ public function getEffectiveTimeAttr($value) { if ($value) { return date('Y-m-d H:i:s', $value); } else { return '-'; } } /** * 校验日期 */ public function getCheckTimeAttr($value) { if ($value) { return date('Y-m-d H:i:s', $value); } else { return '-'; } } /** * 获取告警状态文本 */ public function getAlarmStateTextAttr($value) { $alarm_state = $this->getData('alarm_state'); return $alarm_state ? '告警' : '正常'; } /** * 根据部门搜索 */ public function searchDepartmentIdAttr($query, $value, $data) { if ($value) { $id = end($value); return $query->where('department_id', '=', $id); } } /** * 根据number搜索 */ public function searchNumberAttr($query, $value, $data) { return $query->where('number', 'like', '%' . $value . '%'); } /** * 根据name搜索 */ public function searchNameAttr($query, $value, $data) { return $query->where('name', 'like', '%' . $value . '%'); } /** * 根据model搜索 */ public function searchModelAttr($query, $value, $data) { return $query->where('model', 'like', '%' . $value . '%'); } /** * 根据name搜索 */ public function searchIsUsedAttr($query, $value, $data) { return $query->where('is_used', $value); } }