File: /www/server/panel/BTPanel/static/js/index556.js
import{_ as P}from"./index124.js?v=1777008528";import{w as G,S as V,f as K,F as Q,a3 as W,p as X,ao as Y,o as Z,_ as ee}from"./utils-lib.js?v=1777008528";import{r as m,o as q,c as te,v as oe,I as se,J as k,z as e,x as r,y as v,e as n,C as i,D as d,A as a,F as U,aT as le,B as y,G as w,O as h,S as ne,L as ae,K as N,R,H as ie,ad as re,ab as de}from"./base-lib.js?v=1777008528";import{B as ue}from"./column.js?v=1777008528";import{getServiceLog as me,delService as ce,handleService as pe,modifyService as ve,addService as fe,getServicesInfo as _e}from"./site.js?v=1777008528";import{u as ge}from"./useStore3.js?v=1777008528";import"./__commonjsHelpers__.js?v=1777008528";import"./index110.js?v=1777008528";const ye=K(),{siteInfo:C}=ge(),T=m([]),f=m(!1),M=m(),z=m(!1),s=q({name:"",command:"",sid:"",level:11,log_type:"append",isEdit:!1}),_=m(!1),E=m(!1),Ce=m([{label:"追加记录",value:"append"},{label:"启动时清空",value:"cover"}]),x=m(!1),u=q({logContent:"",logLoading:!1,title:"",sid:""}),be=q({name:[{required:!0,message:"请输入服务名称",trigger:"blur"}],command:[{required:!0,message:"请输入启动命令",trigger:"blur"}],level:[{required:!0,message:"请输入优先级",trigger:"blur"}]}),ke=m([{content:"协同服务用于管理那些与web服务同时运行的,用于处理一些事务的服务,如:任务队列、定时队列等,例如:celery等。"},{content:"当前工作方式为启动项目时检测这些服务,若未启动则执行启动,若已启动则不进行操作;停止项目时执行所有服务的停止操作"}]),we=l=>{s.log_type=l},xe=()=>{B(),f.value=!0},Ve=l=>{s.name=l.name,s.command=l.command,s.sid=l.sid,s.level=l.level,s.log_type=l.log_type,s.isEdit=!0,f.value=!0},F=async l=>{try{!l&&(u.logLoading=!0);const{data:c}=await me({project_name:C.value.name,sid:u.sid});u.logContent=c.data,u.logLoading=!1,l&&ye.success("刷新成功")}catch(c){}},Se=l=>{u.sid=l.sid,u.title=l.sid==="main"?"项目主服务":l.name,x.value=!0,F(!1)},$e=async l=>{await G({icon:"warning-filled",title:"删除服务【".concat(l.name,"】"),content:"删除服务【".concat(l.name,"】后,将无法管理该服务,是否继续?")}),(await V({loading:"正在删除服务,请稍后...",request:ce({project_name:C.value.name,sid:l.sid}),message:!0})).status&&S()},L=async(l,c)=>{(await V({loading:"正在修改服务状态,请稍后...",request:pe({project_name:C.value.name,sid:c.sid,option:l}),message:!0})).status&&S()},Le=()=>{f.value=!1,B()},Ee=async()=>{await M.value.validate();let l={project_name:C.value.name,service_conf:JSON.stringify({name:s.name,command:s.command,level:s.level,log_type:s.log_type})};s.isEdit&&(l.sid=s.sid);const c=s.isEdit?ve:fe;(await V({loading:z,request:c(l),message:!0})).status&&(f.value=!1,B(),S())},B=()=>{s.name="",s.command="",s.sid="",s.level=11,s.log_type="append",s.isEdit=!1},S=async(l=!1)=>{l&&(E.value=!0),await V({request:_e({project_name:C.value.name}),data:{data:[Array,T]}}),l&&(E.value=!1)},Fe={class:"overflow-auto mt-1rem max-h-[61rem]"},qe={class:"flex flex-col p-[16px]"},Be={class:"service-info"},je={class:"item-info"},De={class:"flex items-center"},Ie={class:"item-info"},Ue={key:0},he={key:1},Ne={key:0,class:"item-info"},Re={class:"!w-[100%]"},Te=["onClick"],Me={class:"flex items-center mt-[16px]"},ze={class:"p-2rem"},Ae={class:"ml-[1rem] text-primary w-[16rem] select-none"},He={class:"py-[2rem] pt-[0]"},Oe={class:"p-2rem flex flex-col"},Je=te({__name:"index",setup(l){return oe(()=>{S(!0)}),(c,t)=>{const p=ie,j=W,$=X,b=re,A=Y,H=de,D=Z,O=P,I=se("bt-loading");return k((r(),v("div",null,[n(p,{type:"primary",onClick:e(xe)},{default:i(()=>[...t[9]||(t[9]=[d("添加服务",-1)])]),_:1},8,["onClick"]),a("div",Fe,[(r(!0),v(U,null,le(e(T),(o,J)=>(r(),v("div",{class:"border rounded-small border-lighter mb-[16px]",key:J},[a("div",qe,[a("div",Be,[a("div",je,[a("div",null,"服务:"+y(o.name),1),a("div",De,[t[10]||(t[10]=d("状态:",-1)),n(e(ue),{modelValue:!!o.pid},null,8,["modelValue"])])]),a("div",Ie,[o.pid?(r(),v("div",Ue,"pid:"+y(o.pid),1)):w("",!0),o.ports.length?(r(),v("div",he,"端口:"+y(o.ports.join(", ")),1)):w("",!0)]),o.sid&&o.sid!=="main"?(r(),v("div",Ne,[a("div",Re,[d(" 启动命令:"+y(o.command)+" ",1),a("i",{class:"svgtofont-el-document-copy cursor-pointer text-default text-base copy ml-[4px]",title:"复制启动命令",onClick:()=>e(Q)({value:o.command})},null,8,Te)])])):w("",!0)]),a("div",Me,[o.pid?(r(),h(p,{key:1,type:"default",onClick:g=>e(L)("stop",o)},{default:i(()=>[...t[12]||(t[12]=[d("停止",-1)])]),_:1},8,["onClick"])):(r(),h(p,{key:0,type:"default",onClick:g=>e(L)("start",o)},{default:i(()=>[...t[11]||(t[11]=[d("启动",-1)])]),_:1},8,["onClick"])),n(p,{type:"default",onClick:g=>e(L)("restart",o)},{default:i(()=>[...t[13]||(t[13]=[d("重启",-1)])]),_:1},8,["onClick"]),o.sid!=="main"?(r(),v(U,{key:2},[n(p,{type:"default",onClick:g=>e(Ve)(o)},{default:i(()=>[...t[14]||(t[14]=[d("编辑",-1)])]),_:1},8,["onClick"]),n(p,{type:"default",onClick:g=>e(Se)(o)},{default:i(()=>[...t[15]||(t[15]=[d("日志",-1)])]),_:1},8,["onClick"]),n(p,{type:"default",onClick:g=>e($e)(o)},{default:i(()=>[...t[16]||(t[16]=[d("删除",-1)])]),_:1},8,["onClick"])],64)):w("",!0)])])]))),128))]),n(j,{options:e(ke)},null,8,["options"]),n(D,{title:"".concat(e(s).isEdit?"编辑":"添加","服务"),modelValue:e(f),"onUpdate:modelValue":t[6]||(t[6]=o=>R(f)?f.value=o:null),area:50,"show-footer":!0,onConfirm:e(Ee),onCancel:e(Le)},{default:i(()=>[a("div",ze,[n(H,{rules:e(be),"label-width":"90px",model:e(s),ref_key:"servicesFormRef",ref:M,disabled:e(z),size:"small",onSubmit:t[5]||(t[5]=ne(()=>{},["prevent"]))},{default:i(()=>[n(b,{label:"名称",prop:"name"},{default:i(()=>[n($,{modelValue:e(s).name,"onUpdate:modelValue":t[0]||(t[0]=o=>e(s).name=o),name:"name",width:"32rem"},null,8,["modelValue"])]),_:1}),n(b,{label:"启动命令",prop:"command"},{default:i(()=>[n($,{modelValue:e(s).command,"onUpdate:modelValue":t[1]||(t[1]=o=>e(s).command=o),name:"command",width:"32rem"},null,8,["modelValue"])]),_:1}),a("div",{class:"more flex items-center cursor-pointer pl-[10rem] my-[2rem] px-[2rem]",onClick:t[2]||(t[2]=o=>_.value=!e(_))},[a("i",{class:ae(e(_)?"svgtofont-el-arrow-down":"svgtofont-el-arrow-right")},null,2),a("div",Ae,y("更多设置,".concat(e(_)?"点击收回":"点击查看")),1)]),k(a("div",He,[n(b,{label:"优先级",prop:"level"},{default:i(()=>[n($,{modelValue:e(s).level,"onUpdate:modelValue":t[3]||(t[3]=o=>e(s).level=o),type:"number",name:"level",width:"32rem"},null,8,["modelValue"])]),_:1}),n(b,{label:"日志管理",prop:"log_type"},{default:i(()=>[n(A,{modelValue:e(s).log_type,"onUpdate:modelValue":t[4]||(t[4]=o=>e(s).log_type=o),options:e(Ce),onChange:e(we),class:"!w-32rem"},null,8,["modelValue","options","onChange"])]),_:1})],512),[[N,e(_)]])]),_:1},8,["rules","model","disabled"]),k(n(j,{class:"pl-4rem",options:[{content:"【优先级】执行项目启动时,会按照优先级从高到低一次启动服务,主服务的优先级为10"}]},null,512),[[N,e(_)]])])]),_:1},8,["title","modelValue","onConfirm","onCancel"]),n(D,{title:"【".concat(e(u).title,"】服务日志"),modelValue:e(x),"onUpdate:modelValue":t[8]||(t[8]=o=>R(x)?x.value=o:null),area:70},{default:i(()=>[k((r(),v("div",Oe,[a("div",null,[n(p,{onClick:t[7]||(t[7]=o=>e(F)(!0)),type:"default",class:"!mb-1rem"},{default:i(()=>[...t[17]||(t[17]=[d("刷新日志",-1)])]),_:1})]),n(O,{content:e(u).logContent,isHtml:!0,class:"h-41rem","full-screen":{title:"全屏查看【".concat(e(u).title,"】服务日志"),onRefresh:()=>e(F)}},null,8,["content","full-screen"])])),[[I,e(u).logLoading]])]),_:1},8,["title","modelValue"])])),[[I,e(E)]])}}}),et=ee(Je,[["__scopeId","data-v-78d0322b"]]);export{et as default};