From 228302bc93feabc7b51a965db4374781844cc033 Mon Sep 17 00:00:00 2001 From: linwenling <3256558519@qq.com> Date: 星期一, 24 七月 2023 23:20:30 +0800 Subject: [PATCH] 修改 --- ruoyi-ui/src/views/note/propertyInfo.vue | 201 +++++++++++++++++++++++++++++--------------------- 1 files changed, 117 insertions(+), 84 deletions(-) diff --git a/ruoyi-ui/src/views/note/propertyInfo.vue b/ruoyi-ui/src/views/note/propertyInfo.vue index 2058a66..424e0a2 100644 --- a/ruoyi-ui/src/views/note/propertyInfo.vue +++ b/ruoyi-ui/src/views/note/propertyInfo.vue @@ -2,19 +2,13 @@ <div class="app-container"> <div class="form-header mt"> <h4 class="dt h4">璧勪骇璇︾粏淇℃伅 </h4> - <el-button type="primary" class="pt" icon="el-icon-edit" @click="handleEdit()" :disabled="btn">缂栬緫</el-button> + </div> <el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px"> - <el-form-item label="id" prop="id"> - <el-input v-model="formData.id" placeholder="璇疯緭鍏d" :maxlength="11" show-word-limit :disabled="true" - clearable prefix-icon='el-icon-mobile' :style="{width: '100%'}"></el-input> - </el-form-item> - <el-form-item label="绫诲埆" prop="type"> - <el-select v-model="formData.type" placeholder="璇烽�夋嫨绫诲埆" clearable :style="{width: '100%'}" :disabled="dsb" > - <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label" :value="item.value" - :disabled="item.disabled"></el-option> - </el-select> + + <el-form-item label="绫诲瀷" prop="type"> + <el-input v-model="formData.type" placeholder="璇疯緭鍏ョ被鍨�" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> </el-form-item> <el-form-item label="鏍囬" prop="title"> <el-input v-model="formData.title" placeholder="璇疯緭鍏ユ爣棰�" clearable :style="{width: '100%'}" :disabled="dsb"></el-input> @@ -37,38 +31,39 @@ <h4 class="form-header">鐩稿叧鍥剧墖 </h4> <el-upload - action="#" - list-type="picture-card" - multiple - :http-request="requestUpload" - :file-list="fileList" + action="#" + list-type="picture-card" + multiple + :http-request="requestUpload" + :file-list="fileList" > - <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"> + <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 + v-if="isShow" class="el-upload-list__item-preview" @click="handlePictureCardPreview(file)" > <i class="el-icon-zoom-in"></i> </span> <span - v-if="!disabled" + v-if="isShow" class="el-upload-list__item-delete" @click="handleDownload(file.url)" > <i class="el-icon-download"></i> </span> <span - v-if="!disabled" + v-if="isShow" class="el-upload-list__item-delete" @click="handleRemove(file)" > @@ -77,8 +72,8 @@ </span> - </div> - </el-upload> + </div> + </el-upload> <h4 class="form-header">鍏朵粬闄勪欢 </h4> <el-upload @@ -86,28 +81,60 @@ :file-list="fileListOther" class="upload-demo" multiple - :on-preview="handlePreview" - + list-type="picture-card" + :on-preview="handleFileCardPreview" :on-remove="handleRemove" :http-request="requestUpload" :show-file-list="true" > - <el-button type="primary">Click to upload</el-button> - <template #tip> - <div class="el-upload__tip"> - </div> - </template> + + <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"> + <span + v-if="isShow" + class="el-upload-list__item-preview" + @click="handleFileCardPreview(file)" + > + <i class="el-icon-zoom-in"></i> + </span> + <span + v-if="isShow" + @click="handleRemove(file)" + class="el-upload-list__item-delete" + + > + <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> + + + </div> </el-upload> <el-form-item size="large"> - <el-button type="primary" @click="submitForm" :disabled="dsb">淇敼</el-button> + <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" alt="Preview Image" /> + <img w-full :src="dialogImageUrl" style="width: 700px; height: 700px" alt="Preview Image" /> </el-dialog> </div> </template> @@ -125,7 +152,7 @@ return { cdi:"璧勪骇璇︾粏淇℃伅", udi:"璧勪骇淇℃伅淇敼", - fot:[".jpg",".jif"], + fot:[".jpg",".jif",".png"], fileList:[ ], fileListOther:[ @@ -133,8 +160,9 @@ ], dsb:true, btn:false, + isShow:true, formData: { - id: undefined, + type: undefined, title: undefined, location: undefined, @@ -143,15 +171,12 @@ remark: undefined, url: undefined, }, - dialogImageUrl: '', - dialogVisible: false, - disabled: false, + desurl:'', + dialogImageUrl: '', + dialogVisible: false, + disabled: false, rules: { - id: [{ - required: true, - message: '璇疯緭鍏d', - trigger: 'blur' - }], + type: [{ required: true, message: '璇烽�夋嫨绫诲埆', @@ -177,11 +202,7 @@ message: '璇疯緭鍏ュ叿浣撲綅缃�', trigger: 'blur' }], - remark: [{ - required: true, - message: '璇疯緭鍏ュ娉�', - trigger: 'blur' - }], + }, typeOptions: [], @@ -197,12 +218,14 @@ jd = this.$route.query.detail this.btn= jd this.dsb = !jd + this.isShow=true document.title = "淇敼璧勪骇璇︾粏淇℃伅"; this.$route.meta.title = "淇敼璧勪骇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉� } else{ - document.title = "鏌ョ湅璧勪骇璇︾粏淇℃伅"; - this.$route.meta.title = "鏌ョ湅璧勪骇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉� + document.title = "瀹跺涵璧勪骇璇︾粏淇℃伅"; + this.$route.meta.title = "瀹跺涵璧勪骇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉� + this.isShow=true } let _this = this @@ -252,8 +275,8 @@ }).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 + }).join(",") + this.formData.url = ul+","+uls this.$refs['elForm'].validate(valid => { @@ -275,6 +298,12 @@ resetForm() { this.$refs['elForm'].resetFields() }, + handleFileCardPreview(file){ + this.dialogFileUrl = file.url; + 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'); + }, handlePreview(file) { let formData = {'path':"/"+file.url.replace(process.env.VUE_APP_BASE_TRUE_API,"")}; @@ -289,28 +318,36 @@ }) }, handleRemoveFile(file) { - alert(23) + for(let i = 0; i < this.fileListOther.length; i++) + { + if(this.fileListOther[i].url==file.url) + this.$delete(this.fileListOther,i); + } }, handleRemove(file) { - alert(323) - }, - handlePictureCardPreview(file) { - this.dialogImageUrl = file.url; - this.dialogVisible = true; - }, - handleDownload(url) { - var formData = {'path':"/"+url.replace(process.env.VUE_APP_BASE_TRUE_API,"")}; + for(let i = 0; i < this.fileList.length; i++) + { + if(this.fileList[i].url==file.url) + this.$delete(this.fileList,i); + } + }, + handlePictureCardPreview(file) { + this.dialogImageUrl = file.url; + this.dialogVisible = true; + }, + handleDownload(url) { + var formData = {'path':"/"+url.replace(process.env.VUE_APP_BASE_TRUE_API,"")}; - let lens = formData.path.split(".") - let suffix = lens[lens.length-1] - download(formData).then(async (response) => { - const isLogin = await blobValidate(response); - let nt = new Date().getTime() - let filename = 'property_'+nt+'.'+suffix - const blob = new Blob([response]) - saveAs(blob, filename) - }) - }, + let lens = formData.path.split(".") + let suffix = lens[lens.length-1] + download(formData).then(async (response) => { + const isLogin = await blobValidate(response); + let nt = new Date().getTime() + let filename = 'property_'+nt+'.'+suffix + const blob = new Blob([response]) + saveAs(blob, filename) + }) + }, handleEdit() { this.dsb = false @@ -325,16 +362,12 @@ 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) + if(_this.fot.indexOf(pth) !== -1) { - _this.fileList.push({name:response.data.fileName, "url":response.data.url}) - + _this.fileList.push({"name":response.data.fileName, "url":response.data.url}) } - else{ - _this.fileListOther.push({name:response.data.fileName, url:response.data.url}) - + _this.fileListOther.push({"name":response.data.fileName, "url":response.data.url}) } }) -- Gitblit v1.9.1