From b114f42bd50a6c971a0cfe6f7b390d7065e98fe2 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期五, 11 七月 2025 15:54:40 +0800
Subject: [PATCH] 添加新增离职时,页面新增入职字段改为新增离职。员工编号改为下拉选择框,选择员工编号后带出人员入职填的信息
---
src/views/personnelManagement/dimission/components/formDia.vue | 71 ++++++++++++++++++++++-
src/api/personnelManagement/onboarding.js | 61 +++++++++++---------
2 files changed, 100 insertions(+), 32 deletions(-)
diff --git a/src/api/personnelManagement/onboarding.js b/src/api/personnelManagement/onboarding.js
index 7212afa..39dbf22 100644
--- a/src/api/personnelManagement/onboarding.js
+++ b/src/api/personnelManagement/onboarding.js
@@ -1,42 +1,49 @@
-import request from '@/utils/request'
+import request from "@/utils/request";
// 鏌ヨ浜哄憳鍏ヨ亴鍒楄〃
export function staffJoinListPage(query) {
- return request({
- url: '/staff/staffJoinLeaveRecord/listPage',
- method: 'get',
- params: query,
- })
+ return request({
+ url: "/staff/staffJoinLeaveRecord/listPage",
+ method: "get",
+ params: query,
+ });
}
// 鏂板浜哄憳鍏ヨ亴
export function staffJoinAdd(query) {
- return request({
- url: '/staff/staffJoinLeaveRecord/add',
- method: 'post',
- data: query,
- })
+ return request({
+ url: "/staff/staffJoinLeaveRecord/add",
+ method: "post",
+ data: query,
+ });
}
// 淇敼浜哄憳鍏ヨ亴
export function staffJoinUpdate(query) {
- return request({
- url: '/staff/staffJoinLeaveRecord/update',
- method: 'post',
- data: query,
- })
+ return request({
+ url: "/staff/staffJoinLeaveRecord/update",
+ method: "post",
+ data: query,
+ });
}
// 鏌ヨ鍛樺伐鍏ヨ亴淇℃伅
export function getStaffJoinInfo(query) {
- return request({
- url: '/staff/staffJoinLeaveRecord/' + query,
- method: 'get',
- data: query,
- })
+ return request({
+ url: "/staff/staffJoinLeaveRecord/" + query,
+ method: "get",
+ data: query,
+ });
}
// 鍒犻櫎鍛樺伐
export function staffJoinDel(query) {
- return request({
- url: '/staff/staffJoinLeaveRecord/del',
- method: 'delete',
- data: query,
- })
-}
\ No newline at end of file
+ return request({
+ url: "/staff/staffJoinLeaveRecord/del",
+ method: "delete",
+ data: query,
+ });
+}
+
+export function getStaffOnJob() {
+ return request({
+ url: "/staff/staffOnJob/list",
+ method: "get",
+ });
+}
diff --git a/src/views/personnelManagement/dimission/components/formDia.vue b/src/views/personnelManagement/dimission/components/formDia.vue
index 939f921..1a8a75e 100644
--- a/src/views/personnelManagement/dimission/components/formDia.vue
+++ b/src/views/personnelManagement/dimission/components/formDia.vue
@@ -9,13 +9,21 @@
<el-form :model="form" label-width="140px" label-position="top" :rules="rules" ref="formRef">
<el-row :gutter="30">
<el-col :span="12">
- <el-form-item label="鍛樺伐缂栧彿锛�" prop="staffNo">
- <el-input v-model="form.staffNo" placeholder="璇疯緭鍏�" clearable :disabled="operationType !== 'add'"/>
+ <el-form-item label="濮撳悕锛�" prop="staffName">
+ <!-- <el-input v-model="form.staffName" placeholder="璇疯緭鍏�" clearable/> -->
+ <el-select v-model="form.staffName" placeholder="璇烽�夋嫨浜哄憳" style="width: 100%" @change="handleSelect">
+ <el-option
+ v-for="item in personList"
+ :key="item.id"
+ :label="item.staffName"
+ :value="item.staffName"
+ />
+ </el-select>
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="濮撳悕锛�" prop="staffName">
- <el-input v-model="form.staffName" placeholder="璇疯緭鍏�" clearable/>
+ <el-form-item label="鍛樺伐缂栧彿锛�" prop="staffNo">
+ <el-input v-model="form.staffNo" placeholder="璇疯緭鍏�" clearable :disabled="operationType !== 'add'"/>
</el-form-item>
</el-col>
</el-row>
@@ -135,7 +143,7 @@
<script setup>
import {ref} from "vue";
-import {getStaffJoinInfo, staffJoinAdd, staffJoinUpdate} from "@/api/personnelManagement/onboarding.js";
+import {getStaffJoinInfo, staffJoinAdd, staffJoinUpdate,getStaffOnJob} from "@/api/personnelManagement/onboarding.js";
const { proxy } = getCurrentInstance()
const emit = defineEmits(['close'])
@@ -184,6 +192,7 @@
// 鎵撳紑寮规
const openDialog = (type, row) => {
+ getList()
operationType.value = type;
dialogFormVisible.value = true;
if (operationType.value === 'edit') {
@@ -217,6 +226,58 @@
dialogFormVisible.value = false;
emit('close')
};
+
+const personList = ref([]);
+
+/**
+ * 鑾峰彇褰撳墠鍦ㄨ亴浜哄憳鍒楄〃
+ */
+const getList = () => {
+ getStaffOnJob().then(res => {
+ personList.value = res.data
+ })
+};
+
+const handleSelect = (val) => {
+ let obj = personList.value.find(item => item.staffName === val)
+ let {
+ sex,
+ phone,
+ staffNo,
+ nativePlace,
+ postJob,
+ adress,
+ firstStudy,
+ profession,
+ identityCard,
+ age,
+ emergencyContact,
+ emergencyContactPhone,
+ contractTerm,
+ contractStartTime,
+ contractEndTime,
+ staffName
+ } = obj
+ form.value = {
+ sex,
+ phone,
+ staffNo,
+ nativePlace,
+ postJob,
+ adress,
+ firstStudy,
+ profession,
+ identityCard,
+ age,
+ emergencyContact,
+ emergencyContactPhone,
+ contractTerm,
+ contractStartTime,
+ contractEndTime,
+ staffName
+ }
+
+}
defineExpose({
openDialog,
});
--
Gitblit v1.9.3