TRX hace 1 año
padre
commit
5a8c3a3f2d

+ 10 - 0
FullCardClient/src/main/java/com/zhongshu/card/client/model/apiRequestRecord/InterfaceUseRecordSearch.java

@@ -0,0 +1,10 @@
+package com.zhongshu.card.client.model.apiRequestRecord;
+
+import com.zhongshu.card.client.model.base.SuperSearch;
+
+/**
+ * @author TRX
+ * @date 2025/2/18
+ */
+public class InterfaceUseRecordSearch extends SuperSearch {
+}

+ 2 - 1
FullCardClient/src/main/java/com/zhongshu/card/client/model/projectAbout/projectCommon/ProjectCommonConfigModel.java

@@ -77,7 +77,7 @@ public class ProjectCommonConfigModel extends ProjectCommonSuperParam {
     @Schema(description = "是否开启人脸审核")
     private Boolean isExamineFace = Boolean.FALSE;
 
-    @Schema(description = "人脸照片相似度(0-100)")
+    @Schema(description = "人脸照片可信度(0-100)")
     private Integer similarity = 80;
 
     @Schema(description = "人脸识别照片上传数量限制")
@@ -86,4 +86,5 @@ public class ProjectCommonConfigModel extends ProjectCommonSuperParam {
     @Schema(description = "照片大小限制")
     private BigDecimal maxSize = BigDecimal.valueOf(2);
 
+
 }

+ 18 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/dao/upload/extend/InterfaceUseRecordDaoExtend.java

@@ -0,0 +1,18 @@
+package com.zhongshu.card.server.core.dao.upload.extend;
+
+import com.zhongshu.card.client.model.visitor.VisitorMainSearch;
+import com.zhongshu.card.server.core.domain.visitor.VisitorMain;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
+
+/**
+ * @Author TRX
+ * @CreateDate: 2023/7/7
+ * @Version: 1.0
+ */
+public interface InterfaceUseRecordDaoExtend {
+
+    Page<VisitorMain> page(Pageable pageable, VisitorMainSearch param);
+
+    Long count(VisitorMainSearch param);
+}

+ 1 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/oss/InterfaceUseRecordService.java

@@ -30,7 +30,7 @@ public class InterfaceUseRecordService extends SuperService {
     private HttpServletRequest request;
 
     /**
-     * 判断是否可以上传
+     * 接口访问频率判断
      *
      * @param key
      * @return

+ 1 - 0
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/permissVerify/Device2UseUsableService.java

@@ -72,6 +72,7 @@ public class Device2UseUsableService {
 
             List<String> deviceIds = visitorMain.getDeviceIds();
             if (ObjectUtils.isEmpty(deviceIds)) {
+                // 查询访客组件上配置的所有的设备
                 List<VisitorSettingDevice> list = visitorSettingDeviceDao.findBySceneComponentId(visitorMain.getSceneComponentId());
                 if (ObjectUtils.isNotEmpty(list)) {
                     deviceIds = list.stream().map(VisitorSettingDevice::getDeviceId).collect(Collectors.toList());

+ 3 - 3
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/projectAbout/OrgUserFaceService.java

@@ -294,7 +294,7 @@ public class OrgUserFaceService extends SuperService {
      * @param projectOid
      * @return
      */
-    public ResultContent conformFace(String url, String projectOid) {
+    public ResultContent<ProjectCommonConfigModel> conformFace(String url, String projectOid) {
         if (StringUtils.isEmpty(projectOid)) {
             projectOid = getCurrentProjectOid();
         }
@@ -315,7 +315,7 @@ public class OrgUserFaceService extends SuperService {
      * @param configModel
      * @return
      */
-    public ResultContent conformFace(String url, ProjectCommonConfigModel configModel) {
+    public ResultContent<ProjectCommonConfigModel> conformFace(String url, ProjectCommonConfigModel configModel) {
         if (StringUtils.isEmpty(url)) {
             return ResultContent.buildFail("图片为空");
         }
@@ -331,7 +331,7 @@ public class OrgUserFaceService extends SuperService {
         }
         Double confidence = content.getContent() * 100;
         if (BigDecimal.valueOf(confidence).compareTo(BigDecimal.valueOf(configModel.getSimilarity())) >= 0) {
-            return ResultContent.buildSuccess();
+            return ResultContent.buildSuccess(configModel);
         } else {
             return ResultContent.buildFail(String.format("未检测到人脸: %d", confidence.intValue()));
         }

+ 9 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/service/visitor/VisitorMainService.java

@@ -31,6 +31,7 @@ import com.zhongshu.card.server.core.service.projectAbout.OrgUserFaceService;
 import com.zhongshu.card.server.core.service.user.UserAccountServiceImpl;
 import com.zhongshu.card.server.core.util.CommonUtil;
 import com.zhongshu.card.server.core.util.TempUserUtil;
+import com.zhongshu.card.server.core.util.ValidateUtils;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -110,6 +111,13 @@ public class VisitorMainService extends SuperPermissService {
         if (CommonUtil.longIsEmpty(minutes)) {
             return ResultContent.buildFail("访问时长不能为空");
         }
+        if (StringUtils.isNotEmpty(param.getPhone()) && !ValidateUtils.isPhoneNumber(param.getPhone())) {
+            return ResultContent.buildFail("手机号码格式错误");
+        }
+        if (StringUtils.isNotEmpty(param.getCardNumber()) && !ValidateUtils.isIDCard(param.getCardNumber())) {
+            return ResultContent.buildFail("身份证号码格式错误");
+        }
+
         Long endTime = startTime + minutes * 60 * 1000l;
         if (param.getApplyType() == null) {
             return ResultContent.buildFail("applyType 不能为空");
@@ -147,7 +155,7 @@ public class VisitorMainService extends SuperPermissService {
             return ResultContent.buildFail("访客组件参数未配置");
         }
 
-        // 验证图片是否包含人脸
+        // 验证图片是否包含人脸(符合项目配置要求)
         ResultContent conformFaceContent = orgUserFaceService.conformFace(param.getFaceUrl(), projectOid);
         if (conformFaceContent.isFailed()) {
             return ResultContent.buildFail(conformFaceContent.getMsg());

+ 2 - 1
FullCardServer/src/main/java/com/zhongshu/card/server/core/util/TempUserUtil.java

@@ -1,5 +1,6 @@
 package com.zhongshu.card.server.core.util;
 
+import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.commons.lang3.StringUtils;
 
 /**
@@ -14,7 +15,7 @@ public class TempUserUtil {
      * @return
      */
     public static String getVisitorTempUserId() {
-        return "tempUser_visitor_" + CommonUtil.UUID();
+        return "tempUser_visitor_" + RandomStringUtils.randomAlphabetic(16);
     }
 
     /**