|
@@ -13,7 +13,7 @@
|
|
|
@sort-change="handleTimeSort"
|
|
@sort-change="handleTimeSort"
|
|
|
:default-sort="{ prop: 'createdAt', order: 'descending' }"
|
|
:default-sort="{ prop: 'createdAt', order: 'descending' }"
|
|
|
>
|
|
>
|
|
|
- <el-table-column type="selection" width="55"></el-table-column>
|
|
|
|
|
|
|
+ <el-table-column type="selection" width="55" />
|
|
|
<el-table-column label="问题来源" prop="source" width="150">
|
|
<el-table-column label="问题来源" prop="source" width="150">
|
|
|
<template #default="{ row }">
|
|
<template #default="{ row }">
|
|
|
{{ getNameBySource(row.source) }}
|
|
{{ getNameBySource(row.source) }}
|
|
@@ -43,13 +43,8 @@
|
|
|
{{ getNameByWorkid(row.workshopId, row.workspaceId, locationOptions) }}
|
|
{{ getNameByWorkid(row.workshopId, row.workspaceId, locationOptions) }}
|
|
|
</template>
|
|
</template>
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
- <el-table-column
|
|
|
|
|
- label="时间"
|
|
|
|
|
- prop="createdAt"
|
|
|
|
|
- width="180"
|
|
|
|
|
- sortable="custom"
|
|
|
|
|
- ></el-table-column>
|
|
|
|
|
- <el-table-column label="负责人" prop="personNameInCharge" width="100"></el-table-column>
|
|
|
|
|
|
|
+ <el-table-column label="时间" prop="createdAt" width="180" sortable="custom" />
|
|
|
|
|
+ <el-table-column label="负责人" prop="personNameInCharge" width="100" />
|
|
|
<el-table-column label="处理状态" prop="issueState">
|
|
<el-table-column label="处理状态" prop="issueState">
|
|
|
<template #default="{ row }">
|
|
<template #default="{ row }">
|
|
|
{{ getNameByState(row.issueState) }}
|
|
{{ getNameByState(row.issueState) }}
|
|
@@ -58,13 +53,19 @@
|
|
|
<el-table-column label="操作" width="160" fixed="right">
|
|
<el-table-column label="操作" width="160" fixed="right">
|
|
|
<template #default="{ row }">
|
|
<template #default="{ row }">
|
|
|
<el-tooltip
|
|
<el-tooltip
|
|
|
|
|
+ v-if="row.issueState != IssueState.hasRevoke"
|
|
|
effect="dark"
|
|
effect="dark"
|
|
|
:content="row.isHide ? '点此设置为生效问题' : '点此设置为无效问题'"
|
|
:content="row.isHide ? '点此设置为生效问题' : '点此设置为无效问题'"
|
|
|
placement="top"
|
|
placement="top"
|
|
|
>
|
|
>
|
|
|
- <el-switch :model-value="!row.isHide" @change="handleShow(row)" @click.stop.native />
|
|
|
|
|
|
|
+ <el-switch :model-value="!row.isHide" @change="handleShow(row)" @click.stop />
|
|
|
</el-tooltip>
|
|
</el-tooltip>
|
|
|
- <el-tooltip effect="dark" content="点击标记为加急问题" placement="top">
|
|
|
|
|
|
|
+ <el-tooltip
|
|
|
|
|
+ v-if="row.issueState != IssueState.hasRevoke"
|
|
|
|
|
+ effect="dark"
|
|
|
|
|
+ content="点击标记为加急问题"
|
|
|
|
|
+ placement="top"
|
|
|
|
|
+ >
|
|
|
<img
|
|
<img
|
|
|
src="/src/assets/images/alert/urgent.png"
|
|
src="/src/assets/images/alert/urgent.png"
|
|
|
alt=""
|
|
alt=""
|
|
@@ -75,7 +76,12 @@
|
|
|
"
|
|
"
|
|
|
/>
|
|
/>
|
|
|
</el-tooltip>
|
|
</el-tooltip>
|
|
|
- <el-tooltip effect="dark" content="点击取消问题加急" placement="top">
|
|
|
|
|
|
|
+ <el-tooltip
|
|
|
|
|
+ v-if="row.issueState != IssueState.hasRevoke"
|
|
|
|
|
+ effect="dark"
|
|
|
|
|
+ content="点击取消问题加急"
|
|
|
|
|
+ placement="top"
|
|
|
|
|
+ >
|
|
|
<img
|
|
<img
|
|
|
src="/src/assets/images/alert/urgent-active.png"
|
|
src="/src/assets/images/alert/urgent-active.png"
|
|
|
alt=""
|
|
alt=""
|
|
@@ -97,12 +103,7 @@
|
|
|
"
|
|
"
|
|
|
/>
|
|
/>
|
|
|
</el-tooltip>
|
|
</el-tooltip>
|
|
|
- <el-tooltip
|
|
|
|
|
- effect="dark"
|
|
|
|
|
- content="点击删除问题数据"
|
|
|
|
|
- placement="top"
|
|
|
|
|
- v-if="hasDataDeletePermisson()"
|
|
|
|
|
- >
|
|
|
|
|
|
|
+ <el-tooltip effect="dark" content="点击删除问题数据" placement="top" v-if="hasDataDeletePermisson()">
|
|
|
<img
|
|
<img
|
|
|
src="/src/assets/images/alert/delete.png"
|
|
src="/src/assets/images/alert/delete.png"
|
|
|
alt=""
|
|
alt=""
|
|
@@ -121,7 +122,7 @@
|
|
|
<script setup lang="ts">
|
|
<script setup lang="ts">
|
|
|
import { ElTable } from 'element-plus';
|
|
import { ElTable } from 'element-plus';
|
|
|
import { onBeforeMount, onMounted, ref } from 'vue';
|
|
import { onBeforeMount, onMounted, ref } from 'vue';
|
|
|
- import { getNameBySource, getNameByState } from './constant.question';
|
|
|
|
|
|
|
+ import { IssueState, getNameBySource, getNameByState } from './constant.question';
|
|
|
import { useIssueMainType } from '../../hooks/useIssueMainType';
|
|
import { useIssueMainType } from '../../hooks/useIssueMainType';
|
|
|
import { useWorkLocation } from '../../hooks/useWorkLocation';
|
|
import { useWorkLocation } from '../../hooks/useWorkLocation';
|
|
|
import { useUserStore } from '@/store/modules/user';
|
|
import { useUserStore } from '@/store/modules/user';
|
|
@@ -155,11 +156,11 @@
|
|
|
interface Props {
|
|
interface Props {
|
|
|
tableData: Array<DataSourceItem>;
|
|
tableData: Array<DataSourceItem>;
|
|
|
isShowTab: boolean; // true展示数据,false默认数据
|
|
isShowTab: boolean; // true展示数据,false默认数据
|
|
|
- onDetail: (row: DataSourceItem) => unknown; // 详情事件
|
|
|
|
|
- onUrgent?: (row: DataSourceItem) => unknown; // isShowTab=false时,加急按钮事件
|
|
|
|
|
- onEdit?: (row: DataSourceItem) => unknown; // isShowTab=true时,编辑按钮事件
|
|
|
|
|
- onShow: (row: DataSourceItem) => unknown; // 显示/隐藏按钮事件
|
|
|
|
|
- onDelete: (row: DataSourceItem) => unknown; // 删除按钮事件
|
|
|
|
|
|
|
+ onDetail: (_row: DataSourceItem) => unknown; // 详情事件
|
|
|
|
|
+ onUrgent?: (_row: DataSourceItem) => unknown; // isShowTab=false时,加急按钮事件
|
|
|
|
|
+ onEdit?: (_row: DataSourceItem) => unknown; // isShowTab=true时,编辑按钮事件
|
|
|
|
|
+ onShow: (_row: DataSourceItem) => unknown; // 显示/隐藏按钮事件
|
|
|
|
|
+ onDelete: (_row: DataSourceItem) => unknown; // 删除按钮事件
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const props = defineProps<Props>();
|
|
const props = defineProps<Props>();
|
|
@@ -322,7 +323,7 @@
|
|
|
display: flex;
|
|
display: flex;
|
|
|
align-items: center;
|
|
align-items: center;
|
|
|
display: flex;
|
|
display: flex;
|
|
|
- justify-content: space-between;
|
|
|
|
|
|
|
+ justify-content: center;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
.el-switch {
|
|
.el-switch {
|