先原片再视频
This commit is contained in:
parent
f86025bf47
commit
fd7511ad55
@ -49,4 +49,6 @@ public interface SourceMapper {
|
|||||||
int addRelation(MemberSourceEntity source);
|
int addRelation(MemberSourceEntity source);
|
||||||
|
|
||||||
List<SourceRespVO> listUser(SourceReqQuery sourceReqQuery);
|
List<SourceRespVO> listUser(SourceReqQuery sourceReqQuery);
|
||||||
|
|
||||||
|
int addRelations(List<MemberSourceEntity> list);
|
||||||
}
|
}
|
||||||
|
@ -4,6 +4,7 @@ import com.github.pagehelper.PageHelper;
|
|||||||
import com.github.pagehelper.PageInfo;
|
import com.github.pagehelper.PageInfo;
|
||||||
import com.ycwl.basic.enums.StatisticEnum;
|
import com.ycwl.basic.enums.StatisticEnum;
|
||||||
import com.ycwl.basic.exception.BaseException;
|
import com.ycwl.basic.exception.BaseException;
|
||||||
|
import com.ycwl.basic.mapper.SourceMapper;
|
||||||
import com.ycwl.basic.mapper.StatisticsMapper;
|
import com.ycwl.basic.mapper.StatisticsMapper;
|
||||||
import com.ycwl.basic.mapper.FaceMapper;
|
import com.ycwl.basic.mapper.FaceMapper;
|
||||||
import com.ycwl.basic.model.jwt.JwtInfo;
|
import com.ycwl.basic.model.jwt.JwtInfo;
|
||||||
@ -12,6 +13,8 @@ import com.ycwl.basic.model.mobile.statistic.req.StatisticsRecordAddReq;
|
|||||||
import com.ycwl.basic.model.pc.face.entity.FaceEntity;
|
import com.ycwl.basic.model.pc.face.entity.FaceEntity;
|
||||||
import com.ycwl.basic.model.pc.face.req.FaceReqQuery;
|
import com.ycwl.basic.model.pc.face.req.FaceReqQuery;
|
||||||
import com.ycwl.basic.model.pc.face.resp.FaceRespVO;
|
import com.ycwl.basic.model.pc.face.resp.FaceRespVO;
|
||||||
|
import com.ycwl.basic.model.pc.source.entity.MemberSourceEntity;
|
||||||
|
import com.ycwl.basic.model.pc.source.entity.SourceEntity;
|
||||||
import com.ycwl.basic.model.task.resp.SearchFaceRespVo;
|
import com.ycwl.basic.model.task.resp.SearchFaceRespVo;
|
||||||
import com.ycwl.basic.service.pc.FaceService;
|
import com.ycwl.basic.service.pc.FaceService;
|
||||||
import com.ycwl.basic.service.task.TaskFaceService;
|
import com.ycwl.basic.service.task.TaskFaceService;
|
||||||
@ -53,6 +56,8 @@ public class FaceServiceImpl implements FaceService {
|
|||||||
private float strictScore = 90F;
|
private float strictScore = 90F;
|
||||||
@Autowired
|
@Autowired
|
||||||
private TaskService taskTaskService;
|
private TaskService taskTaskService;
|
||||||
|
@Autowired
|
||||||
|
private SourceMapper sourceMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ApiResponse<PageInfo<FaceRespVO>> pageQuery(FaceReqQuery faceReqQuery) {
|
public ApiResponse<PageInfo<FaceRespVO>> pageQuery(FaceReqQuery faceReqQuery) {
|
||||||
@ -165,6 +170,17 @@ public class FaceServiceImpl implements FaceService {
|
|||||||
faceEntity.setScenicId(scenicId);
|
faceEntity.setScenicId(scenicId);
|
||||||
faceEntity.setMemberId(userId);
|
faceEntity.setMemberId(userId);
|
||||||
faceEntity.setFaceUrl(faceUrl);
|
faceEntity.setFaceUrl(faceUrl);
|
||||||
|
List<Long> sampleListIds = scenicDbSearchResult.getSampleListIds();
|
||||||
|
// 匹配原片:照片
|
||||||
|
List<SourceEntity> sourceEntities = sourceMapper.listBySampleIds(sampleListIds);
|
||||||
|
List<MemberSourceEntity> memberSourceEntityList = sourceEntities.stream().map(sourceEntity -> {
|
||||||
|
MemberSourceEntity memberSourceEntity = new MemberSourceEntity();
|
||||||
|
memberSourceEntity.setMemberId(userId);
|
||||||
|
memberSourceEntity.setSourceId(sourceEntity.getId());
|
||||||
|
memberSourceEntity.setType(sourceEntity.getType());
|
||||||
|
memberSourceEntity.setIsBuy(0);
|
||||||
|
return memberSourceEntity;
|
||||||
|
}).collect(Collectors.toList());
|
||||||
if (faceEntity.getId()==null) {
|
if (faceEntity.getId()==null) {
|
||||||
//新增人脸
|
//新增人脸
|
||||||
faceEntity.setId(newFaceId);
|
faceEntity.setId(newFaceId);
|
||||||
@ -175,6 +191,7 @@ public class FaceServiceImpl implements FaceService {
|
|||||||
faceMapper.update(faceEntity);
|
faceMapper.update(faceEntity);
|
||||||
taskTaskService.autoCreateTaskByFaceId(faceEntity.getId());
|
taskTaskService.autoCreateTaskByFaceId(faceEntity.getId());
|
||||||
}
|
}
|
||||||
|
sourceMapper.addRelations(memberSourceEntityList);
|
||||||
StatisticsRecordAddReq statisticsRecordAddReq = new StatisticsRecordAddReq();
|
StatisticsRecordAddReq statisticsRecordAddReq = new StatisticsRecordAddReq();
|
||||||
statisticsRecordAddReq.setMemberId(userId);
|
statisticsRecordAddReq.setMemberId(userId);
|
||||||
statisticsRecordAddReq.setType(StatisticEnum.UPLOAD_FACE.code);
|
statisticsRecordAddReq.setType(StatisticEnum.UPLOAD_FACE.code);
|
||||||
|
@ -134,16 +134,11 @@ public class VideoPieceGetter {
|
|||||||
SourceEntity sourceEntity = new SourceEntity();
|
SourceEntity sourceEntity = new SourceEntity();
|
||||||
sourceEntity.setId(SnowFlakeUtil.getLongId());
|
sourceEntity.setId(SnowFlakeUtil.getLongId());
|
||||||
MemberSourceEntity videoSource = new MemberSourceEntity();
|
MemberSourceEntity videoSource = new MemberSourceEntity();
|
||||||
MemberSourceEntity imageSource = new MemberSourceEntity();
|
|
||||||
videoSource.setMemberId(task.getMemberId());
|
videoSource.setMemberId(task.getMemberId());
|
||||||
videoSource.setType(1);
|
videoSource.setType(1);
|
||||||
videoSource.setIsBuy(0);
|
videoSource.setIsBuy(0);
|
||||||
videoSource.setSourceId(sourceEntity.getId());
|
videoSource.setSourceId(sourceEntity.getId());
|
||||||
imageSource.setMemberId(task.getMemberId());
|
|
||||||
imageSource.setType(2);
|
|
||||||
imageSource.setIsBuy(0);
|
|
||||||
if (imgSource != null) {
|
if (imgSource != null) {
|
||||||
imageSource.setSourceId(imgSource.getId());
|
|
||||||
sourceEntity.setUrl(imgSource.getUrl());
|
sourceEntity.setUrl(imgSource.getUrl());
|
||||||
sourceEntity.setPosJson(imgSource.getPosJson());
|
sourceEntity.setPosJson(imgSource.getPosJson());
|
||||||
}
|
}
|
||||||
@ -155,9 +150,6 @@ public class VideoPieceGetter {
|
|||||||
sourceEntity.setType(1);
|
sourceEntity.setType(1);
|
||||||
sourceMapper.add(sourceEntity);
|
sourceMapper.add(sourceEntity);
|
||||||
sourceMapper.addRelation(videoSource);
|
sourceMapper.addRelation(videoSource);
|
||||||
if (imgSource != null) {
|
|
||||||
sourceMapper.addRelation(imageSource);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean startFfmpegTask(FfmpegTask task) {
|
public boolean startFfmpegTask(FfmpegTask task) {
|
||||||
|
@ -6,9 +6,16 @@
|
|||||||
values (#{id}, #{scenicId}, #{deviceId}, #{url}, #{videoUrl}, #{type}, #{faceSampleId}, #{posJson})
|
values (#{id}, #{scenicId}, #{deviceId}, #{url}, #{videoUrl}, #{type}, #{faceSampleId}, #{posJson})
|
||||||
</insert>
|
</insert>
|
||||||
<insert id="addRelation">
|
<insert id="addRelation">
|
||||||
insert member_source(member_id, source_id, is_buy, type)
|
replace member_source(member_id, source_id, is_buy, type)
|
||||||
values (#{memberId}, #{sourceId}, #{isBuy}, #{type})
|
values (#{memberId}, #{sourceId}, #{isBuy}, #{type})
|
||||||
</insert>
|
</insert>
|
||||||
|
<insert id="addRelations">
|
||||||
|
replace member_source(member_id, source_id, is_buy, type)
|
||||||
|
values
|
||||||
|
<foreach collection="list" item="item" separator=",">
|
||||||
|
(#{item.memberId}, #{item.sourceId}, #{item.isBuy}, #{item.type})
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
<update id="update">
|
<update id="update">
|
||||||
update source
|
update source
|
||||||
<set>
|
<set>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user