format('Y-m-d H:i:s'); } protected $casts = [ 'created_at' => 'datetime', 'updated_at' => 'datetime', 'published_at' => 'datetime', 'is_enable' => 'boolean', 'jump_config' => 'array', ]; protected $fillable = [ 'resource', 'address', 'remark', 'published_at', 'is_enable', 'sort', 'jump_type', 'jump_config', ]; public static function jumpTypeMap() :array { return [ self::TYPE_WEB => '网页跳转', self::TYPE_APP => '应用跳转', self::TYPE_MINI => '小程序跳转', self::TYPE_OFF => '无跳转', ]; } public static function jumpTypeMapLabel() { return [ self::TYPE_OFF => "无跳转", self::TYPE_WEB => "网页跳转", self::TYPE_APP => "应用跳转", self::TYPE_MINI => "小程序跳转", '*'=>'其他:${jump_type}' ]; } public static function typeMapLabel() { return [ self::TYPE_IN => "入住缴费", self::TYPE_CONTINUE => "续住缴费", self::TYPE_EXIT => "离开结算", '*'=>'其他:${live_in}' ]; } public function scopeShow(){ $q->where('is_enable', true)->where('published_at', '>=', now()); } public function scopeSort($q) { $q->orderBy('sort', 'asc') ->orderBy('published_at', 'desc') ->orderBy('created_at', 'desc'); } }