From b691b432fb0809d3acd0c6beb5f91f836e06c911 Mon Sep 17 00:00:00 2001 From: dongliang Date: Tue, 28 Apr 2026 12:13:21 +0930 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BB=BB=E5=8A=A1=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E8=A1=A5=E5=85=85=E7=BC=BA=E5=A4=B1=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增显示: - 状态标签(彩色文字:待抢单/待打卡/进行中/已完成) - 截止时间(expireTime) - 预计完成时间(preFinishTime,指派任务) - 上报人(createName,type 3/4 时显示) Co-Authored-By: Claude Opus 4.6 (1M context) --- .../xiaoqu/watch/ui/task/TaskListFragment.kt | 38 +++++++++++++++++-- .../main/res/layout/fragment_task_list.xml | 28 ++++++++++++++ 2 files changed, 63 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/xiaoqu/watch/ui/task/TaskListFragment.kt b/app/src/main/java/com/xiaoqu/watch/ui/task/TaskListFragment.kt index 2f577cb..fdb4d7c 100644 --- a/app/src/main/java/com/xiaoqu/watch/ui/task/TaskListFragment.kt +++ b/app/src/main/java/com/xiaoqu/watch/ui/task/TaskListFragment.kt @@ -231,9 +231,41 @@ class TaskListFragment : BaseFragment() { // 积分 binding.tvPoints.text = detail.pointText - // 协作人(workTogether 列表) - // TODO: workTogether 是 List,需要确认实际结构后解析 - binding.rowWorkers.visibility = View.GONE + // 状态标签 + when (detail.status) { + 2 -> { binding.tvStatus.text = "待抢单"; binding.tvStatus.setTextColor(requireContext().getColor(R.color.error)) } + 3 -> { binding.tvStatus.text = "待打卡"; binding.tvStatus.setTextColor(requireContext().getColor(R.color.warning)) } + 4 -> { binding.tvStatus.text = "进行中"; binding.tvStatus.setTextColor(requireContext().getColor(R.color.warning)) } + 5, 6 -> { binding.tvStatus.text = "已完成"; binding.tvStatus.setTextColor(requireContext().getColor(R.color.success)) } + else -> { binding.tvStatus.text = "已结束"; binding.tvStatus.setTextColor(requireContext().getColor(R.color.text_secondary)) } + } + + // 截止时间 + if (!detail.expireTime.isNullOrEmpty()) { + binding.tvExpireTime.text = detail.expireTime + binding.rowExpire.visibility = View.VISIBLE + } else { + binding.rowExpire.visibility = View.GONE + } + + // 预计完成时间(指派任务 type=2) + if (!detail.preFinishTime.isNullOrEmpty()) { + binding.tvPreFinishTime.text = detail.preFinishTime + binding.rowPreFinish.visibility = View.VISIBLE + } else { + binding.rowPreFinish.visibility = View.GONE + } + + // 协作人 + binding.rowWorkers.visibility = View.GONE // TODO: workTogether 结构待确认 + + // 上报人(用户上报 type=3/4 时显示) + if (detail.createName.isNotEmpty() && detail.taskType in listOf(3, 4)) { + binding.tvCreatorName.text = detail.createName + binding.rowCreator.visibility = View.VISIBLE + } else { + binding.rowCreator.visibility = View.GONE + } // 描述 if (detail.content.isNotEmpty()) { diff --git a/app/src/main/res/layout/fragment_task_list.xml b/app/src/main/res/layout/fragment_task_list.xml index a511486..30d7357 100644 --- a/app/src/main/res/layout/fragment_task_list.xml +++ b/app/src/main/res/layout/fragment_task_list.xml @@ -106,12 +106,40 @@ android:textColor="@color/warning" /> + + + + + + + + + + + + + + + + + + + + + + + + +