From 93d5248746860e9c19bedaab8761d480d0ce18b9 Mon Sep 17 00:00:00 2001
From: yz3456 <2753272399@qq.com>
Date: 星期日, 11 八月 2024 10:53:19 +0800
Subject: [PATCH] 解决了报错

---
 ruoyi-ui/src/api/pet/index.js          |   51 ++
 ruoyi-ui/src/api/meeting/index.js      |    8 
 ruoyi-ui/src/api/travel/index.js       |   81 ++++
 ruoyi-ui/src/views/device/index.vue    |    1 
 ruoyi-ui/src/views/travel/index.vue    |  435 ++++++++++++++++++++++
 ruoyi-ui/src/views/meeting/webcast.vue |  131 +++++-
 ruoyi-ui/src/views/pet/petInfo.vue     |    4 
 ruoyi-ui/src/views/economy/index.vue   |    1 
 ruoyi-ui/src/views/pet/index.vue       |  382 ++++++++++++++++++++
 ruoyi-ui/src/router/index.js           |    4 
 ruoyi-ui/src/views/note/index.vue      |    4 
 11 files changed, 1,066 insertions(+), 36 deletions(-)

diff --git a/ruoyi-ui/src/api/meeting/index.js b/ruoyi-ui/src/api/meeting/index.js
index d04414e..91502e9 100644
--- a/ruoyi-ui/src/api/meeting/index.js
+++ b/ruoyi-ui/src/api/meeting/index.js
@@ -163,3 +163,11 @@
   })
 }
 // ------------------------------------------------
+//涓婁紶鏂囦欢
+export function uploadPic1(data) {
+  return request({
+    url: '/common/upload',
+    method: 'post',
+    data: data
+  })
+}
diff --git a/ruoyi-ui/src/api/pet/index.js b/ruoyi-ui/src/api/pet/index.js
index d9a5510..3373c6b 100644
--- a/ruoyi-ui/src/api/pet/index.js
+++ b/ruoyi-ui/src/api/pet/index.js
@@ -122,3 +122,54 @@
     data: data
   })
 }
+
+// -------------------------------
+// 鍒嗕韩
+export function share(data) {
+  return request({
+    url: '/family/zfPetShare/share',
+    method: 'post',
+    data: data
+  })
+}
+// 鏌ョ湅鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�
+export function shareToWho(data,query) {
+  return request({
+    url: '/family/zfPetShare/getInfoByUserId',
+    method: 'post',
+    data: data,
+    params: query
+  })
+}
+// 鏌ョ湅璋佸垎浜簡鏁版嵁
+export function getWhoShare(query) {
+  return request({
+    url: '/family/zfPetShare/getInfoByShareId',
+    method: 'get',
+    params: query
+  })
+}
+// 涓嬭浇鍒嗕韩鐨勬暟鎹�
+export function downShareData(data) {
+  return request({
+    url: '/family/zfPetShare/downloadDate',
+    method: 'post',
+    data: data
+  })
+}
+// 鏀跺洖鍒嗕韩鏁版嵁
+export function deleteShareData(data) {
+  return request({
+    url: '/family/zfPetShare/deleteInfoByUserId',
+    method: 'post',
+    data: data
+  })
+}
+// 灞曠ず涓嬭浇鐨勬暟鎹�
+export function showShareData(query) {
+  return request({
+    url: '/family/zfPetShare/all',
+    method: 'get',
+    params: query
+  })
+}
diff --git a/ruoyi-ui/src/api/travel/index.js b/ruoyi-ui/src/api/travel/index.js
index 2c60bf9..5439289 100644
--- a/ruoyi-ui/src/api/travel/index.js
+++ b/ruoyi-ui/src/api/travel/index.js
@@ -116,3 +116,84 @@
     method: 'delete'
   })
 }
+
+// -------------------------------
+// 鍒嗕韩
+export function share(data) {
+  return request({
+    url: '/travelCountShare/share',
+    method: 'post',
+    data: data
+  })
+}
+// 鏌ョ湅鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�
+export function shareToWho(data,query) {
+  return request({
+    url: '/travelCountShare/getInfoByUserId',
+    method: 'post',
+    data: data,
+    params: query
+  })
+}
+// 鏌ョ湅璋佸垎浜簡鏁版嵁
+export function getWhoShare(query) {
+  return request({
+    url: '/travelCountShare/getInfoByShareId',
+    method: 'get',
+    params: query
+  })
+}
+// 涓嬭浇鍒嗕韩鐨勬暟鎹�
+export function downShareData(data) {
+  return request({
+    url: '/travelCountShare/downloadDate',
+    method: 'post',
+    data: data
+  })
+}
+// 鏀跺洖鍒嗕韩鏁版嵁
+export function deleteShareData(data) {
+  return request({
+    url: '/travelCountShare/deleteInfoByUserId',
+    method: 'post',
+    data: data
+  })
+}
+// 灞曠ず涓嬭浇鐨勬暟鎹�
+export function showShareData(query) {
+  return request({
+    url: '/travelCountShare/all',
+    method: 'get',
+    params: query
+  })
+}
+// --------------------------------------------
+// 鍒嗕韩瀛愭暟鎹幏鍙�
+
+// 鏌ョ湅鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�
+export function shareToWho2(data,query) {
+  return request({
+    url: '/travelDetailShare/getInfoByUserId',
+    method: 'post',
+    data: data,
+    params: query
+  })
+}
+
+// 鏌ョ湅璋佸垎浜簡鏁版嵁
+export function getWhoShare2(query) {
+  return request({
+    url: '/travelDetailShare/getInfoByShareId',
+    method: 'get',
+    params: query
+  })
+}
+
+// 灞曠ず涓嬭浇鐨勬暟鎹�
+export function showShareData2(query) {
+  return request({
+    url: '/travelDetailShare/all',
+    method: 'get',
+    params: query
+  })
+}
diff --git a/ruoyi-ui/src/router/index.js b/ruoyi-ui/src/router/index.js
index 55bf70c..09a663d 100644
--- a/ruoyi-ui/src/router/index.js
+++ b/ruoyi-ui/src/router/index.js
@@ -405,7 +405,7 @@
         path: 'petInfo/:id(\\d+)',
         component: () => import('@/views/pet/petInfo'),
         name: 'petInfo',
-        meta: { title: '榄呭疇璇︾粏淇℃伅',activeMenu: '/familymodel/zfPetNote'}
+        meta: { title: '瀹跺涵瀹犵墿璇︾粏淇℃伅',activeMenu: '/familymodel/zfPetNote'}
       }
     ]
   },
@@ -422,7 +422,7 @@
         path: 'petnote/:id(\\d+)',
         component: () => import('@/views/pet/petnote'),
         name: 'petnote',
-        meta: { title: '榄呭疇澶囧繕鏈�',activeMenu: '/familymodel/zfPetNote'}
+        meta: { title: '瀹犵墿澶囧繕鏈�',activeMenu: '/familymodel/zfPetNote'}
       }
     ]
   },
diff --git a/ruoyi-ui/src/views/device/index.vue b/ruoyi-ui/src/views/device/index.vue
index a48d35f..9356a84 100644
--- a/ruoyi-ui/src/views/device/index.vue
+++ b/ruoyi-ui/src/views/device/index.vue
@@ -579,6 +579,7 @@
         share,shareToWho,getWhoShare,downShareData,deleteShareData,showShareData
 } from "@/api/device/index";
 import {listUserAll} from "@/api/root/index";
+import { Notification, MessageBox, Message, Loading } from 'element-ui'
 
 
 export default {
diff --git a/ruoyi-ui/src/views/economy/index.vue b/ruoyi-ui/src/views/economy/index.vue
index 4c7719a..e363e03 100644
--- a/ruoyi-ui/src/views/economy/index.vue
+++ b/ruoyi-ui/src/views/economy/index.vue
@@ -540,6 +540,7 @@
 import {listEconomy,enload,delEconomy, addEconomy, uploadPic,
         share,shareToWho,getWhoShare,downShareData,deleteShareData,showShareData
 } from "@/api/economy/index";
+import { Notification, MessageBox, Message, Loading } from 'element-ui'
 import {listUserAll} from "@/api/root/index";
 
 export default {
diff --git a/ruoyi-ui/src/views/meeting/webcast.vue b/ruoyi-ui/src/views/meeting/webcast.vue
index 0ddabd1..70863c1 100644
--- a/ruoyi-ui/src/views/meeting/webcast.vue
+++ b/ruoyi-ui/src/views/meeting/webcast.vue
@@ -10,15 +10,8 @@
       <span>鐩存挱</span>
       <div class="button-container"></div>
       <div style="display: flex; align-items: center;">
-<!--        <el-button size="mini" type="text" v-hasPermi="['person:information:memo']" style="margin-left: 200px">
-          <div class="form" @click="newRequest"><el-icon style="padding-right:100px;"></el-icon>
-            <span class="text" style="width: 69px;height: 26px;font-size: 16px;
-              font-family: Microsoft YaHei-Regular, Microsoft YaHei; color: #EBA4AA;">鐩存挱鐢宠</span>
-          </div>
-        </el-button> -->
       </div>
     </h1>
-
     <hr>
 
     <!-- 鎼滅储 -->
@@ -30,7 +23,6 @@
                    border-radius: 16px 16px 16px 16px;
                    opacity: 0.5;" @keyup.enter.native="handleQuery" />
       </el-form-item>
-
 
       <el-form-item>
         <el-button size="mini" @click="handleQuery" style=" width: 65px; height: 32px;background: #FFDDE3;
@@ -65,6 +57,9 @@
           <span class="span1">{{ item.title }}</span>
           <div class="tubiao"><i class="el-icon-view">10000</i></div>
           <p class="author">{{ item.applyPerson }}</p>
+          <img :src="item.avatar"
+          style="margin-left: 15px;margin-top: 190px; background-color: pink; width: 50px; height: 50px;"/>
+
         </div>
       </el-col>
 
@@ -91,22 +86,11 @@
             value-format="yyyy-MM-dd HH:mm:ss">
           </el-date-picker>
         </el-form-item>
-<!--        <el-form-item label="缁撴潫鏃堕棿" prop="endTime">
-          <el-date-picker v-model="formDat.endTime" type="datetime" placeholder="閫夋嫨寮�濮嬫椂闂�"
-            value-format="yyyy-MM-dd HH:mm:ss">
-          </el-date-picker>
-        </el-form-item> -->
 
-        <!--        <el-form-item label="寮�濮嬫椂闂�" prop="startTime">
-          <el-date-picker v-model="formDat.startTime" type="datetime" placeholder="閫夋嫨寮�濮嬫椂闂�"
-             value-format="yyyy-MM-dd HH:mm:ss">
-          </el-date-picker>
-        </el-form-item>
-
-        <el-form-item label="鎸佺画鏃堕棿" prop="meetingTitle">
-          <el-input v-model="formDat.meetingTitle" placeholder="璇疯緭鍏ヤ細璁爣棰�" clearable :style="{width: '100%'}">
+        <el-form-item label="鏃堕暱(鍒嗛挓)" prop="duration">
+          <el-input v-model="formDat.duration" type="number" placeholder="璇疯緭鍏ヤ細璁椂闀�(鍒嗛挓)" clearable :style="{width: '100%'}">
           </el-input>
-        </el-form-item> -->
+        </el-form-item>
 
         <el-form-item label="鎴块棿鍙�" prop="roomId">
           <el-input v-model="formDat.roomId" type="number" :min="1" placeholder="璇疯緭鍏ユ埧闂村彿" clearable :style="{width: '100%'}">
@@ -114,7 +98,7 @@
         </el-form-item>
 
         <el-form-item label="鏈�澶氫汉鏁�" prop="maxPerson">
-          <el-input v-model="formDat.maxPerson" placeholder="璇疯緭鍏ユ渶澶氫汉鏁�" clearable :style="{width: '100%'}">
+          <el-input v-model="formDat.maxPerson" type="number" placeholder="璇疯緭鍏ユ渶澶氫汉鏁�" clearable :style="{width: '100%'}">
           </el-input>
         </el-form-item>
 
@@ -137,11 +121,58 @@
           <el-input v-model="formDat.contactPhone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" clearable :style="{width: '100%'}"></el-input>
         </el-form-item>
 
+
+        <h4 class="form-header">涓绘挱澶村儚 </h4>
+            <el-upload
+              action="#"
+              accept="image/jpeg, image/png,image/jpg, image/WMF,image/gif"
+              list-type="picture-card"
+              :http-request="requestUpload"
+              :file-list="fileList"
+              :limit="1"
+            >
+              <i slot="default" class="el-icon-plus"></i>
+              <div slot="file" slot-scope="{ file }">
+                <template v-if="fileList">
+                  <img
+                    class="el-upload-list__item-thumbnail"
+                    :src="file.url"
+                    alt=""
+                    style="width: 100%; height: 100%; object-fit: cover;"
+                    fit="cover"
+                    :preview-src-list="[file.url]"
+                  >
+                </template>
+                <span class="el-upload-list__item-actions">
+          <span
+            class="el-upload-list__item-preview"
+            @click="handlePictureCardPreview(file)"
+          >
+            <i class="el-icon-zoom-in"></i>
+          </span>
+          <span
+            v-if="!disabled"
+            class="el-upload-list__item-delete"
+            @click="handleRemove(file)"
+          >
+            <i class="el-icon-delete"></i>
+          </span>
+        </span>
+              </div>
+            </el-upload>
+
+
       </el-form>
+
+
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitDataScope">淇� 瀛�</el-button>
         <el-button @click="cancel">鍙� 娑�</el-button>
       </div>
+    </el-dialog>
+
+    <el-dialog  :visible.sync="dialogVisible">
+      <img w-full :src="dialogImageUrl"    style="width: 100%; height: 100%" alt="Preview Image" />
     </el-dialog>
 
 
@@ -173,7 +204,9 @@
   import {
     addWebcast,
     listWebcast,
-    getWebcastInfo
+    getWebcastInfo,
+    uploadPic,
+    uploadPic1,
   } from "@/api/meeting/index";
 
   export default {
@@ -198,6 +231,8 @@
           happenStartTime: undefined,
           happenEndTime: undefined
         },
+        // 閬僵灞�
+        disabled: false,
         // 寮瑰嚭灞傛爣棰�
         title: "",
         // 鏄惁鏄剧ず寮瑰嚭灞�
@@ -211,9 +246,14 @@
           contactPhone: undefined,
           createTime: undefined,
           roomId:undefined,
-          maxPerson:undefined
+          maxPerson:undefined,
+          duration:undefined,
+          avatar:undefined,
         },
-
+        	  	  uploadFileList: [],
+      fileList:[],
+      dialogImageUrl: '',
+      dialogVisible: false,
       }
     },
     methods: {
@@ -238,6 +278,9 @@
         // this.reset();
       },
       submitDataScope: function() {
+        let ul = this.fileList[0].url
+        this.formDat.avatar = ul,
+        alert(this.formDat.avatar)
         this.$refs["elForm"].validate(valid => {
           if (valid && this.formDat.roomId > 0) {
             addWebcast(this.formDat).then(response => {
@@ -284,7 +327,40 @@
       },
       toLook(id) {
         this.$router.push('/meeting/webcast/Home/' + id)
-      }
+      },
+
+    requestUpload(params)
+    {
+      var file = params.file;
+      var formData = new FormData();
+
+      formData.append('uploadFile', file);
+      let _this = this
+      console.log(formData,'123123')
+
+      uploadPic1(formData).then(response => {
+        let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
+        _this.fileList.push({name:response.data.fileName, url:response.data.url})
+        console.log(this.fileList)
+        // _this.fileList2.push({name:response.data.fileName, url:response.data.url})
+        alert('ok')
+      })
+
+    },
+      handlePictureCardPreview(file) {
+        alert(file.url)
+        this.dialogImageUrl = file.url;
+        this.dialogVisible = true;
+      },
+      handleRemove(file) {
+        for(let i = 0; i < this.fileList.length; i++)
+        {
+          if(this.fileList[i].url==file.url)
+            this.$delete(this.fileList,i);
+        }
+      },
+
+
 
     }
   }
@@ -322,6 +398,7 @@
   }
 
   .module {
+    /* display: flex; */
     width: 250px;
     height: 250px;
     background-color: rgb(255, 255, 255);
diff --git a/ruoyi-ui/src/views/note/index.vue b/ruoyi-ui/src/views/note/index.vue
index f83c3f1..d5885ae 100644
--- a/ruoyi-ui/src/views/note/index.vue
+++ b/ruoyi-ui/src/views/note/index.vue
@@ -529,7 +529,7 @@
 } from "@/api/note/index";
 import {listUserAll} from "@/api/root/index";
 import {getInfo} from "@/api/login";
-import {Message} from "element-ui";
+import { Notification, MessageBox, Message, Loading } from 'element-ui'
 export default {
   name: "Role",
   dicts: ['sys_normal_disable'],
@@ -726,8 +726,10 @@
 
         const list2 = {"shareIds": [this.selectWho]}
         shareToWho(list2,this.queryParams2).then(response => {
+          this.loading2 = true
           this.shareList1 = response.data.data
           this.total1 = response.data.total;
+          this.loading2 = false
         })
       })
     },
diff --git a/ruoyi-ui/src/views/pet/index.vue b/ruoyi-ui/src/views/pet/index.vue
index b904392..ba8ad27 100644
--- a/ruoyi-ui/src/views/pet/index.vue
+++ b/ruoyi-ui/src/views/pet/index.vue
@@ -88,11 +88,53 @@
         >鍒犻櫎</el-button>
       </el-col>
 
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-top"
+          size="mini"
+          :disabled="multiple"
+          @click="handleShare"
+
+        >鍒嗕韩</el-button>
+      </el-col>
+
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-top"
+          size="mini"
+          @click="handleWho"
+        >鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�</el-button>
+      </el-col>
+
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-top"
+          size="mini"
+          @click="whoShare"
+        >鍒嗕韩缁欐垜鐨勬暟鎹�</el-button>
+      </el-col>
+
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-top"
+          size="mini"
+          @click="showData"
+        >灞曠ず涓嬭浇鐨勫垎浜暟鎹�</el-button>
+      </el-col>
+
 
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
-    <el-table v-loading="loading" :data="petList,PetNoteList" @selection-change="handleSelectionChange"  :row-class-name="tableRowClassName">
+    <el-table v-loading="loading" :data="petList,PetNoteList" ref="table2" @selection-change="handleSelectionChange"  :row-class-name="tableRowClassName">
       <el-table-column type="selection" width="55"  align="center" />
 
       <el-table-column label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="120"/>
@@ -137,6 +179,12 @@
           <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['familymodel:property:info']">
             <el-button size="mini" type="text" icon="el-icon-d-arrow-right"  @click="handleCheck(scope.row)">鏌ョ湅璇︽儏</el-button>
           </el-dropdown>
+          <el-button
+             size="mini"
+              type="text"
+             icon="el-icon-d-arrow-right"
+              @click="handleShare(scope.row)">
+            <span style="font-size: 1em;">鍒嗕韩</span></el-button>
           </div>
         </template>
       </el-table-column>
@@ -326,6 +374,129 @@
       <img w-full :src="dialogImageUrl"    style="width: 100%; height: 100%" alt="Preview Image" />
     </el-dialog>
 
+
+    <!-- 鍒嗕韩瀵硅瘽妗�1 -->
+    <el-dialog :title="title1" :visible.sync="open1" width="500px" append-to-body @close="handleClose2">
+
+    <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" >
+            <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 label="濮撳悕" prop="nickName" sortable :show-overflow-tooltip="true" width="145" align="center"/>
+        </el-table>
+
+                <div slot="footer" class="dialog-footer">
+                  <el-button type="primary" @click="subShare">鍒� 浜�</el-button>
+                </div>
+
+    </el-dialog>
+
+    <!-- 鍒嗕韩瀵硅瘽妗�2 -->
+    <el-dialog :title="title2" :visible.sync="open2" width="85%" append-to-body @close="handleClose">
+      <div>
+      <el-select v-if="ifNum == 1"
+                v-model="user" id="userSelect"
+                placeholder="璇烽�夋嫨鍒嗕韩鐨勫璞�" clearable
+                 style="width: 240px;
+                 height: 35px;
+                 border-radius: 16px 16px 16px 16px;
+                 margin-bottom: 5px;
+                 opacity: 0.5;" filterable allow-create
+                 @change="selectValue">
+        <el-option v-for="item in userOptions"
+          :key="item.value" :label="item.label" :value="item.value"/>
+      </el-select>
+            </div>
+
+      <el-table v-loading="loading2" :data="shareList1" :row-key="getRowId2" ref="multipleTable"  @selection-change="handleSelectionChange2"  :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
+            <!-- <el-table-column type="selection" :reserve-selection="true" width="55"  align="center" /> -->
+            <!-- <el-table-column fixed label="搴忓彿" sortable type="index" align="center" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="60"/> -->
+            <el-table-column label="绉嶇被" prop="animal" sortable :show-overflow-tooltip="true" width="150" />
+
+            <el-table-column label="鍝佺" prop="type" sortable :show-overflow-tooltip="true" width="150" />
+            <el-table-column label="鍚嶅瓧" prop="name" sortable :show-overflow-tooltip="true" width="150" />
+            <el-table-column label="鎬у埆" prop="sex" sortable width="120" >
+              <template slot-scope="scope">
+                {{ getSrc1(scope.row.sex) }}
+              </template>
+            </el-table-column>
+            <el-table-column label="棰滆壊" prop="color" sortable width="100" />
+
+            <el-table-column label="璇佷欢鍙风爜" prop="idNum" sortable width="100" />
+
+            <el-table-column label="鍑虹敓鏃ユ湡" align="center" sortable prop="birth" width="180">
+              <template slot-scope="scope">{{scope.row.birth? scope.row.birth: '鈥斺�斺�斺��'}}</template>
+
+            </el-table-column>
+            <el-table-column label="瀹犵墿id" prop="id" sortable width="100" />
+            <el-table-column label="涓讳汉濮撳悕" prop="masterName" sortable width="100" />
+              <el-table-column label="鐢靛瓙鏂囦欢" prop="url" width="160" align="center">
+                   <template slot-scope="scope" >
+                     <div>
+                       <img
+                         class="el-upload-list__item-thumbnail"
+                         src="../../assets/images/deviceLis.png"
+                         alt=""
+                         style="width: 35px; height: 35px;"
+                         fit="cover"
+                         v-if="!(scope.row.url === '' || scope.row.url === ',' || scope.row.url === null)"
+                       >
+                       <img
+                         v-else
+                         class="el-upload-list__item-thumbnail"
+                         src="../../assets/images/deviceA.png"
+                         alt=""
+                         style="width: 35px; height: 35px;"
+                         fit="cover"
+
+                       ></div>
+                   </template>
+                </el-table-column>
+
+            <el-table-column 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
+                  v-if="ifNum == 2"
+                  size="mini"
+                  type="text"
+                  icon="el-icon-d-arrow-right"
+                  @click="handleDown(scope.row)">
+                  <span style="font-size: 14px;">涓嬭浇</span></el-button>
+                  <el-button
+                    v-if="ifNum == 1"
+                    size="mini"
+                    type="text"
+                    icon="el-icon-d-arrow-right"
+                    @click="handleBack(scope.row)">
+                    <span style="font-size: 14px;">鏀跺洖</span></el-button>
+                <el-button
+                  size="mini"
+                  type="text"
+                  icon="el-icon-d-arrow-right"
+                  @click="handleCheck(scope.row)">
+                  <span style="font-size: 14px;">鏌ョ湅璇︽儏</span></el-button>
+                </div>
+              </template>
+            </el-table-column>
+          </el-table>
+
+          <pagination
+            v-show="total1>0"
+            :total="total1"
+            :page.sync="queryParams2.pageNo"
+            :limit.sync="queryParams2.pageSize"
+            @pagination='fenYe'
+            style="background: #FEF7FC;"
+          />
+
+    </el-dialog>
+
   </div>
 </template>
 
@@ -336,12 +507,48 @@
 
 
 //鍦╯ystem/note/index.js涓鍏ユ帴鍙e嚱鏁�
-import {listPet,enload, getPetInfo, delPet,addPet, uploadPic1} from "@/api/pet/index";
+import {listPet,enload, getPetInfo, delPet,addPet, uploadPic1,
+        share,shareToWho,getWhoShare,downShareData,deleteShareData,showShareData
+} from "@/api/pet/index";
+import {listUserAll} from "@/api/root/index";
+import { Notification, MessageBox, Message, Loading } from 'element-ui'
 export default {
   name: "Role",
   dicts: ['sys_normal_disable'],
   data() {
     return {
+      // 鍒嗕韩缁欒皝鐨刲ist
+      listRoot: [],
+      open1:false,
+      open2:false,
+      id1: undefined,
+      shareList1: [],
+      // shareList2: [],
+      userOptions:[],
+      user:undefined,
+      userList:[],
+      ifNum:undefined,
+      selectWho:undefined,
+      title1: "",
+      title2: "",
+      loading1: false,
+      loading2: false,
+      // 鏌ヨ鍙傛暟1
+      queryParams1: {
+        pageNum: 1,
+        pageSize: 10,
+      },
+      queryParams2: {
+        pageNo: 1,
+        pageSize: 10,
+      },
+      ids1: [],
+      single1: true,
+      multiple1: true,
+      dateRange1: [],
+
+
+
       userId: undefined,
       // 閬僵灞�
       disabled: false,
@@ -549,10 +756,181 @@
     };
   },
   created() {
+        this.getList1();
     this.getList();
     this.getInfo()
   },
   methods: {
+    // 鍒嗛〉
+    fenYe(){
+      // @pagination='ifNum === 1 ? selectValue : (ifNum === 2 ? whoShare : showData)'
+      if(this.ifNum === 1){
+        this.selectValue(this.selectWho)
+      }else if(this.ifNum === 2){
+        this.whoShare()
+      }else{
+        this.showData()
+      }
+    },
+    // 鍏抽棴寮圭獥鍚�
+    handleClose(){
+      this.user = ''
+      this.queryParams2.pageNo = 1
+            this.total1 = 0
+    },
+    handleClose2(){
+      this.$refs.table1.clearSelection()
+      this.$refs.table2.clearSelection()
+    },
+
+    // 涓嬭浇浠栦汉缁欐垜鍒嗕韩鐨勬暟鎹�
+    handleDown(row){
+      const a = {"downloadContent" : row.id}
+      downShareData(a).then(() => {
+        Message({ message: "涓嬭浇鎴愬姛", type: 'success' })
+      })
+    },
+
+    // 鏀跺洖鍒嗕韩缁欏埆浜虹殑鏁版嵁
+    handleBack(row){
+      // 鍒嗕韩缁欒皝鐨勶細this.selectWho
+      const list = {"shareIds": [this.selectWho],"shareContents": [row.id]}
+      deleteShareData(list).then(()=>{
+        Message({ message: "鏀跺洖鎴愬姛", type: 'success' })
+
+        const list2 = {"shareIds": [this.selectWho]}
+        shareToWho(list2,this.queryParams2).then(response => {
+          this.shareList1 = response.data.data
+          this.total1 = response.data.total;
+        })
+      })
+    },
+    // 灞曠ず涓嬭浇鐨勫垎浜暟鎹�
+    showData(){
+      this.shareList1 = []
+      this.ifNum = 3
+      this.open2 = true
+      this.title2 = "涓嬭浇鐨勫垎浜暟鎹�";
+      showShareData(this.queryParams2).then(response => {
+        this.shareList1 = response.data.data
+        this.total1 = response.data.total;
+        // console.log(response,'灞曠ず涓嬭浇鐨勫垎浜暟鎹睍绀轰笅杞界殑鍒嗕韩鏁版嵁')
+      })
+    },
+    // 灞曠ず鍒嗕韩缁欐垜鐨勬暟鎹�
+    whoShare(){
+      this.shareList1 = []
+      this.ifNum = 2
+      this.open2 = true
+      this.title2 = "鍒嗕韩缁欐垜鐨勬暟鎹�";
+      // const list = {"shareId": this.userList}
+      // const list = {"shareId": 111}
+      getWhoShare(this.queryParams2).then(response => {
+        const data = response.data.data
+        this.total1 = response.data.total
+        console.log(response,'灞曠ず鍒嗕韩缁欐垜鐨勬暟鎹睍绀哄垎浜粰鎴戠殑鏁版嵁s')
+        for(let i in data){
+          console.log(i,'灞曠ず鍒嗕韩缁欐垜鐨勬暟鎹睍绀哄垎浜粰鎴戠殑鏁版嵁')
+          this.shareList1.push(data[i])
+        }
+      })
+    },
+
+    // 鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�
+    selectValue(value){
+      this.selectWho = value
+      this.shareList1 = []
+      const list = {"shareIds": [this.selectWho]}
+      shareToWho(list,this.queryParams2).then(response => {
+        // this.loading2 = true;
+        response.data.data.forEach(res=>{
+          if(res){
+            this.shareList1.push(res)
+          }
+        })
+        // this.shareList1 = response.data.data
+        this.total1 = response.data.total;
+        // this.loading2 = false;
+        console.log(response.data,'鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹垎浜粰璋佷簡浠�涔堟暟鎹�')
+      })
+    },
+    handleWho(){
+      this.ifNum = 1
+      this.open2 = true
+      this.title2 = "鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�";
+      this.shareList1 = []
+    },
+
+    /** 鍒嗕韩鎿嶄綔 */
+    handleShare(row) {
+      if(row.id){
+        this.id1 = [row.id]
+      }
+      this.open1 = true;
+      this.title1 = "鍒嗕韩";
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange1(selection) {
+      this.ids1 = selection.map(item => item.userId)
+      this.single1 = selection.length!=1
+      this.multiple1 = !selection.length
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange2(selection) {
+      // this.ids1 = selection.map(item => item.userId)
+      // // console.log(selection)
+      // console.log(this.ids1,'ids1ids1ids1ids1')
+      // this.single1 = selection.length!=1
+      // this.multiple1 = !selection.length
+    },
+    getRowId1(row)
+    {
+      return row.id
+    },
+    getRowId2(row)
+    {
+      return row.id
+    },
+    getList1() {
+          this.loading1 = true;
+          this.queryParams1.happenStartTime = this.dateRange1.length > 0 && this.dateRange1[0]
+          this.queryParams1.happenEndTime = this.dateRange1.length > 0 && this.dateRange1[1]
+          listUserAll(this.queryParams1).then(response => {
+              this.listRoot = response.data.data;
+              const kon = {}
+              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,'userListuserListuserList')
+              this.loading1 = false;
+            }
+          );
+        },
+    // 纭鍒嗕韩
+    subShare(row) {
+      const shareList = {}
+      shareList.shareContents = this.id1 || this.ids;
+      shareList.shareIds = this.ids1
+      console.log(shareList,'sharelistsharelist')
+      this.$modal.confirm('鏄惁纭鍒嗕韩锛�').then(function() {
+        return share(shareList);
+      }).then(() => {
+        // this.getList();
+        Message({ message: "鍒嗕韩鎴愬姛", type: 'success' });
+        this.open1 = false;
+        this.id1 = undefined;
+        // this.ids = []
+
+      });
+    },
+    // ------------------------------------------------------------------
+
     getInfo(){
           console.log('-----------------')
           getInfo().then(response=>{
diff --git a/ruoyi-ui/src/views/pet/petInfo.vue b/ruoyi-ui/src/views/pet/petInfo.vue
index 1db0969..4f5c950 100644
--- a/ruoyi-ui/src/views/pet/petInfo.vue
+++ b/ruoyi-ui/src/views/pet/petInfo.vue
@@ -566,11 +566,11 @@
       this.isShow = true
 
      // document.title = "淇敼榄呭疇璇︾粏淇℃伅";
-      this.$route.meta.title = "淇敼榄呭疇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
+      this.$route.meta.title = "淇敼瀹犵墿璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
     }
     else{
      // document.title = "鏌ョ湅榄呭疇璇︾粏淇℃伅";
-      this.$route.meta.title = "鏌ョ湅榄呭疇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
+      this.$route.meta.title = "鏌ョ湅瀹犵墿璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
       this.btn = false;
       this.isShow = false;
     }
diff --git a/ruoyi-ui/src/views/travel/index.vue b/ruoyi-ui/src/views/travel/index.vue
index 7e0221e..98a9dc0 100644
--- a/ruoyi-ui/src/views/travel/index.vue
+++ b/ruoyi-ui/src/views/travel/index.vue
@@ -83,8 +83,53 @@
         >鍒犻櫎</el-button>
       </el-col>
 
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-top"
+          size="mini"
+          :disabled="multiple"
+          @click="handleShare"
+
+        >鍒嗕韩</el-button>
+      </el-col>
+
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-top"
+          size="mini"
+          @click="handleWho"
+        >鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�</el-button>
+      </el-col>
+
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-top"
+          size="mini"
+          @click="whoShare"
+        >鍒嗕韩缁欐垜鐨勬暟鎹�</el-button>
+      </el-col>
+
+      <el-col :span="1.5">
+        <el-button
+          type="primary"
+          plain
+          icon="el-icon-top"
+          size="mini"
+          @click="showData"
+        >灞曠ず涓嬭浇鐨勫垎浜暟鎹�</el-button>
+      </el-col>
+
+
       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
+
+
     <!-- 搴忓彿銆佸熀閲�/鍙拌处銆佹椂闂淬�佹敹鍏�/鏀嚭銆佺敤閫斻�佷娇鐢ㄤ汉銆佺幇閲�/鑷姩鎵e垝銆佷綑棰濄�佺數瀛愭枃浠躲�佸娉� 鎿嶄綔-->
     <!-- 杩欓噷鏈変釜familyList鏁扮粍 鏄湪data()涓畾涔夌殑 -->
     <el-table v-loading="loading" :data="travelpriceList" @row-click="getRowId" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
@@ -184,7 +229,7 @@
 
 
 
-      <el-table-column  label="鎿嶄綔" align="center" sortable width="180" v-if="userId != 2">
+      <el-table-column  label="鎿嶄綔" align="center" sortable width="250" v-if="userId != 2">
         <template slot-scope="scope" v-if="scope.row.roleId !== 1">
           <el-button
             size="mini"
@@ -209,6 +254,12 @@
             @click="handleDelete(scope.row)"
             v-hasPermi="['system:role:remove']"
           > 鍒犻櫎</el-button>
+         <el-button
+             size="mini"
+              type="text"
+             icon="el-icon-d-arrow-right"
+              @click="handleShare(scope.row)">
+            <span style="font-size: 1em;">鍒嗕韩</span></el-button>
           <!-- <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['familymodel:economy:info']">
             <el-button size="mini" type="text" icon="el-icon-d-arrow-right"  @click="handleCheck(scope.row)">鏌ョ湅璇︽儏</el-button>
           </el-dropdown> -->
@@ -219,6 +270,8 @@
 
       </el-table-column>
     </el-table>
+
+
     <div style="background-color: #FEF7FC;">
       <el-dialog :title="title" :visible.sync="openDataScope" width="1300px" append-to-body >
         <div style="background-color: #FEF7FC;">
@@ -512,6 +565,178 @@
       </div>
     </el-dialog>
 
+    <!-- 鍒嗕韩瀵硅瘽妗�1 -->
+    <el-dialog :title="title1" :visible.sync="open1" width="500px" append-to-body @close="handleClose2">
+
+    <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" >
+            <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 label="濮撳悕" prop="nickName" sortable :show-overflow-tooltip="true" width="145" align="center"/>
+        </el-table>
+
+                <div slot="footer" class="dialog-footer">
+                  <el-button type="primary" @click="subShare">鍒� 浜�</el-button>
+                </div>
+
+    </el-dialog>
+
+    <!-- 鍒嗕韩瀵硅瘽妗�2 -->
+    <el-dialog :title="title2" :visible.sync="open2" width="85%" append-to-body @close="handleClose">
+      <div>
+      <el-select v-if="ifNum == 1"
+                v-model="user" id="userSelect"
+                placeholder="璇烽�夋嫨鍒嗕韩鐨勫璞�" clearable
+                 style="width: 240px;
+                 height: 35px;
+                 border-radius: 16px 16px 16px 16px;
+                 margin-bottom: 5px;
+                 opacity: 0.5;" filterable allow-create
+                 @change="selectValue">
+        <el-option v-for="item in userOptions"
+          :key="item.value" :label="item.label" :value="item.value"/>
+      </el-select>
+            </div>
+
+      <el-table v-loading="loading2" :data="shareList1" :row-key="getRowId2" ref="multipleTable"  @selection-change="handleSelectionChange2"  :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
+
+            <el-table-column type="expand" :cell-class-name="expandRowClassName">
+                    <template slot-scope="props">
+                      <div  >
+                        <el-table  :header-row-class-name="tableHeaderRowClassName"  v-loading="loading" :data="travelBase[props.row.id]"  style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;" :row-class-name="tableRowClassName1" >
+                          <el-table-column  label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="50px"/>
+
+                          <el-table-column label="鏃堕棿" prop="happenDate" sortable width="100" align="center" >
+                            <template slot-scope="scope">{{scope.row.happenDate? scope.row.happenDate: '鈥斺�斺�斺��'}}</template>
+                          </el-table-column>
+
+                          <el-table-column label="鍦扮偣" prop="address" sortable width="100" />
+
+                          <el-table-column label="寤虹瓚" prop="scenic" sortable width="100" />
+                          <!-- <el-table-column label="鏃呮湡" prop="travelPeriod" sortable width="100" /> -->
+                          <el-table-column label="浣跨敤璇佷欢" prop="document" sortable width="100" />
+                          <el-table-column label="杞︽/鑸彮" prop="flight" sortable width="120px" />
+                          <el-table-column label="椁愯垂" prop="eat" sortable width="70px" />
+                          <el-table-column label="浣忓璐�" prop="stay" sortable width="100px" />
+                          <el-table-column label="浜ら��" prop="travel" sortable width="70px" />
+                          <el-table-column label="闂ㄧエ" prop="entrance" sortable width="70px" />
+                         <el-table-column label="鍏跺畠璐圭敤" prop="otherCost" sortable width="120px" />
+            			 <el-table-column label="澶囨敞" prop="backInfo" sortable width="120px" />
+
+                          <el-table-column label="鐢靛瓙鏂囦欢" prop="url" width="160" >
+                            <template slot-scope="scope" >
+                              <img
+                                class="el-upload-list__item-thumbnail"
+                                src="../../assets/images/deviceLis.png"
+                                alt=""
+                                style="width: 35px; height: 35px;"
+                                fit="cover"
+                                v-if="!(scope.row.url === '' || scope.row.url === ',' || scope.row.url === null)"
+                              >
+                              <img
+                                v-else
+                                class="el-upload-list__item-thumbnail"
+                                src="../../assets/images/deviceA.png"
+                                alt=""
+                                style="width: 35px; height: 35px;"
+                                fit="cover"
+                              >
+                            </template>
+                          </el-table-column>
+            <!--              <el-table-column label="澶囨敞" prop="remark" sortable width="100" />-->
+
+
+                          <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width" v-if="userId != 2">
+                            <template slot-scope="scope" v-if="scope.row.roleId !== 1">
+<!--                              <el-button
+                                size="mini"
+                                type="text"
+                                icon="el-icon-edit"
+                                @click="handleUpdate1(scope.row)"
+                                v-hasPermi="['familymodel:economy:info']"
+                              >淇敼</el-button>
+                              <el-button
+                                size="mini"
+                                type="text"
+                                icon="el-icon-delete"
+                                @click="handleDelete1(scope.row)"
+                                v-hasPermi="['system:role:remove']"
+                              >鍒犻櫎</el-button> -->
+                              <el-button size="mini" type="text" icon="el-icon-d-arrow-right"  @click="handleCheck1(scope.row)">鏌ョ湅璇︽儏</el-button>
+
+                            </template>
+                          </el-table-column>
+                        </el-table>
+                      </div>
+
+
+                    </template>
+                  </el-table-column>
+                  <!-- <el-table-column type="selection" width="55"  align="center" /> -->
+                  <el-table-column fixed label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="60px"/>
+                  <el-table-column label="璧�" prop="startTime" sortable width="100" align="center">
+                    <template slot-scope="scope">{{scope.row.startTime? scope.row.startTime: '鈥斺�斺�斺��'}}</template>
+                  </el-table-column>
+                  <el-table-column label="姝�" prop="endTime" sortable width="100" align="center">
+                    <template slot-scope="scope">{{scope.row.endTime? scope.row.endTime: '鈥斺�斺�斺��'}}</template>
+                  </el-table-column>
+            <!--      <el-table-column label="鎬诲ぉ鏁�" prop="totalDay" sortable width="85px" />-->
+                  <el-table-column label="鏃呮父鍚嶇О" prop="name" sortable width="200px" />
+                  <el-table-column label="鍘诲悜" prop="destination" sortable width="150px" />
+                  <el-table-column label="鏃呮父鎬ц川" prop="property" sortable width="100" />
+            	       <el-table-column label="鎰熻█" prop="spee" sortable width="120px" />
+                  <el-table-column label="鏃呮父鏂瑰紡" prop="manner" sortable width="100" />
+                  <el-table-column label="鎬婚噾棰�" prop="totalPrice" sortable width="100" />
+                  <el-table-column label="椁愯垂" prop="eatTotal" sortable width="70px" />
+                  <el-table-column label="浣忓" prop="stayTotal" sortable width="70px" />
+                  <el-table-column label="浜ら��" prop="travelTotal" sortable width="70px" />
+                  <el-table-column label="闂ㄧエ" prop="entranceTotal" sortable width="70px" />
+                  <el-table-column label="鍥㈣垂" prop="groupTotal" sortable width="70px" />
+
+            <el-table-column 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
+                  v-if="ifNum == 2"
+                  size="mini"
+                  type="text"
+                  icon="el-icon-d-arrow-right"
+                  @click="handleDown(scope.row)">
+                  <span style="font-size: 14px;">涓嬭浇</span></el-button>
+                  <el-button
+                    v-if="ifNum == 1"
+                    size="mini"
+                    type="text"
+                    icon="el-icon-d-arrow-right"
+                    @click="handleBack(scope.row)">
+                    <span style="font-size: 14px;">鏀跺洖</span></el-button>
+                <el-button
+                  size="mini"
+                  type="text"
+                  icon="el-icon-d-arrow-right"
+                  @click="handleCheck(scope.row)">
+                  <span style="font-size: 14px;">鏌ョ湅璇︽儏</span></el-button>
+                </div>
+              </template>
+            </el-table-column>
+          </el-table>
+
+          <pagination
+            v-show="total1>0"
+            :total="total1"
+            :page.sync="queryParams2.pageNo"
+            :limit.sync="queryParams2.pageSize"
+            @pagination='fenYe'
+            style="background: #FEF7FC;"
+          />
+
+    </el-dialog>
+
   </div>
 </template>
 
@@ -531,8 +756,12 @@
   uploadPic,
   // updateTravelPrice,
   addTravelBase,
+  share,shareToWho,getWhoShare,downShareData,deleteShareData,showShareData,
+  shareToWho2,getWhoShare2,showShareData2
 
 } from "@/api/travel/index";
+import {listUserAll} from "@/api/root/index";
+import { Notification, MessageBox, Message, Loading } from 'element-ui'
 import {getSelfEconomyInfo} from "@/api/selfeconomy";
 import {delFamilyevent, listFamilyevent} from "@/api/bignote";
 
@@ -541,6 +770,37 @@
   dicts: ['sys_normal_disable'],
   data() {
     return {
+      // 鍒嗕韩缁欒皝鐨刲ist
+      listRoot: [],
+      open1:false,
+      open2:false,
+      id1: undefined,
+      shareList1: [],
+      // shareList2: [],
+      userOptions:[],
+      user:undefined,
+      userList:[],
+      ifNum:undefined,
+      selectWho:undefined,
+      title1: "",
+      title2: "",
+      loading1: false,
+      loading2: false,
+      // 鏌ヨ鍙傛暟1
+      queryParams1: {
+        pageNum: 1,
+        pageSize: 10,
+      },
+      queryParams2: {
+        pageNo: 1,
+        pageSize: 10,
+      },
+      ids1: [],
+      single1: true,
+      multiple1: true,
+      dateRange1: [],
+
+
       userId: undefined,
       // 閬僵灞�
       disabled: false,
@@ -783,10 +1043,181 @@
     };
   },
   created() {
+        this.getList1();
     this.getList();
-    this.getInfo()
+    this.getInfo();
+
   },
   methods: {
+    // 鍒嗛〉
+    fenYe(){
+      // @pagination='ifNum === 1 ? selectValue : (ifNum === 2 ? whoShare : showData)'
+      if(this.ifNum === 1){
+        this.selectValue(this.selectWho)
+      }else if(this.ifNum === 2){
+        this.whoShare()
+      }else{
+        this.showData()
+      }
+    },
+    // 鍏抽棴寮圭獥鍚�
+    handleClose(){
+      this.user = ''
+      this.queryParams2.pageNo = 1
+            this.total1 = 0
+    },
+    handleClose2(){
+      this.$refs.table1.clearSelection()
+    },
+
+    // 涓嬭浇浠栦汉缁欐垜鍒嗕韩鐨勬暟鎹�
+    handleDown(row){
+      const a = {"downloadContent" : row.id}
+      downShareData(a).then(() => {
+        Message({ message: "涓嬭浇鎴愬姛", type: 'success' })
+      })
+    },
+
+    // 鏀跺洖鍒嗕韩缁欏埆浜虹殑鏁版嵁
+    handleBack(row){
+      // 鍒嗕韩缁欒皝鐨勶細this.selectWho
+      const list = {"shareIds": [this.selectWho],"shareContents": [row.id]}
+      deleteShareData(list).then(()=>{
+        Message({ message: "鏀跺洖鎴愬姛", type: 'success' })
+
+        const list2 = {"shareIds": [this.selectWho]}
+        shareToWho(list2,this.queryParams2).then(response => {
+          this.shareList1 = response.data.data
+          this.total1 = response.data.total;
+        })
+      })
+    },
+    // 灞曠ず涓嬭浇鐨勫垎浜暟鎹�
+    showData(){
+      this.shareList1 = []
+      this.ifNum = 3
+      this.open2 = true
+      this.title2 = "涓嬭浇鐨勫垎浜暟鎹�";
+      showShareData(this.queryParams2).then(response => {
+        this.shareList1 = response.data.data
+        this.total1 = response.data.total;
+        // console.log(response,'灞曠ず涓嬭浇鐨勫垎浜暟鎹睍绀轰笅杞界殑鍒嗕韩鏁版嵁')
+      })
+    },
+    // 灞曠ず鍒嗕韩缁欐垜鐨勬暟鎹�
+    whoShare(){
+      this.shareList1 = []
+      this.ifNum = 2
+      this.open2 = true
+      this.title2 = "鍒嗕韩缁欐垜鐨勬暟鎹�";
+      // const list = {"shareId": this.userList}
+      // const list = {"shareId": 111}
+      getWhoShare(this.queryParams2).then(response => {
+        const data = response.data.data
+        this.total1 = response.data.total
+        console.log(response,'灞曠ず鍒嗕韩缁欐垜鐨勬暟鎹睍绀哄垎浜粰鎴戠殑鏁版嵁s')
+        for(let i in data){
+          console.log(i,'灞曠ず鍒嗕韩缁欐垜鐨勬暟鎹睍绀哄垎浜粰鎴戠殑鏁版嵁')
+          this.shareList1.push(data[i])
+        }
+      })
+    },
+
+    // 鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�
+    selectValue(value){
+      this.selectWho = value
+      this.shareList1 = []
+      const list = {"shareIds": [this.selectWho]}
+      shareToWho(list,this.queryParams2).then(response => {
+        // this.loading2 = true;
+        response.data.data.forEach(res=>{
+          if(res){
+            this.shareList1.push(res)
+          }
+        })
+        // this.shareList1 = response.data.data
+        this.total1 = response.data.total;
+        // this.loading2 = false;
+        console.log(response.data,'鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹垎浜粰璋佷簡浠�涔堟暟鎹�')
+      })
+    },
+    handleWho(){
+      this.ifNum = 1
+      this.open2 = true
+      this.title2 = "鍒嗕韩缁欒皝浜嗕粈涔堟暟鎹�";
+      this.shareList1 = []
+    },
+
+    /** 鍒嗕韩鎿嶄綔 */
+    handleShare(row) {
+      if(row.id){
+        this.id1 = [row.id]
+      }
+      this.open1 = true;
+      this.title1 = "鍒嗕韩";
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange1(selection) {
+      this.ids1 = selection.map(item => item.userId)
+      this.single1 = selection.length!=1
+      this.multiple1 = !selection.length
+    },
+    // 澶氶�夋閫変腑鏁版嵁
+    handleSelectionChange2(selection) {
+      // this.ids1 = selection.map(item => item.userId)
+      // // console.log(selection)
+      // console.log(this.ids1,'ids1ids1ids1ids1')
+      // this.single1 = selection.length!=1
+      // this.multiple1 = !selection.length
+    },
+    getRowId1(row)
+    {
+      return row.id
+    },
+    getRowId2(row)
+    {
+      return row.id
+    },
+    getList1() {
+          this.loading1 = true;
+          this.queryParams1.happenStartTime = this.dateRange1.length > 0 && this.dateRange1[0]
+          this.queryParams1.happenEndTime = this.dateRange1.length > 0 && this.dateRange1[1]
+          listUserAll(this.queryParams1).then(response => {
+              this.listRoot = response.data.data;
+              const kon = {}
+              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,'userListuserListuserList')
+              this.loading1 = false;
+            }
+          );
+        },
+    // 纭鍒嗕韩
+    subShare(row) {
+      const shareList = {}
+      shareList.shareContents = this.id1 || this.ids;
+      shareList.shareIds = this.ids1
+      console.log(shareList,'sharelistsharelist')
+      this.$modal.confirm('鏄惁纭鍒嗕韩锛�').then(function() {
+        return share(shareList);
+      }).then(() => {
+
+        this.getList();
+        this.$modal.msgSuccess("鍒嗕韩鎴愬姛");
+        this.id1 = undefined
+        this.open1 = false;
+      }).catch(() => {});
+    },
+    // ------------------------------------------------------------------
+
+
     getInfo(){
           console.log('-----------------')
           getInfo().then(response=>{

--
Gitblit v1.9.1