فهرست منبع

Merge remote-tracking branch 'origin/dev_v3.3.0' into dev_v3.3.0

xiaofei 1 سال پیش
والد
کامیت
4c215eaf37

+ 2 - 0
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/ScanFilePropertyService.java

@@ -13,4 +13,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface ScanFilePropertyService extends IService<ScanFileProperty> {
 
+	void save(Long examId, String path, String md5, Long fileSize);
+
 }

+ 5 - 1
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/ScanBatchServiceImpl.java

@@ -39,6 +39,7 @@ import com.qmth.teachcloud.mark.service.MarkStudentService;
 import com.qmth.teachcloud.mark.service.ScanAnswerCardService;
 import com.qmth.teachcloud.mark.service.ScanBatchPaperService;
 import com.qmth.teachcloud.mark.service.ScanBatchService;
+import com.qmth.teachcloud.mark.service.ScanFilePropertyService;
 import com.qmth.teachcloud.mark.service.ScanPaperPageService;
 import com.qmth.teachcloud.mark.service.ScanPaperService;
 
@@ -70,7 +71,9 @@ public class ScanBatchServiceImpl extends ServiceImpl<ScanBatchMapper, ScanBatch
 
 	@Autowired
 	private ScanAnswerCardService scanAnswerCardService;
-
+	@Autowired
+	private ScanFilePropertyService scanFilePropertyService;
+	
 	@Transactional
 	@Override
 	public BatchCreateVo batchCreate(BatchCreateDomain domain, SysUser sysUser) {
@@ -255,6 +258,7 @@ public class ScanBatchServiceImpl extends ServiceImpl<ScanBatchMapper, ScanBatch
 		try {
 			String path = fileService.uploadSheet(file.getInputStream(), md5, batch.getExamId(), batchId, coursePaperId,
 					studentCode, paperNumber, pageIndex);
+			scanFilePropertyService.save(batch.getExamId(), path, md5, file.getSize());
 			return SheetUploadVo.create(path);
 		} catch (Exception e) {
 			log.error("原图上传失败,batchId=" + batch + ", coursePaperId=" + coursePaperId + ",studentCode=" + studentCode

+ 30 - 3
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/ScanFilePropertyServiceImpl.java

@@ -1,10 +1,14 @@
 package com.qmth.teachcloud.mark.service.impl;
 
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.qmth.boot.core.exception.ParameterException;
 import com.qmth.teachcloud.mark.entity.ScanFileProperty;
 import com.qmth.teachcloud.mark.mapper.ScanFilePropertyMapper;
 import com.qmth.teachcloud.mark.service.ScanFilePropertyService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.stereotype.Service;
 
 /**
  * <p>
@@ -16,5 +20,28 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class ScanFilePropertyServiceImpl extends ServiceImpl<ScanFilePropertyMapper, ScanFileProperty> implements ScanFilePropertyService {
-
+	
+	@Transactional
+	@Override
+	public void save(Long examId, String path, String md5,Long fileSize) {
+		if (examId == null) {
+            throw new ParameterException("examId 不能为空");
+        }
+        if (StringUtils.isBlank(path)) {
+            throw new ParameterException("path 不能为空");
+        }
+        if (StringUtils.isBlank(md5)) {
+            throw new ParameterException("md5 不能为空");
+        }
+        ScanFileProperty file = getById(path);
+        if (file == null) {
+        	file=new ScanFileProperty();
+        	file.setPath(path);
+        	file.setCreateTime(System.currentTimeMillis());
+        	file.setExamId(examId);
+        	file.setFileSize(fileSize);
+        }
+        file.setMd5(md5);
+        this.saveOrUpdate(file);
+	}
 }

+ 14 - 9
teachcloud-mark/src/main/java/com/qmth/teachcloud/mark/service/impl/ScanPackageServiceImpl.java

@@ -1,5 +1,14 @@
 package com.qmth.teachcloud.mark.service.impl;
 
+import java.util.List;
+import java.util.Set;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.multipart.MultipartFile;
+
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -8,15 +17,8 @@ import com.qmth.teachcloud.mark.bean.scananswer.SheetUploadVo;
 import com.qmth.teachcloud.mark.entity.ScanPackage;
 import com.qmth.teachcloud.mark.mapper.ScanPackageMapper;
 import com.qmth.teachcloud.mark.service.FileService;
+import com.qmth.teachcloud.mark.service.ScanFilePropertyService;
 import com.qmth.teachcloud.mark.service.ScanPackageService;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.util.List;
-import java.util.Set;
 
 /**
  * <p>
@@ -30,7 +32,9 @@ import java.util.Set;
 public class ScanPackageServiceImpl extends ServiceImpl<ScanPackageMapper, ScanPackage> implements ScanPackageService {
 	@Autowired
 	private FileService fileService;
-
+	@Autowired
+	private ScanFilePropertyService scanFilePropertyService;
+	
 	@Override
 	public int getCount(Long examId) {
 		QueryWrapper<ScanPackage> wrapper = new QueryWrapper<>();
@@ -76,6 +80,7 @@ public class ScanPackageServiceImpl extends ServiceImpl<ScanPackageMapper, ScanP
 				}
 				sp.setMd5(md5);
 				sp.setPath(path);
+				scanFilePropertyService.save(examId, path, md5, file.getSize());
 				this.saveOrUpdate(sp);
 			} catch (Exception e) {
 				log.error("原图上传失败,examId=" + examId + ", coursePaperId=" + coursePaperId + ",packageCode=" + packageCode