You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
7.1 KiB

var B=(p,L,u)=>new Promise((_,g)=>{var A=s=>{try{E(u.next(s))}catch(r){g(r)}},b=s=>{try{E(u.throw(s))}catch(r){g(r)}},E=s=>s.done?_(s.value):Promise.resolve(s.value).then(A,b);E((u=u.apply(p,L)).next())});import{d as ae,r as n,bA as te,Y as k,P as le,bz as ue,o as v,g as D,j as y,b as d,w as o,u as l,I as se,B as re,h as x,a as N,bo as z,F as I,bt as Y,t as F,i as oe,dU as ne,dV as de,aT as ie}from"./index-f4658ae7.js";import{C as P,a as $}from"./index-297faa0c.js";/* empty css */import{T as H}from"./index-cd1f9903.js";/* empty css */import{useTreeConvert as ce}from"./useDataConvert-25e29c90.js";import{useDBSourceLoader as ve}from"./useDBSourceLoader-8ab5ebe1.js";import{l as pe}from"./lodash-a5534797.js";import{mapExtParse as fe}from"./MapExt-98a20f56.js";import{F as ye}from"./index-d51f1b4b.js";import{F as J}from"./FormItem-a040ce00.js";import{C as q}from"./index-1d383df5.js";import{R as W}from"./index-24b7f696.js";const V=p=>(ne("data-v-80fa96cb"),p=p(),de(),p),me={class:"flex p-1"},ge={class:"list-picker"},he={class:"header"},Ne=V(()=>y("br",null,null,-1)),_e={class:"search-picker"},Se={class:"header"},ke=V(()=>y("br",null,null,-1)),xe={key:0,style:{color:"#9ca3af"}},be=V(()=>y("br",null,null,-1)),Ee=ae({__name:"PopTreeEns",props:{treeSql:{type:String,default:""},listSql:{type:String,default:""},parentNo:{type:String,default:""},isMultiSelect:{type:Boolean,default:!1},selectedTreeNode:{type:String,default:""},selectedItems:{type:String,default:""},selectedItemNames:{type:String,default:""},refPKVal:{type:Number,default:0},mapExt:{type:Object,default:()=>({})},rowData:{type:Object,default:()=>({})}},setup(p,{expose:L}){var R;const u=p,_=n(""),g=n(!0),A=te(u.mapExt.AtPara,"SearchTip")||"\u8BF7\u8F93\u5165\u5173\u952E\u5B57",{getDBSource:b}=ve(),E=(R=u.treeSql)==null?void 0:R.includes("@Key"),s=n([]),r=n([]),i=n([]),w=n(!1),C=n(!0),h=n([]),{GetDataTableByDB:X}=fe(),M=t=>{t.target.checked==!0&&i.value.forEach(a=>{r.value.findIndex(c=>c===a.No)<0&&(r.value.push(a.No),h.value.push(a.Name))}),t.target.checked==!1&&i.value.forEach(a=>{const e=r.value.findIndex(c=>c===a.No);e>=0&&(r.value.splice(e,1),h.value.splice(e,1))}),s.value=t.target.checked?i.value.map(a=>a.No):[],C.value=!1},j=t=>(u.isMultiSelect?setTimeout(()=>{const a=r.value.findIndex(e=>e===t.target.value);a<0?r.value.push(t.target.value):r.value.splice(a,1),O(t.target.value,a,!1)}):(r.value=[],setTimeout(()=>{r.value=[t.target.value],s.value=[t.target.value],O(t.target.value,-1,!0)})),!0),O=(t,a,e)=>{if(e==!0&&(h.value=[]),a>=0&&h.value.splice(a,1),a<0){const c=i.value.filter(S=>S.No==t);c.length>0&&h.value.push(c[0].Name)}},Q=pe.debounce(()=>B(this,null,function*(){try{if(!_.value){g.value=!0;return}if(m.value=!0,!u.mapExt.Tag1){g.value=!0,k.error("\u8BF7\u914D\u7F6E\u67E5\u8BE2\u7684SQL="+u.mapExt.Tag1);return}const t=yield X(u.mapExt,"Tag1",_.value,u.refPKVal,u.rowData,"");Array.isArray(t[0])?i.value=[]:i.value=t,C.value=!0,s.value=r.value.filter(a=>i.value.filter(e=>e.No===a).length>0),g.value=!1}catch(t){k.error(t.toString())}finally{m.value=!1}}),300),m=n(!1),Z=t=>B(this,null,function*(){try{m.value=!0;const a=yield b(u.treeSql.replace(/@Key/g,t.dataRef.No));t.dataRef.children=a.filter(e=>e.No!=t.No),f.value=[...f.value]}catch(a){k.error(a.toString())}finally{m.value=!1}}),U=t=>B(this,null,function*(){var a;try{if(m.value=!0,!((a=u.listSql)!=null&&a.includes("@Key"))){k.error("\u4E0D\u5408\u6CD5\u7684SQL,\u9700\u8981\u914D\u7F6E\u5173\u952E\u5B57@Key SQL="+u.listSql);return}const e=yield b(u.listSql.replace(/@Key/g,t[0]));i.value=e.filter(c=>c.No!=t[0]),C.value=!0,s.value=r.value.filter(c=>i.value.filter(S=>S.No===c).length>0)}catch(e){k.error(e.toString())}finally{m.value=!1}}),K=n([]),T=n([]),G=n({title:"Name",key:"No"}),f=n([]),{listToTree:ee}=ce();return le(()=>B(this,null,function*(){var S;let{treeSql:t,parentNo:a}=u;if(!t){k.error(`\u672A\u80FD\u6267\u884CSQL- \u4F20\u5165 props.TreeSQL \u4E3A\u7A7A [ ${t} ]`);return}t.toLowerCase().includes("@key")&&(t=t.replace(/@Key/g,a).replace(/@key/g,a)),t=ue(t,null);const e=yield b(t),c=ee(a,e.slice(0,e.length));f.value=c,f.value.length!==0&&(K.value=[f.value[0].No],u.selectedTreeNode&&(T.value=((S=u.selectedTreeNode)==null?void 0:S.split(","))||[f.value[0].No]),u.selectedItems&&(s.value=u.selectedItems.split(","),r.value=s.value,h.value=u.selectedItemNames.split(",")),yield U([f.value[0].No]))})),L({allCheckList:r,checkedNames:h}),(t,a)=>(v(),D(I,null,[y("div",me,[d(l(ye),{layout:"inline","label-col":{span:8},"wrapper-col":{span:16},style:{width:"100%"}},{default:o(()=>[d(l(J),{label:"\u5173\u952E\u5B57"},{default:o(()=>[d(l(se),{value:_.value,"onUpdate:value":a[0]||(a[0]=e=>_.value=e),placeholder:l(A),onPressEnter:l(Q),"allow-clear":""},null,8,["value","placeholder","onPressEnter"])]),_:1}),d(l(J),null,{default:o(()=>[d(l(re),{type:"primary",class:"btn_style",onClick:l(Q)},{default:o(()=>[x(" \u67E5\u8BE2")]),_:1},8,["onClick"])]),_:1})]),_:1})]),g.value?(v(),N(l(W),{key:0,gutter:[8,12]},{default:o(()=>[d(l(q),{span:12},{default:o(()=>[l(E)==!1?(v(),N(l(H),{key:0,"tree-data":f.value,expandedKeys:K.value,"onUpdate:expandedKeys":a[1]||(a[1]=e=>K.value=e),selectedKeys:T.value,"onUpdate:selectedKeys":a[2]||(a[2]=e=>T.value=e),fieldNames:G.value,onSelect:U},null,8,["tree-data","expandedKeys","selectedKeys","fieldNames"])):(v(),N(l(H),{key:1,"tree-data":f.value,"load-data":Z,expandedKeys:K.value,"onUpdate:expandedKeys":a[3]||(a[3]=e=>K.value=e),selectedKeys:T.value,"onUpdate:selectedKeys":a[4]||(a[4]=e=>T.value=e),fieldNames:G.value,onSelect:U},null,8,["tree-data","expandedKeys","selectedKeys","fieldNames"]))]),_:1}),d(l(q),{span:12},{default:o(()=>[d(l(z),{spinning:m.value},{default:o(()=>[y("div",ge,[y("div",he,[d(l(P),{checked:w.value,"onUpdate:checked":a[5]||(a[5]=e=>w.value=e),indeterminate:C.value,onChange:M,disabled:!p.isMultiSelect},{default:o(()=>[x(" \u5168\u9009")]),_:1},8,["checked","indeterminate","disabled"])]),Ne,d(l($),{value:s.value,"onUpdate:value":a[6]||(a[6]=e=>s.value=e)},{default:o(()=>[(v(!0),D(I,null,Y(i.value,e=>(v(),N(l(P),{key:e.No,value:e.No,onChange:j},{default:o(()=>[x(F(e.Name),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])])]),_:1},8,["spinning"])]),_:1})]),_:1})):(v(),N(l(W),{key:1,gutter:[8,12]},{default:o(()=>[d(l(q),{span:24},{default:o(()=>[d(l(z),{spinning:m.value},{default:o(()=>[y("div",_e,[y("div",Se,[d(l(P),{checked:w.value,"onUpdate:checked":a[7]||(a[7]=e=>w.value=e),indeterminate:C.value,onChange:M,disabled:!p.isMultiSelect},{default:o(()=>[x(" \u5168\u9009")]),_:1},8,["checked","indeterminate","disabled"])]),ke,i.value.length===0?(v(),D(I,{key:0},[x("\u65E0\u6570\u636E")],64)):(v(),N(l($),{key:1,value:s.value,"onUpdate:value":a[8]||(a[8]=e=>s.value=e)},{default:o(()=>[(v(!0),D(I,null,Y(i.value,e=>(v(),N(l(P),{key:e.No,value:e.No,onChange:j},{default:o(()=>[y("span",null,F(e.Name)+"("+F(e.No)+")",1),e.DeptName?(v(),D("span",xe,[be,x(F(e.DeptName),1)])):oe("",!0)]),_:2},1032,["value"]))),128))]),_:1},8,["value"]))])]),_:1},8,["spinning"])]),_:1})]),_:1}))],64))}});const Ce=ie(Ee,[["__scopeId","data-v-80fa96cb"]]),je=Object.freeze(Object.defineProperty({__proto__:null,default:Ce},Symbol.toStringTag,{value:"Module"}));export{Ce as P,je as _};