From 5416279140524175b03a4d45c0ed85341e90d6eb Mon Sep 17 00:00:00 2001
From: feige <791364011@qq.com>
Date: 星期一, 06 一月 2025 12:00:02 +0800
Subject: [PATCH] 修改旅游模块

---
 ruoyi-ui/src/views/travel/travelInfo.vue |  388 +++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 331 insertions(+), 57 deletions(-)

diff --git a/ruoyi-ui/src/views/travel/travelInfo.vue b/ruoyi-ui/src/views/travel/travelInfo.vue
index c993b20..70326d7 100644
--- a/ruoyi-ui/src/views/travel/travelInfo.vue
+++ b/ruoyi-ui/src/views/travel/travelInfo.vue
@@ -36,8 +36,11 @@
           </el-input>
         </el-form-item>
         <el-form-item label="浣忓璐圭敤" prop="stay">
-        <el-input v-model="formData.stay" placeholder="璇疯緭鍏ュ湴鐐�" type="number" clearable :style="{width: '100%'}" :disabled="dsb">
+        <el-input v-model="formData.stay" placeholder="璇疯緭鍏ヤ綇瀹胯垂鐢�" type="number" clearable :style="{width: '100%'}" :disabled="dsb">
         </el-input>
+		<el-form-item label="璐墿璐圭敤" prop="shop">
+		<el-input v-model="formData.shop" placeholder="璇疯緭鍏ヨ喘鐗╄垂鐢�" type="number" clearable :style="{width: '100%'}" :disabled="dsb">
+		</el-input>
       </el-form-item>
         <el-form-item label="椁愯垂" prop="eat">
         <el-input v-model="formData.eat" placeholder="璇疯緭鍏ュ湴鐐�"  type="number" clearable :style="{width: '100%'}" :disabled="dsb">
@@ -75,8 +78,15 @@
           action="#"
           list-type="picture-card"
           multiple
-          :http-request="requestUpload"
-          :file-list="fileList"
+
+
+
+		  ref="upload"
+		  		        :show-file-list="true"
+		  :http-request="requestUpload"
+		         :file-list="fileList"
+		       :on-change="handleChange"
+		  	  :auto-upload="false"
           :disabled="!btn"
           :class="{ hide: !btn }"
         >
@@ -118,7 +128,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=""
@@ -127,9 +143,17 @@
           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"
+
+		  		:on-change="handleChange1"
+		  				:auto-upload="false"
           :disabled="!btn"
           :class="{ hide: !btn }"
         >
@@ -146,7 +170,7 @@
             ></video>
             <img v-else
                  class="el-upload-list__item-thumbnail"
-                 src="../../assets/401_images/401.gif"
+                 src="../../assets/images/deviceLis.png"
                  alt=""
                  style="width: 147px; height: 147px"
                  fit="cover">
@@ -179,7 +203,14 @@
 
 
         </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>
@@ -208,12 +239,14 @@
     // 鏁版嵁鑼冨洿閫夐」
     fot:['.bmp','.jpg','.jpeg','.png','.tif','.gif','.pcx','.tga','.exif','.fpx',
       '.svg','.psd','.cdr','.pcd','.dxf','.ufo','.eps','.ai','.aw','.WMF','.webp','.apng'],
-    
+
       fileList:[
       ],
-      fileListOther:[
-
-      ],
+     fileList1:[],
+     uploadFileList:[],
+     uploadFileList1:[],
+     fileListOther:[],
+     fileListOther1:[],
       dsb:true,
       btn:false,
       isShow:true,
@@ -232,7 +265,7 @@
         stay:undefined,
         flight:undefined,
         document:undefined,
-        url: undefined,
+        url: "",
       },
       dialogImageUrl: '',
       dialogVisible: false,
@@ -297,19 +330,42 @@
         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)
+		    let pth = paths[i].substr(paths[i].length - 4, paths[i].length)
+		//	alert(pth)
+		    if (_this.fot.includes(pth) === true)
+			{
+				if(paths[i].includes("https"))
+		      _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()
+			   if(paths[i].includes("https"))
+			   _this.fileListOther.push({name:paths[i],url: paths[i],res:false})
+			   else{
+		      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})
 
-            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]})
-            }
-          }
+			}
+			}
+		  }
+
+
+
+
         }
         this.loading = false;
       });
@@ -317,6 +373,53 @@
   },
   mounted() {},
   methods: {
+    getData(){
+          const id = this.$route.params && this.$route.params.id;
+          let _this = this
+          if (id) {
+            this.loading = true;
+            getTravelBaseInfo(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)
+          	{
+          		if(paths[i].includes("https"))
+                _this.fileList.push({name:paths[i],url: paths[i],res:false})
+          	  else
+          	  {
+              console.log()
+          	  }
+          	  }
+              else {
+                // alert(paths[i])
+          	 // alert()
+          	   if(paths[i].includes("https"))
+          	   _this.fileListOther.push({name:paths[i],url: paths[i],res:false})
+          	   else{
+                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;
+            });
+          }
+    },
+
 
     submitForm() {
       let ul = this.fileList.map(function (elem){
@@ -363,20 +466,85 @@
         saveAs(blob, filename)
       })
     },
-    handleRemoveFile(file) {
-      for(let i = 0; i < this.fileListOther.length; i++)
-      {
-        if(this.fileListOther[i].url==file.url)
-          this.$delete(this.fileListOther,i);
-      }
-    },
-    handleRemove(file) {
-      for(let i = 0; i < this.fileList.length; i++)
-      {
-        if(this.fileList[i].url==file.url)
-          this.$delete(this.fileList,i);
-      }
-    },
+   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){
+     		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){
+   	  updateTravelBase(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){
+   	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){
+   	  updateTravelBase(this.formData).then(response => {
+   		this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+   	  });
+     }
+
+   },
     handleFileCardPreview(file){
       this.dialogFileUrl = file.url;
       // alert(file.url)
@@ -413,30 +581,128 @@
       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;
-        this.$modal.msgSuccess("涓婁紶鎴愬姛");
-        if(_this.fot.includes(pth) === true)
+
+    //鑷畾涔変笂浼犳柟娉�
+        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
+    		    updateTravelBase(_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)
+              updateTravelBase(_this.formData).then(response => {
+                _this.$modal.msgSuccess("鍥剧墖涓婁紶鎴愬姛");
+                // this.open = false;
+
+              });
+            // }
+            // else{
+            //   _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
+
+            // }
+          });
+    	},
+         requestUpload(params)
         {
-          _this.fileList.push({name:response.data.fileName, "url":response.data.url})
+       //  alert(124)
+    //	 this.uploadFileList.push(params.file);
 
-        }
+         //alert(34)
 
-        else{
-          _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
 
-        }
-      })
+        },
+        requestUpload1(params)
+        {
+    	//	alert(123)
+       // this.uploadFileList1.push(params.file);
+      //  console.log("-----------")
+    	//console.log(this.uploadFileList1)
+        },
 
-    },
 
     /** 瀵煎嚭鎸夐挳鎿嶄綔 */
     handleExport() {
@@ -451,6 +717,14 @@
 </script>
 
 <style scoped>
+	.el-table__row.statistics-warning-row {
+	  background: #E0EEFE;
+	
+	}
+	.el-table__row.statistics-warning-row1 {
+	  background: #FFEFF2;
+	
+	}
 .app-container{
   background-color: #FEF7FC;
 }

--
Gitblit v1.9.1