「时间控件是对的,但是现在没有保存按钮,只有下面一个评论的发表按钮。 另外,负责人和分类都没法修改,按道理讲都应该可以修改才对。」
上一轮(#74/#75)我做成了选完立即保存,用户不认可 —— 他要一颗明确的「保存」按钮。
回想上下文:用户前面说的是「这些操作全部都在这一个页面完成」, 他期待的是"填完点保存"这种确定感,不是"改一下发一次请求"。
⇒ 改成:截止时间 / 负责人 / 分类 三项一起,底部一颗「保存」。
<?php if (!empty($tpT['assignee_name'])): ?> <div class="kv-row"><dt>负责人</dt><dd>…</dd></div> <?php endif; ?>
只读,而且没负责人时整行不显示。
<?php if ($tpCatName !== ''): ?> <div class="kv-row"><dt>分类</dt><dd><?= e($tpCatName) ?></dd></div> <?php endif; ?>
同上,未分类时连行都不显示。
在面板里加一个「更多信息」小节,把三项做成可编辑控件 + 一颗「保存」:
┌ 更多信息 ────────────────────────┐ │ 截止 [ 2026-11-10 18:00 ] │ │ 负责人 [ 杨老师 ▾ ] │ │ 分类 [ 家务 ▾ ] │ │ [ 保存 ] │ └──────────────────────────────────┘
select
_edit_form.php 用的是 _person_picker.php(弹窗 + 拼音联想)。但在面板里:
_edit_form.php
_person_picker.php
fbInitPickers()
loadPanel()
⚠️ 如果以后家里人多到 select 不好用,再换成弹窗 —— 那时要把 fbInitPickers 也补进 loadPanel()。
fbInitPickers
新路由 tasks/panel_save(只收 id / due_at / assignee_id / category_id), 只写这三个字段,不碰 title/note/status 等(避免 #74 记过的 "Task::update() 全字段覆盖把没交的字段抹成空"那个坑)。
tasks/panel_save
id
due_at
assignee_id
category_id
Task::update()
复用 Task::setDue() 的思路,新增 Task::setAttrs() 或直接在路由里写一条 只更新这三列的 UPDATE。
Task::setDue()
Task::setAttrs()
#74 把只读截止行改成控件;#75 修那个控件的 AntD 没挂上。本单按用户新要求改交互:取消立即保存、加显式保存按钮,并把负责人/分类也从只读改成可编辑。
No dependencies set.
The note is not visible to the blocked user.
任务面板:加保存按钮,负责人/分类可改
用户(2026-11-05)
三个问题
① 截止时间没有保存按钮
上一轮(#74/#75)我做成了选完立即保存,用户不认可 —— 他要一颗明确的「保存」按钮。
回想上下文:用户前面说的是「这些操作全部都在这一个页面完成」,
他期待的是"填完点保存"这种确定感,不是"改一下发一次请求"。
⇒ 改成:截止时间 / 负责人 / 分类 三项一起,底部一颗「保存」。
② 负责人只读
只读,而且没负责人时整行不显示。
③ 分类只读
同上,未分类时连行都不显示。
改法
在面板里加一个「更多信息」小节,把三项做成可编辑控件 + 一颗「保存」:
为什么负责人用
select而不是弹窗选人_edit_form.php用的是_person_picker.php(弹窗 + 拼音联想)。但在面板里:_person_picker.php需要fbInitPickers()初始化,loadPanel()现在没有调select足够;名字长也能放下⚠️ 如果以后家里人多到
select不好用,再换成弹窗 —— 那时要把fbInitPickers也补进
loadPanel()。保存动作
新路由
tasks/panel_save(只收id/due_at/assignee_id/category_id),只写这三个字段,不碰 title/note/status 等(避免 #74 记过的
"
Task::update()全字段覆盖把没交的字段抹成空"那个坑)。复用
Task::setDue()的思路,新增Task::setAttrs()或直接在路由里写一条只更新这三列的 UPDATE。
顺带
与「发表」不在一处,不会混淆。
再自动保存会导致"改一次发一次请求 + 还要点保存"两次动作。
验收
为什么单独建单
#74 把只读截止行改成控件;#75 修那个控件的 AntD 没挂上。本单按用户新要求改交互:取消立即保存、加显式保存按钮,并把负责人/分类也从只读改成可编辑。