新增添加识别记录接口

This commit is contained in:
haotian 2025-10-10 14:17:34 +08:00
parent e83e592db5
commit 8a39872da5
4 changed files with 35 additions and 3 deletions

View File

@ -8,8 +8,10 @@ from module_admin.annotation.log_annotation import Log
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from module_admin.entity.vo.user_vo import CurrentUserModel
from module_admin.service.login_service import LoginService
from module_admin.service.identification_record_service import Identification_recordService
from module_admin.service.sys_statistics_service import Sys_statisticsService
from module_admin.entity.vo.sys_statistics_vo import DeleteSys_statisticsModel, Sys_statisticsModel, Sys_statisticsPageQueryModel
from module_admin.entity.vo.identification_record_vo import Identification_recordModel
from utils.common_util import bytes2file_response
from utils.log_util import logger
from utils.page_util import PageResponseModel
@ -18,6 +20,34 @@ from utils.response_util import ResponseUtil
sys_statisticsController = APIRouter(prefix='/system/sys_statistics', dependencies=[Depends(LoginService.get_current_user)])
# 添加识别记录
@sys_statisticsController.post(
'/add_identification_record'
)
async def add_system_identification_record(
request: Request,
add_identification_record: Identification_recordModel,
query_db: AsyncSession = Depends(get_db),
current_user: CurrentUserModel = Depends(LoginService.get_current_user),
):
try:
# 设置创建时间和创建者
add_identification_record.create_time = datetime.now()
add_identification_record.create_by = current_user.user.user_name
# 调用服务层添加识别记录
result = await Identification_recordService.add_identification_record_services(query_db, add_identification_record)
if result.is_success:
logger.info(f'添加识别记录成功: {add_identification_record.person_name}')
return ResponseUtil.success(msg=result.message)
else:
logger.error(f'添加识别记录失败: {result.message}')
return ResponseUtil.error(msg=result.message)
except Exception as e:
logger.error(f'添加识别记录异常: {str(e)}')
return ResponseUtil.error(msg=f'添加识别记录失败: {str(e)}')
# 获取统计数据
@sys_statisticsController.get(

View File

@ -97,7 +97,9 @@ class Identification_recordDao:
:param identification_record: 识别记录对象
:return:
"""
db_identification_record = IdentificationRecord(**identification_record.model_dump(exclude={}))
# 排除 id 字段(自增主键),但保留其他所有字段
data = identification_record.model_dump(exclude={'id'}, exclude_none=True)
db_identification_record = IdentificationRecord(**data)
db.add(db_identification_record)
await db.flush()

View File

@ -18,7 +18,7 @@ class IdentificationRecord(Base):
create_time = Column(DateTime, nullable=True, comment='创建时间')
create_by = Column(String(64), nullable=True, comment='创建者')
conf = Column(BigInteger, default=0, comment='识别置信度')
person_status = Column(String(2), nullable=True, comment=' 0 陌生人, 1 员工')
person_status = Column(String(2), nullable=True, comment=' 0 陌生人, 1 员工, 2 访客')

View File

@ -22,7 +22,7 @@ class Identification_recordModel(BaseModel):
create_time: Optional[datetime] = Field(default=None, description='创建时间')
create_by: Optional[str] = Field(default=None, description='创建者')
conf: Optional[int] = Field(default=None, description='识别置信度')
person_status: Optional[str] = Field(default=None, description=' 0 陌生人, 1 员工')
person_status: Optional[str] = Field(default=None, description=' 0 陌生人, 1 员工, 2 访客')