Selaa lähdekoodia

Merge branch 'usky-zyj' of uskycloud/usky-modules into server-165

James 7 kuukautta sitten
vanhempi
commit
b5a1ad14b4

+ 3 - 2
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingFaceController.java

@@ -12,6 +12,7 @@ import com.usky.meeting.annotation.FaceLog;
 import com.usky.meeting.domain.MeetingFace;
 import com.usky.meeting.service.MeetingFaceService;
 import com.usky.meeting.service.vo.FaceResultVO;
+import com.usky.meeting.service.vo.MeetingFaceRequestVO;
 import com.usky.meeting.service.vo.MeetingFaceVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -42,8 +43,8 @@ public class MeetingFaceController {
     @PostMapping("/vef")
     @ApiOperation(value="人脸验证", notes="根据传入的base64编码和数据的base64编码进行对比")
     @FaceLog
-    public MeetingFaceVO faceVef(@RequestBody String imageBase){
-        return faceService.vef(imageBase);
+    public MeetingFaceVO faceVef(@RequestBody MeetingFaceRequestVO requestVO){
+        return faceService.vef(requestVO);
     }
 
     @GetMapping("/faceList")

+ 2 - 3
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/controller/web/MeetingRoomController.java

@@ -44,9 +44,8 @@ public class MeetingRoomController {
     @GetMapping("/{productCode}/{deviceId}/control")
     public ApiResult<Map<String,Object>> control(@PathVariable("productCode") String productCode,
                                                  @PathVariable("deviceId") String deviceId,
-                                                 @RequestParam(value = "requestBody") String requestBody){
-        String topic = "/"+productCode+"/"+deviceId+"/control";
-        return ApiResult.success(remoteTransferService.deviceControl(topic,requestBody));
+                                                 @RequestParam(value = "commandStr") String commandStr){
+        return ApiResult.success(remoteTransferService.deviceControl(productCode,deviceId,commandStr));
     }
 
     /**

+ 2 - 1
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/MeetingFaceService.java

@@ -3,6 +3,7 @@ package com.usky.meeting.service;
 import com.usky.meeting.domain.MeetingFace;
 import com.usky.common.mybatis.core.CrudService;
 import com.usky.meeting.service.vo.FaceResultVO;
+import com.usky.meeting.service.vo.MeetingFaceRequestVO;
 import com.usky.meeting.service.vo.MeetingFaceVO;
 
 /**
@@ -20,5 +21,5 @@ public interface MeetingFaceService extends CrudService<MeetingFace> {
      * @param imageBase
      * @return
      */
-    MeetingFaceVO vef(String imageBase);
+    MeetingFaceVO vef(MeetingFaceRequestVO requestVO);
 }

+ 17 - 4
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/impl/MeetingFaceServiceImpl.java

@@ -1,15 +1,18 @@
 package com.usky.meeting.service.impl;
 
 import cn.hutool.json.JSONUtil;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.usky.common.security.utils.SecurityUtils;
 import com.usky.meet.utils.JwtUtils;
 import com.usky.meet.utils.TimeUtils;
 import com.usky.meeting.domain.MeetingFace;
 import com.usky.meeting.mapper.MeetingFaceMapper;
+import com.usky.meeting.repository.MeetingRoomRepository;
 import com.usky.meeting.server.FaceContrastServer;
 import com.usky.meeting.service.MeetingFaceService;
 import com.usky.common.mybatis.core.AbstractCrudService;
 import com.usky.meeting.service.vo.FaceResultVO;
+import com.usky.meeting.service.vo.MeetingFaceRequestVO;
 import com.usky.meeting.service.vo.MeetingFaceVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -32,11 +35,21 @@ public class MeetingFaceServiceImpl extends AbstractCrudService<MeetingFaceMappe
 
     @Autowired
     FaceContrastServer faceContrastServer;
+    @Autowired
+    private MeetingRoomRepository dmMeetingRoomRepository;
 
     @Override
-    public MeetingFaceVO vef(String imageBase) {
-        imageBase = JSONUtil.parseObj(imageBase).getStr("imageBase");
-        List<MeetingFace> faceList = lambdaQuery().eq(MeetingFace::getTenantId,SecurityUtils.getTenantId()).orderByDesc(MeetingFace::getVefNum).list();
+    public MeetingFaceVO vef(MeetingFaceRequestVO requestVO) {
+
+        String domain = requestVO.getDomain();
+        Integer tenantId;
+        if(StringUtils.isNotBlank(domain)){
+            tenantId = dmMeetingRoomRepository.getTenantIdByDomain(domain);
+        }else{
+            tenantId = SecurityUtils.getTenantId();
+        }
+
+        List<MeetingFace> faceList = lambdaQuery().eq(MeetingFace::getTenantId,tenantId).orderByDesc(MeetingFace::getVefNum).list();
         MeetingFaceVO faceState = new MeetingFaceVO();
         MeetingFaceVO faceState1 = new MeetingFaceVO();
         // 如果人脸库为空,则第一次登录为录入人脸
@@ -45,7 +58,7 @@ public class MeetingFaceServiceImpl extends AbstractCrudService<MeetingFaceMappe
 //        }else {
             int faceLength = faceList.size();
             for (MeetingFace face : faceList) {
-                FaceResultVO faceResult = faceContrastServer.faceContrast(face.getFaceBase(), imageBase);
+                FaceResultVO faceResult = faceContrastServer.faceContrast(face.getFaceBase(), requestVO.getImageBase());
                 // 是否比对成功
                 if (faceResult.getCode() == MeetingFaceVO.SUCCESS_CODE ){
                     // 相似度是否大于80

+ 16 - 0
service-meeting/service-meeting-biz/src/main/java/com/usky/meeting/service/vo/MeetingFaceRequestVO.java

@@ -0,0 +1,16 @@
+package com.usky.meeting.service.vo;
+
+import lombok.Data;
+
+@Data
+public class MeetingFaceRequestVO {
+    /**
+     * 图片编码
+     */
+    private String imageBase;
+
+    /**
+     * 域名
+     */
+    private String domain;
+}