index.49826d5f.js 2.9 KB

1
  1. import{r as B,X as L}from"./index.59c4c6ab.js";import{d as N,r as u,w as y,Z as D,ai as s,o as g,M as C,O as h,a as E,U as d,R as F,c as P,a8 as X,F as q}from"./vue.86c1cb21.js";import{_ as A}from"./_plugin-vue_export-helper.c27b6911.js";const I={class:"option"},K=N({__name:"index",props:{modelValue:{},tableConfig:{url:null,label:null,value:null,isTree:!1,data:[],isMultiple:!1,columns:[]},displayLabel:{}},emits:["update:modelValue"],setup(x,{emit:V}){const l=x,v=V,w=u(),r=u(),_=u();y(_,e=>{const{tableConfig:t}=l;if(!t.isMultiple)r.value=e?e[t.label]:null;else{const o=e?e.map(i=>i[t.label]):null;r.value=o}},{immediate:!0});const b=u(void 0),c=u(),a=D({page:1,limit:10,total:0}),k=e=>{_.value=e;const{tableConfig:t}=l,o=e.map(i=>i[t.value]);v("update:modelValue",o)},S=e=>{_.value=e;const{tableConfig:t}=l;v("update:modelValue",e[t.value])},m=async()=>{const e=l.tableConfig.url,t={page:a.page,limit:a.limit,search:b.value},{data:o,page:i,limit:p,total:f}=await B({url:e,params:t});a.page=i,a.limit=p,a.total=f,l.tableConfig.data===void 0||l.tableConfig.data.length===0?l.tableConfig.isTree?c.value=L.toArrayTree(o,{parentKey:"parent",key:"id",children:"children"}):c.value=o:c.value=l.tableConfig.data},M=e=>{e&&m()},T=e=>{a.page=e,m()};return y(()=>l.displayLabel,e=>{const{tableConfig:t}=l,o=e?e.map(i=>i[t.label]):null;r.value=o},{immediate:!0}),(e,t)=>{const o=s("el-button"),i=s("el-input"),p=s("el-table-column"),f=s("el-table"),U=s("el-pagination"),R=s("el-select");return g(),C(R,{"popper-class":"popperClass",class:"tableSelector",multiple:l.tableConfig.isMultiple,onRemoveTag:e.removeTag,modelValue:r.value,"onUpdate:modelValue":t[3]||(t[3]=n=>r.value=n),placeholder:"请选择",onVisibleChange:M},{empty:h(()=>[E("div",I,[d(i,{style:{"margin-bottom":"10px"},modelValue:b.value,"onUpdate:modelValue":t[0]||(t[0]=n=>b.value=n),clearable:"",placeholder:"请输入关键词",onChange:m,onClear:m},{append:h(()=>[d(o,{type:"primary",icon:"Search"})]),_:1},8,["modelValue"]),d(f,{ref_key:"tableRef",ref:w,data:c.value,size:"mini",border:"","row-key":"id",style:{width:"400px"},"max-height":"200",height:"200","highlight-current-row":!l.tableConfig.isMultiple,onSelectionChange:k,onCurrentChange:S},{default:h(()=>[l.tableConfig.isMultiple?(g(),C(p,{key:0,fixed:"",type:"selection",width:"55"})):F("",!0),d(p,{fixed:"",type:"index",label:"#",width:"50"}),(g(!0),P(q,null,X(l.tableConfig.columns,(n,z)=>(g(),C(p,{prop:n.prop,label:n.label,width:n.width,key:z},null,8,["prop","label","width"]))),128))]),_:1},8,["data","highlight-current-row"]),d(U,{style:{"margin-top":"10px"},background:"","current-page":a.page,"onUpdate:currentPage":t[1]||(t[1]=n=>a.page=n),"page-size":a.limit,"onUpdate:pageSize":t[2]||(t[2]=n=>a.limit=n),layout:"prev, pager, next",total:a.total,onCurrentChange:T},null,8,["current-page","page-size","total"])])]),_:1},8,["multiple","onRemoveTag","modelValue"])}}});const G=A(K,[["__scopeId","data-v-dd38e2e3"]]);export{G as t};