1 line
6.9 KiB
JavaScript
1 line
6.9 KiB
JavaScript
import{$ as e,H as t,L as n,P as r,V as i,Wt as a,_ as o,d as s,et as c,i as l,lt as u,p as d,st as f,u as p,v as m,z as h}from"./runtime-core.esm-bundler-DbRZbT7v.js";import{o as g,s as _}from"./index-ZRE77JpD.js";import"./request-C_vMs8Bs.js";import{t as v}from"./nanny-Cp-L-Ws0.js";var y={class:`p-6 space-y-4`},b={class:`bg-white rounded-2xl border border-gray-100 shadow-sm p-4 flex items-center flex-wrap gap-3`},x={class:`bg-white rounded-2xl border border-gray-100 shadow-sm`},S={class:`flex items-center justify-between px-5 py-4 border-b border-gray-50`},C={class:`px-2`},w={class:`px-5 py-3 border-t border-gray-50`},T={__name:`index`,setup(T){let E=u([]),D=u(0),O=u(!1),k=u(!1),A=u(!1),j=f({name:``,level:``,status:``}),M=f({page:1,per_page:15}),N=u(null),P=f({id:null,name:``,phone:``,id_card:``,level:``,specialties:[],experience_years:0,daily_price:0,status:1,avatar:``,remark:``}),F=u(!1),I={name:[{required:!0,message:`请输入姓名`,trigger:`blur`}],phone:[{required:!0,message:`请输入手机号`,trigger:`blur`}]},L={1:`待岗`,2:`在岗`,3:`休假`,0:`离职`},R={1:`info`,2:`success`,3:`warning`,0:`danger`},z={1:`初级`,2:`中级`,3:`高级`,4:`金牌`};async function B(){O.value=!0;try{let e=await v.getList({...j,...M});E.value=e.data?.list||e.data?.data||[],D.value=e.data?.total||0}finally{O.value=!1}}function V(){M.page=1,B()}function H(){Object.assign(j,{name:``,level:``,status:``}),V()}function U(){F.value=!1,Object.assign(P,{id:null,name:``,phone:``,id_card:``,level:``,specialties:[],experience_years:0,daily_price:0,status:1,avatar:``,remark:``}),k.value=!0}function W(e){F.value=!0,Object.assign(P,{id:e.id,name:e.name,phone:e.phone,id_card:e.id_card||``,level:e.level,specialties:e.specialties||[],experience_years:e.experience_years,daily_price:e.daily_price,status:e.status,avatar:e.avatar||``,remark:e.remark||``}),k.value=!0}async function G(){N.value&&await N.value.validate(async e=>{if(e){A.value=!0;try{F.value?await v.update(P.id,P):await v.create(P),_.success(F.value?`更新成功`:`创建成功`),k.value=!1,B()}finally{A.value=!1}}})}async function K(e){await g.confirm(`确定删除月嫂「${e.name}」吗?`,`删除确认`,{type:`warning`}),await v.delete(e.id),_.success(`删除成功`),B()}function q(e){M.page=e,B()}function J(e){M.per_page=e,M.page=1,B()}return r(()=>B()),(r,u)=>{let f=i(`el-input`),g=i(`el-option`),_=i(`el-select`),v=i(`el-button`),T=i(`el-table-column`),B=i(`el-tag`),Y=i(`el-table`),X=i(`el-pagination`),Z=i(`el-form-item`),Q=i(`el-input-number`),$=i(`el-form`),ee=i(`el-dialog`),te=t(`loading`);return n(),d(`div`,y,[p(`div`,b,[m(f,{modelValue:j.name,"onUpdate:modelValue":u[0]||=e=>j.name=e,placeholder:`姓名`,style:{width:`150px`},clearable:``},null,8,[`modelValue`]),m(_,{modelValue:j.level,"onUpdate:modelValue":u[1]||=e=>j.level=e,placeholder:`等级`,clearable:``,style:{width:`120px`}},{default:e(()=>[(n(),d(l,null,h(z,(e,t)=>m(g,{key:t,label:e,value:Number(t)},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),m(_,{modelValue:j.status,"onUpdate:modelValue":u[2]||=e=>j.status=e,placeholder:`状态`,clearable:``,style:{width:`120px`}},{default:e(()=>[(n(),d(l,null,h(L,(e,t)=>m(g,{key:t,label:e,value:Number(t)},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),m(v,{type:`primary`,onClick:V},{default:e(()=>[...u[15]||=[o(`查询`,-1)]]),_:1}),m(v,{onClick:H},{default:e(()=>[...u[16]||=[o(`重置`,-1)]]),_:1})]),p(`div`,x,[p(`div`,S,[u[18]||=p(`div`,{class:`flex items-center gap-3`},[p(`span`,{class:`font-medium text-gray-700`},`月嫂列表`)],-1),m(v,{type:`primary`,onClick:U},{default:e(()=>[...u[17]||=[o(`新增月嫂`,-1)]]),_:1})]),p(`div`,C,[c((n(),s(Y,{data:E.value,style:{width:`100%`}},{default:e(()=>[m(T,{prop:`name`,label:`姓名`,width:`100`}),m(T,{prop:`phone`,label:`手机号`,width:`130`}),m(T,{label:`等级`,width:`80`,align:`center`},{default:e(({row:e})=>[o(a(z[e.level]||`-`),1)]),_:1}),m(T,{prop:`experience_years`,label:`经验(年)`,width:`90`,align:`center`}),m(T,{prop:`daily_price`,label:`日价(元)`,width:`100`,align:`right`}),m(T,{label:`状态`,width:`80`,align:`center`},{default:e(({row:t})=>[m(B,{type:R[t.status],size:`small`},{default:e(()=>[o(a(L[t.status]),1)]),_:2},1032,[`type`])]),_:1}),m(T,{label:`操作`,width:`160`,fixed:`right`,align:`center`},{default:e(({row:t})=>[m(v,{size:`small`,type:`primary`,text:``,onClick:e=>W(t)},{default:e(()=>[...u[19]||=[o(`编辑`,-1)]]),_:1},8,[`onClick`]),m(v,{size:`small`,type:`danger`,text:``,onClick:e=>K(t)},{default:e(()=>[...u[20]||=[o(`删除`,-1)]]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[te,O.value]])]),p(`div`,w,[m(X,{"current-page":M.page,"onUpdate:currentPage":u[3]||=e=>M.page=e,"page-size":M.per_page,"onUpdate:pageSize":u[4]||=e=>M.per_page=e,total:D.value,"page-sizes":[15,30,50],layout:`total,sizes,prev,pager,next,jumper`,background:``,onCurrentChange:q,onSizeChange:J},null,8,[`current-page`,`page-size`,`total`])])]),m(ee,{modelValue:k.value,"onUpdate:modelValue":u[14]||=e=>k.value=e,title:F.value?`编辑月嫂`:`新增月嫂`,width:`550px`,"destroy-on-close":``},{footer:e(()=>[m(v,{onClick:u[13]||=e=>k.value=!1},{default:e(()=>[...u[21]||=[o(`取消`,-1)]]),_:1}),m(v,{type:`primary`,loading:A.value,onClick:G},{default:e(()=>[...u[22]||=[o(`确定`,-1)]]),_:1},8,[`loading`])]),default:e(()=>[m($,{ref_key:`formRef`,ref:N,model:P,rules:I,"label-width":`90px`},{default:e(()=>[m(Z,{label:`姓名`,prop:`name`},{default:e(()=>[m(f,{modelValue:P.name,"onUpdate:modelValue":u[5]||=e=>P.name=e},null,8,[`modelValue`])]),_:1}),m(Z,{label:`手机号`,prop:`phone`},{default:e(()=>[m(f,{modelValue:P.phone,"onUpdate:modelValue":u[6]||=e=>P.phone=e},null,8,[`modelValue`])]),_:1}),m(Z,{label:`身份证号`},{default:e(()=>[m(f,{modelValue:P.id_card,"onUpdate:modelValue":u[7]||=e=>P.id_card=e},null,8,[`modelValue`])]),_:1}),m(Z,{label:`等级`},{default:e(()=>[m(_,{modelValue:P.level,"onUpdate:modelValue":u[8]||=e=>P.level=e,style:{width:`100%`}},{default:e(()=>[(n(),d(l,null,h(z,(e,t)=>m(g,{key:t,label:e,value:Number(t)},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1}),m(Z,{label:`经验(年)`},{default:e(()=>[m(Q,{modelValue:P.experience_years,"onUpdate:modelValue":u[9]||=e=>P.experience_years=e,min:0,style:{width:`100%`}},null,8,[`modelValue`])]),_:1}),m(Z,{label:`日价(元)`},{default:e(()=>[m(Q,{modelValue:P.daily_price,"onUpdate:modelValue":u[10]||=e=>P.daily_price=e,min:0,precision:2,style:{width:`100%`}},null,8,[`modelValue`])]),_:1}),m(Z,{label:`状态`},{default:e(()=>[m(_,{modelValue:P.status,"onUpdate:modelValue":u[11]||=e=>P.status=e,style:{width:`100%`}},{default:e(()=>[(n(),d(l,null,h(L,(e,t)=>m(g,{key:t,label:e,value:Number(t)},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1}),m(Z,{label:`备注`},{default:e(()=>[m(f,{modelValue:P.remark,"onUpdate:modelValue":u[12]||=e=>P.remark=e,type:`textarea`,rows:2},null,8,[`modelValue`])]),_:1})]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`])])}}};export{T as default}; |