Files
JoyD/Claw/client/wechat_app/pages/task/task.wxml

128 lines
3.6 KiB
Plaintext
Raw Normal View History

2026-03-16 15:47:55 +08:00
<!-- 任务页面 -->
<view class="task-container">
<!-- 任务创建区域 -->
<view class="task-create">
<view class="input-group">
<text class="label">任务标题:</text>
<input
class="task-input"
placeholder="请输入任务标题"
value="{{taskTitle}}"
bindinput="onTitleInput"
maxlength="100"
/>
</view>
<view class="input-group">
<text class="label">任务描述:</text>
<textarea
class="task-textarea"
placeholder="请输入任务描述"
value="{{taskDescription}}"
bindinput="onDescriptionInput"
maxlength="500"
auto-height
/>
</view>
<view class="input-group">
<text class="label">任务类型:</text>
<picker
bindchange="onTypeChange"
value="{{taskTypeIndex}}"
range="{{taskTypes}}"
range-key="{{'name'}}"
>
<view class="picker">
{{taskTypes[taskTypeIndex].name}}
<text class="picker-arrow">▼</text>
</view>
</picker>
</view>
<view class="input-group">
<text class="label">优先级:</text>
<picker
bindchange="onPriorityChange"
value="{{priorityIndex}}"
range="{{priorities}}"
range-key="{{'name'}}"
>
<view class="picker">
{{priorities[priorityIndex].name}}
<text class="picker-arrow">▼</text>
</view>
</picker>
</view>
<button class="submit-btn" bindtap="submitTask" disabled="{{!canSubmit}}">
提交任务
</button>
</view>
<!-- 任务列表 -->
<view class="task-list">
<view class="list-header">
<text class="list-title">任务列表</text>
<view class="filter-buttons">
<button
class="filter-btn {{filterStatus === 'all' ? 'active' : ''}}"
bindtap="setFilter"
data-status="all"
>
全部
</button>
<button
class="filter-btn {{filterStatus === 'pending' ? 'active' : ''}}"
bindtap="setFilter"
data-status="pending"
>
待处理
</button>
<button
class="filter-btn {{filterStatus === 'processing' ? 'active' : ''}}"
bindtap="setFilter"
data-status="processing"
>
处理中
</button>
<button
class="filter-btn {{filterStatus === 'completed' ? 'active' : ''}}"
bindtap="setFilter"
data-status="completed"
>
已完成
</button>
</view>
</view>
<scroll-view class="task-scroll" scroll-y="{{true}}">
<view wx:if="{{tasks.length === 0}}" class="empty-state">
<image src="/assets/images/empty-task.png" mode="aspectFit"></image>
<text class="empty-text">暂无任务</text>
</view>
<view wx:else>
<task-card
wx:for="{{filteredTasks}}"
wx:key="id"
taskId="{{item.id}}"
title="{{item.title}}"
description="{{item.description}}"
type="{{item.type}}"
status="{{item.status}}"
priority="{{item.priority}}"
createdAt="{{item.createdAt}}"
updatedAt="{{item.updatedAt}}"
result="{{item.result}}"
progress="{{item.progress}}"
bind:start="onStartTask"
bind:complete="onCompleteTask"
bind:retry="onRetryTask"
bind:detail="onTaskDetail"
bind:cancel="onCancelTask"
/>
</view>
</scroll-view>
</view>
</view>