From 1a1654bbd7d91df6cf4864986748e0940907c8eb Mon Sep 17 00:00:00 2001
From: yz3456 <2753272399@qq.com>
Date: 星期六, 06 四月 2024 16:07:33 +0800
Subject: [PATCH] 修改了241之前的新bug
---
ruoyi-ui/src/views/doctor/doctorInfo.vue | 513 +++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 359 insertions(+), 154 deletions(-)
diff --git a/ruoyi-ui/src/views/doctor/doctorInfo.vue b/ruoyi-ui/src/views/doctor/doctorInfo.vue
index fcb338b..265a676 100644
--- a/ruoyi-ui/src/views/doctor/doctorInfo.vue
+++ b/ruoyi-ui/src/views/doctor/doctorInfo.vue
@@ -1,11 +1,15 @@
<template>
- <div class="app-container">
+ <div class="app-container" id="printable-content">
<div class="form-header mt">
- <h4 class="dt h4">灏卞尰璁板綍璇︾粏淇℃伅 </h4>
-<!-- <el-button v-if="isShow" type="primary" class="pt" icon="el-icon-edit" @click="handleEdit()" >缂栬緫</el-button>-->
- <!-- <br>-->
- <!-- <el-button type="primary" class="pt" @click="handleExport"-->
- <!-- v-hasPermi="['self:user:export']" >瀵煎嚭</el-button>-->
+ <h1 style="font-size:21px;padding-top:30px;display: flex;justify-content: space-between;align-items: center;" >
+ <span>灏卞尰璁板綍璇︾粏淇℃伅</span>
+ <div style="display: flex; align-items: center;">
+ <el-button size="mini" type="text" v-print="'#printable-content'" v-hasPermi="['person:information:memo']">
+ <div class="form" ><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>
</div>
<div>
<el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-position="left" label-width="100px">
@@ -77,75 +81,102 @@
</el-container>
</div>
</el-container>
- <h4 class="form-header">鐢靛瓙鏂囦欢 </h4>
- <el-upload
- action="#"
- list-type="picture-card"
- multiple
- :http-request="requestUpload"
- :file-list="fileList"
+ <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"
+ :on-change="handleChange"
+ :auto-upload="false"
+ :disabled="!btn"
+ :class="{ hide: !btn }"
+ >
+
+ <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"
+ fit="cover"
+ :preview-src-list="[file.url]"
+ >
+ <span class="el-upload-list__item-actions">
+ <span
+
+ class="el-upload-list__item-preview"
+ @click="handlePictureCardPreview(file)"
>
- <i 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"
- fit="cover"
- :preview-src-list="[file.url]"
- >
- <span class="el-upload-list__item-actions" >
- <span
+ <i class="el-icon-zoom-in"></i>
+ </span>
+ <span
- class="el-upload-list__item-preview"
- @click="handlePictureCardPreview(file)"
- >
- <i class="el-icon-zoom-in"></i>
- </span>
- <span
-
- 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="handleRemove(file)"
- >
- <i class="el-icon-delete"></i>
- </span>
- </span>
-
-
- </div>
- </el-upload>
-
- <h4 class="form-header">鍏朵粬闄勪欢 </h4>
- <el-upload
- action=""
- :file-list="fileListOther"
- class="upload-demo"
- multiple
- list-type="picture-card"
- :on-preview="handleFileCardPreview"
- :on-remove="handleRemoveFile"
- :http-request="requestUpload"
- :show-file-list="true"
+ 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="handleRemove(file)"
+ >
+ <i class="el-icon-delete"></i>
+ </span>
+ </span>
- <i slot="default" class="el-icon-plus"></i>
- <div slot="file" slot-scope="{file}">
- <img
- 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">
+
+ </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=""
+ :file-list="fileListOther"
+ class="upload-demo"
+ multiple
+ list-type="picture-card"
+ :on-preview="handleFileCardPreview"
+ :on-remove="handleRemoveFile"
+ :http-request="requestUpload1"
+ :show-file-list="true"
+
+
+ ref="upload1"
+ :on-change="handleChange1"
+ :auto-upload="false"
+ :disabled="!btn"
+ :class="{ hide: !btn }"
+ >
+ <i v-if="!uploading1" slot="default" class="el-icon-plus"></i>
+ <div slot="file" slot-scope="{file}">
+ <!-- 娣诲姞video鍏冪礌鐢ㄤ簬鏄剧ず瑙嗛 -->
+ <video
+ v-if="file.url.includes('.mp4')"
+ class="el-upload-list__item-thumbnail"
+ :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 class="el-upload-list__item-name">{{ file.name }}</span>
<span
class="el-upload-list__item-preview"
@click="handleFileCardPreview(file)"
@@ -166,21 +197,27 @@
>
<i class="el-icon-delete"></i>
</span>
- </span>
+ </span>
+
+ </div>
- </div>
-
-
- </el-upload>
-
+ </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>
</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>
</div>
</template>
@@ -199,13 +236,22 @@
return {
cdi:"灏卞尰璁板綍璇︾粏淇℃伅",
udi:"灏卞尰璁板綍淇℃伅璇︽儏",
+ // 鏁版嵁鑼冨洿閫夐」
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:[
+
+ ],
dsb:true,
btn:false,
isShow:true,
+ uploading: false,
+ uploading1: false,
// 灏卞尰璁板綍琛ㄦ牸鏁版嵁
doctorList: [],
typeList:[],
@@ -220,8 +266,9 @@
effect:undefined,
suitable:undefined,
remark:undefined,
- url: undefined,
+ url: "",
},
+ desurl:'',
dialogImageUrl: '',
dialogVisible: false,
disabled: false,
@@ -286,13 +333,14 @@
this.dsb = !jd
this.isShow=true
this.showInput=true
- document.title = "淇敼灏卞尰璁板綍璇︾粏淇℃伅";
+ // document.title = "淇敼灏卞尰璁板綍璇︾粏淇℃伅";
this.$route.meta.title = "淇敼灏卞尰璁板綍璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
}
else{
- document.title = "灏卞尰璁板綍璇︾粏淇℃伅";
+ // document.title = "灏卞尰璁板綍璇︾粏淇℃伅";
this.$route.meta.title = "灏卞尰璁板綍璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
this.isShow=false
+ this.btn = false;
}
let _this = this
@@ -304,18 +352,28 @@
for(let i = 0; i < paths.length; 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})
+ }
+ 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,17 +392,6 @@
},
mounted() {},
methods: {
- /** 鏌ヨ绫诲埆淇℃伅 */
- // getCateInfor()
- // {
- // let _this = this
- // getCategory().then(response=>{
- //
- // response.data.itemValues.replace("{","").replace("}","").split(",").map(elem=>{
- // _this.typeOptions.push({"label":elem.split(":")[0], "value":elem.split(":")[0]})
- // })
- // })
- // },
//绫诲埆
addNewOption() {
const newOption = this.newOption.trim();
@@ -371,13 +418,7 @@
},
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
+
this.$refs['elForm'].validate(valid => {
@@ -412,25 +453,94 @@
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);
- }
+ 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){
+ updateDoctor(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){
+ updateDoctor(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;
@@ -452,39 +562,128 @@
handleEdit()
{
this.dsb = false
- // this.btn = true
+ this.btn = true
this.isShow=false
},
- requestUpload(params)
- {
- var file = params.file;
- var formData = new FormData();
- formData.append('uploadFile', file);
- let _this = this
-
- uploadPic(formData).then(response => {
- let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length)
-
- 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, 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
+ updateDoctor(_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)
+ updateDoctor(_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})
-
- }
-
- else{
- _this.fileListOther.push({name:response.data.fileName, url:response.data.url})
-
- }
- })
-
- },
-
- /** 瀵煎嚭鎸夐挳鎿嶄綔 */
- handleExport() {
- this.download('/zfDoctor/export', {
- ...this.queryParams
- }, `zfDoctor_${new Date().getTime()}.xlsx`)
- }
+ // alert(124)
+ // this.uploadFileList.push(params.file);
+
+ //alert(34)
+
+
+ },
+ requestUpload1(params)
+ {
+ // alert(123)
+ // this.uploadFileList1.push(params.file);
+ // console.log("-----------")
+ //console.log(this.uploadFileList1)
+ },
}
}
@@ -509,4 +708,10 @@
display: block;
position: absolute;
}
+.hide /deep/ .el-upload--picture-card {
+ display: none;
+}
+.form{
+ background:center/11% no-repeat url('../../assets/icons/form.png') ;
+}
</style>
--
Gitblit v1.9.1