From 6508e19c8d2e266c7405439ac32c06df6f602439 Mon Sep 17 00:00:00 2001
From: feige <feige@qq.com>
Date: 星期二, 06 一月 2026 16:14:50 +0800
Subject: [PATCH] 修改代码

---
 ruoyi-ui/src/views/bignote/index.vue |  569 ++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 507 insertions(+), 62 deletions(-)

diff --git a/ruoyi-ui/src/views/bignote/index.vue b/ruoyi-ui/src/views/bignote/index.vue
index 10d2246..966c01e 100644
--- a/ruoyi-ui/src/views/bignote/index.vue
+++ b/ruoyi-ui/src/views/bignote/index.vue
@@ -146,14 +146,14 @@
       <template #dropdown>
         <el-dropdown-menu>
           <el-dropdown-item     :disabled="multiple" icon="el-icon-top" style="height: 32px;width:240px;color: #0099ff;" @click.native="handleShare">鍒嗕韩</el-dropdown-item>
-      
+
 		          <el-dropdown-item    icon="el-icon-top" @click.native="whoShare">鍒嗕韩缁欐垜鐨勬暟鎹�</el-dropdown-item>
 		      <el-dropdown-item    icon="el-icon-top" @click.native="handleWho">鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�</el-dropdown-item>
           <el-dropdown-item    icon="el-icon-top" @click.native="showData">灞曠ず涓嬭浇鐨勫垎浜暟鎹�</el-dropdown-item>
         </el-dropdown-menu>
       </template>
     </el-dropdown>
- 
+
 
       <right-toolbar :parentValue.sync="valueFromParent" :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
@@ -168,6 +168,8 @@
       </el-table-column>
       <el-table-column label="浜虹墿" prop="people" sortable width="150px" />
       <el-table-column label="鍦扮偣" prop="address" sortable width="150px" />
+      <el-table-column label="鏄惁闅愯棌" prop="isHide" sortable :show-overflow-tooltip="true" width="150px" />
+
       <el-table-column label="澶т簨鏍囬" prop="title" sortable :show-overflow-tooltip="true" width="150px" />
       <el-table-column label="鏄惁鏄湰瀹跺涵璁板綍" prop="ownData" sortable width="150px" >
         <template slot-scope="scope">{{scope.row.ownData === 0 ? '鍚�': '鏄�'}}</template>
@@ -200,7 +202,7 @@
             ></div>
         </template>
       </el-table-column>
-      <el-table-column label="鎿嶄綔" align="center" width="250" class-name="small-padding fixed-width" v-if="userId != 2">
+      <el-table-column  fixed="right" label="鎿嶄綔" align="center" width="250" class-name="small-padding fixed-width" v-if="userId != 2">
         <template slot-scope="scope" v-if="scope.row.roleId !== 1">
           <div class="button-container">
             <el-button
@@ -251,11 +253,53 @@
         <el-form-item label="澶т簨鏍囬" prop="title">
           <el-input v-model="formDat.title" placeholder="璇疯緭鍏ュぇ浜嬫爣棰�" clearable :style="{width: '100%'}" ></el-input>
         </el-form-item>
+     <!-- 瀹舵棌鎴愬憳閫夋嫨瀛楁 -->
+     <el-form-item label="瀹舵棌鎴愬憳" prop="selectedMemberIds">
+        <!-- 宸查�夋垚鍛樺洖鏄惧尯鍩� -->
+        <div v-if="selectedMemberNames.length > 0" class="selected-members">
+          <el-tag
+            v-for="(name, index) in selectedMemberNames"
+            :key="index"
+            closable
+            @close="handleTagClose(index)"
+          >
+            {{ name }}
+          </el-tag>
+        </div>
+        <!-- 瑙﹀彂寮圭獥鎸夐挳 -->
+        <el-button
+          type="primary"
+          icon="el-icon-user-plus"
+          @click="openMemberDialog"
+          :disabled="loading"
+        >
+          閫夋嫨瀹舵棌鎴愬憳
+        </el-button>
+      </el-form-item>
 
-        <el-form-item label="浜虹墿" prop="people">
-          <el-input v-model="formDat.people" placeholder="璇疯緭鍏ヤ汉鐗�" clearable :style="{width: '100%'}" >
-          </el-input>
-        </el-form-item>
+      <!-- 鍏跺畠浜洪�夋嫨瀛楁 -->
+      <el-form-item label="鍏跺畠浜�" prop="otherPeople">
+        <!-- 宸查�夊叾瀹冧汉鍥炴樉鍖哄煙 -->
+        <div v-if="formDat.otherPeople && formDat.otherPeople.length > 0" class="selected-members">
+          <el-tag
+            v-for="(name, index) in formDat.otherPeople"
+            :key="index"
+            closable
+            @close="handleOtherPeopleTagClose(index)"
+          >
+            {{ name }}
+          </el-tag>
+        </div>
+        <!-- 瑙﹀彂寮圭獥鎸夐挳 -->
+        <el-button
+          type="primary"
+          icon="el-icon-user"
+          @click="openOtherPeopleDialog"
+          :disabled="loading"
+        >
+          娣诲姞鍏跺畠浜�
+        </el-button>
+      </el-form-item>
         <el-form-item label="鍦扮偣" prop="address">
           <el-input v-model="formDat.address" placeholder="璇疯緭鍏ュ湴鐐�" clearable :style="{width: '100%'}" >
           </el-input>
@@ -265,11 +309,21 @@
           <el-date-picker  v-model="formDat.happenTime" type="date" placeholder="璇烽�夋嫨鏃ユ湡"
                    @click.native.stop
                    				      ref="datePicker"
-                   
-			
+
+
     :editable="false" :clearable="false" :style="{width: '100%'}"  value-format="yyyy-MM-dd"
           ></el-date-picker>
         </el-form-item>
+
+        <el-form-item label="鏄惁闅愯棌" prop="isHide">
+
+          <el-radio-group v-model="formDat.isHide" :style="{width: '100%'}">
+            <el-radio label="鏄�">鏄�</el-radio>
+            <el-radio label="鍚�">鍚�</el-radio>
+          </el-radio-group>
+
+     </el-form-item>
+
         <el-form-item label="澶囨敞" prop="remark">
           <el-input v-model="formDat.remark" placeholder="璇疯緭鍏ュ娉�" clearable :style="{width: '100%'}" ></el-input>
         </el-form-item>
@@ -394,6 +448,105 @@
 
     </el-dialog>
 
+    <el-dialog
+      :visible.sync="memberDialogVisible"
+      title="閫夋嫨瀹舵棌鎴愬憳"
+      width="50%"
+      :close-on-click-modal="false"
+    >
+      <!-- 寮圭獥鍐呭鍖� -->
+      <div class="member-dialog-content">
+        <!-- 鎼滅储妗� -->
+        <el-input
+          v-model="memberSearch"
+          placeholder="鎼滅储鎴愬憳濮撳悕..."
+          prefix-icon="el-icon-search"
+          style="margin-bottom: 20px;"
+        ></el-input>
+
+
+
+        <!-- 鍔犺浇鐘舵�� -->
+       <div v-if="loading" class="loading-container">
+          <el-loading-spinner></el-loading-spinner>
+          <p>鍔犺浇瀹舵棌鎴愬憳涓�...</p>
+        </div>
+
+       <div v-else-if="familyMembers.length === 0" class="no-data">
+          <el-empty description="鏆傛棤瀹舵棌鎴愬憳鏁版嵁"></el-empty>
+        </div>
+<label v-for="item in familyMembers" :key="item.userId" class="signature-checkbox">
+     <input type="checkbox" v-model="selectedMemberIds" :value="item.userId">
+                                 <span>{{ item.oldName }}</span>
+                  </label>
+
+                  <hr class="divider-line">
+
+                  <label v-for="item in anotherFamilyMembers" :key="item.userId" class="signature-checkbox">
+                    <input type="checkbox" v-model="selectedMemberIds" :value="item.userId">
+                    <span> {{ item.oldName }} </span>
+                  </label>
+
+        <!-- 澶氶�夊垪琛紙鏈夋暟鎹級 -->
+<!--    <el-checkbox-group>
+         <el-checkbox
+
+
+          >
+          4545
+
+         </el-checkbox>
+        </el-checkbox-group> -->
+
+</div>
+      <!-- 寮圭獥搴曢儴鎸夐挳 -->
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="memberDialogVisible = false">鍙栨秷</el-button>
+        <el-button type="primary" @click="confirmMemberSelection">纭閫夋嫨</el-button>
+      </div>
+    </el-dialog>
+
+    <!-- 鍏跺畠浜哄脊绐� -->
+    <el-dialog
+      :visible.sync="otherPeopleDialogVisible"
+      title="娣诲姞鍏跺畠浜�"
+      width="400px"
+      :close-on-click-modal="false"
+      @close="handleOtherPeopleDialogClose"
+    >
+      <div class="other-people-dialog">
+        <el-input
+          v-model="otherPeopleInput"
+          placeholder="璇疯緭鍏ュ鍚嶏紝鎸夊洖杞︽垨鐐瑰嚮娣诲姞鎸夐挳娣诲姞"
+          @keyup.enter.native="addOtherPeople"
+          style="margin-bottom: 20px;"
+        >
+          <el-button slot="append" icon="el-icon-plus" @click="addOtherPeople">娣诲姞</el-button>
+        </el-input>
+
+        <!-- 宸叉坊鍔犵殑鍏跺畠浜哄垪琛� -->
+        <div v-if="formDat.otherPeople && formDat.otherPeople.length > 0" class="added-people-list">
+          <el-divider content-position="left">宸叉坊鍔� ({{ formDat.otherPeople.length }}浜�)</el-divider>
+          <el-tag
+            v-for="(name, index) in formDat.otherPeople"
+            :key="index"
+            closable
+            @close="handleOtherPeopleTagClose(index)"
+            style="margin-right: 8px; margin-bottom: 8px;"
+          >
+            {{ name }}
+          </el-tag>
+        </div>
+
+        <div v-else class="no-people" style="padding: 20px 0;">
+          <el-empty description="鏆傛湭娣诲姞浠讳綍浜�" :image-size="60"></el-empty>
+        </div>
+      </div>
+
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="confirmOtherPeople">瀹屾垚</el-button>
+      </div>
+    </el-dialog>
 
     <!-- 鍒嗕韩瀵硅瘽妗�1 -->
     <el-dialog :title="title1" :visible.sync="open1" width="500px" append-to-body @close="handleClose2">
@@ -401,12 +554,12 @@
     <el-table v-loading="loading1" :data="listRoot" :row-key="getRowId1" ref="table1"  @selection-change="handleSelectionChange1"  :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
           <el-table-column type="selection" width="55"  align="center" />
           <el-table-column fixed label="搴忓彿" sortable type="index" :index="(queryParams1.pageNum-1)*queryParams1.pageSize+1" width="130"/>
-          <el-table-column label="韬唤" prop="identity" sortable width="130" >
+     <!--     <el-table-column label="韬唤" prop="identity" sortable width="130" >
             <template slot-scope="scope" >
               <span v-if="scope.row.isMyFamily==1">绗瑊{scope.row.identity}}浠�</span>
               <span v-else>鈥斺��</span>
             </template>
-          </el-table-column>
+          </el-table-column> -->
           <el-table-column label="濮撳悕" prop="nickName" sortable :show-overflow-tooltip="true" width="145" align="center"/>
         </el-table>
 
@@ -516,25 +669,38 @@
 
 
 <script>
-import { listRole, getRole, delRole, addRole, 
+import { listRole, getRole, delRole, addRole,
 updateRole, dataScope, changeRoleStatus, deptTreeSelect } from "@/api/system/role";
 import { treeselect as menuTreeselect, roleMenuTreeselect } from "@/api/system/menu";
 
 
 import { Notification, MessageBox, Message, Loading } from 'element-ui'
 import {getAllInfo} from "@/api/system/user"
+import { getFamilyMembers,listAnotherFamilyInfo } from '@/api/root'; // 鍋囪鑾峰彇瀹舵棌鎴愬憳鐨凙PI
+
 //鍦╯ystem/note/index.js涓鍏ユ帴鍙e嚱鏁�  --鎺ュソ浜�
-import {listFamilyevent,enload, delFamilyevent  , addFamilyevent , uploadPic,
+import {listFamilyevent, enload, delFamilyevent  , addFamilyevent , uploadPic,
         share,shareToWho,getWhoShare,downShareData,deleteShareData,showShareData,showShareUser
         } from "@/api/bignote/index";
 import {listUserAll} from "@/api/root/index";
 import {getInfo} from "@/api/login";
 export default {
-  name: "Role",
+  name: "ZfEvent",
   dicts: ['sys_normal_disable'],
   data() {
     return {
 
+
+
+
+
+      // 鎴愬憳澶氶�夌浉鍏�
+      memberDialogVisible: false, // 寮圭獥鍙鎬�
+      familyMembers: [], // 瀹舵棌鎴愬憳鍒楄〃锛堝師濮嬫暟鎹級
+      anotherFamilyMembers: [], //鍙﹀瀹舵棌鎴愬憳淇℃伅
+      selectedMemberIds: [], // 寮圭獥涓复鏃堕�変腑鐨勬垚鍛業D锛堢敤浜庡閫変氦浜掞級
+      memberSearch: '', // 鎴愬憳鎼滅储鍏抽敭璇�
+      loading: false, // 鍔犺浇鐘舵��
 		total1: 0,
       // 鍒嗕韩缁欒皝鐨刲ist
       listRoot: [],
@@ -586,7 +752,8 @@
       total: 0,
       // 瀹跺ぇ浜嬭琛ㄦ牸鏁版嵁
       familyList: [],
-
+    selectedMemberIds:[],
+      displayMemberNames: [], // 鏄剧ず鐢ㄧ殑鎴愬憳鍚嶇О鏁扮粍
 
       // 寮瑰嚭灞傛爣棰�
       title: "",
@@ -602,7 +769,7 @@
       dateRange: [],
       // 鏁版嵁鑼冨洿閫夐」
       fot:['.bmp','.jpg','.jpeg','.png','.tif','.gif','.pcx','.tga','.exif','.fpx',
-        '.svg','.psd','.cdr','.pcd','.dxf','.ufo','.eps','.ai','.aw','.WMF','.webp','.apng','.m4a'],
+        '.svg','.psd','.cdr','.pcd','.dxf','.ufo','.eps','.ai','.aw','.WMF','.webp','.apng','.m4a','.M4A'],
       fileList:[],
 	  fileList1:[],
 	  	  uploadFileList: [],
@@ -611,8 +778,13 @@
       dsb:true,
       btn:false,
       uploading: false,
+      // 鍏跺畠浜哄脊绐楃浉鍏�
+      otherPeopleDialogVisible: false,
+      otherPeopleInput: '',
       formDat: {
         // type: undefined,
+        selectedMemberIds: [],
+        otherPeople: [], // 瀛樺偍鍏跺畠浜哄悕瀛�
         title: undefined,
         location: undefined,
         holder: undefined,
@@ -644,6 +816,9 @@
       },
       // 琛ㄥ崟鏍¢獙
       rules: {
+        selectedMemberIds: [
+          { type: 'array', required: true, message: '璇疯嚦灏戦�夋嫨涓�鍚嶅鏃忔垚鍛�', trigger: 'change' }
+        ],
         title: [{
           required: true,
           message: '璇疯緭鍏ュぇ浜嬫爣棰�',
@@ -681,8 +856,58 @@
     this.getInfo()
 
     this.getList1();
-	
 
+
+  },
+  computed: {
+    // 宸查�夋垚鍛樺鍚嶏紙鐢ㄤ簬鍥炴樉锛�
+    selectedMemberNames() {
+
+
+      // 浼樺厛浣跨敤鐩存帴璁剧疆鐨勬樉绀哄悕绉�
+      if(this.displayMemberNames && this.displayMemberNames.length > 0 && this.selectedMemberIds.length==0) {
+        return this.displayMemberNames;
+      }
+
+
+      // 鍚﹀垯鏍规嵁閫変腑鐨処D璁$畻
+        // 鍚堝苟杩囨护鍚庣殑鎴愬憳鍚嶇О鍜宒isplayMemberNames鍐呭
+        console.log(this.selectedMemberIds)
+        const filteredNames = this.familyMembers
+          .filter(member => this.selectedMemberIds.includes(member.userId))
+         .map(member => member.oldName);
+
+        const filterAnotherNames = this.anotherFamilyMembers
+        .filter(member => this.selectedMemberIds.includes(member.userId))
+        .map(member => member.oldName);
+
+        // 鍒涘缓涓�涓猄et鏉ュ瓨鍌ㄥ敮涓�鍚嶇О锛岄伩鍏嶉噸澶�
+        const uniqueNames = new Set([...filteredNames]);
+filterAnotherNames.forEach(item => uniqueNames.add(item));
+console.log(uniqueNames)
+        // 濡傛灉displayMemberNames鏈夊唴瀹癸紝涔熷姞鍏et涓�
+        if(this.displayMemberNames && this.displayMemberNames.length > 0) {
+          this.displayMemberNames.forEach(name => uniqueNames.add(name));
+        }
+        else
+        this.displayMemberNames = Array.from(uniqueNames)
+       // this.selectedMemberIds = []
+        // 杞洖鏁扮粍骞惰繑鍥�
+        return Array.from(uniqueNames);
+    },
+    // 杩囨护鍚庣殑鎴愬憳鍒楄〃锛堟悳绱㈠姛鑳斤級
+    filteredMembers() {
+      if (!this.memberSearch) return this.familyMembers;
+      console.log(this.familyMembers)
+      console.log("-sdf")
+      const keyword = this.memberSearch.toLowerCase();
+      return this.familyMembers;
+      //.filter(member =>
+     //   member.filteredMembers.toLowerCase().includes(keyword)
+        //||
+     //   member.role.toLowerCase().includes(keyword)
+    //  );
+    }
   },
   methods: {
 	  handleDialogClick()
@@ -823,7 +1048,7 @@
           this.loading1 = true;
 		  let userId = this.$store.state.user.userId
 		//  alert(userId)
-		  
+		  this.userOptions = []
 		  showShareUser(userId, 2013).then(response=>{
 			  console.log("===========ddddddddddddd")
 			  console.log(response.data)
@@ -836,36 +1061,46 @@
   //         this.queryParams1.happenEndTime = this.dateRange1.length > 0 && this.dateRange1[1]
 		// //  alert(this.$store.state.user.clanId)
 		//       this.listRoot = []
-		 // let clanId = this.$store.state.user.clanId
-   //        getAllInfo(clanId).then(response => {
-   //            this.listRoot = response.data;
-   //            const kon = {}
-			//          console.log(response.data,'userListuserListuserList99999999999999')
-   //            this.listRoot.forEach(element => {
-   //              kon[element['nickName']] = element['userId']
-   //            })
-   //            for(let i in kon){
-   //              this.userOptions.push({label: i,value: kon[i]})
-   //            }
-   //            for(let i in this.userOptions){
-   //              this.userList.push(this.userOptions[i].value)
-   //            }
-   //            console.log(this.userList,'userListuserListuserList99999999999999')
-   //            this.loading1 = false;
-   //          }
-   //        );
+		 let clanId = this.$store.state.user.clanId
+          getAllInfo(clanId).then(response => {
+              this.listRoot = response.data;
+              const kon = {}
+			         console.log(response.data,'userListuserListuserList99999999999999')
+              this.listRoot.forEach(element => {
+                kon[element['nickName']] = element['userId']
+              })
+              // for(let i in kon){
+              //   this.userOptions.push({label: i,value: kon[i]})
+              // }
+              // for(let i in this.userOptions){
+              //   this.userList.push(this.userOptions[i].value)
+              // }
+              // console.log(this.userList,'userListuserListuserList99999999999999')
+              this.loading1 = false;
+            }
+          );
         },
     // 纭鍒嗕韩
     subShare(row) {
       const shareList = {}
       shareList.shareContents = this.id1 || this.ids;
       shareList.shareIds = this.ids1
+	  if(shareList.shareIds.length==0)
+	  {
+		  this.$modal.msgSuccess("璇烽�夋嫨鍒嗕韩瀵硅薄");
+		  return;
+	  }
       console.log(shareList,'sharelistsharelist')
+
+
+
+
       this.$modal.confirm('鏄惁纭鍒嗕韩锛�').then(function() {
         return share(shareList);
       }).then(() => {
 
         this.getList();
+		this.getList1();
         this.$modal.msgSuccess("鍒嗕韩鎴愬姛");
         this.id1 = undefined
         this.open1 = false;
@@ -879,6 +1114,8 @@
     getInfo(){
       console.log('-----------------')
       getInfo().then(response=>{
+        console.log(response.user)
+      //  alert(123)
         console.log(response.user.roles[0].roleId,'roleID')
         this.userId = response.user.roles[0].roleId
       })
@@ -893,13 +1130,13 @@
 
 	close(){
 		//alert(234)
-	
+
 
 		this.open = false
 	},
     // 鍙栨秷鎸夐挳
     cancelData() {
-		
+
       this.open = false;
       this.reset();
     },
@@ -943,6 +1180,50 @@
         }
       );
     },
+openOtherPeopleDialog(){
+      this.otherPeopleDialogVisible = true;
+      this.otherPeopleInput = ''; // 娓呯┖杈撳叆妗�
+    },
+
+    // 娣诲姞鍏跺畠浜猴紙鏀寔鍥炶溅鍜岀偣鍑绘坊鍔犳寜閽級
+    addOtherPeople() {
+      const name = this.otherPeopleInput.trim();
+      if (!name) {
+        this.$message.warning('璇疯緭鍏ュ鍚�');
+        return;
+      }
+      if (this.formDat.otherPeople.includes(name)) {
+        this.$message.warning('璇ュ鍚嶅凡娣诲姞');
+        return;
+      }
+      this.formDat.otherPeople.push(name);
+      this.otherPeopleInput = ''; // 娓呯┖杈撳叆妗嗭紝鍑嗗杈撳叆涓嬩竴涓�
+      this.$message.success(`宸叉坊鍔�: ${name}`);
+    },
+
+    // 纭瀹屾垚锛堝叧闂脊绐楋級
+    confirmOtherPeople() {
+      if (this.formDat.otherPeople.length > 0) {
+        this.$message.success(`宸叉坊鍔� ${this.formDat.otherPeople.length} 鍚嶅叾瀹冧汉`);
+      } else {
+        this.$message.info('鏈坊鍔犱换浣曞叾瀹冧汉');
+      }
+      this.otherPeopleDialogVisible = false;
+    },
+
+    // 鍏抽棴鍏跺畠浜烘爣绛�
+    handleOtherPeopleTagClose(index) {
+      const removedName = this.formDat.otherPeople[index];
+      this.formDat.otherPeople.splice(index, 1);
+      this.$message.info(`宸茬Щ闄�: ${removedName}`);
+    },
+
+    // 鍏跺畠浜哄脊绐楀叧闂鐞�
+    handleOtherPeopleDialogClose() {
+      this.otherPeopleInput = '';
+    },
+
+    // ------------------- 鎭㈠琚垹闄ょ殑鏂规硶 -------------------
 
     // 鍙栨秷鎸夐挳
     cancel() {
@@ -991,7 +1272,6 @@
     // 澶氶�夋閫変腑鏁版嵁
     handleSelectionChange(selection) {
       this.ids = selection.map(item => item.id)
-    //  alert(this.ids)
       this.single = selection.length!=1
       this.multiple = !selection.length
     },
@@ -1003,10 +1283,10 @@
       this.title = "娣诲姞瀹跺涵澶т簨璁颁俊鎭�";
     },
 
-
     /** 鏌ョ湅璇︾粏淇℃伅 */
     handleCheck(row){
       const id = row.id;
+      this.open2 = false;
       this.$router.push("/familymodel/bignote/familyeventInfo/" + id);
     },
     /** 淇敼鎸夐挳鎿嶄綔 */
@@ -1023,39 +1303,48 @@
     },
 
     handleRemove(file) {
-		//alert(98)
-		//alert(this.fileList.length)
-     for(let i = 0; i < this.fileList.length; i++)
-     {
-       if(this.fileList[i].url==file.url)
-	   {
-         this.$delete(this.fileList,i);
-		 this.$delete(this.uploadFileList,i);
-		 }
-     }
-	 // let ul = this.fileList.map(function (elem){
-	 //   return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-	 // }).join(",")
-	 // alert(this.fileListOther.length)
-	 // let uls = this.fileListOther.map(function (elem){
-	 //   return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-	 // }).join(",")
-	 // this.formDat.url = ul+","+uls;
+      for(let i = 0; i < this.fileList.length; i++)
+      {
+        if(this.fileList[i].url==file.url)
+        {
+          this.$delete(this.fileList,i);
+          this.$delete(this.uploadFileList,i);
+        }
+      }
     },
     handleRemoveFile(file) {
       for(let i = 0; i < this.fileListOther.length; i++)
       {
         if(this.fileListOther[i].url==file.url)
-		{
+        {
           this.$delete(this.fileListOther,i);
-		  this.$delete(this.uploadFileList1,i);
-		  }
+          this.$delete(this.uploadFileList1,i);
+        }
       }
     },
 
     handlePictureCardPreview(file) {
       this.dialogImageUrl = file.url;
       this.dialogVisible = true;
+    },
+
+    //
+    handleTagClose(index, name) {
+      // 浠� selectedMemberNames 鏁扮粍涓Щ闄ゅ綋鍓嶅叧闂殑鏍囩鍚嶇О
+    //  const index = this.selectedMemberNames.findIndex(item=== name);
+    selectedMemberIds: this.selectedMemberIds.filter(
+        item => item!== index  // 杩囨护鎺変笌鍏抽棴鍚嶇О鐩稿悓鐨勫厓绱�
+      )
+      this.$forceUpdate();
+      console.log(this.selectedMemberIds)
+      this.selectedMemberNames.splice(index, 1);
+      this.$forceUpdate();
+    selectedMemberNames: this.selectedMemberNames.filter(
+        item => item !== name  // 杩囨护鎺変笌鍏抽棴鍚嶇О鐩稿悓鐨勫厓绱�
+      )
+      this.displayMemberNames = this.selectedMemberNames
+      console.log(this.selectedMemberNames)
+
     },
     /** 鎻愪氦鎸夐挳锛堟暟鎹潈闄愶級 */
     submitDataScope: function() {
@@ -1068,6 +1357,15 @@
       // }).join(",")
       // this.formDat.url = ul+","+uls
 	//  alert(this.formDat.url)
+      //鎶婂悕瀛楄繛鍦ㄤ竴璧�
+      var pel = ""
+      pel = pel + this.selectedMemberNames.join(",")
+      if(this.formDat.otherPeople.length != 0)
+      {
+        pel = pel +";"+ this.formDat.otherPeople.join(",")
+      }
+     // alert(pel)
+      this.formDat.people = pel;
       this.$refs["elForm"].validate(valid => {
         if (valid) {
 
@@ -1086,6 +1384,8 @@
               this.handleRemoveFile(this.fileListOther[0]);
             }
             this.getList();
+            this.selectedMemberNames = [];
+            this.displayMemberNames = []
           });
         }
       });
@@ -1226,7 +1526,75 @@
         Message({ message: "瀵煎叆澶辫触", type: 'error' })
       }
 
-    }
+    },
+    // 鎵撳紑鎴愬憳澶氶�夊脊绐�
+    async openMemberDialog() {
+      this.memberDialogVisible = true;
+      this.memberSearch = ''; // 閲嶇疆鎼滅储
+      // 鍒濆鍖栧脊绐楅�変腑鐘舵�侊紙鍥炴樉宸查�夋垚鍛橈級
+  //    this.selectedMemberIds = [...this.familyForm.selectedMemberIds];
+      // 鍔犺浇瀹舵棌鎴愬憳鍒楄〃
+      await this.loadFamilyMembers();
+    },
+
+    // 鍔犺浇瀹舵棌鎴愬憳鍒楄〃
+    async loadFamilyMembers() {
+      this.loading = true;
+
+      let clanId = this.$store.state.user.clanId
+      let userId = this.$store.state.user.userId
+     // alert(userId)
+      try {
+        const res = await getFamilyMembers(clanId); // 鍋囪闇�瑕佸鏃廔D鍙傛暟
+        const ano = await listAnotherFamilyInfo(userId)
+
+    console.log(res)
+    console.log(res.data)
+       this.anotherFamilyMembers = ano.data;
+       this.familyMembers = res.data;
+       // console.log(this.familyMembers.length)
+      //  console.log(this.familyMembers.length)
+       // console.log(this.familyMembers[0])
+        // for(let i=0; i < this.familyMembers.length; i++)
+        //   console.log(this.familyMembers[i])
+        // console.log("---999")
+        // 鏍煎紡锛歔{ id: 1, name: '寮犱笁', role: '瀹堕暱', relation: '鐖跺瓙', avatar: 'xxx' }, ...]
+      } catch (err) {
+        this.$message.error('鍔犺浇瀹舵棌鎴愬憳澶辫触锛岃閲嶈瘯');
+      } finally {
+        this.loading = false;
+      }
+    },
+
+    // 纭閫夋嫨鎴愬憳锛堜繚瀛樺埌琛ㄥ崟锛�
+    confirmMemberSelection() {
+      console.log()
+      this.formDat.selectedMemberIds = [...this.selectedMemberIds]; // 灏嗗脊绐楅�変腑鐨処D鍚屾鍒拌〃鍗�
+      this.memberDialogVisible = false;
+      this.$message.info(`宸查�夋嫨 ${this.selectedMemberNames.length} 鍚嶅鏃忔垚鍛榒);
+      // 娓呯┖瀵硅瘽妗嗛噷闈㈤�夋嫨鐨勫唴瀹�
+     // if(this.displayMemberNames.length==0)
+        this.displayMemberNames = this.selectedMemberNames
+      this.selectedMemberIds = [];
+    },
+     handleTagClose(index, name) {
+      // 浠� selectedMemberNames 鏁扮粍涓Щ闄ゅ綋鍓嶅叧闂殑鏍囩鍚嶇О
+    //  const index = this.selectedMemberNames.findIndex(item=== name);
+    selectedMemberIds: this.selectedMemberIds.filter(
+        item => item!== index  // 杩囨护鎺変笌鍏抽棴鍚嶇О鐩稿悓鐨勫厓绱�
+      )
+      this.$forceUpdate();
+      console.log(this.selectedMemberIds)
+      this.selectedMemberNames.splice(index, 1);
+      this.$forceUpdate();
+    selectedMemberNames: this.selectedMemberNames.filter(
+        item => item !== name  // 杩囨护鎺変笌鍏抽棴鍚嶇О鐩稿悓鐨勫厓绱�
+      )
+      this.displayMemberNames = this.selectedMemberNames
+      console.log(this.selectedMemberNames)
+
+    },
+      //
 
   }
 };
@@ -1246,4 +1614,81 @@
 .button-container {
   display: inline-flex; /* 璁剧疆鎸夐挳瀹瑰櫒涓鸿鍐呭厓绱� */
 }
+
+
+/* 宸查�夋垚鍛樻爣绛炬牱寮� */
+.selected-members {
+  margin-bottom: 12px;
+  .el-tag {
+    margin-right: 8px;
+    margin-bottom: 8px;
+  }
+}
+
+/* 澶氶�夊脊绐楁牱寮� */
+.member-dialog-content {
+  max-height: 400px;
+  overflow-y: auto;
+  padding: 0 10px;
+}
+
+/* 鎴愬憳鍒楄〃鏍峰紡 */
+.member-checkbox-group {
+  .el-checkbox {
+    display: block;
+    padding: 12px;
+    border-bottom: 1px solid #f5f5f5;
+    &:last-child {
+      border-bottom: none;
+    }
+  }
+}
+
+/* 鎴愬憳椤规牱寮� */
+.member-item {
+  display: flex;
+  align-items: center;
+  .member-avatar {
+    width: 40px;
+    height: 40px;
+    border-radius: 50%;
+    margin-right: 12px;
+  }
+  .member-info {
+    .member-name {
+      font-weight: 500;
+      margin-bottom: 4px;
+    }
+    .member-role {
+      font-size: 12px;
+      color: #606266;
+    }
+  }
+}
+
+/* 鍔犺浇鐘舵�佹牱寮� */
+.loading-container {
+  text-align: center;
+  padding: 40px 0;
+  .el-loading-spinner {
+    margin-bottom: 16px;
+  }
+}.signature-checkbox
+{
+  margin-right: 15px;
+  display: inline-block;
+  margin-bottom: 8px;
+  cursor: pointer;
+}
+.signature-checkbox input[type="checkbox"] {
+  margin-right: 6px;
+}
+
+.signature-checkbox span {
+  cursor: pointer;
+}
+/* 鏃犳暟鎹牱寮� */
+.no-data {
+  padding: 60px 0;
+}
 </style>

--
Gitblit v1.9.1