Commit Graph
28 Commits
Author SHA1 Message Date
ypsdf1 f32c7cfe86 收银台双模式收款与打包配置全链路实现
- 收银员新增 can_cash 现金收款权限字段(登录/列表/新增/编辑全链路)
- 购物车结算支持 pay_mode=cash/bond 双模式,现金模式跳过余额校验与扣债券
- 收银台前端读取可配置 packmoney 实时报价,修复此前硬编码+2元与实际收费不符
- 管理后台新增打包费(packmoney)与环保减免(green_discount)配置端口
- 同步接口新增 get/set_shop_config,Java端定时器拉取配置
- 购物小票书塞入首个潜影盒,免费潜影盒订正为原色(SHULKER_BOX)
2026-07-06 23:48:44 +08:00
ypsdf1 7a283ae4e0 商城购物车模式+收银台结算+后台折扣配置:前端购物车FAB/抽屉/结算弹窗,后端buy_cart接口事务批量购买,admin购物车配置卡片,cart_config/save_shop_config接口 2026-07-06 16:39:47 +08:00
youpaishidifu 1bc97f6980 feat: 领地管理增强 - 毛玻璃改主弹窗 + pending队列 + 同步状态查询 + 玩家前端UI 2026-07-01 01:20:15 +08:00
ypsdf1 3dacc80fe1 feat: 领地删除走pending队列 + sync清理PHP残留
- land_api: handleDeleteLand改为写web_admin_changes队列
- land_api: 新增delete_land_callback处理Java回调
- sync.php: syncLands增加删除PHP中不存在的领地
- 修复admin面板过户按钮(同步到plugin目录)
2026-06-29 20:45:38 +08:00
ypsdf1 3925dea586 修复: sync.php新增check_player_registered action,解决Java端拉取注册数据报'未知操作' 2026-06-28 23:55:43 +08:00
ypsdf1 5f3bd70987 fix: SQLite只读数据库修复+远程权限修复API
- getDB(): 新增自动chmod修复数据库文件/WAL/SHM权限
- getDB(): initTables和migrateDatabase加try-catch容错,防止写入失败导致500
- 新增fixDbPermissions()远程修复API: 可修复目录/数据库/WAL文件权限+写入测试
- sync.php: 注册fix_db_permissions action
2026-06-28 10:45:33 +08:00
ypsdf1 5f43fb1407 feat: 用户组同步+管理API (sync_user_groups, land_api endpoints) 2026-06-27 23:05:27 +08:00
ypsdf1 fc42b777ca 修复配置值前导零bug:handleUpdateConfig/syncConfig去除前导0
- handleUpdateConfig: (string)(int)去前导零
- syncConfig: 同样处理Java推送的配置值
2026-06-27 20:15:39 +08:00
ypsdf1 b8dd9b7cd0 修复sync_lands报错:SQLITE3_DOUBLE改为SQLITE3_FLOAT 2026-06-27 14:14:20 +08:00
ypsdf1 967feb9b94 修复领地设置不同步:PHP端完整接收所有字段
问题1:handleSyncLands只存13个基础字段,30+权限字段全部丢弃
修复:INSERT扩展到63列,完整接收Java推送的所有deny_*、效果、传送点字段

问题2:web_area_lands表缺少权限列
修复:initLandTables添加46个ALTER TABLE迁移,兼容已有表

问题3:validateWebAccess检查窗口不匹配
修复:web_login_verified检查改用token实际有效期(非硬编码5分钟)
2026-06-27 13:37:29 +08:00
ypsdf1 9905f28886 新增sync_config配置同步端点 2026-06-27 12:27:30 +08:00
ypsdf1 3dfa7df18c 修复sync.php列值不匹配导致领地同步失败 2026-06-26 22:56:07 +08:00
ypsdf1 8de90708dc 修复:syncLands INSERT列值数量不匹配(deny_all_effects重复)+INSERT错误处理 2026-06-26 22:11:36 +08:00
ypsdf1 aa45bd5ca2 修复领地同步: 补全缺失字段迁移(deny_block_break等30+列)、修复重复deny_all_effects列、添加调试日志 2026-06-26 21:25:40 +08:00
ypsdf1 57fbc1ffc1 fix: Web自动登录安全+领地同步
1. validateWebAccess的view操作增加web_login_verified检查(5分钟有效)
2. pushPlayerLoginStatus在online=1时同步写入web_login_verified
3. 防止偷token自动登录: 未通过Java验证的token要求密码
2026-06-26 19:18:40 +08:00
ypsdf1 9eb0707729 问题10修复: CDK兑换不到账+假密码+隐藏密码框
player.php:
- 商城购买:总价≤1000时隐藏密码输入框,动态切换
- CDK兑换:完全移除密码输入框(CDK免验证)
- doBuy:小额交易不强制密码,大额才要求
- doCDKExchange:移除密码字段

shop.php:
- 移除硬性密码检查,交给validateWebAccess处理

cdk.php:
- 远程CDK兑换:改为cdk_redeem+pending(之前completed被Java跳过)
- 远程CDK兑换同时更新bond_cache+sync_requests
2026-06-26 10:21:49 +08:00
ypsdf1 cd86441a7a v21: PHP端增加Web登录全链路日志+验证状态同步
- check_web_login_confirmations: 返回php_verified字段(查询web_login_verified表供Java判断)
- webLoginRequest: 增加debugLog记录新请求创建
- completeWebLoginRequest: debugLog增加player和wrote_confirmations字段
- checkPendingWebLogins: 增加debugLog记录轮询结果
2026-06-25 19:36:05 +08:00
ypsdf1 cd6010bfbb v13: 安全加固 - 禁止PHP自验证密码
安全修复:
- sync.php: verifyWebPassword()函数体改为error(),完全禁止PHP直接验证密码
- 所有密码验证必须走web_login_request → Java插件本地验证 → complete_web_login_request回调
2026-06-25 14:42:01 +08:00
ypsdf1 8edc94b848 v12: PHP密码验证安全修复 + land_api GET参数支持
安全修复:
- sync.php: 删除verify_web_password端点,禁止PHP自验证密码
- core.php: validateWebAccess大额交易密码验证改为检查web_login_verified(Java验证结果)
- 密码验证强制走web_login_request流程

其他:
- land_api.php: handleAckAdminChanges支持GET参数ids(避免POST Content-Type问题)
2026-06-25 14:19:08 +08:00
ypsdf1 98f9cb6410 @
领地系统大重构:全局配置+数据入库+新权限+传送点+安全删除+容器扩展

- 全局配置改为area_config表(替代txt文件)
- area_lands扩展到61列,新增10个权限布尔+5个传送点坐标
- 新增投掷物/发光/红石/门禁/音频/拴绳/农作物/剪毛/投喂等权限
- /protect settp/tp传送点系统
- 删除1分钟延迟+二次确认
- 安全传送判定(空气+实体+边界3格)
- 容器权限覆盖所有UI类型
- .gitignore清理敏感文件
@
2026-06-23 16:51:30 +08:00
ypsdf1 ed74d09b6a feat: 游客模式毛玻璃登录弹窗 + C位登录按钮 + 60秒定时弹窗
- admin.php: 修复go()缺失reset_requests路由(黑屏bug)
- player.php: 毛玻璃登录弹窗(backdrop-filter:blur)
- player.php: 游客模式C位大按钮(脉冲动画)
- player.php: 60秒定时弹窗(未登录自动弹出)
- sync.php: 添加领地同步接口(sync_lands/sync_land_shop)
- land_api.php: 领地管理API(新建)
2026-06-22 22:56:06 +08:00
ypsdf1 66cc7b8925 fix: 修复Web轮询500错误 — 移除只读函数的BEGIN IMMEDIATE、catch(Exception)→catch(Throwable)、增加错误日志 2026-06-22 18:54:46 +08:00
ypsdf1 4c7ec7490f fix: 修复库存不同步bug(item_id字段名不匹配); 新增库存高频轮询; 新增工单系统; 修复admin_stock竞态条件; 修复opcache_reset竞态 2026-06-22 16:54:13 +08:00
ypsdf1 d7a986894c CDK兑换修复:maxlength扩展+日期搜索+商品分类+同IP折叠+数据库锁修复 2026-06-20 14:02:41 +08:00
ypsdf1 885e70f0f5 添加Web前端代码 2026-06-19 16:02:14 +08:00
ypsdf1 9bae160ce0 Java:新增ip推送端口,后端可以查看玩家ip及归属
php:新增ip属地、实时在线数据,可以查看玩家ip、归属和实时在线情况
2026-06-18 12:35:22 +08:00
ypsdf1 0c9a5b0f53 feat: Web后台功能增强 - 即时通知机制、移动端适配、在线用户管理、主题切换 2026-06-14 17:02:39 +08:00
ypsdf1 54cd3c4f59 feat: 初始提交 Web 管理后台源码 (PHP) 2026-06-14 16:35:07 +08:00