Step 1 - 枚举扩展: - 新增 IntimacySource 枚举(7种亲密度来源) - CurrencySource 追加7个婚姻相关来源 Step 2 - 数据库迁移(6张表): - marriage_configs(约30条可配置参数) - marriage_intimacy_logs(亲密度变更日志) - wedding_tiers(5档婚礼配置) - wedding_ceremonies(婚礼仪式记录) - wedding_envelope_claims(红包领取记录) - marriages 表改良(新增全部业务字段) - users.frozen_jjb(定时婚礼金币冻结) - shop_items.type 枚举添加 ring 类型 Step 3 - Seeder: - 28条婚姻参数默认配置 - 5个婚礼档位 - 3种戒指道具(银/金/钻)
55 lines
1.5 KiB
PHP
55 lines
1.5 KiB
PHP
<?php
|
||
|
||
/**
|
||
* 文件功能:婚姻亲密度来源枚举
|
||
*
|
||
* 集中管理所有合法的亲密度增减来源标识,写入 marriage_intimacy_logs.source。
|
||
* 新增来源只需在此加一行,数据库字段无需变更(VARCHAR 类型)。
|
||
*
|
||
* @author ChatRoom Laravel
|
||
*
|
||
* @version 1.0.0
|
||
*/
|
||
|
||
namespace App\Enums;
|
||
|
||
enum IntimacySource: string
|
||
{
|
||
/** 每日时间奖励(Horizon 00:00 定时任务) */
|
||
case DAILY_TIME = 'daily_time';
|
||
|
||
/** 双方同时在线(AutoSaveJob 每分钟检测) */
|
||
case ONLINE_TOGETHER = 'online_together';
|
||
|
||
/** 收到伴侣送花 */
|
||
case RECV_FLOWER = 'recv_flower';
|
||
|
||
/** 向伴侣送花 */
|
||
case SEND_FLOWER = 'send_flower';
|
||
|
||
/** 发送私聊消息(每2条 +1) */
|
||
case PRIVATE_CHAT = 'private_chat';
|
||
|
||
/** 结婚时戒指初始亲密度加成(一次性) */
|
||
case WEDDING_BONUS = 'wedding_bonus';
|
||
|
||
/** 管理员手动调整 */
|
||
case ADMIN_ADJUST = 'admin_adjust';
|
||
|
||
/**
|
||
* 返回该来源的中文名称(后台统计展示用)。
|
||
*/
|
||
public function label(): string
|
||
{
|
||
return match ($this) {
|
||
self::DAILY_TIME => '每日时间奖励',
|
||
self::ONLINE_TOGETHER => '双方同时在线',
|
||
self::RECV_FLOWER => '收到伴侣送花',
|
||
self::SEND_FLOWER => '向伴侣送花',
|
||
self::PRIVATE_CHAT => '私聊消息',
|
||
self::WEDDING_BONUS => '结婚戒指加成',
|
||
self::ADMIN_ADJUST => '管理员调整',
|
||
};
|
||
}
|
||
}
|