from ninja import Router, Query from django.shortcuts import get_object_or_404 from accounts.models import User from authorize.models import ResumeDetailAccessRequest from authorize.schemas import ResumeAccessRequestIn from resumes.models import ResumeDetail from utils.auth import jwt_auth from utils.permissions import login_required resume_authorize_router = Router(tags=["简历授权管理"]) @resume_authorize_router.post("/apply", auth=jwt_auth, summary="申请简历详情[普]", description="普通用户申请查看某一份简历详情") @login_required def apply_resume_access(request, data: ResumeAccessRequestIn): user = request.user if not user.is_user(): return {"success": False, "message": "仅普通用户可申请查看简历"} resume = get_object_or_404(ResumeDetail, id=data.resume_id) exists = ResumeDetailAccessRequest.objects.filter( user=user, resume=resume, status="pending" ).exists() if exists: return {"success": False, "message": "您已申请过该简历,正在等待审批"} ResumeDetailAccessRequest.objects.create( user=user, resume=resume, reason=data.reason or "" ) return {"success": True, "message": "申请已提交,等待审批"}