|
@@ -12,6 +12,7 @@ import { useTableData } from '/@/utils/useTableData';
|
|
|
import { usePagination } from '/@/utils/usePagination';
|
|
|
import EditComputerInfo from '/@/views/computer-information/components/EditComputerInfo.vue';
|
|
|
import { ref } from 'vue';
|
|
|
+import { getCurrentTableData, getPastTableData } from '../api';
|
|
|
|
|
|
const route = useRoute();
|
|
|
const id = route.query.id;
|
|
@@ -24,7 +25,7 @@ const shopOptions = ref([]);
|
|
|
const userOptions = ref([]);
|
|
|
|
|
|
const currentView = ref('current');
|
|
|
-const { tableOptions, handlePageChange } = usePagination(fetchComputerData);
|
|
|
+// const { tableOptions, handlePageChange } = usePagination(fetchComputerData);
|
|
|
|
|
|
const gridOptions: any = reactive({
|
|
|
border: 'inner',
|
|
@@ -45,11 +46,11 @@ const gridOptions: any = reactive({
|
|
|
columnConfig: {
|
|
|
resizable: true,
|
|
|
},
|
|
|
- // pagerConfig: {
|
|
|
- // total: tableOptions.value.total,
|
|
|
- // page: tableOptions.value.page,
|
|
|
- // limit: tableOptions.value.limit,
|
|
|
- // },
|
|
|
+ pagerConfig: {
|
|
|
+ total: 0,
|
|
|
+ currentPage: 1,
|
|
|
+ pageSize: 20,
|
|
|
+ },
|
|
|
loading: false,
|
|
|
loadingConfig: {
|
|
|
icon: 'vxe-icon-indicator roll',
|
|
@@ -68,42 +69,52 @@ async function fetchComputerDetailOverview() {
|
|
|
computerOverview.value = res.data;
|
|
|
}
|
|
|
|
|
|
-// const gridEvents = {
|
|
|
-// pageChange({ currentPage, pageSize }) {
|
|
|
-// if (gridOptions.pagerConfig) {
|
|
|
-// gridOptions.pagerConfig.currentPage = currentPage;
|
|
|
-// gridOptions.pagerConfig.pageSize = pageSize;
|
|
|
-// fetchComputerData(currentView.value);
|
|
|
-// }
|
|
|
-// }
|
|
|
-// };
|
|
|
+const gridEvents = {
|
|
|
+ pageChange({ currentPage, pageSize }) {
|
|
|
+ console.log("=>(ComputerDetail.vue:73) pageSize", pageSize);
|
|
|
+ console.log("=>(ComputerDetail.vue:73) currentPage", currentPage);
|
|
|
+ if (gridOptions.pagerConfig) {
|
|
|
+ gridOptions.pagerConfig.currentPage = currentPage;
|
|
|
+ gridOptions.pagerConfig.pageSize = pageSize;
|
|
|
+ fetchComputerData(currentView.value);
|
|
|
+ }
|
|
|
+ }
|
|
|
+};
|
|
|
|
|
|
// 当前信息、历史记录
|
|
|
async function fetchComputerData(view) { // 默认为当前视图
|
|
|
const query = {
|
|
|
- // page: gridOptions.pagerConfig.currentPage,
|
|
|
- // limit: gridOptions.pagerConfig.pageSize,
|
|
|
+ page: gridOptions.pagerConfig.currentPage,
|
|
|
+ limit: gridOptions.pagerConfig.pageSize,
|
|
|
+ computerNumber : computerOverview.value.computerNumber,
|
|
|
};
|
|
|
|
|
|
switch (view) {
|
|
|
case 'current':
|
|
|
gridOptions.columns = ComputerCurrentColumns;
|
|
|
currentView.value = 'current';
|
|
|
- query.computerNumber = computerOverview.value.computerNumber;
|
|
|
- await useTableData(api.getCurrentTableData, query, gridOptions);
|
|
|
+ const resp = await getCurrentTableData(query);
|
|
|
+ gridOptions.data = resp.data;
|
|
|
+ gridOptions.pagerConfig.total = resp.total;
|
|
|
+ // await useTableData(api.getCurrentTableData, query, gridOptions);
|
|
|
break;
|
|
|
case 'history':
|
|
|
gridOptions.columns = ComputerPastColumns;
|
|
|
currentView.value = 'history';
|
|
|
query.id = id;
|
|
|
- await useTableData(api.getPastTableData, query, gridOptions);
|
|
|
+ // await useTableData(api.getPastTableData, query, gridOptions);
|
|
|
+ const ret = await getPastTableData(query);
|
|
|
+ gridOptions.data = ret.data;
|
|
|
+ gridOptions.pagerConfig.total = ret.total;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function switchView(view) {
|
|
|
- if (view !== currentView.value) { // 只有在不同的视图时才切换
|
|
|
- fetchComputerData(view); // 调用 fetchComputerData 来加载新的视图数据
|
|
|
+ if (view !== currentView.value) {
|
|
|
+ gridOptions.pagerConfig.currentPage = 1;
|
|
|
+ gridOptions.pagerConfig.pageSize = 20;
|
|
|
+ fetchComputerData(view);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -221,16 +232,6 @@ onMounted(async () => {
|
|
|
<el-button :type="currentView === 'current' ? 'primary' : 'default'" @click="switchView('current')"> 当前信息 </el-button>
|
|
|
<el-button :type="currentView === 'history' ? 'primary' : 'default'" @click="switchView('history')"> 历史记录 </el-button>
|
|
|
</template>
|
|
|
- <!--<template #pager>-->
|
|
|
- <!-- <vxe-pager-->
|
|
|
- <!-- v-model:currentPage="tableOptions.page"-->
|
|
|
- <!-- v-model:pageSize="tableOptions.limit"-->
|
|
|
- <!-- :total="tableOptions.total"-->
|
|
|
- <!-- size="small"-->
|
|
|
- <!-- @page-change="handlePageChange"-->
|
|
|
- <!-- >-->
|
|
|
- <!-- </vxe-pager>-->
|
|
|
- <!--</template>-->
|
|
|
</vxe-grid>
|
|
|
</el-card>
|
|
|
<!-- 编辑 Drawer -->
|