state = $model->state ?? 'INIT'; $model->trade_no = 'U' . date('ymdHis') . sprintf("%07d", mt_rand(0, pow(10, 7) - 1)); }); } public function user() { return $this->belongsTo(User::class); } public function getTypeTextAttribute() { switch ($this->type) { case 'vip': return "升级会员"; break; case 'agent': return "升级代理商"; break; default: return "未知类型"; break; } } public function getPayTypeTextAttribute() { switch ($this->pay_type) { case 'WECHAT': return "微信支付"; break; case 'ADMIN': return "空升"; break; default: return "未知类型"; break; } } public function getStateTextAttribute() { switch ($this->state) { case 'INIT': return '未支付'; break; case 'SUCCESS': return '已支付'; break; case 'OVER': return '已结束'; break; default: return "未知状态"; break; } } }