修复小区背景颜色,巡检点顺序一致,投诉处理按钮

This commit is contained in:
Zy
2026-07-16 11:06:26 +08:00
parent 4efb535730
commit 725bdfa3fe
56 changed files with 1034 additions and 468 deletions

View File

@@ -68,6 +68,7 @@
:show-file-list="true"
:on-remove="handleAvatarRemove"
:on-change="handleProgress"
:before-upload="beforeAvatarUpload"
>
<div class="uploadBtn flex flex-items-center">
<el-icon><Upload /></el-icon>
@@ -94,7 +95,7 @@ import editor from '@/components/Editor/index.vue';
import { ref } from 'vue';
import PageHeader from '@/components/Pageheader/index.vue';
import { addHandleLog, getHandleLog, updateHandleLog, uploadAttachments } from '@/api/system/HandleLog';
import { UploadFiles, UploadProps, UploadUserFile } from 'element-plus';
import { UploadFiles, UploadProps, UploadRawFile, UploadUserFile } from 'element-plus';
import { useUserStore } from '@/store/modules/user';
import { ElMessage } from 'element-plus';
import { Upload } from '@element-plus/icons-vue'; // 确保引入图标
@@ -143,6 +144,8 @@ const handleAvatarRemove: UploadProps['onRemove'] = (uploadFile: UploadUserFile,
// 定义大小限制常量 (单位: MB)
const MAX_SINGLE_FILE_SIZE = 10 * 1024 * 1024; // 10MB in bytes
const MAX_TOTAL_FILE_SIZE = 20 * 1024 * 1024; // 20MB in bytes
// 禁止的危险文件后缀
const forbidSuffix = ['exe', 'msi', 'bat', 'cmd', 'sh', 'apk', 'dmg'];
// 添加一个锁,防止 on-change 递归调用导致重复提示
const isChecking = ref(false);
const handleProgress: UploadProps['onChange'] = (uploadFile: UploadUserFile, uploadFiles: UploadFiles) => {
@@ -225,6 +228,16 @@ const handleProgress: UploadProps['onChange'] = (uploadFile: UploadUserFile, upl
}, 100);
};
const blockedExts = ['.exe', '.bat', '.cmd', '.msi'];
const beforeAvatarUpload: UploadProps['beforeUpload'] = (rawFile: UploadRawFile) => {
const ext = rawFile.name.toLowerCase().slice(rawFile.name.lastIndexOf('.'));
if (blockedExts.includes(ext)) {
ElMessage.warning(`禁止上传 ${ext} 文件`);
return false;
}
return true;
};
// ! 初始 ====================================================================================================
function init() {
console.log('init');