2025-09-18 14:40:47 +08:00
|
|
|
<template>
|
2025-09-19 15:53:12 +08:00
|
|
|
<div class="task-item" @click="handleTask(task, record)">
|
|
|
|
|
<div class="w-4px h-18px rounded-2px" :style="{ background: getTaskColor() }"></div>
|
|
|
|
|
<div>{{ task?.name || '-' }}</div>
|
2025-09-19 10:34:26 +08:00
|
|
|
</div>
|
|
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script setup lang="ts">
|
2025-09-19 15:53:12 +08:00
|
|
|
// 定义props和emit
|
|
|
|
|
const props = defineProps({
|
|
|
|
|
task: Object,
|
|
|
|
|
record: Object,
|
|
|
|
|
});
|
2025-09-19 10:34:26 +08:00
|
|
|
|
2025-09-19 15:53:12 +08:00
|
|
|
const emit = defineEmits(['filter-change', 'handle-task']);
|
|
|
|
|
const handleTask = (task, record) => {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
// 根据任务类型获取颜色
|
|
|
|
|
const getTaskColor = () => {
|
|
|
|
|
if (!props.task) return '#000';
|
|
|
|
|
|
|
|
|
|
// 根据colorTip.vue中的颜色定义设置不同状态的颜色
|
|
|
|
|
switch (props.task.status) {
|
|
|
|
|
case 0: // 待生成
|
|
|
|
|
return '#ffae00';
|
|
|
|
|
case 1: // 待发布
|
|
|
|
|
return '#6d4cfe';
|
|
|
|
|
case 2: // 已发布
|
|
|
|
|
return '#939499';
|
|
|
|
|
case 3: // 发布失败
|
|
|
|
|
return '#f64b31';
|
|
|
|
|
default:
|
|
|
|
|
return props.task.color || '#939499';
|
|
|
|
|
}
|
|
|
|
|
};
|
2025-09-19 10:34:26 +08:00
|
|
|
</script>
|
|
|
|
|
|
|
|
|
|
<style lang="less" scoped>
|
|
|
|
|
.task-item {
|
|
|
|
|
width: 100%;
|
2025-09-19 15:53:12 +08:00
|
|
|
font-size: 12px;
|
|
|
|
|
height: 19px;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
gap: 4px;
|
|
|
|
|
|
|
|
|
|
&:last-child {
|
|
|
|
|
margin-bottom: 0;
|
|
|
|
|
}
|
2025-09-19 10:34:26 +08:00
|
|
|
}
|
|
|
|
|
</style>
|