1 |
- import{a as Ce,r as M,aB as Se,q as Ee,aj as N,c as m,o as f,b as e,S as a,K as o,Q as t,M as V,P as _,G as q,R as I,a9 as D,u as L}from"./vue.YrNK8sx4.js";import{m as Re,n as $e,p as Te,q as Be,t as Le,E as C}from"./index.DfEx8z43.js";import{_ as Pe}from"./_plugin-vue_export-helper.DlAUqK2U.js";const Ue={class:"min-h-screen bg-gradient-custom"},He={class:"max-w-4xl mx-auto p-6 relative overflow-y-auto",style:{height:"100vh"}},Ge={class:"bg-[#1d1e3a] text-white p-4 rounded-t-lg"},We={class:"flex justify-between items-center"},ze={class:"text-sm"},Ze={class:"text-sm"},Fe={key:0,class:"bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative",role:"alert"},Ye={class:"block sm:inline"},Oe={key:1,class:"bg-white rounded-b-lg shadow-lg p-6"},Qe={class:"flex justify-between items-center mb-8 pb-4 border-b"},Je={class:"flex items-center space-x-4"},Ke={class:"w-20 h-20 bg-gray-200 rounded-lg overflow-hidden"},Xe=["src"],es={class:"text-2xl font-bold"},ss={class:"text-gray-600"},ts={key:0,class:"text-gray-500 text-sm"},ls={class:"text-right"},as={class:"text-4xl font-bold text-yellow-500"},is={class:"text-sm text-yellow-500"},os={class:"grid grid-cols-1 md:grid-cols-3 gap-4 mb-8"},ns={class:"font-semibold text-blue-600"},rs={class:"sticky-tabs"},ds={class:"custom-tabs"},cs={id:"comprehensive-assessment",class:"mb-8 pt-4 border-t border-transparent"},us={class:"mb-8"},_s={class:"space-y-4"},ps={id:"hire-recommendation",class:"border-b pb-4"},vs={class:"border-b pb-4"},ms={class:"flex items-center justify-between mb-2"},fs={class:"text-gray-600 text-sm"},gs={id:"red-line",class:"border-b pb-4"},ys={class:"flex items-center justify-between mb-2"},hs={key:0,class:"mt-2 border-l-4 border-red-500 pl-3 bg-red-50 p-2 rounded"},bs={key:0,class:"list-disc pl-5 text-gray-600 text-sm"},xs={key:1,class:"text-gray-600 text-sm"},ws={key:0,id:"strengths",class:"border-b pb-4"},ks={class:"list-disc pl-5 text-gray-600 text-sm"},Is={key:1,id:"weaknesses",class:"border-b pb-4"},As={class:"list-disc pl-5 text-gray-600 text-sm"},Ds={id:"duv-analysis",class:"border-b pb-4"},Ms={class:"flex items-center justify-between mt-4 mb-2"},Vs={class:"ml-2 text-sm"},Ns={class:"text-gray-600 text-sm"},js={id:"image-analysis",class:"mb-8 pt-4 border-t border-transparent"},qs={class:"space-y-4"},Cs={class:"flex items-center justify-between mb-2"},Ss={class:"text-gray-600"},Es={class:"text-gray-600 text-sm"},Rs={id:"answer-records",class:"mb-8 pt-4 border-t border-transparent"},$s={class:"space-y-4"},Ts={class:"mb-4"},Bs={class:"flex items-start space-x-2"},Ls={class:"bg-blue-100 text-blue-800 px-2 py-1 rounded text-sm"},Ps={class:"flex-1"},Us={class:"font-semibold text-gray-800"},Hs={key:0,class:"mt-4 flex space-x-4"},Gs={class:"w-2/3"},Ws={class:"bg-white p-4 rounded-lg"},zs={class:"mb-4"},Zs={class:"flex items-start space-x-2"},Fs={class:"flex-1"},Ys={class:"text-gray-700"},Os={class:"flex items-start space-x-2"},Qs={class:"flex-1"},Js={class:"text-gray-600 m-0"},Ks={class:"mt-1 text-blue-500"},Xs={class:"w-1/3"},et={class:"video-container"},st=["src","poster"],tt={key:1,class:"mt-4"},lt={class:"bg-white p-4 rounded-lg"},at={class:"flex items-center justify-between mb-3"},it={class:"flex items-center space-x-2"},ot={class:"text-gray-700",style:{margin:"0"}},nt={key:0,class:"mt-3 space-y-2"},rt={class:"flex items-start"},dt={class:"mr-2 text-gray-500"},ct={class:"flex-1"},ut={class:"text-gray-700"},_t={key:0,class:"text-xs text-green-600 mt-1"},pt={key:2,class:"mt-4 flex space-x-4"},vt={class:"w-1/3"},mt={class:"bg-white p-4 rounded-lg"},ft={class:"flex items-start space-x-2"},gt={class:"flex-1"},yt={class:"text-gray-700",style:{margin:"0"}},ht={class:"mt-2"},bt={class:"w-2/3"},xt={class:"rounded-lg overflow-hidden bg-gray-100"},wt=["src"],kt={id:"other-info",class:"mb-8 pt-4 border-t border-transparent"},It={class:"space-y-6"},At={class:"space-y-2"},Dt={class:"flex items-center space-x-2"},Mt={class:"text-green-500"},Vt={class:"flex items-center space-x-2"},Nt={class:"text-green-500"},jt={class:"flex items-center space-x-2"},qt={class:"text-green-500"},Ct={class:"flex items-center space-x-2"},St={class:"text-green-500"},Et={class:"space-y-4"},Rt={class:"flex items-center space-x-2"},$t={class:"text-green-500"},Tt={class:"pl-4 space-y-2"},Bt={class:"flex items-center space-x-2"},Lt={class:"text-green-500"},Pt={class:"flex items-center space-x-2"},Ut={class:"text-green-500"},Ht={class:"flex items-center space-x-2"},Gt={class:"text-green-500"},Wt={class:"grid grid-cols-2 gap-8 mt-4"},zt={class:"grid grid-cols-3 gap-2"},Zt=["src"],Ft={class:"grid grid-cols-3 gap-2"},Yt=["src"],Ot={class:"grid grid-cols-3 md:grid-cols-6 gap-2"},Qt=["src"],Jt={class:"fixed right-8 bottom-24 flex flex-col space-y-4"},Kt={key:0,class:"user-profile-content"},Xt={class:"profile-section"},el={class:"profile-section"},sl={key:0,class:"profile-section"},tl={key:1,class:"profile-section"},ll={key:2,class:"profile-section"},al={key:3,class:"profile-section"},il={key:1,class:"empty-data"},ol={class:"dialog-footer"},nl=Ce({__name:"index",setup(rl){const i=M({name:"",idNumber:"",phoneNumber:"",score:0,availabilityPeriod:"",onboardingTime:"",suggestedSalary:"",salaryRange:"",dimensions:{teamwork:"欠佳",learningAbility:"优秀",attention:"欠佳",workAdaptability:"优秀",serviceAwareness:"中等"},dimensionDetails:{teamwork:"",learningAbility:"",attention:"",workAdaptability:"",serviceAwareness:""},duvAnalysis:[{title:"",content:"",score:"",type:"neutral"},{title:"",content:"",score:"",type:"neutral"}],interviewRecord:[{question:"",answer:"",analysis:"",score:"",videoUrl:"",thumbnail:"",question_form:0,is_correct:!1,question_image_url:""},{question:"",answer:"",analysis:"",score:"",videoUrl:"",thumbnail:"",question_form:0,is_correct:!1,question_image_url:""}],videoRecords:[{category:"服务态度测评",videos:[{url:"",thumbnail:"",description:""},{url:"",thumbnail:"",description:""}]}],additionalInfo:{idVerification:"通过",phoneVerification:"通过",leftHandGestures:{passed:!0,images:[]},rightHandGestures:{passed:!0,images:[]},faceVerification:{passed:!0,images:[]},comprehensiveVerification:"通过",handVerification:"通过",handBrightness:"通过",handIntegrity:"通过",handPoseRecognition:"通过"},strengths:[],weaknesses:[],hireRecommendation:"",hireReason:""}),x=M(null),G=M(!0),P=M(""),j=Se(),ye=async()=>{G.value=!0;try{const l=j.query.id||"1",s=j.query.tenant_id||"1",c=j.query.application_id||"1";console.log("Route params:",{id:l,tenant_id:s,application_id:c});const b=await(await fetch(`https://backend.qicai321.com/api/job/application_detail?tenant_id=${s}&application_id=${l||c}`)).json();b.code===2e3?(x.value=b.data,console.log(b.data),he(b.data)):P.value=b.msg||"获取数据失败"}catch(l){console.error("获取申请详情失败:",l),P.value="获取数据失败,请稍后重试"}finally{G.value=!1}},he=l=>{if(!l)return;const{applicant:s,application:c,position:h,interview_progress:b,posture_photos:d}=l;if(i.value.name=(s==null?void 0:s.name)||i.value.name,i.value.phoneNumber=(s==null?void 0:s.phone)||i.value.phoneNumber,i.value.idNumber=(s==null?void 0:s.id_card)||i.value.idNumber,h)if(h.salary_range?i.value.salaryRange=h.salary_range||"面议":i.value.salaryRange="面议",h.salary_range&&typeof h.salary_range=="string"){let n=0,r=0;if(h.salary_range.includes("-")){const p=h.salary_range.split("-");n=parseInt(p[0].trim().replace(/[^\d]/g,""),10),r=parseInt(p[1].trim().replace(/[^\d]/g,""),10)}else if(h.salary_range.includes("~")){const p=h.salary_range.split("~");n=parseInt(p[0].trim().replace(/[^\d]/g,""),10),r=parseInt(p[1].trim().replace(/[^\d]/g,""),10)}else if(h.salary_range.includes("至")){const p=h.salary_range.split("至");n=parseInt(p[0].trim().replace(/[^\d]/g,""),10),r=parseInt(p[1].trim().replace(/[^\d]/g,""),10)}if(!isNaN(n)&&!isNaN(r)&&n>0&&r>0&&r>n){console.log("score",c.comprehensive_score);const p=c.comprehensive_score;console.log(p);let g=n;if(p>=80?(console.log(r),g=r):p>=60?g=n+Math.floor((r-n)/3):g=0,g>=1e4){const u=(g/1e4).toFixed(1);i.value.suggestedSalary=`${u}万`}else i.value.suggestedSalary=`${g}`}else i.value.suggestedSalary=h.salary_range}else i.value.suggestedSalary="面议";else i.value.salaryRange="面议",i.value.suggestedSalary="面议";if(c!=null&&c.comprehensive_analysis&&(c.comprehensive_analysis.comprehensive_score!==null&&c.comprehensive_analysis.comprehensive_score!==void 0&&(i.value.score=c.comprehensive_analysis.comprehensive_score),c.comprehensive_analysis.video_analysis_data)){const n=c.comprehensive_analysis.video_analysis_data;n.strengths&&n.strengths.length>0&&(i.value.strengths=n.strengths.filter(r=>r&&!r.includes("无法从响应中提取"))),n.weaknesses&&n.weaknesses.length>0&&(i.value.weaknesses=n.weaknesses.filter(r=>r&&!r.includes("无法从响应中提取"))),c.comprehensive_analysis.hire_recommendation&&(i.value.hireRecommendation=c.comprehensive_analysis.hire_recommendation),c.comprehensive_analysis.hire_reason&&(i.value.hireReason=c.comprehensive_analysis.hire_reason)}if(c!=null&&c.ai_capability_scores){const n={专业性:"workAdaptability",沟通能力:"teamwork",技术匹配度:"learningAbility",解决问题能力:"attention",服务意识:"serviceAwareness"};Object.entries(c.ai_capability_scores).forEach(([r,p])=>{const g=n[r];if(g&&typeof p=="number"){let u="中等";p>=80?u="优秀":p<65&&(u="欠佳"),i.value.dimensions[g]=u}})}else{const n={teamwork:[],learningAbility:[],attention:[],workAdaptability:[],serviceAwareness:[]};b==null||b.forEach(r=>{r.video_answer&&r.video_answer.ai_score&&((r.question_text.includes("团队")||r.question_text.includes("合作"))&&n.teamwork.push(r.video_answer.ai_score),(r.question_text.includes("学习")||r.question_text.includes("技能"))&&n.learningAbility.push(r.video_answer.ai_score),(r.question_text.includes("细致")||r.question_text.includes("严谨")||r.question_text.includes("注意"))&&n.attention.push(r.video_answer.ai_score),(r.question_text.includes("适应")||r.question_text.includes("工作"))&&n.workAdaptability.push(r.video_answer.ai_score),(r.question_text.includes("服务")||r.question_text.includes("客户"))&&n.serviceAwareness.push(r.video_answer.ai_score))}),Object.entries(n).forEach(([r,p])=>{if(p.length>0){const g=p.reduce((k,E)=>k+E,0)/p.length;let u="中等";g>=80?u="优秀":g<65&&(u="欠佳"),i.value.dimensions[r]=u}})}const A={teamwork:"候选人在团队协作方面的表现",learningAbility:"候选人的学习能力和接受新知识的速度",attention:"候选人对细节的关注程度和工作严谨性",workAdaptability:"候选人适应工作环境和要求的能力",serviceAwareness:"候选人的服务意识和客户导向思维"};if(Object.keys(i.value.dimensionDetails).forEach(n=>{const r=n,p=i.value.dimensions[r];let g=A[r]||"";p==="优秀"?g+="表现优秀,符合岗位要求。":p==="中等"?g+="表现一般,基本符合岗位要求。":g+="表现欠佳,需要进一步提升。",i.value.dimensionDetails[r]=g}),b&&b.length>0&&(i.value.interviewRecord=b.filter(n=>n.video_answer).map(n=>{var g,u,k,E,B;let r=((g=n.video_answer)==null?void 0:g.transcript)||"",p=!1;return n.answer_data&&n.answer_data.selected_option_details&&n.answer_data.selected_option_details.length>0&&(r=n.answer_data.selected_option_details.map($=>$.option_text).join(", "),p=n.answer_data.selected_option_details.map($=>$.is_correct).join(", ")),console.log(n),{question:n.question_text||"未提供问题",answer:r,analysis:((k=(u=n.video_answer)==null?void 0:u.ai_analysis)==null?void 0:k.comment)||"",score:(E=n.video_answer)!=null&&E.ai_score?`${n.video_answer.ai_score}分`:"",question_form:n.question_form,is_correct:p,videoUrl:((B=n.video_answer)==null?void 0:B.video_url)||"",question_image_url:n.question_image_url||"",options:n.options||[],thumbnail:""}})),c!=null&&c.visual_analysis_results&&c.visual_analysis_results.photo_results){const n=[];c.visual_analysis_results.photo_results.forEach(r=>{r.detections&&r.detections.length>0&&r.detections.forEach(p=>{n.push({title:p.feature||"特征分析",content:p.location?`在${p.location}发现${p.feature}${p.description?","+p.description:""}`:p.feature+(p.description?","+p.description:""),score:p.confidence>=.8?"确认":"疑似",type:p.description&&p.description.includes("影响")?"negative":"neutral"})})}),n.length>0?i.value.duvAnalysis=n:i.value.duvAnalysis=[{title:"未发现特殊特征",content:"未在照片中检测到特殊特征",score:"正常",type:"positive"}]}else c!=null&&c.visual_analysis_results&&c.visual_analysis_results.detections?i.value.duvAnalysis=c.visual_analysis_results.detections.map(n=>({title:n.feature||"特征分析",content:n.location?`在${n.location}发现${n.feature}`:n.feature,score:n.confidence>=.8?"确认":"疑似",type:"neutral"})):i.value.duvAnalysis=[{title:"未进行DUV分析",content:"未提供DUV分析数据",score:"未知",type:"neutral"}];if(d&&d.length>0){const n=d.filter(g=>g.description.includes("left_")||g.description.includes("左手")).map(g=>g.photo_url);n.length>0&&(i.value.additionalInfo.leftHandGestures.images=n);const r=d.filter(g=>g.description.includes("right_")||g.description.includes("右手")).map(g=>g.photo_url);r.length>0&&(i.value.additionalInfo.rightHandGestures.images=r);const p=d.filter(g=>g.description.includes("面部")||!g.description.includes("left_")&&!g.description.includes("right_")&&!g.description.includes("左手")&&!g.description.includes("右手")).map(g=>g.photo_url);p.length>0&&(i.value.additionalInfo.faceVerification.images=p)}if(b&&b.length>0){const n={};b.forEach(r=>{if(r.video_answer&&r.video_answer.video_url){const p=r.question_type_display||"面试视频";n[p]||(n[p]=[]),n[p].push({url:r.video_answer.video_url,thumbnail:"/images/video-placeholder.jpg",description:r.question_text})}}),i.value.videoRecords=Object.entries(n).map(([r,p])=>({category:r,videos:p}))}i.value.availabilityPeriod="无特殊情况",i.value.onboardingTime="随时可以入职"};Ee(()=>{console.log("完整URL:",window.location.href),console.log("路径:",window.location.pathname),console.log("查询字符串:",window.location.search),console.log("哈希:",window.location.hash),ye(),setTimeout(()=>{console.log("检查页面ID:"),["comprehensive-assessment","image-analysis","answer-records","other-info"].forEach(l=>{const s=document.getElementById(l);console.log(`ID ${l} 存在:`,!!s)})},1e3),window.addEventListener("scroll",()=>{const l=["comprehensive-assessment","image-analysis","answer-records","other-info"];for(const s of l){const c=document.getElementById(s);if(c){const h=c.getBoundingClientRect();if(h.top<=150&&h.bottom>=150){Q(s);break}}}},{passive:!0})}),M(0),M(""),M();const W=M(null),be=()=>{if(console.log("尝试滚动到顶部"),W.value){W.value.scrollIntoView({behavior:"smooth",block:"start"}),console.log("使用ref滚动到顶部");return}const l=document.getElementById("report-top");if(l){l.scrollIntoView({behavior:"smooth",block:"start"}),console.log("使用ID滚动到顶部");return}},xe=()=>{C.success("分享链接已复制")},we=async()=>{try{const l=j.query.id||"1",s=j.query.tenant_id||"1",c=j.query.application_id||"1";C.success("报告下载中...");const b=await(await fetch(`https://backend.qicai321.com/api/system/job/export_application_pdf?application_id=${l||c}&tenant_id=${s}`)).json();b.code===2e3?C.success("下载任务已创建,请前往下载中心查看"):C.error(b.msg||"下载任务创建失败")}catch(l){console.error("创建下载任务失败:",l),C.error("创建下载任务失败,请稍后重试")}},F=[],ke=()=>{const l=window.scrollY,s=document.body.style.overflow,c=document.body.style.height;document.body.style.overflow="visible",document.body.style.height="auto";const h=document.querySelectorAll(".fixed");h.forEach((b,d)=>{const A=b;F[d]=A.style.display,A.style.display="none"}),setTimeout(()=>{window.print(),document.body.style.overflow=s,document.body.style.height=c,h.forEach((b,d)=>{const A=b;A.style.display=F[d]}),window.scrollTo(0,l),C.success("打印完成")},300)},R=M("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cmVjdCB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCIgZmlsbD0iI2VlZWVlZSIvPjxwYXRoIGQ9Ik03NSA2NUExMCAxMCAwIDAgMSA4NSA3NUExMCAxMCAwIDAgMSA3NSA4NUExMCAxMCAwIDAgMSA2NSA3NUExMCAxMCAwIDAgMSA3NSA2NVoiIGZpbGw9IiNhYWFhYWEiLz48cGF0aCBkPSJNMTIwIDEzNUw5MCAxMDVMNjAgMTM1TDYwIDE0MEwxNDAgMTQwTDE0MCAxMzVMMTIwIDExNVoiIGZpbGw9IiNhYWFhYWEiLz48L3N2Zz4="),T=l=>{const s=l.target;s&&(s.src=R.value,s.onerror=null)},Y=l=>{const s=()=>{try{if(l.readyState>=2){const c=document.createElement("canvas");c.width=l.videoWidth||320,c.height=l.videoHeight||240;const h=c.getContext("2d");if(h){l.currentTime=.1,h.drawImage(l,0,0,c.width,c.height);const b=c.toDataURL("image/jpeg");l.poster=b,l.removeEventListener("loadeddata",s)}}}catch(c){console.error("捕获视频第一帧失败:",c),l.poster=R.value}};l.addEventListener("loadeddata",s),l.readyState>=2&&s(),l.addEventListener("error",()=>{console.error("视频加载失败"),l.poster=R.value}),setTimeout(()=>{(!l.poster||l.poster==="")&&(l.poster=R.value)},3e3)},Ie=l=>{const s=l.target;s&&(s.readyState>=1?Y(s):s.addEventListener("loadedmetadata",()=>{Y(s)}))},Ae=l=>{const s=l.target;s&&(s.poster=R.value,console.error("视频加载错误"))},De=l=>l===void 0?"未进行心理测评或数据缺失":l<=20?"心理状态健康,情绪稳定、认知正常。候选人在心理测评中表现出稳定的情绪状态和健康的心理特质,适合岗位要求。":l<=35?"轻微焦虑或负面情绪,仍具备岗位适应力。候选人在某些方面可能存在轻微的心理压力,但总体上仍保持稳定,基本符合岗位要求。":l<=55?"存在一定情绪波动或压力反应。候选人在测评中表现出一定程度的心理压力或情绪波动,建议进一步面谈评估。":l<=70?"心理压力较大,可能影响工作稳定性。候选人在测评中表现出较明显的心理压力或情绪不稳定性,建议慎重录用或考虑调岗。":"可能存在较严重心理或精神问题。候选人在测评中表现出明显的心理或情绪问题,不建议录用。",O=l=>l===void 0?"text-gray-500":l<=20?"text-green-500":l<=35?"text-blue-500":l<=55?"text-yellow-500":l<=70?"text-orange-500":"text-red-500",Me=l=>l===void 0?"未知":l<=20?"优秀":l<=35?"良好":l<=55?"一般":l<=70?"偏差":"严重异常",Ve=l=>l===void 0?"无法给出建议":l<=20?"建议优先录取":l<=35?"可考虑录取":l<=55?"建议进一步面谈评估":l<=70?"慎重录用或建议调岗":"不建议录用",Ne=l=>l!==void 0?l:0,y=M(null),U=M(!1),z=M(!1),je=async()=>{var l,s;z.value=!0;try{const c=((s=(l=x.value)==null?void 0:l.applicant)==null?void 0:s.id)||j.query.user_id||"30",h=j.query.tenant_id||"1",d=await(await fetch(`https://backend.qicai321.com/api/system/wechat/user/profile/get?user_id=${c}&tenant_id=${h}`)).json();d.code===2e3?(y.value=d.data,U.value=!0):C.error(d.msg||"获取用户信息失败")}catch(c){console.error("获取用户个人信息失败:",c),C.error("获取用户信息失败,请稍后重试")}finally{z.value=!1}},S=l=>{if(!l)return"未设置";try{return new Date(l).toLocaleDateString("zh-CN")}catch{return l}},qe=()=>{je()},Q=l=>{document.querySelectorAll(".tab-item").forEach(h=>{h.classList.remove("active")});const c={"comprehensive-assessment":0,"image-analysis":1,"answer-records":2,"other-info":3}[l];c!==void 0&&document.querySelectorAll(".tab-item")[c].classList.add("active")},H=l=>{console.log("尝试滚动到部分:",l);const s=document.getElementById(l);s&&(s.scrollIntoView({behavior:"smooth",block:"start"}),setTimeout(()=>{window.scrollBy({top:-100,behavior:"smooth"}),Q(l)},100))};return(l,s)=>{const c=N("a-spin"),h=N("el-icon"),b=N("el-button"),d=N("el-descriptions-item"),A=N("el-descriptions"),n=N("el-empty"),r=N("el-spin"),p=N("el-scrollbar"),g=N("el-dialog");return f(),m(I,null,[e("div",Ue,[e("div",He,[e("div",{id:"report-top",ref_key:"reportTop",ref:W},null,512),a(c,{spinning:G.value,tip:"加载中..."},{default:o(()=>{var u,k,E,B,$,J,K,X,ee,se,te,le,ae,ie,oe,ne,re,de,ce,ue,_e,pe,ve,me,fe;return[e("div",Ge,[e("div",We,[e("div",ze,"No."+t(((k=(u=x.value)==null?void 0:u.application)==null?void 0:k.report_id)||i.value.idNumber),1),e("div",Ze,t(new Date().toLocaleString()),1)])]),P.value?(f(),m("div",Fe,[s[6]||(s[6]=e("strong",{class:"font-bold"},"错误!",-1)),e("span",Ye,t(P.value),1)])):(f(),m("div",Oe,[e("div",Qe,[e("div",Je,[e("div",Ke,[e("img",{src:i.value.additionalInfo.faceVerification.images[0],alt:"头像",class:"w-full h-full object-cover",onError:T},null,40,Xe)]),e("div",null,[e("h1",es,t(i.value.name),1),e("p",ss,t(i.value.phoneNumber),1),(E=x.value)!=null&&E.position?(f(),m("p",ts," 应聘职位: "+t(x.value.position.title)+" - "+t(x.value.position.department),1)):V("",!0)])]),e("div",ls,[e("div",as,[_(t(i.value.score),1),s[7]||(s[7]=e("span",{class:"text-base ml-1"},"分",-1))]),e("div",is,t(i.value.score>=70?"推荐 👍":i.value.score>=60?"待定 🤔":"不推荐 👎"),1)])]),e("div",os,[e("div",null,[s[8]||(s[8]=e("label",{class:"text-gray-600"},"身份证号",-1)),e("div",null,t(i.value.idNumber),1)]),e("div",null,[s[9]||(s[9]=e("label",{class:"text-gray-600"},"薪资范围",-1)),e("div",null,t(i.value.salaryRange),1)]),e("div",null,[s[10]||(s[10]=e("label",{class:"text-gray-600"},"建议薪资",-1)),e("div",ns,t(i.value.suggestedSalary),1)])]),e("div",rs,[e("div",ds,[e("div",{class:"tab-item active",onClick:s[0]||(s[0]=v=>H("comprehensive-assessment"))},s[11]||(s[11]=[e("span",null,"综合评估",-1)])),e("div",{class:"tab-item",onClick:s[1]||(s[1]=v=>H("image-analysis"))},s[12]||(s[12]=[e("span",null,"图片分析评估",-1)])),e("div",{class:"tab-item",onClick:s[2]||(s[2]=v=>H("answer-records"))},s[13]||(s[13]=[e("span",null,"回答记录",-1)])),e("div",{class:"tab-item",onClick:s[3]||(s[3]=v=>H("other-info"))},s[14]||(s[14]=[e("span",null,"其他信息",-1)]))])]),e("div",cs,[e("div",us,[s[22]||(s[22]=e("h2",{class:"text-xl font-bold mb-6"},"1. 综合评估",-1)),e("div",_s,[e("div",ps,[e("div",vs,[e("div",ms,[s[15]||(s[15]=e("span",{class:"text-gray-600"},"录用建议",-1)),e("span",{class:q({"text-green-500":(B=i.value.hireRecommendation)==null?void 0:B.includes("推荐"),"text-red-500":($=i.value.hireRecommendation)==null?void 0:$.includes("不推荐"),"text-yellow-500":!((J=i.value.hireRecommendation)!=null&&J.includes("推荐"))&&!((K=i.value.hireRecommendation)!=null&&K.includes("不推荐"))})},t(i.value.hireRecommendation||"无建议"),3)]),e("p",fs,t(i.value.hireReason||"无详细说明"),1)])]),e("div",gs,[e("div",ys,[s[16]||(s[16]=e("span",{class:"text-gray-600",style:{color:"red"}},"红线题检测结果",-1)),e("span",{class:q({"text-green-500":(ee=(X=x.value)==null?void 0:X.required_questions_summary)==null?void 0:ee.all_correct,"text-red-500":((se=x.value)==null?void 0:se.required_questions_summary)&&!x.value.required_questions_summary.all_correct})},t((le=(te=x.value)==null?void 0:te.required_questions_summary)!=null&&le.all_correct?"全部正确":"存在错误,建议不录用"),3)]),(ae=x.value)!=null&&ae.required_questions_summary&&!x.value.required_questions_summary.all_correct?(f(),m("div",hs,[s[17]||(s[17]=e("p",{class:"text-red-700 font-medium mb-1"},"未通过的红线题:",-1)),x.value.required_questions_summary.failed_questions_details.length>0?(f(),m("ul",bs,[(f(!0),m(I,null,D(x.value.required_questions_summary.failed_questions_details,(v,w)=>(f(),m("li",{key:"failed-"+w},t(v.question_text||`问题 ${w+1}`),1))),128))])):(f(),m("p",xs,"未提供详细信息"))])):V("",!0)]),i.value.strengths&&i.value.strengths.length>0?(f(),m("div",ws,[s[18]||(s[18]=e("h3",{class:"font-semibold mb-2"},"优点",-1)),e("ul",ks,[(f(!0),m(I,null,D(i.value.strengths,(v,w)=>(f(),m("li",{key:"strength-"+w},t(v),1))),128))])])):V("",!0),i.value.weaknesses&&i.value.weaknesses.length>0?(f(),m("div",Is,[s[19]||(s[19]=e("h3",{class:"font-semibold mb-2"},"需改进的地方",-1)),e("ul",As,[(f(!0),m(I,null,D(i.value.weaknesses,(v,w)=>(f(),m("li",{key:"weakness-"+w},t(v),1))),128))])])):V("",!0),e("div",Ds,[e("div",Ms,[s[20]||(s[20]=e("span",{class:"text-gray-600"},"DUV 心理测评得分",-1)),e("span",{class:q(O((oe=(ie=x.value)==null?void 0:ie.scoring_summary)==null?void 0:oe.total_score_obtained))},[_(t(Ne((re=(ne=x.value)==null?void 0:ne.scoring_summary)==null?void 0:re.total_score_obtained))+" ",1),e("span",Vs,"("+t(Me((ce=(de=x.value)==null?void 0:de.scoring_summary)==null?void 0:ce.total_score_obtained))+")",1)],2)]),e("p",Ns,t(De((_e=(ue=x.value)==null?void 0:ue.scoring_summary)==null?void 0:_e.total_score_obtained)),1),e("p",{class:q(["text-sm mt-1",O((ve=(pe=x.value)==null?void 0:pe.scoring_summary)==null?void 0:ve.total_score_obtained)])},[s[21]||(s[21]=e("strong",null,"录用建议:",-1)),_(" "+t(Ve((fe=(me=x.value)==null?void 0:me.scoring_summary)==null?void 0:fe.total_score_obtained)),1)],2)])])])]),e("div",js,[s[23]||(s[23]=e("h2",{class:"text-xl font-bold mb-6"},"2. 图片分析评估",-1)),e("div",qs,[(f(!0),m(I,null,D(i.value.duvAnalysis,(v,w)=>(f(),m("div",{key:w,class:"border-b pb-4"},[e("div",Cs,[e("span",Ss,t(v.title),1),e("span",{class:q({"text-green-500":v.type==="positive","text-red-500":v.type==="negative","text-yellow-500":v.type==="neutral"})},t(v.score),3)]),e("p",Es,t(v.content),1)]))),128))])]),e("div",Rs,[s[29]||(s[29]=e("h2",{class:"text-xl font-bold mb-6"},"3. 回答记录",-1)),e("div",$s,[(f(!0),m(I,null,D(i.value.interviewRecord,(v,w)=>(f(),m("div",{key:w,class:"bg-gray-50 rounded-lg p-4"},[e("div",Ts,[e("div",Bs,[e("div",Ls,"第"+t(w+1)+"题",1),e("div",Ps,[e("h3",Us,t(v.question),1)])]),v.question_form===0?(f(),m("div",Hs,[e("div",Gs,[e("div",Ws,[e("div",zs,[e("div",Zs,[s[24]||(s[24]=e("div",{class:"bg-green-100 text-green-800 px-2 py-1 rounded text-sm"},"候选人",-1)),e("div",Fs,[e("p",Ys,t(v.answer),1)])])]),e("div",null,[e("div",Os,[s[25]||(s[25]=e("div",{class:"bg-yellow-100 text-yellow-800 px-2 py-1 rounded text-sm"},"AI评分",-1)),e("div",Qs,[e("p",Js,t(v.analysis),1),e("div",Ks,"得分:"+t(v.score),1)])])])])]),e("div",Xs,[e("div",et,[e("video",{class:"w-full h-full object-cover rounded-lg",controls:"",src:v.videoUrl,preload:"metadata",poster:R.value,onLoadeddata:Ie,onError:Ae}," 您的浏览器不支持视频播放。 ",40,st)])])])):v.question_form===1||v.question_form===2||v.question_form===4?(f(),m("div",tt,[e("div",lt,[e("div",at,[e("div",it,[s[26]||(s[26]=e("div",{class:"bg-green-100 text-green-800 px-2 py-1 rounded text-sm"},"候选人:",-1)),e("p",ot,t(v.answer),1)]),e("div",null,[v.question_form===1||v.question_form===2?(f(),m("span",{key:0,class:q(["px-3 py-1 rounded-full text-sm",v.is_correct===!0||v.is_correct==="true"?"bg-green-100 text-green-800":"bg-red-100 text-red-800"])},t(v.is_correct===!0||v.is_correct==="true"?"正确":"错误"),3)):V("",!0)])]),v.options&&v.options.length>0?(f(),m("div",nt,[s[27]||(s[27]=e("div",{class:"text-sm text-gray-500 mb-1"},"所有选项:",-1)),(f(!0),m(I,null,D(v.options,(Z,ge)=>(f(),m("div",{key:ge,class:q(["p-2 rounded border",v.answer.includes(Z.option_text)?"border-blue-300 bg-blue-50":"border-gray-200"])},[e("div",rt,[e("div",dt,t(String.fromCharCode(65+ge))+".",1),e("div",ct,[e("div",ut,t(Z.option_text),1),Z.is_correct?(f(),m("div",_t,"✓ 正确答案")):V("",!0)])])],2))),128))])):V("",!0)])])):v.question_form===3?(f(),m("div",pt,[e("div",vt,[e("div",mt,[e("div",ft,[s[28]||(s[28]=e("div",{class:"bg-green-100 text-green-800 px-2 py-1 rounded text-sm"},"候选人",-1)),e("div",gt,[e("p",yt,t(v.answer),1),e("div",ht,[e("span",{class:q(["px-3 py-1 rounded-full text-sm",v.is_correct===!0||v.is_correct==="true"?"bg-green-100 text-green-800":"bg-red-100 text-red-800"])},t(v.is_correct===!0||v.is_correct==="true"?"正确":"错误"),3)])])])])]),e("div",bt,[e("div",xt,[e("img",{src:v.question_image_url,alt:"题目图片",class:"w-full h-full object-cover rounded-lg",onError:T},null,40,wt)])])])):V("",!0)])]))),128))])]),e("div",kt,[s[41]||(s[41]=e("h2",{class:"text-xl font-bold mb-6"},"4. 其他信息",-1)),e("div",It,[e("div",At,[e("div",Dt,[s[30]||(s[30]=e("span",{class:"text-gray-600"},"身份认证:",-1)),e("span",Mt,t(i.value.additionalInfo.idVerification),1)]),e("div",Vt,[s[31]||(s[31]=e("span",{class:"text-gray-600"},"手机号实名认证:",-1)),e("span",Nt,t(i.value.additionalInfo.phoneVerification),1)]),e("div",jt,[s[32]||(s[32]=e("span",{class:"text-gray-600"},"综合A类评估:",-1)),e("span",qt,t(i.value.additionalInfo.comprehensiveVerification),1)]),e("div",Ct,[s[33]||(s[33]=e("span",{class:"text-gray-600"},"综合B类评估:",-1)),e("span",St,t(i.value.additionalInfo.comprehensiveVerification),1)])]),e("div",Et,[e("div",Rt,[s[34]||(s[34]=e("span",{class:"text-gray-600"},"手部综合检测:",-1)),e("span",$t,t(i.value.additionalInfo.handVerification),1)]),e("div",Tt,[e("div",Bt,[s[35]||(s[35]=e("span",{class:"text-gray-600"},"手指灵活度:",-1)),e("span",Lt,t(i.value.additionalInfo.handBrightness),1)]),e("div",Pt,[s[36]||(s[36]=e("span",{class:"text-gray-600"},"手指完整度:",-1)),e("span",Ut,t(i.value.additionalInfo.handIntegrity),1)]),e("div",Ht,[s[37]||(s[37]=e("span",{class:"text-gray-600"},"手部姿态纹身:",-1)),e("span",Gt,t(i.value.additionalInfo.handPoseRecognition),1)])]),e("div",Wt,[e("div",null,[s[38]||(s[38]=e("div",{class:"mb-2"},[e("h4",{class:"text-sm font-medium"},"左手识别结果"),e("div",{class:"space-y-1"},[e("div",{class:"flex items-center space-x-2"},[e("span",null,"手指灵活度"),e("span",{class:"text-green-500"},"✓")]),e("div",{class:"flex items-center space-x-2"},[e("span",null,"手指完整度"),e("span",{class:"text-green-500"},"✓")]),e("div",{class:"flex items-center space-x-2"},[e("span",null,"手部姿态纹身"),e("span",{class:"text-green-500"},"✓")])])],-1)),e("div",zt,[(f(!0),m(I,null,D(i.value.additionalInfo.leftHandGestures.images,(v,w)=>(f(),m("div",{key:w,class:"aspect-square rounded-lg overflow-hidden bg-gray-100"},[e("img",{src:v,alt:"左手手势",class:"w-full h-full object-cover",onError:T},null,40,Zt)]))),128))])]),e("div",null,[s[39]||(s[39]=e("div",{class:"mb-2"},[e("h4",{class:"text-sm font-medium"},"右手识别结果"),e("div",{class:"space-y-1"},[e("div",{class:"flex items-center space-x-2"},[e("span",null,"手指灵活度"),e("span",{class:"text-green-500"},"✓")]),e("div",{class:"flex items-center space-x-2"},[e("span",null,"手指完整度"),e("span",{class:"text-green-500"},"✓")]),e("div",{class:"flex items-center space-x-2"},[e("span",null,"手部姿态纹身"),e("span",{class:"text-green-500"},"✓")])])],-1)),e("div",Ft,[(f(!0),m(I,null,D(i.value.additionalInfo.rightHandGestures.images,(v,w)=>(f(),m("div",{key:w,class:"aspect-square rounded-lg overflow-hidden bg-gray-100"},[e("img",{src:v,alt:"右手手势",class:"w-full h-full object-cover",onError:T},null,40,Yt)]))),128))])])])]),e("div",null,[s[40]||(s[40]=e("h3",{class:"font-semibold mb-4"},"人脸验证: ",-1)),e("div",Ot,[(f(!0),m(I,null,D(i.value.additionalInfo.faceVerification.images,(v,w)=>(f(),m("div",{key:w,class:"aspect-square rounded-lg overflow-hidden bg-gray-100"},[e("img",{src:v,alt:"人脸验证",class:"w-full h-full object-cover",onError:T},null,40,Qt)]))),128))])])])])]))]}),_:1},8,["spinning"]),e("div",Jt,[a(b,{type:"primary",style:{"margin-left":"12px"},circle:"",onClick:qe},{default:o(()=>[a(h,null,{default:o(()=>[a(L(Re))]),_:1})]),_:1}),a(b,{type:"primary",style:{"margin-left":"12px"},circle:"",onClick:xe},{default:o(()=>[a(h,null,{default:o(()=>[a(L($e))]),_:1})]),_:1}),a(b,{type:"primary",circle:"",onClick:we},{default:o(()=>[a(h,null,{default:o(()=>[a(L(Te))]),_:1})]),_:1}),a(b,{type:"primary",circle:"",onClick:ke},{default:o(()=>[a(h,null,{default:o(()=>[a(L(Be))]),_:1})]),_:1}),a(b,{type:"primary",circle:"",onClick:be},{default:o(()=>[a(h,null,{default:o(()=>[a(L(Le))]),_:1})]),_:1})])])]),a(g,{modelValue:U.value,"onUpdate:modelValue":s[5]||(s[5]=u=>U.value=u),title:"个人详细信息",width:"80%","close-on-click-modal":!1,class:"user-profile-dialog"},{footer:o(()=>[e("span",ol,[a(b,{onClick:s[4]||(s[4]=u=>U.value=!1)},{default:o(()=>s[48]||(s[48]=[_("关闭")])),_:1})])]),default:o(()=>[a(p,{height:"70vh"},{default:o(()=>[a(r,{spinning:z.value},{default:o(()=>[y.value?(f(),m("div",Kt,[e("div",Xt,[s[42]||(s[42]=e("h3",{class:"section-title"},"基本信息",-1)),a(A,{column:3,border:""},{default:o(()=>[a(d,{label:"姓名"},{default:o(()=>[_(t(y.value.user_info.name),1)]),_:1}),a(d,{label:"手机号"},{default:o(()=>[_(t(y.value.user_info.phone),1)]),_:1}),a(d,{label:"年龄"},{default:o(()=>[_(t(y.value.user_info.age)+"岁",1)]),_:1}),a(d,{label:"出生日期"},{default:o(()=>[_(t(S(y.value.user_info.birth_date)),1)]),_:1}),a(d,{label:"性别"},{default:o(()=>[_(t(y.value.user_info.gender_name),1)]),_:1}),a(d,{label:"身份证号"},{default:o(()=>[_(t(y.value.user_info.id_card),1)]),_:1})]),_:1})]),e("div",el,[s[43]||(s[43]=e("h3",{class:"section-title"},"个人资料",-1)),a(A,{column:3,border:""},{default:o(()=>[a(d,{label:"政治面貌"},{default:o(()=>[_(t(y.value.profile.political_status),1)]),_:1}),a(d,{label:"民族"},{default:o(()=>[_(t(y.value.profile.ethnicity),1)]),_:1}),a(d,{label:"身高"},{default:o(()=>[_(t(y.value.profile.height)+"cm",1)]),_:1}),a(d,{label:"体重"},{default:o(()=>[_(t(y.value.profile.weight)+"kg",1)]),_:1}),a(d,{label:"籍贯"},{default:o(()=>[_(t(y.value.profile.native_place),1)]),_:1}),a(d,{label:"户口所在地"},{default:o(()=>[_(t(y.value.profile.household_location),1)]),_:1}),a(d,{label:"现居地址"},{default:o(()=>[_(t(y.value.profile.current_address),1)]),_:1}),a(d,{label:"婚姻状况"},{default:o(()=>[_(t(y.value.profile.marital_status_name),1)]),_:1}),a(d,{label:"是否有子女"},{default:o(()=>[_(t(y.value.profile.has_children?"是":"否"),1)]),_:1}),a(d,{label:"期望薪资"},{default:o(()=>[_(t(y.value.profile.expected_salary),1)]),_:1}),a(d,{label:"紧急联系人"},{default:o(()=>[_(t(y.value.profile.emergency_contact),1)]),_:1}),a(d,{label:"紧急联系电话"},{default:o(()=>[_(t(y.value.profile.emergency_phone),1)]),_:1}),a(d,{label:"特长"},{default:o(()=>[_(t(y.value.profile.specialties),1)]),_:1}),a(d,{label:"人生格言"},{default:o(()=>[_(t(y.value.profile.life_motto),1)]),_:1}),a(d,{label:"招聘来源"},{default:o(()=>[_(t(y.value.profile.recruitment_source_name),1)]),_:1})]),_:1})]),y.value.educations&&y.value.educations.length>0?(f(),m("div",sl,[s[44]||(s[44]=e("h3",{class:"section-title"},"教育经历",-1)),(f(!0),m(I,null,D(y.value.educations,(u,k)=>(f(),m("div",{key:`edu-${k}`,class:"mb-4"},[a(A,{column:3,border:""},{default:o(()=>[a(d,{label:"学历类型"},{default:o(()=>[_(t(u.education_type_name),1)]),_:2},1024),a(d,{label:"学历"},{default:o(()=>[_(t(u.degree_name),1)]),_:2},1024),a(d,{label:"时间段"},{default:o(()=>[_(t(S(u.start_date))+" 至 "+t(S(u.end_date)),1)]),_:2},1024),a(d,{label:"学校名称"},{default:o(()=>[_(t(u.school_name),1)]),_:2},1024),a(d,{label:"专业"},{default:o(()=>[_(t(u.major),1)]),_:2},1024)]),_:2},1024)]))),128))])):V("",!0),y.value.work_experiences&&y.value.work_experiences.length>0?(f(),m("div",tl,[s[45]||(s[45]=e("h3",{class:"section-title"},"工作经历",-1)),(f(!0),m(I,null,D(y.value.work_experiences,(u,k)=>(f(),m("div",{key:`work-${k}`,class:"mb-4"},[a(A,{column:3,border:""},{default:o(()=>[a(d,{label:"公司名称"},{default:o(()=>[_(t(u.company_name),1)]),_:2},1024),a(d,{label:"时间段"},{default:o(()=>[_(t(S(u.start_date))+" 至 "+t(S(u.end_date)),1)]),_:2},1024),a(d,{label:"部门"},{default:o(()=>[_(t(u.department),1)]),_:2},1024),a(d,{label:"职位"},{default:o(()=>[_(t(u.position),1)]),_:2},1024),a(d,{label:"公司规模"},{default:o(()=>[_(t(u.company_size)+"人",1)]),_:2},1024),a(d,{label:"月薪"},{default:o(()=>[_(t(u.monthly_salary),1)]),_:2},1024),a(d,{label:"主管姓名"},{default:o(()=>[_(t(u.supervisor_name),1)]),_:2},1024),a(d,{label:"主管电话"},{default:o(()=>[_(t(u.supervisor_phone),1)]),_:2},1024),a(d,{label:"工作描述",span:3},{default:o(()=>[_(t(u.job_description||"无"),1)]),_:2},1024),a(d,{label:"工作成就",span:3},{default:o(()=>[_(t(u.achievements||"无"),1)]),_:2},1024),a(d,{label:"离职原因",span:3},{default:o(()=>[_(t(u.resignation_reason||"无"),1)]),_:2},1024)]),_:2},1024)]))),128))])):V("",!0),y.value.trainings&&y.value.trainings.length>0?(f(),m("div",ll,[s[46]||(s[46]=e("h3",{class:"section-title"},"培训经历",-1)),(f(!0),m(I,null,D(y.value.trainings,(u,k)=>(f(),m("div",{key:`training-${k}`,class:"mb-4"},[a(A,{column:3,border:""},{default:o(()=>[a(d,{label:"培训名称"},{default:o(()=>[_(t(u.training_name),1)]),_:2},1024),a(d,{label:"培训机构"},{default:o(()=>[_(t(u.institution),1)]),_:2},1024),a(d,{label:"时间段"},{default:o(()=>[_(t(S(u.start_date))+" 至 "+t(S(u.end_date)),1)]),_:2},1024),a(d,{label:"培训描述",span:3},{default:o(()=>[_(t(u.description),1)]),_:2},1024),a(d,{label:"证书"},{default:o(()=>[_(t(u.certificate),1)]),_:2},1024)]),_:2},1024)]))),128))])):V("",!0),y.value.family_members&&y.value.family_members.length>0?(f(),m("div",al,[s[47]||(s[47]=e("h3",{class:"section-title"},"家庭成员",-1)),(f(!0),m(I,null,D(y.value.family_members,(u,k)=>(f(),m("div",{key:`family-${k}`,class:"mb-4"},[a(A,{column:3,border:""},{default:o(()=>[a(d,{label:"关系"},{default:o(()=>[_(t(u.relation),1)]),_:2},1024),a(d,{label:"姓名"},{default:o(()=>[_(t(u.name),1)]),_:2},1024),a(d,{label:"联系电话"},{default:o(()=>[_(t(u.phone),1)]),_:2},1024),a(d,{label:"工作单位"},{default:o(()=>[_(t(u.workplace),1)]),_:2},1024),a(d,{label:"职位"},{default:o(()=>[_(t(u.position),1)]),_:2},1024)]),_:2},1024)]))),128))])):V("",!0)])):(f(),m("div",il,[a(n,{description:"暂无个人信息数据"})]))]),_:1},8,["spinning"])]),_:1})]),_:1},8,["modelValue"])],64)}}}),_l=Pe(nl,[["__scopeId","data-v-e9d00871"]]);export{_l as default};
|