官方不提供现金交易,线下交易风险自担,请仔细鉴别!
每日签到 wajxy_checkin
每日签到领积分插件:连续签到递增奖励、周期额外奖励、可配置补签规则,首页右侧栏显示签到按钮与本月签到日历。
版本:1.0.4
适配核心:Xiuno X 1.1.x(
bbs_version: "1.1")作者:金小颖论坛
一、安装
解压
wajxy_checkin_v1.0.4.zip,把内层文件夹wajxy_checkin上传到站点plugin/目录下(最终路径plugin/wajxy_checkin/)。后台 → 插件 → 找到「每日签到」→ 安装 → 启用。
删除
tmp/目录下的编译缓存(安装/启用后钩子与模板需要重新编译)。后台 → 插件 → 每日签到 → 设置,按需调整参数。
二、功能
签到与奖励
第 N 天奖励 = 基础值 + 递增 ×(N−1),可设单日上限封顶。
基础值可固定也可随机:「基础奖励下限」~「基础奖励上限」,上限大于下限时每次在区间内随机;上限为 0 或 ≤ 下限则为固定值。
连续签到满「奖励周期」的整数倍时叠加一次额外奖励(默认满 7 天 +20)。
奖励类型可选积分 credits 或金币 golds;积分模式下还可每日额外发金币。
断签是否重置连续天数可开关。
补签
可设单次消耗、可回溯天数、每日补签次数上限。
补签先扣费再写记录;写入失败自动退回已扣的费用。
「补签报回连续」开启后会从明细倒推重新接上连续链。
前台展示
首页右侧栏(站点信息卡下方)显示签到卡:连续天数徽章、签到按钮、今日可得提示、本月日历、可补签日期胶囊按钮。
日历中蓝色=正常签到,黄色=补签,今日带高亮描边。
纯原生 JS + fetch,不依赖 jQuery / Alpine,自动跟随主题色与深色模式。
后台设置页
5 个分组页签:基础设置 / 奖励规则 / 补签规则 / 展示与范围 / 数据维护。含 Hero 头部、环境统计卡、开关行、胶囊输入、粘性保存栏与居中版权栏。
三、数据结构
表 | 说明 |
|---|---|
| 签到明细, |
| 用户汇总:连续天数、最大连续、累计天数、累计积分、补签次数 |
设置项存于 setting 的 wajxy_checkin 键,卸载时随表一并清理。
四、并发与安全
每次签到/补签用
GET_LOCK('wajxy_checkin_<uid>', 5)按用户串行化,finally释放。明细写入走
INSERT IGNORE+ 唯一索引兜底,重复请求返回「今天已经签过了」而非重复发奖。发奖调用核心
CreditsService::add()并检查返回值,失败即回滚明细;多步发放部分失败时只回滚已入账部分,回滚失败写error_log。路由层按 uid + IP 限频(60 秒 10 次),非 GET 请求由核心统一校验 CSRF。
后台保存时服务端重做数值钳制、枚举白名单与用户组 ID 归一化,不信任前端
min/max。仅
gid为 1/2 可进入设置页。
截图 1
- 基础奖励支持区间随机:新增「基础奖励上限」`base_credits_max`,大于下限时每次签到在区间内随机取值。
- 前台提示自动切为区间展示(如「今日可得 5-12 积分」),不会预先抽取随机值。