belongsTo(MemberModel::class, 'user_id', 'id'); } /** * 推荐收益用户 * @return \Illuminate\Database\Eloquent\Relations\HasOne */ public function recUser() { return $this->hasOne(MemberModel::class, 'id', 'rec_bonus_id') ->select(['id', 'mobile', 'nickname', 'realname', 'status']); } /** * 关联套餐 */ public function meal() { return $this->belongsTo(PayMealsModel::class, 'meal_id', 'id'); } /** * 获取类型文本 */ public function getTypeTextAttribute() { $typeMap = [ 1 => '话费', 2 => '电费', 3 => '燃气' ]; return $typeMap[$this->type] ?? '未知'; } /** * 获取状态文本 */ public function getStatusTextAttribute() { $statusMap = [ 1 => '待付款', 2 => '已付款', 3 => '充值中', 4 => '充值成功', 5 => '充值失败', 6 => '部分成功' ]; return $statusMap[$this->status] ?? '未知'; } /** * 获取退款状态文本 */ public function getRefundStatusTextAttribute() { $refundStatusMap = [ 0 => '无', 1 => '已成功', 2 => '待退款', 3 => '退款失败' ]; return $refundStatusMap[$this->refund_status] ?? '未知'; } }