From 798dcfbbc3ab2a81d1e873b25e00bf5e4ed03aa7 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期一, 02 十二月 2024 18:11:54 +0800
Subject: [PATCH] ll

---
 admin/src/views/client/components/OperaYwCustomerWindow.vue |  186 ++++++++++++++++++++++++++++++----------------
 1 files changed, 122 insertions(+), 64 deletions(-)

diff --git a/admin/src/views/client/components/OperaYwCustomerWindow.vue b/admin/src/views/client/components/OperaYwCustomerWindow.vue
index a7b8bf9..bbfb6b6 100644
--- a/admin/src/views/client/components/OperaYwCustomerWindow.vue
+++ b/admin/src/views/client/components/OperaYwCustomerWindow.vue
@@ -1,81 +1,98 @@
 <template>
-  <GlobalWindow :title="title" width="900px" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm">
+  <GlobalWindow :title="title" width="800px" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm">
     <el-form :model="form" ref="form" :rules="rules">
       <div class="list">
         <div class="title">鍩虹淇℃伅</div>
-        <el-form-item label="瀹㈡埛" prop="name">
+        <el-form-item label="瀹㈡埛鍚嶇О" prop="name">
           <div class="df">
             <el-input v-model="form.name" placeholder="璇疯緭鍏ュ鎴�" v-trim />
-            <el-checkbox v-model="form.type" class="ml10" true-label="0" false-label="1">涓汉</el-checkbox>
+            <el-checkbox v-model="form.type" class="ml10" :true-label="0" :false-label="1">涓汉</el-checkbox>
           </div>
         </el-form-item>
         <el-form-item label="琛屼笟鍒嗙被" prop="industryId">
           <el-select v-model="form.industryId" clearable filterable>
             <el-option v-for="item in cateList" :value="item.id" :label="item.name" />
+            <div key="21" class="df_center mt10"><el-button type="primary" plain class="w200"
+                @click="openTrade">娣诲姞</el-button>
+            </div>
           </el-select>
         </el-form-item>
         <el-form-item label="瀹㈡埛缂栧彿" prop="code">
           <el-input v-model="form.code" placeholder="璇疯緭鍏�" v-trim />
         </el-form-item>
-        <div class="title">榛樿鑱旂郴浜�</div>
-        <el-form-item label="濮撳悕" prop="member.name">
-          <el-input v-model="form.member.name" placeholder="璇疯緭鍏�" v-trim />
-        </el-form-item>
-        <el-form-item label="鎵嬫満鍙�" prop="member.phone">
-          <el-input v-model="form.member.phone" placeholder="璇疯緭鍏ユ墜鏈哄彿" v-trim />
-        </el-form-item>
-        <el-form-item label="韬唤">
-          <el-select v-model="form.member.highCheckor" filterable>
-            <el-option :value="0" label="鑰佹澘/瓒呯骇绠$悊鍛�" />
-            <el-option :value="1" label="浜轰簨/绠$悊鍛�" />
-            <el-option :value="2" label="鍛樺伐/鏅�氬憳宸�" />
+        <template v-if="!form.id">
+          <div class="title">榛樿鑱旂郴浜�</div>
+          <el-form-item label="濮撳悕" prop="member.name">
+            <el-input v-model="form.member.name" placeholder="璇疯緭鍏�" v-trim />
+          </el-form-item>
+          <el-form-item label="鎵嬫満鍙�" prop="member.phone">
+            <el-input v-model="form.member.phone" placeholder="璇疯緭鍏ユ墜鏈哄彿" v-trim />
+          </el-form-item>
+          <el-form-item label="韬唤">
+            <el-select v-model="form.member.highCheckor" filterable>
+              <el-option :value="0" label="鑰佹澘/瓒呯骇绠$悊鍛�" />
+              <el-option :value="1" label="浜轰簨/绠$悊鍛�" />
+              <el-option :value="2" label="鍛樺伐/鏅�氬憳宸�" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="璇佷欢绫诲瀷">
+            <el-select v-model="form.member.idcardType" filterable>
+              <el-option :value="0" label="韬唤璇�" />
+              <el-option :value="1" label="娓境璇佷欢" />
+              <el-option :value="2" label="鎶ょ収" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="璇佷欢鍙风爜" prop="member.idcardNo">
+            <el-input v-model="form.member.idcardNo" placeholder="璇疯緭鍏�" v-trim />
+          </el-form-item>
+          <el-form-item label="閭" prop="email">
+            <el-input v-model="form.member.email" placeholder="璇疯緭鍏ラ偖绠�" v-trim />
+          </el-form-item>
+        </template>
+        <el-form-item v-else label="榛樿鑱旂郴浜�" prop="memberId">
+          <el-select v-model="form.memberId" clearable filterable>
+            <el-option v-for="item in clientList" :value="item.id" :label="item.name" />
+            <div key="11" class="df_center mt10"><el-button type="primary" plain class="w200"
+                @click="openClient">娣诲姞</el-button>
+            </div>
           </el-select>
         </el-form-item>
-        <el-form-item label="璇佷欢绫诲瀷">
-          <el-select v-model="form.member.idcardType" filterable>
-            <el-option :value="0" label="韬唤璇�" />
-            <el-option :value="1" label="娓境璇佷欢" />
-            <el-option :value="2" label="鎶ょ収" />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="璇佷欢鍙风爜" prop="member.idcardNo">
-          <el-input v-model="form.member.idcardNo" placeholder="璇疯緭鍏�" v-trim />
-        </el-form-item>
-        <el-form-item label="閭" prop="email">
-          <el-input v-model="form.member.email" placeholder="璇疯緭鍏ラ偖绠�" v-trim />
-        </el-form-item>
-
-        <div class="title">璐︽埛淇℃伅</div>
-        <el-form-item label="寮�鎴烽摱琛�" prop="accountBank">
-          <el-input v-model="form.accountBank" placeholder="璇疯緭鍏ュ紑鎴烽摱琛�" v-trim />
-        </el-form-item>
-        <el-form-item label="璐﹀彿" prop="accountNo">
-          <el-input v-model="form.accountNo" placeholder="璇疯緭鍏ヨ处鍙�" v-trim />
-        </el-form-item>
-        <el-form-item label="鐢佃瘽" prop="accountPhone">
-          <el-input v-model="form.accountPhone" placeholder="璇疯緭鍏ヨ处鎴风數璇�" v-trim />
-        </el-form-item>
-        <el-form-item label="缁熶竴淇$敤浠g爜" prop="creditCard">
-          <el-input v-model="form.creditCard" placeholder="璇疯緭鍏ョ粺涓�淇$敤浠g爜" v-trim />
-        </el-form-item>
-        <el-form-item label="榛樿鍙戠エ绫诲瀷" prop="fpType">
-          <el-select v-model="form.fpType" clearable filterable>
-            <el-option :value="0" label="澧炲�肩◣鏅�氬彂绁�" />
-            <el-option :value="1" label="澧炲�肩◣涓撶敤鍙戠エ" />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="娉ㄥ唽鍦板潃" prop="accountAddr">
-          <el-input v-model="form.accountAddr" placeholder="璇疯緭鍏ヨ处鍙锋敞鍐屽湴鍧�" v-trim />
-        </el-form-item>
-        <el-form-item label="钀ヤ笟鏈熼檺">
-          <div class="df">
-            <el-date-picker type="date" v-model="form.validity" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
-            <el-checkbox v-model="form.selLangTime" @change="changeValid" class="ml10">闀挎湡</el-checkbox>
-          </div>
-        </el-form-item>
+        <template v-if="form.type == 1">
+          <div class="title">璐︽埛淇℃伅</div>
+          <el-form-item label="寮�鎴烽摱琛�" prop="accountBank">
+            <el-input v-model="form.accountBank" placeholder="璇疯緭鍏ュ紑鎴烽摱琛�" v-trim />
+          </el-form-item>
+          <el-form-item label="璐﹀彿" prop="accountNo">
+            <el-input v-model="form.accountNo" placeholder="璇疯緭鍏ヨ处鍙�" v-trim />
+          </el-form-item>
+          <el-form-item label="鐢佃瘽" prop="accountPhone">
+            <el-input v-model="form.accountPhone" placeholder="璇疯緭鍏ヨ处鎴风數璇�" v-trim />
+          </el-form-item>
+          <el-form-item label="缁熶竴淇$敤浠g爜" prop="creditCard">
+            <el-input v-model="form.creditCard" placeholder="璇疯緭鍏ョ粺涓�淇$敤浠g爜" v-trim />
+          </el-form-item>
+          <el-form-item label="榛樿鍙戠エ绫诲瀷" prop="fpType">
+            <el-select v-model="form.fpType" clearable filterable>
+              <el-option :value="0" label="澧炲�肩◣鏅�氬彂绁�" />
+              <el-option :value="1" label="澧炲�肩◣涓撶敤鍙戠エ" />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="娉ㄥ唽鍦板潃" prop="accountAddr">
+            <el-input v-model="form.accountAddr" placeholder="璇疯緭鍏ヨ处鍙锋敞鍐屽湴鍧�" v-trim />
+          </el-form-item>
+          <el-form-item label="钀ヤ笟鏈熼檺">
+            <div class="df">
+              <el-date-picker type="date" v-model="form.validity" value-format="yyyy-MM-dd" placeholder="璇烽�夋嫨" />
+              <el-checkbox v-model="form.selLangTime" @change="changeValid" class="ml10">闀挎湡</el-checkbox>
+            </div>
+          </el-form-item>
+        </template>
 
       </div>
     </el-form>
+    <!--  -->
+    <OperaCategoryWindow ref="OperaCategoryWindowRef" @success="initData" />
+    <StaffEdit ref="StaffEditRef" @success="getClient" />
   </GlobalWindow>
 </template>
 
@@ -85,10 +102,13 @@
 import { fetchCateList } from '@/api/business/category'
 import { rules } from './config'
 import { detailById } from '@/api/client/ywCustomer'
+import { fetchList } from '@/api/client/staff'
+import OperaCategoryWindow from './OperaCategoryWindow.vue'
+import StaffEdit from './staffEdit.vue'
 export default {
   name: 'OperaYwCustomerWindow',
   extends: BaseOpera,
-  components: { GlobalWindow },
+  components: { GlobalWindow, OperaCategoryWindow, StaffEdit },
   data() {
     return {
       // 琛ㄥ崟鏁版嵁
@@ -102,7 +122,7 @@
         isdeleted: '',
         remark: '',
         industryId: '',
-        type: '1',
+        type: 1,
         name: '',
         phone: '',
         idcardNo: '',
@@ -110,11 +130,12 @@
         code: '',
         status: '',
         memberName: '',
-        
+
         lastLoginDate: '',
         loginNum: '',
         userId: '',
-        
+        memberId: '',
+
         accountBank: '',
         accountNo: '',
         accountPhone: '',
@@ -123,7 +144,6 @@
         accountAddr: '',
         // identityType: '0',
         email: '',
-        memberId: '',
         member: {
           name: "",
           phone: "",
@@ -133,6 +153,10 @@
           email: '',
         }
       },
+      title: '鏂板瀹㈡埛',
+      isShowTrade: false,
+
+      clientList: [],
       cateList: [],
       // 楠岃瘉瑙勫垯
       rules
@@ -145,12 +169,25 @@
     })
   },
   methods: {
+    openTrade() {
+      this.$refs.OperaCategoryWindowRef.open('鏂板琛屼笟')
+    },
+    openClient() {
+      this.$refs.StaffEditRef.open('鏂板缓浜哄憳')
+      setTimeout(() => {
+        this.$refs.StaffEditRef.form.customerId = this.form.id
+        console.log('--', this.$refs.StaffEditRef.form);
+        
+        // this.$update
+      }, 1200)
+      this.$refs.StaffEditRef.customerId = this.form.id
+    },
     initData() {
       fetchCateList({ type: 6 }).then(res => {
         this.cateList = res
       })
     },
-    open (title, target) {
+    open(title, target) {
       this.title = title
       this.visible = true
       this.initData()
@@ -158,18 +195,39 @@
       if (target == null) {
         this.$nextTick(() => {
           this.$refs.form.resetFields()
+          this.form.validity = ''
+          this.form.id = ''
+          this.form.member = {
+            name: "",
+            phone: "",
+            highCheckor: 0,
+            idcardType: 0,
+            idcardNo: '',
+            email: '',
+          }
         })
+        this.form.type = 1
         return
       }
       // 缂栬緫
       this.$nextTick(() => {
-        if(title == '缂栬緫瀹㈡埛'){
+        if (title == '缂栬緫瀹㈡埛') {
+          this.getClient()
           detailById(target.id).then(res => {
             this.form = res
           })
         }
       })
     },
+    getClient() {
+      fetchList({
+        capacity: 9999,
+        page: 1,
+        model: {}
+      }).then(res => {
+        this.clientList = res.records
+      })
+    },
     changeValid(e) {
       this.$set(this.form, 'validity', e ? '2099-12-31' : '')
     },

--
Gitblit v1.9.3