From 77737f4e73f7267170b9b06fc73d1610c29c0661 Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期二, 12 十一月 2024 13:18:35 +0800
Subject: [PATCH] 新增

---
 src/views/newSpecialWorkSystem/workTicket/zysq/components/workSelect.vue |   41 ++++++++++++++++++++++++++++++++++-------
 1 files changed, 34 insertions(+), 7 deletions(-)

diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/workSelect.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/workSelect.vue
index 15a2e29..a74c29c 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/workSelect.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/workSelect.vue
@@ -3,11 +3,11 @@
     <el-row style="margin-bottom: 20px">
       <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
         <span>作业编号:</span>
-        <el-input v-model="searPara.workPermitNo" placeholder="作业编号"/>
+        <el-input v-model="searPara.searchParams.workPermitNo" placeholder="作业编号"/>
       </div>
       <div class="basic-line">
         <span>作业类型:</span>
-        <el-select v-model="searPara.workType">
+        <el-select v-model="searPara.searchParams.workType">
           <el-option
               v-for="item in workType"
               :key="item.value"
@@ -22,7 +22,7 @@
       </div>
     </el-row>
     <el-table ref="TableRef" :data="otherWorks" style="width: 100%" border @selection-change="handleSelectionChange" :row-key="(row) => { return row.workApplyId }">
-      <el-table-column type="selection" width="55" />
+      <el-table-column type="selection" width="55" :reserve-selection="true"/>
 <!--            <el-table-column type="index" label="序号" width="60" />-->
       <el-table-column prop="workTypeDesc" label="作业类型" show-overflow-tooltip></el-table-column>
       <el-table-column prop="workLevelDesc" label="作业等级" show-overflow-tooltip></el-table-column>
@@ -37,6 +37,7 @@
 <!--              </template>-->
 <!--            </el-table-column>-->
     </el-table>
+    <el-pagination style="margin-top: 20px;display: flex;justify-content: right" v-model:currentPage="searPara.pageIndex" v-model:page-size="searPara.pageSize" :page-sizes="[10]" small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
       <template #footer>
           <span class="dialog-footer">
               <el-button @click="isShowDialog = !isShowDialog" size="default">取 消</el-button>
@@ -58,6 +59,7 @@
     title: string
     isShowDialog: boolean
     searPara: object
+  totalSize: number
     otherWorks: []
   workType: Array<any>
   selected: Array<any>
@@ -73,9 +75,14 @@
             title: '',
             isShowDialog: false,
             searPara: {
-              workPermitNo: '',
-              workType: null
+              pageSize: 10,
+              pageIndex: 1,
+              searchParams: {
+                workPermitNo: '',
+                workType: null
+              }
             },
+          totalSize: 0,
             otherWorks: [],
             selected: [],
             workType: [
@@ -122,6 +129,7 @@
         };
 
         const refreshTableSelection = (works) => {
+            state.selected = works
             if (TableRef.value) {
               for (let i = 0; i < state.otherWorks.length; i++) {
                 if (works.includes(state.otherWorks[i].workApplyId)){
@@ -138,6 +146,7 @@
           let res = await workApplyApi().getOtherWork(state.searPara);
           if (res.data.code === '200') {
             state.otherWorks = JSON.parse(JSON.stringify(res.data.data))
+            state.totalSize = res.data.total
           } else {
             ElMessage({
               type: 'warning',
@@ -149,8 +158,12 @@
 
       const clearSearch = ()=>{
         state.searPara = {
-          workPermitNo: '',
-          workType: null
+          pageSize: 10,
+          pageIndex: 1,
+          searchParams: {
+            workPermitNo: '',
+            workType: null
+          }
         }
         getData()
       }
@@ -161,17 +174,31 @@
       }
 
       const onSubmit = ()=>{
+        console.log(state.selected,'sel')
         context.emit('refreshWorks')
         state.selected = []
         clearSearch()
         state.isShowDialog = false
       }
 
+      // 分页改变
+      const handleSizeChange = (val: number) => {
+        state.searPara.pageSize = val;
+        getData()
+      };
+      // 分页改变
+      const handleCurrentChange = (val: number) => {
+        state.searPara.pageIndex = val;
+        getData()
+      };
+
         // 页面加载时
         onMounted(() => {});
         return {
             userRef,
           TableRef,
+          handleSizeChange,
+          handleCurrentChange,
             handleSelectionChange,
             openDialog,
             getData,

--
Gitblit v1.9.2