1
0
Переглянути джерело

图片数量和大小限制

qng 3 роки тому
батько
коміт
e2c3d167b8

+ 15 - 12
kmall-admin/src/main/java/com/kmall/admin/controller/GoodsController.java

@@ -10,7 +10,7 @@ import com.kmall.admin.service.*;
 import com.kmall.admin.utils.ParamUtils;
 import com.kmall.admin.utils.ShiroUtils;
 import com.kmall.api.cache.UserTokenCache;
-import com.kmall.common.ImgException;
+import com.kmall.common.utils.ImgException;
 import com.kmall.common.constant.Dict;
 import com.kmall.common.constant.JxlsXmlTemplateName;
 import com.kmall.admin.fromcomm.entity.SysUserEntity;
@@ -414,10 +414,10 @@ public class GoodsController {
             // 如果是文件夹,就创建个文件夹
         }
         if(null==entryList){
-            throw new RRException("文件夹内无图片信息,请检查后重试");
+            throw new ImgException("文件夹内无图片信息,请检查后重试");
         }
         if(entryList.size()>30){
-            throw new RRException("最多上传30张图片");
+            throw new ImgException("最多上传30张图片");
         }
         try {
             for(ZipEntry entry : entryList){
@@ -444,10 +444,15 @@ public class GoodsController {
                     }
 
                     MultipartFile mulFileByPath = getMulFileByPath(destDirPath + "/" + entry.getName());
-                        String imgg = entry.getName().split("\\.")[1];
-                        if ("jpg".equals(imgg)&&!"jpeg".equals(imgg)) {
-                            throw new RRException("图片格式不正确,请检查!");
-                        }
+                    long fileSize = mulFileByPath.getSize();
+                    int maxSize = 1 * 1024 * 1024;
+                    if (fileSize > maxSize) {
+                        throw new RRException("商品图片过大(最大1M),请检查!");
+                    }
+//                    String imgg = entry.getName().split("\\.")[1];
+//                    if (!"jpg".equals(imgg)&&!"jpeg".equals(imgg)) {
+//                        throw new RRException("图片格式不正确,请检查!");
+//                    }
 
                     //上传文件
                     String url = FileManager.upload(mulFileByPath);
@@ -480,11 +485,9 @@ public class GoodsController {
             }
             long end = System.currentTimeMillis();
             System.out.println("解压完成,耗时:" + (end - start) +" ms");
-        } catch (RRException e) {
-            throw new RRException("图片格式不正确,请检查!",e);
-        }catch (ImgException e) {
-            throw new ImgException("商品图片存在命名格式不正确,请检查!",e);
-        } catch (Exception e) {
+        }catch (RRException e) {
+            throw new RRException("商品图片过大(最大1M),请检查!", e);
+        }catch (Exception e) {
             throw new RuntimeException("unzip error from ZipUtils", e);
         } finally {
             if(zipFile != null){

+ 1 - 1
kmall-admin/src/main/webapp/WEB-INF/page/shop/goods.html

@@ -143,7 +143,7 @@
                             :on-progress="uploadExcelProgress"
                             :format="['xls','xlsx','zip']"
                             action="../goods/generalGoodsImgUpload">
-                        <i-button type="ghost" icon="ios-cloud-upload-outline">商品图片批量导入</i-button>
+                        <i-button type="ghost" icon="ios-cloud-upload-outline">商品图片批量导入(图片不能超过1M,最多30张)</i-button>
                     </Upload>
                 </i-col>
 <!--                <i-col style="display: inline-grid;">-->

+ 1 - 1
kmall-common/src/main/java/com/kmall/common/ImgException.java → kmall-common/src/main/java/com/kmall/common/utils/ImgException.java

@@ -1,4 +1,4 @@
-package com.kmall.common;
+package com.kmall.common.utils;
 
 /**
  * 自定义异常