From 6378fa4ea01c8c6a92bd3bf710686f5deedf99dd Mon Sep 17 00:00:00 2001
From: yz3456 <2753272399@qq.com>
Date: 星期六, 06 四月 2024 17:45:29 +0800
Subject: [PATCH] 完善家庭会议模块

---
 ruoyi-ui/src/views/bignote/familyeventInfo.vue |  417 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 278 insertions(+), 139 deletions(-)

diff --git a/ruoyi-ui/src/views/bignote/familyeventInfo.vue b/ruoyi-ui/src/views/bignote/familyeventInfo.vue
index f487da1..9263d10 100644
--- a/ruoyi-ui/src/views/bignote/familyeventInfo.vue
+++ b/ruoyi-ui/src/views/bignote/familyeventInfo.vue
@@ -39,20 +39,25 @@
 <!--      <el-form-item label="鏄惁鏄湰瀹跺涵璁板綍" prop="ownData">-->
 <!--        <el-input  v-model="formData.ownData=== 1 ? '鏄�':'鍚�'" placeholder=" " clearable :style="{width: '100%'}" :disabled=true></el-input>-->
 <!--      </el-form-item>-->
-
+    <!--    :http-request="requestUpload" -->
 
       <h4 class="form-header">鐩稿叧鍥剧墖 </h4>
       <el-upload
         action="#"
         list-type="picture-card"
         multiple
-        :http-request="requestUpload"
+		ref="upload"
+		        :show-file-list="true"
+ :http-request="requestUpload"
         :file-list="fileList"
+      :on-change="handleChange"
+	  :auto-upload="false"
         :disabled="!btn"
         :class="{ hide: !btn }"
 
       >
-        <div v-if="uploading" class="upload-status">姝e湪涓婁紶...</div>
+
+  <!--      <div v-if="uploading" class="upload-status">姝e湪涓婁紶...</div> -->
         <i v-if="!uploading" slot="default" class="el-icon-plus"></i>
         <div slot="file" slot-scope="{file}">
           <img
@@ -89,34 +94,69 @@
 
 
         </div>
-      </el-upload>
 
+
+      </el-upload>
+		 <el-button
+		          style="margin-left: 10px"
+		          size="small"
+		          type="success"
+				  v-if="btn"
+		          @click="picUpload"
+		        >涓婁紶鍒版湇鍔″櫒</el-button>
       <h4 class="form-header">鍏朵粬闄勪欢 </h4>
+
+<!-- 	  <el-upload
+	         action="#"
+	         list-type="picture-card"
+	         multiple
+	  		ref="upload"
+
+	  :http-request="requestUpload"
+	         :file-list="fileList"
+	       :on-change="handleChange"
+	  	  :auto-upload="false"
+	         :disabled="!btn"
+	         :class="{ hide: !btn }"
+
+	       >
+	  -->
+
       <el-upload
-        action=""
-        :file-list="fileListOther"
-        class="upload-demo"
+        action="#"
         multiple
         list-type="picture-card"
-        :on-preview="handleFileCardPreview"
-        :on-remove="handleRemoveFile"
-        :http-request="requestUpload"
-        :show-file-list="true"
+			  		ref="upload1"
+   :on-remove="handleRemoveFile"
+        :http-request="requestUpload1"
+		       :file-list="fileListOther"
+		:on-change="handleChange1"
+				:auto-upload="false"
         :disabled="!btn"
+
         :class="{ hide: !btn }"
       >
-
-        <div v-if="uploading" class="upload-status">姝e湪涓婁紶...</div>
+<!--
+        <div v-if="uploading" class="upload-status">姝e湪涓婁紶...</div> -->
         <i v-if="!uploading" slot="default" class="el-icon-plus"></i>
         <div slot="file" slot-scope="{file}">
-          <img
+          <!-- 娣诲姞video鍏冪礌鐢ㄤ簬鏄剧ず瑙嗛 -->
+          <video
+            v-if="file.url.includes('.mp4')"
             class="el-upload-list__item-thumbnail"
-            src="../../assets/401_images/401.gif"
-            alt=""
+            :src="file.url"
             style="width: 147px; height: 147px"
             fit="cover"
-          >
+          ></video>
+          <img v-else
+               class="el-upload-list__item-thumbnail"
+               :src="file.url"
+               alt=""
+               style="width: 100%; height: 100%"
+               fit="cover">
+
           <span class="el-upload-list__item-actions">
+               <span class="el-upload-list__item-name">{{ file.name }}</span>
                     <span
                       class="el-upload-list__item-preview"
                       @click="handleFileCardPreview(file)"
@@ -137,21 +177,27 @@
                     >
                       <i class="el-icon-delete"></i>
                     </span>
-                  </span>
-
+              </span>
 
         </div>
 
 
       </el-upload>
-
+	 <el-button
+		          style="margin-left: 10px"
+		          size="small"
+		          type="success"
+		          v-if="btn"
+		          @click="fileUpload"
+		        >涓婁紶鍒版湇鍔″櫒</el-button>
+				      <h4 class="form-header"> </h4>
       <el-form-item size="large">
         <el-button v-if="isShow" type="primary" @click="submitForm" :disabled="dsb">淇敼</el-button>
       </el-form-item>
     </el-form>
 
     <el-dialog  :visible.sync="dialogVisible">
-      <img w-full :src="dialogImageUrl"    style="width: 700px; height: 700px" alt="Preview Image" />
+      <img w-full :src="dialogImageUrl"    style="width: 100%; height: 100%" alt="Preview Image" />
     </el-dialog>
   </div>
 </template>
@@ -173,6 +219,9 @@
 
       fileList:[
       ],
+	  fileList1:[],
+      uploadFileList:[],
+	  uploadFileList1:[],
       fileListOther:[
 
       ],
@@ -189,8 +238,9 @@
         people: undefined,
         address: undefined,
         remark: undefined,
-        url: undefined,
+        url: "",
       },
+	  ID: undefined,
       dialogImageUrl: '',
       url1:undefined,
       dialogVisible: false,
@@ -233,70 +283,72 @@
       this.btn= jd
       this.dsb = !jd
       this.isShow=true
-      document.title = "淇敼澶т簨璁拌缁嗕俊鎭�";
+     // document.title = "淇敼澶т簨璁拌缁嗕俊鎭�";
       this.$route.meta.title = "淇敼澶т簨璁拌缁嗕俊鎭�";//鍒楄〃鐨勫悕绉�
     }
     else{
-      document.title = "瀹跺ぇ浜嬭璇︾粏淇℃伅";
+    //  document.title = "瀹跺ぇ浜嬭璇︾粏淇℃伅";
       this.$route.meta.title = "瀹跺ぇ浜嬭璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
       this.btn = false;
       this.isShow=false
+     //       alert(this.btn)
     }
-
+	this.ID = id;
     let _this = this
     if (id) {
       this.loading = true;
       getFamilyeventInfo(id).then((response) => {
-        console.log("涓婇潰");
-        console.log(this.btn);
+        // console.log(response,'666666666')
         this.formData = response.data;
-        const url = this.formData.url;
-        // const url1 = url.replace(/^http:/, 'https:');
-        const url1 = url.replace(/http:\/\/47\.93\.189\.255:8080\//g, '');
-        this.formData.url = url1; // 鏇存柊 formData 瀵硅薄涓殑 url 瀛楁
-        console.log(url);
-        console.log(url1); // 杈撳嚭淇敼鍚庣殑 https URL
-        let paths = this.formData.url.split(","); // 淇姝ゅ
+        let paths = this.formData.url.split(",");
         for(let i = 0; i < paths.length; i++)
         {
           if(paths[i]!="") {
 
             let pth = paths[i].substr(paths[i].length - 4, paths[i].length)
-
+		//	alert(pth)
             if (_this.fot.includes(pth) === true)
-              _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i]})
+			{
+				if(paths[i][0]=="/")
+              _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false})
+			  else
+			     _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false})
+			  }
             else {
               // alert(paths[i])
+			 // alert()
               let nms = paths[i].split("\/")
               let nm = nms[nms.length - 1]
-              _this.fileListOther.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i]})
-            }
+			  if(paths[i][0]=="/")
+              _this.fileListOther.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false})
+				else
+				_this.fileListOther.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false})
+
+			}
           }
+		//  _this.fileList1 = _this.fileList
         }
+        this.loading = false;
       });
-      this.loading = false;
     }
   },
   mounted() {},
   methods: {
 
     submitForm() {
-      let ul = this.fileList.map(function (elem){
-        return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-      }).join(",")
-      let uls = this.fileListOther.map(function (elem){
-        return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-      }).join(",")
-      this.formData.url = ul+","+uls
+      // let ul = this.fileList.map(function (elem){
+      //   return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
+      // }).join(",")
+      // let uls = this.fileListOther.map(function (elem){
+      //   return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
+      // }).join(",")
+      // this.formData.url = ul+","+uls
 
       this.$refs['elForm'].validate(valid => {
-
-        console.log(this.formData)
         if (valid) {
           if (this.formData.id != undefined) {
             updateFamilyevent(this.formData).then(response => {
               this.$modal.msgSuccess("淇敼鎴愬姛");
-              // this.open = false;
               this.btn=false
             });
           } else {
@@ -323,43 +375,83 @@
       })
     },
     handleRemoveFile(file) {
+	  //鍒よ鏄惁鏄箣鍓嶇殑鍥剧墖
+	  let res = false
       for(let i = 0; i < this.fileListOther.length; i++)
       {
         if(this.fileListOther[i].url==file.url)
+		{
+			if(this.fileListOther[i].res==false)
+				res = true
+			else
+			{
+				this.$delete(this.uploadFileList1, Math.abs(i - this.uploadFileList1.length-1))
+			}
           this.$delete(this.fileListOther,i);
-        let ul = this.fileList.map(function (elem){
-          return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-        }).join(",")
-        let uls = this.fileListOther.map(function (elem){
-          return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-        }).join(",")
-        this.formData.url = ul+","+uls;
-        updateFamilyevent(this.formData).then(response => {
-          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-          // this.open = false;
-          // this.btn=false
-        });
+
+		}
       }
+
+	  let ul = ""
+	  this.fileList.map(function (elem){
+	  		if(elem.res==false)
+	  			ul = ul + ","+elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
+	  })
+	  let uls = ""
+	  this.fileListOther.map(function (elem){
+	    if(elem.res==false)
+	  			uls = uls +","+elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
+	  })
+	  this.formData.url = ul+","+uls;
+	//  alert(this.formData.url)
+	  if(res==true){
+		  updateFamilyevent(this.formData).then(response => {
+			this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+			// this.open = false;
+
+		  });
+	  }
     },
     handleRemove(file) {
+			  //鍒ゆ柇鏄惁鏄箣鍓嶇殑鍥剧墖
+	  let res = false
+	//  alert(this.fileList.length)
       for(let i = 0; i < this.fileList.length; i++)
       {
         if(this.fileList[i].url==file.url)
+		{
+			//鍘熸潵鍥惧儚鏍囪涓篺alse
+			//alert(this.fileList[i].res)
+		  if(this.fileList[i].res==false)
+			res = true
+		  else
+		  {
+			//  alert(this.uploadFileList.length)
+			//  alert(87)
+			 this.$delete(this.uploadFileList, Math.abs(i - this.uploadFileList.length-1))
+			 	//	  alert(this.uploadFileList.length)
+			 }
           this.$delete(this.fileList,i);
-        let ul = this.fileList.map(function (elem){
-          return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-        }).join(",")
-        let uls = this.fileListOther.map(function (elem){
-          return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-        }).join(",")
-        this.formData.url = ul+","+uls;
-        updateFamilyevent(this.formData).then(response => {
-          this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
-          // this.open = false;
-          // this.btn=false
-        });
 
       }
+	  }
+	  let ul = ""
+	  this.fileList.map(function (elem){
+		if(elem.res==false)
+			ul = ul + ","+elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
+	  })
+	  let uls = ""
+	  this.fileListOther.map(function (elem){
+	    if(elem.res==false)
+			uls = uls +","+elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
+	  })
+	  this.formData.url = ul+","+uls;
+	  if(res==true){
+		  updateFamilyevent(this.formData).then(response => {
+			this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+		  });
+	  }
+
     },
     handleFileCardPreview(file){
       this.dialogFileUrl = file.url;
@@ -398,78 +490,125 @@
       this.isShow=false
     },
 
-    requestUpload(params)
-    {
-      var file = params.file;
-      var formData = new FormData();
-      formData.append('uploadFile', file);
-      let _this = this
-      this.uploading1 = true;
+//鑷畾涔変笂浼犳柟娉�
+    handleChange(file, fileList1) {
+       //瀹氫箟涓�涓叏灞�鏁扮粍uploadFileList鏉ュ仛瀛樺偍
 
-      uploadPic(formData).then(response => {
-        let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
-        this.uploading1= false;
-        console.log(_this.fot.includes(pth))
-        // debugger
-        if(_this.fot.includes(pth) === true)
-        {
-          _this.fileList.push({name:response.data.fileName, "url":response.data.url})
-          let ul = this.fileList.map(function (elem){
-            return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-          }).join(",")
-          let uls = this.fileListOther.map(function (elem){
-            return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-          }).join(",")
-          this.formData.url = ul+","+uls
-          console.log(this.formData.url)
-          updateFamilyevent(this.formData).then(response => {
-            this.$modal.msgSuccess("鍥剧墖涓婁紶鎴愬姛");
+     // this.uploadFileList.push(file.raw);
+      console.log("=========5555=========")
+	  this.uploadFileList.push(file.raw);
+	   this.fileList.push({name:file.name,url:file.url,res:true})
+    },
+	//鑷畾涔変笂浼犳柟娉�
+	handleChange1(file, fileListOther1) {
+	       //瀹氫箟涓�涓叏灞�鏁扮粍uploadFileList鏉ュ仛瀛樺偍
+
+	     // this.uploadFileList.push(file.raw);
+		 this.uploadFileList1.push(file.raw);
+		  this.fileListOther.push({name:file.name,url:file.url,res:true})
+	      console.log("=========5555=========")
+	      //console.log(file)
+	    //  console.log(this.uploadFileList)
+		//  this.fileList = fileList
+	},
+	fileUpload(){
+	//	var file = params.file;
+
+		var formData = new FormData();
+		//this.$refs.upload1.submit();
+	//	alert(this.uploadFileList1.length)
+		// formData.append('uploadFile', file);
+		if(this.uploadFileList1.length==0){
+			  this.$modal.msgSuccess("鏂囨。涓婁紶鍒楄〃涓嶈兘涓虹┖锛�");
+			  return}
+
+		this.uploadFileList1.forEach((elem)=>{
+			formData.append("files", elem)
+
+		})
+		console.log(this.uploadFileList1)
+		let _this = this
+
+		this.uploading = true;
+		uploadPic(formData).then(response => {
+		_this.uploadFileList1 = []
+		  _this.formData.url = _this.formData.url+","+response.fileNames
+		    updateFamilyevent(_this.formData).then(response => {
+		      this.$modal.msgSuccess("鏂囨。涓婁紶鎴愬姛");
+		      // this.open = false;
+		    });
+		  })
+
+	},
+	picUpload()
+	{
+
+		var formData = new FormData();
+		//this.$refs.upload.submit();
+		//alert(this.uploadFileList.length)
+	if(this.uploadFileList.length==0){
+		  this.$modal.msgSuccess("鍥惧儚涓婁紶鍒楄〃涓嶈兘涓虹┖锛�");
+		  return}
+
+		this.uploadFileList.forEach((elem)=>{
+			formData.append("files", elem)
+
+		})
+		let _this = this
+
+
+        uploadPic(formData).then(response => {
+			// console.log(response.originalFilenames)
+			// console.log(response.urls)
+			// console.log(response.fileNames)
+			// 		console.log(response.newFileNames)
+        // let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
+        // _this.uploading1= false;
+        // console.log(_this.fot.includes(pth))
+        // // debugger
+        // if(_this.fot.includes(pth) === true)
+        // {
+        //   _this.fileList.push({name:response.data.fileName, "url":response.data.url})
+        //   let ul = _this.fileList.map(function (elem){
+        //     return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
+        //   }).join(",")
+        //   let uls = _this.fileListOther.map(function (elem){
+        //     return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
+        //   }).join(",")
+		//console.log(_this.fileList)
+	//	alert(response.fileNames)
+          _this.formData.url = _this.formData.url+","+response.fileNames
+
+		_this.uploadFileList = []
+         // alert(87)
+          updateFamilyevent(_this.formData).then(response => {
+            _this.$modal.msgSuccess("鍥剧墖涓婁紶鎴愬姛");
+
             // this.open = false;
-            // this.btn=false
-          });
-        }
-        else{
-          _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
 
-        }
-      })
+          });
+        // }
+        // else{
+        //   _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
+
+        // }
+      });
+	},
+     requestUpload(params)
+    {
+   //  alert(124)
+//	 this.uploadFileList.push(params.file);
+
+     //alert(34)
+
 
     },
     requestUpload1(params)
     {
-      var file = params.file;
-      var formData = new FormData();
-      formData.append('uploadFile', file);
-      let _this = this
-      this.uploading = true;
-      uploadPic(formData).then(response => {
-        let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
-        this.uploading = false;
-        // this.$modal.msgSuccess("涓婁紶鎴愬姛");
-        if(_this.fot.includes(pth) === true)
-        {
-          _this.fileList.push({name:response.data.fileName, "url":response.data.url})
-
-        }
-
-        else{
-          _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
-          let ul = this.fileList.map(function (elem){
-            return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-          }).join(",")
-          let uls = this.fileListOther.map(function (elem){
-            return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
-          }).join(",")
-          this.formData.url = ul+","+uls
-          console.log(this.formData.url)
-          updateFamilyevent(this.formData).then(response => {
-            this.$modal.msgSuccess("鏂囨。涓婁紶鎴愬姛");
-            // this.open = false;
-            // this.btn=false
-          });
-        }
-      })
-
+	//	alert(123)
+   // this.uploadFileList1.push(params.file);
+  //  console.log("-----------")
+	//console.log(this.uploadFileList1)
     },
 
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
@@ -496,7 +635,7 @@
   display: block;
 
 }
-.hide .el-upload--picture-card {
+.hide /deep/ .el-upload--picture-card {
   display: none;
 }
 .pt{

--
Gitblit v1.9.1