From 81475c257b068c74f335024f7a15359a03cad8e8 Mon Sep 17 00:00:00 2001
From: yz3456 <2753272399@qq.com>
Date: 星期三, 01 五月 2024 14:07:05 +0800
Subject: [PATCH] 修改备忘录其他附件背景图

---
 ruoyi-ui/src/views/honor/honorInfo.vue |  436 +++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 348 insertions(+), 88 deletions(-)

diff --git a/ruoyi-ui/src/views/honor/honorInfo.vue b/ruoyi-ui/src/views/honor/honorInfo.vue
index 1c0f243..fd04a1c 100644
--- a/ruoyi-ui/src/views/honor/honorInfo.vue
+++ b/ruoyi-ui/src/views/honor/honorInfo.vue
@@ -89,21 +89,25 @@
         <h4 class="form-header">鐩稿叧鍥剧墖 </h4>
         <el-upload
           action="#"
+          accept="image/jpeg, image/png,image/jpg, image/WMF,image/gif"
           list-type="picture-card"
           multiple
-          :http-request="requestUpload"
-          :file-list="fileList"
+
+		  :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>
           <i v-if="!uploading" slot="default" class="el-icon-plus"></i>
           <div slot="file" slot-scope="{file}">
             <img
               class="el-upload-list__item-thumbnail"
               :src="file.url"
               alt=""
-              style="width: 147px; height: 147px"
+              style="width: 147px; height: 147px; object-fit: cover;"
               fit="cover"
               :preview-src-list="[file.url]"
             >
@@ -132,7 +136,13 @@
       </span>
           </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=""
@@ -142,50 +152,70 @@
           list-type="picture-card"
           :on-preview="handleFileCardPreview"
           :on-remove="handleRemoveFile"
-          :http-request="requestUpload"
+          :http-request="requestUpload1"
           :show-file-list="true"
+
+
+		  ref="upload1"
+		  		:on-change="handleChange1"
+		  				:auto-upload="false"
           :disabled="!btn"
           :class="{ hide: !btn }"
         >
-          <div v-if="uploading" class="upload-status">姝e湪涓婁紶...</div>
-          <i v-if="!uploading" slot="default" class="el-icon-plus"></i>
+          <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=""
+              :src="file.url"
               style="width: 147px; height: 147px"
               fit="cover"
-            >
+            ></video>
+            <img v-else
+                 class="el-upload-list__item-thumbnail"
+                 src="../../assets/401_images/401.gif"
+                 alt=""
+                 style="width: 147px; height: 147px"
+                 fit="cover">
+
             <span class="el-upload-list__item-actions">
-                <span
+               <span class="el-upload-list__item-name">{{ file.name }}</span>
+                    <span
+                      class="el-upload-list__item-preview"
+                      @click="handleFileCardPreview(file)"
+                    >
+                      <i class="el-icon-zoom-in"></i>
+                    </span>
+                    <span
 
-                  class="el-upload-list__item-preview"
-                  @click="handleFileCardPreview(file)"
-                >
-                  <i class="el-icon-zoom-in"></i>
-                </span>
-                <span
-
-                  class="el-upload-list__item-delete"
-                  @click="handleDownload(file.url)"
-                >
+                      class="el-upload-list__item-delete"
+                      @click="handleDownload(file.url)"
+                    >
                  <i class="el-icon-download"></i>
                  </span>
-                <span
-                  v-if="isShow"
-                  class="el-upload-list__item-delete"
-                  @click="handleRemoveFile(file)"
-                >
-                  <i class="el-icon-delete"></i>
-                </span>
+                    <span
+                      v-if="isShow"
+                      class="el-upload-list__item-delete"
+                      @click="handleRemoveFile(file)"
+                    >
+                      <i class="el-icon-delete"></i>
+                    </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>
@@ -193,7 +223,7 @@
       </el-form>
     </div>
     <el-dialog  :visible.sync="dialogVisible">
-      <img w-full :src="dialogImageUrl" alt="Preview Image" />
+      <img w-full :src="dialogImageUrl" style="width: 100%; height: 100%" alt="Preview Image" />
     </el-dialog>
   </div>
 </template>
@@ -205,6 +235,7 @@
 import {Message} from "element-ui";
 import { download,uploadPic} from "@/api/doctor/index";
 import {updateHonor,getHonor,getCategory, listType} from "@/api/honor/index";
+import {updateCollection} from "@/api/collection";
 
 export default {
   components: {},
@@ -213,14 +244,24 @@
     return {
       cdi:"鑽h獕璇佷功璇︾粏淇℃伅",
       udi:"鑽h獕璇佷功淇℃伅璇︽儏",
-      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:[],
-      fileListOther:[],
+
+
+	  fileList1:[],
+	  uploadFileList:[],
+	  uploadFileList1:[],
+	  fileListOther:[],
+    	  fileListOther1:[],
       dsb:true,
       btn:false,
       isShow:true,
       isEditing: false,
       uploading: false,
+      uploading1: false,
       // 鑽h獕琛ㄦ牸鏁版嵁
       honorList: [],
       typeList:[],
@@ -236,7 +277,7 @@
         getDate:undefined,
         location:undefined,
         remark:undefined,
-        url: undefined,
+        url: '',
       },
       desurl:'',
       dialogImageUrl: '',
@@ -318,11 +359,12 @@
       this.isShow=true
       this.showInput=true
       this.isEditing=true
-      document.title = "淇敼鑽h獕璇佷功璇︾粏淇℃伅";
+
+   //   document.title = "淇敼鑽h獕璇佷功璇︾粏淇℃伅";
       this.$route.meta.title = "淇敼鑽h獕璇佷功璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
     }
     else{
-      document.title = "鏌ョ湅鑽h獕璇佷功璇︾粏淇℃伅";
+    //  document.title = "鏌ョ湅鑽h獕璇佷功璇︾粏淇℃伅";
       this.$route.meta.title = "鏌ョ湅鑽h獕璇佷功璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
       this.isShow=false
       this.btn = false;
@@ -333,22 +375,33 @@
       this.loading = true;
       getHonor({id}).then((response) => {
         this.formData = response.data;
+      //    alert(this.formData.type)
         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)
+              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})
+          	  }
+              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})
 
-            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;
       });
@@ -369,9 +422,58 @@
   },
   mounted() {},
   methods: {
+    getData(){
+      const id = this.$route.params && this.$route.params.id;
+      let _this = this
+      if (id) {
+        this.loading = true;
+        getHonor({id}).then((response) => {
+          this.formData = response.data;
+        //    alert(this.formData.type)
+          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;
+        });
+        listType(this.queryParams).then(response => {
+            this.typeList = response.data;
+            this.total = response.data.total;
+            // console.log( this.typeList )
+            // 鍦ㄥ洖璋冨嚱鏁颁腑璋冪敤 getTypeOptions()
+            this.getTypeOptions();
+            this.loading = false;
+          }
+        );
+        this.fetchData()
+        // this.getCateInfor()
+
+      }
+    },
     // 鑾峰彇鏁版嵁鏂规硶
     fetchData(id) {
-      const url = 'http://47.93.189.255:8080/zHonor/id=${id}'; // 鎺ュ彛 URL'/zHonor/id='+query
+      const url = 'https://47.93.189.255:8080/zHonor/id=${id}'; // 鎺ュ彛 URL'/zHonor/id='+query
       fetch(url)
         .then(response => response.json())
         .then(data => {
@@ -386,7 +488,7 @@
       const newOption = this.newOption.trim();
       if (newOption && !this.typeOptions.includes(newOption)) {
         this.typeOptions.push(newOption);
-        this.$set(this.formData, 'type', newOption); // 鏇存柊formDat.type鐨勫�间负鏂扮殑閫夐」
+        this.$set(this.formData, 'name', newOption); // 鏇存柊formDat.type鐨勫�间负鏂扮殑閫夐」
       }
     },
     getTypeOptions() {
@@ -482,24 +584,93 @@
       })
     },
     handleRemoveFile(file) {
-      for(let i = 0; i < this.fileListOther.length; i++)
-      {
-        if(this.fileListOther[i].url==file.url)
-          this.$delete(this.fileListOther,i);
-      }
+      //鍒よ鏄惁鏄箣鍓嶇殑鍥剧墖
+        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){
+      	  updateHonor(this.formData).then(response => {
+      		this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+      		// this.open = false;
+
+      	  });
+        }
     },
     handleRemove(file) {
-      for(let i = 0; i < this.fileList.length; i++)
-      {
-        if(this.fileList[i].url==file.url)
-          this.$delete(this.fileList,i);
-      }
+      //鍒ゆ柇鏄惁鏄箣鍓嶇殑鍥剧墖
+        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){
+      	  updateHonor(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;
@@ -521,40 +692,129 @@
     handleEdit()
     {
       this.dsb = false
-      // this.btn = true
+      this.btn = true
       this.isShow=false
     },
-    requestUpload(params)
+//鑷畾涔変笂浼犳柟娉�
+    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, 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
+		    updateHonor(_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)
+          updateHonor(_this.formData).then(response => {
+            _this.$modal.msgSuccess("鍥剧墖涓婁紶鎴愬姛");
+            // this.open = false;
+
+          });
+        // }
+        // else{
+        //   _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
+
+        // }
+      });
+	},
+     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)
-        {
-          _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})
-
-        }
-      })
 
     },
-
-    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
-    handleExport() {
-      this.download('/zHonor/export', {
-        ...this.queryParams
-      }, `zfHonor_${new Date().getTime()}.xlsx`)
-    }
+    requestUpload1(params)
+    {
+	//	alert(123)
+   // this.uploadFileList1.push(params.file);
+  //  console.log("-----------")
+	//console.log(this.uploadFileList1)
+    },
 
   }
 }
@@ -579,7 +839,7 @@
   display: block;
   position: absolute;
 }
-.hide .el-upload--picture-card {
+.hide /deep/ .el-upload--picture-card {
   display: none;
 }
 .form{

--
Gitblit v1.9.1