'待处理', self::STATUS_PROCESSING => '处理中', self::STATUS_SOLVED => '已解决', self::STATUS_CLOSED => '已关闭' ]; } /** * 获取类型列表 */ public static function getTypeList() { return [ self::TYPE_SAFETY => '意外事件', self::TYPE_COMPLAINT => '沟通事件', self::TYPE_OTHER => '其他' ]; } /** * 关联项目 */ public function project() { return $this->belongsTo(Project::class); } /** * 关联订单 */ public function order() { return $this->belongsTo(Orders::class); } /** * 关联解决人(管理员) */ public function solver() { return $this->belongsTo(\App\Admin::class, 'solved_by'); } /** * 获取状态文本 */ public function getStatusTextAttribute() { $statusList = self::getStatusList(); return $statusList[$this->solved_status] ?? '未知状态'; } /** * 获取类型文本 */ public function getTypeTextAttribute() { $typeList = self::getTypeList(); return $typeList[$this->type] ?? '未知类型'; } /** * 是否已解决 */ public function isSolved() { return in_array($this->solved_status, [self::STATUS_SOLVED, self::STATUS_CLOSED]); } /** * 是否待处理 */ public function isPending() { return $this->solved_status === self::STATUS_PENDING; } /** * 处理中 */ public function isProcessing() { return $this->solved_status === self::STATUS_PROCESSING; } }