ting.yin 6 年之前
父节点
当前提交
1f6e53bd03

+ 8 - 4
stmms-ms-admin/src/main/java/cn/com/qmth/stmms/ms/admin/service/DataUploadService.java

@@ -219,14 +219,18 @@ public class DataUploadService {
         paper.setUploadedOn(new Date());
         paper.setManual(isManual);
         String sheetPath = systemConfig.getImageDir() + File.separator + student.getWorkId() + File.separator + subject
-    			+ File.separator + student.getAreaCode();
+    			+ File.separator + student.getAreaCode() + File.separator + student.getExamNumber() + ".jpg";
         String slicePath = systemConfig.getImageDir() + File.separator + student.getWorkId() + File.separator + subject
-    			+ File.separator + student.getAreaCode();
-        String sheetMD5 = DigestUtils.md5Hex(new FileInputStream(sheetPath));
-        String sliceMD5 = DigestUtils.md5Hex(new FileInputStream(slicePath));
+    			+ File.separator + student.getAreaCode() + File.separator + student.getExamNumber() + ".jpg";
+        FileInputStream sheetIn = new FileInputStream(sheetPath);
+        FileInputStream slicein = new FileInputStream(slicePath);
+        String sheetMD5 = DigestUtils.md5Hex(sheetIn);
+        String sliceMD5 = DigestUtils.md5Hex(slicein);
         paper.setSheetMD5(sheetMD5);
         paper.setSliceMD5(sliceMD5);
         paperRepo.save(paper);
+        sheetIn.close();
+        slicein.close();
         synchronized (this) {
             String uploadStatus = student.getUploadStatus();
             String replace = subject.toString() + ":1";

+ 6 - 2
stmms-ms-collect/src/main/java/cn/com/qmth/stmms/ms/collect/api/CollectApi.java

@@ -168,10 +168,12 @@ public class CollectApi {
         ImageIO.write(bufferedImage, "jpg", new File(thumbFileName));
 
         String md5 = request.getHeader("md5");
-        String sliceMD5 = DigestUtils.md5Hex(new FileInputStream(outFile));
+        FileInputStream in = new FileInputStream(outFile);
+        String sliceMD5 = DigestUtils.md5Hex(in);
         if(!md5.equalsIgnoreCase(sliceMD5)){
         	throw new RuntimeException("图片md5值不一致");
         }
+        in.close();
 //        ImageCompression.imageThumbnail(outFile,new File(thumbFileName),compressionConfig);
     }
 
@@ -208,10 +210,12 @@ public class CollectApi {
         File outFile = saveImage(student, inputStream, savePath);
         
         String md5 = request.getHeader("md5");
-        String sheetMD5 = DigestUtils.md5Hex(new FileInputStream(outFile));
+        FileInputStream in = new FileInputStream(outFile);
+        String sheetMD5 = DigestUtils.md5Hex(in);
         if(!md5.equalsIgnoreCase(sheetMD5)){
         	throw new RuntimeException("图片md5值不一致");
         }
+        in.close();
     }
     
     @RequestMapping(value = "subject/collect-config", method = RequestMethod.POST)