mirror of
https://gitee.com/niucloud-team/niucloud-admin.git
synced 2026-01-20 10:18:10 +00:00
2 lines
13 KiB
JavaScript
2 lines
13 KiB
JavaScript
import{d as Ve,f as Ie,r as c,O as Ne,ae as Fe,M as re,h as r,c as i,e as l,w as a,a as s,m as B,i as x,t as p,u,k as n,B as k,F as y,S as W,n as $e,J as j,a7 as H,W as ee,aT as Me,a3 as pe,au as ie,a2 as Le,ax as De,am as Re,an as je,ao as He,ap as Ae,P as Oe,a1 as ze,ah as Ke,E as Pe,aU as qe,R as Je,p as We,g as Ge}from"./index-08dd4327.js";/* empty css *//* empty css */import{T as Qe,_ as Xe}from"./vue-web-terminal-7390c8d8.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{b as Ye}from"./module-1c44d4d9.js";import{c as de,g as Ze,e as el,p as ll,u as al,a as tl,b as ce}from"./upgrade-0833b188.js";/* empty css */import{_ as sl}from"./_plugin-vue_export-helper-c27b6911.js";const U=A=>(We("data-v-1cad7213"),A=A(),Ge(),A),nl={class:"text-lg"},ol={class:"font-bold px-[2px]"},ul=U(()=>s("span",null,"升级到",-1)),rl={class:"font-bold px-[2px]"},pl=U(()=>s("span",null,"版本",-1)),il={class:"font-bold px-[2px]"},dl=U(()=>s("span",null,"当前版本",-1)),cl={class:"font-bold px-[2px]"},vl=U(()=>s("span",null,[x("如需升级到最新版可在"),s("a",{class:"text-primary",href:"https://www.niucloud.com",target:"_blank"},"niucloud-admin官网"),x("购买相关服务后再进行升级")],-1)),_l={key:1},fl={class:"h-[400px]",style:{overflow:"auto"}},gl={key:0,class:"flex flex-col"},ml={key:0,class:"bg-[#fff] my-3"},xl={class:"px-[20px] pt-[10px] text-[14px] el-table"},hl={style:{height:"calc(300px)",overflow:"auto"}},kl={key:0},yl={key:1},bl={key:0},wl={key:1},Cl={class:"h-[370px] mt-[30px]"},Tl={class:"flex flex-col"},Bl={class:"bg-[#fff] my-3"},El={key:0,class:"px-[20px] pt-[10px] text-[14px] el-table"},Sl=U(()=>s("span",null,"功能操作",-1)),Ul=U(()=>s("span",null,"状态",-1)),Vl={key:1,class:"pl-[50px] pt-[50px]"},Il={class:"backup"},Nl={class:"mt-[50px]"},Fl={class:"dialog-footer"},$l=["innerHTML"],Ml={class:"flex justify-end"},Ll=["innerHTML"],Dl={class:"flex justify-end"},Rl=Ve({__name:"index",emits:["complete","cloudbuild"],setup(A,{expose:ve,emit:_e}){const fe=Ie(),b=c(!1),d=c(null),V=c(!0),f=c(null),_=c("upgrade"),T=c(1),I=c(null),w=c(!1),N=c(null),E=c(!1);let G=[],Q=[];const O=c(!1),z=c(30);let F=null;const K=c(!0),ge=c([{name:"备份源码",code:"backupCode"},{name:"备份数据库",code:"backupSql"}]),S=()=>{Ze().then(({data:t})=>{if(t){if(!d.value){d.value=t.upgrade_content;let e=0,g=0;for(let m=0;m<d.value.content.length;m++)d.value.content[m].version_list.length?e++:g++;d.value.content.length==e?V.value=!0:d.value.content.length==g&&(V.value=!1)}if(!b.value){me();return}if(f.value||(N.value.execute("clear"),N.value.execute("开始升级")),f.value=t,t.log.forEach(e=>{G.includes(e)||(N.value.pushMessage({content:`${e}`}),G.push(e))}),t.error&&t.error.forEach(e=>{Q.includes(e)||(N.value.pushMessage({content:e,class:"error"}),Q.push(e))}),t.step=="restoreComplete"){M&&clearInterval(M);return}if(t.step=="upgradeComplete"){_.value="complete",C.value=4,$&&$.close(),_e("complete"),de();return}C.value=2,_.value="upgrade",le()}})};S();const le=()=>{el().then(()=>{S()}).catch(t=>{t.message.indexOf("队列")!=-1?(z.value=30,F=setInterval(()=>{z.value--,z.value==0&&J("retry")},1e3),O.value=!0):ee({message:t.message,type:"error"})})};let $=null;const me=()=>{$=Me.success({title:n("warning"),dangerouslyUseHTMLString:!0,message:pe("div",{},[n("upgrade.upgradingTips"),pe("span",{class:"text-primary cursor-pointer",onClick:xe},[n("upgrade.clickView")])]),duration:0,showClose:!1})},xe=()=>{b.value=!0,S(),T.value=2,C.value=3,_.value="upgrade",$&&$.close()},ae=c("");Ne().then(t=>{ae.value=t.data.version.version});const te=c("");Ye().then(({data:t})=>{te.value=t.last_version});const X=c(!1),P=c(!1),q=c(!1),se=async()=>{var e,g;if(P.value)return;P.value=!0,q.value=!0;const t=((e=d.value)==null?void 0:e.upgrade_apps.join(","))!="niucloud-admin"?(g=d.value)==null?void 0:g.upgrade_apps.join(","):"";await ll(t).then(async({data:m})=>{I.value=m,X.value=m.is_pass,_.value="upgrade",f.value?C.value:C.value=0,E.value=!1,b.value=!0,P.value=!1,q.value=!1}).catch(()=>{P.value=!1,q.value=!1})},he=()=>{var e,g;if(!X.value||w.value)return;w.value=!0;const t=((e=d.value)==null?void 0:e.upgrade_apps.join(","))!="niucloud-admin"?(g=d.value)==null?void 0:g.upgrade_apps.join(","):"";al(t,{is_need_backup:K.value}).then(()=>{S()}).catch(()=>{w.value=!1})},ke=(t="",e=null)=>{if(f.value)ee({message:"已有正在执行中的升级任务",type:"error"}),b.value=!0,T.value=2,C.value=3,_.value="upgrade",e&&e();else{if(t&&ae.value!=te.value){ee({message:"存在新版本框架,请先升级框架",type:"error"}),e&&e();return}if(w.value)return;w.value=!0,tl(t).then(({data:g})=>{w.value=!1,d.value=g;let m=0,L=0;for(let v=0;v<d.value.content.length;v++)d.value.content[v].version_list.length?m++:L++;d.value.content.length==m?V.value=!0:d.value.content.length==L&&(V.value=!1),ie.get("upgradeTipsLock")?se():E.value=!0,e&&e()}).catch(()=>{w.value=!1,e&&e()})}};let M=null;const ne=new Qe,ye=(t,e,g,m,L)=>{if(e=="开始升级"){g(ne);const v=be(["/","——","\\","|"]);M=setInterval(()=>{ne.flush("> "+v.next().value)},150)}},be=t=>{let e=0;return{next(){return e+1==t.length&&(e=0),{value:t[e++]}}}},we=t=>{_.value=="upgrade"&&f.value&&["upgradeComplete","restoreComplete"].includes(f.value.step)===!1?Le.confirm(n("upgrade.showDialogCloseTips"),n("warning"),{confirmButtonText:n("confirm"),cancelButtonText:n("cancel"),type:"warning"}).then(()=>{t()}):t()};Fe(()=>b.value,()=>{b.value||Ce()});const Ce=()=>{_.value="upgrade",w.value=!1,f.value=null,G=[],Q=[],C.value=0,M&&clearInterval(M),F&&clearInterval(F),K.value=!0,T.value=1,de().then(()=>{})},J=t=>{switch(O.value=!1,t){case"local":ce(t).then(()=>{S()});break;case"retry":le(),F&&clearInterval(F);break;case"rollback":ce(t).then(()=>{S()});break}},Te=(t=!1)=>{t&&ie.set({key:"upgradeTipsLock",data:t}),E.value=!1,!t&&(b.value=!0)};c(0);const C=c(0),Be=()=>{const t=fe.resolve({path:"/tools/backup_records"});window.open(t.href,"_blank")};return ve({open:ke,loading:w}),(t,e)=>{const g=De,m=Re,L=je,v=He,D=Ae,Y=re("Select"),R=Oe,oe=re("CloseBold"),ue=ze,Ee=Ke,h=Pe,Se=qe,Z=Je;return r(),i(y,null,[l(Z,{modelValue:b.value,"onUpdate:modelValue":e[6]||(e[6]=o=>b.value=o),title:u(n)("upgrade.title"),width:"850px","close-on-click-modal":!1,"close-on-press-escape":!1,"before-close":we},{footer:a(()=>[s("div",Fl,[T.value==1&&d.value.content.length&&V.value?(r(),B(h,{key:0,onClick:e[1]||(e[1]=o=>T.value=2),type:"primary"},{default:a(()=>[x(p(u(n)("upgrade.upgradeButton")),1)]),_:1})):k("",!0),T.value==2?(r(),i(y,{key:1},[_.value=="upgrade"&&!f.value?(r(),B(h,{key:0,type:"primary",disabled:!X.value,onClick:e[2]||(e[2]=()=>{_.value="backup",C.value=1})},{default:a(()=>[x(p(u(n)("nextStep")),1)]),_:1},8,["disabled"])):k("",!0),_.value=="backup"?(r(),B(h,{key:1,onClick:e[3]||(e[3]=()=>{_.value="upgrade",C.value=1})},{default:a(()=>[x(p(u(n)("prev")),1)]),_:1})):k("",!0),_.value=="backup"?(r(),B(h,{key:2,type:"primary",loading:w.value,onClick:e[4]||(e[4]=()=>{he()})},{default:a(()=>[x(p(u(n)("nextStep")),1)]),_:1},8,["loading"])):k("",!0),_.value=="complete"?(r(),B(h,{key:3,onClick:e[5]||(e[5]=o=>b.value=!1)},{default:a(()=>[x(p(u(n)("complete")),1)]),_:1})):k("",!0)],64)):k("",!0)])]),default:a(()=>[d.value?(r(),i(y,{key:0},[T.value==1?(r(!0),i(y,{key:0},W(d.value.content,(o,Ue)=>(r(),i(y,null,[s("div",nl,[o.upgrade_version?(r(),i(y,{key:0},[s("span",null,"【"+p(o.app.app_name)+"】本次升级将从",1),s("span",ol,p(o.version),1),ul,s("span",rl,p(o.upgrade_version),1),pl],64)):(r(),i(y,{key:1},[d.value.content.length>1?(r(),i(y,{key:0},[s("span",null,"【"+p(o.app.app_name)+"】当前版本",1),s("span",il,p(o.version),1)],64)):(r(),i(y,{key:1},[dl,s("span",cl,p(o.version),1)],64))],64))]),o.upgrade_version!=o.last_version?(r(),i("div",{key:0,class:$e(["mt-[10px]",{"mb-[10px]":Ue+1<d.value.content.length}])},[l(g,{type:"info","show-icon":"",closable:!1},{title:a(()=>[s("span",null,"当前最新版本为"+p(o.last_version)+",您的服务"+p(o.expire_time?`已于${o.expire_time}到期`:"长期有效")+"。",1),vl]),_:2},1024)],2)):k("",!0)],64))),256)):k("",!0),T.value==2?(r(),i("div",_l,[l(L,{active:C.value,"align-center":"",class:"number-of-steps","finish-status":"success","process-status":"process"},{default:a(()=>[l(m,{title:u(n)("testDirectoryPermissions")},null,8,["title"]),l(m,{title:u(n)("backupFiles")},null,8,["title"]),l(m,{title:u(n)("startUpgrade")},null,8,["title"]),l(m,{title:u(n)("upgradeEnd")},null,8,["title"])]),_:1},8,["active"]),s("div",fl,[j(s("div",null,[I.value&&!f.value?(r(),i("div",gl,[l(ue,null,{default:a(()=>[I.value.dir?(r(),i("div",ml,[s("div",xl,[l(D,{class:"py-[10px] items table-head-bg pl-[15px] mb-[10px]"},{default:a(()=>[l(v,{span:12},{default:a(()=>[s("span",null,p(u(n)("upgrade.path")),1)]),_:1}),l(v,{span:6},{default:a(()=>[s("span",null,p(u(n)("upgrade.demand")),1)]),_:1}),l(v,{span:6},{default:a(()=>[s("span",null,p(u(n)("status")),1)]),_:1})]),_:1}),s("div",hl,[(r(!0),i(y,null,W(I.value.dir.is_readable,o=>(r(),B(D,{class:"pb-[10px] items pl-[15px]"},{default:a(()=>[l(v,{span:12},{default:a(()=>[s("span",null,p(o.dir),1)]),_:2},1024),l(v,{span:6},{default:a(()=>[s("span",null,p(u(n)("upgrade.readable")),1)]),_:1}),l(v,{span:6},{default:a(()=>[o.status?(r(),i("span",kl,[l(R,{color:"green"},{default:a(()=>[l(Y)]),_:1})])):(r(),i("span",yl,[l(R,{color:"red"},{default:a(()=>[l(oe)]),_:1})]))]),_:2},1024)]),_:2},1024))),256)),(r(!0),i(y,null,W(I.value.dir.is_write,o=>(r(),B(D,{class:"pb-[10px] items pl-[15px]"},{default:a(()=>[l(v,{span:12},{default:a(()=>[s("span",null,p(o.dir),1)]),_:2},1024),l(v,{span:6},{default:a(()=>[s("span",null,p(u(n)("upgrade.write")),1)]),_:1}),l(v,{span:6},{default:a(()=>[o.status?(r(),i("span",bl,[l(R,{color:"green"},{default:a(()=>[l(Y)]),_:1})])):(r(),i("span",wl,[l(R,{color:"red"},{default:a(()=>[l(oe)]),_:1})]))]),_:2},1024)]),_:2},1024))),256))])])])):k("",!0)]),_:1})])):k("",!0),j(s("div",Cl,[l(u(Xe),{ref_key:"terminalRef",ref:N,context:f.value?f.value.upgrade.app_key:"","init-log":null,"show-header":!1,"show-log-time":!0,onExecCmd:ye},null,8,["context"])],512),[[H,f.value]])],512),[[H,_.value=="upgrade"]]),j(s("div",Tl,[l(ue,null,{default:a(()=>[s("div",Bl,[d.value.last_backup?(r(),i("div",Vl,[l(Ee,{modelValue:K.value,"onUpdate:modelValue":e[0]||(e[0]=o=>K.value=o),label:u(n)("upgrade.isNeedBackup"),"true-value":!0,"false-value":!1,size:"large"},null,8,["modelValue","label"]),s("div",Il,[x(p(u(n)("upgrade.isNeedBackupTips")),1),l(h,{link:"",type:"primary",onClick:Be},{default:a(()=>[x(p(u(n)("upgrade.isNeedBackupBtn")),1)]),_:1})])])):(r(),i("div",El,[l(D,{class:"py-[10px] items table-head-bg pl-[15px] mb-[10px]"},{default:a(()=>[l(v,{span:20},{default:a(()=>[Sl]),_:1}),l(v,{span:4},{default:a(()=>[Ul]),_:1})]),_:1}),(r(!0),i(y,null,W(ge.value,o=>(r(),B(D,{class:"pb-[10px] items pl-[15px]"},{default:a(()=>[l(v,{span:20},{default:a(()=>[s("span",null,p(o.name),1)]),_:2},1024),l(v,{span:4},{default:a(()=>[s("span",null,[l(R,{color:"green"},{default:a(()=>[l(Y)]),_:1})])]),_:1})]),_:2},1024))),256))]))])]),_:1})],512),[[H,_.value=="backup"]]),j(s("div",Nl,[l(Se,{icon:"success",title:u(n)("upgrade.upgradeSuccess")},null,8,["title"]),j(l(g,{title:u(n)("upgrade.upgradeCompleteTips"),type:"error",closable:!1},null,8,["title"]),[[H,f.value&&f.value.executed&&!f.value.executed.includes("cloudBuild")]])],512),[[H,_.value=="complete"]])])])):k("",!0)],64)):k("",!0)]),_:1},8,["modelValue","title"]),l(Z,{modelValue:E.value,"onUpdate:modelValue":e[10]||(e[10]=o=>E.value=o),title:u(n)("warning"),width:"500px",draggable:""},{footer:a(()=>[s("div",Ml,[l(h,{onClick:e[7]||(e[7]=o=>Te(!0)),type:"primary"},{default:a(()=>[x(p(u(n)("upgrade.knownToKnow")),1)]),_:1}),l(h,{onClick:e[8]||(e[8]=o=>se()),type:"primary",plain:"",loading:q.value},{default:a(()=>[x(p(u(n)("upgrade.upgradeButton")),1)]),_:1},8,["loading"]),l(h,{onClick:e[9]||(e[9]=o=>E.value=!1)},{default:a(()=>[x(p(u(n)("cancel")),1)]),_:1})])]),default:a(()=>[s("span",{innerHTML:u(n)("upgrade.upgradeTips")},null,8,$l)]),_:1},8,["modelValue","title"]),l(Z,{modelValue:O.value,"onUpdate:modelValue":e[14]||(e[14]=o=>O.value=o),title:u(n)("warning"),width:"500px",draggable:"","show-close":!1},{footer:a(()=>[s("div",Dl,[l(h,{onClick:e[11]||(e[11]=o=>J("local")),type:"primary"},{default:a(()=>[x(p(u(n)("upgrade.localBuild")),1)]),_:1}),l(h,{onClick:e[12]||(e[12]=o=>J("retry")),type:"primary"},{default:a(()=>[x(p(u(n)("upgrade.cloudBuild"))+"("+p(z.value)+"S)",1)]),_:1}),l(h,{onClick:e[13]||(e[13]=o=>J("rollback")),type:"primary"},{default:a(()=>[x(p(u(n)("upgrade.rollback")),1)]),_:1})])]),default:a(()=>[s("span",{innerHTML:u(n)("upgrade.cloudBuildErrorTips")},null,8,Ll)]),_:1},8,["modelValue","title"])],64)}}});const Zl=sl(Rl,[["__scopeId","data-v-1cad7213"]]);export{Zl as default};
|