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
10 KiB

import{dH as K,dI as de,ep as me,dJ as ce,cr as z,cs as p,cq as U,da as Y,cu as Q,cv as r,cy as y,cG as V,cB as s,cC as d,cU as pe,cK as E,cA as o,cF as B,cL as I,de as H,ct as P,cz as O,dj as _e,cM as q,cI as M,cD as W,c_ as ve,cS as fe,cw as J,cE as be,cY as ge,cP as he}from"./index-6b91f299.js";const F="/team/member",Ae=()=>K(`${F}`),Me=m=>de(`${F}/_batch`,m),ye=m=>me(`${F}/${m}`),$e=m=>K(`${F}/${m}`),Ee=(m,T)=>ce(`${F}/${m}`,T),x={getTeamMember:Ae,postCreatTeamMember:Me,delTeamMember:ye,getMemberPermissions:$e,putMemberPermissions:Ee},Se=["id"],ke={class:"dialog-sub-title"},Ce={class:"dialog-footer"},Ne=z({__name:"CreateMemberDialog",emits:["refresh"],setup(m,{expose:T,emit:_}){const S=_,v=p(!1),f=p({users:[]}),h=p(),u=p(!1),w=p({users:[{type:"array",required:!0,message:U("views.team.teamForm.form.userName.requiredMessage"),trigger:"change"}]});Y(v,e=>{e||(f.value={users:[]},u.value=!1)});const G=()=>{v.value=!0},n=async e=>{e&&await e.validate((i,A)=>{if(i){u.value=!0;let k=f.value.users.map(C=>C.id);x.postCreatTeamMember(k).then(C=>{H(U("common.submitSuccess")),S("refresh",k),v.value=!1,u.value=!1}).catch(()=>{u.value=!1})}})};return Q(()=>{}),T({open:G,close}),(e,i)=>{const A=r("tags-input"),k=r("el-form-item"),C=r("el-form"),N=r("el-button"),D=r("el-dialog");return y(),V(D,{modelValue:v.value,"onUpdate:modelValue":i[4]||(i[4]=t=>v.value=t),"close-on-press-escape":!1,"close-on-click-modal":!1,"destroy-on-close":!0,width:"600",class:"member-dialog"},{header:s(({titleId:t,titleClass:$})=>[d("h4",{id:t,class:pe($)},E(e.$t("views.team.addMember")),11,Se),d("div",ke,E(e.$t("views.team.addSubTitle")),1)]),footer:s(()=>[d("span",Ce,[o(N,{onClick:i[2]||(i[2]=B(t=>v.value=!1,["prevent"]))},{default:s(()=>[I(E(e.$t("common.cancel")),1)]),_:1}),o(N,{type:"primary",onClick:i[3]||(i[3]=t=>n(h.value)),loading:u.value},{default:s(()=>[I(E(e.$t("common.add")),1)]),_:1},8,["loading"])])]),default:s(()=>[o(C,{ref_key:"addMemberFormRef",ref:h,model:f.value,"label-position":"top",rules:w.value,"require-asterisk-position":"right",onSubmit:i[1]||(i[1]=B(()=>{},["prevent"]))},{default:s(()=>[o(k,{label:e.$t("views.team.teamForm.form.userName.label"),prop:"users"},{default:s(()=>[o(A,{tags:f.value.users,"onUpdate:tags":i[0]||(i[0]=t=>f.value.users=t),placeholder:e.$t("views.team.teamForm.form.userName.placeholder")},null,8,["tags","placeholder"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1},8,["modelValue"])}}});var a=(m=>(m.MANAGE="MANAGE",m.USE="USE",m.DATASET="DATASET",m.APPLICATION="APPLICATION",m))(a||{});const Ue={class:"p-24 pt-0"},Ve={class:"flex align-center"},we=z({__name:"PermissionSetting",props:{data:{type:Array,default:()=>[]},id:String,type:String,tableHeight:Number,manage:Boolean},emits:["update:data"],setup(m,{emit:T}){const _=m,S=P(()=>_.type===a.DATASET),v=P(()=>_.type===a.APPLICATION),f=p({[a.MANAGE]:P({get:()=>u.value.some(n=>n.operate[a.MANAGE]),set:n=>{n?u.value.map(e=>{e.operate[a.MANAGE]=!0,e.operate[a.USE]=!0}):u.value.map(e=>{e.operate[a.MANAGE]=!1})}}),[a.USE]:P({get:()=>u.value.some(n=>n.operate[a.USE]),set:n=>{n?u.value.map(e=>{e.operate[a.USE]=!0}):u.value.map(e=>{e.operate[a.USE]=!1,e.operate[a.MANAGE]=!1})}})}),h=p(""),u=P(()=>_.data.filter(n=>n.name.includes(h.value))),w=p({[a.MANAGE]:P(()=>u.value.every(e=>!e.operate[a.MANAGE])?!1:!u.value.every(e=>e.operate[a.MANAGE])),[a.USE]:P(()=>u.value.every(e=>!e.operate[a.USE])?!1:!u.value.every(e=>e.operate[a.USE]))});function G(n,e,i){_.data.map(A=>{A.id===e.id&&(A.operate[n]=i,n===a.MANAGE&&i?A.operate[a.USE]=!0:n===a.USE&&!i&&(A.operate[a.MANAGE]=!1))})}return(n,e)=>{const i=r("el-input"),A=r("AppAvatar"),k=r("auto-tooltip"),C=r("el-table-column"),N=r("el-checkbox"),D=r("el-table");return y(),O(W,null,[o(i,{modelValue:h.value,"onUpdate:modelValue":e[0]||(e[0]=t=>h.value=t),placeholder:n.$t("common.search"),"prefix-icon":"Search",class:"p-24 pt-0 pb-0 mb-16 mt-4",clearable:""},null,8,["modelValue","placeholder"]),d("div",Ue,[o(D,{data:u.value,"max-height":m.tableHeight},{default:s(()=>[o(C,{prop:"name",label:v.value?n.$t("views.application.applicationForm.form.appName.label"):n.$t("views.dataset.datasetForm.form.datasetName.label")},{default:s(({row:t})=>[d("div",Ve,[v.value?(y(),V(A,{key:0,name:t.name,pinyinColor:"",class:"mr-12",shape:"square",size:24},null,8,["name"])):S.value?(y(),V(A,{key:1,class:"mr-12 avatar-blue",shape:"square",size:24},{default:s(()=>e[3]||(e[3]=[d("img",{src:_e,style:{width:"58%"},alt:""},null,-1)])),_:1})):q("",!0),o(k,{content:t==null?void 0:t.name},{default:s(()=>[I(E(t==null?void 0:t.name),1)]),_:2},1032,["content"])])]),_:1},8,["label"]),o(C,{label:n.$t("views.team.setting.management"),align:"center",width:"100",fixed:"right"},{header:s(()=>[o(N,{disabled:_.manage,modelValue:f.value[M(a).MANAGE],"onUpdate:modelValue":e[1]||(e[1]=t=>f.value[M(a).MANAGE]=t),indeterminate:w.value[M(a).MANAGE],label:n.$t("views.team.setting.management")},null,8,["disabled","modelValue","indeterminate","label"])]),default:s(({row:t})=>[o(N,{disabled:_.manage,modelValue:t.operate[M(a).MANAGE],"onUpdate:modelValue":$=>t.operate[M(a).MANAGE]=$,onChange:$=>G(M(a).MANAGE,t,$)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"])]),_:1},8,["label"]),o(C,{label:n.$t("views.team.setting.check"),align:"center",width:"100",fixed:"right"},{header:s(()=>[o(N,{disabled:_.manage,modelValue:f.value[M(a).USE],"onUpdate:modelValue":e[2]||(e[2]=t=>f.value[M(a).USE]=t),indeterminate:w.value[M(a).USE],label:n.$t("views.team.setting.check")},null,8,["disabled","modelValue","indeterminate","label"])]),default:s(({row:t})=>[o(N,{disabled:_.manage,modelValue:t.operate[M(a).USE],"onUpdate:modelValue":$=>t.operate[M(a).USE]=$,onChange:$=>G(M(a).USE,t,$)},null,8,["disabled","modelValue","onUpdate:modelValue","onChange"])]),_:1},8,["label"])]),_:1},8,["data","max-height"])])],64)}}}),Te={class:"team-manage flex main-calc-height"},Ge={class:"team-member p-8 border-r"},Pe={class:"flex-between p-16"},Ie={class:"team-member-input"},De={class:"list-height-left"},xe={class:"flex-between"},Fe={class:"mr-8"},Le={class:"cursor"},Be={class:"permission-setting flex"},He={class:"team-manage__table"},Oe={class:"p-24 pb-0 mb-4"},qe={class:"submit-button"},ze=z({__name:"index",setup(m){const T=p(),_=p(!1),S=p(!1),v=p([]),f=p([]),h=p(""),u=p(""),w=p(""),G=p(a.DATASET),n=p(0),e=ve([{label:U("views.dataset.title"),value:a.DATASET,data:[]},{label:U("views.application.title"),value:a.APPLICATION,data:[]}]);Y(w,l=>{l?f.value=v.value.filter(c=>c.username.includes(l)):f.value=v.value});function i(l){return l==="manage"}function A(){S.value=!0;const l={team_member_permission_list:[]};e.map(c=>{c.data.map(b=>{l.team_member_permission_list.push({target_id:b.id,type:b.type,operate:b.operate})})}),x.putMemberPermissions(h.value,l).then(()=>{H(U("common.submitSuccess")),k(h.value)}).catch(()=>{S.value=!1})}function k(l){S.value=!0,x.getMemberPermissions(l).then(c=>{(!c.data||Object.keys(c.data).length>0)&&e.map(b=>{Object.keys(c.data).indexOf(b.value)!==-1&&(b.data=c.data[b.value])}),S.value=!1}).catch(()=>{S.value=!1})}function C(l){ge(`${U("views.team.delete.confirmTitle")}${l.username}?`,U("views.team.delete.confirmMessage"),{confirmButtonText:U("views.team.delete.button"),confirmButtonClass:"danger"}).then(()=>{_.value=!0,x.delTeamMember(l.id).then(()=>{H(U("common.deleteSuccess")),t()}).catch(()=>{_.value=!1})}).catch(()=>{})}function N(l){h.value=l.id,u.value=l.type,k(l.id)}function D(){var l;(l=T.value)==null||l.open()}function t(l){_.value=!0,x.getTeamMember().then(c=>{v.value=c.data,f.value=c.data;const b=l&&v.value.find(L=>L.user_id===l)||null;h.value=b?b.id:v.value[0].id,u.value=b?b.type:v.value[0].type,k(h.value),_.value=!1}).catch(()=>{_.value=!1})}function $(l){t(l&&l[0])}return Q(()=>{n.value=window.innerHeight-330,window.onresize=()=>(()=>{n.value=window.innerHeight-330})(),t()}),(l,c)=>{const b=r("AppIcon"),L=r("el-button"),X=r("el-input"),Z=r("el-tag"),ee=r("MoreFilled"),ae=r("el-icon"),te=r("el-dropdown-item"),le=r("el-dropdown-menu"),ne=r("el-dropdown"),se=r("common-list"),oe=r("el-scrollbar"),re=r("el-tab-pane"),ie=r("el-tabs"),ue=r("LayoutContainer"),R=fe("loading");return y(),V(ue,{header:l.$t("views.team.title")},{default:s(()=>[d("div",Te,[d("div",Ge,[d("div",Pe,[d("h4",null,E(l.$t("views.team.member")),1),o(L,{type:"primary",link:"",onClick:D},{default:s(()=>[o(b,{iconName:"app-add-users",class:"add-user-icon"})]),_:1})]),d("div",Ie,[o(X,{modelValue:w.value,"onUpdate:modelValue":c[0]||(c[0]=g=>w.value=g),placeholder:l.$t("views.team.searchBar.placeholder"),"prefix-icon":"Search",clearable:""},null,8,["modelValue","placeholder"])]),d("div",De,[o(oe,null,{default:s(()=>[J((y(),V(se,{data:f.value,class:"mt-8",onClick:N,"default-active":h.value},{default:s(({row:g})=>[d("div",xe,[d("div",null,[d("span",Fe,E(g.username),1),i(g.type)?(y(),V(Z,{key:0,class:"default-tag"},{default:s(()=>[I(E(l.$t("views.team.manage")),1)]),_:1})):q("",!0)]),d("div",{onClick:c[1]||(c[1]=B(()=>{},["stop"])),style:{"margin-top":"5px"}},[i(g.type)?q("",!0):(y(),V(ne,{key:0,trigger:"click"},{dropdown:s(()=>[o(le,null,{default:s(()=>[o(te,{onClick:B(j=>C(g),["prevent"])},{default:s(()=>[I(E(l.$t("views.team.delete.button")),1)]),_:2},1032,["onClick"])]),_:2},1024)]),default:s(()=>[d("span",Le,[o(ae,{class:"rotate-90"},{default:s(()=>[o(ee)]),_:1})])]),_:2},1024))])])]),_:1},8,["data","default-active"])),[[R,_.value]])]),_:1})])]),J((y(),O("div",Be,[d("div",He,[d("h4",Oe,E(l.$t("views.team.permissionSetting")),1),o(ie,{modelValue:G.value,"onUpdate:modelValue":c[2]||(c[2]=g=>G.value=g),class:"team-manage__tabs"},{default:s(()=>[(y(!0),O(W,null,be(e,(g,j)=>(y(),V(re,{key:g.value,label:g.label,name:g.value},{default:s(()=>[(y(),V(we,{key:j,data:g.data,type:g.value,tableHeight:n.value,manage:i(u.value)},null,8,["data","type","tableHeight","manage"]))]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])]),d("div",qe,[o(L,{type:"primary",onClick:A},{default:s(()=>[I(E(l.$t("common.save")),1)]),_:1})])])),[[R,S.value]])]),o(Ne,{ref_key:"CreateMemberRef",ref:T,onRefresh:$},null,512)]),_:1},8,["header"])}}});const je=he(ze,[["__scopeId","data-v-2e59f9d2"]]);export{je as default};