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