From bd1faac6761c002de7b7dae3c2caeef99a814128 Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Thu, 18 Dec 2025 15:39:39 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=BA=E5=91=98=E7=AE=A1=E7=90=86=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=92=8C=E6=96=B0=E5=A2=9E=E6=8E=A5=E5=8F=A3=E8=B0=83?= =?UTF-8?q?=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/common.js | 16 +-- .../basicManage/personCategory/index.vue | 4 +- .../personManage/Person/addAndEditForm.vue | 100 ++++++++++-------- src/views/personManage/Person/config.js | 21 ++-- src/views/personManage/Person/index.vue | 44 +++++--- 5 files changed, 100 insertions(+), 85 deletions(-) diff --git a/src/api/common.js b/src/api/common.js index c5b1531..5d5c28d 100644 --- a/src/api/common.js +++ b/src/api/common.js @@ -1,24 +1,16 @@ import request from '@/utils/request' // 公共下拉选数据 - 获取人员所属 -export function getInspectionStationSelectAPI(query = { category: 0 }) { +export function getInspectionStationSelectAPI(data) { return request({ url: '/personnel/getInspectionStationSelect', method: 'GET', - params: query, - }) -} -// 公共下拉选数据 - 获取岗位 -export function getPositionSelectAPI(query = { category: 0 }) { - return request({ - url: '/personnel/getInspectionStationSelect', - method: 'GET', - params: query, + params: data, }) } -// 公共下拉选数据 - 获取人员性质和人员分类 -export function getPersonNatureAndCategorySelectAPI(data) { +// 公共下拉选数据 - 获取人员性质、人员分类、岗位 +export function getPersonNatureAndCategoryAndPositionSelectAPI(data) { return request({ url: '/personnel/getPersonnelClassificationSelect', method: 'GET', diff --git a/src/views/basicManage/personCategory/index.vue b/src/views/basicManage/personCategory/index.vue index 7fe68da..e948e61 100644 --- a/src/views/basicManage/personCategory/index.vue +++ b/src/views/basicManage/personCategory/index.vue @@ -10,7 +10,7 @@ :show-action="true" :action-columns="actionColumns" :default-query-params="{ - category: 1, // 0:人员分类 1:人员性质 2:岗位列表 + category: 0, // 0:人员分类 1:人员性质 2:岗位列表 }" > @@ -83,7 +83,7 @@ const editId = ref(null) const getInitFormData = () => ({ personnelClassificationName: '', remark: '', - category: 1, + category: 0, }) const addAndEditForm = ref(getInitFormData()) diff --git a/src/views/personManage/Person/addAndEditForm.vue b/src/views/personManage/Person/addAndEditForm.vue index aacb471..a1e22f1 100644 --- a/src/views/personManage/Person/addAndEditForm.vue +++ b/src/views/personManage/Person/addAndEditForm.vue @@ -7,91 +7,95 @@ :rules="rules" class="add-and-edit-form" > - + - + - - - 男性 ♂ - 女性 ♀ + + + 男性 ♂ + 女性 ♀ - + - + @@ -103,8 +107,7 @@ import { ref } from 'vue' import { useOptions } from '@/hooks/useOptions' import { getInspectionStationSelectAPI, - getPositionSelectAPI, - getPersonNatureAndCategorySelectAPI, + getPersonNatureAndCategoryAndPositionSelectAPI, } from '@/api/common.js' const props = defineProps({ @@ -121,15 +124,22 @@ const formRef = ref(null) const { options: inspectionStationOptions } = useOptions( 'inspectionStationOptions', getInspectionStationSelectAPI, + { + category: 0, + }, ) // 岗位 -// const { options: positionOptions } = useOptions('positionOptions', getPositionSelectAPI, { -// category: 2, -// }) +const { options: positionOptions } = useOptions( + 'positionOptions', + getPersonNatureAndCategoryAndPositionSelectAPI, + { + category: 2, + }, +) // 人员性质 const { options: natureOptions } = useOptions( 'personNatureOptions', - getPersonNatureAndCategorySelectAPI, + getPersonNatureAndCategoryAndPositionSelectAPI, { category: 1, }, @@ -137,19 +147,19 @@ const { options: natureOptions } = useOptions( // 人员分类 const { options: categoryOptions } = useOptions( 'personCategoryOptions', - getPersonNatureAndCategorySelectAPI, + getPersonNatureAndCategoryAndPositionSelectAPI, { category: 0, }, ) const rules = { - orgId: [{ required: true, message: '请选择人员所属', trigger: 'change' }], - personName: [{ required: true, message: '请输入姓名', trigger: 'blur' }], - gender: [{ required: true, message: '请选择性别', trigger: 'change' }], + inspectionStationId: [{ required: true, message: '请选择人员所属', trigger: 'change' }], + name: [{ required: true, message: '请输入姓名', trigger: 'blur' }], + sex: [{ required: true, message: '请选择性别', trigger: 'change' }], positionId: [{ required: true, message: '请选择岗位', trigger: 'change' }], - natureId: [{ required: true, message: '请选择人员性质', trigger: 'change' }], - categoryId: [{ required: true, message: '请选择人员分类', trigger: 'change' }], + personnelNatureId: [{ required: true, message: '请选择人员性质', trigger: 'change' }], + personnelClassificationId: [{ required: true, message: '请选择人员分类', trigger: 'change' }], } // 暴露校验方法和重置方法给父组件 diff --git a/src/views/personManage/Person/config.js b/src/views/personManage/Person/config.js index d803002..364e84b 100644 --- a/src/views/personManage/Person/config.js +++ b/src/views/personManage/Person/config.js @@ -9,21 +9,17 @@ export default { ], tableColumns: [ { - prop: 'orgName', + prop: 'inspectionStationName', label: '人员所属', }, { - prop: 'personName', + prop: 'name', label: '姓名', }, { - prop: 'gender', + prop: 'sex', label: '性别', - type: 'dict', // 假设有字典处理 - dictData: [ - { label: '男', value: 0 }, - { label: '女', value: 1 }, - ], + formatter: (row) => (row.sex == 1 ? '男' : '女'), }, { prop: 'phone', @@ -34,13 +30,18 @@ export default { label: '岗位', }, { - prop: 'natureName', + prop: 'personnelNatureName', label: '人员性质', }, { - prop: 'categoryName', + prop: 'personnelClassificationName', label: '人员分类', }, + { + prop: 'longTermSecondment', + label: '是否长期借调', + slot: 'longTermSecondment', + }, ], dialogConfig: reactive({ diff --git a/src/views/personManage/Person/index.vue b/src/views/personManage/Person/index.vue index 472fd2f..135ec48 100644 --- a/src/views/personManage/Person/index.vue +++ b/src/views/personManage/Person/index.vue @@ -13,6 +13,14 @@ + @@ -31,20 +39,18 @@