|
@@ -3,6 +3,7 @@ package com.usky.meeting.controller.web;
|
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.core.util.StrUtil;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.usky.common.core.bean.ApiResult;
|
|
import com.usky.common.core.bean.ApiResult;
|
|
@@ -10,20 +11,28 @@ import com.usky.common.core.bean.CommonPage;
|
|
import com.usky.common.security.utils.SecurityUtils;
|
|
import com.usky.common.security.utils.SecurityUtils;
|
|
import com.usky.meeting.annotation.FaceLog;
|
|
import com.usky.meeting.annotation.FaceLog;
|
|
import com.usky.meeting.domain.MeetingFace;
|
|
import com.usky.meeting.domain.MeetingFace;
|
|
|
|
+import com.usky.meeting.mapper.MeetingFaceMapper;
|
|
import com.usky.meeting.repository.MeetingInfoRepository;
|
|
import com.usky.meeting.repository.MeetingInfoRepository;
|
|
import com.usky.meeting.service.MeetingFaceService;
|
|
import com.usky.meeting.service.MeetingFaceService;
|
|
|
|
+import com.usky.meeting.service.vo.DmpDeviceInfoVO;
|
|
import com.usky.meeting.service.vo.FaceResultVO;
|
|
import com.usky.meeting.service.vo.FaceResultVO;
|
|
import com.usky.meeting.service.vo.MeetingFaceRequestVO;
|
|
import com.usky.meeting.service.vo.MeetingFaceRequestVO;
|
|
import com.usky.meeting.service.vo.MeetingFaceVO;
|
|
import com.usky.meeting.service.vo.MeetingFaceVO;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
+import io.swagger.models.auth.In;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
+import org.springframework.stereotype.Service;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import org.springframework.stereotype.Controller;
|
|
import org.springframework.stereotype.Controller;
|
|
|
|
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
|
|
+import java.util.Arrays;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.Objects;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
/**
|
|
* <p>
|
|
* <p>
|
|
@@ -42,6 +51,8 @@ public class MeetingFaceController {
|
|
MeetingFaceService faceService;
|
|
MeetingFaceService faceService;
|
|
@Autowired
|
|
@Autowired
|
|
MeetingInfoRepository meetingInfoRepository;
|
|
MeetingInfoRepository meetingInfoRepository;
|
|
|
|
+ @Autowired
|
|
|
|
+ private MeetingFaceMapper meetingFaceMapper;
|
|
|
|
|
|
@PostMapping("/vef")
|
|
@PostMapping("/vef")
|
|
@ApiOperation(value="人脸验证", notes="根据传入的base64编码和数据的base64编码进行对比")
|
|
@ApiOperation(value="人脸验证", notes="根据传入的base64编码和数据的base64编码进行对比")
|
|
@@ -56,12 +67,26 @@ public class MeetingFaceController {
|
|
@RequestParam Integer current,
|
|
@RequestParam Integer current,
|
|
@RequestParam Integer size,
|
|
@RequestParam Integer size,
|
|
@RequestParam(required = false) String faceName,
|
|
@RequestParam(required = false) String faceName,
|
|
- @RequestParam(required = false) String faceStatus
|
|
|
|
- ){
|
|
|
|
|
|
+ @RequestParam(required = false) String faceStatus,
|
|
|
|
+ @RequestParam(required = false) Integer fid
|
|
|
|
+ ){
|
|
IPage<MeetingFace> page = faceService.page(new Page(current, size), new QueryWrapper<MeetingFace>()
|
|
IPage<MeetingFace> page = faceService.page(new Page(current, size), new QueryWrapper<MeetingFace>()
|
|
.like(StrUtil.isNotBlank(faceName),"face_name",faceName)
|
|
.like(StrUtil.isNotBlank(faceName),"face_name",faceName)
|
|
.like(StrUtil.isNotBlank(faceStatus),"face_status",faceStatus)
|
|
.like(StrUtil.isNotBlank(faceStatus),"face_status",faceStatus)
|
|
|
|
+ .eq(fid != null,"fid",fid)
|
|
.eq("tenant_id", SecurityUtils.getTenantId()));
|
|
.eq("tenant_id", SecurityUtils.getTenantId()));
|
|
|
|
+ if(page.getRecords().size() > 0){
|
|
|
|
+ for (int i = 0; i < page.getRecords().size(); i++) {
|
|
|
|
+ if(Objects.nonNull(page.getRecords().get(i).getBindDevice())){
|
|
|
|
+ String[] deviceIdStr = page.getRecords().get(i).getBindDevice().split(",");
|
|
|
|
+ Integer[] deviceIds = Arrays.stream(deviceIdStr).map(Integer::parseInt).toArray(Integer[]::new);
|
|
|
|
+ List<DmpDeviceInfoVO> list = meetingFaceMapper.getDeviceInfo(Arrays.asList(deviceIds));
|
|
|
|
+ page.getRecords().get(i).setDeviceInfos(list);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
return ApiResult.success(new CommonPage<>(page.getRecords(),page.getTotal(),size,current));
|
|
return ApiResult.success(new CommonPage<>(page.getRecords(),page.getTotal(),size,current));
|
|
}
|
|
}
|
|
|
|
|
|
@@ -86,11 +111,11 @@ public class MeetingFaceController {
|
|
face.setVefNum(0);
|
|
face.setVefNum(0);
|
|
face.setCreateTime(LocalDateTime.now());
|
|
face.setCreateTime(LocalDateTime.now());
|
|
face.setTenantId(SecurityUtils.getTenantId());
|
|
face.setTenantId(SecurityUtils.getTenantId());
|
|
- Integer[] devicefids = face.getDeviceIds();
|
|
|
|
|
|
+ String[] devicefids = face.getBindDevice().split(",");
|
|
faceService.save(face);
|
|
faceService.save(face);
|
|
if(devicefids.length > 0){
|
|
if(devicefids.length > 0){
|
|
for (int i = 0; i < devicefids.length; i++) {
|
|
for (int i = 0; i < devicefids.length; i++) {
|
|
- meetingInfoRepository.insertMeetingFaceDevice(face.getFid(),devicefids[i]);
|
|
|
|
|
|
+ meetingInfoRepository.insertMeetingFaceDevice(face.getFid(),Integer.parseInt(devicefids[i]));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return FaceResultVO.success("添加成功");
|
|
return FaceResultVO.success("添加成功");
|
|
@@ -101,10 +126,10 @@ public class MeetingFaceController {
|
|
public FaceResultVO update(@RequestBody MeetingFace face){
|
|
public FaceResultVO update(@RequestBody MeetingFace face){
|
|
faceService.updateById(face);
|
|
faceService.updateById(face);
|
|
meetingInfoRepository.delMeetingFaceDevice(face.getFid());
|
|
meetingInfoRepository.delMeetingFaceDevice(face.getFid());
|
|
- Integer[] devicefids = face.getDeviceIds();
|
|
|
|
|
|
+ String[] devicefids = face.getBindDevice().split(",");
|
|
if(devicefids.length > 0){
|
|
if(devicefids.length > 0){
|
|
for (int i = 0; i < devicefids.length; i++) {
|
|
for (int i = 0; i < devicefids.length; i++) {
|
|
- meetingInfoRepository.insertMeetingFaceDevice(face.getFid(),devicefids[i]);
|
|
|
|
|
|
+ meetingInfoRepository.insertMeetingFaceDevice(face.getFid(),Integer.parseInt(devicefids[i]));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return FaceResultVO.success("修改成功");
|
|
return FaceResultVO.success("修改成功");
|