PageSourceSearch

https://bloglab.net/assets/js/CZi8R_y8.js

js bloglab.net collected 2026-10-08 19:59:54 UTC 5,792 bytes, 1 lines download raw bytes

1import{_ as z,d as T,r as c,o as B,a as N,b as d,f as t,h as l,V as Y,X as w,q as L,J as P,u as M,v as H,y as J,i as _,Z as q,n as E,C as f,N as h,Q as O,Y as Q,l as R,m as X,B as k,t as r,a4 as Z,az as G,a9 as K}from"./D30iY_rE.js";const C=p=>(M("data-v-57e1e32b"),p=p(),H(),p),W={class:"audit-log-page"},$={class:"page-header mb-6"},ee={class:"d-flex justify-space-between align-center flex-wrap ga-3"},te=C(()=>d("div",null,[d("h1",{class:"text-h4 font-weight-bold mb-1"},"감사 로그"),d("p",{class:"text-body-2 text-grey-darken-1"},"시스템 활동 기록을 조회합니다")],-1)),ae={class:"d-flex align-center"},le={class:"section-icon purple"},se=C(()=>d("span",null,"활동 기록",-1)),oe={class:"text-body-2"},de={class:"d-flex align-center"},ie={class:"text-caption text-white font-weight-bold"},ne={class:"text-body-2 font-weight-medium"},re={class:"text-body-2"},ue={class:"text-body-2 text-grey-darken-1 text-truncate d-inline-block",style:{"max-width":"300px"}},ce={__name:"AuditLog",setup(p){T.locale("ko");const A=P("showSnackbar"),m=c(!1),b=c([]),g=c(0),v=c(1),x=c(20);let y=null;const s=c({user:"",actionType:null,dateFrom:"",dateTo:""}),S=[{title:"일시",key:"createdAt",sortable:!0,width:"180px"},{title:"사용자",key:"user",sortable:!1,width:"150px"},{title:"액션",key:"action",sortable:!0,width:"130px"},{title:"리소스",key:"resource",sortable:!1,width:"150px"},{title:"상세",key:"details",sortable:!1}],V=[{text:"로그인",value:"login"},{text:"로그아웃",value:"logout"},{text:"작업 생성",value:"job_create"},{text:"작업 삭제",value:"job_delete"},{text:"계정 생성",value:"account_create"},{text:"계정 삭제",value:"account_delete"},{text:"설정 변경",value:"settings_update"},{text:"포인트 충전",value:"point_charge"},{text:"사용자 승인",value:"user_approve"},{text:"사용자 삭제",value:"user_delete"}],U=o=>o?T(o).format("YYYY-MM-DD HH:mm:ss"):"-",j=o=>o?o.charAt(0).toUpperCase():"?",F=o=>({login:"blue",logout:"grey",job_create:"success",job_delete:"error",account_create:"success",account_delete:"error",settings_update:"warning",point_charge:"purple",user_approve:"success",user_delete:"error"})[o]||"grey",I=o=>{const a=V.find(e=>e.value===o);return a?a.text:o||"-"},D=()=>{clearTimeout(y),y=setTimeout(()=>{v.value=1,n()},500)},n=async()=>{var o,a,e;m.value=!0;try{const i={page:v.value,limit:x.value};s.value.user&&(i.userId=s.value.user),s.value.actionType&&(i.action=s.value.actionType),s.value.dateFrom&&(i.dateFrom=s.value.dateFrom),s.value.dateTo&&(i.dateTo=s.value.dateTo);const u=await L.audit.getList(i);b.value=((o=u.data.data)==null?void 0:o.logs)||u.data.data||[],g.value=((e=(a=u.data.data)==null?void 0:a.pagination)==null?void 0:e.total)||0}catch(i){console.error("감사 로그 조회 실패:",i),A("감사 로그 조회에 실패했습니다","error")}finally{m.value=!1}};return B(()=>{n()}),(o,a)=>(J(),N("div",W,[d("div",$,[d("div",ee,[te,t(Y,{variant:"outlined","prepend-icon":"mdi-refresh",onClick:n,loading:m.value},{default:l(()=>[_(" 새로고침 ")]),_:1},8,["loading"])])]),t(w,{class:"filter-card mb-6",elevation:"0"},{default:l(()=>[t(q,{class:"pa-4"},{default:l(()=>[t(E,{align:"center"},{default:l(()=>[t(f,{cols:"12",sm:"6",md:"3"},{default:l(()=>[t(h,{modelValue:s.value.user,"onUpdate:modelValue":[a[0]||(a[0]=e=>s.value.user=e),D],label:"사용자",variant:"outlined",density:"compact","prepend-inner-icon":"mdi-account-search",clearable:"","hide-details":""},null,8,["modelValue"])]),_:1}),t(f,{cols:"12",sm:"6",md:"3"},{default:l(()=>[t(O,{modelValue:s.value.actionType,"onUpdate:modelValue":[a[1]||(a[1]=e=>s.value.actionType=e),n],items:V,"item-title":"text","item-value":"value",label:"액션 유형",variant:"outlined",density:"compact",clearable:"","hide-details":""},null,8,["modelValue"])]),_:1}),t(f,{cols:"12",sm:"6",md:"3"},{default:l(()=>[t(h,{modelValue:s.value.dateFrom,"onUpdate:modelValue":[a[2]||(a[2]=e=>s.value.dateFrom=e),n],label:"시작일",variant:"outlined",density:"compact",type:"date","hide-details":""},null,8,["modelValue"])]),_:1}),t(f,{cols:"12",sm:"6",md:"3"},{default:l(()=>[t(h,{modelValue:s.value.dateTo,"onUpdate:modelValue":[a[3]||(a[3]=e=>s.value.dateTo=e),n],label:"종료일",variant:"outlined",density:"compact",type:"date","hide-details":""},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1}),t(w,{class:"log-card",elevation:"0"},{default:l(()=>[t(Q,{class:"section-header"},{default:l(()=>[d("div",ae,[d("div",le,[t(R,{color:"white",size:"16"},{default:l(()=>[_("mdi-file-document-outline")]),_:1})]),se]),t(X),t(k,{size:"small",color:"primary",variant:"flat"},{default:l(()=>[_(" 총 "+r(g.value)+"건 ",1)]),_:1})]),_:1}),t(Z),t(G,{headers:S,items:b.value,"items-length":g.value,loading:m.value,page:v.value,"items-per-page":x.value,"onUpdate:page":a[4]||(a[4]=e=>{v.value=e,n()}),"onUpdate:itemsPerPage":a[5]||(a[5]=e=>{x.value=e,n()}),class:"audit-table","no-data-text":"활동 기록이 없습니다"},{"item.createdAt":l(({item:e})=>[d("span",oe,r(U(e.createdAt)),1)]),"item.user":l(({item:e})=>{var i;return[d("div",de,[t(K,{size:"28",color:"primary",class:"mr-2"},{default:l(()=>{var u;return[d("span",ie,r(j((u=e.User)==null?void 0:u.username)),1)]}),_:2},1024),d("span",ne,r(((i=e.User)==null?void 0:i.username)||"-"),1)])]}),"item.action":l(({item:e})=>[t(k,{color:F(e.action),size:"small",variant:"flat"},{default:l(()=>[_(r(I(e.action)),1)]),_:2},1032,["color"])]),"item.resource":l(({item:e})=>[d("span",re,r(e.resource||"-"),1)]),"item.details":l(({item:e})=>[d("span",ue,r(e.details?typeof e.details=="object"?JSON.stringify(e.details,null,2):e.details:"-"),1)]),_:1},8,["items","items-length","loading","page","items-per-page"])]),_:1})]))}},me=z(ce,[["__scopeId","data-v-57e1e32b"]]);export{me 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.