|
|
@@ -81,6 +81,9 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
@Autowired
|
|
|
SmartDeviceService smartDeviceService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ SmartAccessService smartAccessService;
|
|
|
+
|
|
|
@Override
|
|
|
@DESRespondSecret(validated = true)
|
|
|
public CommonResult track(Integer id, int dateTime) {
|
|
|
@@ -117,6 +120,18 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
vos.add(lastSevenDaysTrackVo);
|
|
|
}
|
|
|
|
|
|
+// 门禁信息
|
|
|
+ List<SmartAccess> smartAccesses = smartAccessService.track(stateTime, endTime, id);
|
|
|
+ for (SmartAccess faceDiscern : smartAccesses) {
|
|
|
+ LastSevenDaysTrackVo lastSevenDaysTrackVo = new LastSevenDaysTrackVo();
|
|
|
+ lastSevenDaysTrackVo.setName(faceDiscern.getName());
|
|
|
+ lastSevenDaysTrackVo.setType(faceDiscern.getType());
|
|
|
+ lastSevenDaysTrackVo.setLocation(faceDiscern.getLocation());
|
|
|
+ lastSevenDaysTrackVo.setImage(faceDiscern.getImage());
|
|
|
+ lastSevenDaysTrackVo.setDateTime(faceDiscern.getDateTime());
|
|
|
+ vos.add(lastSevenDaysTrackVo);
|
|
|
+ }
|
|
|
+
|
|
|
// 排序
|
|
|
Collections.sort(vos, Comparator.comparing((h) -> {
|
|
|
return h.getDateTime();
|
|
|
@@ -139,10 +154,9 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
LocalDateTime stateTime = now.minusDays(i + 1);
|
|
|
LocalDateTime endTime = now.minusDays(i);
|
|
|
String dateTime = endTime.format(dateTimeFormatter);
|
|
|
- LambdaQueryWrapper<SmartFaceDiscern> faceDiscernWrapper = new LambdaQueryWrapper<>();
|
|
|
- faceDiscernWrapper.between(SmartFaceDiscern::getDateTime, stateTime, endTime)
|
|
|
- .ne(SmartFaceDiscern::getType, "人脸比对");
|
|
|
- int faceDiscernCount = smartFaceDiscernService.count(faceDiscernWrapper);
|
|
|
+ LambdaQueryWrapper<SmartAccess> smartAccessWrapper = new LambdaQueryWrapper<>();
|
|
|
+ smartAccessWrapper.between(SmartAccess::getDateTime, stateTime, endTime);
|
|
|
+ int faceDiscernCount = smartAccessService.count(smartAccessWrapper);
|
|
|
|
|
|
LambdaQueryWrapper<SmartQrcode> qrcodeWrapper = new LambdaQueryWrapper<>();
|
|
|
qrcodeWrapper.between(SmartQrcode::getCreateTime, stateTime, endTime);
|
|
|
@@ -173,6 +187,7 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
String endTime = end.format(dateTimeFormatter1);
|
|
|
String startTime = satrt.format(dateTimeFormatter1);
|
|
|
ArrayList<LastSevenDaysTrackVo> vos = new ArrayList<>();
|
|
|
+// 人脸抓拍
|
|
|
List<SmartFaceDiscern> faceDiscerns = smartFaceDiscernService.track(startTime, endTime, userId);
|
|
|
for (SmartFaceDiscern faceDiscern : faceDiscerns) {
|
|
|
LastSevenDaysTrackVo lastSevenDaysTrackVo = new LastSevenDaysTrackVo();
|
|
|
@@ -184,6 +199,7 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
vos.add(lastSevenDaysTrackVo);
|
|
|
}
|
|
|
|
|
|
+// 打卡
|
|
|
List<SmartAttendance> attendances = smartAttendanceService.track(startTime, endTime, userId);
|
|
|
// 获取班级名称
|
|
|
SmartUser smartUser = smartUserService.getSmartById(userId);
|
|
|
@@ -200,6 +216,18 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
vos.add(lastSevenDaysTrackVo);
|
|
|
}
|
|
|
|
|
|
+ // 门禁信息
|
|
|
+ List<SmartAccess> smartAccesses = smartAccessService.track(startTime, endTime, userId);
|
|
|
+ for (SmartAccess faceDiscern : smartAccesses) {
|
|
|
+ LastSevenDaysTrackVo lastSevenDaysTrackVo = new LastSevenDaysTrackVo();
|
|
|
+ lastSevenDaysTrackVo.setName(faceDiscern.getName());
|
|
|
+ lastSevenDaysTrackVo.setType(faceDiscern.getType());
|
|
|
+ lastSevenDaysTrackVo.setLocation(faceDiscern.getLocation());
|
|
|
+ lastSevenDaysTrackVo.setImage(faceDiscern.getImage());
|
|
|
+ lastSevenDaysTrackVo.setDateTime(faceDiscern.getDateTime());
|
|
|
+ vos.add(lastSevenDaysTrackVo);
|
|
|
+ }
|
|
|
+
|
|
|
// 排序
|
|
|
Collections.sort(vos, Comparator.comparing((h) -> {
|
|
|
return h.getDateTime();
|
|
|
@@ -264,7 +292,7 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
}
|
|
|
|
|
|
|
|
|
- SmartFaceDiscern smartFaceDiscern = new SmartFaceDiscern();
|
|
|
+ SmartAccess smartFaceDiscern = new SmartAccess();
|
|
|
|
|
|
smartFaceDiscern.setName(s);
|
|
|
smartFaceDiscern.setLocation(address);
|
|
|
@@ -275,10 +303,10 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
smartFaceDiscern.setSn(sn);
|
|
|
if (userId != 0) {
|
|
|
// 判断是否已经添加
|
|
|
- LambdaQueryWrapper<SmartFaceDiscern> wrapperFD = new LambdaQueryWrapper<>();
|
|
|
- wrapperFD.eq(SmartFaceDiscern::getDateTime, smartFaceDiscern.getDateTime())
|
|
|
- .eq(SmartFaceDiscern::getUserId, userId);
|
|
|
- List<SmartFaceDiscern> list = smartFaceDiscernService.list(wrapperFD);
|
|
|
+ LambdaQueryWrapper<SmartAccess> wrapperFD = new LambdaQueryWrapper<>();
|
|
|
+ wrapperFD.eq(SmartAccess::getDateTime, smartFaceDiscern.getDateTime())
|
|
|
+ .eq(SmartAccess::getUserId, userId);
|
|
|
+ List<SmartAccess> list = smartAccessService.list(wrapperFD);
|
|
|
if (ObjectUtils.isEmpty(list) && list.size() == 0) {
|
|
|
// 抓拍的照片 base64字符串
|
|
|
String scenePhoto = jsonObject.getString("scenePhoto");
|
|
|
@@ -296,7 +324,7 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
}
|
|
|
|
|
|
smartFaceDiscern.setImage(image);
|
|
|
- smartFaceDiscernService.save(smartFaceDiscern);
|
|
|
+ smartAccessService.save(smartFaceDiscern);
|
|
|
|
|
|
// 通过学生id找到关联的家长affiliate,并找到公众号,如果openid为空则不传
|
|
|
List<SmartUser> userList = smartUserService.getAffiliateList(userId);
|
|
|
@@ -336,11 +364,11 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
|
|
|
smartFaceDiscern.setUserId(0);
|
|
|
// 判断是否已经添加
|
|
|
- LambdaQueryWrapper<SmartFaceDiscern> wrapperFD = new LambdaQueryWrapper<>();
|
|
|
- wrapperFD.eq(SmartFaceDiscern::getDateTime, time)
|
|
|
- .eq(SmartFaceDiscern::getName, s)
|
|
|
- .eq(SmartFaceDiscern::getType, type);
|
|
|
- List<SmartFaceDiscern> list = smartFaceDiscernService.list(wrapperFD);
|
|
|
+ LambdaQueryWrapper<SmartAccess> wrapperFD = new LambdaQueryWrapper<>();
|
|
|
+ wrapperFD.eq(SmartAccess::getDateTime, time)
|
|
|
+ .eq(SmartAccess::getName, s)
|
|
|
+ .eq(SmartAccess::getType, type);
|
|
|
+ List<SmartAccess> list = smartAccessService.list(wrapperFD);
|
|
|
|
|
|
if (ObjectUtils.isEmpty(list) && list.size() == 0) {
|
|
|
// 抓拍的照片 base64字符串
|
|
|
@@ -358,7 +386,7 @@ public class SmartFaceDiscernController implements SmartFaceDiscernControllerAPI
|
|
|
logger.error("上传cos桶失败");
|
|
|
}
|
|
|
smartFaceDiscern.setImage(image);
|
|
|
- smartFaceDiscernService.save(smartFaceDiscern);
|
|
|
+ smartAccessService.save(smartFaceDiscern);
|
|
|
}
|
|
|
|
|
|
}
|