From 42ad8dcebd40baa9f7933fcb9b5308fdb5756085 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期四, 22 一月 2026 14:23:38 +0800
Subject: [PATCH] 功能优化
---
admin/src/components/business/OperaMemberWindow.vue | 54 +++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 39 insertions(+), 15 deletions(-)
diff --git a/admin/src/components/business/OperaMemberWindow.vue b/admin/src/components/business/OperaMemberWindow.vue
index cc748e7..97d3684 100644
--- a/admin/src/components/business/OperaMemberWindow.vue
+++ b/admin/src/components/business/OperaMemberWindow.vue
@@ -1,19 +1,27 @@
<template>
<GlobalWindow :title="title" width="60%" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm">
<el-form :model="form" ref="form" :rules="rules">
- <el-form-item label="濮撳悕" prop="name">
+ <el-form-item label="濮撳悕" prop="name" v-if="companyType === 0">
<el-input v-model="form.name" placeholder="璇疯緭鍏ュ鍚�" v-trim />
</el-form-item>
- <el-form-item label="鎵�灞炵粍缁�" prop="companyId">
+ <el-form-item label="鎵�灞炵粍缁�" prop="companyId" v-if="companyType === 0">
<!-- <el-cascader v-model="form.company" :options="department" @change="handleChangeCompany" :show-all-levels="false"
clearable filterable :props="departprops"></el-cascader>-->
- <el-select v-model="form.companyId" clearable filterable placeholder="璇烽�夋嫨">
- <template v-for="item in companyList">
-<!-- v-if="item.countNum && item.countNum>0"-->
- <el-option :key="item.id" :label="item.companyNamePath" :value="item.id">
- </el-option>
- </template>
- </el-select>
+<!-- <el-select v-model="form.companyId" clearable filterable placeholder="璇烽�夋嫨">-->
+<!-- <template v-for="item in companyList">-->
+<!-- <el-option :key="item.id" :label="item.companyNamePath" :value="item.id">-->
+<!-- </el-option>-->
+<!-- </template>-->
+<!-- </el-select>-->
+ <treeselect
+ v-model="form.companyId"
+ placeholder="璇烽�夋嫨"
+ :options="treeData"
+ :normalizer="normalizeOptions"
+ :default-expand-level="1"
+ noChildrenText="娌℃湁瀛愰�夐」"
+ noOptionsText="娌℃湁鍙�夐」"
+ noResultsText="娌℃湁鍖归厤鐨勭粨鏋�" />
<div style="font-size: 12px;color: #F56C6C">
娉細浠呮敮鎸侀�夋嫨 銆恵{ companyType === 0 ? '鐩稿叧鏂圭粍缁�' : '鍐呴儴缁勭粐' }}銆�
</div>
@@ -24,23 +32,23 @@
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="鎵嬫満鍙�" prop="phone">
+ <el-form-item label="鎵嬫満鍙�" prop="phone" v-if="companyType === 0">
<el-input v-model="form.phone" placeholder="璇疯緭鍏ユ墜鏈哄彿" v-trim />
<div style="color: #F56C6C;font-size: 12px">娉細鍛樺伐鎵嬫満鍙峰皢浣滀负骞冲彴鐧诲綍璐﹀彿锛屽垵濮嬪瘑鐮佷负绯荤粺榛樿瀵嗙爜閰嶇疆椤�</div>
</el-form-item>
- <el-form-item label="韬唤璇佸彿" v-if="form.id == null">
+ <el-form-item label="韬唤璇佸彿" v-if="form.id == null && companyType === 0">
<el-input v-model="form.idcardNo" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" v-trim />
</el-form-item>
- <el-form-item label="淇敼韬唤璇佸彿" v-if="form.id != null">
+ <el-form-item label="淇敼韬唤璇佸彿" v-if="form.id != null && companyType === 0">
<el-input v-model="form.idcardNoNew" placeholder="鍙慨鏀硅韩浠借瘉鍙�" v-trim />
<div style="font-size: 12px" v-if="form.id != null">
娉細褰撳墠韬唤璇佸彿涓�<span style="color: #F56C6C">銆恵{ form.idcardDecode }}銆�</span>锛屽闇�淇敼锛岃鍦ㄨ緭鍏ユ爮濉啓鏂扮殑韬唤璇佸彿!
</div>
</el-form-item>
- <el-form-item label="宸ュ彿" prop="code">
+ <el-form-item label="宸ュ彿" prop="code" v-if="companyType === 0">
<el-input v-model="form.code" placeholder="璇疯緭鍏ュ憳宸ュ伐鍙�" v-trim />
</el-form-item>
- <el-form-item label="鍏ヨ亴鏃ユ湡" prop="jobDate">
+ <el-form-item label="鍏ヨ亴鏃ユ湡" prop="jobDate" v-if="companyType === 0">
<el-date-picker v-model="form.jobDate" value-format="yyyy-MM-dd" type="date">
</el-date-picker>
</el-form-item>
@@ -153,6 +161,7 @@
positionId: null,
faceImgFull: ''
},
+ treeData: [],
// 楠岃瘉瑙勫垯
rules: {
name: [{ required: true, message: '璇疯緭鍏ュ憳宸ュ鍚�', trigger: 'blur' }],
@@ -170,6 +179,21 @@
})
},
methods: {
+ // 瑙勮寖鍖栭�夐」鏁版嵁鐨勬柟娉�
+ normalizeOptions(node) {
+ // node: 鍘熷鐨勯�夐」鏁版嵁
+ // 鍦ㄨ繖閲屾牴鎹渶瑕佽繘琛岄�夐」鏁版嵁鐨勮鑼冨寲鎿嶄綔锛屽苟杩斿洖瑙勮寖鍖栧悗鐨勯�夐」鏁版嵁
+ // 渚嬪锛屽彲浠ュ皢鍘熷鐨勯�夐」鏁版嵁杞崲涓虹鍚堟彃浠惰姹傜殑缁撴瀯
+ if (node.childList && !node.childList.length) {
+ // 鍘绘帀children=[]鐨刢hildren灞炴��
+ delete node.childList;
+ }
+ return {
+ id: node.id,
+ label: node.name,
+ children: node.childList,
+ };
+ },
getCompany() {
companyGetList({
model: {type:this.companyType } ,
@@ -334,7 +358,7 @@
}
this.companyType = companyType
this.getCompany()
- // this.getPositionList()
+ this.getPositionList()
// 鏂板缓
if (target == null) {
this.$nextTick(() => {
--
Gitblit v1.9.3