index-CuY1JFzZ.js 12 KB

1
  1. import{cQ as G,fm as ue,fV as l,fW as x,ft as k,cq as C,g$ as a,cp as p,cw as n,cv as F,gx as y,h0 as D,fM as c,a0 as pe,gs as s,Q as _e,dX as q,y as Q,fr as ee,gZ as oe,cs as j,F as fe,gN as h,e as Z,O as U,B as N,cr as z,h2 as T,w as H,fL as te,ac as ne,gY as ve,dS as J}from"./builder-DygomDiV.js";import{_ as ke}from"./MemberFormContent.vue_vue_type_script_setup_true_lang-BfGx9ufY.js";import{l as O}from"./permission-api-BH6iJDRI.js";import"./workspace-DtPl6jqF.js";const we={style:{flex:"auto"}},ge=G({__name:"AddMemberDrawer",props:{currentWorkspace:{}},emits:["refresh"],setup(L,{expose:w,emit:b}){const f=L,v=b,i=c(!1),m=c(!1),_=c([]),W=c(!1),V=c([]),R=c([]),S=c([]);async function d(){try{const e=await pe.getUserList(W);R.value=[{path:"user_ids",label:s("views.role.member.title"),rules:[{required:!0,message:`${s("common.selectPlaceholder")}${s("views.role.member.title")}`}],selectProps:{options:e.data?.map(r=>({label:r.nick_name,value:r.id}))||[],placeholder:`${s("common.selectPlaceholder")}${s("views.role.member.title")}`}}]}catch(e){console.error(e)}}async function t(){try{const e=await O("workspace").getWorkspaceRoleList(W);S.value=[{path:"role_ids",label:s("views.role.member.role"),rules:[{required:!0,message:`${s("common.selectPlaceholder")}${s("views.role.member.role")}`}],selectProps:{options:e.data.filter(r=>r.type!==_e.ADMIN)?.map(r=>({label:q(r.name),value:r.id}))||[],placeholder:`${s("common.selectPlaceholder")}${s("views.role.member.role")}`}}]}catch(e){console.error(e)}}function u(){V.value=[...R.value,...S.value],_.value=[{user_ids:[],role_ids:[]}]}ue(async()=>{await d(),await t(),u()});function g(){u(),m.value=!0}function $(){m.value=!1}const M=c();function o(){M.value?.validate().then(async e=>{e&&(await O("workspace").CreateWorkspaceMember(f.currentWorkspace?.id,_.value,i),Q(s("common.addSuccess")),$(),v("refresh"))})}return w({open:g}),(e,r)=>{const I=l("el-button"),K=l("el-drawer"),B=x("loading");return k(),C(K,{modelValue:m.value,"onUpdate:modelValue":r[2]||(r[2]=P=>m.value=P),size:"600","destroy-on-close":!0,"before-close":$},{header:a(()=>[p("h4",null,y(e.$t("views.role.member.add")),1)]),default:a(()=>[D(n(ke,{ref_key:"memberFormContentRef",ref:M,models:V.value,form:_.value,"onUpdate:form":r[0]||(r[0]=P=>_.value=P),keepOneLine:""},null,8,["models","form"]),[[B,W.value]])]),footer:a(()=>[p("div",we,[n(I,{onClick:$},{default:a(()=>[F(y(e.$t("common.cancel")),1)]),_:1}),n(I,{type:"primary",onClick:r[1]||(r[1]=P=>o()),loading:i.value},{default:a(()=>[F(y(e.$t("common.add")),1)]),_:1},8,["loading"])])]),_:1},8,["modelValue"])}}}),he={class:"flex-between mb-16"},be={class:"flex complex-search"},$e=G({__name:"Member",props:{currentWorkspace:{}},setup(L){const w=L,b=c(!1),f=c("username"),v=c({username:"",nick_name:""}),i=te({current_page:1,page_size:20,total:0}),m=c([]);async function _(){if(w.currentWorkspace?.id)try{const t={[f.value]:v.value[f.value]},u=await O("workspace").getWorkspaceMemberList(w.currentWorkspace?.id,i,t,b);m.value=u.data.records.map(g=>({...g,nick_name:q(g.nick_name),role_name:q(g.role_name)})),i.total=u.data.total}catch(t){console.error(t)}}function W(){i.current_page=1,_()}ee(()=>{_()}),oe(()=>w.currentWorkspace?.id,()=>{_()});const V=({row:t,column:u,rowIndex:g,columnIndex:$})=>{if(u.property==="nick_name"||u.property==="username"){const M=m.value.filter(o=>o.user_id===t.user_id);return g===m.value.findIndex(o=>o.user_id===t.user_id)?{rowspan:M.length,colspan:1}:{rowspan:0,colspan:0}}},R=c();function S(){R.value?.open()}function d(t){H(`${s("views.workspace.member.delete.confirmTitle")}${t.nick_name} ?`,"",{confirmButtonText:s("common.confirm"),confirmButtonClass:"danger"}).then(()=>{b.value=!0,O("workspace").deleteWorkspaceMember(w.currentWorkspace?.id,t.user_relation_id,b).then(()=>{Q(s("common.deleteSuccess")),_()})}).catch(()=>{})}return(t,u)=>{const g=l("el-button"),$=l("el-option"),M=l("el-select"),o=l("el-input"),e=l("el-table-column"),r=l("AppIcon"),I=l("el-tooltip"),K=l("app-table"),B=x("hasPermission"),P=x("loading");return k(),j(fe,null,[p("div",he,[D((k(),C(g,{type:"primary",onClick:S},{default:a(()=>[F(y(t.$t("views.role.member.add")),1)]),_:1})),[[B,new(h(Z))([h(U).ADMIN,h(U).WORKSPACE_MANAGE.getWorkspaceRole],[h(N).WORKSPACE_ADD_MEMBER,h(N).WORKSPACE_WORKSPACE_ADD_MEMBER.getWorkspacePermissionWorkspaceManageRole],[],"OR")]]),p("div",be,[n(M,{class:"complex-search__left",modelValue:f.value,"onUpdate:modelValue":u[0]||(u[0]=A=>f.value=A),style:{width:"120px"}},{default:a(()=>[n($,{label:t.$t("views.login.loginForm.username.label"),value:"username"},null,8,["label"]),n($,{label:t.$t("views.userManage.userForm.nick_name.label"),value:"nick_name"},null,8,["label"])]),_:1},8,["modelValue"]),f.value==="username"?(k(),C(o,{key:0,modelValue:v.value.username,"onUpdate:modelValue":u[1]||(u[1]=A=>v.value.username=A),onChange:_,placeholder:t.$t("common.inputPlaceholder"),style:{width:"220px"},clearable:""},null,8,["modelValue","placeholder"])):f.value==="nick_name"?(k(),C(o,{key:1,modelValue:v.value.nick_name,"onUpdate:modelValue":u[2]||(u[2]=A=>v.value.nick_name=A),onChange:_,placeholder:t.$t("common.inputPlaceholder"),style:{width:"220px"},clearable:""},null,8,["modelValue","placeholder"])):z("",!0)])]),D((k(),C(K,{data:m.value,"pagination-config":i,onSizeChange:W,onChangePage:_,class:"member-table","span-method":V,maxTableHeight:320},{default:a(()=>[n(e,{prop:"nick_name",label:t.$t("views.userManage.userForm.nick_name.label")},null,8,["label"]),n(e,{prop:"username",label:t.$t("views.login.loginForm.username.label")},null,8,["label"]),n(e,{prop:"role_name",label:t.$t("views.role.member.role")},null,8,["label"]),n(e,{label:t.$t("common.operation"),width:"100",fixed:"right"},{default:a(({row:A})=>[n(I,{effect:"dark",content:`${t.$t("views.role.member.delete.button")}`,placement:"top"},{default:a(()=>[D((k(),C(g,{type:"primary",text:"",onClick:T(X=>d(A),["stop"])},{default:a(()=>[n(r,{iconName:"app-delete-users"})]),_:1},8,["onClick"])),[[B,new(h(Z))([h(U).ADMIN,h(U).WORKSPACE_MANAGE.getWorkspaceRole],[h(N).WORKSPACE_REMOVE_MEMBER,h(N).WORKSPACE_WORKSPACE_REMOVE_MEMBER.getWorkspacePermissionWorkspaceManageRole],[],"OR")]])]),_:2},1032,["content"])]),_:1},8,["label"])]),_:1},8,["data","pagination-config"])),[[P,b.value]]),n(ge,{ref_key:"addMemberDrawerRef",ref:R,currentWorkspace:w.currentWorkspace,onRefresh:_},null,8,["currentWorkspace"])],64)}}}),ye=ne($e,[["__scopeId","data-v-423efdd5"]]),Ce={class:"dialog-footer"},We=G({__name:"CreateOrUpdateWorkspaceDialog",emits:["refresh"],setup(L,{expose:w,emit:b}){const f=b,v=c(!1),i={name:""},m=c({...i});function _(d){d?m.value={id:d.id,name:d.name}:m.value={...i},v.value=!0}const W=c(),V=te({name:[{required:!0,message:`${s("common.inputPlaceholder")}${s("views.workspace.name")}`,trigger:"blur"}]}),R=c(!1),S=async d=>{d&&await d.validate(t=>{t&&O("workspace").CreateOrUpdateWorkspace(m.value,R).then(u=>{Q(m.value.id?s("common.renameSuccess"):s("common.createSuccess")),f("refresh",u.data),v.value=!1})})};return w({open:_}),(d,t)=>{const u=l("el-input"),g=l("el-form-item"),$=l("el-form"),M=l("el-button"),o=l("el-dialog");return k(),C(o,{title:`${m.value.id?d.$t("common.rename"):d.$t("common.create")}${d.$t("views.workspace.title")}`,modelValue:v.value,"onUpdate:modelValue":t[4]||(t[4]=e=>v.value=e),"close-on-click-modal":!1,"close-on-press-escape":!1,"destroy-on-close":!0},{footer:a(()=>[p("span",Ce,[n(M,{onClick:t[2]||(t[2]=T(e=>v.value=!1,["prevent"]))},{default:a(()=>[F(y(d.$t("common.cancel")),1)]),_:1}),n(M,{type:"primary",onClick:t[3]||(t[3]=e=>S(W.value)),loading:R.value},{default:a(()=>[F(y(m.value.id?d.$t("common.save"):d.$t("common.create")),1)]),_:1},8,["loading"])])]),default:a(()=>[n($,{"label-position":"top",ref_key:"formRef",ref:W,rules:V,model:m.value,"require-asterisk-position":"right",onSubmit:t[1]||(t[1]=T(()=>{},["prevent"]))},{default:a(()=>[n(g,{label:d.$t("views.workspace.name"),prop:"name"},{default:a(()=>[n(u,{modelValue:m.value.name,"onUpdate:modelValue":t[0]||(t[0]=e=>m.value.name=e),maxlength:"64","show-word-limit":"",placeholder:`${d.$t("common.inputPlaceholder")}${d.$t("views.workspace.name")}`},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["rules","model"])]),_:1},8,["title","modelValue"])}}}),Re={class:"workspace-manage p-16-24"},Me={class:"mb-16"},Pe={class:"flex main-calc-height"},Ae={class:"workspace-left border-r"},Ee={class:"p-24 pb-0"},Ve={class:"flex-between mb-12"},Se={class:"medium"},De={class:"list-height-left"},Oe={class:"p-8-16"},Ie={class:"flex-between"},Ue=["title"],Ne={class:"workspace-right p-24"},Fe={class:"flex align-center mb-16"},Be={class:"medium"},Te={class:"color-input-placeholder ml-4"},Le=G({__name:"index",setup(L){const w=c(""),b=c(!1),f=c([]),v=c([]),i=c();async function m(){try{const o=await O("workspace").getSystemWorkspaceList(b);f.value=o.data,v.value=R(f.value,w.value)}catch(o){console.error(o)}}ee(async()=>{await m(),i.value=f.value[0]});const _=()=>J([U.ADMIN,N.WORKSPACE_EDIT],"OR"),W=()=>J([U.ADMIN,N.WORKSPACE_DELETE],"OR");async function V(o){await m(),o?i.value=o:i.value=f.value.find(e=>e.id===i.value?.id)}function R(o,e){return e.length?o.filter(r=>r.name.toLowerCase().includes(e.toLowerCase())):o}oe(w,o=>{v.value=R(f.value,o)});function S(o){i.value=o}const d=c();function t(o){d.value?.open(o)}async function u(o){try{return await O("workspace").deleteWorkspaceCheck(o)}catch(e){console.log(e)}}async function g(o){const e=await u(o.id);(e?e.data.can_delete:!0)?H(`${s("views.workspace.delete.confirmTitle")}${o.name} ?`,s("views.workspace.delete.confirmContent"),{confirmButtonText:s("common.confirm"),confirmButtonClass:"danger"}).then(()=>{O("workspace").deleteWorkspace(o.id,b).then(async()=>{Q(s("common.deleteSuccess")),await m(),i.value=o.id===i.value?.id?f.value[0]:i.value})}):H(`${s("views.workspace.delete.confirmTitle")}${o.name} ?`,e?e.data.message:s("views.workspace.delete.confirmContent"),{showConfirmButton:!1,cancelButtonText:s("common.close")})}const $=c("");function M(o){$.value=o.id}return(o,e)=>{const r=l("AppIcon"),I=l("el-button"),K=l("el-tooltip"),B=l("el-input"),P=l("el-dropdown-item"),A=l("el-dropdown-menu"),X=l("el-dropdown"),ae=l("common-list"),le=l("el-scrollbar"),se=l("el-divider"),re=l("UserFilled"),ce=l("el-icon"),ie=l("el-card"),me=x("hasPermission"),Y=x("loading");return k(),j("div",Re,[p("h2",Me,y(o.$t("views.workspace.title")),1),n(ie,{style:{"--el-card-padding":"0"}},{default:a(()=>[p("div",Pe,[p("div",Ae,[p("div",Ee,[p("div",Ve,[p("h4",Se,y(o.$t("views.workspace.list")),1),n(K,{effect:"dark",content:`${o.$t("common.create")}${o.$t("views.workspace.title")}`,placement:"top"},{default:a(()=>[D((k(),C(I,{type:"primary",text:"",onClick:e[0]||(e[0]=E=>t())},{default:a(()=>[n(r,{iconName:"app-add-outlined"})]),_:1})),[[me,[h(U).ADMIN,h(N).WORKSPACE_CREATE]]])]),_:1},8,["content"])]),n(B,{modelValue:w.value,"onUpdate:modelValue":e[1]||(e[1]=E=>w.value=E),placeholder:o.$t("common.search"),"prefix-icon":"Search",clearable:""},null,8,["modelValue","placeholder"])]),p("div",De,[D((k(),C(le,null,{default:a(()=>[p("div",Oe,[n(ae,{data:v.value,onClick:S,"default-active":i.value?.id,onMouseenter:M,onMouseleave:e[3]||(e[3]=E=>$.value="")},{default:a(({row:E})=>[p("div",Ie,[p("span",{class:"ellipsis",title:E.name},y(h(q)(E.name)),9,Ue),D(p("div",{onClick:e[2]||(e[2]=T(()=>{},["stop"]))},[_()||W()?(k(),C(X,{key:0,teleported:!1,trigger:"click"},{dropdown:a(()=>[n(A,{style:{"min-width":"80px"}},{default:a(()=>[_()?(k(),C(P,{key:0,onClick:T(de=>t(E),["stop"]),class:"p-8"},{default:a(()=>[n(r,{iconName:"app-edit",class:"color-secondary"}),F(" "+y(o.$t("common.rename")),1)]),_:1},8,["onClick"])):z("",!0),W()?(k(),C(P,{key:1,onClick:T(de=>g(E),["stop"]),class:"border-t p-8"},{default:a(()=>[n(r,{iconName:"app-delete",class:"color-secondary"}),F(" "+y(o.$t("common.delete")),1)]),_:1},8,["onClick"])):z("",!0)]),_:2},1024)]),default:a(()=>[n(I,{text:""},{default:a(()=>[n(r,{iconName:"app-more"})]),_:1})]),_:2},1024)):z("",!0)],512),[[ve,$.value===E.id]])])]),empty:a(()=>[...e[4]||(e[4]=[p("span",null,null,-1)])]),_:1},8,["data","default-active"])])]),_:1})),[[Y,b.value]])])]),D((k(),j("div",Ne,[p("div",Fe,[p("h4",Be,y(h(q)(i.value?.name)),1),n(se,{direction:"vertical",class:"mr-8 ml-8"}),n(ce,{class:"color-input-placeholder"},{default:a(()=>[n(re)]),_:1}),p("span",Te,y(i.value?.user_count),1)]),n(ye,{currentWorkspace:i.value},null,8,["currentWorkspace"])])),[[Y,b.value]])])]),_:1}),n(We,{ref_key:"createOrUpdateWorkspaceDialogRef",ref:d,onRefresh:V},null,512)])}}}),Ge=ne(Le,[["__scopeId","data-v-8d855397"]]);export{Ge as default};