Explorar o código

fix: 新增上传验证

xiaweibo hai 1 mes
pai
achega
cbb280671e

+ 17 - 2
src/views/production-safety/safety-culture/accidentCaseManagement/components/accidentCaseManagementDetail.vue

@@ -35,6 +35,7 @@
           v-model:file-list="approvalImageFileList"
           :auto-upload="false"
           list-type="picture-card"
+          accept=".jpg,.jpeg,.png"
           :limit="1"
           :disabled="isViewMode"
           :on-change="handleApprovalImageChange"
@@ -226,8 +227,13 @@ const handleSubmit = async () => {
   const res = await handleValidate();
   if (!res) return;
 
+  if (!ruleFormData.description || ruleFormData.description == '<p><br></p>') {
+    ElMessage.error('请输入案例描述');
+    return;
+  }
+
   if (!ruleFormData.attachmentUrl || ruleFormData.attachmentUrl.length === 0) {
-    ElMessage.warning('请上传文件');
+    ElMessage.error('请上传文件');
     return;
   }
 
@@ -270,7 +276,16 @@ const previewOnline = (url: string | undefined, type) => {
 
 const handleApprovalImageChange = (uploadFile: UploadUserFile) => {
   if (!uploadFile.raw) return;
-
+  // 限制文件类型为 JPG、JPEG、PNG 格式
+  const allowedTypes = ['image/jpeg', 'image/jpg', 'image/png'];
+  const fileType = uploadFile.raw.type;
+  if (!allowedTypes.includes(fileType)) {
+    ElMessage.error('只能上传 JPG、JPEG、PNG 格式的图片文件!');
+    approvalImageFileList.value = approvalImageFileList.value.filter(
+      file => file.uid !== uploadFile.uid
+    );
+    return;
+  }
   uploadFileApi({
     file: uploadFile.raw,
     bizType: UPLOAD_BIZ_TYPE['DICTIONARY'],

+ 11 - 1
src/views/production-safety/safety-culture/safetyCultureMaterialManagement/components/safetyCultureMaterialManagementDetail.vue

@@ -58,6 +58,7 @@
           :auto-upload="false"
           list-type="picture-card"
           :limit="1"
+          accept=".jpg,.jpeg,.png"
           :disabled="isViewMode"
           :on-change="handleApprovalImageChange"
           :on-exceed="handleApprovalImageExceed"
@@ -213,7 +214,16 @@
 
   const handleApprovalImageChange = (uploadFile: UploadUserFile) => {
     if (!uploadFile.raw) return;
-
+    // 限制文件类型为 JPG、JPEG、PNG 格式
+    const allowedTypes = ['image/jpeg', 'image/jpg', 'image/png'];
+    const fileType = uploadFile.raw.type;
+    if (!allowedTypes.includes(fileType)) {
+      ElMessage.error('只能上传 JPG、JPEG、PNG 格式的图片文件!');
+      approvalImageFileList.value = approvalImageFileList.value.filter(
+        file => file.uid !== uploadFile.uid
+      );
+      return;
+    }
     uploadFileApi({
       file: uploadFile.raw,
       bizType: UPLOAD_BIZ_TYPE['DICTIONARY'],