1 |
- import{D,U as W,A as E,d as U}from"./api.6u9vrpGp.js";import{W as w,I as $,j as p,J as r,s as j,S as g,K as O,M as T,O as M,P as m,Q as A,R as o,T as y,U as n}from"./index.DBkxKrhi.js";import{aH as N,S as t,av as h}from"./vue.D1BjjNmv.js";import{a as P}from"./authFunction.BI3j0C0H.js";const H=function({crudExpose:_,context:d}){N();const v=async a=>await U(a),x=async({form:a,row:s})=>(a.id=s.id,await W(a)),R=async({row:a})=>await D(a.id),k=async({form:a})=>await E(a),q=async a=>{try{return(await p.get(`https://backend.qicai321.com/api/system/wechat/user/profile/get?user_id=${a}&tenant_id=${g.get("tenant_id")}`)).data}catch(s){return console.error("获取用户信息失败:",s),null}},S=async a=>{const s=await q(a);if(!s||s.code!==2e3){r("获取用户信息失败");return}console.log(s);const{user_info:l={},profile:e={},educations:i=[],family_members:u=[],trainings:f=[],work_experiences:b=[]}=s.data||{},c=document.createElement("div"),z=t(O,{title:"个人信息详情",width:"70%",modelValue:!0,"onUpdate:modelValue":C=>{C||(h(null,c),document.body.removeChild(c))},beforeClose:()=>{h(null,c),document.body.removeChild(c)}},{default:()=>t(M,{type:"border-card"},{default:()=>[t(m,{label:"基本信息"},{default:()=>t(A,{column:3,border:!0},{default:()=>[t(o,{label:"姓名"},{default:()=>(l==null?void 0:l.name)||"-"}),t(o,{label:"电话"},{default:()=>(l==null?void 0:l.phone)||"-"}),t(o,{label:"年龄"},{default:()=>(l==null?void 0:l.age)||"-"}),t(o,{label:"出生日期"},{default:()=>(l==null?void 0:l.birth_date)||"-"}),t(o,{label:"性别"},{default:()=>(l==null?void 0:l.gender_name)||"-"}),t(o,{label:"身份证号"},{default:()=>(l==null?void 0:l.id_card)||"-"}),t(o,{label:"政治面貌"},{default:()=>(e==null?void 0:e.political_status)||"-"}),t(o,{label:"民族"},{default:()=>(e==null?void 0:e.ethnicity)||"-"}),t(o,{label:"身高"},{default:()=>e!=null&&e.height?e.height+"cm":"-"}),t(o,{label:"体重"},{default:()=>e!=null&&e.weight?e.weight+"kg":"-"}),t(o,{label:"籍贯"},{default:()=>(e==null?void 0:e.native_place)||"-"}),t(o,{label:"户口所在地"},{default:()=>(e==null?void 0:e.household_location)||"-"}),t(o,{label:"现居地址"},{default:()=>(e==null?void 0:e.current_address)||"-"}),t(o,{label:"婚姻状况"},{default:()=>(e==null?void 0:e.marital_status_name)||"-"}),t(o,{label:"是否有子女"},{default:()=>e!=null&&e.has_children?"是":"否"}),t(o,{label:"期望薪资"},{default:()=>(e==null?void 0:e.expected_salary)||"-"}),t(o,{label:"紧急联系人"},{default:()=>(e==null?void 0:e.emergency_contact)||"-"}),t(o,{label:"紧急联系电话"},{default:()=>(e==null?void 0:e.emergency_phone)||"-"}),t(o,{label:"特长"},{default:()=>(e==null?void 0:e.specialties)||"-"}),t(o,{label:"人生格言"},{default:()=>(e==null?void 0:e.life_motto)||"-"}),t(o,{label:"招聘来源"},{default:()=>(e==null?void 0:e.recruitment_source_name)||"-"}),t(o,{label:"招聘来源详情"},{default:()=>(e==null?void 0:e.recruitment_source_detail)||"-"})]})}),t(m,{label:"教育经历"},{default:()=>i&&i.length>0?t(y,{data:i,border:!0,stripe:!0},{default:()=>[t(n,{prop:"education_type_name",label:"学历类型"}),t(n,{prop:"degree_name",label:"学位"}),t(n,{prop:"school_name",label:"学校名称"}),t(n,{prop:"major",label:"专业"}),t(n,{prop:"start_date",label:"开始日期"}),t(n,{prop:"end_date",label:"结束日期"})]}):t("div",{style:"text-align: center; padding: 20px;"},{default:()=>"暂无教育经历数据"})}),t(m,{label:"家庭成员"},{default:()=>u&&u.length>0?t(y,{data:u,border:!0,stripe:!0},{default:()=>[t(n,{prop:"relation",label:"关系"}),t(n,{prop:"name",label:"姓名"}),t(n,{prop:"workplace",label:"工作单位"}),t(n,{prop:"position",label:"职位"}),t(n,{prop:"phone",label:"联系电话"})]}):t("div",{style:"text-align: center; padding: 20px;"},{default:()=>"暂无家庭成员数据"})}),t(m,{label:"工作经历"},{default:()=>b&&b.length>0?t(y,{data:b,border:!0,stripe:!0},{default:()=>[t(n,{prop:"company_name",label:"公司名称"}),t(n,{prop:"department",label:"部门"}),t(n,{prop:"position",label:"职位"}),t(n,{prop:"start_date",label:"开始日期"}),t(n,{prop:"end_date",label:"结束日期"}),t(n,{prop:"monthly_salary",label:"月薪"}),t(n,{prop:"company_size",label:"公司规模"}),t(n,{prop:"supervisor_name",label:"主管姓名"}),t(n,{prop:"supervisor_phone",label:"主管电话"}),t(n,{prop:"resignation_reason",label:"离职原因"})]}):t("div",{style:"text-align: center; padding: 20px;"},{default:()=>"暂无工作经历数据"})})]}),footer:()=>t(T,{onClick:()=>{h(null,c),document.body.removeChild(c)}},{default:()=>"关闭"})});document.body.appendChild(c),h(z,c)};return{crudOptions:{toolbar:{buttons:{search:{show:!1},refresh:{show:!1},compact:{show:!1},export:{text:"导出",type:"primary",size:"small",icon:"upload",circle:!1,display:!0,show:!1},columns:{show:!1}}},request:{pageRequest:v,addRequest:k,editRequest:x,delRequest:R},actionbar:{buttons:{add:{show:!1},batchUpdateStatus:{text:"批量修改状态",type:"primary",show:!0,order:1,size:"small",click:()=>{const a=d.selectedRows||[];if(!a||a.length===0){r("请先选择要操作的候选人");return}d.openBatchStatusDialog(a)}},SMSnotification:{text:"批量短信通知",type:"primary",show:!0,order:2,size:"small",click:()=>{console.log(d.selectedRows);const a=d.selectedRows||[];if(!a||a.length===0){r("请先选择要操作的候选人");return}const s=a.reduce((e,i)=>(e[i.status]||(e[i.status]=[]),e[i.status].push(i),e),{});if(Object.keys(s).length>1){r("请选择相同状态的申请进行批量短信通知");return}d.openSmsNotification(a)}}}},rowHandle:{fixed:"right",width:280,buttons:{view:{iconRight:"view",show:!0,type:"text",click:async({row:a})=>{var s,l;try{const e=await p.get("https://backend.qicai321.com/api/job/application_detail",{params:{tenant_id:g.get("tenant_id"),application_id:a.id}});if(e.data.code===2e3){console.log(e.data.data);const i=(l=(s=e.data.data)==null?void 0:s.application)==null?void 0:l.analysis_status;if(i&&i.report_ready===!0){console.log(a);const f=`${window.location.origin}/#/JobApplication/report/report?id=${a.id}&tenant_id=${g.get("tenant_id")}&application_id=${a.applicant}`;window.open(f,"_blank")}else r("面试未完成,无法查看报告")}else r("获取面试状态失败")}catch(e){console.error("检查面试状态失败:",e),r("检查面试状态失败")}}},notification:{text:"发送短信",iconRight:"Message",type:"text",show:$(({row:a})=>a.status===0),order:3,click:({row:a})=>{const s=[a];d.openSmsNotification(s)}},profile:{text:"查看个人信息",iconRight:"User",type:"text",show:!1,order:1,click:({row:a})=>{S(a.applicant)}},reanalyze:{text:"重新分析",iconRight:"Refresh",type:"text",show:!1,order:2,click:async({row:a})=>{try{const s=await p.post("https://backend.qicai321.com/api/system/interview_analysis/analyze_applicant_videos/",{application_id:a.id});if(s.data.code!==200){r(s.data.message||"视频分析失败");return}const l=await p.post("https://backend.qicai321.com/api/system/job/trigger_comprehensive_analysis",{application_id:a.id,force_trigger:!0});l.data.code===2e3?(j("已触发重新分析"),_.doRefresh()):r(l.data.message||"触发重新分析失败")}catch(s){console.error("重新分析失败:",s),r("重新分析失败")}}},edit:{iconRight:"Edit",type:"text",show:!1},remove:{iconRight:"Delete",type:"text",show:P("area:Delete")}}},pagination:{show:!0},table:{selection:!0,onSelectionChange:a=>{d.selectedRows=a}},search:{show:!0,layout:"auto",autoSearch:!1,buttons:{search:{size:"small"},reset:{size:"small"}},resetBtn:{show:!0,click:()=>{const a=document.querySelector(".el-tree");if(a){const s=a.querySelector(".is-current");s&&s.classList.remove("is-current")}}}},columns:{_selection:{title:"选择",form:{show:!1},column:{type:"selection",align:"center",width:50,fixed:"left",columnSetDisabled:!0}},id:{title:"ID",form:{show:!1},column:{show:!1,align:"center",width:"70px"}},report_id:{title:"报告编号",search:{show:!1,component:{placeholder:"请输入报告编号"},size:"small",col:{span:3}},type:"input",column:{minWidth:150},form:{rules:[{required:!0,message:"报告编号必填项"}]}},applicant_name:{title:"申请人姓名",search:{show:!0,component:{placeholder:"请输入申请人姓名"},size:"small",col:{span:3}},type:"input",column:{minWidth:120},form:{rules:[{required:!0,message:"申请人姓名必填项"}]}},applicant_phone:{title:"申请人电话",search:{show:!0,component:{placeholder:"请输入申请人电话"},size:"small",col:{span:3}},type:"input",column:{minWidth:130},form:{rules:[{required:!0,message:"申请人电话必填项"}]}},position_title:{title:"申请职位",search:{show:!0,component:{placeholder:"请输入申请职位"},size:"small",col:{span:3}},type:"input",column:{minWidth:120},form:{rules:[{required:!0,message:"申请职位必填项"}]}},status:{title:"申请状态",search:{show:!0,placeholder:"请选择申请状态",size:"small",col:{span:3}},type:"dict-select",column:{minWidth:100},dict:w({data:[{value:0,label:"待通知"},{value:1,label:"已通知待面试"},{value:2,label:"已面试待处理"},{value:3,label:"已录用"},{value:4,label:"已拒绝"},{value:5,label:"拒绝并加入人才库"}]})},comprehensive_score:{title:"综合评分",type:"number",column:{align:"center",minWidth:100}},hire_recommendation:{title:"录用建议",type:"dict-select",search:{show:!0,type:"dict-select",component:{placeholder:"请选择录用建议",clearable:!0},size:"small",col:{span:3}},dict:w({data:[{value:"谨慎录用",label:"谨慎录用"},{value:"推荐录用",label:"推荐录用"},{value:"有条件录用",label:"有条件录用"},{value:"不推荐录用",label:"不推荐录用"}]}),column:{minWidth:150,showOverflowTooltip:!0}},create_datetime:{title:"创建时间",type:"datetime",column:{show:!1,minWidth:160},form:{show:!1}},update_datetime:{title:"更新时间",type:"datetime",column:{minWidth:160},form:{show:!1}}}}}};export{H as createCrudOptions};
|