feat: 添加数据纠错功能,修复日志异常

This commit is contained in:
皓月归尘 2025-03-01 15:17:55 +08:00
parent d6fcd38cd5
commit 3d7021dc6b
2 changed files with 38 additions and 13 deletions

View File

@ -580,7 +580,7 @@ async def get_code_log_detail(request: Request,
): ):
sub_departments = current_user.get("sub_departments") sub_departments = current_user.get("sub_departments")
if log := await QueryCodeLog.get_or_none(id=id, operator__department__id__in=sub_departments, del_flag=1): if log := await QueryCodeLog.get_or_none(id=id, operator__department__id__in=sub_departments, del_flag=1):
data = await log.first().values( data = await log.get(id=id).values(
id="id", id="id",
query_count="query_count", query_count="query_count",
result_count="result_count", result_count="result_count",
@ -633,10 +633,16 @@ async def add_feedback(request: Request,
feedback_description=params.feedback_description, feedback_description=params.feedback_description,
user_id=str(user_id), user_id=str(user_id),
) )
if feedback: else:
return Response.success(msg="添加成功!") feedback = await CodeFeedback.create(
return Response.failure(msg="添加失败!") code=None,
return Response.failure(msg="编码不存在!") feedback_code=params.feedback_code,
feedback_description=params.feedback_description,
user_id=str(user_id),
)
if feedback:
return Response.success(msg="添加成功!")
return Response.failure(msg="添加失败!")
@codeAPI.delete("/deleteFeedbackList", response_class=JSONResponse, response_model=BaseResponse, @codeAPI.delete("/deleteFeedbackList", response_class=JSONResponse, response_model=BaseResponse,
@ -672,7 +678,7 @@ async def update_feedback(request: Request,
if code: if code:
feedback.code = code feedback.code = code
else: else:
return Response.failure(msg="编码不存在!") feedback.code = None
feedback.feedback_description = params.feedback_description feedback.feedback_description = params.feedback_description
feedback.feedback_code = params.feedback_code feedback.feedback_code = params.feedback_code
await feedback.save() await feedback.save()
@ -793,14 +799,28 @@ async def feedback_audit(request: Request,
if feedback := await CodeFeedback.get_or_none(id=id, user__department__id__in=sub_departments, del_flag=1): if feedback := await CodeFeedback.get_or_none(id=id, user__department__id__in=sub_departments, del_flag=1):
feedback.status = params.status feedback.status = params.status
if params.status == 1: if params.status == 1:
await Code.filter(id=feedback.code_id, del_flag=1).update(code=feedback.feedback_code, if code := await Code.get_or_none(id=feedback.code_id, del_flag=1):
description=feedback.feedback_description) code.code = feedback.feedback_code
await request.app.state.es.update(index=ElasticSearchConfig.ES_INDEX, id=feedback.code_id, code.description = feedback.feedback_description
body={"doc": {"id": feedback.code_id, "code": feedback.feedback_code, await code.save()
"description": feedback.feedback_description}}) await request.app.state.es.update(index=ElasticSearchConfig.ES_INDEX, id=feedback.code_id,
body={"doc": {"id": feedback.code_id,
"code": feedback.feedback_code,
"description": feedback.feedback_description}})
else:
code = await Code.create(
user_id=feedback.user_id,
code=feedback.feedback_code,
description=feedback.feedback_description,
)
if code:
await request.app.state.es.create(index=ElasticSearchConfig.ES_INDEX,
id=code.id,
body={"id": code.id,
"code": code.code,
"description": code.description})
await feedback.save() await feedback.save()
return Response.failure(msg="编码反馈不存在!") return Response.success(msg="审核成功!")
@codeAPI.delete("/deleteCodeImport/{id}", response_class=JSONResponse, response_model=BaseResponse, @codeAPI.delete("/deleteCodeImport/{id}", response_class=JSONResponse, response_model=BaseResponse,
summary="删除编码导入") summary="删除编码导入")

View File

@ -176,6 +176,7 @@ class CodeFeedback(BaseModel):
"models.Code", "models.Code",
related_name="feedbacks", related_name="feedbacks",
description="编码", description="编码",
null=True,
source_field="code_id" source_field="code_id"
) )
user = fields.ForeignKeyField( user = fields.ForeignKeyField(
@ -228,3 +229,7 @@ class CodeImport(BaseModel):
description="状态0删除1审核通过2审核不通过3待审核", description="状态0删除1审核通过2审核不通过3待审核",
source_field="status" source_field="status"
) )
class Meta:
table = "code_import"
table_description = "编码导入表"