diff --git a/flossom-ui/src/views/system/instrument/index.vue b/flossom-ui/src/views/system/instrument/index.vue index 7d613b0..e9babda 100644 --- a/flossom-ui/src/views/system/instrument/index.vue +++ b/flossom-ui/src/views/system/instrument/index.vue @@ -1291,13 +1291,21 @@ export default { components: { Treeselect, draggable }, props: { // 大小限制(MB) - fileSize: { + imageFileSize: { type: Number, default: 1, }, - fileType: { + imageFileType: { type: Array, - default: () => ["bmp", "gif", "jpg", "jpeg", "png", "mp4", "avi", "rmvb"], + default: () => ["bmp", "gif", "jpg", "jpeg", "png"], + }, + videoFileSize: { + type: Number, + default: 10, + }, + videoFileType: { + type: Array, + default: () => ["mp4", "avi", "rmvb"], }, pdfFileSize: { type: Number, @@ -1484,7 +1492,6 @@ export default { ], }, /** 初次护理规则 */ - imageFileType: ['png', 'jpg', 'jpeg', 'gif'], nurseIndex: 0, nurseList: [ { @@ -2494,21 +2501,26 @@ export default { // 上传前校检格式和大小 handleBeforeUpload(file) { // 校检文件类型 - if (this.fileType) { - const fileName = file.name.split('.'); - const fileExt = fileName[fileName.length - 1]; - const isTypeOk = this.fileType.indexOf(fileExt) >= 0; - if (!isTypeOk) { - this.$modal.msgError(`文件格式不正确`); + const fileName = file.name.split('.'); + const fileExt = fileName[fileName.length - 1]; + const isImageTypeOk = this.imageFileType.indexOf(fileExt) >= 0; + const isVideoTypeOk = this.videoFileType.indexOf(fileExt) >= 0; + if (!(isImageTypeOk || isVideoTypeOk)) { + this.$modal.msgError(`文件格式不正确`); + return false; + } + // 校检文件大小 + if(isImageTypeOk) { + const isLt = file.size / 1024 / 1024 < this.imageFileSize; + if (!isLt) { + this.$modal.msgError(`上传图片大小不能超过 ${this.imageFileSize} MB!`); return false; } } - - // 校检文件大小 - if (this.fileSize) { - const isLt = file.size / 1024 / 1024 < this.fileSize; + if(isVideoTypeOk) { + const isLt = file.size / 1024 / 1024 < this.videoFileSize; if (!isLt) { - this.$modal.msgError(`上传文件大小不能超过 ${this.fileSize} MB!`); + this.$modal.msgError(`上传视频大小不能超过 ${this.videoFileSize} MB!`); return false; } }