PageSourceSearch

https://symiora.ai/assets/index-Ckzeh1gA.js

js symiora.ai collected 2026-10-05 14:44:31 UTC 12,209 bytes, 1 lines download raw bytes

1import{_ as ze,u as Te,e as te,f as q,g as c,h as Q,J as oe,i as Le,c as y,b as w,m as n,t as u,k as _,l as P,q as i,z as Ue,x as m,y as h,C as G,a1 as qe,ao as Be,j as Se,o as s,F as B,A as H,K as Ie,d as v,L as Re,w as ne,S as Ke,a2 as Oe,P as Ee,B as Fe,ap as Me,E as z,aq as je,ar as ie,as as Je,at as Qe,a0 as Ge}from"./index-9GmkN9mf.js";import{c as He}from"./platform-CYPsJr5K.js";import{getCompanyAllList as We}from"./company-CVon11HN.js";import{f as Xe}from"./time-Cs8leLk2.js";const Ye={class:"role-content"},Ze={class:"role-container"},xe={class:"page-header"},el={class:"action-bar"},ll={key:1},al={key:0},tl={key:1},ol={class:"pagination-wrap"},nl={class:"perm-hint",style:{"margin-top":"4px"}},il={class:"perm-hint",style:{"margin-left":"10px"}},rl={class:"dialog-perm-block"},sl={class:"perm-hint"},dl={class:"perm-tree-wrap"},ul={key:1,class:"perm-empty-inline"},cl={__name:"index",emits:["need-login"],setup(ml,{emit:re}){const{t:f}=Te(),se=re,S=te(()=>!!localStorage.getItem("ai-customer-token")),T=te(()=>{var e;return Number((e=q.value)==null?void 0:e.is_super)===1}),W=c([]),L=c([]),de=e=>{if(!e)return f("role.global");const l=L.value.find(o=>Number(o.id)===Number(e));return l?l.name:`CID:${e}`},ue=async()=>{try{const e=await He({type:1}),l=(e==null?void 0:e.list)??[];W.value=(Array.isArray(l)?l:[]).map(o=>({...o,id:Number(o.id)}))}catch{W.value=[]}},ce=async()=>{try{const e=await We();L.value=(e==null?void 0:e.list)??[]}catch{L.value=[]}},I=c(!1),R=c([]),b=Q({page:1,size:10,total:0}),p=Q({cid:null,name:""}),X=c(null),V=c([]),K=c([]),Y=c(0),U=c(!1),$=c(!1),C=c(!1),O=c(""),N=c("add"),E=c(!1),t=Q({id:null,cid:null,name:"",remark:"",is_agent:0,rule_ids:[]}),F=c([]),M=async e=>{var l;try{const o=await Je({cid:e??0});F.value=(o==null?void 0:o.list)??((l=o==null?void 0:o.data)==null?void 0:l.list)??[]}catch{F.value=[]}},Z=()=>{var e;t.id=null,t.cid=T.value?null:Number((e=q.value)==null?void 0:e.cid)||0,t.name="",t.remark="",t.is_agent=0,t.rule_ids=[]},me=()=>{Z(),J(),C.value=!1},pe=e=>Number(e==null?void 0:e.is_super)===1;function j(e,l){for(const o of e||[]){if(o.id===l)return o;const d=j(o.children,l);if(d)return d}return null}function fe(e,l){return(Array.isArray(l)?l:[]).filter(d=>{const r=j(e,d);return r&&(!r.children||r.children.length===0)})}function J(){V.value=[],K.value=[]}function x(){const e=X.value;return!e||!V.value.length?[]:e.getCheckedKeys(!0).filter(o=>{const d=j(V.value,o);return d&&Number(d.menu_type)===3})}const ee=async({pid:e,role_id:l})=>{var o,d;U.value=!0;try{const r=await Qe({pid:e,role_id:l}),D=(r==null?void 0:r.tree)??((o=r==null?void 0:r.data)==null?void 0:o.tree)??[],k=(r==null?void 0:r.checked_ids)??((d=r==null?void 0:r.data)==null?void 0:d.checked_ids)??[];V.value=Array.isArray(D)?D:[],K.value=fe(V.value,k),Y.value+=1,await Ge()}catch(r){J(),console.error(r)}finally{U.value=!1}};oe([()=>$.value,()=>N.value,()=>t.cid,()=>t.id,()=>C.value],async([e,l,o,d,r])=>{if(e){if(l==="add"){await ee({pid:Number(o)||0,role_id:0});return}if(l==="edit"&&r){J();return}l==="edit"&&d!=null&&await ee({pid:o!=null?Number(o):0,role_id:d})}});const A=async()=>{var e,l;if(S.value){I.value=!0;try{const o=await Be({cid:p.cid,name:p.name,page:b.page,size:b.size}),d=(o==null?void 0:o.list)??((e=o==null?void 0:o.data)==null?void 0:e.list)??[];R.value=Array.isArray(d)?d:[],b.total=Number((o==null?void 0:o.total)??((l=o==null?void 0:o.data)==null?void 0:l.total)??0)||0}catch{R.value=[],b.total=0}finally{I.value=!1}}},_e=()=>{b.page=1,A()},ve=()=>{p.cid=null,p.name="",b.page=1,A()},be=()=>{N.value="add",O.value=f("rbac.role.add"),C.value=!1,Z(),T.value&&p.cid!=null&&(t.cid=Number(p.cid)),M(t.cid),$.value=!0},ge=e=>{N.value="edit",O.value=f("role.edit_title"),C.value=pe(e),t.id=e.id,t.cid=e.cid!=null?Number(e.cid):p.cid!=null?Number(p.cid):0,t.name=e.name??"",t.remark=e.remark??"",t.is_agent=Number(e.is_agent)===1?1:0,t.rule_ids=Array.isArray(e.rule_ids)?e.rule_ids.map(Number):[],M(t.cid),$.value=!0};oe(()=>t.cid,e=>{$.value&&M(e)});const ye=async e=>{try{await Fe.confirm(f("role.delete_confirm"),f("guide.tip"),{confirmButtonText:f("common.confirm"),cancelButtonText:f("common.cancel"),type:"warning"}),await Me({id:e.id}),z.success(f("bind_detail.delete_success")),await A()}catch(l){l!=="cancel"&&console.error(l)}},he=async()=>
1{if(S.value){if(!t.name)return z.error(f("role.name_required"));if(t.is_agent===1&&(!t.rule_ids||t.rule_ids.length===0))return z.error(f("role.agent_need_rule"));E.value=!0;try{if(N.value==="add"){const e=x();await je({cid:t.cid??0,name:t.name,remark:t.remark,api_ids:e,is_agent:t.is_agent,rule_ids:t.rule_ids}),z.success(f("faq.add_success"))}else if(C.value)await ie({id:t.id,name:t.name,remark:t.remark}),z.success(f("faq.update_success"));else{const e=x();await ie({id:t.id,name:t.name,remark:t.remark,api_ids:e,is_agent:t.is_agent,rule_ids:t.rule_ids}),z.success(f("faq.update_success"))}$.value=!1,await A()}catch(e){console.error(e)}finally{E.value=!1}}};return Le(async()=>{var e;if(!S.value){se("need-login");return}await Promise.all([ue(),ce()]),T.value||(p.cid=(e=q.value)!=null&&e.cid?Number(q.value.cid):0),await A()}),(e,l)=>{const o=m("el-option"),d=m("el-select"),r=m("el-form-item"),D=m("el-input"),k=m("el-button"),le=m("el-form"),g=m("el-table-column"),ke=m("el-tag"),we=m("el-table"),$e=m("el-pagination"),Ve=m("el-card"),Ce=m("el-switch"),Ne=m("el-alert"),Ae=m("el-tree"),Pe=m("el-dialog"),ae=Se("loading");return s(),y("div",Ye,[w("div",Ze,[w("div",xe,[w("h2",null,u(e.$t("rbac.role.title")),1)]),w("div",el,[n(le,{onSubmit:l[2]||(l[2]=Ue(()=>{},["prevent"])),inline:!0,model:p,class:"query-form"},{default:i(()=>[T.value?(s(),_(r,{key:0,label:e.$t("common.company")},{default:i(()=>[n(d,{modelValue:p.cid,"onUpdate:modelValue":l[0]||(l[0]=a=>p.cid=a),placeholder:e.$t("common.all"),clearable:"",style:{width:"160px"}},{default:i(()=>[(s(!0),y(B,null,H(L.value,a=>(s(),_(o,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"])]),_:1},8,["label"])):P("",!0),n(r,{label:e.$t("rbac.role.name")},{default:i(()=>[n(D,{modelValue:p.name,"onUpdate:modelValue":l[1]||(l[1]=a=>p.name=a),placeholder:e.$t("rbac.admin.username_search"),style:{width:"180px"},clearable:""},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),n(r,null,{default:i(()=>[n(k,{type:"primary",icon:h(Ie),onClick:_e},{default:i(()=>[v(u(e.$t("common.query")),1)]),_:1},8,["icon"]),n(k,{icon:h(Re),onClick:ve},{default:i(()=>[v(u(e.$t("common.reset")),1)]),_:1},8,["icon"])]),_:1})]),_:1},8,["model"]),h(G)("/chat/v1/rbac/role/add")?(s(),_(k,{key:0,type:"primary",icon:h(qe),onClick:be},{default:i(()=>[v(u(e.$t("rbac.role.add")),1)]),_:1},8,["icon"])):P("",!0)]),n(Ve,{class:"table-card",shadow:"never"},{default:i(()=>[ne((s(),_(we,{key:h(Ke),data:R.value,stripe:"",border:"",style:{width:"100%"}},{default:i(()=>[n(g,{prop:"id",label:"ID",width:"70",align:"center"}),n(g,{label:e.$t("common.company"),"min-width":"160","show-overflow-tooltip":""},{default:i(({row:a})=>[v(u(de(a.cid)),1)]),_:1},8,["label"]),n(g,{prop:"name",label:e.$t("rbac.role.name"),"min-width":"140","show-overflow-tooltip":""},null,8,["label"]),n(g,{prop:"remark",label:e.$t("rbac.role.remark"),"min-width":"220","show-overflow-tooltip":""},null,8,["label"]),n(g,{label:e.$t("rbac.admin.is_super"),width:"100",align:"center"},{default:i(({row:a})=>[v(u(a.is_super===1?e.$t("common.yes"):e.$t("common.no_text")),1)]),_:1},8,["label"]),n(g,{label:e.$t("role.is_agent"),width:"100",align:"center"},{default:i(({row:a})=>[a.is_agent===1?(s(),_(ke,{key:0,type:"success",size:"small"},{default:i(()=>[v(u(e.$t("common.yes")),1)]),_:1})):(s(),y("span",ll,u(e.$t("common.no_text")),1))]),_:1},8,["label"]),n(g,{label:e.$t("role.admin_count"),width:"90",align:"center"},{default:i(({row:a})=>[v(u(a.admin_count??0),1)]),_:1},8,["label"]),n(g,{label:e.$t("role.bound_rules"),"min-width":"160","show-overflow-tooltip":""},{default:i(({row:a})=>[a.rule_names&&a.rule_names.length?(s(),y("span",al,u(a.rule_names.join("、")),1)):(s(),y("span",tl,"—"))]),_:1},8,["label"]),n(g,{prop:"operator",label:e.$t("common.operator"),"min-width":"120","show-overflow-tooltip":""},null,8,["label"]),n(g,{label:e.$t("common.updated_at"),"min-width":"160","show-overflow-tooltip":""},{default:i(({row:a})=>[v(u(h(Xe)(a.updated_at)),1)]),_:1},8,["label"]),n(g,{label:e.$t("common.action"),width:"210",fixed:"right",align:"center"},{default:i(({row:a})=>
1[h(G)("/chat/v1/rbac/role/update")?(s(),_(k,{key:0,type:"primary",link:"",icon:h(Oe),onClick:De=>ge(a)},{default:i(()=>[v(u(e.$t("common.edit")),1)]),_:1},8,["icon","onClick"])):P("",!0),h(G)("/chat/v1/rbac/role/del")?(s(),_(k,{key:1,type:"danger",link:"",icon:h(Ee),onClick:De=>ye(a)},{default:i(()=>[v(u(e.$t("common.delete")),1)]),_:1},8,["icon","onClick"])):P("",!0)]),_:1},8,["label"])]),_:1},8,["data"])),[[ae,I.value]]),w("div",ol,[n($e,{"current-page":b.page,"onUpdate:currentPage":l[3]||(l[3]=a=>b.page=a),"page-size":b.size,"onUpdate:pageSize":l[4]||(l[4]=a=>b.size=a),"page-sizes":[10,20,50],total:b.total,layout:"total, sizes, prev, pager, next",onSizeChange:A,onCurrentChange:A},null,8,["current-page","page-size","total"])])]),_:1})]),n(Pe,{modelValue:$.value,"onUpdate:modelValue":l[11]||(l[11]=a=>$.value=a),title:O.value,width:"640px",class:"role-dialog","destroy-on-close":"",onClose:me},{footer:i(()=>[n(k,{onClick:l[10]||(l[10]=a=>$.value=!1)},{default:i(()=>[v(u(e.$t("common.cancel")),1)]),_:1}),n(k,{type:"primary",loading:E.value,onClick:he},{default:i(()=>[v(u(e.$t("common.confirm")),1)]),_:1},8,["loading"])]),default:i(()=>[n(le,{model:t,"label-width":"100px"},{default:i(()=>[N.value==="add"?(s(),_(r,{key:0,label:e.$t("common.company")},{default:i(()=>[n(d,{modelValue:t.cid,"onUpdate:modelValue":l[5]||(l[5]=a=>t.cid=a),placeholder:e.$t("role.cid_placeholder"),clearable:"",filterable:"",disabled:!T.value,style:{width:"100%"}},{default:i(()=>[n(o,{label:e.$t("role.global_role"),value:0},null,8,["label"]),(s(!0),y(B,null,H(L.value,a=>(s(),_(o,{key:a.id,label:a.name,value:a.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","disabled"])]),_:1},8,["label"])):P("",!0),n(r,{label:e.$t("rbac.role.name"),required:""},{default:i(()=>[n(D,{modelValue:t.name,"onUpdate:modelValue":l[6]||(l[6]=a=>t.name=a)},null,8,["modelValue"])]),_:1},8,["label"]),n(r,{label:e.$t("rbac.role.remark")},{default:i(()=>[n(D,{modelValue:t.remark,"onUpdate:modelValue":l[7]||(l[7]=a=>t.remark=a)},null,8,["modelValue"])]),_:1},8,["label"]),N.value==="edit"&&C.value?P("",!0):(s(),y(B,{key:1},[n(r,{label:e.$t("role.rules_label")},{default:i(()=>[n(d,{modelValue:t.rule_ids,"onUpdate:modelValue":l[8]||(l[8]=a=>t.rule_ids=a),multiple:"",filterable:"","collapse-tags":"","collapse-tags-tooltip":"",placeholder:e.$t("role.rules_placeholder"),style:{width:"100%"}},{default:i(()=>[(s(!0),y(B,null,H(F.value,a=>(s(),_(o,{key:a.id,label:a.name,value:Number(a.id)},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder"]),w("div",nl,u(e.$t("role.rules_hint")),1)]),_:1},8,["label"]),n(r,{label:e.$t("role.is_agent")},{default:i(()=>[n(Ce,{modelValue:t.is_agent,"onUpdate:modelValue":l[9]||(l[9]=a=>t.is_agent=a),"active-value":1,"inactive-value":0},null,8,["modelValue"]),w("span",il,u(e.$t("role.is_agent_hint")),1)]),_:1},8,["label"])],64)),N.value==="edit"&&C.value?(s(),_(r,{key:2,label:e.$t("role.perm_label")},{default:i(()=>[n(Ne,{type:"info","show-icon":"",closable:!1,title:e.$t("role.super_has_all_perm")},null,8,["title"])]),_:1},8,["label"])):(s(),_(r,{key:3,label:e.$t("role.perm_label"),class:"dialog-perm-form-item"},{default:i(()=>[ne((s(),y("div",rl,[w("p",sl,u(e.$t("role.perm_hint")),1),w("div",dl,[V.value.length?(s(),_(Ae,{key:Y.value,ref_key:"dialogPermTreeRef",ref:X,data:V.value,"show-checkbox":"","node-key":"id",props:{label:"name",children:"children"},"default-checked-keys":K.value,"default-expand-all":""},null,8,["data","default-checked-keys"])):U.value?P("",!0):(s(),y("div",ul,u(e.$t("role.perm_empty")),1))])])),[[ae,U.value]])]),_:1},8,["label"]))]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}},bl=ze(cl,[["__scopeId","data-v-43222aff"]]);export{bl as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.