From 332cfbec0e7dddadc5c5f676d183d06210abc981 Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期三, 27 五月 2026 16:46:19 +0800
Subject: [PATCH] 人员台账增加民族筛选、补贴配置页面、人员薪资修改工资表、增加厂家管理页面、库存管理增加来源字段和废品库

---
 src/views/personnelManagement/employeeRecord/components/BasicInfoSection.vue |  237 +++++++++++++++++++++++++++++------------------------------
 1 files changed, 117 insertions(+), 120 deletions(-)

diff --git a/src/views/personnelManagement/employeeRecord/components/BasicInfoSection.vue b/src/views/personnelManagement/employeeRecord/components/BasicInfoSection.vue
index 0aa4f06..4a038ea 100644
--- a/src/views/personnelManagement/employeeRecord/components/BasicInfoSection.vue
+++ b/src/views/personnelManagement/employeeRecord/components/BasicInfoSection.vue
@@ -1,154 +1,149 @@
 <template>
-  <el-card class="form-card" shadow="never">
+  <el-card class="form-card"
+           shadow="never">
     <template #header>
       <span class="card-title">
         <span class="card-title-line">|</span>
         鍩烘湰淇℃伅
       </span>
     </template>
-
     <el-row :gutter="24">
       <el-col :span="5">
-        <el-form-item label="鍛樺伐缂栧彿" prop="staffNo">
-          <el-input
-            v-model="form.staffNo"
-            placeholder="璇疯緭鍏�"
-            clearable
-            maxlength="20"
-            show-word-limit
-            :disabled="operationType !== 'add'"
-          />
+        <el-form-item label="鍛樺伐缂栧彿"
+                      prop="staffNo">
+          <el-input v-model="form.staffNo"
+                    placeholder="璇疯緭鍏�"
+                    clearable
+                    maxlength="20"
+                    show-word-limit
+                    :disabled="operationType !== 'add'" />
         </el-form-item>
       </el-col>
       <el-col :span="5">
-        <el-form-item label="濮撳悕" prop="staffName">
-          <el-input
-            v-model="form.staffName"
-            placeholder="璇疯緭鍏�"
-            clearable
-            maxlength="50"
-            show-word-limit
-          />
+        <el-form-item label="濮撳悕"
+                      prop="staffName">
+          <el-input v-model="form.staffName"
+                    placeholder="璇疯緭鍏�"
+                    clearable
+                    maxlength="50"
+                    show-word-limit />
         </el-form-item>
       </el-col>
       <el-col :span="5">
-        <el-form-item label="鍒悕" prop="alias">
-          <el-input
-            v-model="form.alias"
-            placeholder="璇疯緭鍏�"
-            clearable
-            maxlength="50"
-            show-word-limit
-          />
+        <el-form-item label="鍒悕"
+                      prop="alias">
+          <el-input v-model="form.alias"
+                    placeholder="璇疯緭鍏�"
+                    clearable
+                    maxlength="50"
+                    show-word-limit />
         </el-form-item>
       </el-col>
       <el-col :span="5">
-        <el-form-item label="鎵嬫満" prop="phone">
-          <el-input
-            v-model="form.phone"
-            placeholder="璇疯緭鍏�"
-            clearable
-            maxlength="11"
-            show-word-limit
-          />
+        <el-form-item label="鎵嬫満"
+                      prop="phone">
+          <el-input v-model="form.phone"
+                    placeholder="璇疯緭鍏�"
+                    clearable
+                    maxlength="11"
+                    show-word-limit />
         </el-form-item>
       </el-col>
       <el-col :span="4">
-        <el-form-item label="鎬у埆" prop="sex">
-          <el-select
-            v-model="form.sex"
-            placeholder="璇烽�夋嫨"
-            clearable
-            style="width: 100%"
-          >
-            <el-option label="鐢�" value="鐢�" />
-            <el-option label="濂�" value="濂�" />
+        <el-form-item label="鎬у埆"
+                      prop="sex">
+          <el-select v-model="form.sex"
+                     placeholder="璇烽�夋嫨"
+                     clearable
+                     style="width: 100%">
+            <el-option label="鐢�"
+                       value="鐢�" />
+            <el-option label="濂�"
+                       value="濂�" />
           </el-select>
         </el-form-item>
       </el-col>
     </el-row>
-
     <el-row :gutter="24">
       <el-col :span="5">
-        <el-form-item label="鍑虹敓鏃ユ湡" prop="birthDate">
-          <el-date-picker
-            v-model="form.birthDate"
-            type="date"
-            value-format="YYYY-MM-DD"
-            format="YYYY-MM-DD"
-            placeholder="璇烽�夋嫨"
-            style="width: 100%"
-            clearable
-          />
+        <el-form-item label="鍑虹敓鏃ユ湡"
+                      prop="birthDate">
+          <el-date-picker v-model="form.birthDate"
+                          type="date"
+                          value-format="YYYY-MM-DD"
+                          format="YYYY-MM-DD"
+                          placeholder="璇烽�夋嫨"
+                          style="width: 100%"
+                          clearable />
         </el-form-item>
       </el-col>
       <el-col :span="5">
-        <el-form-item label="骞撮緞" prop="age">
-          <el-input-number
-            v-model="form.age"
-            :min="0"
-            :max="150"
-            :precision="0"
-            :step="1"
-            style="width: 100%"
-          />
+        <el-form-item label="骞撮緞"
+                      prop="age">
+          <el-input-number v-model="form.age"
+                           :min="0"
+                           :max="150"
+                           :precision="0"
+                           :step="1"
+                           style="width: 100%" />
         </el-form-item>
       </el-col>
       <el-col :span="5">
-        <el-form-item label="绫嶈疮" prop="nativePlace">
-          <el-input
-            v-model="form.nativePlace"
-            placeholder="璇疯緭鍏�"
-            clearable
-            maxlength="50"
-            show-word-limit
-          />
+        <el-form-item label="绫嶈疮"
+                      prop="nativePlace">
+          <el-input v-model="form.nativePlace"
+                    placeholder="璇疯緭鍏�"
+                    clearable
+                    maxlength="50"
+                    show-word-limit />
         </el-form-item>
       </el-col>
       <el-col :span="5">
-        <el-form-item label="姘戞棌" prop="nation">
-          <el-input
-            v-model="form.nation"
-            placeholder="璇疯緭鍏�"
-            clearable
-            maxlength="20"
-            show-word-limit
-          />
+        <el-form-item label="姘戞棌"
+                      prop="nation">
+          <el-select v-model="form.nation"
+                     placeholder="璇烽�夋嫨"
+                     clearable
+                     style="width: 100%">
+            <el-option v-for="dict in nation_type"
+                       :key="dict.label"
+                       :label="dict.label"
+                       :value="dict.label" />
+          </el-select>
         </el-form-item>
       </el-col>
       <el-col :span="4">
-        <el-form-item label="濠氬Щ鐘跺喌" prop="maritalStatus">
-          <el-select
-            v-model="form.maritalStatus"
-            placeholder="璇烽�夋嫨"
-            clearable
-            style="width: 100%"
-          >
-            <el-option label="鏈" value="鏈" />
-            <el-option label="宸插" value="宸插" />
-            <el-option label="绂诲紓" value="绂诲紓" />
-            <el-option label="涓у伓" value="涓у伓" />
+        <el-form-item label="濠氬Щ鐘跺喌"
+                      prop="maritalStatus">
+          <el-select v-model="form.maritalStatus"
+                     placeholder="璇烽�夋嫨"
+                     clearable
+                     style="width: 100%">
+            <el-option label="鏈"
+                       value="鏈" />
+            <el-option label="宸插"
+                       value="宸插" />
+            <el-option label="绂诲紓"
+                       value="绂诲紓" />
+            <el-option label="涓у伓"
+                       value="涓у伓" />
           </el-select>
         </el-form-item>
       </el-col>
     </el-row>
-
     <el-row :gutter="24">
       <el-col :span="10">
-        <el-form-item label="瑙掕壊" prop="roleId">
-          <el-select
-            v-model="form.roleId"
-            placeholder="璇烽�夋嫨"
-            clearable
-            style="width: 100%"
-          >
-            <el-option
-              v-for="item in roleOptions"
-              :key="item.roleId"
-              :label="item.roleName"
-              :value="item.roleId"
-              :disabled="item.status == 1"
-            />
+        <el-form-item label="瑙掕壊"
+                      prop="roleId">
+          <el-select v-model="form.roleId"
+                     placeholder="璇烽�夋嫨"
+                     clearable
+                     style="width: 100%">
+            <el-option v-for="item in roleOptions"
+                       :key="item.roleId"
+                       :label="item.roleName"
+                       :value="item.roleId"
+                       :disabled="item.status == 1" />
           </el-select>
         </el-form-item>
       </el-col>
@@ -157,25 +152,27 @@
 </template>
 
 <script setup>
-import { toRefs } from "vue";
+  import { toRefs, getCurrentInstance } from "vue";
 
-const props = defineProps({
-  form: { type: Object, required: true },
-  operationType: { type: String, default: "add" },
-  roleOptions: { type: Array, default: () => [] },
-});
+  const props = defineProps({
+    form: { type: Object, required: true },
+    operationType: { type: String, default: "add" },
+    roleOptions: { type: Array, default: () => [] },
+  });
 
-const { form, operationType, roleOptions } = toRefs(props);
+  const { proxy } = getCurrentInstance();
+  const { nation_type } = proxy.useDict("nation_type");
+  const { form, operationType, roleOptions } = toRefs(props);
 </script>
 
 <style scoped>
-.form-card {
-  margin-bottom: 16px;
-}
+  .form-card {
+    margin-bottom: 16px;
+  }
 
-.card-title-line {
-  color: #f56c6c;
-  margin-right: 4px;
-}
+  .card-title-line {
+    color: #f56c6c;
+    margin-right: 4px;
+  }
 </style>
 

--
Gitblit v1.9.3