deason 3 år sedan
förälder
incheckning
a175c936f5

+ 8 - 8
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/bean/FaceCompareResult.java

@@ -14,18 +14,18 @@ public class FaceCompareResult implements JsonSerializable {
     private Long studentId;
 
     @ApiModelProperty(value = "人脸比对是否通过")
-    private Boolean isPass;
+    private Boolean pass;
 
     @ApiModelProperty(value = "是否有陌生人")
-    private Boolean isStranger;
+    private Boolean stranger;
 
-    @ApiModelProperty(value = "文件路径")
+    @ApiModelProperty(value = "图片地址")
     private String fileUrl;
 
     @ApiModelProperty(value = "人脸比对结果")
     private String faceCompareResult;
 
-    @ApiModelProperty(value = "人脸比对的处理时间")
+    @ApiModelProperty(value = "人脸比对处理耗时(毫秒)")
     private Long processTime;
 
     public Long getStudentId() {
@@ -37,19 +37,19 @@ public class FaceCompareResult implements JsonSerializable {
     }
 
     public Boolean getPass() {
-        return isPass;
+        return pass;
     }
 
     public void setPass(Boolean pass) {
-        isPass = pass;
+        this.pass = pass;
     }
 
     public Boolean getStranger() {
-        return isStranger;
+        return stranger;
     }
 
     public void setStranger(Boolean stranger) {
-        isStranger = stranger;
+        this.stranger = stranger;
     }
 
     public String getFileUrl() {

+ 23 - 1
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/FaceProcessServiceImpl.java

@@ -1,9 +1,15 @@
 package cn.com.qmth.examcloud.core.oe.student.service.impl;
 
+import cn.com.qmth.examcloud.commons.util.FileUtil;
+import cn.com.qmth.examcloud.core.oe.student.base.bean.CompareFaceSyncInfo;
+import cn.com.qmth.examcloud.core.oe.student.base.utils.Check;
 import cn.com.qmth.examcloud.core.oe.student.bean.FaceCompareResult;
 import cn.com.qmth.examcloud.core.oe.student.service.FaceProcessService;
+import cn.com.qmth.examcloud.support.Constants;
+import cn.com.qmth.examcloud.web.redis.RedisClient;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
@@ -14,9 +20,25 @@ public class FaceProcessServiceImpl implements FaceProcessService {
 
     private static final Logger log = LoggerFactory.getLogger(FaceProcessServiceImpl.class);
 
+    @Autowired
+    private RedisClient redisClient;
+
     @Override
     public void saveFaceCompareResult(FaceCompareResult req) {
-        //todo
+        Check.isNull(req.getStudentId(), "学生ID不能为空");
+        Check.isNull(req.getPass(), "人脸比对是否通过不能为空");
+        Check.isBlank(req.getFileUrl(), "图片地址不能为空");
+
+        CompareFaceSyncInfo info = new CompareFaceSyncInfo();
+        info.setIsPass(req.getPass());
+        info.setIsStranger(req.getStranger());
+        info.setStudentId(req.getStudentId());
+        info.setProcessTime(req.getProcessTime() != null ? req.getProcessTime() : 1L);
+        info.setFileName(FileUtil.getFileName(req.getFileUrl()));
+        info.setFileUrl(req.getFileUrl());
+        info.setFaceCompareResult(req.getFaceCompareResult());
+
+        redisClient.set(Constants.FACE_SYNC_COMPARE_RESULT_PREFIX + req.getStudentId(), info, 5 * 60);
     }
 
 }