禅道bug修复
This commit is contained in:
parent
529859ce3d
commit
b2f43db2d2
|
|
@ -138,6 +138,7 @@
|
|||
:limit="3"
|
||||
list-type="picture-card"
|
||||
accept=".png, .jpg, .jpeg, .pdf"
|
||||
:before-upload="beforeUpload"
|
||||
:on-change="handleChangeBusinessList"
|
||||
:class="{ disabledFbs: uploadDisabled }"
|
||||
:on-preview="picturePreviewFbs"
|
||||
|
|
@ -147,24 +148,23 @@
|
|||
<!-- 文件格式下载,图片格式预览 -->
|
||||
<div slot="file" slot-scope="{ file }">
|
||||
<img
|
||||
v-if="isImage(file)"
|
||||
class="el-upload-list__item-thumbnail"
|
||||
:src="file.url"
|
||||
alt=""
|
||||
/>
|
||||
<div v-else class="picture-card-container">
|
||||
<!-- <div v-else class="picture-card-container">
|
||||
<img class="picture-card" :src="urlTemp" alt="" />
|
||||
<p class="file-name">{{ file.name }}</p>
|
||||
</div>
|
||||
</div> -->
|
||||
<span class="el-upload-list__item-actions">
|
||||
<span
|
||||
<!-- <span
|
||||
v-if="updataIf(file)"
|
||||
class="el-upload-list__item-delete"
|
||||
@click="handleDownload(file)"
|
||||
>
|
||||
<i class="el-icon-download" />
|
||||
</span>
|
||||
<span v-else class="el-upload-list__item-preview" @click="picturePreviewFbs(file)">
|
||||
</span> -->
|
||||
<span class="el-upload-list__item-preview" @click="picturePreviewFbs(file)">
|
||||
<i class="el-icon-zoom-in" />
|
||||
</span>
|
||||
<span
|
||||
|
|
@ -285,12 +285,19 @@
|
|||
</template>
|
||||
</el-table-column> -->
|
||||
</el-table>
|
||||
|
||||
<!-- 图片查看弹窗 -->
|
||||
<el-dialog :visible.sync="dialogVisible" width="600px" height="600px">
|
||||
<img width="100%" height="500px" :src="dialogImageUrl" />
|
||||
</el-dialog>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getMaTypeOpt } from '@/api/ma/base'
|
||||
import { getListProject, getListUnite, getAgreement } from '@/api/lease/apply'
|
||||
import { downloadFile, downloadFileData } from '@/utils/download'
|
||||
import { getUseringData, receiveSubmit, receiveEdit, receiveDetail, getEquipmentThreeTypes } from '@/api/business/index'
|
||||
import Treeselect from '@riophae/vue-treeselect'
|
||||
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
|
||||
|
|
@ -748,9 +755,10 @@ export default {
|
|||
directApplyInfoDetails: this.multipleSelection
|
||||
}
|
||||
let fileList = []
|
||||
console.log('params2222222222', params)
|
||||
if (params.directApplyInfo.dirUrls.length > 0) {
|
||||
fileList = params.directApplyInfo.dirUrls.map(e => {
|
||||
if (e.response.code === 200) {
|
||||
if(e.response && e.response.code===200){
|
||||
return {
|
||||
name: e.response.data.name,
|
||||
url: e.response.data.url,
|
||||
|
|
@ -758,8 +766,24 @@ export default {
|
|||
e.response.data.url.lastIndexOf('.') + 1
|
||||
)
|
||||
}
|
||||
}else{
|
||||
return {
|
||||
name: null,
|
||||
url: e.url,
|
||||
}
|
||||
}
|
||||
// console.log("11111111111",e.response)
|
||||
// if (e.response.code === 200) {
|
||||
// return {
|
||||
// name: e.response.data.name,
|
||||
// url: e.response.data.url,
|
||||
// type: e.response.data.url.substring(
|
||||
// e.response.data.url.lastIndexOf('.') + 1
|
||||
// )
|
||||
// }
|
||||
// }
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
params.directApplyInfo.dirUrls = fileList
|
||||
|
|
@ -792,6 +816,8 @@ export default {
|
|||
},
|
||||
// 上传图片
|
||||
handleChangeBusinessList(file, fileList) {
|
||||
console.log("iiiiiiiiiiiiiiiiii",file)
|
||||
console.log("ppppppppp",fileList)
|
||||
const fileListTemp = fileList.filter(item => {
|
||||
return item.uid != file.uid
|
||||
})
|
||||
|
|
@ -853,7 +879,7 @@ export default {
|
|||
return true
|
||||
}
|
||||
} else {
|
||||
const parts = e.name?.split('.')
|
||||
const parts = e.url?.split('.')
|
||||
const extension = parts?.pop().toLowerCase()
|
||||
if (extension === 'png' || extension === 'jpeg' || extension === 'jpg') {
|
||||
return false
|
||||
|
|
@ -862,17 +888,45 @@ export default {
|
|||
}
|
||||
}
|
||||
},
|
||||
beforeUpload(file) {
|
||||
const validExtensions = ['.png', '.jpg', '.jpeg', '.pdf'];
|
||||
const fileName = file.name.toLowerCase();
|
||||
const hasValidExtension = validExtensions.some(ext => fileName.endsWith(ext));
|
||||
|
||||
if (!hasValidExtension) {
|
||||
this.$message.error('仅支持上传 .png, .jpg, .jpeg, .pdf 格式的文件');
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查文件大小是否超过 10MB
|
||||
const isLt10M = file.size / 1024 / 1024 < 10;
|
||||
if (!isLt10M) {
|
||||
this.$message.error('文件大小不能超过 10MB');
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查文件名长度是否超过 40 个字符
|
||||
if (file.name.length > 40) {
|
||||
this.$message.error('文件名长度不能超过 40 个字符');
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
},
|
||||
//上传组件-图片查看
|
||||
picturePreviewFbs(file) {
|
||||
this.dialogImageUrl = file.url.replaceAll('#', '%23')
|
||||
const parts = file.name?.split('.')
|
||||
const extension = parts?.pop()
|
||||
if (extension === 'pdf') {
|
||||
const windowName = file.name
|
||||
window.open(file.url, windowName)
|
||||
} else {
|
||||
console.log("xxxxxxxxxxxx",file)
|
||||
this.dialogImageUrl =file.response ? file.response.data.url : file.url.replaceAll('#', '%23')
|
||||
console.log("zzzzzzzzzz",this.dialogImageUrl)
|
||||
// const parts = file.name ? file.name:file.url.split('.')
|
||||
// console.log("yyyyyyyyy",parts)
|
||||
// const extension = parts?.pop()
|
||||
// if (extension === 'pdf') {
|
||||
// const windowName = file.name ? file.name : file.url
|
||||
// window.open(file.url, windowName)
|
||||
// } else {
|
||||
this.dialogVisible = true
|
||||
}
|
||||
// }
|
||||
},
|
||||
//上传组件-图片删除
|
||||
handleRemoveElectricianImgList(file, fileList) {
|
||||
|
|
@ -892,12 +946,12 @@ export default {
|
|||
console.log(file)
|
||||
if (file.status === 'ready') {
|
||||
downloadFile({
|
||||
fileName: file.name,
|
||||
fileName: file.name ? file.name : file.url,
|
||||
fileData: file.raw,
|
||||
fileType: 'application/vnd.ms-excel;charset=utf-8'
|
||||
})
|
||||
} else if (file.status === 'success') {
|
||||
downloadFileData({ fileName: file.name, fileUrl: file.url })
|
||||
downloadFileData({ fileName: file.url, fileUrl: file.url })
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -182,6 +182,7 @@
|
|||
<el-upload
|
||||
:action="uploadUrl"
|
||||
:file-list="dialogAppy.decreaseFile"
|
||||
:headers="upload.headers"
|
||||
:show-file-list="true"
|
||||
:auto-upload="true"
|
||||
:key="uploadKey"
|
||||
|
|
@ -442,6 +443,10 @@ export default {
|
|||
// url: process.env.VUE_APP_BASE_API + '/file/upload'
|
||||
// },
|
||||
uploadUrl: process.env.VUE_APP_BASE_API + '/file/upload', // 上传的图片服务器地址
|
||||
upload: {
|
||||
// 设置上传的请求头部
|
||||
headers: { Authorization: 'Bearer ' + getToken() },
|
||||
},
|
||||
|
||||
delBusinessFileIdList: [], // 删除的图片id
|
||||
|
||||
|
|
@ -578,6 +583,8 @@ export default {
|
|||
this.isView = true
|
||||
this.title = '查看'
|
||||
this.uploadKey = Date.now()
|
||||
// 清空附件列表
|
||||
this.dialogAppy.decreaseFile = []
|
||||
|
||||
getDiscountViewList(row.id).then(async response => {
|
||||
if (response.code == 200) {
|
||||
|
|
@ -606,6 +613,8 @@ export default {
|
|||
this.isView = false
|
||||
this.title = '修改'
|
||||
this.uploadKey = Date.now()
|
||||
// 清空附件列表
|
||||
this.dialogAppy.decreaseFile = []
|
||||
|
||||
getDiscountViewList(row.id).then(async response => {
|
||||
if (response.code == 200) {
|
||||
|
|
|
|||
|
|
@ -603,6 +603,22 @@ export default {
|
|||
// this.$message.error('仅支持上传 rar 或 zip 格式的文件');
|
||||
// return false;
|
||||
// }
|
||||
const validExtensions = ['.pdf', '.doc', '.docx'];
|
||||
const validTypes = ['image/', 'video/'];
|
||||
const fileName = file.name.toLowerCase();
|
||||
const fileType = file.type;
|
||||
|
||||
// 检查文件扩展名
|
||||
const hasValidExtension = validExtensions.some(ext => fileName.endsWith(ext));
|
||||
// 检查文件 MIME 类型
|
||||
const hasValidType = validTypes.some(type => fileType.startsWith(type));
|
||||
|
||||
if (!hasValidExtension && !hasValidType) {
|
||||
this.$message.error('仅支持上传图片、视频、PDF、Word格式文件');
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
const isLt5M = file.size / 1024 / 1024 < 20;
|
||||
if (!isLt5M) {
|
||||
this.$message.error('单个文件大小不能超过 20MB');
|
||||
|
|
|
|||
|
|
@ -58,6 +58,7 @@
|
|||
<el-upload
|
||||
:action="uploadUrl"
|
||||
:file-list="maForm.bmFileInfos"
|
||||
:headers="upload.headers"
|
||||
:show-file-list="true"
|
||||
:auto-upload="true"
|
||||
:key="uploadKey"
|
||||
|
|
@ -320,7 +321,11 @@ export default {
|
|||
// // 上传的地址
|
||||
// url: process.env.VUE_APP_BASE_API + '/file/upload'
|
||||
// },
|
||||
uploadUrl: process.env.VUE_APP_BASE_API + '/file/upload' // 上传的图片服务器地址
|
||||
uploadUrl: process.env.VUE_APP_BASE_API + '/file/upload', // 上传的图片服务器地址
|
||||
upload: {
|
||||
// 设置上传的请求头部
|
||||
headers: { Authorization: 'Bearer ' + getToken() },
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
|
|
|
|||
Loading…
Reference in New Issue