From 6448ec15bfe0b65fb822a662105bceddc23b58d8 Mon Sep 17 00:00:00 2001
From: yubo <autumnal_wind@yeah.net>
Date: 星期一, 06 四月 2026 21:34:44 +0800
Subject: [PATCH] feat(user): 新增员工档案管理视图组件

---
 src/views/dashboard/qjUser.vue |   41 +++++++++++++++++++++++++----------------
 1 files changed, 25 insertions(+), 16 deletions(-)

diff --git a/src/views/dashboard/qjUser.vue b/src/views/dashboard/qjUser.vue
index 1d30d79..b924a28 100644
--- a/src/views/dashboard/qjUser.vue
+++ b/src/views/dashboard/qjUser.vue
@@ -29,16 +29,16 @@
         :header-cell-style="{'height':'5.3vh','background-color':'#e6e6e6','text-align':'center'}"
         style="width: 100%;"
       >
-        <el-table-column show-overflow-tooltip type="selection" :reserve-selection="false" width="55" />
-        <el-table-column show-overflow-tooltip prop="empNumb" label="员工编号" width="100" />
-        <el-table-column show-overflow-tooltip prop="allDeptName" label="护卫点" width="120" />
-        <el-table-column show-overflow-tooltip prop="jobName" label="岗位" width="100" />
+        <el-table-column show-overflow-tooltip type="index" width="55" label="序号" />
+        <el-table-column show-overflow-tooltip prop="empNumb" label="编号" width="80" />
+        <el-table-column show-overflow-tooltip prop="allDeptName" label="部门(护卫点)" width="300" />
+        <el-table-column show-overflow-tooltip prop="jobName" label="岗位" width="80" />
         <el-table-column show-overflow-tooltip prop="empName" label="姓名" width="80" />
-        <el-table-column show-overflow-tooltip prop="certificateNumb" label="证件号码" />
-        <el-table-column show-overflow-tooltip prop="beginTime" label="开始时间" width="120" />
-        <el-table-column show-overflow-tooltip prop="endTime" label="结束时间" width="120" />
-        <el-table-column show-overflow-tooltip prop="leaveDay" label="请假天数" width="100" />
-        <el-table-column show-overflow-tooltip prop="leaveType" label="请假类型" width="100" :formatter="leaveTypeFormat" />
+        <el-table-column show-overflow-tooltip prop="certificateNumb" label="身份证号码" />
+        <el-table-column show-overflow-tooltip prop="beginTime" label="开始时间" width="110" />
+        <el-table-column show-overflow-tooltip prop="endTime" label="结束时间" width="110" />
+        <el-table-column show-overflow-tooltip prop="leaveDay" label="请假天数" width="80" />
+        <el-table-column show-overflow-tooltip prop="leaveType" label="请假类型" width="80" :formatter="leaveTypeFormat" />
         <el-table-column show-overflow-tooltip prop="returnDate" label="到岗时间" width="120" />
         <el-table-column show-overflow-tooltip prop="reporter" label="报备人" width="80" />
         <el-table-column show-overflow-tooltip prop="remark" label="备注" />
@@ -57,10 +57,12 @@
 <script>
 // 引用翻页组件
 import Pagination from '@/components/Pagination'
+import dictMixin from '../../utils/dictMixin'
 export default {
   components: {
     Pagination
   },
+  mixins: [dictMixin],
   props: {
     dialogVisible: {
       type: Boolean,
@@ -92,15 +94,15 @@
       }, // 查询参数
       sort: {}, // 排序
       pagination: { // 分页参数
-        size: 5,
+        size: 15,
         num: 1
       },
       list: [], // 给table显示的数据
       defaultProps: {
         children: 'children',
         label: 'label'
-      },
-      leaveTypeOptions: []
+      }
+      // leaveTypeOptions: []
     }
   },
   computed: {
@@ -108,12 +110,19 @@
       get() {
         return this.dialogVisible
       }
-    }
+    },
+    // 字典选项计算属性
+    leaveTypeOptions() { return this.getDictOptions('LEAVETYPE') }
+    // empStatusOptions() { return this.getDictOptions('empStatus') },
+    // empTypeOptions() { return this.getDictOptions('EMPTYPE') },
+    // educationOptions() { return this.getDictOptions('EDUCATION') },
+    // nativePlaceOptions() { return this.getDictOptions('NATIVEPLACE') },
+    // insuranceTypeOptions() { return this.getDictOptions('INSURANCETYPE') },
+    // nationOptions() { return this.getDictOptions('NATION') }
   },
   mounted() {
-    this.getDicts('LEAVETYPE').then(response => {
-      this.leaveTypeOptions = response.data
-    })
+    // 字典数据已在登录时预加载,直接从 Vuex 获取
+    this.initDictTypes(['LEAVETYPE'])
   },
   methods: {
     leaveTypeFormat(row, column) {

--
Gitblit v1.8.0