1 |
- import{k as H,n as I,p as h,q as J,t as K,w as Q,x as U}from"./index.CUrmXCFV.js";import{createCrudOptions as W}from"./crud.qsK-WzUO.js";import{g as X,a as Y}from"./api.DjFj-TJ9.js";import{h as Z}from"./columnPermission.p5T0krnI.js";import{_ as tt}from"./BatchTagsDialog.vue_vue_type_script_setup_true_lang.2TsrB7Sc.js";import{_ as et}from"./BatchStatusDialog.vue_vue_type_script_setup_true_lang.Df_vvcQB.js";import{a as B,r as y,_ as st,q as at,aj as w,J as ot,o as l,K as m,b as e,S as n,c as u,M as r,u as v,G as d,R as nt,a9 as it,Q as f,H as lt,P as ut}from"./vue.D1BjjNmv.js";import{_ as dt}from"./_plugin-vue_export-helper.DlAUqK2U.js";const ct={class:"job-application-container"},rt={class:"sidebar"},vt={class:"tree-container"},pt={key:0,class:"position-list"},mt=["onClick"],ft={class:"item-content"},_t={key:0,class:"item-count"},yt={class:"item-content"},kt={class:"item-count"},gt={class:"item-content"},Ct={key:0,class:"item-count"},ht={key:1,class:"submenu"},St={key:0,class:"item-count"},bt={key:0,class:"item-count"},xt={key:0,class:"item-count"},wt={class:"item-content"},Rt={key:0,class:"item-count"},$t={class:"item-content"},Pt={key:0,class:"item-count"},qt={key:2,class:"submenu"},Et={key:0,class:"item-count"},Bt={key:0,class:"item-count"},Mt={class:"item-content"},Ot={key:0,class:"item-count"},Dt={class:"content"},Vt={class:"show-resigned-checkbox"},jt=B({name:"areas"}),Nt=B({...jt,setup(Ft){const{crudBinding:M,crudRef:O,crudExpose:_,crudOptions:D,resetCrudOptions:V}=H({createCrudOptions:W,context:{openBatchTagsDialog:s=>{R.value.open(s)},openBatchStatusDialog:s=>{$.value.open(s)},selectedRows:y([])}}),R=y(),$=y(),S=y(!1),b=y(!1),P=y(!1),q=y(0),a=st({1:0,"1-1":0,"1-2":0,"1-3":0,3:0,"3-1":0,"3-2":0,2:0,4:0}),x=y(!0),g=y([]),j=async()=>{try{const t=await(await fetch("https://backend.qicai321.com/api/system/job/list?page=1&limit=100&tenant_id=1")).json();t.code===2e3&&t.data?g.value=t.data.map(o=>({id:o.id,title:o.title||o.name||o.job_name,count:0})):console.error("获取职位列表失败:",t.msg||"未知错误")}catch(s){console.error("获取职位列表异常:",s),g.value=[{id:1,title:"流水线操作工",count:0}]}},E=async()=>{try{const t=await X();console.log(t),t.code===2e3&&t.data?(q.value=t.data.total||0,t.data.status_data&&Array.isArray(t.data.status_data)?t.data.status_data.forEach(o=>{const C={0:1,2:2,3:3,4:4}[o.status];C&&C in a&&(a[C]=o.count)}):(a[1]=t.data.pending||0,a[2]=t.data.interviewed||0,a[3]=t.data.hired||0,a[4]=t.data.rejected||0)):console.error("获取申请状态统计失败:",t.message||"未知错误")}catch(s){console.error("获取申请状态统计异常:",s)}},N=()=>{x.value=!x.value},c=y("all"),p=s=>{if(c.value=s.id||"all",s.type==="all"){try{const t=_.getSearchRef();t&&typeof t.resetFields=="function"&&t.resetFields()}catch(t){console.warn("重置表单失败:",t)}_.doSearch({form:{}})}else s.type==="status"?_.doSearch({form:{status:s.value}}):s.type==="position"&&_.doSearch({form:{position_title:s.value}})},F=s=>{!s||!s.records||(g.value.forEach(t=>{t.count=0}),s.records.forEach(t=>{if(t.position_title){const o=g.value.find(k=>k.title===t.position_title);o&&(o.count=(o.count||0)+1)}}))},T=()=>{_.doRefresh(),E()},A=s=>{s.stopPropagation(),S.value=!S.value},L=s=>{s.stopPropagation(),b.value=!b.value},G=s=>{s?_.doSearch({form:{status:4}}):_.doSearch({form:{}})};return at(async()=>{await j(),await E();const s=await Z(Y,D);if(s&&s.crudOptions&&s.crudOptions.request){const t=s.crudOptions.request.pageRequest;s.crudOptions.request.pageRequest=async o=>{const k=await t(o);return F(k.data),k}}V(s),_.doRefresh()}),(s,t)=>{const o=w("el-icon"),k=w("fs-crud"),C=w("el-checkbox"),z=w("fs-page");return l(),ot(z,null,{default:m(()=>[e("div",ct,[e("div",rt,[e("div",vt,[e("div",{class:"category-title",onClick:N},[n(o,null,{default:m(()=>[n(v(I))]),_:1}),t[12]||(t[12]=e("span",null,"职位",-1)),n(o,{class:d(["expand-icon",{"is-expanded":x.value}])},{default:m(()=>[n(v(h))]),_:1},8,["class"])]),x.value?(l(),u("div",pt,[e("div",{class:d(["tree-item",{active:c.value==="position-all"}]),onClick:t[0]||(t[0]=i=>p({type:"all",id:"position-all"}))},t[13]||(t[13]=[e("div",{class:"item-content"},[e("span",null,"全部")],-1)]),2),(l(!0),u(nt,null,it(g.value,i=>(l(),u("div",{key:"position-"+i.id,class:d(["tree-item",{active:c.value==="position-"+i.id}]),onClick:Tt=>p({type:"position",value:i.title,id:"position-"+i.id})},[e("div",ft,[n(o,null,{default:m(()=>[n(v(h))]),_:1}),e("span",null,f(i.title),1)]),i.count?(l(),u("div",_t,f(i.count),1)):r("",!0)],10,mt))),128))])):r("",!0),e("div",{class:d(["tree-item",{active:c.value==="all"}]),onClick:t[1]||(t[1]=i=>p({type:"all"}))},[e("div",yt,[n(o,null,{default:m(()=>[n(v(J))]),_:1}),t[14]||(t[14]=e("span",null,"全部",-1))]),e("div",kt,f(q.value)+"人",1)],2),e("div",{class:d(["tree-item",{active:c.value==="status-1"}]),onClick:t[2]||(t[2]=i=>p({type:"status",value:0,id:"status-1"}))},[e("div",gt,[n(o,null,{default:m(()=>[n(v(K))]),_:1}),t[15]||(t[15]=e("span",null,"试用期",-1)),n(o,{class:d(["expand-icon",{"is-expanded":S.value}]),onClick:A},{default:m(()=>[n(v(h))]),_:1},8,["class"])]),a[1]?(l(),u("div",Ct,f(a[1]),1)):r("",!0)],2),S.value?(l(),u("div",ht,[e("div",{class:d(["tree-item",{active:c.value==="status-1-1"}]),onClick:t[3]||(t[3]=i=>p({type:"status",value:"1-1",id:"status-1-1"}))},[t[16]||(t[16]=e("div",{class:"item-content"},[e("span",null,"通过考核")],-1)),a["1-1"]?(l(),u("div",St,f(a["1-1"]),1)):r("",!0)],2),e("div",{class:d(["tree-item",{active:c.value==="status-1-2"}]),onClick:t[4]||(t[4]=i=>p({type:"status",value:"1-2",id:"status-1-2"}))},[t[17]||(t[17]=e("div",{class:"item-content"},[e("span",null,"未通过考核")],-1)),a["1-2"]?(l(),u("div",bt,f(a["1-2"]),1)):r("",!0)],2),e("div",{class:d(["tree-item",{active:c.value==="status-1-3"}]),onClick:t[5]||(t[5]=i=>p({type:"status",value:"1-3",id:"status-1-3"}))},[t[18]||(t[18]=e("div",{class:"item-content"},[e("span",null,"尚未考核")],-1)),a["1-3"]?(l(),u("div",xt,f(a["1-3"]),1)):r("",!0)],2)])):r("",!0),e("div",{class:d(["tree-item",{active:c.value==="status-2"}]),onClick:t[6]||(t[6]=i=>p({type:"status",value:2,id:"status-2"}))},[e("div",wt,[n(o,null,{default:m(()=>[n(v(h))]),_:1}),t[19]||(t[19]=e("span",null,"考察期",-1))]),a[2]?(l(),u("div",Rt,f(a[2]),1)):r("",!0)],2),e("div",{class:d(["tree-item",{active:c.value==="status-3"}]),onClick:t[7]||(t[7]=i=>p({type:"status",value:3,id:"status-3"}))},[e("div",$t,[n(o,null,{default:m(()=>[n(v(Q))]),_:1}),t[20]||(t[20]=e("span",null,"正式员工",-1)),n(o,{class:d(["expand-icon",{"is-expanded":b.value}]),onClick:L},{default:m(()=>[n(v(h))]),_:1},8,["class"])]),a[3]?(l(),u("div",Pt,f(a[3]),1)):r("",!0)],2),b.value?(l(),u("div",qt,[e("div",{class:d(["tree-item",{active:c.value==="status-3-1"}]),onClick:t[8]||(t[8]=i=>p({type:"status",value:"3-1",id:"status-3-1"}))},[t[21]||(t[21]=e("div",{class:"item-content"},[e("span",null,"已盘点")],-1)),a["3-1"]?(l(),u("div",Et,f(a["3-1"]),1)):r("",!0)],2),e("div",{class:d(["tree-item",{active:c.value==="status-3-2"}]),onClick:t[9]||(t[9]=i=>p({type:"status",value:"3-2",id:"status-3-2"}))},[t[22]||(t[22]=e("div",{class:"item-content"},[e("span",null,"未盘点")],-1)),a["3-2"]?(l(),u("div",Bt,f(a["3-2"]),1)):r("",!0)],2)])):r("",!0),e("div",{class:d(["tree-item",{active:c.value==="status-4"}]),onClick:t[10]||(t[10]=i=>p({type:"status",value:4,id:"status-4"}))},[e("div",Mt,[n(o,null,{default:m(()=>[n(v(U))]),_:1}),t[23]||(t[23]=e("span",null,"已离职",-1))]),a[4]?(l(),u("div",Ot,f(a[4]),1)):r("",!0)],2)])]),e("div",Dt,[n(k,lt({ref_key:"crudRef",ref:O},v(M)),null,16),e("div",Vt,[n(C,{modelValue:P.value,"onUpdate:modelValue":t[11]||(t[11]=i=>P.value=i),onChange:G},{default:m(()=>t[24]||(t[24]=[ut(" 显示已离职员工 ")])),_:1},8,["modelValue"])])])]),n(tt,{ref_key:"batchTagsDialogRef",ref:R,crudExpose:v(_)},null,8,["crudExpose"]),n(et,{ref_key:"batchStatusDialogRef",ref:$,crudExpose:v(_),onSuccess:T},null,8,["crudExpose"])]),_:1})}}}),Qt=dt(Nt,[["__scopeId","data-v-d9760ec3"]]);export{Qt as default};
|