diff --git a/README.md b/README.md index 3c8f106..0979bdd 100644 --- a/README.md +++ b/README.md @@ -136,17 +136,19 @@ - 同一尾号有多个客户,或一个客户今天有多个服务:弹出勾选面板,默认全选,可多选后一次完成。 - **加急**:每条任务右侧点「加急」,会加红色 `加急` 标签并排到最前;日历格子出现红点,大屏「今日待打」同步置顶。再点一次取消。 - **按套餐分日历**:套餐编辑页勾选「在日历中独立显示」后,工作台与大屏顶部会出现套餐标签(全部 / 每日任务 / …),可以只看某类委托的排单。 -- **触摸小键盘**:日历右侧输入框下面有 3×4 数字键盘(1-9、0、⌫、✓),点 ✓ 直接提交,适合触摸屏/收银机; +- **触摸小键盘**:日历右侧输入框下面有 3 列 4 行数字键盘,底行是 ⌫ / 0 / ✓,点 ✓ 直接提交;按键为自定义样式,不是浏览器原生按钮,触摸目标 52px 高; - **日历格子**:不再显示排单缩略信息,只保留左侧打手色竖条 + 大字「待完成 / 总数」(如 1/2 = 还剩 1 单,共 2 单); - **按钮收纳**:任务行只露出「完成」,跳过 / 加急 / 追加收进「⋯」菜单,点空白处自动收起; - **停用客户**:客户详情页可「停用」(默认从列表、日历、大屏隐藏,订阅保留)或「彻底删除」(连订阅/打卡/追加记录一起删,需二次确认);列表右上角可切换到「显示已停用」再恢复; - **7 天内到期**:顶栏新增徽标,固定统计未来 7 天内到期的订阅; -- **抽屉时钟**:右侧当日面板顶部有时钟,精确到秒; +- **抽屉时钟**:右侧当日面板顶部有时钟,30px 大写、水平垂直居中,24 小时制精确到秒,下面一行是当天日期; +- **已完成折叠**:当日清单里已完成/已跳过的单子自动折叠成一行(尾号 + 姓名 + 套餐 + 状态),点这一行展开看剩余、打手,以及撤销/加急/追加;未完成的行不受影响; - **打手颜色**:`设置 → 管理员` 里给每个管理员选一个颜色。客户详情或编辑页可以把客户指派给某个打手,之后这个客户的所有单子都用该颜色标识: - 日历格左侧竖条 = 当天涉及的所有打手颜色(几种人几条,等分显示); - 「当日待完成」每条前面有打手色条 + 名字,未指派的显示灰色「未指派」; - 大屏的今日待打、悬停浮层、热力格竖条同样带颜色。 - **主题**:顶栏右上角 ☾ / ☀ 切换亮 / 暗,偏好记在浏览器里;不选时跟随系统。 +- **升级不缓存旧界面**:CSS/JS 链接带版本号(`app.css?v=1.6.0`),换新版程序后浏览器会自动取新文件,不用手动清缓存。 --- diff --git a/internal/web/static/app.css b/internal/web/static/app.css index 35b9c30..8922424 100644 --- a/internal/web/static/app.css +++ b/internal/web/static/app.css @@ -975,3 +975,72 @@ fieldset { border: 0; margin: 0; padding: 0; min-width: 0; } height: 30px; border-color: transparent; background: transparent; } .more-menu .btn:hover { background: var(--accent-soft); border-color: transparent; } + + +/* ---------- v1.6 精修 ---------- */ + +/* 小键盘:3 列 4 行,底行 ⌫ 0 ✓ */ +.keypad { grid-template-columns: repeat(3, 1fr); gap: 8px; } +.keypad .key { + height: 52px; + font-size: 20px; font-weight: 600; + border-radius: 10px; + background: var(--surface); + border: 1px solid var(--line); + box-shadow: 0 1px 2px color-mix(in srgb, var(--ink) 6%, transparent); + transition: background .12s ease, transform .06s ease; +} +.keypad .key:hover { border-color: var(--accent); color: var(--accent); } +.keypad .key:active { transform: translateY(1px); background: var(--accent-soft); } +.keypad .key-fn { font-size: 17px; color: var(--ink-2); background: var(--surface-2); } +.keypad .key-ok { + font-size: 22px; + background: var(--accent); border-color: var(--accent); color: var(--paper); + box-shadow: 0 2px 8px color-mix(in srgb, var(--accent) 35%, transparent); +} +.keypad .key-ok:hover { background: var(--accent-ink); border-color: var(--accent-ink); color: var(--paper); } + +/* 格子计数:靠左、垂直居中、主题绿 */ +.cell-count { + justify-content: flex-start; align-items: center; + gap: 5px; padding: 0 0 0 1px; +} +.cell-count b { + font-size: 34px; font-weight: 800; line-height: 1; + color: var(--accent); letter-spacing: -0.02em; +} +.cell-count span { font-size: 15px; color: var(--muted); } + +/* 抽屉时钟:放大、水平垂直居中 */ +.drawer-clock { + flex-direction: column; align-items: center; justify-content: center; + gap: 2px; padding: 14px 14px 10px; +} +.drawer-clock b { font-size: 30px; font-weight: 700; letter-spacing: 0.08em; } +.drawer-clock span { font-size: 11px; letter-spacing: 0.14em; } +.drawer-head { top: 76px; } + +/* 已完成:每条折叠成一行 */ +.task.task-done { padding: 6px 0; } +.done-fold > summary { + display: flex; align-items: center; gap: 6px; + list-style: none; cursor: pointer; padding: 1px 0; + min-width: 0; +} +.done-fold > summary::-webkit-details-marker { display: none; } +.done-fold > summary .pkg { font-size: 11px; color: var(--muted); } +.done-fold > summary .fold-caret { + margin-left: auto; + width: 0; height: 0; + border-left: 5px solid transparent; + border-right: 5px solid transparent; + border-top: 6px solid var(--muted); + transition: transform 0.15s ease; +} +.done-fold > summary:hover .fold-caret { border-top-color: var(--accent); } +.done-fold > summary:hover .pkg { color: var(--ink-2); } +.done-fold[open] > summary .fold-caret { transform: rotate(180deg); } +.done-detail { + margin: 6px 0 2px; padding-left: 9px; + border-left: 1px dashed var(--line); +} diff --git a/internal/web/templates/_layout.html b/internal/web/templates/_layout.html index a564588..380238f 100644 --- a/internal/web/templates/_layout.html +++ b/internal/web/templates/_layout.html @@ -5,7 +5,7 @@ {{.Title}} · 代打台 - + {{if .User}} @@ -44,6 +44,6 @@ {{if .Error}}
{{.Error}}
{{end}} {{template "content" .}} {{if .User}}{{end}} - + {{end}} diff --git a/internal/web/templates/_screen_layout.html b/internal/web/templates/_screen_layout.html index 6190aa5..5cf9e4a 100644 --- a/internal/web/templates/_screen_layout.html +++ b/internal/web/templates/_screen_layout.html @@ -6,10 +6,10 @@ {{.Title}} · 代打台 - + {{template "content" .}} - + {{end}} diff --git a/internal/web/templates/pages/calendar.html b/internal/web/templates/pages/calendar.html index f1fd5e6..46a73fd 100644 --- a/internal/web/templates/pages/calendar.html +++ b/internal/web/templates/pages/calendar.html @@ -63,7 +63,10 @@