From 0fd86012825aac8f0604b2fdc8c71e5aa68187c6 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期四, 27 十一月 2025 16:05:24 +0800
Subject: [PATCH] 金鹰黄金-1.部门管理的劳保用品配置增加分页      2.人力资源紧急联系人和电话不必填      3.人力资源合同结束日期不必填

---
 src/views/lavorissue/issue/index.vue |   58 ++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 8 deletions(-)

diff --git a/src/views/lavorissue/issue/index.vue b/src/views/lavorissue/issue/index.vue
index db52690..320a27b 100644
--- a/src/views/lavorissue/issue/index.vue
+++ b/src/views/lavorissue/issue/index.vue
@@ -58,6 +58,18 @@
                   </template>
                 </el-table-column>
               </el-table>
+              <!-- 鍒嗛〉缁勪欢 -->
+              <el-pagination
+                v-model:current-page="queryParams.current"
+                v-model:page-size="queryParams.size"
+                :page-sizes="[10, 20, 50, 100]"
+                :total="total"
+                background
+                layout="total, sizes, prev, pager, next, jumper"
+                @size-change="handleSizeChange"
+                @current-change="handleCurrentChange"
+                style="margin-top: 16px; justify-content: flex-end;s"
+              />
             </div>
             <div v-else class="empty">璇烽�夋嫨宸︿晶閮ㄩ棬鎴栧矖浣嶈繘琛岄厤缃�</div>
           </div>
@@ -99,7 +111,7 @@
           <el-input-number v-model="addItemForm.quantity" :min="0" :precision="0" />
         </el-form-item>
         <el-form-item label="瀛e害">
-          <el-select v-model="addItemForm.quarter" placeholder="閫夋嫨瀛e害" style="width: 160px">
+          <el-select v-model="addItemForm.quarter" placeholder="閫夋嫨瀛e害">
             <el-option :value="1" :label="quarterLabelFromNumber(1)" />
             <el-option :value="2" :label="quarterLabelFromNumber(2)" />
             <el-option :value="3" :label="quarterLabelFromNumber(3)" />
@@ -201,10 +213,41 @@
   return n === 1 ? '绗竴瀛e害' : n === 2 ? '绗簩瀛e害' : n === 3 ? '绗笁瀛e害' : n === 4 ? '绗洓瀛e害' : ''
 }
 
+// 鏌ヨ鍙傛暟鍜屽垎椤电浉鍏冲彉閲�
+const queryParams = reactive({
+  current: 1,
+  size: 10
+})
+const total = ref(0)
+
+// 鍒嗛〉澶у皬鏀瑰彉
+function handleSizeChange(val) {
+  queryParams.size = val
+  queryParams.current = 1
+  loadLaborConf()
+}
+
+// 褰撳墠椤垫敼鍙�
+function handleCurrentChange(val) {
+  queryParams.current = val
+  loadLaborConf()
+}
+
+// 鍔犺浇鍔充繚鐢ㄥ搧閰嶇疆鍒楄〃锛堟敮鎸佸垎椤碉級
 async function loadLaborConf(deptPositionId) {
+  if (!deptPositionId) {
+    const currentId = currentPosition.value?.id ?? currentDept.value?.raw?.id
+    if (!currentId) return
+    deptPositionId = currentId
+  }
+  
   try {
     laborConfLoading.value = true
-    const res = await laborConfListPage({ deptPositionId })
+    const res = await laborConfListPage({ 
+      deptPositionId,
+      current: queryParams.current,
+      size: queryParams.size
+    })
     laborConfList.value = res.data.records.map(it => ({
       ...it,
       id: it.id ?? it.dictId ?? it.value,
@@ -213,6 +256,7 @@
       quarter: it.quarter,
       quarterLabel: quarterLabelFromNumber(it.quarter),
     }))
+    total.value = res.data.total || 0
   } finally {
     laborConfLoading.value = false
   }
@@ -274,8 +318,7 @@
     }
     
     // 閲嶆柊鍔犺浇鐢ㄥ搧閰嶇疆鍒楄〃
-    const currentId = currentPosition.value?.id ?? currentDept.value?.raw?.id
-    await loadLaborConf(currentId)
+    await loadLaborConf()
     
     addItemDialogVisible.value = false
     ElMessage.success('淇濆瓨鎴愬姛')
@@ -296,8 +339,7 @@
   try {
     await deleteLaborConf([row.id])
     // 閲嶆柊鍔犺浇鐢ㄥ搧閰嶇疆鍒楄〃
-    const currentId = currentPosition.value?.id ?? currentDept.value?.raw?.id
-    await loadLaborConf(currentId)
+    await loadLaborConf()
     ElMessage.success('鍒犻櫎鎴愬姛')
   } catch (e) {
     ElMessage.error((e && (e.msg || e.message)) || '鍒犻櫎澶辫触')
@@ -376,13 +418,13 @@
     currentDept.value = node
     currentPosition.value = null
     // 閫夋嫨閮ㄩ棬鏃讹紝鍔犺浇閮ㄩ棬绾у埆鐨勭敤鍝侀厤缃�
-    loadLaborConf(node.raw.id)
+    loadLaborConf()
   } else if (node.type === 2) {
     const dept = findDeptById(departments, node.parentDeptId)
     if (dept) currentDept.value = mapDeptToTree(dept)
     currentPosition.value = node.raw
     // 閫夋嫨宀椾綅鏃讹紝鏌ヨ鐢ㄥ搧閰嶇疆鍒楄〃
-    loadLaborConf(node.raw.id)
+    loadLaborConf()
   }
 }
 

--
Gitblit v1.9.3