Files
qhmes/deploy-qhmes/frontend/js/JSelectDept-DRDVeruW.js
2026-05-15 11:34:12 +08:00

2 lines
11 KiB
Java

var ge=Object.defineProperty,me=Object.defineProperties;var ve=Object.getOwnPropertyDescriptors;var ie=Object.getOwnPropertySymbols;var ke=Object.prototype.hasOwnProperty,Ce=Object.prototype.propertyIsEnumerable;var ue=(e,a,l)=>a in e?ge(e,a,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[a]=l,te=(e,a)=>{for(var l in a||(a={}))ke.call(a,l)&&ue(e,l,a[l]);if(ie)for(var l of ie(a))Ce.call(a,l)&&ue(e,l,a[l]);return e},ce=(e,a)=>me(e,ve(a));var H=(e,a,l)=>new Promise((w,v)=>{var k=r=>{try{u(l.next(r))}catch(s){v(s)}},c=r=>{try{u(l.throw(r))}catch(s){v(s)}},u=r=>r.done?w(r.value):Promise.resolve(r.value).then(k,c);u((l=l.apply(e,a)).next())});import{c as ae,f as h,r as re,e as Se,w as se,u as O,n as ne,d as fe,ah as b,ar as he,as as V,k as K,aG as U,aF as m,aC as N,ag as J,G as P,p as le,h as be,J as de}from"./vue-vendor-C7Zq48Yl.js";import{B as Te}from"./index-Du0A3ksf.js";import{aC as Ke,aD as De,f as we,p as L,ak as Ee,a as ye,aE as Be,aF as Oe,an as Ae,aG as Ie,d as pe,al as Ve}from"./index-BI6CMai0.js";import{t as Le}from"./props-DAezUTeZ.js";import{B as Me}from"./index-CUdllngZ.js";import{ak as $e,o as Re,h as oe}from"./antd-vue-vendor-BPnV8VqP.js";import{T as Pe}from"./TreeIcon-DE4jdeZV.js";import{J as je}from"./JSelectBiz-CnEaVMUF.js";function ze(e,a,l,w,v){const k=ae("selectOptions",h([])),c=ae("selectValues",re({})),u=ae("loadingEcho",h(!1)),r=h([]),s=h([]),y=h([]),D=h(!1),E=h(w.multiple?l.checkStrictly:!0),A=Se(()=>E.value);let I=!0,p=[];const C=h([]),M=l.enableAutoExpand!==!1;se(c,({value:t})=>{if(t&&t.length>0){if($e(t,p))return;p=t,u.value=I,I=!1,j(null,t.join(",")).finally(()=>{u.value=!1})}},{immediate:!0});function g(){const t=O(e);return t||null}function f(t){return H(this,null,function*(){var n;if(!t||t.length===0)return[];try{const o=yield Ke({departId:t.join(","),orgCode:(n=l.params)==null?void 0:n.orgCode});if(o){const i=[];return(o instanceof Map?Array.from(o.values()):Object.values(o)).forEach(S=>{if(S&&S.parentIds&&Array.isArray(S.parentIds)){const z=S.parentIds.filter($=>!t.includes($));i.push(...z)}}),[...new Set(i)]}return[]}catch(o){return[]}})}function B(){ne(()=>{l.defaultExpandLevel&&l.defaultExpandLevel>0&&g().filterByLevel(l.defaultExpandLevel),s.value=c.value,C.value.length>0&&g().setExpandedKeys(C.value)}).then(()=>{C.value.length>0&&setTimeout(()=>{g().setExpandedKeys(C.value)},100)})}function Q(t,n){if(l.checkable==!1){s.value=l.checkStrictly?t.checked:t;const{selectedNodes:o}=n;let i=[];o.forEach(d=>{i.push(d)}),y.value=i}}function W(t,n){if(n&&l.checkable==!0){if(!w.multiple){if(n.checked){s.value=[n.node.eventKey];let d=l.rowKey,S=n.checkedNodes.find(z=>z[d]===n.node.eventKey);y.value=[S]}else s.value=[],y.value=[];return}s.value=E.value?t.checked:t;const{checkedNodes:o}=n;let i=[];o.forEach(d=>{i.push(d)}),y.value=i}}function X(t){return H(this,null,function*(){g().checkAll(t),yield ne(),s.value=g().getCheckedKeys(),t?Y():y.value=[]})}function Y(){let t="";O(s).length>0&&(t=s.value.join(",")),a({ids:t}).then(n=>{y.value=n})}function Z(t){g().expandAll(t)}function j(t,n){return H(this,null,function*(){var z;let o={},i="";t&&(i=t.eventKey,o.pid=t.value),n&&(i="",o.ids=n),(z=l.params)!=null&&z.departIds&&(o.departIds=l.params.departIds);let d=yield a(o),S=d;if(l.onlyShowCompany&&(d=x(d)),l.izOnlySelectDepartPost&&G(d),l.izShowDepartNameAbbr&&(d=_(d)),l.serverTreeData||(d=De(d,l,i),d.length==0&&t&&F(i,r.value)),D.value==!0){if(!t)r.value=d;else return new Promise($=>{if(!t.children){$();return}const R=O(e);R&&(R.updateNodeByKey(t.eventKey,{children:d}),R.setExpandedKeys([t.eventKey,...R.getExpandedKeys()])),$()});B()}else{const $=[];S.forEach(R=>{$.push({label:R[l.labelKey],value:R[l.rowKey]})}),k.value=$}})}function x(t){return t.filter(o=>o.orgCategory&&["1","4"].includes(o.orgCategory))}function _(t){const n=t;return n.forEach(o=>{o.title=o.departNameAbbr||o.title}),n}function F(t,n){if(n&&n.length>0)for(let o of n)if(o.key==t){o.child||(o.isLeaf=!0);break}else F(t,o.children)}function ee(t){const n=[],o=[];y.value.forEach(i=>{n.push({label:i[l.labelKey],value:i[l.rowKey]})}),s.value.forEach(i=>{o.push(i)}),k.value=n,t&&t(n,o)}function q(t){return H(this,null,function*(){if(t){if(D.value=!0,yield j(null,null),M&&c.value&&c.value.length>0)try{const n=c.value,o=yield f(n);o.length>0&&(C.value=o,ne(()=>{try{const i=g();i&&(i.setExpandedKeys(o),setTimeout(()=>{try{const d=g();d&&(d.setExpandedKeys(o),setTimeout(()=>{try{const S=g();S&&S.setExpandedKeys(o)}catch(S){}},500))}catch(d){}},200))}catch(i){}}))}catch(n){}}else D.value=!1,v==null||v("close")})}function G(t){if(t&&t.length>0)for(const n of t)n.orgCategory!=="3"?(n.checkable=!1,n.selectable=!1):(n.checkable=!0,n.selectable=!0),n.isLeaf&&G(n.children)}function T(t){return H(this,null,function*(){if(t){let n=yield we.get({url:"/sys/sysDepart/searchBy",params:te({keyWord:t,orgCategory:"3"},l.params)});Array.isArray(n)?r.value=n:r.value=[]}else r.value=[],yield j(null,null)})}return[{visibleChange:q,selectOptions:k,selectValues:c,onLoadData:j,onCheck:W,onSelect:Q,checkALL:X,expandAll:Z,checkedKeys:s,selectRows:y,treeData:r,getCheckStrictly:A,getSelectTreeData:ee,onSearch:T,expandedKeys:C,checkStrictly:E}]}const He=fe({name:"DeptSelectModal",components:{TreeIcon:Pe,BasicModal:Te,BasicTree:Me},props:ce(te({},Le),{modalTitle:{type:String,default:"部门选择"},maxHeight:{type:Number,default:500},value:L.oneOfType([L.string,L.array]),params:{type:Object,default:()=>({})},izShowDepPath:{type:Boolean,default:!1}}),emits:["register","getSelectResult","close"],setup(e,{emit:a}){const[l,{closeModal:w}]=Ee(),v=ye(),k=h(null),c=h(Math.random());let u=e.value===""?[]:e.value;u&&typeof u=="string"&&(u=u.split(","));let r=Object.assign({},O(e),O(v),{value:u},{disabled:!1});const s=Re(r,"multiple"),y=_(),[{visibleChange:D,checkedKeys:E,getCheckStrictly:A,getSelectTreeData:I,onCheck:p,onLoadData:C,treeData:M,checkALL:g,expandAll:f,onSelect:B,onSearch:Q,expandedKeys:W,checkStrictly:X}]=ze(k,y,s,e,a),Y=h(e.params||{}),Z=h([]),j={key:e.rowKey};function x(){I((T,t)=>{a("getSelectResult",T,t),w()})}function _(){let T=e.izOnlySelectDepartPost?Be:e.sync?Oe:Ae;return t=>T(Object.assign({},t,{primaryKey:e.rowKey}))}function F(T){T.target.value||(c.value=Math.random())}function ee(T){X.value=T}const q=re({});function G(T,t,n){if(e.izShowDepPath&&T==="2"){const o=q[n];return o||(Ie(n,t,"").then(i=>{i?q[n]=t+"("+i.substring(0,i.lastIndexOf("/"))+")":q[n]=t}),t)}else return t}return{tree:Z,handleOk:x,searchInfo:Y,treeRef:k,treeData:M,onCheck:p,onSelect:B,checkALL:g,expandAll:f,fieldNames:j,checkedKeys:E,expandedKeys:W,register:l,getBindValue:s,getCheckStrictly:A,visibleChange:D,onLoadData:C,onSearch:Q,reloadKey:c,handelSearchChange:F,toggleCheckStrictly:ee,getTitle:G}}});function Ne(e,a,l,w,v,k){const c=b("a-input-search"),u=b("TreeIcon"),r=b("BasicTree"),s=b("a-menu-item"),y=b("a-menu"),D=b("Icon"),E=b("a-button"),A=b("a-dropdown"),I=b("BasicModal");return V(),he("div",null,[K(I,U(e.$attrs,{onRegister:e.register,title:e.modalTitle,width:"600px",minHeight:300,maxHeight:e.maxHeight,onOk:e.handleOk,destroyOnClose:"",onVisibleChange:e.visibleChange}),{insertFooter:m(()=>[K(A,{placement:"top"},{overlay:m(()=>[K(y,null,{default:m(()=>[e.multiple?(V(),N(s,{key:"1",onClick:a[0]||(a[0]=p=>e.checkALL(!0))},{default:m(()=>[...a[6]||(a[6]=[P("全部勾选",-1)])]),_:1})):J("",!0),e.multiple?(V(),N(s,{key:"2",onClick:a[1]||(a[1]=p=>e.checkALL(!1))},{default:m(()=>[...a[7]||(a[7]=[P("取消全选",-1)])]),_:1})):J("",!0),K(s,{key:"3",onClick:a[2]||(a[2]=p=>e.expandAll(!0))},{default:m(()=>[...a[8]||(a[8]=[P("展开全部",-1)])]),_:1}),K(s,{key:"4",onClick:a[3]||(a[3]=p=>e.expandAll(!1))},{default:m(()=>[...a[9]||(a[9]=[P("折叠全部",-1)])]),_:1}),e.multiple?(V(),N(s,{key:"5",onClick:a[4]||(a[4]=p=>e.toggleCheckStrictly(!1))},{default:m(()=>[...a[10]||(a[10]=[P("层级关联",-1)])]),_:1})):J("",!0),e.multiple?(V(),N(s,{key:"6",onClick:a[5]||(a[5]=p=>e.toggleCheckStrictly(!0))},{default:m(()=>[...a[11]||(a[11]=[P("层级独立",-1)])]),_:1})):J("",!0)]),_:1})]),default:m(()=>[K(E,{style:{float:"left"}},{default:m(()=>[a[12]||(a[12]=P(" 树操作 ",-1)),K(D,{icon:"ant-design:up-outlined"})]),_:1})]),_:1})]),default:m(()=>[e.izOnlySelectDepartPost?(V(),N(c,{key:0,placeholder:"按岗位名称搜索…",style:{"margin-bottom":"10px"},onSearch:e.onSearch,onChange:e.handelSearchChange},null,8,["onSearch","onChange"])):J("",!0),(V(),N(r,U({ref:"treeRef",treeData:e.treeData,"load-data":e.sync==!1?null:e.onLoadData},e.getBindValue,{onSelect:e.onSelect,onCheck:e.onCheck,fieldNames:e.fieldNames,checkedKeys:e.checkedKeys,expandedKeys:e.expandedKeys,multiple:e.multiple,checkStrictly:e.getCheckStrictly,key:e.reloadKey}),{title:m(({orgCategory:p,title:C,orgCode:M})=>[K(u,{orgCategory:p,title:e.getTitle(p,C,M)},null,8,["orgCategory","title"])]),_:1},16,["treeData","load-data","onSelect","onCheck","fieldNames","checkedKeys","expandedKeys","multiple","checkStrictly"]))]),_:1},16,["onRegister","title","maxHeight","onOk","onVisibleChange"])])}const qe=pe(He,[["render",Ne]]),Je=fe({name:"JSelectDept",components:{DeptSelectModal:qe,JSelectBiz:je},inheritAttrs:!1,props:{value:L.oneOfType([L.string,L.array]),multiple:L.bool.def(!0),isCustomRenderTag:L.bool.def(!0)},emits:["options-change","change","select","update:value"],setup(e,{emit:a,refs:l}){const w=h(),[v,{openModal:k}]=Ve(),c=h([]);let u=re({value:[]}),r=[];const s=h(!1);le("selectOptions",c),le("selectValues",u),le("loadingEcho",s);const y=h(!1),D=ye();be(()=>{r=[],e.value&&A()}),se(()=>e.value,()=>{A()}),se(c,()=>{c&&a("select",de(O(c)),de(O(u)))});function E(){y.value=!0,k(!0,{isUpdate:!1})}function A(){let f=e.value?e.value:[];f&&typeof f=="string"?(u.value=f.split(","),r=f.split(",")):(u.value=f,r=oe(f))}function I(f,B){c.value=f,u.value=B,g(B)}const p=Object.assign({},O(e),O(D)),C=()=>{r.length?u.value=oe(r):g(r)},M=f=>{r=oe(f),g(r)},g=f=>{let B=typeof e.value=="string"?f.join(","):f;a("update:value",B),a("change",B),(!f||f.length==0)&&a("select",null,null)};return{attrs:D,selectOptions:c,selectValues:u,loadingEcho:s,getBindValue:p,tag:y,regModal:v,setValue:I,handleOpen:E,handleClose:C,handleSelectChange:M}}}),Fe={class:"JSelectDept"};function Ge(e,a,l,w,v,k){var s;const c=b("JSelectBiz"),u=b("DeptSelectModal"),r=b("a-form-item");return V(),he("div",Fe,[K(c,U({onChange:e.handleSelectChange,onHandleOpen:e.handleOpen,loading:e.loadingEcho},e.attrs,{isCustomRenderTag:e.isCustomRenderTag,rowKey:(s=e.getBindValue)==null?void 0:s.rowKey}),null,16,["onChange","onHandleOpen","loading","isCustomRenderTag","rowKey"]),K(r,null,{default:m(()=>[K(u,U({onRegister:e.regModal,onGetSelectResult:e.setValue},e.getBindValue,{multiple:e.multiple,onClose:e.handleClose}),null,16,["onRegister","onGetSelectResult","multiple","onClose"])]),_:1})])}const tt=pe(Je,[["render",Ge],["__scopeId","data-v-a550285e"]]);export{qe as D,tt as t};