提交 f6cf319b authored 作者: yangqi's avatar yangqi

1

上级 a0ee04d0
package cn.lefull.repository.mapper.face;
import cn.lefull.repository.model.face.AliFaceDb;
import cn.lefull.repository.model.face.AliFaceEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* @author 杨奇
*/
@Mapper
public interface AliFaceEntityMapper {
AliFaceEntity getEntityByEntityId(AliFaceEntity entity);
int addEntity(AliFaceEntity entity);
}
package cn.lefull.repository.model.face;
import lombok.Data;
import java.time.LocalDateTime;
/**
* @author 杨奇
*/
@Data
public class AliFaceEntity {
private Integer aliFaceEntityId;
private Integer aliFaceDbId;
private String entityId;
private String labels;
private Integer operatorEmployeeId;
private LocalDateTime createTime;
private LocalDateTime updateTime;
private Byte isDelete;
private LocalDateTime deleteTime;
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.lefull.repository.mapper.face.AliFaceEntityMapper">
<select id="getEntityByEntityId" resultType="cn.lefull.repository.model.face.AliFaceEntity">
SELECT ali_face_entity_id, ali_face_db_id, entity_id, labels
FROM ali_face_entity where ali_face_db_id = #{aliFaceDbId} and entity_id = #{entityId} and is_delete = 0
</select>
<insert id="addEntity" keyProperty="aliFaceEntityId" useGeneratedKeys="true" parameterType="cn.lefull.repository.model.face.AliFaceEntity">
INSERT INTO ali_face_entity (ali_face_db_id, entity_id, labels) VALUES(#{aliFaceDbId}, #{entityId}, #{labels});
</insert>
</mapper>
...@@ -3,8 +3,10 @@ package cn.lefull.service.ali; ...@@ -3,8 +3,10 @@ package cn.lefull.service.ali;
import cn.lefull.common.sdk.ali.base.Face; import cn.lefull.common.sdk.ali.base.Face;
import cn.lefull.common.utils.Utils; import cn.lefull.common.utils.Utils;
import cn.lefull.repository.mapper.face.AliFaceDbMapper; import cn.lefull.repository.mapper.face.AliFaceDbMapper;
import cn.lefull.repository.mapper.face.AliFaceEntityMapper;
import cn.lefull.repository.mapper.test.TestMapper; import cn.lefull.repository.mapper.test.TestMapper;
import cn.lefull.repository.model.face.AliFaceDb; import cn.lefull.repository.model.face.AliFaceDb;
import cn.lefull.repository.model.face.AliFaceEntity;
import com.aliyun.facebody20191230.models.SearchFaceResponseBody; import com.aliyun.facebody20191230.models.SearchFaceResponseBody;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -20,7 +22,9 @@ public class FaceServiceImpl implements FaceService{ ...@@ -20,7 +22,9 @@ public class FaceServiceImpl implements FaceService{
@Autowired @Autowired
private Face sdk; private Face sdk;
@Autowired @Autowired
private AliFaceDbMapper faceMapper; private AliFaceDbMapper dbMapper;
@Autowired
private AliFaceEntityMapper entityMapper;
@Override @Override
public List<String> getFaceDbList() throws Exception { public List<String> getFaceDbList() throws Exception {
...@@ -32,9 +36,9 @@ public class FaceServiceImpl implements FaceService{ ...@@ -32,9 +36,9 @@ public class FaceServiceImpl implements FaceService{
Utils.checkParamsNotEmpty(dbName, "dbName"); Utils.checkParamsNotEmpty(dbName, "dbName");
AliFaceDb face = new AliFaceDb(); AliFaceDb face = new AliFaceDb();
face.setDbName(dbName); face.setDbName(dbName);
AliFaceDb data = faceMapper.getDbByName(face); AliFaceDb db = dbMapper.getDbByName(face);
if(data == null){ if(db == null){
faceMapper.addDb(face); dbMapper.addDb(face);
} }
sdk.createFaceDb(dbName); sdk.createFaceDb(dbName);
} }
...@@ -43,6 +47,17 @@ public class FaceServiceImpl implements FaceService{ ...@@ -43,6 +47,17 @@ public class FaceServiceImpl implements FaceService{
public void addFace(String dbName, String entityId, String labels) throws Exception { public void addFace(String dbName, String entityId, String labels) throws Exception {
Utils.checkParamsNotEmpty(dbName, "dbName"); Utils.checkParamsNotEmpty(dbName, "dbName");
Utils.checkParamsNotEmpty(entityId, "entityId"); Utils.checkParamsNotEmpty(entityId, "entityId");
AliFaceDb face = new AliFaceDb();
face.setDbName(dbName);
AliFaceDb db = dbMapper.getDbByName(face);
if(db == null){
throw new Exception("未找到人脸数据库:" + dbName);
}
AliFaceEntity entity = new AliFaceEntity();
entity.setAliFaceDbId(db.getAliFaceDbId());
entity.setEntityId(entityId);
entity.setLabels(labels);
entityMapper.addEntity(entity);
sdk.addFace(dbName, entityId, labels); sdk.addFace(dbName, entityId, labels);
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论