优化是否能生成判断逻辑

This commit is contained in:
2025-01-11 16:13:19 +08:00
parent ad9e91cd7a
commit 0d2c92e8e1
18 changed files with 150 additions and 77 deletions

View File

@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.ycwl.basic.biz.OrderBiz;
import com.ycwl.basic.biz.TemplateBiz;
import com.ycwl.basic.constant.BaseContextHandler;
import com.ycwl.basic.mapper.*;
import com.ycwl.basic.model.jwt.JwtInfo;
@ -75,6 +76,8 @@ public class AppScenicServiceImpl implements AppScenicService {
private OrderBiz orderBiz;
@Autowired
private ScenicRepository scenicRepository;
@Autowired
private TemplateBiz templateBiz;
@Override
public ApiResponse<PageInfo<ScenicAppVO>> pageQuery(ScenicReqQuery scenicReqQuery) {
@ -126,7 +129,7 @@ public class AppScenicServiceImpl implements AppScenicService {
contentPageVO.setLockType(-1);
} else {
contentPageVO.setContentType(0);
boolean canGenerate = templateRepository.determineTemplateCanGenerate(contentPageVO.getTemplateId(), faceId);
boolean canGenerate = templateBiz.determineTemplateCanGenerate(contentPageVO.getTemplateId(), faceId);
if (canGenerate) {
contentPageVO.setLockType(0);
} else {

View File

@ -232,7 +232,11 @@ public class GoodsServiceImpl implements GoodsService {
if (paramJson == null) {
deviceCount = 1;
} else {
deviceCount = paramJson.keySet().stream().filter(StringUtils::isNumeric).count();
List<String> templatePlaceholder = templateRepository.getTemplatePlaceholder(task.getTemplateId());
deviceCount = paramJson.keySet().stream()
.filter(StringUtils::isNumeric)
.filter(templatePlaceholder::contains)
.count();
}
goodsDetailVO.setLensNum((int) deviceCount);
return ApiResponse.success(goodsDetailVO);

View File

@ -1,4 +1,4 @@
package com.ycwl.basic.service.impl.task;
package com.ycwl.basic.service.task.impl;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;

View File

@ -1,10 +1,11 @@
package com.ycwl.basic.service.impl.task;
package com.ycwl.basic.service.task.impl;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.ycwl.basic.biz.OrderBiz;
import com.ycwl.basic.biz.TemplateBiz;
import com.ycwl.basic.constant.TaskConstant;
import com.ycwl.basic.mapper.FaceMapper;
import com.ycwl.basic.mapper.FaceSampleMapper;
@ -16,6 +17,7 @@ import com.ycwl.basic.mapper.TemplateMapper;
import com.ycwl.basic.mapper.VideoMapper;
import com.ycwl.basic.model.mobile.order.PriceObj;
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.member.resp.MemberRespVO;
import com.ycwl.basic.model.pc.mp.MpConfigEntity;
@ -96,6 +98,8 @@ public class TaskTaskServiceImpl implements TaskService {
private MemberMapper memberMapper;
@Autowired
private ScenicRepository scenicRepository;
@Autowired
private TemplateBiz templateBiz;
private RenderWorkerEntity getWorker(@NonNull WorkerAuthReqVo req) {
String accessKey = req.getAccessKey();
@ -152,7 +156,7 @@ public class TaskTaskServiceImpl implements TaskService {
if (faceId == null) {
return;
}
boolean canGenerate = templateRepository.determineTemplateCanGenerate(templateId, faceId);
boolean canGenerate = templateBiz.determineTemplateCanGenerate(templateId, faceId);
if (!canGenerate) {
return;
}
@ -221,7 +225,7 @@ public class TaskTaskServiceImpl implements TaskService {
if (!StringUtils.isNotBlank(faceRespVO.getMatchSampleIds())) {
return;
}
List<FaceSampleRespVO> faceSampleList = faceSampleMapper.listByIds(Arrays.stream(faceRespVO.getMatchSampleIds().split(",")).map(Long::valueOf).collect(Collectors.toList()));
List<FaceSampleEntity> faceSampleList = faceSampleMapper.listByIds(Arrays.stream(faceRespVO.getMatchSampleIds().split(",")).map(Long::valueOf).collect(Collectors.toList()));
if (faceSampleList.isEmpty()) {
return;
}
@ -247,11 +251,11 @@ public class TaskTaskServiceImpl implements TaskService {
public void createTaskByFaceIdAndTempalteId(Long faceId, Long templateId, int automatic) {
FaceRespVO faceRespVO = faceMapper.getById(faceId);
ScenicConfigEntity scenicConfig = scenicRepository.getScenicConfig(faceRespVO.getScenicId());
List<FaceSampleRespVO> faceSampleList = faceSampleMapper.listByIds(Arrays.stream(faceRespVO.getMatchSampleIds().split(",")).map(Long::valueOf).collect(Collectors.toList()));
List<FaceSampleEntity> faceSampleList = faceSampleMapper.listByIds(Arrays.stream(faceRespVO.getMatchSampleIds().split(",")).map(Long::valueOf).collect(Collectors.toList()));
if (faceSampleList.isEmpty()) {
return;
}
List<Long> faceSampleIds = faceSampleList.stream().map(FaceSampleRespVO::getId).collect(Collectors.toList());
List<Long> faceSampleIds = faceSampleList.stream().map(FaceSampleEntity::getId).collect(Collectors.toList());
List<SourceEntity> sourceList = sourceMapper.listBySampleIds(faceSampleIds);
if (sourceList.isEmpty()) {
return;
@ -294,7 +298,7 @@ public class TaskTaskServiceImpl implements TaskService {
task.faceSampleIds = faceSampleIds;
task.memberId = faceRespVO.getMemberId();
task.callback = () -> {
boolean canGenerate = templateRepository.determineTemplateCanGenerate(templateId, faceId);
boolean canGenerate = templateBiz.determineTemplateCanGenerate(templateId, faceId);
if (!canGenerate) {
return;
}

View File

@ -1,4 +1,4 @@
package com.ycwl.basic.service.impl.task;
package com.ycwl.basic.service.task.impl;
import com.alibaba.fastjson.JSON;
import com.ycwl.basic.mapper.TemplateMapper;

View File

@ -0,0 +1,4 @@
package com.ycwl.basic.service.wvp;
public interface WvpService {
}

View File

@ -0,0 +1,18 @@
package com.ycwl.basic.service.wvp.impl;
import com.ycwl.basic.device.repository.DeviceRepository;
import com.ycwl.basic.repository.ScenicRepository;
import com.ycwl.basic.service.wvp.WvpService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
@Service
public class WvpServiceImpl implements WvpService {
@Autowired
private RedisTemplate<String, String> redisTemplate;
@Autowired
private DeviceRepository deviceRepository;
@Autowired
private ScenicRepository scenicRepository;
}