You've already forked FrameTour-BE
优化是否能生成判断逻辑
This commit is contained in:
42
src/main/java/com/ycwl/basic/biz/TemplateBiz.java
Normal file
42
src/main/java/com/ycwl/basic/biz/TemplateBiz.java
Normal file
@ -0,0 +1,42 @@
|
||||
package com.ycwl.basic.biz;
|
||||
|
||||
import com.ycwl.basic.model.pc.face.resp.FaceRespVO;
|
||||
import com.ycwl.basic.model.pc.faceSample.entity.FaceSampleEntity;
|
||||
import com.ycwl.basic.model.pc.faceSample.resp.FaceSampleRespVO;
|
||||
import com.ycwl.basic.model.pc.template.entity.TemplateConfigEntity;
|
||||
import com.ycwl.basic.repository.FaceRepository;
|
||||
import com.ycwl.basic.repository.TemplateRepository;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Component
|
||||
public class TemplateBiz {
|
||||
@Autowired
|
||||
private TemplateRepository templateRepository;
|
||||
@Autowired
|
||||
private FaceRepository faceRepository;
|
||||
|
||||
|
||||
public boolean determineTemplateCanGenerate(Long templateId, Long faceId) {
|
||||
List<String> placeholderList = templateRepository.getTemplatePlaceholder(templateId);
|
||||
TemplateConfigEntity templateConfig = templateRepository.getTemplateConfig(templateId);
|
||||
int minimalPlaceholderFill = 1;
|
||||
if (null != templateConfig) {
|
||||
if (null != templateConfig.getMinimalPlaceholderFill()) {
|
||||
minimalPlaceholderFill = templateConfig.getMinimalPlaceholderFill();
|
||||
}
|
||||
}
|
||||
if (minimalPlaceholderFill <= 0) {
|
||||
return true;
|
||||
}
|
||||
List<FaceSampleEntity> faceSampleList = faceRepository.getFaceSampleList(faceId);
|
||||
long count = faceSampleList.stream().map(FaceSampleEntity::getDeviceId).filter(deviceId -> placeholderList.contains(deviceId.toString())).count();
|
||||
return count >= minimalPlaceholderFill;
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user