|
|
@@ -14,7 +14,7 @@
|
|
|
<button @click="handleOpenModal(record, 'edit')" class="action-btn">
|
|
|
<SvgIcon name="edit" />
|
|
|
</button>
|
|
|
- <button @click="handleGoToPage(record, '/basicInfo/accessStatistics')" class="action-btn">
|
|
|
+ <button @click="handleDeleteRecord(record)" class="action-btn">
|
|
|
<SvgIcon name="delete" />
|
|
|
</button>
|
|
|
<button @click="handleGoToPage(record, '/basicInfo/accessStatistics')" class="action-btn">
|
|
|
@@ -43,40 +43,40 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
- import { ref, reactive } from 'vue';
|
|
|
+ import { ref, reactive, watch } from 'vue';
|
|
|
import { useRouter } from 'vue-router';
|
|
|
- import { BasicTable, useTable, TableAction } from '/@/components/Table';
|
|
|
+ import { BasicTable, useTable } from '/@/components/Table';
|
|
|
import { BasicForm, useForm } from '/@/components/Form/index';
|
|
|
import { useModal } from '/@/components/Modal';
|
|
|
import { Tabs, TabPane } from 'ant-design-vue';
|
|
|
import DataQualityModal from './components/DataQualityModal.vue';
|
|
|
import { SvgIcon } from '/@/components/Icon';
|
|
|
- import { columns, searchFormSchema, unresolvedData, resolvedData } from './dataQuality.data';
|
|
|
-
|
|
|
+ import { columns, searchFormSchema } from './dataQuality.data';;
|
|
|
+ import {getDataQuaQueList, addDataQuaQue, deleteDataQuaQue, editDataQuaQue } from '../basicInfo.api';
|
|
|
// 路由实例
|
|
|
const router = useRouter();
|
|
|
// 响应式数据
|
|
|
const activeKey = ref('unresolved'); // 激活的Tab键
|
|
|
const searchModel = reactive({}); // 搜索表单模型
|
|
|
-
|
|
|
- // 原始数据源(深拷贝避免修改原数据)
|
|
|
- const originUnresolved = JSON.parse(JSON.stringify(unresolvedData));
|
|
|
- const originResolved = JSON.parse(JSON.stringify(resolvedData));
|
|
|
-
|
|
|
- // 为每条记录添加查看详情事件
|
|
|
- originUnresolved.forEach((item) => {
|
|
|
- item.onViewDetail = (record: any) => {
|
|
|
- handleOpenModal(record, 'view');
|
|
|
- };
|
|
|
- });
|
|
|
- originResolved.forEach((item) => {
|
|
|
- item.onViewDetail = (record: any) => {
|
|
|
- handleOpenModal(record, 'view');
|
|
|
- };
|
|
|
- });
|
|
|
+ const pageMode = ref('add');
|
|
|
+
|
|
|
+ // // 原始数据源(深拷贝避免修改原数据)
|
|
|
+ // const originUnresolved = JSON.parse(JSON.stringify(unresolvedData));
|
|
|
+ // const originResolved = JSON.parse(JSON.stringify(resolvedData));
|
|
|
+
|
|
|
+ // // 为每条记录添加查看详情事件
|
|
|
+ // originUnresolved.forEach((item) => {
|
|
|
+ // item.onViewDetail = (record: any) => {
|
|
|
+ // handleOpenModal(record, 'view');
|
|
|
+ // };
|
|
|
+ // });
|
|
|
+ // originResolved.forEach((item) => {
|
|
|
+ // item.onViewDetail = (record: any) => {
|
|
|
+ // handleOpenModal(record, 'view');
|
|
|
+ // };
|
|
|
+ // });
|
|
|
// 筛选后的数据源
|
|
|
- const filteredUnresolved = ref([...originUnresolved]);
|
|
|
- const filteredResolved = ref([...originResolved]);
|
|
|
+ // const filteredResolved = ref([...originResolved]);
|
|
|
|
|
|
// 搜索表单注册
|
|
|
const [registerSearchForm] = useForm({
|
|
|
@@ -87,7 +87,8 @@
|
|
|
|
|
|
// 未解决表格注册
|
|
|
const [registerUnresolvedTable, { reload: reloadUnresolved }] = useTable({
|
|
|
- dataSource: filteredUnresolved.value,
|
|
|
+ api: getQuaQueListByTab(),
|
|
|
+ // dataSource: filteredUnresolved.value,
|
|
|
columns,
|
|
|
pagination: false,
|
|
|
striped: true,
|
|
|
@@ -106,7 +107,7 @@
|
|
|
|
|
|
// 已解决表格注册
|
|
|
const [registerResolvedTable, { reload: reloadResolved }] = useTable({
|
|
|
- dataSource: filteredResolved.value,
|
|
|
+ api: getQuaQueListByTab(),
|
|
|
columns,
|
|
|
pagination: false,
|
|
|
striped: true,
|
|
|
@@ -127,61 +128,53 @@
|
|
|
// 弹框注册
|
|
|
const [registerModal, { openModal }] = useModal();
|
|
|
|
|
|
- // 搜索筛选处理函数
|
|
|
+ /**
|
|
|
+ * 根据标签获取表格数据(已解决/未解决)
|
|
|
+ * @param result 弹框数据
|
|
|
+ */
|
|
|
+ function getQuaQueListByTab() {
|
|
|
+ return async (params: any) => {
|
|
|
+ const isOk = activeKey.value === 'resolved' ? true : false;
|
|
|
+ return await getDataQuaQueList({ ...params, isOk: isOk });
|
|
|
+ };
|
|
|
+ };
|
|
|
+ /**
|
|
|
+ * 表单搜索函数
|
|
|
+ * @param values 表单数据
|
|
|
+ */
|
|
|
function handleSearch(values: any) {
|
|
|
- // 筛选未解决数据
|
|
|
- // filteredUnresolved.value = originUnresolved.filter((item) => {
|
|
|
- // return (
|
|
|
- // (values.mineName ? item.mineName.includes(values.mineName) : true) &&
|
|
|
- // (values.mineNameAbbr ? item.mineNameAbbr.includes(values.mineNameAbbr) : true)
|
|
|
- // );
|
|
|
- // });
|
|
|
-
|
|
|
- // // 筛选已解决数据
|
|
|
- // filteredResolved.value = originResolved.filter((item) => {
|
|
|
- // return (
|
|
|
- // (values.mineName ? item.mineName.includes(values.mineName) : true) &&
|
|
|
- // (values.mineNameAbbr ? item.mineNameAbbr.includes(values.mineNameAbbr) : true)
|
|
|
- // );
|
|
|
- // });
|
|
|
|
|
|
// 刷新表格
|
|
|
reloadUnresolved();
|
|
|
reloadResolved();
|
|
|
}
|
|
|
|
|
|
- // 打开弹框(处理/查看)函数
|
|
|
+ /**
|
|
|
+ * 打开弹框函数
|
|
|
+ * @param result 弹框数据
|
|
|
+ */
|
|
|
function handleOpenModal(record: any, mode: 'view' | 'edit' | 'add' = 'view') {
|
|
|
+ pageMode.value = mode;
|
|
|
openModal(true, {
|
|
|
record,
|
|
|
mode,
|
|
|
});
|
|
|
}
|
|
|
|
|
|
- // 弹框提交成功处理函数
|
|
|
+ /**
|
|
|
+ * 弹框结果处理函数
|
|
|
+ * @param result 弹框数据
|
|
|
+ */
|
|
|
function handleModalSuccess(result: any) {
|
|
|
- // 从原未解决数据中移除该记录
|
|
|
- // const unresolvedIndex = originUnresolved.findIndex((item) => item.id === result.id);
|
|
|
- // if (unresolvedIndex > -1) {
|
|
|
- // originUnresolved.splice(unresolvedIndex, 1);
|
|
|
- // }
|
|
|
-
|
|
|
- // // 从筛选后的未解决数据中移除
|
|
|
- // const filteredUnresolvedIndex = filteredUnresolved.value.findIndex((item) => item.id === result.id);
|
|
|
- // if (filteredUnresolvedIndex > -1) {
|
|
|
- // filteredUnresolved.value.splice(filteredUnresolvedIndex, 1);
|
|
|
- // }
|
|
|
-
|
|
|
- // // 添加到已解决数据中
|
|
|
- // originResolved.push(result);
|
|
|
- // filteredResolved.value.push(result);
|
|
|
-
|
|
|
+ if(pageMode.value === 'add') {
|
|
|
+ console.log(result);
|
|
|
+ addDataQuaQue(result);
|
|
|
+ }else if(pageMode.value === 'edit') {
|
|
|
+ editDataQuaQue(result);
|
|
|
+ }
|
|
|
// 刷新表格
|
|
|
reloadUnresolved();
|
|
|
reloadResolved();
|
|
|
-
|
|
|
- // 切换到已解决Tab
|
|
|
- activeKey.value = 'resolved';
|
|
|
}
|
|
|
/**
|
|
|
* 通用页面跳转方法
|
|
|
@@ -198,6 +191,15 @@
|
|
|
// }
|
|
|
});
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除记录方法
|
|
|
+ * @param record 当前行数据
|
|
|
+ */
|
|
|
+ function handleDeleteRecord(record: any) {
|
|
|
+ deleteDataQuaQue({id: record.id});
|
|
|
+ reloadUnresolved();
|
|
|
+ }
|
|
|
</script>
|
|
|
|
|
|
<style scoped lang="less">
|