Files
qhmes/web-dist/js/RoleSelectInput-JMuL5OH4.js
2026-06-16 18:19:57 +08:00

2 lines
7.3 KiB
Java

var x=(o,p,d)=>new Promise((n,h)=>{var S=a=>{try{m(d.next(a))}catch(u){h(u)}},r=a=>{try{m(d.throw(a))}catch(u){h(u)}},m=a=>a.done?n(a.value):Promise.resolve(a.value).then(S,r);m((d=d.apply(o,p)).next())});import{B as G}from"./index-BDvqZ5j4.js";import{b1 as H,gJ as J,d as $,au as j,aG as K,F as P,u as q}from"./index-X7Y8jykP.js";import{S as A}from"./SelectedUserItem-RRb_QZKg.js";import{a as Q,u as W}from"./useModal-DaJ3Bflg.js";import{h as E,c as O,r as C,t as N,K as M,y as F,z as g,A as T,Q as v,f as b,C as y,F as B,D,G as V,e as X,w as Y,H as z,J as Z}from"./vue-vendor-DNhG1Cve.js";import"./index-DSsDi_fL.js";import{C as ee}from"./Group-UHkub2tu.js";import"./BasicModal-xH56XuRZ.js";import"./ModalHeader-Sr8KwhJJ.js";import"./useTimeout-D5AmIBZw.js";import"./emoji-mart-vue-fast-R0uJEDq-.js";import"./index-BzChaRPg.js";import"./useWindowSizeFn-C-0M9_Ul.js";import"./index-ByCwbQDV.js";import"./index-Upeu4GGa.js";import"./index-C4wWpZeQ.js";import"./index-M9QP6cvf.js";import"./Skeleton-CimgOdM7.js";import"./useScrollTo-0FPEw5-K.js";import"./useIntersectionObserver-BGOgyKyu.js";import"./useAppInject-DPZGPcR3.js";import"./index-CuWaQdlK.js";import"./index-DO7ZhK45.js";import"./MinusCircleFilled-BLRBKPEV.js";import"./index-B4gPlWQt.js";import"./eagerComputed-BTlOruLW.js";import"./Checkbox-Dbxs4we4.js";import"./index-BuONesFs.js";const te={name:"RoleSelectModal",components:{BasicModal:G,SearchOutlined:J,CloseOutlined:H,SelectedUserItem:A},props:{multi:{type:Boolean,default:!0},getContainer:{type:Function,default:null},title:{type:String,default:""},type:{type:String,default:"sys_role"},appId:{type:String,default:""}},emits:["selected","register"],setup(o,{emit:p}){const d=C(""),n=O(()=>{let l=u.value;return!l||l.length==0?[]:l.map(s=>s.id)});E(()=>o.appId,l=>x(null,null,function*(){l&&(yield f())}),{immediate:!0});const[h]=Q(l=>{let s=r.value;if(!(!s||s.length==0)){let e=l.list||[];for(let t of s)e.indexOf(t.id)>=0?t.checked=!0:t.checked=!1}});function S(){let l=N(n.value);p("selected",l,N(u.value))}const r=C([]),m=O(()=>{let l=r.value;if(!l||l.length==0)return[];let s=d.value;return s?l.filter(e=>e.name.indexOf(s)>=0):l}),a=C([]),u=O(()=>{let l=r.value;if(!l||l.length==0)return[];l=l.filter(e=>e.checked);let s=[];for(let e of a.value){let t=l.find(i=>i.id==e);t&&s.push(t)}return s});function I(l){let s=r.value;if(!s||s.length==0)return;let e=s.find(t=>t.id==l);e.checked=!1,a.value=a.value.filter(t=>t!=l)}function f(){return x(this,null,function*(){let l={pageNo:1,pageSize:200,column:"createTime",order:"desc"};const e=yield $.get({url:"/sys/role/listByTenant",params:l},{isTransformResponse:!1});if(e.success){const{records:t}=e.result;let i=[];if(t&&t.length>0)for(let c of t)i.push({id:c.id,name:c.name||c.roleName,code:c.roleCode,selectType:o.type,checked:!1});r.value=i}})}function k(l,s){w(l),o.multi||(r.value.forEach(e=>{e.id!=s.id&&(e.checked=!1)}),a.value=[]),s.checked=!s.checked,s.checked?a.value.push(s.id):a.value=a.value.filter(e=>e!==s.id)}function w(l){l.preventDefault(),l.stopPropagation()}return{register:h,showDataList:m,searchText:d,handleOk:S,selectedList:u,selectedIdList:n,unSelect:I,onSelect:k}}},le={style:{position:"relative","min-height":"350px"}},oe={style:{width:"100%"}},ne={class:"modal-select-list-container"},se={class:"scroll"},ae={class:"content",style:{right:"-10px"}},ie=["onClick"],re={class:"text"},ce={class:"selected-users",style:{width:"100%","overflow-x":"hidden"}};function de(o,p,d,n,h,S){const r=M("SearchOutlined"),m=K,a=ee,u=M("SelectedUserItem"),I=M("BasicModal");return g(),F(I,{onRegister:n.register,getContainer:d.getContainer,canFullscreen:!1,title:d.title,width:500,destroyOnClose:"",onOk:n.handleOk,wrapClassName:"j-user-select-modal2"},{default:T(()=>[v("div",le,[v("div",oe,[b(m,{value:n.searchText,"onUpdate:value":p[0]||(p[0]=f=>n.searchText=f),allowClear:"",style:{width:"100%"},placeholder:"搜索"},{prefix:T(()=>[b(r,{style:{color:"#c0c0c0"}})]),_:1},8,["value"])]),v("div",ne,[v("div",se,[v("div",ae,[(g(!0),y(B,null,D(n.showDataList,f=>(g(),y("label",{class:"item",onClick:k=>n.onSelect(k,f)},[b(a,{checked:f.checked,"onUpdate:checked":k=>f.checked=k},{default:T(()=>[v("span",re,V(f.name),1)]),_:2},1032,["checked","onUpdate:checked"])],8,ie))),256))])])]),v("div",ce,[(g(!0),y(B,null,D(n.selectedList,f=>(g(),F(u,{info:f,onUnSelect:n.unSelect},null,8,["info","onUnSelect"]))),256))])])]),_:1},8,["onRegister","getContainer","title","onOk"])}const ue=j(te,[["render",de],["__scopeId","data-v-77a03fe6"]]),fe=X({name:"RoleSelectInput",components:{RoleSelectModal:ue,SelectedUserItem:A},props:{disabled:{type:Boolean,default:!1},maxSelectCount:{type:Number,default:2},store:{type:String,default:"id"},value:{type:String,default:""},multi:{type:Boolean,default:!1},getContainer:{type:Function,default:null},appId:{type:String,default:""}},emits:["update:value","change"],setup(o,{emit:p}){const d=P.useInjectFormItemContext(),n=C([]),h=C(!0),[S,{openModal:r,closeModal:m}]=W();function a(e){e.preventDefault(),e.stopPropagation();let t=n.value.map(i=>i.id);r(!0,{list:t})}const u=O(()=>{let e=o.maxSelectCount,t=n.value.length;return t>e?{status:!0,count:t-e}:{status:!1}});function I(e){h.value=!1;let t=n.value,i=-1;for(let c=0;c<t.length;c++)if(t[c].id==e){i=c;break}i>=0&&(t.splice(i,1),n.value=t,f())}function f(){let e=[],t=n.value;t&&t.length>0&&(e=t.map(c=>c[o.store]));let i=e.join(",");p("update:value",i),p("change",i),d.onFieldChange()}function k(e,t){h.value=!1,t&&t.length>0?n.value=t:n.value=[],f(),m()}const w=C(""),l=q();Y(()=>{let e=l.getTenant,t=o.appId;t?w.value=t:w.value=new Date().getTime()+"-"+e}),E(()=>o.value,e=>x(null,null,function*(){e?h.value===!0&&(yield s(e)):n.value=[],h.value=!0}),{immediate:!0});function s(e){return x(this,null,function*(){const t="/sys/role/listByTenant";let i={[o.store]:e,pageSize:200};o.store==="code"&&(i.roleCode=e),n.value=[];const c=yield $.get({url:t,params:i},{isTransformResponse:!1});if(c.success){const{records:L}=c.result;let R=[];if(L&&L.length>0){for(let _ of L)R.push({id:_.id,name:_.name||_.roleName,code:_.roleCode,checked:!0,selectType:"sys_role"});o.store==="code"?R.sort((_,U)=>e.indexOf(_.code)-e.indexOf(U.code)):R.sort((_,U)=>e.indexOf(_.id)-e.indexOf(U.id))}n.value=R}})}return{selectedList:n,ellipsisInfo:u,registerRoleModal:S,closeRoleModal:m,showModal:a,onSelected:k,unSelect:I,currentAppId:w}}}),pe={key:1,style:{height:"30px","line-height":"30px",display:"inline-block","margin-left":"7px",color:"#bfbfbf"}},me={key:2,class:"user-selected-item"},he={class:"user-select-ellipsis"},ge={style:{color:"red"}};function ve(o,p,d,n,h,S){const r=M("SelectedUserItem"),m=M("RoleSelectModal");return g(),y("div",null,[v("div",{onClick:p[0]||(p[0]=(...a)=>o.showModal&&o.showModal(...a)),class:Z(o.disabled?"select-input disabled-select":"select-input")},[o.selectedList.length>0?(g(!0),y(B,{key:0},D(o.selectedList,(a,u)=>(g(),y(B,null,[u<o.maxSelectCount?(g(),F(r,{key:0,info:a,onUnSelect:o.unSelect,query:""},null,8,["info","onUnSelect"])):z("",!0)],64))),256)):(g(),y("span",pe,"请选择")),o.ellipsisInfo.status?(g(),y("div",me,[v("div",he,[v("span",ge,"+"+V(o.ellipsisInfo.count)+"...",1)])])):z("",!0)],2),b(m,{appId:o.currentAppId,multi:o.multi,getContainer:o.getContainer,title:"选择组织角色",onRegister:o.registerRoleModal,onSelected:o.onSelected},null,8,["appId","multi","getContainer","onRegister","onSelected"])])}const Pe=j(fe,[["render",ve],["__scopeId","data-v-842aa1c6"]]);export{Pe as default};