feat: 完善草稿箱任务卡片信息显示,与进行中任务卡片保持一致风格
This commit is contained in:
parent
cf35d04fc2
commit
c23ff60027
@ -1521,21 +1521,59 @@
|
||||
@click="handleEditDraftTask(task)"
|
||||
>
|
||||
<!-- 草稿标签 -->
|
||||
<div class="task-badge-container">
|
||||
<span class="task-badge draft-badge">草稿</span>
|
||||
</div>
|
||||
|
||||
<!-- 任务标题 -->
|
||||
<div class="task-header">
|
||||
<h3 class="task-title">{{ task.title || '未命名任务' }}</h3>
|
||||
<div class="task-badges">
|
||||
<span class="badge draft-badge">草稿</span>
|
||||
<span v-if="task.releaseType === 'assigned'" class="badge badge-assigned">
|
||||
<Icon name="target" size="sm" color="#31f08b" style="margin-right: 4px; vertical-align: middle;" />
|
||||
指定
|
||||
</span>
|
||||
<span v-if="task.isUrgent" class="badge badge-urgent">
|
||||
<Icon name="fire" size="sm" color="#ff4d4f" style="margin-right: 4px; vertical-align: middle;" />
|
||||
紧急
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 任务信息 -->
|
||||
<div class="task-details">
|
||||
<div class="detail-item" v-if="task.taskNo">
|
||||
<span class="icon"><Icon name="hash" size="sm" color="#31f08b" /></span>
|
||||
<span>{{ task.taskNo }}</span>
|
||||
<!-- 任务信息(三栏布局) -->
|
||||
<div class="task-info-wrapper">
|
||||
<div class="task-info task-info-3col">
|
||||
<div class="info-item">
|
||||
<span class="label">任务类型</span>
|
||||
<span class="value">{{ getTaskTypeName(task.taskTypeId, task.taskTypeName, task.taskSubType) || '--' }}</span>
|
||||
</div>
|
||||
<div class="info-item">
|
||||
<span class="label">积分</span>
|
||||
<span class="value text-brand">{{ task.score ? formatScore(task.score) + ' 分' : '--' }}</span>
|
||||
</div>
|
||||
<div class="info-item">
|
||||
<span class="label">数量</span>
|
||||
<span class="value">{{ task.quantity || '--' }} 个</span>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 预览图 -->
|
||||
<div v-if="task.previewImage" class="preview-thumbnail">
|
||||
<img :src="task.previewImage" alt="预览图" class="thumbnail-img" />
|
||||
<div class="preview-popup">
|
||||
<img :src="task.previewImage" alt="预览图" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 任务类型明细 -->
|
||||
<div v-if="parseTypeDetails(task.typeDetails).length > 0" class="type-details-section">
|
||||
<div class="type-details-title">任务明细:</div>
|
||||
<div class="type-details-list">
|
||||
<div v-for="(detail, idx) in parseTypeDetails(task.typeDetails)" :key="idx" class="type-detail-item">
|
||||
<span class="type-name">└ {{ detail.typeName }}</span>
|
||||
<span class="type-score">x{{ detail.quantity }} = {{ formatScore(detail.totalScore) }}分</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 任务详情 -->
|
||||
<div class="task-details">
|
||||
<div class="detail-item" v-if="task.brandName">
|
||||
<span class="icon"><Icon name="tag" size="sm" color="#31f08b" /></span>
|
||||
<span>品牌: {{ task.brandName }}</span>
|
||||
@ -1544,37 +1582,68 @@
|
||||
<span class="icon"><Icon name="folder" size="sm" color="#31f08b" /></span>
|
||||
<span>类目: {{ task.categoryName }}</span>
|
||||
</div>
|
||||
<div class="detail-item">
|
||||
<span class="icon"><Icon name="clock" size="sm" color="#31f08b" /></span>
|
||||
<span>创建: {{ formatDate(task.createTime) }}</span>
|
||||
<div class="detail-item" v-if="task.platformName">
|
||||
<span class="icon"><Icon name="monitor" size="sm" color="#31f08b" /></span>
|
||||
<span>平台: {{ task.platformName }}</span>
|
||||
</div>
|
||||
<div class="detail-item" v-if="task.updateTime">
|
||||
<span class="icon"><Icon name="edit" size="sm" color="#31f08b" /></span>
|
||||
<span>最后编辑: {{ formatDate(task.updateTime) }}</span>
|
||||
<div class="detail-item" v-if="task.spuInfo">
|
||||
<span class="icon"><Icon name="package" size="sm" color="#31f08b" /></span>
|
||||
<span>SPU: {{ task.spuInfo }}</span>
|
||||
</div>
|
||||
<div class="detail-item" v-if="task.taskSubType">
|
||||
<span class="icon"><Icon name="list" size="sm" color="#31f08b" /></span>
|
||||
<span>子类型: {{ task.taskSubType }}</span>
|
||||
</div>
|
||||
<div class="detail-item" v-if="task.attachmentUrl">
|
||||
<span class="icon"><Icon name="paperclip" size="sm" color="#31f08b" /></span>
|
||||
<span>附件: {{ (task.attachmentUrl || '').split(',').filter(u => u.trim()).length }} 个</span>
|
||||
</div>
|
||||
<div class="detail-item" v-if="task.estimatedHours">
|
||||
<span class="icon"><Icon name="clock" size="sm" color="#31f08b" /></span>
|
||||
<span>时效要求: {{ formatEstimatedTime(task.estimatedHours) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 时间信息 -->
|
||||
<div class="task-footer">
|
||||
<div v-if="task.taskNo" class="footer-item task-no-item">
|
||||
<Icon name="hash" size="sm" color="#31f08b" />
|
||||
<span style="color: #ffffff;">编号: {{ task.taskNo }}</span>
|
||||
<Icon
|
||||
name="copy"
|
||||
size="xs"
|
||||
class="copy-icon"
|
||||
@click.stop="handleCopyTaskNo(task.taskNo)"
|
||||
title="复制任务编号"
|
||||
/>
|
||||
</div>
|
||||
<div class="footer-item">
|
||||
<Icon name="calendar" size="sm" color="#31f08b" />
|
||||
<span style="color: #ffffff;">创建: {{ formatTime(task.createTime) }}</span>
|
||||
</div>
|
||||
<div class="footer-item" v-if="task.updateTime && task.updateTime !== task.createTime">
|
||||
<Icon name="edit" size="sm" color="#faad14" />
|
||||
<span style="color: #faad14;">最后编辑: {{ formatTime(task.updateTime) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 操作按钮 -->
|
||||
<div class="task-actions" style="margin-top: 16px; padding-top: 16px; border-top: 1px solid rgba(49, 240, 139, 0.2);">
|
||||
<div style="display: flex; gap: 8px;">
|
||||
<a-button
|
||||
type="primary"
|
||||
size="small"
|
||||
@click.stop="handleEditDraftTask(task)"
|
||||
style="flex: 1;">
|
||||
<Icon name="edit" size="sm" style="margin-right: 4px;" />
|
||||
继续编辑
|
||||
</a-button>
|
||||
<a-button
|
||||
type="default"
|
||||
danger
|
||||
size="small"
|
||||
@click.stop="handleDeleteDraft(task)"
|
||||
style="width: 80px;">
|
||||
<Icon name="trash" size="sm" style="margin-right: 4px;" />
|
||||
删除
|
||||
</a-button>
|
||||
</div>
|
||||
<a-button
|
||||
type="primary"
|
||||
size="small"
|
||||
@click.stop="handleEditDraftTask(task)">
|
||||
<Icon name="edit" size="sm" style="margin-right: 4px;" />
|
||||
继续编辑
|
||||
</a-button>
|
||||
<a-button
|
||||
type="default"
|
||||
danger
|
||||
size="small"
|
||||
@click.stop="handleDeleteDraft(task)">
|
||||
<Icon name="trash" size="sm" style="margin-right: 4px;" />
|
||||
删除
|
||||
</a-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user