1 |
- import{k as P,w as S,x as j,y as h,z as G,A as L,B as V}from"./index.D7Q8AwfO.js";import{G as z,c as F}from"./crud.BoWGys0d.js";import{h as M}from"./columnPermission.DDPOYQ4v.js";import{a as R,r as C,_ as A,q as D,aj as x,J as H,o as a,K as u,b as e,c as d,M as m,G as v,S as i,u as r,Q as f,R as I,a9 as J,H as K}from"./vue.YrNK8sx4.js";import{_ as Q}from"./_plugin-vue_export-helper.DlAUqK2U.js";import"./authFunction.BbTTQzhT.js";const T={class:"job-application-container"},U={class:"sidebar"},W={class:"tree-container"},X={class:"item-content"},Y={class:"item-count"},Z={class:"item-content"},tt={key:0,class:"item-count"},et={class:"item-content"},st={key:0,class:"item-count"},ot={class:"item-content"},it={key:0,class:"item-count"},nt={class:"item-content"},lt={key:0,class:"item-count"},at={key:0,class:"position-list"},ut=["onClick"],rt={class:"item-content"},ct={key:0,class:"item-count"},dt={class:"content"},vt=R({name:"areas"}),pt=R({...vt,setup(ft){const{crudBinding:b,crudRef:q,crudExpose:k,crudOptions:w,resetCrudOptions:$}=P({createCrudOptions:F}),O=C(0),l=A({1:0,2:0,3:0,4:0}),y=C(!0),g=C([{id:1,title:"流水线操作工",count:0},{id:2,title:"咖啡师",count:0},{id:3,title:"餐厅服务员",count:0}]),B=()=>{y.value=!y.value},c=C("all"),p=s=>{c.value=s.id||"all",s.type==="all"?(k.getSearchRef().resetFields(),k.doRefresh()):s.type==="status"?k.doSearch({form:{status:s.value}}):s.type==="position"&&k.doSearch({form:{position_title:s.value}})},E=s=>{!s||!s.records||(O.value=s.total||0,Object.keys(l).forEach(t=>{l[Number(t)]=0}),s.records.forEach(t=>{const o=t.status;o&&typeof o=="number"&&o in l&&l[o]++}),g.value.forEach(t=>{t.count=0}),s.records.forEach(t=>{if(t.position_title){const o=g.value.find(_=>_.title===t.position_title);o&&(o.count=(o.count||0)+1)}}))};return D(async()=>{const s=await M(z,w);if(s&&s.crudOptions&&s.crudOptions.request){const t=s.crudOptions.request.pageRequest;s.crudOptions.request.pageRequest=async o=>{const _=await t(o);return E(_.data),_}}$(s),k.doRefresh()}),(s,t)=>{const o=x("el-icon"),_=x("fs-crud"),N=x("fs-page");return a(),H(N,null,{default:u(()=>[e("div",T,[e("div",U,[e("div",W,[e("div",{class:v(["tree-item",{active:c.value==="all"}]),onClick:t[0]||(t[0]=n=>p({type:"all"}))},[e("div",X,[i(o,null,{default:u(()=>[i(r(S))]),_:1}),t[6]||(t[6]=e("span",null,"全部",-1))]),e("div",Y,f(O.value)+"人",1)],2),e("div",{class:v(["tree-item",{active:c.value==="status-1"}]),onClick:t[1]||(t[1]=n=>p({type:"status",value:1,id:"status-1"}))},[e("div",Z,[i(o,null,{default:u(()=>[i(r(j))]),_:1}),t[7]||(t[7]=e("span",null,"待面试",-1))]),l[1]?(a(),d("div",tt,f(l[1]),1)):m("",!0)],2),e("div",{class:v(["tree-item",{active:c.value==="status-2"}]),onClick:t[2]||(t[2]=n=>p({type:"status",value:2,id:"status-2"}))},[e("div",et,[i(o,null,{default:u(()=>[i(r(h))]),_:1}),t[8]||(t[8]=e("span",null,"已面试",-1))]),l[2]?(a(),d("div",st,f(l[2]),1)):m("",!0)],2),e("div",{class:v(["tree-item",{active:c.value==="status-3"}]),onClick:t[3]||(t[3]=n=>p({type:"status",value:3,id:"status-3"}))},[e("div",ot,[i(o,null,{default:u(()=>[i(r(G))]),_:1}),t[9]||(t[9]=e("span",null,"已录用",-1))]),l[3]?(a(),d("div",it,f(l[3]),1)):m("",!0)],2),e("div",{class:v(["tree-item",{active:c.value==="status-4"}]),onClick:t[4]||(t[4]=n=>p({type:"status",value:4,id:"status-4"}))},[e("div",nt,[i(o,null,{default:u(()=>[i(r(L))]),_:1}),t[10]||(t[10]=e("span",null,"已拒绝",-1))]),l[4]?(a(),d("div",lt,f(l[4]),1)):m("",!0)],2),e("div",{class:"category-title",onClick:B},[i(o,null,{default:u(()=>[i(r(V))]),_:1}),t[11]||(t[11]=e("span",null,"职位",-1)),i(o,{class:v(["expand-icon",{"is-expanded":y.value}])},{default:u(()=>[i(r(h))]),_:1},8,["class"])]),y.value?(a(),d("div",at,[e("div",{class:v(["tree-item",{active:c.value==="position-all"}]),onClick:t[5]||(t[5]=n=>p({type:"all",id:"position-all"}))},t[12]||(t[12]=[e("div",{class:"item-content"},[e("span",null,"全部")],-1)]),2),(a(!0),d(I,null,J(g.value,n=>(a(),d("div",{key:"position-"+n.id,class:v(["tree-item",{active:c.value==="position-"+n.id}]),onClick:_t=>p({type:"position",value:n.title,id:"position-"+n.id})},[e("div",rt,[i(o,null,{default:u(()=>[i(r(h))]),_:1}),e("span",null,f(n.title),1)]),n.count?(a(),d("div",ct,f(n.count),1)):m("",!0)],10,ut))),128))])):m("",!0)])]),e("div",dt,[i(_,K({ref_key:"crudRef",ref:q},r(b)),null,16)])])]),_:1})}}}),xt=Q(pt,[["__scopeId","data-v-d3f528a7"]]);export{xt as default};
|