版本历史
20260905-7
联动打字:清空/提交自动联动+浮窗按钮智能显隐+发布节奏优化 丨 积分兑换入口重构+反向验证
继续打磨输入体验:提交后手机自动记录并清空、切换输入窗更丝滑;发布/发送按钮有内容才出现、与电脑内容一致自动隐身;提交自动按钮图标文字更清晰;版本更新改为每天集中发布一次,更稳定省心~
[1] 新增 【联动打字】-全端 输入窗实时同步:打开输入面板先同步电脑输入框内容,手机端打字、语音转文字边输入边实时上屏,删除不再被恢复
[2] 新增 【联动打字】-全端 锁定输入窗:开启后手机输入始终作用于打开面板时的原始窗口与原始输入框,电脑上随意切换窗口也不影响
[3] 新增 【联动打字】-全端 反向验证:直接在电脑上回车发送时,手机端同步记录发送内容并清空输入框、解除输入窗绑定
[4] 新增 【联动打字】-全端 智能提交:输入完成关闭输入面板即自动提交(可选回车/Ctrl+回车/自动识别,电脑端可逐窗口设定提交键),提交后自动存历史并清空输入框
[5] 优化 【联动打字】-全端 提交后自动保存发送记录并清空输入框:电脑确认提交后手机端自动记下这则发送内容,无需再手动清
[6] 优化 【联动打字】-全端 清空后自动跟随新输入窗:手机清空输入框后,电脑端锁定目标切到当前聚焦的输入窗,切换应用输入更丝滑
[7] 优化 【联动打字】-移动端 输入框内字数计数+清空+发送固定在右下角,输入为空时不显示清空按钮,长按菜单去掉重复的清空项
[8] 优化 【联动打字】-移动端 发布/发送按钮智能显隐:没有内容时自动隐藏,手机与电脑上文字一致时也不打扰,不一致时才出现,轻轻一点即发
[9] 优化 【联动打字】-移动端 「提交·自动」按钮焕新:图标更清晰、文字加粗高对比,一眼看清当前提交方式
[10] 优化 【联动打字】-全端 更新发布更从容:每天集中发布一次版本(前一天全部更新+当天新增一起上线),不再每次改动都弹版本号
[11] 改进 积分兑换入口重构:积分统计跳转H5详情页,文创页兑换浮层升级双Tab(兑课程+兑续费金),浮动入口显示条件放宽
联动打字:清空/提交自动联动+浮窗按钮智能显隐+发布节奏优化 丨 积分兑换入口重构+反向验证
继续打磨输入体验:提交后手机自动记录并清空、切换输入窗更丝滑;发布/发送按钮有内容才出现、与电脑内容一致自动隐身;提交自动按钮图标文字更清晰;版本更新改为每天集中发布一次,更稳定省心~
- [1] 【联动打字】-全端 输入窗实时同步:打开输入面板先同步电脑输入框内容,手机端打字、语音转文字边输入边实时上屏,删除不再被恢复
- [2] 【联动打字】-全端 锁定输入窗:开启后手机输入始终作用于打开面板时的原始窗口与原始输入框,电脑上随意切换窗口也不影响
- [3] 【联动打字】-全端 反向验证:直接在电脑上回车发送时,手机端同步记录发送内容并清空输入框、解除输入窗绑定
- [4] 【联动打字】-全端 智能提交:输入完成关闭输入面板即自动提交(可选回车/Ctrl+回车/自动识别,电脑端可逐窗口设定提交键),提交后自动存历史并清空输入框
- [5] 【联动打字】-全端 提交后自动保存发送记录并清空输入框:电脑确认提交后手机端自动记下这则发送内容,无需再手动清
- [6] 【联动打字】-全端 清空后自动跟随新输入窗:手机清空输入框后,电脑端锁定目标切到当前聚焦的输入窗,切换应用输入更丝滑
- [7] 【联动打字】-移动端 输入框内字数计数+清空+发送固定在右下角,输入为空时不显示清空按钮,长按菜单去掉重复的清空项
- [8] 【联动打字】-移动端 发布/发送按钮智能显隐:没有内容时自动隐藏,手机与电脑上文字一致时也不打扰,不一致时才出现,轻轻一点即发
- [9] 【联动打字】-移动端 「提交·自动」按钮焕新:图标更清晰、文字加粗高对比,一眼看清当前提交方式
- [10] 【联动打字】-全端 更新发布更从容:每天集中发布一次版本(前一天全部更新+当天新增一起上线),不再每次改动都弹版本号
- [11] 积分兑换入口重构:积分统计跳转H5详情页,文创页兑换浮层升级双Tab(兑课程+兑续费金),浮动入口显示条件放宽
20260904
修复电脑端开机自启失效 + 移动端输入时闪退
今天连修两个难受的Bug!电脑端开机自启彻底弄稳了——以前是注册表里躺着旧版本的"遗书",重启当然找不到人,现在每次启动自动校准自启路径,还上了注册表+任务计划双通道保险,版本怎么换都跟着走。移动端也不再"玻璃心"了:之前电脑端一关,手机输入着就莫名其妙闪退,其实是被后台线程悄悄搞崩的,现在稳稳的,断开只温柔提示"连接失败,正在重连",绝不退出,输入一个字都不丢~
[1] 新增 【书笙OS】-后端 退款功能强化:新增退款资格统一判定(支付后半年内可退、活动开始前3天停止退款、课程按已用课次折算——全部用完不可退/部分使用按剩余比例计算可退额);学员仅可「申请退款」(选课次、金额自动计算),管理员卡片「退款申请审核」同意后执行退款(微信退款与通知由管理员执行)或填写理由拒绝;按钮「标记退款」改名「退款」、「联动退回课次」改「退回课次」;appbar 新增「订单说明」(仅管理员)
[2] 新增 【书笙OS】-后端 订单操作记录:退款/关闭订单/备注/代下单/核销/改状态/软删除等操作写入订单BZ.oplog(含操作人、时间、金额与课次明细),后台订单页新增「订单操作记录」浮窗——页面级按钮在筛选右侧、按当前筛选聚合显示(管理员/校长可见),订单级按钮仅管理员可见且仅有记录的订单显示
[3] 修复 【书笙OS】-后端 RBAC 全面收紧:lv2(注册用户) 移除分类管理权限 manage_category,lv1~lv8 移除零引用死权限 manage_upload/view_user,管理类权限仅保留在 lv6 及以上管理梯队(高级编辑/版主/副管理员/管理员/超管)
[4] 修复 【书笙OS】-后端 修复订单权限越权:RBAC 中 lv1/lv2(普通/注册用户)被误授 manage_order_all 等全部订单管理权限,导致学员可进入后台订单页使用「标记退款」发起真实微信退款,且可操作全站任意订单;已移除 lv1/lv2 的订单管理类权限,学员回归仅查看自己的订单
[5] 修复 【联动打字】-PC 修复开机自启失效:注册表一直指向已不存在的旧版本文件导致重启无法自动启动,现每次启动自动校准自启指向当前版本,开启后重启电脑软件必定自动运行
修复电脑端开机自启失效 + 移动端输入时闪退
今天连修两个难受的Bug!电脑端开机自启彻底弄稳了——以前是注册表里躺着旧版本的"遗书",重启当然找不到人,现在每次启动自动校准自启路径,还上了注册表+任务计划双通道保险,版本怎么换都跟着走。移动端也不再"玻璃心"了:之前电脑端一关,手机输入着就莫名其妙闪退,其实是被后台线程悄悄搞崩的,现在稳稳的,断开只温柔提示"连接失败,正在重连",绝不退出,输入一个字都不丢~
- [1] 【书笙OS】-后端 退款功能强化:新增退款资格统一判定(支付后半年内可退、活动开始前3天停止退款、课程按已用课次折算——全部用完不可退/部分使用按剩余比例计算可退额);学员仅可「申请退款」(选课次、金额自动计算),管理员卡片「退款申请审核」同意后执行退款(微信退款与通知由管理员执行)或填写理由拒绝;按钮「标记退款」改名「退款」、「联动退回课次」改「退回课次」;appbar 新增「订单说明」(仅管理员)
- [2] 【书笙OS】-后端 订单操作记录:退款/关闭订单/备注/代下单/核销/改状态/软删除等操作写入订单BZ.oplog(含操作人、时间、金额与课次明细),后台订单页新增「订单操作记录」浮窗——页面级按钮在筛选右侧、按当前筛选聚合显示(管理员/校长可见),订单级按钮仅管理员可见且仅有记录的订单显示
- [3] 【书笙OS】-后端 RBAC 全面收紧:lv2(注册用户) 移除分类管理权限 manage_category,lv1~lv8 移除零引用死权限 manage_upload/view_user,管理类权限仅保留在 lv6 及以上管理梯队(高级编辑/版主/副管理员/管理员/超管)
- [4] 【书笙OS】-后端 修复订单权限越权:RBAC 中 lv1/lv2(普通/注册用户)被误授 manage_order_all 等全部订单管理权限,导致学员可进入后台订单页使用「标记退款」发起真实微信退款,且可操作全站任意订单;已移除 lv1/lv2 的订单管理类权限,学员回归仅查看自己的订单
- [5] 【联动打字】-PC 修复开机自启失效:注册表一直指向已不存在的旧版本文件导致重启无法自动启动,现每次启动自动校准自启指向当前版本,开启后重启电脑软件必定自动运行
20260903
财务记账强制规则R1-R9全面落地,作品签视觉重制,作品集分享升级朋友圈书封面卡片
今天两件大事一起上新!财务系统装上铁笼子——记账正确性强制规则R1-R9全面落地:历史账期锁死只读、借贷不平写不进、没单据不让生成、写操作要审批、每月自动对账告警、流水重复导入有幂等去重挡着,发票导入还自动识别费用类别、关联研发项目。作品集这边也很热闹:朋友圈分享升级为书封面卡片预览,点开直达作品集;分享按钮有了数字角标,页面顶栏新增浏览量标识;微信H5打开作品集会弹出预览页提示,一键拉起小程序继续看。墨韵新生作品签也全面换新装:主标题直接用上书法logo真迹,还有备选排版随时可切换对比,深墨主色配红印章书法logo,裁切更安全打印更清晰,卡片高级感拉满~
[1] 新增 【书笙智能财务系统】-全端 记账正确性强制规则系统(R1-R9):历史账期只读、借贷必平自检、凭证须有底层单据、写操作审批、科目归置规则、每月对账告警、防重复幂等去重、发票ecat自动识别、UTF-8编码规范
[2] 优化 【书笙智能财务系统】-全端 凭证确认操作增加二次借贷平衡校验(从数据库重读分录防止篡改),历史账期写操作全面拦截
[3] 优化 【书笙智能财务系统】-后端 auto_from_bank增加批次内幂等去重(processedIds数组),防止同一批流水重复调用生成凭证
[4] 优化 【书笙智能财务系统】-后端 发票导入自动识别费用类别ecat(根据明细名称关键词推断1-7类),禁止默认填8(其他),研发发票自动关联研发项目rdp
[5] 优化 【书笙智能财务系统】-全端 仪表盘新增reconcile_alert对账告警字段,支持1101台账余额与余利宝实际余额定期核对
[6] 优化 【书笙智能财务系统】-后端 财务MCP更新system-rules资源新增第九章记账强制规则,工具描述标注R1-R9
[7] 新增 【墨韵新生作品签】-前端 作品签新增「墨韵新生」毛笔书法logo:置于正文左下方二维码左侧空白处(doc原图14998px巨图缩小重着色,白笔画转深墨、保留红印章)
[8] 优化 【墨韵新生作品签】-前端 移除卡片间虚线裁切线改为四边4mm虚化渐变过渡,背景红色光晕改为中心径向渐变向四边渐隐(交界处纸色一致),裁切稍有偏移也保证成品美观
[9] 新增 【书笙OS分享组件】-全端 分享按钮数字角标(分享数):记录每次点击分享按钮的次数,计数链路与点赞完全一致——①本地缓存去重(localStorage 键 ss_share_锚点,5 分钟内同一分享只记一次,即只向服务器发送一次数据);②上报接口 ShareN 后增量写入 Redis 缓冲(hash ShareN);③队列循环任务 SS_sharen_flush 每 5 分钟定时把缓冲增量批量回写数据库(先扣减缓冲再写库,不丢不重);角标与评论组件同款暖棕胶囊,0 时隐藏、超过 99 显示 99+
[10] 新增 【书笙OS作品集】-前端 作品集页分享数锚点为 p+活动ID(页面级单钮,翻页不换锚点),计数随 anthology_api 的 info.sn 下发(叠加未回写缓冲,缓存重建不回跳),数据就绪后回填角标,零额外请求;点赞的定位/回写/读取/缓存四个函数新增 field 参数(zn 赞、sn 分享),共用同一套落点规则
[11] 新增 【书笙OS作品集】-前端 微信H5打开作品集页时弹出页面中间弹窗「当前页面为预览页面」,内嵌开放标签大按钮(点击拉起小程序webview页pages/w?url=当前页,含oid/tid深链):关闭按钮固定在蒙版右上角(离主按钮尽量远),点击后正常H5浏览;遮罩只压暗不模糊保背景可见;浮窗仅右上角✕可关闭(launch事件在确认框点取消时也会回调,故不监听);确认/取消进入小程序后返回微信均见原页面继续浏览(修复记录101 v5)
[12] 修复 【书笙OS作品集】-后端 常量 SS_ANTHOLOGY_TTL 此前从未定义(多处注释引用却无 define),接口上下文(/s/index.php 只加载 config.php 与 ss.php)调用缓存即时加一会抛 Undefined constant,导致点赞与分享的角标即时更新全部静默失效,已在 config.php 补上定义(86400 秒)
[13] 优化 【墨韵新生作品签】-前端 整卡高级感重设计:深墨#2C2420主色替代通篇红(红色仅留短红线+作品名点缀),背景光晕改暖棕居中径向渐变仍四边渐隐保裁切安全,标题下改发丝线+短红线,缩略图加发丝边框,二维码改墨点,书法logo调浅至0.55
[14] 新增 【书笙OS作品集】-前端 作品集页浏览量计数:此前本页无任何浏览量记录,现页面渲染确认活动有效后即对 Redis 计数(hash Vn)加1,与文章/活动浏览量同机制,队列循环任务 SS_vn_flush 每 5 分钟批量回写活动内容 SS_post.Vn;无去重、无额外请求,成本约等于一次 Redis HINCRBY
[15] 新增 【书笙OS作品集】-前端 作品集页顶栏新增浏览量标识:右侧「眼睛+浏览数」被动徽标(管理按钮前,所有用户可见),数据为数据库累计加未回写 Redis 缓冲(含本次访问),服务端直出零额外请求,超 1 万显示 x.x 万;与顶栏胶囊同视觉语言但纯展示不可点,打印导出 PDF 与全屏放大时随顶栏整体隐藏
[16] 优化 【墨韵新生作品签】-前端 背景光晕恢复红色(仍居中径向渐隐保裁切安全),次要文字加深(#5A5044/#544B41)解决打印发灰不清晰
[17] 新增 【书笙文化】-小程序 朋友圈分享中间页全面焕新(续):修复顶部裁切(移除overflow:hidden避免书封面浮动动画上移时出现横线裁切);左上角新增返回按钮支持navigateBack返回上一页;分享引导箭头下移至指向微信胶囊而非状态栏;作品介绍模式保留前置名称与作者信息,detail参数追加在其后显示完整作品介绍;CTA按钮改为屏幕底部固定悬浮;虚拟点赞/评论数字基于内容hash确定性随机;说明微信不提供分享成功回调,已采用官方推荐跳转链路替代
[18] 优化 【书笙文化】-小程序 朋友圈分享中间页细化:分享引导箭头按微信胶囊真实坐标(getMenuButtonBoundingClientRect,uni-app x 无Sync后缀)定位并左移至胶囊左侧1/4处,正好指向"⋯"三点分享按钮,避免误指右侧关闭按钮;朋友圈单页模式(scene=1154)右下角新增"👇前往小程序"下落提示并贴底(bottom仅12rpx+安全区),指向页面底部微信跳转组件;未传作品详情时描述原样展示(保留作品名/作者/年龄性别,不再替换"来自…"内容);书封面浮动动画改为只向下浮动,规避向上位移导致的原生渲染层顶部横线伪影
[19] 修复 【书笙文化】-小程序 分享标题固定用H5传入的title参数(含作品名与作者信息),不再被帖子数据(currentPost.T)覆盖
[20] 优化 【书笙OS作品集】-前端 作品集页朋友圈分享适配小程序新书封面卡片预览(H5侧配套):分享跳转携带作品集标识,朋友圈预览展示书封面卡片;作品页分享附带当前作品图片、标题与页面信息,作品有创作说明时一并带入预览页展示,从朋友圈进入直达作品集
[21] 优化 【书笙OS分享组件】-前端 电脑浏览器点「微信好友」分享失败不再卡死:系统分享面板拉不出目标(如电脑未登微信)或设备不支持时,自动弹出二维码,手机微信扫码即可打开页面转发;用户主动关闭面板则不弹码不打扰
[22] 优化 【墨韵新生作品签】-前端 移除标题下短红线(.sc-redline),仅保留通栏发丝线分隔,页面更干净
[23] 优化 【墨韵新生作品签】-前端 主标题里的「墨韵新生」四字直接换上毛笔书法logo真迹开路并放大加码,后面的破折号精简为一根更利落,标题字也放大一档、副标题再小巧一号,主次分明;副标题右移贴齐卡片最右侧与左侧标题遥相呼应;作品简介瘦身到精华百字版,密度刚刚好;还学会了「见缝插针」的环绕排版——上方文字铺满整行,碰到二维码才乖乖拐弯换行,再也不和二维码打架;详情介绍加了首行缩进两字,更有书法作品的文书味儿;没写简介的小朋友作品也不会大片留白,姓名和作品名手拉手紧凑一组居中站好,上下不再空得难受;卡片正文处不再重复出现小logo;另附赠一套「书法logo居左放大+标题副标题两行锁定」的备选排版,页面地址后加&layout=2即可预览对比挑选
财务记账强制规则R1-R9全面落地,作品签视觉重制,作品集分享升级朋友圈书封面卡片
今天两件大事一起上新!财务系统装上铁笼子——记账正确性强制规则R1-R9全面落地:历史账期锁死只读、借贷不平写不进、没单据不让生成、写操作要审批、每月自动对账告警、流水重复导入有幂等去重挡着,发票导入还自动识别费用类别、关联研发项目。作品集这边也很热闹:朋友圈分享升级为书封面卡片预览,点开直达作品集;分享按钮有了数字角标,页面顶栏新增浏览量标识;微信H5打开作品集会弹出预览页提示,一键拉起小程序继续看。墨韵新生作品签也全面换新装:主标题直接用上书法logo真迹,还有备选排版随时可切换对比,深墨主色配红印章书法logo,裁切更安全打印更清晰,卡片高级感拉满~
- [1] 【书笙智能财务系统】-全端 记账正确性强制规则系统(R1-R9):历史账期只读、借贷必平自检、凭证须有底层单据、写操作审批、科目归置规则、每月对账告警、防重复幂等去重、发票ecat自动识别、UTF-8编码规范
- [2] 【书笙智能财务系统】-全端 凭证确认操作增加二次借贷平衡校验(从数据库重读分录防止篡改),历史账期写操作全面拦截
- [3] 【书笙智能财务系统】-后端 auto_from_bank增加批次内幂等去重(processedIds数组),防止同一批流水重复调用生成凭证
- [4] 【书笙智能财务系统】-后端 发票导入自动识别费用类别ecat(根据明细名称关键词推断1-7类),禁止默认填8(其他),研发发票自动关联研发项目rdp
- [5] 【书笙智能财务系统】-全端 仪表盘新增reconcile_alert对账告警字段,支持1101台账余额与余利宝实际余额定期核对
- [6] 【书笙智能财务系统】-后端 财务MCP更新system-rules资源新增第九章记账强制规则,工具描述标注R1-R9
- [7] 【墨韵新生作品签】-前端 作品签新增「墨韵新生」毛笔书法logo:置于正文左下方二维码左侧空白处(doc原图14998px巨图缩小重着色,白笔画转深墨、保留红印章)
- [8] 【墨韵新生作品签】-前端 移除卡片间虚线裁切线改为四边4mm虚化渐变过渡,背景红色光晕改为中心径向渐变向四边渐隐(交界处纸色一致),裁切稍有偏移也保证成品美观
- [9] 【书笙OS分享组件】-全端 分享按钮数字角标(分享数):记录每次点击分享按钮的次数,计数链路与点赞完全一致——①本地缓存去重(localStorage 键 ss_share_锚点,5 分钟内同一分享只记一次,即只向服务器发送一次数据);②上报接口 ShareN 后增量写入 Redis 缓冲(hash ShareN);③队列循环任务 SS_sharen_flush 每 5 分钟定时把缓冲增量批量回写数据库(先扣减缓冲再写库,不丢不重);角标与评论组件同款暖棕胶囊,0 时隐藏、超过 99 显示 99+
- [10] 【书笙OS作品集】-前端 作品集页分享数锚点为 p+活动ID(页面级单钮,翻页不换锚点),计数随 anthology_api 的 info.sn 下发(叠加未回写缓冲,缓存重建不回跳),数据就绪后回填角标,零额外请求;点赞的定位/回写/读取/缓存四个函数新增 field 参数(zn 赞、sn 分享),共用同一套落点规则
- [11] 【书笙OS作品集】-前端 微信H5打开作品集页时弹出页面中间弹窗「当前页面为预览页面」,内嵌开放标签大按钮(点击拉起小程序webview页pages/w?url=当前页,含oid/tid深链):关闭按钮固定在蒙版右上角(离主按钮尽量远),点击后正常H5浏览;遮罩只压暗不模糊保背景可见;浮窗仅右上角✕可关闭(launch事件在确认框点取消时也会回调,故不监听);确认/取消进入小程序后返回微信均见原页面继续浏览(修复记录101 v5)
- [12] 【书笙OS作品集】-后端 常量 SS_ANTHOLOGY_TTL 此前从未定义(多处注释引用却无 define),接口上下文(/s/index.php 只加载 config.php 与 ss.php)调用缓存即时加一会抛 Undefined constant,导致点赞与分享的角标即时更新全部静默失效,已在 config.php 补上定义(86400 秒)
- [13] 【墨韵新生作品签】-前端 整卡高级感重设计:深墨#2C2420主色替代通篇红(红色仅留短红线+作品名点缀),背景光晕改暖棕居中径向渐变仍四边渐隐保裁切安全,标题下改发丝线+短红线,缩略图加发丝边框,二维码改墨点,书法logo调浅至0.55
- [14] 【书笙OS作品集】-前端 作品集页浏览量计数:此前本页无任何浏览量记录,现页面渲染确认活动有效后即对 Redis 计数(hash Vn)加1,与文章/活动浏览量同机制,队列循环任务 SS_vn_flush 每 5 分钟批量回写活动内容 SS_post.Vn;无去重、无额外请求,成本约等于一次 Redis HINCRBY
- [15] 【书笙OS作品集】-前端 作品集页顶栏新增浏览量标识:右侧「眼睛+浏览数」被动徽标(管理按钮前,所有用户可见),数据为数据库累计加未回写 Redis 缓冲(含本次访问),服务端直出零额外请求,超 1 万显示 x.x 万;与顶栏胶囊同视觉语言但纯展示不可点,打印导出 PDF 与全屏放大时随顶栏整体隐藏
- [16] 【墨韵新生作品签】-前端 背景光晕恢复红色(仍居中径向渐隐保裁切安全),次要文字加深(#5A5044/#544B41)解决打印发灰不清晰
- [17] 【书笙文化】-小程序 朋友圈分享中间页全面焕新(续):修复顶部裁切(移除overflow:hidden避免书封面浮动动画上移时出现横线裁切);左上角新增返回按钮支持navigateBack返回上一页;分享引导箭头下移至指向微信胶囊而非状态栏;作品介绍模式保留前置名称与作者信息,detail参数追加在其后显示完整作品介绍;CTA按钮改为屏幕底部固定悬浮;虚拟点赞/评论数字基于内容hash确定性随机;说明微信不提供分享成功回调,已采用官方推荐跳转链路替代
- [18] 【书笙文化】-小程序 朋友圈分享中间页细化:分享引导箭头按微信胶囊真实坐标(getMenuButtonBoundingClientRect,uni-app x 无Sync后缀)定位并左移至胶囊左侧1/4处,正好指向"⋯"三点分享按钮,避免误指右侧关闭按钮;朋友圈单页模式(scene=1154)右下角新增"👇前往小程序"下落提示并贴底(bottom仅12rpx+安全区),指向页面底部微信跳转组件;未传作品详情时描述原样展示(保留作品名/作者/年龄性别,不再替换"来自…"内容);书封面浮动动画改为只向下浮动,规避向上位移导致的原生渲染层顶部横线伪影
- [19] 【书笙文化】-小程序 分享标题固定用H5传入的title参数(含作品名与作者信息),不再被帖子数据(currentPost.T)覆盖
- [20] 【书笙OS作品集】-前端 作品集页朋友圈分享适配小程序新书封面卡片预览(H5侧配套):分享跳转携带作品集标识,朋友圈预览展示书封面卡片;作品页分享附带当前作品图片、标题与页面信息,作品有创作说明时一并带入预览页展示,从朋友圈进入直达作品集
- [21] 【书笙OS分享组件】-前端 电脑浏览器点「微信好友」分享失败不再卡死:系统分享面板拉不出目标(如电脑未登微信)或设备不支持时,自动弹出二维码,手机微信扫码即可打开页面转发;用户主动关闭面板则不弹码不打扰
- [22] 【墨韵新生作品签】-前端 移除标题下短红线(.sc-redline),仅保留通栏发丝线分隔,页面更干净
- [23] 【墨韵新生作品签】-前端 主标题里的「墨韵新生」四字直接换上毛笔书法logo真迹开路并放大加码,后面的破折号精简为一根更利落,标题字也放大一档、副标题再小巧一号,主次分明;副标题右移贴齐卡片最右侧与左侧标题遥相呼应;作品简介瘦身到精华百字版,密度刚刚好;还学会了「见缝插针」的环绕排版——上方文字铺满整行,碰到二维码才乖乖拐弯换行,再也不和二维码打架;详情介绍加了首行缩进两字,更有书法作品的文书味儿;没写简介的小朋友作品也不会大片留白,姓名和作品名手拉手紧凑一组居中站好,上下不再空得难受;卡片正文处不再重复出现小logo;另附赠一套「书法logo居左放大+标题副标题两行锁定」的备选排版,页面地址后加&layout=2即可预览对比挑选
20260902-1
工资管理变量冲突修复+每日互动提醒队列上线+队列循环任务防重复与重试机制修复
工资表突然空白、生成按钮点了没反应?找到元凶了——一个叫$u的变量被循环借去用了没还回来,导致整页JavaScript语法炸裂。现已修复,工资管理恢复正常,该生成生成、该发发,丝滑如初~ 每日互动提醒队列也来了,点赞评论不再错过。哦对,队列循环任务还修了个大bug——淘宝联盟Token刷新任务本来该20小时跑一次,失败后却变成每10秒重试+反复新建任务,几分钟刷出446条失败记录…现已彻底修复,失败后按原间隔重试,不可恢复错误直接跳过,队列终于安静了。
[1] 修复 【书笙OS】-后端 工资管理页面因foreach循环变量$u与路由URL变量$u重名,导致$u被覆盖为数组,页面输出Array字符串引发JavaScript语法错误,工资表无法显示且生成按钮失效。已将循环变量改为$_emp避免冲突
[2] 新增 【书笙OS】-后端 每日互动提醒队列:点赞/评论实时缓存到新表 SS_daily_notice(以被通知用户为颗粒度,写入前先判公众号关注状态,未关注不缓存避免资源浪费),每天凌晨10分由队列任务 SS_daily_notice_push 按内容逐条推送前一天收获的赞/评论汇总模板消息(场景 daily_notice),每条消息含小程序直达页,点击直达对应点赞/评论页面
[3] 优化 【书笙OS】-后端 每日互动提醒改为队列循环任务(repeat=86400 每天凌晨10分自动续跑),公众号关注状态 Redis 缓存 TTL 由固定6小时改为动态「次日00:20−当前时间」,保证当天事件全程命中同一缓存结果,避免缓存提前过期导致数据丢失
[4] 修复 【书笙OS】-后端 队列循环任务失败后重试间隔从固定10秒改为按repeat间隔重试,避免高频无效重试浪费资源(涉及SS_queue_worker_once和queue_worker_cli.php)
[5] 修复 【书笙OS】-后端 队列自动注册逻辑(SS_queue_bootstrap)在循环任务失败到status=3后会反复新建任务行,导致淘宝联盟Token刷新任务几分钟内堆积446条失败记录。改为检测最新任务状态,失败时原地重置而非新建
[6] 优化 【书笙OS】-后端 淘宝联盟Token刷新函数(SS_tbk_token_refresh)对不可恢复错误(如refresh_token非TOP创建)返回跳过而非报错,避免无意义的循环重试;refresh_token过期同样改为跳过模式
工资管理变量冲突修复+每日互动提醒队列上线+队列循环任务防重复与重试机制修复
工资表突然空白、生成按钮点了没反应?找到元凶了——一个叫$u的变量被循环借去用了没还回来,导致整页JavaScript语法炸裂。现已修复,工资管理恢复正常,该生成生成、该发发,丝滑如初~ 每日互动提醒队列也来了,点赞评论不再错过。哦对,队列循环任务还修了个大bug——淘宝联盟Token刷新任务本来该20小时跑一次,失败后却变成每10秒重试+反复新建任务,几分钟刷出446条失败记录…现已彻底修复,失败后按原间隔重试,不可恢复错误直接跳过,队列终于安静了。
- [1] 【书笙OS】-后端 工资管理页面因foreach循环变量$u与路由URL变量$u重名,导致$u被覆盖为数组,页面输出Array字符串引发JavaScript语法错误,工资表无法显示且生成按钮失效。已将循环变量改为$_emp避免冲突
- [2] 【书笙OS】-后端 每日互动提醒队列:点赞/评论实时缓存到新表 SS_daily_notice(以被通知用户为颗粒度,写入前先判公众号关注状态,未关注不缓存避免资源浪费),每天凌晨10分由队列任务 SS_daily_notice_push 按内容逐条推送前一天收获的赞/评论汇总模板消息(场景 daily_notice),每条消息含小程序直达页,点击直达对应点赞/评论页面
- [3] 【书笙OS】-后端 每日互动提醒改为队列循环任务(repeat=86400 每天凌晨10分自动续跑),公众号关注状态 Redis 缓存 TTL 由固定6小时改为动态「次日00:20−当前时间」,保证当天事件全程命中同一缓存结果,避免缓存提前过期导致数据丢失
- [4] 【书笙OS】-后端 队列循环任务失败后重试间隔从固定10秒改为按repeat间隔重试,避免高频无效重试浪费资源(涉及SS_queue_worker_once和queue_worker_cli.php)
- [5] 【书笙OS】-后端 队列自动注册逻辑(SS_queue_bootstrap)在循环任务失败到status=3后会反复新建任务行,导致淘宝联盟Token刷新任务几分钟内堆积446条失败记录。改为检测最新任务状态,失败时原地重置而非新建
- [6] 【书笙OS】-后端 淘宝联盟Token刷新函数(SS_tbk_token_refresh)对不可恢复错误(如refresh_token非TOP创建)返回跳过而非报错,避免无意义的循环重试;refresh_token过期同样改为跳过模式
20260901
作品集缓存+点赞缓冲+活动公示+联动打字远程控制信令层上线+双指缩放连续放大防误翻页+App联动公众号关注登录+联动打字底部遮挡优化+作品页评论倒序与发言自动展开
手机上看作品集终于「有手感」了!手指按住书页慢慢拖,页面就跟着指尖一点点翘起来、翻过去,拖一半松手还会乖乖弹回来,跟翻真书、跟电脑上拖页角一个手感;手快的一扫,书页「唰」地甩过去,干脆利落。放大预览也治好了老毛病:双指放大后书页稳稳居中不裁边,还能拖着到处看细节,看到边界继续拖就翻页。后台同样大升级:作品集数据缓存拉长到24小时,多人围观服务器也不喘;评论数、点赞角标实时同步不再「数字迟钝」;点赞更是学会了「攒一攒再记账」,高频点赞零压力。返回按钮也修好了,微信里点返回直接跳活动页,微信外直接回文章页,不再弹二维码折腾你了!活动公示也来了:编辑页可配多条公示(标题/起止时间/类型多选首屏浮窗+页面元素/内容项增删),勾选浮窗的公示在活动期间自动弹出毛玻璃浮窗,关了之后内容仍在时间表常驻。联动打字远程控制信令层重磅上线:手机开流量也能控制家里电脑输入了!P2P直连优先(服务器不碰数据),打洞失败降级走服务器转发(扣积分),设备注册/心跳/拨号打洞/转发信箱全接口就绪,手机微信App授权登录也打通了!App联动公众号关注登录也来了:App拉起小程序自动静默登录,缓存结果App切回前台一查就有,没关注公众号也不卡你,回到App里慢慢提醒你就好。联动打字底部也收拾利索了:隐藏态呼出区收窄,挡住的范围更小,其它地方照常点;轻点恢复按钮直接贴底冒出来,不占屏幕中间!
[1] 新增 【联动打字】-后端 远程控制信令层(LinkedTypingRelay):新增8个接口(register设备注册/heartbeat心跳+拉取呼叫/devices设备列表/call打洞拨号/points积分查询/relay_start申请转发/relay_send转发发送/relay_poll转发拉取),P2P直连优先服务器仅信令,打洞失败降级服务器转发消耗积分,Redis数据模型含设备TTL/呼叫队列/转发信箱/计费流水
[2] 新增 【联动打字】-后端 手机微信开放平台App授权登录:UserInfo接口新增App=wxapp,使用sns/oauth2/access_token换取openid/unionid,与扫码登录同一用户体系保证两端同账号设备互通,SS_tokenall_UnamebyPl新增wxapp→wxuid映射
[3] 新增 【书笙OS】-后端 MCP服务器新增联动打字工具(ssos_linked_typing),action驱动统一入口,工具总数27→28
[4] 新增 【书笙OS】-后端 开发文档同步更新:工具模块文档新增8.3.6远程控制信令层章节(接口/Redis模型/错误码/本地端约定),API文档新增LinkedTypingRelay模块和wxapp平台说明
[5] 新增 【书笙OS】-后端 作品集API数据缓存时长从5分钟提升到24小时(常量SS_ANTHOLOGY_TTL统一管理),命中缓存时跳过全部SQL查询,多人浏览大幅降低数据库压力
[6] 新增 【书笙OS】-后端 互动计数在缓存中预计算:cn=真实评论数、hn=互动区显示条数随API一次下发,前端角标直接显示、无评论时隐藏「查看更多评论」且不再发起评论列表请求,省掉每个访客每次进页面的无效请求
[7] 新增 【书笙OS】-后端 作品点赞改队列缓冲回写:点赞高频动作不再每次写库——点赞只累加Redis增量缓冲并实时更新展示计数,队列任务每60秒把有变化的作品批量写回数据库(先扣减再写库,并发点赞不丢不重),大幅降低数据库写入压力
[8] 新增 【书笙OS】-后端 活动公示模块:活动编辑页新增「活动公示」配置卡片,支持添加多条公示条目(公示标题/公示起止时间/公示类型勾选「首屏浮窗+页面元素」可多选/公示内容项可增删),公示内容项类型含平台作品集下拉、外部作品集链接(URL+标题+封面+描述)、新闻文章链接、图片、其它自定义;公示结束时间默认最大时间=长期公示(永久展示)
[9] 新增 【书笙OS】-后端 活动编辑页支持绑定前端活动模板:下拉选择 moban/index 下模板文件(ACT_* 活动模板优先分组),保存到 BZ.event.tpl,白名单校验防路径穿越
[10] 新增 【书笙OS】-前端 新增活动详情页模板 ACT_event.php:展示活动主视觉(标题/时间/地点/单位)+「公示时间表」时间轴常驻区(进行中/即将开始/已结束状态标签)+活动详情正文+SEO/GEO结构化数据+no-cache防缓存头;index.php 对 type=4 自动分发 ACT_* 模板
[11] 新增 【书笙OS】-前端 公示首屏浮窗:勾选「首屏浮窗」类型的公示在公示时间范围内打开活动页自动弹出毛玻璃浮窗(可关闭、Esc/点遮罩均可,sessionStorage 记忆关闭状态会话内不重复弹),关闭后公示内容仍在页面「公示时间表」常驻展示
[12] 修复 【书笙OS作品集】-后端 作品展示年龄口径修正:年龄由生日按活动开始日计算改为按活动报名开始日计算(截止日期优先级=报名开始→活动开始→今天),整个作品集展示年龄固定不变、不随当前日期漂移
[13] 修复 【联动打字】-移动端 底部悬浮球呼出区域精确化:藏起来后呼出区域只认藏起来的位置,在别处滑动不再误触;底部隐藏后沿屏幕底部上滑即可呼出,呼出区域加宽加高避开系统手势区
[14] 修复 【联动打字】-移动端 底部隐藏后拖到屏幕边缘自动收成一条细线(与侧边隐藏行为一致)
[15] 修复 【联动打字】-移动端 底部隐藏态遮挡优化:呼出触摸区由96dp×40dp缩至64dp×32dp(细线两侧各留12dp余量),遮挡底部范围更小;轻点恢复按钮时按钮直接贴底显示(底边贴近系统手势区上沿),不占屏幕中部、不影响其它区域点击
[16] 修复 【书笙OS】-全端 作品集返回按钮修复:微信内点返回跳活动页,微信外点返回跳文章页,不再弹出二维码
[17] 优化 【书笙OS】-移动端 作品集翻页跟手体验升级:按住书页拖拽时页面跟随指尖翘起翻转,拖一半松手弹回原位(翻真书手感),快速滑动则直接翻页
[18] 优化 【书笙OS】-移动端 放大预览体验优化:双指放大后书页居中不裁边,可拖动查看细节,拖到边界继续拖则翻页
[19] 优化 【书笙OS】-前端 放大预览连续缩放:双指第二次放大在上一次倍数基础上继续放大(原每次手势都从原大小重新放大),全屏吸附后仍可继续放大到适配比例的1.5倍;缩放过程中及结束后320ms内不再误触发翻页,单指拖动中上第二指缩放时页面回弹不翻页,第二指落在书页外也能正确识别为缩放手势
[20] 优化 【书笙文化】-小程序 活动公示浮窗与公示时间表样式美化升级(暖色卡片质感、时间轴引导线),公示时间表调整至活动进度上方展示
[21] 优化 【书笙文化】-小程序 活动报名截止后,右下角报名按钮自动变为「查看公示」,点击即可查看活动公示详情
[22] 新增 【书笙文化】-小程序 活动公示中的作品集自动展示预览图:优先公示配置的预览图,其次作品集封面,最后用活动封面兜底
[23] 新增 【书笙OS】-后端 公示「作品集」内容项新增「展示图」设置:inner/outer 均可配置(图库上传或填URL),配置后前台优先使用该图;留空则自动用作品集第一页
[24] 优化 【书笙OS】-后端 活动编辑页「前端活动模板」下拉移入「基础信息」卡片,不再单独建卡片(模块精简)
[25] 优化 【书笙OS】-后端 公示内容项「展示图」改为小预览图控件:点击预览图弹出图库选择,选择后直接展示,支持移除;存图片附件ID降低存储压力
[26] 优化 【书笙OS】-前端 公示展示图媒体ID解析与请求合并:前端将公示内容项img(媒体ID)与作品集预览图ID合并到一次SS_upload批量查询解析为URL,避免逐张请求降低服务器压力
[27] 新增 【书笙OS】-后端 App联动公众号关注登录上线:App拉起小程序→WebView打开H5→OAuth2静默登录→Redis缓存登录结果(LApp+K)→检查关注状态→未关注显示公众号二维码→关注后callback.php自动更新缓存→App切回前台轮询AppLogin接口取结果,未关注也算登录成功由App内继续提醒
[28] 新增 【书笙OS】-后端 MCP新增app_login工具(ssos_app_login),工具总数28→29
[29] 新增 【书笙OS】-后端 开发文档新增5.16 App联动公众号关注登录流程章节
[30] 新增 【书笙OS】-后端 评论与活动级赞统一到活动内容(2026-09-01 评论统一):SS_pinglun.UPs=活动pid、作品目标存BZ.wk(旧锚点数据已一次性迁移),pingluns新增wk过滤与withWork作品解析;活动级赞弃用SS_post.BZ.hd.zn匿名计数统一走SS_post.zan(type=post同文章赞,服务端去重可真取消),Zan type=post真实增减后经新增SS_anthology_zan_act_bump同步作品集缓存info.zn总赞(作品级赞仍走队列缓冲回写不变)
[31] 新增 【书笙OS】-后端 作品集缓存评论数聚合改一条GROUP BY wk查询(替代逐锚点IN),info.zn活动级部分改count(SS_post.zan)口径
[32] 新增 【书笙OS】-前端 活动详情页ACT_event接入评论组件(活动级形态):展示活动全量评论,作品评论渲染@作品名标识(点击跳作品集页oid/tid深链定位对应作品),点赞与作品集活动级赞同源;评论组件v=20260901e新增pid/actZaned/workTag/anthUrl宿主配置
[33] 优化 【书笙OS】-前端 作品页评论展示规则:评论列表改时间倒序(最新在最上,互动状态卡恒为第一条不动、其下紧接最新评论);用户未点「查看更多评论」直接回复发言时,发送成功后自动展开完整评论列表,自己的新评论显示在历史评论上方(评论组件 comp/pinglun v=20260901f)
[34] 优化 【书笙OS】-前端 评论区@标签改卡片式(comp/pinglun v=20260901g):@作品/@作品集 均改纸白实底卡+作品预览图+「作者名《作品名》」全量文案,深色底纱/白底都清晰;活动级评论显示@作品集卡(活动标题+主图,点击进作品集);点击跳作品集页对应作品(普通作品&oid=、特邀&tid=分类内序号,修正此前特邀误用crc32哈希),作品信息随pingluns withWork=1一次返回零额外请求
[35] 优化 【书笙OS】-前端 作品集分享随翻页同步到当前作品(comp/share v=20260901a):翻到作品页时分享链接/标题/预览图即为该作品——标题《作品名》——作者、图=作品图、链接=带oid/tid的作品深链(非作品页回退活动级,管理端design.share_*自定义优先);小程序webview翻页时同步postMessage当前页面链接/作品链接/作品图/标题(累积式,小程序端onShareAppMessage须取最后一条action:share,附pageUrl/workUrl字段);H5公众号翻页后覆盖式更新;分享组件新增SS_share_send()强制重发接口
[36] 优化 【书笙OS】-前端 作品集分享标题按作品类型与作者信息生成(anthology.php 修复记录96):特邀/毛笔/硬笔分类文案(特邀佳作/翰墨生香/少年笔意/硬笔风采等),作者身份词组合「年龄岁·少年/少女」,同作品按 oid/tid 取模稳定选模板避免翻页跳动;分享描述增强(作品+作者+年龄性别+活动名+引导翻阅)
[37] 优化 【书笙OS】-前端 作品集分享标题末尾拼接作品集名称与品牌「书笙文化」(anthology.php 修复记录97,标题可长):在分类文案标题后追加「 · 活动名 · 书笙文化」,强化来源背书与品牌露出
[38] 优化 【书笙OS】-前端 作品集分享标题作者称呼人性化(anthology.php 修复记录98):弃用「少年/少女」,新增 shareWhoWord 按年龄+性别分档——男→弟弟/小弟弟、女→妹妹/小妹妹、性别未知→小朋友/小孩/小书法家(≤6岁用「小」前缀、>12岁用「小书法家」);分享描述同步,模板池「少年笔意」改「童趣笔意」
[39] 优化 【书笙OS】-前端 作品集页面标题同步作品人性化标题(anthology.php 修复记录99,SEO/GEO友好):深链URL带oid/tid时PHP端从anthology_get缓存定位作品,用与前端一致的逻辑生成作品级title/og:title/description,独立作品页被收录时展示「作品+作者」人性化标题;前端翻页时同步document.title(作品页用作品标题、非作品页回退活动级);称呼微调:男>12岁用「少年」(用户确认可用)、女>12岁用「女孩」(不用「少女」)
[40] 优化 【书笙OS】-前端 作品集深链SEO/GEO全量同步(anthology.php 修复记录99续):深链带oid/tid时PHP端从anthology缓存定位作品,生成作品级title/description/canonical/og:title|url|image|description/twitter:*/JSON-LD四件套(作品页改VisualArtwork Schema含作者Person),缓存未命中回退活动级Book Schema;前端翻页applySeoMeta同步全部SEO meta(作品页作品级、非作品页回退活动级)
作品集缓存+点赞缓冲+活动公示+联动打字远程控制信令层上线+双指缩放连续放大防误翻页+App联动公众号关注登录+联动打字底部遮挡优化+作品页评论倒序与发言自动展开
手机上看作品集终于「有手感」了!手指按住书页慢慢拖,页面就跟着指尖一点点翘起来、翻过去,拖一半松手还会乖乖弹回来,跟翻真书、跟电脑上拖页角一个手感;手快的一扫,书页「唰」地甩过去,干脆利落。放大预览也治好了老毛病:双指放大后书页稳稳居中不裁边,还能拖着到处看细节,看到边界继续拖就翻页。后台同样大升级:作品集数据缓存拉长到24小时,多人围观服务器也不喘;评论数、点赞角标实时同步不再「数字迟钝」;点赞更是学会了「攒一攒再记账」,高频点赞零压力。返回按钮也修好了,微信里点返回直接跳活动页,微信外直接回文章页,不再弹二维码折腾你了!活动公示也来了:编辑页可配多条公示(标题/起止时间/类型多选首屏浮窗+页面元素/内容项增删),勾选浮窗的公示在活动期间自动弹出毛玻璃浮窗,关了之后内容仍在时间表常驻。联动打字远程控制信令层重磅上线:手机开流量也能控制家里电脑输入了!P2P直连优先(服务器不碰数据),打洞失败降级走服务器转发(扣积分),设备注册/心跳/拨号打洞/转发信箱全接口就绪,手机微信App授权登录也打通了!App联动公众号关注登录也来了:App拉起小程序自动静默登录,缓存结果App切回前台一查就有,没关注公众号也不卡你,回到App里慢慢提醒你就好。联动打字底部也收拾利索了:隐藏态呼出区收窄,挡住的范围更小,其它地方照常点;轻点恢复按钮直接贴底冒出来,不占屏幕中间!
- [1] 【联动打字】-后端 远程控制信令层(LinkedTypingRelay):新增8个接口(register设备注册/heartbeat心跳+拉取呼叫/devices设备列表/call打洞拨号/points积分查询/relay_start申请转发/relay_send转发发送/relay_poll转发拉取),P2P直连优先服务器仅信令,打洞失败降级服务器转发消耗积分,Redis数据模型含设备TTL/呼叫队列/转发信箱/计费流水
- [2] 【联动打字】-后端 手机微信开放平台App授权登录:UserInfo接口新增App=wxapp,使用sns/oauth2/access_token换取openid/unionid,与扫码登录同一用户体系保证两端同账号设备互通,SS_tokenall_UnamebyPl新增wxapp→wxuid映射
- [3] 【书笙OS】-后端 MCP服务器新增联动打字工具(ssos_linked_typing),action驱动统一入口,工具总数27→28
- [4] 【书笙OS】-后端 开发文档同步更新:工具模块文档新增8.3.6远程控制信令层章节(接口/Redis模型/错误码/本地端约定),API文档新增LinkedTypingRelay模块和wxapp平台说明
- [5] 【书笙OS】-后端 作品集API数据缓存时长从5分钟提升到24小时(常量SS_ANTHOLOGY_TTL统一管理),命中缓存时跳过全部SQL查询,多人浏览大幅降低数据库压力
- [6] 【书笙OS】-后端 互动计数在缓存中预计算:cn=真实评论数、hn=互动区显示条数随API一次下发,前端角标直接显示、无评论时隐藏「查看更多评论」且不再发起评论列表请求,省掉每个访客每次进页面的无效请求
- [7] 【书笙OS】-后端 作品点赞改队列缓冲回写:点赞高频动作不再每次写库——点赞只累加Redis增量缓冲并实时更新展示计数,队列任务每60秒把有变化的作品批量写回数据库(先扣减再写库,并发点赞不丢不重),大幅降低数据库写入压力
- [8] 【书笙OS】-后端 活动公示模块:活动编辑页新增「活动公示」配置卡片,支持添加多条公示条目(公示标题/公示起止时间/公示类型勾选「首屏浮窗+页面元素」可多选/公示内容项可增删),公示内容项类型含平台作品集下拉、外部作品集链接(URL+标题+封面+描述)、新闻文章链接、图片、其它自定义;公示结束时间默认最大时间=长期公示(永久展示)
- [9] 【书笙OS】-后端 活动编辑页支持绑定前端活动模板:下拉选择 moban/index 下模板文件(ACT_* 活动模板优先分组),保存到 BZ.event.tpl,白名单校验防路径穿越
- [10] 【书笙OS】-前端 新增活动详情页模板 ACT_event.php:展示活动主视觉(标题/时间/地点/单位)+「公示时间表」时间轴常驻区(进行中/即将开始/已结束状态标签)+活动详情正文+SEO/GEO结构化数据+no-cache防缓存头;index.php 对 type=4 自动分发 ACT_* 模板
- [11] 【书笙OS】-前端 公示首屏浮窗:勾选「首屏浮窗」类型的公示在公示时间范围内打开活动页自动弹出毛玻璃浮窗(可关闭、Esc/点遮罩均可,sessionStorage 记忆关闭状态会话内不重复弹),关闭后公示内容仍在页面「公示时间表」常驻展示
- [12] 【书笙OS作品集】-后端 作品展示年龄口径修正:年龄由生日按活动开始日计算改为按活动报名开始日计算(截止日期优先级=报名开始→活动开始→今天),整个作品集展示年龄固定不变、不随当前日期漂移
- [13] 【联动打字】-移动端 底部悬浮球呼出区域精确化:藏起来后呼出区域只认藏起来的位置,在别处滑动不再误触;底部隐藏后沿屏幕底部上滑即可呼出,呼出区域加宽加高避开系统手势区
- [14] 【联动打字】-移动端 底部隐藏后拖到屏幕边缘自动收成一条细线(与侧边隐藏行为一致)
- [15] 【联动打字】-移动端 底部隐藏态遮挡优化:呼出触摸区由96dp×40dp缩至64dp×32dp(细线两侧各留12dp余量),遮挡底部范围更小;轻点恢复按钮时按钮直接贴底显示(底边贴近系统手势区上沿),不占屏幕中部、不影响其它区域点击
- [16] 【书笙OS】-全端 作品集返回按钮修复:微信内点返回跳活动页,微信外点返回跳文章页,不再弹出二维码
- [17] 【书笙OS】-移动端 作品集翻页跟手体验升级:按住书页拖拽时页面跟随指尖翘起翻转,拖一半松手弹回原位(翻真书手感),快速滑动则直接翻页
- [18] 【书笙OS】-移动端 放大预览体验优化:双指放大后书页居中不裁边,可拖动查看细节,拖到边界继续拖则翻页
- [19] 【书笙OS】-前端 放大预览连续缩放:双指第二次放大在上一次倍数基础上继续放大(原每次手势都从原大小重新放大),全屏吸附后仍可继续放大到适配比例的1.5倍;缩放过程中及结束后320ms内不再误触发翻页,单指拖动中上第二指缩放时页面回弹不翻页,第二指落在书页外也能正确识别为缩放手势
- [20] 【书笙文化】-小程序 活动公示浮窗与公示时间表样式美化升级(暖色卡片质感、时间轴引导线),公示时间表调整至活动进度上方展示
- [21] 【书笙文化】-小程序 活动报名截止后,右下角报名按钮自动变为「查看公示」,点击即可查看活动公示详情
- [22] 【书笙文化】-小程序 活动公示中的作品集自动展示预览图:优先公示配置的预览图,其次作品集封面,最后用活动封面兜底
- [23] 【书笙OS】-后端 公示「作品集」内容项新增「展示图」设置:inner/outer 均可配置(图库上传或填URL),配置后前台优先使用该图;留空则自动用作品集第一页
- [24] 【书笙OS】-后端 活动编辑页「前端活动模板」下拉移入「基础信息」卡片,不再单独建卡片(模块精简)
- [25] 【书笙OS】-后端 公示内容项「展示图」改为小预览图控件:点击预览图弹出图库选择,选择后直接展示,支持移除;存图片附件ID降低存储压力
- [26] 【书笙OS】-前端 公示展示图媒体ID解析与请求合并:前端将公示内容项img(媒体ID)与作品集预览图ID合并到一次SS_upload批量查询解析为URL,避免逐张请求降低服务器压力
- [27] 【书笙OS】-后端 App联动公众号关注登录上线:App拉起小程序→WebView打开H5→OAuth2静默登录→Redis缓存登录结果(LApp+K)→检查关注状态→未关注显示公众号二维码→关注后callback.php自动更新缓存→App切回前台轮询AppLogin接口取结果,未关注也算登录成功由App内继续提醒
- [28] 【书笙OS】-后端 MCP新增app_login工具(ssos_app_login),工具总数28→29
- [29] 【书笙OS】-后端 开发文档新增5.16 App联动公众号关注登录流程章节
- [30] 【书笙OS】-后端 评论与活动级赞统一到活动内容(2026-09-01 评论统一):SS_pinglun.UPs=活动pid、作品目标存BZ.wk(旧锚点数据已一次性迁移),pingluns新增wk过滤与withWork作品解析;活动级赞弃用SS_post.BZ.hd.zn匿名计数统一走SS_post.zan(type=post同文章赞,服务端去重可真取消),Zan type=post真实增减后经新增SS_anthology_zan_act_bump同步作品集缓存info.zn总赞(作品级赞仍走队列缓冲回写不变)
- [31] 【书笙OS】-后端 作品集缓存评论数聚合改一条GROUP BY wk查询(替代逐锚点IN),info.zn活动级部分改count(SS_post.zan)口径
- [32] 【书笙OS】-前端 活动详情页ACT_event接入评论组件(活动级形态):展示活动全量评论,作品评论渲染@作品名标识(点击跳作品集页oid/tid深链定位对应作品),点赞与作品集活动级赞同源;评论组件v=20260901e新增pid/actZaned/workTag/anthUrl宿主配置
- [33] 【书笙OS】-前端 作品页评论展示规则:评论列表改时间倒序(最新在最上,互动状态卡恒为第一条不动、其下紧接最新评论);用户未点「查看更多评论」直接回复发言时,发送成功后自动展开完整评论列表,自己的新评论显示在历史评论上方(评论组件 comp/pinglun v=20260901f)
- [34] 【书笙OS】-前端 评论区@标签改卡片式(comp/pinglun v=20260901g):@作品/@作品集 均改纸白实底卡+作品预览图+「作者名《作品名》」全量文案,深色底纱/白底都清晰;活动级评论显示@作品集卡(活动标题+主图,点击进作品集);点击跳作品集页对应作品(普通作品&oid=、特邀&tid=分类内序号,修正此前特邀误用crc32哈希),作品信息随pingluns withWork=1一次返回零额外请求
- [35] 【书笙OS】-前端 作品集分享随翻页同步到当前作品(comp/share v=20260901a):翻到作品页时分享链接/标题/预览图即为该作品——标题《作品名》——作者、图=作品图、链接=带oid/tid的作品深链(非作品页回退活动级,管理端design.share_*自定义优先);小程序webview翻页时同步postMessage当前页面链接/作品链接/作品图/标题(累积式,小程序端onShareAppMessage须取最后一条action:share,附pageUrl/workUrl字段);H5公众号翻页后覆盖式更新;分享组件新增SS_share_send()强制重发接口
- [36] 【书笙OS】-前端 作品集分享标题按作品类型与作者信息生成(anthology.php 修复记录96):特邀/毛笔/硬笔分类文案(特邀佳作/翰墨生香/少年笔意/硬笔风采等),作者身份词组合「年龄岁·少年/少女」,同作品按 oid/tid 取模稳定选模板避免翻页跳动;分享描述增强(作品+作者+年龄性别+活动名+引导翻阅)
- [37] 【书笙OS】-前端 作品集分享标题末尾拼接作品集名称与品牌「书笙文化」(anthology.php 修复记录97,标题可长):在分类文案标题后追加「 · 活动名 · 书笙文化」,强化来源背书与品牌露出
- [38] 【书笙OS】-前端 作品集分享标题作者称呼人性化(anthology.php 修复记录98):弃用「少年/少女」,新增 shareWhoWord 按年龄+性别分档——男→弟弟/小弟弟、女→妹妹/小妹妹、性别未知→小朋友/小孩/小书法家(≤6岁用「小」前缀、>12岁用「小书法家」);分享描述同步,模板池「少年笔意」改「童趣笔意」
- [39] 【书笙OS】-前端 作品集页面标题同步作品人性化标题(anthology.php 修复记录99,SEO/GEO友好):深链URL带oid/tid时PHP端从anthology_get缓存定位作品,用与前端一致的逻辑生成作品级title/og:title/description,独立作品页被收录时展示「作品+作者」人性化标题;前端翻页时同步document.title(作品页用作品标题、非作品页回退活动级);称呼微调:男>12岁用「少年」(用户确认可用)、女>12岁用「女孩」(不用「少女」)
- [40] 【书笙OS】-前端 作品集深链SEO/GEO全量同步(anthology.php 修复记录99续):深链带oid/tid时PHP端从anthology缓存定位作品,生成作品级title/description/canonical/og:title|url|image|description/twitter:*/JSON-LD四件套(作品页改VisualArtwork Schema含作者Person),缓存未命中回退活动级Book Schema;前端翻页applySeoMeta同步全部SEO meta(作品页作品级、非作品页回退活动级)
20260829
锁屏免解锁一键输入+状态栏通知合并+悬浮球呼出位置对齐+电脑端连接自诊断与防火墙自动修复
锁屏也能秒开打字啦!通知栏多了「输入」小按钮,手机还锁着,点一下就能打字发到电脑,密码都不用输~状态栏终于清爽了,两条通知合成一条,悬浮球和锁屏入口不再打架;贴边藏起来的悬浮球,现在从哪儿藏就从哪儿冒出来,位置分毫不差~电脑端更省心:启动自动体检防火墙、端口、IP 和网络,发现问题自己动手修好,虚拟网卡的假 IP 一律过滤,连接成功率直接拉满~
[1] 新增 【联动打字】-移动端 锁屏通知栏新增「输入」按钮,无需解锁点一下就能打字发到电脑
[2] 新增 【联动打字】-移动端 自定义手势支持在屏幕任意位置滑动呼出输入面板,不用先点悬浮球
[3] 新增 【联动打字】-PC端 启动自动诊断连接环境,防火墙、端口、IP、网络问题直接显示原因并自动修复
[4] 修复 【联动打字】-移动端 悬浮球贴边隐藏后再呼出位置偏移,现在呼出位置与隐藏位置完全对齐
[5] 修复 【联动打字】-移动端 状态栏同时出现两条通知,现已合并为一条,只显示一个状态
[6] 修复 【联动打字】-移动端 锁屏通知在部分国产手机不显示,提升通知优先级后锁屏稳定可见
[7] 修复 【联动打字】-移动端 侧滑呼出悬浮球被系统返回手势拦截,边缘区域已排除系统手势
[8] 修复 【联动打字】-移动端 简单直线滑动容易误触发自定义手势,现在轨迹需带拐弯才会识别
[9] 修复 【联动打字】-PC端 获取到虚拟网卡 IP 导致连接失败,现已自动过滤虚拟网卡
[10] 优化 【联动打字】-移动端 锁屏输入时保持屏幕常亮,打字不再被中途熄屏打断
[11] 优化 【联动打字】-移动端 未锁屏时点通知直接呼出日常输入悬浮窗,锁屏时才打开锁屏输入页
锁屏免解锁一键输入+状态栏通知合并+悬浮球呼出位置对齐+电脑端连接自诊断与防火墙自动修复
锁屏也能秒开打字啦!通知栏多了「输入」小按钮,手机还锁着,点一下就能打字发到电脑,密码都不用输~状态栏终于清爽了,两条通知合成一条,悬浮球和锁屏入口不再打架;贴边藏起来的悬浮球,现在从哪儿藏就从哪儿冒出来,位置分毫不差~电脑端更省心:启动自动体检防火墙、端口、IP 和网络,发现问题自己动手修好,虚拟网卡的假 IP 一律过滤,连接成功率直接拉满~
- [1] 【联动打字】-移动端 锁屏通知栏新增「输入」按钮,无需解锁点一下就能打字发到电脑
- [2] 【联动打字】-移动端 自定义手势支持在屏幕任意位置滑动呼出输入面板,不用先点悬浮球
- [3] 【联动打字】-PC端 启动自动诊断连接环境,防火墙、端口、IP、网络问题直接显示原因并自动修复
- [4] 【联动打字】-移动端 悬浮球贴边隐藏后再呼出位置偏移,现在呼出位置与隐藏位置完全对齐
- [5] 【联动打字】-移动端 状态栏同时出现两条通知,现已合并为一条,只显示一个状态
- [6] 【联动打字】-移动端 锁屏通知在部分国产手机不显示,提升通知优先级后锁屏稳定可见
- [7] 【联动打字】-移动端 侧滑呼出悬浮球被系统返回手势拦截,边缘区域已排除系统手势
- [8] 【联动打字】-移动端 简单直线滑动容易误触发自定义手势,现在轨迹需带拐弯才会识别
- [9] 【联动打字】-PC端 获取到虚拟网卡 IP 导致连接失败,现已自动过滤虚拟网卡
- [10] 【联动打字】-移动端 锁屏输入时保持屏幕常亮,打字不再被中途熄屏打断
- [11] 【联动打字】-移动端 未锁屏时点通知直接呼出日常输入悬浮窗,锁屏时才打开锁屏输入页
20260821
运行日志系统+连接超时修复
电脑端自动记录运行日志,崩溃有标记文件,AI直接读取分析!连接超时不再一直转圈,10秒自动断开提示
[1] 新增 【云窗智联】-全端 运行日志系统——电脑端关键事件自动写入文件,崩溃时自动生成崩溃标记,AI可直接读取日志分析问题不再需要手动复制
[2] 修复 【云窗智联】-移动端 连接一直转圈卡住——WebSocket增加10秒连接超时自动断开提示,15秒兜底超时双保险
[3] 优化 【云窗智联】-PC端 服务端关键事件日志加固——连接/断开/窗口选择/WebSocket崩溃均记录到日志文件,线程异常自动捕获
[4] 优化 【云窗智联】-移动端 连接断开时记录原因码到本地日志,便于分析断线问题
运行日志系统+连接超时修复
电脑端自动记录运行日志,崩溃有标记文件,AI直接读取分析!连接超时不再一直转圈,10秒自动断开提示
- [1] 【云窗智联】-全端 运行日志系统——电脑端关键事件自动写入文件,崩溃时自动生成崩溃标记,AI可直接读取日志分析问题不再需要手动复制
- [2] 【云窗智联】-移动端 连接一直转圈卡住——WebSocket增加10秒连接超时自动断开提示,15秒兜底超时双保险
- [3] 【云窗智联】-PC端 服务端关键事件日志加固——连接/断开/窗口选择/WebSocket崩溃均记录到日志文件,线程异常自动捕获
- [4] 【云窗智联】-移动端 连接断开时记录原因码到本地日志,便于分析断线问题
20260819
活动详情富媒体编辑器修复:多行内容不再导致编辑器初始化失败
活动详情的富媒体编辑器突然"罢工"了?别急,已经修好了!之前如果活动详情内容里有多行文本(也就是正常的换行),编辑器初始化时会遇到一个小bug导致不显示——现在用更安全的方式处理内容转义,编辑器稳稳地回来了,写活动详情再也不用担心编辑器"消失"啦~
[1] 改进 常规维护与体验优化
活动详情富媒体编辑器修复:多行内容不再导致编辑器初始化失败
活动详情的富媒体编辑器突然"罢工"了?别急,已经修好了!之前如果活动详情内容里有多行文本(也就是正常的换行),编辑器初始化时会遇到一个小bug导致不显示——现在用更安全的方式处理内容转义,编辑器稳稳地回来了,写活动详情再也不用担心编辑器"消失"啦~
- [1] 常规维护与体验优化
20260817
选好窗口画面立即显示,不再黑屏
连上电脑、选好窗口,画面马上亮起来,任何环境下都稳稳出图,再也不干瞪眼~
[1] 修复 【云窗智联】-全端 连接并选择窗口后画面不再黑屏,电脑窗口画面始终可见
[2] 修复 【云窗智联】-移动端 免配对码认证成功后不再因空配对码跳回连接页,避免反复重连
[3] 优化 【云窗智联】-全端 局域网发现、认证和远程操控保持同一连接会话
选好窗口画面立即显示,不再黑屏
连上电脑、选好窗口,画面马上亮起来,任何环境下都稳稳出图,再也不干瞪眼~
- [1] 【云窗智联】-全端 连接并选择窗口后画面不再黑屏,电脑窗口画面始终可见
- [2] 【云窗智联】-移动端 免配对码认证成功后不再因空配对码跳回连接页,避免反复重连
- [3] 【云窗智联】-全端 局域网发现、认证和远程操控保持同一连接会话
20260813
管理员临时TK接口+表格编辑交互升级+MCP直接API入口+评论提交修复;评论管理审核优化;打卡动态管理页面上线
表格编辑终于不那么轴了!双击直接编辑,改一半点别处还会弹窗问你保不保存,手滑党福音。管理员也多了个超能力——验明正身后能拿任意用户的临时通行证(1小时有效),以对方身份操作各种接口。更妙的是,MCP工具列表现在会自动告诉AI每个工具的真实API入口,AI可以直接HTTP调用原API绕过MCP中转,参数一模一样,少走一层弯路,响应更快!对了,评论功能突然全挂了——微信内容安全检测旧版接口停用惹的祸,已火速升级到v2.0修好,还加了容错兜底:检测服务再抽风也不拦你,自动转待审核,评论不会再提交不了啦! 另外,后台评论管理也升级了——回复评论现在能看到原评论内容和是谁说的,头像、身份标签、点赞数一目了然,关联文章还能直接点进去看原文,审核起来心里有底多了~ 另外,打卡动态也有自己的管理后台了!回复打卡能看到原打卡内容和是谁发的,头像、身份、媒体类型、贴图状态一目了然,审核、驳回、软删、恢复、永久删除全都能操作~
[1] 改进 常规维护与体验优化
管理员临时TK接口+表格编辑交互升级+MCP直接API入口+评论提交修复;评论管理审核优化;打卡动态管理页面上线
表格编辑终于不那么轴了!双击直接编辑,改一半点别处还会弹窗问你保不保存,手滑党福音。管理员也多了个超能力——验明正身后能拿任意用户的临时通行证(1小时有效),以对方身份操作各种接口。更妙的是,MCP工具列表现在会自动告诉AI每个工具的真实API入口,AI可以直接HTTP调用原API绕过MCP中转,参数一模一样,少走一层弯路,响应更快!对了,评论功能突然全挂了——微信内容安全检测旧版接口停用惹的祸,已火速升级到v2.0修好,还加了容错兜底:检测服务再抽风也不拦你,自动转待审核,评论不会再提交不了啦! 另外,后台评论管理也升级了——回复评论现在能看到原评论内容和是谁说的,头像、身份标签、点赞数一目了然,关联文章还能直接点进去看原文,审核起来心里有底多了~ 另外,打卡动态也有自己的管理后台了!回复打卡能看到原打卡内容和是谁发的,头像、身份、媒体类型、贴图状态一目了然,审核、驳回、软删、恢复、永久删除全都能操作~
- [1] 常规维护与体验优化