Ver Fonte

任务管理

ZaiZai há 1 ano atrás
pai
commit
c0d4dca5bc

+ 1 - 1
public/version.json

@@ -1,3 +1,3 @@
 {
-  "value": "20231229102930"
+  "value": "20231229111023"
 }

+ 34 - 0
src/views/tasks/components/hc-data/task-tag.vue

@@ -0,0 +1,34 @@
+<template>
+    <el-tag v-if="taskName" :type="taskType" class="mx-1" effect="dark">{{ taskName }}</el-tag>
+    <span v-else>-</span>
+</template>
+
+<script setup>
+import { ref, watch } from 'vue'
+
+const props = defineProps({
+    name: {
+        type: [String, Number],
+        default: '',
+    },
+    type: {
+        type: [String, Number],
+        default: '',
+    },
+})
+
+const taskName = ref(props.name)
+const taskType = ref(props.type)
+
+//监听数据
+watch(() => [
+    props.name,
+    props.type,
+], ([name, type]) => {
+    taskName.value = name
+    taskType.value = type
+}, {
+    immediate: true,
+    deep: true,
+})
+</script>

+ 3 - 14
src/views/tasks/hc-data.vue

@@ -33,23 +33,11 @@
                 <span class="text-link" @click="rowTaskName(row)">{{ row?.taskName }}</span>
             </template>
             <template #taskStatusName="{ row }">
-                <el-tag
-                    v-if="row?.taskStatusName"
-                    :type="`${row.taskStatusName === '已审批' ? 'success' : row.taskStatusName === '已废除' ? 'warning' : 'info'}`"
-                    class="mx-1" effect="dark"
-                >
-                    {{ row.taskStatusName }}
-                </el-tag>
+                <HcTaskTag :name="row.taskStatusName" :type="`${row.taskStatusName === '已审批' ? 'success' : row.taskStatusName === '已废除' ? 'warning' : 'info'}`" />
             </template>
             <template #taskApproveUserNamesList="{ row }">
                 <template v-for="(item, index) in row.taskApproveUserNamesList" :key="index">
-                    <el-tag
-                        v-if="item.taskUserName"
-                        :type="`${item.evisaStatus === 2 ? 'success' : item.evisaStatus === 3 ? 'warning' : item.evisaStatus === 999 ? 'danger' : 'info'}`"
-                        class="mx-1" effect="dark"
-                    >
-                        {{ item.taskUserName }}
-                    </el-tag>
+                    <HcTaskTag :name="row.taskUserName" :type="`${item.evisaStatus === 2 ? 'success' : item.evisaStatus === 3 ? 'warning' : item.evisaStatus === 999 ? 'danger' : 'info'}`" />
                 </template>
             </template>
         </hc-table>
@@ -78,6 +66,7 @@ import { getArrValue } from 'js-fast-way'
 import mainApi from '~api/tasks/hc-data'
 import { useAppStore } from '~src/store'
 import taskReview from './components/hc-data/task-review.vue'
+import HcTaskTag from './components/hc-data/task-tag.vue'
 
 const useAppState = useAppStore()
 const projectId = ref(useAppState.getProjectId || '')