添加更新用户评价 接口
This commit is contained in:
@@ -74,3 +74,16 @@ async def resolve_issue(issue_id: int, param: ResolveParam):
|
||||
async for session in get_db():
|
||||
service = ResumeDiagnoseService(session)
|
||||
await service.resolve_issue(issue_id, user_id, param.user_feedback)
|
||||
|
||||
|
||||
class FeedbackParam(BaseModel):
|
||||
user_feedback: int = Field(..., alias="userFeedback")
|
||||
|
||||
|
||||
@router.put("/issue/{issue_id}/feedback", summary="用户评价诊断问题")
|
||||
async def feedback_issue(issue_id: int, param: FeedbackParam):
|
||||
"""单独更新用户评价(1=符合 2=不符合)"""
|
||||
user_id = RequestContext.user_id.get()
|
||||
async for session in get_db():
|
||||
service = ResumeDiagnoseService(session)
|
||||
await service.update_feedback(issue_id, user_id, param.user_feedback)
|
||||
|
||||
@@ -150,6 +150,17 @@ class ResumeDiagnoseService:
|
||||
issue.user_feedback = user_feedback
|
||||
await self.session.flush()
|
||||
|
||||
async def update_feedback(self, issue_id: int, user_id: int, user_feedback: int) -> None:
|
||||
"""单独更新用户评价"""
|
||||
result = await self.session.execute(
|
||||
select(ResumeDiagnosisIssue).where(
|
||||
ResumeDiagnosisIssue.id == issue_id, ResumeDiagnosisIssue.user_id == user_id))
|
||||
issue = result.scalar_one_or_none()
|
||||
if issue is None:
|
||||
raise ValueError("诊断问题不存在")
|
||||
issue.user_feedback = user_feedback
|
||||
await self.session.flush()
|
||||
|
||||
|
||||
# ===== 工具函数 =====
|
||||
|
||||
|
||||
Reference in New Issue
Block a user