From 43e1199ca0c75787fb6b52bef7d595abd115ceab Mon Sep 17 00:00:00 2001
From: feige <791364011@qq.com>
Date: 星期四, 02 一月 2025 21:44:58 +0800
Subject: [PATCH] 修改bug

---
 ruoyi-ui/src/views/wish/wishInfo.vue |  427 ++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 310 insertions(+), 117 deletions(-)

diff --git a/ruoyi-ui/src/views/wish/wishInfo.vue b/ruoyi-ui/src/views/wish/wishInfo.vue
index fd71a56..81d1508 100644
--- a/ruoyi-ui/src/views/wish/wishInfo.vue
+++ b/ruoyi-ui/src/views/wish/wishInfo.vue
@@ -84,6 +84,10 @@
           multiple
           :http-request="requestUpload"
           :file-list="fileList"
+		  :show-file-list="true"
+
+		       :on-change="handleChange"
+		  	  :auto-upload="false"
           :disabled="!btn"
           :class="{ hide: !btn }"
         >
@@ -125,7 +129,13 @@
 
           </div>
         </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=""
@@ -137,23 +147,35 @@
           :on-remove="handleRemoveFile"
           :http-request="requestUpload1"
           :show-file-list="true"
+
+		:on-change="handleChange1"
+		:auto-upload="false"
           :disabled="!btn"
           :class="{ hide: !btn }"
         >
           <div v-if="uploading1" class="upload-status">姝e湪涓婁紶...</div>
           <i v-if="!uploading1" 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=""
-              style="width: 100%; height: 100%; object-fit: cover;"
+              :src="file.url"
+              style="width: 147px; height: 147px"
               fit="cover"
-            >
+            ></video>
+            <img v-else
+                 class="el-upload-list__item-thumbnail"
+                 src="../../assets/images/deviceLis.png"
+                 alt=""
+                 style="width: 147px; height: 147px"
+                 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)"
+                      class="el-upload-list__item-preview"
+                      @click="handleFileCardPreview(file)"
                     >
                       <i class="el-icon-zoom-in"></i>
                     </span>
@@ -171,14 +193,19 @@
                     >
                       <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>
@@ -186,7 +213,7 @@
     </div>
 
     <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>
 
 
@@ -208,9 +235,16 @@
     return {
       cdi:"鐧惧勾蹇冩効璇︾粏淇℃伅",
       udi:"鐧惧勾蹇冩効淇℃伅璇︽儏",
-      fot:[".jpg",".jif"],
+     // 鏁版嵁鑼冨洿閫夐」
+     fot:['.bmp','.jpg','.jpeg','.png','.tif','.gif','.pcx','.tga','.exif','.fpx',
+       '.svg','.psd','.cdr','.pcd','.dxf','.ufo','.eps','.ai','.aw','.WMF','.webp','.apng'],
+
       fileList:[],
+      fileList1:[],
+      uploadFileList:[],
+      uploadFileList1:[],
       fileListOther:[],
+      fileListOther1:[],
       dsb:true,
       btn:false,
       isShow:true,
@@ -230,7 +264,7 @@
         difficulty:undefined,
         isEffective:undefined,
         remark:undefined,
-        url: undefined,
+        url: "",
       },
       desurl:'',
       dialogImageUrl: '',
@@ -294,11 +328,11 @@
       jd =  this.$route.query.detail
       this.btn= jd
       this.dsb = !jd
-      document.title = "淇敼鐧惧勾蹇冩効璇︾粏淇℃伅";
+     // document.title = "淇敼鐧惧勾蹇冩効璇︾粏淇℃伅";
       this.$route.meta.title = "淇敼鐧惧勾蹇冩効璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
     }
     else{
-      document.title = "鐧惧勾蹇冩効璇︾粏淇℃伅";
+     // document.title = "鐧惧勾蹇冩効璇︾粏淇℃伅";
       this.$route.meta.title = "鐧惧勾蹇冩効璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
       this.isShow=false
       this.btn = false;
@@ -312,19 +346,43 @@
         let paths = response.data.url.split(",");
         for(let i = 0; i < paths.length; i++)
         {
-          if(paths[i]!="") {
+       if(paths[i]!="") {
 
-            let pth = paths[i].substr(paths[i].length - 4, paths[i].length)
-
-            if (_this.fot.includes(pth) === true)
-              _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i]})
-            else {
-              // alert(paths[i])
-              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]})
-            }
+           let pth = paths[i].substr(paths[i].length - 4, paths[i].length)
+       //	alert(pth)
+           if (_this.fot.includes(pth) === true)
+       	// {
+       	// 	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})
+       	//   }
+        {
+          if(paths[i].includes(process.env.VUE_APP_BASE_TRUE_API)){
+            if(paths[i][0]=="/")
+                  _this.fileList.push({name:paths[i],url: paths[i].substr(1),res:false})
+            else
+               _this.fileList.push({name:paths[i],url: paths[i],res:false})
+          }else{
+            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]
+       	  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.loading = false;
       });
@@ -334,6 +392,44 @@
   },
   mounted() {},
   methods: {
+    getData(){
+      const id = this.$route.params && this.$route.params.id;
+      let _this = this
+      if (id) {
+        this.loading = true;
+        getWish({id}).then((response) => {
+          this.formData = response.data;
+          let paths = response.data.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)
+         	{
+          console.log()
+         	  }
+             else {
+               // alert(paths[i])
+         	 // alert()
+               let nms = paths[i].split("\/")
+               let nm = nms[nms.length - 1]
+         	  if(paths[i][0]=="/")
+               _this.fileListOther1.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false})
+         		else
+         		_this.fileListOther1.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false})
+
+         	}
+           }
+          }
+          _this.fileListOther = _this.fileListOther1
+          this.loading = false;
+        });
+        // this.getCateInfor()
+
+      }
+    },
     submitForm() {
       let ul = this.fileList.map(function (elem){
         return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")
@@ -381,48 +477,93 @@
       })
     },
     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;
-        updateWish(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){
+    	  updateWish(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;
-        updateWish(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){
+    	  updateWish(this.formData).then(response => {
+    		this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+    	  });
+      }
+
     },
     handleFileCardPreview(file){
       this.dialogFileUrl = file.url;
+      if(this.dialogFileUrl.includes("47.93.189.255")==true)
+        this.dialogFileUrl = this.dialogFileUrl.replace("47.93.189.255","www.bendudu.com")
+
       const Base64 = require('js-base64').Base64
-      this.desurl = process.env.VUE_APP_BASE_OTHER_API+'onlinePreview?url='+encodeURIComponent(Base64.encode(this.dialogFileUrl));
-      myWindow=window.open(this.desurl,'','width=1200,height=800,top=150,left=300');
+
+      this.desurl = process.env.VUE_APP_BASE_OTHER_API+"preview/"+'onlinePreview?url='+encodeURIComponent(Base64.encode(this.dialogFileUrl));
+      let myWindow=window.open(this.desurl,'','width=1200,height=800,top=150,left=300');
     },
     handlePictureCardPreview(file) {
       this.dialogImageUrl = file.url;
@@ -447,74 +588,126 @@
       this.btn = true
       this.isShow=false
     },
-    requestUpload(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;
-        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)
-          updateWish(this.formData).then(response => {
-            this.$modal.msgSuccess("鍥剧墖涓婁紶鎴愬姛");
+//鑷畾涔変笂浼犳柟娉�
+    handleChange(file, fileList1) {
+       //瀹氫箟涓�涓叏灞�鏁扮粍uploadFileList鏉ュ仛瀛樺偍
+
+     // 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, fileListOther12) {
+	       //瀹氫箟涓�涓叏灞�鏁扮粍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
+		    updateWish(_this.formData).then(response => {
+		      this.$modal.msgSuccess("鏂囨。涓婁紶鎴愬姛");
+		      // this.open = false;
+          this.getData()
+          this.fileListOther1=[]
+		    });
+		  })
+
+	},
+	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)
+          updateWish(_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.uploading1 = true;
-      uploadPic(formData).then(response => {
-        let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
-        this.uploading1 = 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)
-          updateWish(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)
     },
 
   }
@@ -540,7 +733,7 @@
   display: block;
   position: absolute;
 }
-.hide .el-upload--picture-card {
+.hide /deep/ .el-upload--picture-card {
   display: none;
 }
 .form{

--
Gitblit v1.9.1