Files
wecom_it_smart_desk/frontend-h5/dist.old/assets/AutomationProgress-BCHpjPTS.js
T

2 lines
10 KiB
JavaScript
Raw Normal View History

import{a1 as F,aP as Z,ao as C,aO as f,s as $,a6 as P,a3 as d,aq as A,ak as k,a4 as B,aj as v,a8 as p,al as L,an as N,am as I,D as ee,a2 as M,b as te,F as ne,P as ae,ap as oe,af as se,ay as ie,ah as re,ai as le,aQ as S,L as ue,a9 as V,C as ce,aR as H,E as de}from"./index-DgVr7UP6.js";/* empty css */import{T as j,N as ve,S as pe,a as fe}from"./index-a0eWy6gD.js";import{C as me}from"./index-C62GQvT9.js";async function _e(i){return await F.get(`/itportal/automation/sessions/${i}`)}async function ye(i,c){return await F.post(`/itportal/automation/actions/${i}/confirm`,c)}async function we(i,c){return await F.post(`/itportal/automation/sessions/${i}/resolved`,c)}function J(){return localStorage.getItem("h5_token")||""}function ke(i){const c=J(),r=window.location.protocol==="https:"?"wss:":"ws:",n=window.location.host;return`${r}//${n}/ws/automation/${i}?token=${encodeURIComponent(c)}`}const be=Z("automation",()=>{const i=C(null),c=C(!1),r=C(null),n=C(!1),a=C(null),l=C([]),m=C(null),T=f(()=>{var o;return((o=i.value)==null?void 0:o.status)==="resolved"}),x=f(()=>{var o;return((o=i.value)==null?void 0:o.status)==="handoff"});async function u(o){c.value=!0;try{i.value=await _e(o)}finally{c.value=!1}}async function t(o,g){await ye(o,g),m.value=null,a.value&&await u(a.value)}async function s(o,g){await we(o,g),a.value&&await u(a.value)}function b(o){_();const g=ke(o),U=J(),D=new WebSocket(g,[`bearer.${U}`]);r.value=D,a.value=o,D.onopen=()=>{n.value=!0},D.onmessage=E=>{try{const e=JSON.parse(E.data);y(e)}catch(e){console.error("[automation H5 WS] 消息解析失败",e)}},D.onclose=()=>{n.value=!1},D.onerror=()=>{n.value=!1}}function _(){r.value&&(r.value.close(),r.value=null),n.value=!1,a.value=null}function y(o){var g;if(!(o.session_id&&a.value&&o.session_id!==a.value))switch(o.type){case"automation.progress":l.value.push({type:o.type,time:W(),data:o.data}),a.value&&u(a.value);break;case"automation.action_required":m.value=((g=o.data)==null?void 0:g.action)||null,a.value&&u(a.value);break;case"automation.resolved":a.value&&u(a.value),$("问题已解决");break;case"automation.takeover":m.value=null,a.value&&u(a.value);break;case"automation.error":l.value.push({type:o.type,time:W(),data:o.data}),$("自动化处置出现异常");break}}function W(){return new Date().toISOString()}return{currentSession:i,loading:c,wsConnected:n,progressEvents:l,pendingAction:m,isResolved:T,isHandoff:x,fetchSession:u,confirmAction:t,resolveSession:s,connectWs:b,disconnectWs:_}}),ge={key:0,class:"confirm-body"},he={class:"risk-row"},Se={class:"action-title"},Ce={class:"action-desc"},$e={key:0,class:"payload-block"},Ae={class:"payload-pre"},Te={key:1,class:"confirm-body"},xe=P({__name:"ActionConfirmDialog",props:{visible:{type:Boolean},action:{}},emits:["confirm","cancel","update:visible"],setup(i,{emit:c}){const r=i,n=c,a=f({get:()=>r.visible,set:t=>n("update:visible",t)}),l=f(()=>{var t,s;switch((t=r.action)==null?void 0:t.risk_level){case"read":return"只读";case"low":return"低风险";case"write":return"写操作";case"high":return"高危";default:return((s=r.action)==null?void 0:s.risk_level)||"未知"}}),m=f(()=>{var t;switch((t=r.action)==null?void 0:t.risk_level){case"read":return"primary";case"low":return"success";case"write":return"warning";case"high":return"danger";default:return"primary"}}),T=f(()=>{var t,s;try{return JSON.stringify((t=r.action)==null?void 0:t.payload,null,2)}catch{return String((s=r.action)==null?void 0:s.payload)}});function x(){n("confirm",{confirmed:!0})}function u(){n("cancel")}return(t,s)=>{const b=j,_=ee;return d(),A(_,{show:a.value,"onUpdate:show":s[0]||(s[0]=y=>a.value=y),title:"高危操作确认","show-confirm-button":!0,"show-cancel-button":!0,"confirm-button-text":"确认执行","cancel-button-text":"暂不执行","confirm-button-color":"#ee0a24",onConfirm:x,onCancel:u},{default:k(()=>[i.action?(d(),B("div",ge,[v("div",he,[p(b,{type:m.value,mark:""},{default:k(()=>[L(N(l.value),1)]),_:1},8,["type"])]),v("div",Se,N(i.action.title),1),v("div",Ce,N(i.action.description),1),i.action.payload?(d(),B("div"