2 lines
7.1 KiB
JavaScript
2 lines
7.1 KiB
JavaScript
import{d as Y,r as f,a as q,o as ee,g as i,B as T,c as te,k as v,b as _,e as t,C as b,z as h,w as l,t as g,l as z,D as ae,f as le,J as ne,L as oe,s as se,x as ie,Q as re,Z as de,E as C,W as ue,_ as pe}from"./index-PpjiaNYs.js";import{g as me,c as ce,d as fe,f as ge,h as ve}from"./planner-DG46kMP0.js";const _e={class:"page-container"},be={class:"page-header"},Ve={class:"price"},ye={class:"pagination-container"},xe=Y({__name:"index",setup(he){const w=f(!1),P=f([]),B=f(0),s=q({pageIndex:1,pageSize:10,name:void 0,status:void 0}),p=f(!1),k=f(""),S=f(),U=f(!1),o=q({id:void 0,name:"",avatar:"",title:"",intro:"",price:0,sort:0,status:1}),R={name:[{required:!0,message:"请输入姓名",trigger:"blur"}],avatar:[{required:!0,message:"请上传头像",trigger:"change"}],price:[{required:!0,message:"请输入价格",trigger:"blur"},{validator:(n,e,m)=>{e<=0?m(new Error("价格必须大于0")):m()},trigger:"blur"}],status:[{required:!0,message:"请选择状态",trigger:"change"}]},d=async()=>{w.value=!0;try{const n=await me(s);n.code===0&&(P.value=n.data.items,B.value=n.data.total)}finally{w.value=!1}},D=()=>{s.pageIndex=1,d()},j=()=>{s.name=void 0,s.status=void 0,s.pageIndex=1,d()},L=n=>{s.pageSize=n,d()},M=n=>{s.pageIndex=n,d()},N=({prop:n,order:e})=>{console.log("Sort changed:",n,e),d()},K=()=>{k.value="新增规划师",Object.assign(o,{id:void 0,name:"",avatar:"",title:"",intro:"",price:0,sort:0,status:1}),p.value=!0},O=n=>{k.value="编辑规划师",Object.assign(o,{id:n.id,name:n.name,avatar:n.avatar,title:n.title,intro:n.intro,price:n.price,sort:n.sort,status:n.status}),p.value=!0},A=async()=>{if(S.value){await S.value.validate(),U.value=!0;try{o.id?(await ce(o)).code===0&&(C.success("更新成功"),p.value=!1,d()):(await fe(o)).code===0&&(C.success("创建成功"),p.value=!1,d())}finally{U.value=!1}}},F=async n=>{const e={id:n.id,status:n.status};(await ge(e)).code===0?C.success("状态更新成功"):n.status=n.status===1?0:1},J=n=>{ue.confirm(`确定要删除规划师"${n.name}"吗?`,"提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning"}).then(async()=>{(await ve(n.id)).code===0&&(C.success("删除成功"),d())}).catch(()=>{})};return ee(()=>{d()}),(n,e)=>{const m=i("el-icon"),c=i("el-button"),V=i("el-input"),r=i("el-form-item"),I=i("el-form"),$=i("el-card"),Q=i("el-avatar"),u=i("el-table-column"),W=i("el-switch"),Z=i("el-table"),G=i("el-pagination"),E=i("el-input-number"),H=i("el-dialog"),y=T("permission"),X=T("loading");return v(),te("div",_e,[_("div",be,[e[14]||(e[14]=_("h2",null,"规划师管理",-1)),b((v(),h(c,{type:"primary",onClick:K},{default:l(()=>[t(m,null,{default:l(()=>[t(z(ae))]),_:1}),e[13]||(e[13]=g("新增规划师 ",-1))]),_:1})),[[y,"planner:create"]])]),t($,{class:"search-card",shadow:"never"},{default:l(()=>[t(I,{model:s,inline:""},{default:l(()=>[t(r,{label:"姓名"},{default:l(()=>[t(V,{modelValue:s.name,"onUpdate:modelValue":e[0]||(e[0]=a=>s.name=a),placeholder:"请输入姓名",clearable:"",onKeyup:le(D,["enter"])},null,8,["modelValue"])]),_:1}),t(r,{label:"状态"},{default:l(()=>[t(ne,{modelValue:s.status,"onUpdate:modelValue":e[1]||(e[1]=a=>s.status=a),"dict-type":"common_status",placeholder:"请选择状态",clearable:""},null,8,["modelValue"])]),_:1}),t(r,null,{default:l(()=>[t(c,{type:"primary",onClick:D},{default:l(()=>[t(m,null,{default:l(()=>[t(z(oe))]),_:1}),e[15]||(e[15]=g("搜索 ",-1))]),_:1}),t(c,{onClick:j},{default:l(()=>[t(m,null,{default:l(()=>[t(z(se))]),_:1}),e[16]||(e[16]=g("重置 ",-1))]),_:1})]),_:1})]),_:1},8,["model"])]),_:1}),t($,{class:"table-card",shadow:"never"},{default:l(()=>[b((v(),h(Z,{data:P.value,"row-key":"id",onSortChange:N},{default:l(()=>[t(u,{label:"头像",width:"80"},{default:l(({row:a})=>[t(Q,{src:a.avatar,size:50},null,8,["src"])]),_:1}),t(u,{prop:"name",label:"姓名","min-width":"100"}),t(u,{prop:"title",label:"职称","min-width":"120","show-overflow-tooltip":""}),t(u,{prop:"price",label:"价格",width:"100",align:"right"},{default:l(({row:a})=>[_("span",Ve,"¥"+ie(a.price.toFixed(2)),1)]),_:1}),t(u,{prop:"sort",label:"排序",width:"80",align:"center",sortable:"custom"}),t(u,{label:"状态",width:"100",align:"center"},{default:l(({row:a})=>[b(t(W,{modelValue:a.status,"onUpdate:modelValue":x=>a.status=x,"active-value":1,"inactive-value":0,onChange:x=>F(a)},null,8,["modelValue","onUpdate:modelValue","onChange"]),[[y,"planner:update"]])]),_:1}),t(u,{prop:"createTime",label:"创建时间",width:"170"}),t(u,{label:"操作",width:"150",fixed:"right"},{default:l(({row:a})=>[b((v(),h(c,{link:"",type:"primary",onClick:x=>O(a)},{default:l(()=>[...e[17]||(e[17]=[g("编辑",-1)])]),_:1},8,["onClick"])),[[y,"planner:update"]]),b((v(),h(c,{link:"",type:"danger",onClick:x=>J(a)},{default:l(()=>[...e[18]||(e[18]=[g("删除",-1)])]),_:1},8,["onClick"])),[[y,"planner:delete"]])]),_:1})]),_:1},8,["data"])),[[X,w.value]]),_("div",ye,[t(G,{"current-page":s.pageIndex,"onUpdate:currentPage":e[2]||(e[2]=a=>s.pageIndex=a),"page-size":s.pageSize,"onUpdate:pageSize":e[3]||(e[3]=a=>s.pageSize=a),"page-sizes":[10,20,50,100],total:B.value,layout:"total, sizes, prev, pager, next, jumper",onSizeChange:L,onCurrentChange:M},null,8,["current-page","page-size","total"])])]),_:1}),t(H,{modelValue:p.value,"onUpdate:modelValue":e[12]||(e[12]=a=>p.value=a),title:k.value,width:"600px","destroy-on-close":""},{footer:l(()=>[t(c,{onClick:e[11]||(e[11]=a=>p.value=!1)},{default:l(()=>[...e[20]||(e[20]=[g("取消",-1)])]),_:1}),t(c,{type:"primary",loading:U.value,onClick:A},{default:l(()=>[...e[21]||(e[21]=[g("确定",-1)])]),_:1},8,["loading"])]),default:l(()=>[t(I,{ref_key:"formRef",ref:S,model:o,rules:R,"label-width":"80px"},{default:l(()=>[t(r,{label:"姓名",prop:"name"},{default:l(()=>[t(V,{modelValue:o.name,"onUpdate:modelValue":e[4]||(e[4]=a=>o.name=a),placeholder:"请输入姓名",maxlength:"50"},null,8,["modelValue"])]),_:1}),t(r,{label:"头像",prop:"avatar"},{default:l(()=>[t(re,{modelValue:o.avatar,"onUpdate:modelValue":e[5]||(e[5]=a=>o.avatar=a),limit:1},null,8,["modelValue"])]),_:1}),t(r,{label:"职称",prop:"title"},{default:l(()=>[t(V,{modelValue:o.title,"onUpdate:modelValue":e[6]||(e[6]=a=>o.title=a),placeholder:"请输入职称",maxlength:"100"},null,8,["modelValue"])]),_:1}),t(r,{label:"简介",prop:"intro"},{default:l(()=>[t(V,{modelValue:o.intro,"onUpdate:modelValue":e[7]||(e[7]=a=>o.intro=a),type:"textarea",rows:4,placeholder:"请输入简介",maxlength:"500","show-word-limit":""},null,8,["modelValue"])]),_:1}),t(r,{label:"价格",prop:"price"},{default:l(()=>[t(E,{modelValue:o.price,"onUpdate:modelValue":e[8]||(e[8]=a=>o.price=a),min:.01,precision:2,step:10,"controls-position":"right",style:{width:"200px"}},null,8,["modelValue"]),e[19]||(e[19]=_("span",{class:"form-tip"},"元",-1))]),_:1}),t(r,{label:"排序",prop:"sort"},{default:l(()=>[t(E,{modelValue:o.sort,"onUpdate:modelValue":e[9]||(e[9]=a=>o.sort=a),min:0,max:9999,"controls-position":"right",style:{width:"200px"}},null,8,["modelValue"])]),_:1}),t(r,{label:"状态",prop:"status"},{default:l(()=>[t(de,{modelValue:o.status,"onUpdate:modelValue":e[10]||(e[10]=a=>o.status=a),"dict-type":"common_status"},null,8,["modelValue"])]),_:1})]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Se=pe(xe,[["__scopeId","data-v-bf7a8104"]]);export{Se as default};
|