2026-02-28 12:49:26 +08:00
|
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 文件功能:积分来源活动枚举
|
|
|
|
|
|
* 集中管理所有合法的 source 标识值,新增活动只需在此加一行常量,数据库字段无需任何变更。
|
|
|
|
|
|
* 对应数据表:user_currency_logs.source(varchar 字段,非 ENUM,可自由扩展)
|
|
|
|
|
|
*
|
|
|
|
|
|
* @author ChatRoom Laravel
|
2026-03-01 11:09:29 +08:00
|
|
|
|
*
|
2026-02-28 12:49:26 +08:00
|
|
|
|
* @version 1.0.0
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
namespace App\Enums;
|
|
|
|
|
|
|
|
|
|
|
|
enum CurrencySource: string
|
|
|
|
|
|
{
|
|
|
|
|
|
/** 自动存点(Horizon 定时任务,每5分钟给在线用户加经验/金币) */
|
2026-03-01 11:09:29 +08:00
|
|
|
|
case AUTO_SAVE = 'auto_save';
|
2026-02-28 12:49:26 +08:00
|
|
|
|
|
|
|
|
|
|
/** 钓鱼收竿奖励(获得经验或金币) */
|
|
|
|
|
|
case FISHING_GAIN = 'fishing_gain';
|
|
|
|
|
|
|
|
|
|
|
|
/** 钓鱼抛竿消耗(扣除金币) */
|
|
|
|
|
|
case FISHING_COST = 'fishing_cost';
|
|
|
|
|
|
|
|
|
|
|
|
/** 送出礼物(送方扣金币) */
|
2026-03-01 11:09:29 +08:00
|
|
|
|
case SEND_GIFT = 'send_gift';
|
2026-02-28 12:49:26 +08:00
|
|
|
|
|
|
|
|
|
|
/** 收到礼物(收方魅力增加) */
|
2026-03-01 11:09:29 +08:00
|
|
|
|
case RECV_GIFT = 'recv_gift';
|
2026-02-28 12:49:26 +08:00
|
|
|
|
|
|
|
|
|
|
/** 新人礼包(首次登录赠送金币) */
|
|
|
|
|
|
case NEWBIE_BONUS = 'newbie_bonus';
|
|
|
|
|
|
|
|
|
|
|
|
/** 商城购买消耗(扣除金币) */
|
2026-03-01 11:09:29 +08:00
|
|
|
|
case SHOP_BUY = 'shop_buy';
|
2026-02-28 12:49:26 +08:00
|
|
|
|
|
|
|
|
|
|
/** 管理员手动调整(后台直接修改经验/金币/魅力) */
|
|
|
|
|
|
case ADMIN_ADJUST = 'admin_adjust';
|
|
|
|
|
|
|
2026-03-01 11:09:29 +08:00
|
|
|
|
/** 职务奖励(在职管理员通过名片弹窗向用户发放奖励金币) */
|
|
|
|
|
|
case POSITION_REWARD = 'position_reward';
|
|
|
|
|
|
|
2026-02-28 12:49:26 +08:00
|
|
|
|
// ─── 以后新增活动,在这里加一行即可,数据库无需变更 ───────────
|
|
|
|
|
|
// case SIGN_IN = 'sign_in'; // 每日签到
|
|
|
|
|
|
// case TASK_REWARD = 'task_reward'; // 任务奖励
|
|
|
|
|
|
// case PVP_WIN = 'pvp_win'; // PVP 胜利奖励
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 返回该来源的中文名称,用于后台统计展示。
|
|
|
|
|
|
*/
|
|
|
|
|
|
public function label(): string
|
|
|
|
|
|
{
|
|
|
|
|
|
return match ($this) {
|
2026-03-01 11:09:29 +08:00
|
|
|
|
self::AUTO_SAVE => '自动存点',
|
2026-02-28 12:49:26 +08:00
|
|
|
|
self::FISHING_GAIN => '钓鱼奖励',
|
|
|
|
|
|
self::FISHING_COST => '钓鱼消耗',
|
2026-03-01 11:09:29 +08:00
|
|
|
|
self::SEND_GIFT => '送出礼物',
|
|
|
|
|
|
self::RECV_GIFT => '收到礼物',
|
2026-02-28 12:49:26 +08:00
|
|
|
|
self::NEWBIE_BONUS => '新人礼包',
|
2026-03-01 11:09:29 +08:00
|
|
|
|
self::SHOP_BUY => '商城购买',
|
2026-02-28 12:49:26 +08:00
|
|
|
|
self::ADMIN_ADJUST => '管理员调整',
|
2026-03-01 11:09:29 +08:00
|
|
|
|
self::POSITION_REWARD => '职务奖励',
|
2026-02-28 12:49:26 +08:00
|
|
|
|
};
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|