From 1eb1522eb39f58603155302f072e2ead3045d2ef Mon Sep 17 00:00:00 2001
From: feige <feige@qq.com>
Date: 星期二, 25 十一月 2025 09:57:49 +0800
Subject: [PATCH] 修改信息
---
ruoyi-ui/src/views/note/propertyInfo.vue | 493 +++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 388 insertions(+), 105 deletions(-)
diff --git a/ruoyi-ui/src/views/note/propertyInfo.vue b/ruoyi-ui/src/views/note/propertyInfo.vue
index f280734..f7ffcfb 100644
--- a/ruoyi-ui/src/views/note/propertyInfo.vue
+++ b/ruoyi-ui/src/views/note/propertyInfo.vue
@@ -1,22 +1,34 @@
<template>
- <div class="app-container">
- <div class="form-header mt">
+ <div class="app-container" id="printable-content">
+ <div class="form-header mt" >
<h1 style="font-size:21px;padding-top:30px;display: flex;justify-content: space-between;align-items: center;">
- <span>瀹跺涵璧勪骇璇︽儏</span>
+ <span>瀹朵骇璇︽儏</span>
<div style="display: flex; align-items: center;">
- <el-button size="mini" type="text" @click="checkNote()" v-hasPermi="['person:information:memo']">
+ <el-button size="mini" type="text" @click="checkNote" v-hasPermi="['person:information:memo']">
<div class="form" ><el-icon style="padding-right:110px;"></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>
+ <el-button size="mini" type="text" v-print="'#printable-content'" v-hasPermi="['person:information:memo']">
+ <div class="form" ><el-icon style="padding-right:110px;"></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>
- <el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px">
+ <el-form ref="elForm" :model="formData" :rules="rules" size="medium" label-width="100px">
<el-form-item label="绫诲瀷" prop="type">
- <el-input v-model="formData.type" placeholder="璇疯緭鍏ョ被鍨�" clearable :style="{width: '100%'}" :disabled="dsb"></el-input>
+ <el-select v-model="formData.type" placeholder="璇烽�夋嫨绫诲埆" allow-create
+ filterable 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>
<el-form-item label="鍙戠敓鏃堕棿" prop="happenTime" >
@@ -44,15 +56,23 @@
<el-input v-model="formData.remark" placeholder="璇疯緭鍏ュ娉�" clearable :style="{width: '100%'}" :disabled="dsb"></el-input>
</el-form-item>
+
<h4 class="form-header">鐩稿叧鍥剧墖 </h4>
<el-upload
+
action="#"
list-type="picture-card"
multiple
:http-request="requestUpload"
:file-list="fileList"
+ :on-change="handleChange"
+ ref="upload"
+ :auto-upload="false"
+ :disabled="!btn"
+ :class="{hide:!btn}"
>
- <i slot="default" class="el-icon-plus"></i>
+
+ <i v-if="!uploading" slot="default" class="el-icon-plus"></i>
<div slot="file" slot-scope="{file}">
<img
class="el-upload-list__item-thumbnail"
@@ -64,14 +84,14 @@
>
<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="isShow"
+
class="el-upload-list__item-delete"
@click="handleDownload(file.url)"
>
@@ -89,66 +109,90 @@
</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="requestUpload"
- :show-file-list="true"
+ :http-request="requestUpload1"
+
+ :on-change="handleChange1"
+ :auto-upload="false"
+ :disabled="!btn"
+ :class="{hide:!btn}"
+
+
>
- <i slot="default" class="el-icon-plus"></i>
+ <i v-if="!uploading" 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/images/deviceLis.png"
+ alt=""
+ style="width: 147px; height: 147px"
+ >
+
<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"
- class="el-upload-list__item-delete"
- @click="handleDownload(file.url)"
- >
+ <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-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>
</el-form-item>
</el-form>
<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>
@@ -166,15 +210,23 @@
return {
cdi:"璧勪骇璇︾粏淇℃伅",
udi:"璧勪骇淇℃伅淇敼",
- fot:[".jpg",".jif",".png"],
+ // 鏁版嵁鑼冨洿閫夐」
+ 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,
+ uploading: false,
formData: {
type: undefined,
@@ -183,7 +235,7 @@
holder: undefined,
address: undefined,
remark: undefined,
- url: undefined,
+ url: "",
},
desurl:'',
dialogImageUrl: '',
@@ -194,7 +246,7 @@
type: [{
required: true,
message: '璇烽�夋嫨绫诲埆',
- trigger: 'change'
+ trigger: 'blur'
}],
title: [{
required: true,
@@ -233,13 +285,15 @@
this.btn= jd
this.dsb = !jd
this.isShow=true
- document.title = "淇敼璧勪骇璇︾粏淇℃伅";
- this.$route.meta.title = "淇敼璧勪骇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
+ // document.title = "淇敼璧勪骇璇︾粏淇℃伅";
+ this.$route.meta.title = "淇敼瀹朵骇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
}
else{
- document.title = "瀹跺涵璧勪骇璇︾粏淇℃伅";
- this.$route.meta.title = "瀹跺涵璧勪骇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
- this.isShow=true
+ // document.title = "瀹跺涵璧勪骇璇︾粏淇℃伅";
+ this.$route.meta.title = "瀹朵骇璇︾粏淇℃伅";//鍒楄〃鐨勫悕绉�
+ this.btn = false;
+ // alert(this.btn)
+ this.isShow=false
}
let _this = this
@@ -250,20 +304,44 @@
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;
});
this.getCateInfor()
@@ -272,25 +350,56 @@
},
mounted() {},
methods: {
+ getData(){
+ const id = this.$route.params && this.$route.params.id;
+ let _this = this
+ if (id) {
+ this.loading = true;
+ getPropertyInfo(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)
+ if (_this.fot.includes(pth) === true)
+ {
+ console.log()
+ }
+ 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;
+ });
+ this.getCateInfor()
+
+ }
+ },
/** 鏌ヨ绫诲埆淇℃伅 */
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]})
+ response.data.map(elem=>{
+ _this.typeOptions.push({"label":elem, "value":elem})
})
+ // response.data.itemValues.replace("{","").replace("}","").split(",").map(elem=>{
+ // _this.typeOptions.push({"label":elem.split(":")[0], "value":elem.split(":")[0]})
+ // })
})
},
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 => {
@@ -314,9 +423,16 @@
},
handleFileCardPreview(file){
this.dialogFileUrl = file.url;
+ // alert(file.url)
+ // this.dialogFileUrl = 'https://www.bendudu.com:8080/profile/upload/2023/10/18/20231018214647A011.doc'
+ // this.dialogFileUrl = 'https://47.93.189.255:8080/profile/upload/2023/03/19/test7_20230319222030A007.jpg'
+ if(this.dialogFileUrl.includes("47.93.189.255")==true)
+ this.dialogFileUrl = this.dialogFileUrl.replace("47.93.189.255","www.bendudu.com")
+ //alert(this.dialogFileUrl)
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');
},
handlePreview(file)
{
@@ -332,18 +448,83 @@
})
},
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){
+ updateProperty(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){
+ updateProperty(this.formData).then(response => {
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ });
+ }
+
},
handlePictureCardPreview(file) {
this.dialogImageUrl = file.url;
@@ -375,46 +556,148 @@
// const fid =2031
this.$router.push("/familymodel/property/memo/" + id );
},
- 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.indexOf(pth) !== -1)
- {
- _this.fileList.push({"name":response.data.fileName, "url":response.data.url})
- }
- else{
- _this.fileListOther.push({"name":response.data.fileName, "url":response.data.url})
- }
- })
+ //鑷畾涔変笂浼犳柟娉�
+ 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
+ updateProperty(_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)
+ updateProperty(_this.formData).then(response => {
+ _this.$modal.msgSuccess("鍥剧墖涓婁紶鎴愬姛");
+ // this.open = false;
+
+ });
+ // }
+ // 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)
+ {
+ // alert(123)
+ // this.uploadFileList1.push(params.file);
+ // console.log("-----------")
+ //console.log(this.uploadFileList1)
+ },
}
}
</script>
-<style>
+<style scoped>
.mt
{
position: relative;
}
.dt{
- display: block;
+ /* display: block; */
+}
+
+.hide /deep/ .el-upload--picture-card {
+
+ display: none;
}
.form{
background:center/11% no-repeat url('../../assets/icons/form.png') ;
}
-.pt{
- right: 10px;
- top:-3px;
- display: block;
- position: absolute;
-}
+
</style>
--
Gitblit v1.9.1