bea288e414
== 已部署上线 (9项) == - 代办事项真实数据源集成 (企微审批API 8bug修复链) - H5/坐席端 Logo样式统一+绿色背景 - 视频引导页修复 (localStorage key v2) - 坐席端 v9 Vue版本修复 (ElMessage._context) - 截图按钮 v10 修复 (getDisplayMedia user gesture) - 扫码样式恢复+H5扫码登录跳转修复 - H5截图快捷键提示 == 代码完成待部署 (3项) == - 知识迭代3Bug修复 (#8 POST端点/#7 MERGE幂等/#6 过期检查) - 会议室预定-小鱼易联终端 (40文件, 40/40测试通过) - IT资产升级审批推送 (asset_service.py) == 需求文档 (2项) == - 坐席端AI辅助消息框-PRD (4项新功能确认) - 坐席端布局优化建议 v2.0 (7天计划) == 新增文档 == - 日报-2026-07-11.md - 知识迭代Bug修复报告-20260711.md - 会议室预定-部署指南.md - CHANGELOG.md 更新 == 测试 == - test_todo_integration.py: 40/40 - test_meetingroom.py: 40/40 - test_bugfix_ki_suggestions.py: 21/21
2 lines
4.8 KiB
JavaScript
2 lines
4.8 KiB
JavaScript
import{d as E,o as F,b as g,c as f,f as o,w as n,V as P,n as j,e as d,r as w,v as z,E as K,i,a2 as O,p as $,W as J,T as Q,U as W,g as c,t as p,h as q}from"./index-BCt9h3P8.js";import{Q as G}from"./admin-yH4tDL3a.js";import{_ as H}from"./_plugin-vue_export-helper-DlAUqK2U.js";import"./index-CTvVpU0T.js";const X={class:"audit-logs"},Z={class:"detail-block"},ee={class:"detail-json"},te={key:0,class:"detail-meta"},ae={class:"pagination-bar"},oe=E({__name:"AuditLogs",setup(le){const m=w(!1),v=w([]),l=z({employeeId:"",action:"",dateRange:null}),s=z({page:1,pageSize:50,total:0}),V=["config_change","login","logout","permission_change","role_assign","role_revoke","agent_create","agent_update","agent_delete","integration_update"],S=[{text:"最近24小时",value:()=>{const a=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24),[e,a]}},{text:"最近7天",value:()=>{const a=new Date,e=new Date;return e.setTime(e.getTime()-3600*1e3*24*7),[e,a]}}];function D(){const a={page:s.page,page_size:s.pageSize};return l.employeeId&&(a.employee_id=l.employeeId),l.action&&(a.action=l.action),l.dateRange&&l.dateRange.length===2&&(a.from=`${l.dateRange[0]}T00:00:00`,a.to=`${l.dateRange[1]}T23:59:59`),a}async function u(){m.value=!0;try{const{data:a}=await G(D());a.code===0&&(v.value=a.data.items||[],s.total=a.data.total||0)}catch{K.error("加载安全审计日志失败")}finally{m.value=!1}}function y(){s.page=1,u()}function k(){l.employeeId="",l.action="",l.dateRange=null,s.page=1,u()}function x(){s.page=1,u()}function C(a){if(!a)return"—";const e=new Date(a);return isNaN(e.getTime())?a:e.toLocaleString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})}function T(a){if(a==null)return"—";try{return JSON.stringify(a,null,2)}catch{return String(a)}}return F(()=>u()),(a,e)=>{const I=i("el-input"),_=i("el-form-item"),N=i("el-option"),R=i("el-select"),U=i("el-date-picker"),b=i("el-button"),L=i("el-form"),M=i("el-card"),r=i("el-table-column"),h=i("el-tag"),A=i("el-table"),B=i("el-pagination"),Y=O("loading");return g(),f("div",X,[o(M,{class:"filter-bar",shadow:"never"},{default:n(()=>[o(L,{inline:!0,onSubmit:e[3]||(e[3]=$(()=>{},["prevent"]))},{default:n(()=>[o(_,{label:"操作人"},{default:n(()=>[o(I,{modelValue:l.employeeId,"onUpdate:modelValue":e[0]||(e[0]=t=>l.employeeId=t),placeholder:"employee_id",clearable:"",style:{width:"200px"},onKeyup:J(y,["enter"])},null,8,["modelValue"])]),_:1}),o(_,{label:"操作类型"},{default:n(()=>[o(R,{modelValue:l.action,"onUpdate:modelValue":e[1]||(e[1]=t=>l.action=t),placeholder:"全部",clearable:"",filterable:"","allow-create":"","default-first-option":"",style:{width:"200px"}},{default:n(()=>[(g(),f(Q,null,W(V,t=>o(N,{key:t,label:t,value:t},null,8,["label","value"])),64))]),_:1},8,["modelValue"])]),_:1}),o(_,{label:"时间范围"},{default:n(()=>[o(U,{modelValue:l.dateRange,"onUpdate:modelValue":e[2]||(e[2]=t=>l.dateRange=t),type:"daterange","range-separator":"至","start-placeholder":"开始日期","end-placeholder":"结束日期","value-format":"YYYY-MM-DD",shortcuts:S},null,8,["modelValue"])]),_:1}),o(_,null,{default:n(()=>[o(b,{type:"primary",onClick:y},{default:n(()=>[...e[6]||(e[6]=[c("查询",-1)])]),_:1}),o(b,{onClick:k},{default:n(()=>[...e[7]||(e[7]=[c("重置",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),P((g(),j(A,{data:v.value,stripe:"",style:{width:"100%"}},{default:n(()=>[o(r,{type:"expand"},{default:n(({row:t})=>[d("div",Z,[e[8]||(e[8]=d("div",{class:"detail-title"},"详情 (details)",-1)),d("pre",ee,p(T(t.details)),1),t.resource_id?(g(),f("div",te,[d("span",null,"资源ID:"+p(t.resource_id),1),d("span",null,"UA:"+p(t.user_agent||"—"),1)])):q("",!0)])]),_:1}),o(r,{prop:"created_at",label:"时间",width:"170"},{default:n(({row:t})=>[c(p(C(t.created_at)),1)]),_:1}),o(r,{prop:"employee_id",label:"操作人",width:"130","show-overflow-tooltip":""}),o(r,{prop:"action",label:"操作类型",width:"150"},{default:n(({row:t})=>[o(h,{size:"small",effect:"plain"},{default:n(()=>[c(p(t.action||"—"),1)]),_:2},1024)]),_:1}),o(r,{prop:"resource",label:"资源",width:"150","show-overflow-tooltip":""}),o(r,{prop:"result",label:"结果",width:"90"},{default:n(({row:t})=>[o(h,{size:"small",type:t.result==="success"?"success":"danger"},{default:n(()=>[c(p(t.result||"—"),1)]),_:2},1032,["type"])]),_:1}),o(r,{prop:"ip_address",label:"IP",width:"140","show-overflow-tooltip":""})]),_:1},8,["data"])),[[Y,m.value]]),d("div",ae,[o(B,{"current-page":s.page,"onUpdate:currentPage":e[4]||(e[4]=t=>s.page=t),"page-size":s.pageSize,"onUpdate:pageSize":e[5]||(e[5]=t=>s.pageSize=t),total:s.total,"page-sizes":[20,50,100],layout:"total, sizes, prev, pager, next, jumper",onCurrentChange:u,onSizeChange:x},null,8,["current-page","page-size","total"])])])}}}),de=H(oe,[["__scopeId","data-v-179502e5"]]);export{de as default};
|