|
@@ -7,10 +7,17 @@
|
|
|
<div class="table-list">
|
|
<div class="table-list">
|
|
|
<div v-if="showActionBar" class="action-bar">
|
|
<div v-if="showActionBar" class="action-bar">
|
|
|
<span class="num-text">已选{{ chooseNum }}项</span>
|
|
<span class="num-text">已选{{ chooseNum }}项</span>
|
|
|
- <el-button :class="isActiveHide ? 'btn-active' : 'btn-normal'" @click="handleHideAll">全部隐藏</el-button>
|
|
|
|
|
|
|
+ <el-button v-if="!cancelHideFlag" :class="isActiveHide ? 'btn-active' : 'btn-normal'"
|
|
|
|
|
+ @click="handleHideAll">全部隐藏</el-button>
|
|
|
|
|
+ <el-button v-if="cancelHideFlag" :class="isActiveCancelHide ? 'btn-active' : 'btn-normal'"
|
|
|
|
|
+ @click="handleCancelHideAll">取消隐藏</el-button>
|
|
|
<el-button :class="isActiveDelete ? 'btn-active' : 'btn-normal'" @click="handleDeleteAll">删除</el-button>
|
|
<el-button :class="isActiveDelete ? 'btn-active' : 'btn-normal'" @click="handleDeleteAll">删除</el-button>
|
|
|
- <el-button :class="isActiveUrgent ? 'btn-active' : 'btn-normal'" @click="handleUrgentAll">标记加急</el-button>
|
|
|
|
|
- <el-button :class="isActiveCopy ? 'btn-active' : 'btn-normal'" @click="handleCopyToShow">复制到展示数据</el-button>
|
|
|
|
|
|
|
+ <el-button v-if="!cancelUrgentFlag" :class="isActiveUrgent ? 'btn-active' : 'btn-normal'"
|
|
|
|
|
+ @click="handleUrgentAll">标记加急</el-button>
|
|
|
|
|
+ <el-button v-if="cancelUrgentFlag" :class="isActiveCancelUrgent ? 'btn-active' : 'btn-normal'"
|
|
|
|
|
+ @click="handleCancelUrgentAll">取消加急</el-button>
|
|
|
|
|
+ <el-button v-if="hasPermisson()" :class="isActiveCopy ? 'btn-active' : 'btn-normal'"
|
|
|
|
|
+ @click="handleCopyToShow">复制到展示数据</el-button>
|
|
|
<span class="close-btn" @click="handleSelectNone"></span>
|
|
<span class="close-btn" @click="handleSelectNone"></span>
|
|
|
</div>
|
|
</div>
|
|
|
<AlertTable ref="alertTableRef" class="table-bar" :is-show-tab="false" :table-data="tableData"
|
|
<AlertTable ref="alertTableRef" class="table-bar" :is-show-tab="false" :table-data="tableData"
|
|
@@ -41,7 +48,9 @@ import {
|
|
|
deleteDefaultTableData,
|
|
deleteDefaultTableData,
|
|
|
copyToShowTableData
|
|
copyToShowTableData
|
|
|
} from '@/api/datamanagement/alert-default';
|
|
} from '@/api/datamanagement/alert-default';
|
|
|
|
|
+import { useUserStore } from '@/store/modules/user';
|
|
|
|
|
|
|
|
|
|
+const userStore = useUserStore();
|
|
|
const { aiOptions, manualOptions, getAIOptions, getManualOptions } = useIssueType();
|
|
const { aiOptions, manualOptions, getAIOptions, getManualOptions } = useIssueType();
|
|
|
const { locationOptions, getLocationOptions } = useWorkLocation();
|
|
const { locationOptions, getLocationOptions } = useWorkLocation();
|
|
|
|
|
|
|
@@ -50,9 +59,13 @@ const tableData = ref([]);
|
|
|
const showActionBar = ref(false);
|
|
const showActionBar = ref(false);
|
|
|
const chooseNum = ref(0);
|
|
const chooseNum = ref(0);
|
|
|
const chooseId = ref<number[]>([]);
|
|
const chooseId = ref<number[]>([]);
|
|
|
|
|
+const cancelHideFlag = ref(true); // true取消隐藏 / false全部隐藏
|
|
|
|
|
+const cancelUrgentFlag = ref(true); // true取消加急 / false全部加急
|
|
|
const isActiveHide = ref(false);
|
|
const isActiveHide = ref(false);
|
|
|
|
|
+const isActiveCancelHide = ref(false);
|
|
|
const isActiveDelete = ref(false);
|
|
const isActiveDelete = ref(false);
|
|
|
const isActiveUrgent = ref(false);
|
|
const isActiveUrgent = ref(false);
|
|
|
|
|
+const isActiveCancelUrgent = ref(false);
|
|
|
const isActiveCopy = ref(false);
|
|
const isActiveCopy = ref(false);
|
|
|
// 详情
|
|
// 详情
|
|
|
const isDetailDialogShow = ref(false);
|
|
const isDetailDialogShow = ref(false);
|
|
@@ -78,9 +91,16 @@ const handleReset = (queryForm) => {
|
|
|
|
|
|
|
|
// 多选
|
|
// 多选
|
|
|
const handlePop = (selection) => {
|
|
const handlePop = (selection) => {
|
|
|
|
|
+ chooseId.value = [];
|
|
|
|
|
+ cancelHideFlag.value = true;
|
|
|
|
|
+ cancelUrgentFlag.value = true;
|
|
|
selection.forEach((item) => {
|
|
selection.forEach((item) => {
|
|
|
if (chooseId.value.indexOf(item.id) === -1)
|
|
if (chooseId.value.indexOf(item.id) === -1)
|
|
|
chooseId.value.push(item.id);
|
|
chooseId.value.push(item.id);
|
|
|
|
|
+ // 只要有一个item.isHide === false 说明多选的这些选项不是全都隐藏,不用变成“取消隐藏”
|
|
|
|
|
+ if (item.isHide === false) cancelHideFlag.value = false;
|
|
|
|
|
+ // 只要有一个item.priority === 0 说明不是全都加急状态,不用变成“取消加急”
|
|
|
|
|
+ if (item.priority === 0) cancelUrgentFlag.value = false;
|
|
|
});
|
|
});
|
|
|
chooseNum.value = selection.length;
|
|
chooseNum.value = selection.length;
|
|
|
showActionBar.value = chooseNum.value > 0 ? true : false;
|
|
showActionBar.value = chooseNum.value > 0 ? true : false;
|
|
@@ -113,6 +133,26 @@ const handleHideAll = () => {
|
|
|
});
|
|
});
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+// 取消隐藏
|
|
|
|
|
+const handleCancelHideAll = () => {
|
|
|
|
|
+ if (showActionBar.value) isActiveCancelHide.value = !isActiveCancelHide.value;
|
|
|
|
|
+ const updateList = {
|
|
|
|
|
+ id: chooseId.value,
|
|
|
|
|
+ isHide: false,
|
|
|
|
|
+ };
|
|
|
|
|
+ updateDefaultTableData(updateList).then(() => {
|
|
|
|
|
+ handleSelectNone();
|
|
|
|
|
+ getTableData();
|
|
|
|
|
+ ElMessage({
|
|
|
|
|
+ message: '取消隐藏成功',
|
|
|
|
|
+ type: 'success',
|
|
|
|
|
+ });
|
|
|
|
|
+ setTimeout(function () {
|
|
|
|
|
+ isActiveCancelHide.value = !isActiveCancelHide.value;
|
|
|
|
|
+ }, 1000);
|
|
|
|
|
+ });
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
// 批量删除
|
|
// 批量删除
|
|
|
const handleDeleteAll = () => {
|
|
const handleDeleteAll = () => {
|
|
|
if (showActionBar.value) isActiveDelete.value = !isActiveDelete.value;
|
|
if (showActionBar.value) isActiveDelete.value = !isActiveDelete.value;
|
|
@@ -167,6 +207,26 @@ const handleUrgentAll = () => {
|
|
|
});
|
|
});
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+// 取消加急
|
|
|
|
|
+const handleCancelUrgentAll = () => {
|
|
|
|
|
+ if (showActionBar.value) isActiveCancelUrgent.value = !isActiveCancelUrgent.value;
|
|
|
|
|
+ const updateList = {
|
|
|
|
|
+ id: chooseId.value,
|
|
|
|
|
+ priority: 0,
|
|
|
|
|
+ };
|
|
|
|
|
+ updateDefaultTableData(updateList).then(() => {
|
|
|
|
|
+ handleSelectNone();
|
|
|
|
|
+ getTableData();
|
|
|
|
|
+ ElMessage({
|
|
|
|
|
+ message: '已取消加急',
|
|
|
|
|
+ type: 'success',
|
|
|
|
|
+ });
|
|
|
|
|
+ setTimeout(function () {
|
|
|
|
|
+ isActiveCancelUrgent.value = !isActiveCancelUrgent.value;
|
|
|
|
|
+ }, 1000);
|
|
|
|
|
+ });
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
// 复制到展示数据
|
|
// 复制到展示数据
|
|
|
const handleCopyToShow = () => {
|
|
const handleCopyToShow = () => {
|
|
|
if (showActionBar.value) isActiveCopy.value = !isActiveCopy.value;
|
|
if (showActionBar.value) isActiveCopy.value = !isActiveCopy.value;
|
|
@@ -264,6 +324,10 @@ const getTableData = () => {
|
|
|
})
|
|
})
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+const hasPermisson = () => {
|
|
|
|
|
+ return userStore.checkPermission("question_mock_edit_admin");
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
|
getTableData();
|
|
getTableData();
|
|
|
});
|
|
});
|