2 lines
5.3 KiB
Java
2 lines
5.3 KiB
Java
var b=(a,s,p)=>new Promise((y,m)=>{var h=n=>{try{c(p.next(n))}catch(_){m(_)}},i=n=>{try{c(p.throw(n))}catch(_){m(_)}},c=n=>n.done?y(n.value):Promise.resolve(n.value).then(h,i);c((p=p.apply(a,s)).next())});import{B as F}from"./index-BDvqZ5j4.js";import{d as B,s as H,au as A,av as G,aw as Q}from"./index-X7Y8jykP.js";import{a as K}from"./useModal-DaJ3Bflg.js";import{e as W,c as X,r as g,b as Y,u as $,C as u,z as r,f as V,A as f,B as Z,K as x,Q as e,H as q,E as C,G as l,F as S,D as k,y as U,J as M}from"./vue-vendor-DNhG1Cve.js";import{T as aa}from"./index-J2mOtM3w.js";const Oa=a=>B.get({url:"/sys/dataLog/list",params:a}),ea=a=>B.get({url:"/sys/dataLog/queryDataVerList",params:a}),ta=a=>B.get({url:"/sys/dataLog/queryCompareList",params:a}),sa=W({name:"DataLogCompareModal",components:{BasicModal:F},emits:["register","btnOk"],setup(){const{createMessage:a}=H(),s=g([]),p=g(""),y=g(""),m=g(!0),h=g(""),i=g(""),c=g([]),n=Y({dataId1:"",dataId2:""}),_=X(()=>s.value.filter(t=>t.isDiff).length),[o,{setModalProps:N}]=K(t=>b(null,null,function*(){if(m.value=!!(t!=null&&t.isUpdate),$(m)){const d=t.selectedRows;i.value=d[0].dataTable,h.value=d[0].dataId,n.dataId1=d[0].id,n.dataId2=d[1].id,yield E(),yield I()}}));function I(){return b(this,null,function*(){ta($(n)).then(t=>{p.value=t[0].dataVersion,y.value=t[1].dataVersion;const d=JSON.parse(t[0].dataContent),O=JSON.parse(t[1].dataContent),P=new Set([...Object.keys(d),...Object.keys(O)]),L=[];P.forEach(v=>{var w,j;const D=(w=d[v])!=null?w:"",T=(j=O[v])!=null?j:"";L.push({code:v,dataVersion1:D,dataVersion2:T,isDiff:String(D)!==String(T)})}),L.sort((v,D)=>v.isDiff===D.isDiff?0:v.isDiff?-1:1),s.value=L})})}function R(t){if(n.dataId2==t){a.warning("相同版本号不能比较");return}n.dataId1=t,I()}function z(t){if(n.dataId1==t){a.warning("相同版本号不能比较");return}n.dataId2=t,I()}function E(){return b(this,null,function*(){ea({dataTable:i.value,dataId:h.value}).then(t=>{c.value=t.map(d=>({text:d.dataVersion,value:d.id}))})})}function J(t){return t==null||t===""?"--":String(t)}return{dataSource:s,isUpdate:m,dataVersionList:c,dataVersion1Num:p,dataVersion2Num:y,register:o,handleChange1:R,handleChange2:z,params:n,dataTable:i,dataId:h,diffCount:_,formatValue:J}}}),oa={class:"compare-header"},na={class:"compare-header__info"},la={class:"compare-header__id"},ra={class:"compare-header__selector"},da={key:0,class:"compare-stats"},ia={class:"compare-stats__total"},ca={key:1,class:"compare-table"},ua={class:"compare-table__inner"},pa={class:"col-value"},fa={class:"version-tag version-tag--left"},ma={class:"col-value"},_a={class:"version-tag version-tag--right"},ga={class:"col-field"},ha={class:"field-name"},va={class:"cell-text"},Va={class:"col-status"},ya={key:0,class:"diff-icon"},Ca={key:1,class:"same-icon"},Da={class:"cell-text"};function ba(a,s,p,y,m,h){const i=aa,c=Q,n=G,_=x("BasicModal");return r(),u("div",null,[V(_,Z(a.$attrs,{onRegister:a.register,title:"数据版本对比",width:"60%",destroyOnClose:"",showOkBtn:!1}),{default:f(()=>[e("div",oa,[e("div",na,[s[2]||(s[2]=e("span",{class:"compare-header__label"},"数据表:",-1)),V(i,{color:"blue"},{default:f(()=>[C(l(a.dataTable),1)]),_:1}),s[3]||(s[3]=e("span",{class:"compare-header__label",style:{"margin-left":"16px"}},"数据ID:",-1)),e("span",la,l(a.dataId),1)]),e("div",ra,[s[4]||(s[4]=e("span",{class:"compare-header__label"},"版本对比:",-1)),V(n,{placeholder:"选择版本",onChange:a.handleChange1,value:a.params.dataId1,"onUpdate:value":s[0]||(s[0]=o=>a.params.dataId1=o),style:{width:"120px"}},{default:f(()=>[(r(!0),u(S,null,k(a.dataVersionList,o=>(r(),U(c,{key:o.value,value:o.value},{default:f(()=>[C(" V"+l(o.text),1)]),_:2},1032,["value"]))),128))]),_:1},8,["onChange","value"]),s[5]||(s[5]=e("span",{class:"compare-header__vs"},"VS",-1)),V(n,{placeholder:"选择版本",onChange:a.handleChange2,value:a.params.dataId2,"onUpdate:value":s[1]||(s[1]=o=>a.params.dataId2=o),style:{width:"120px"}},{default:f(()=>[(r(!0),u(S,null,k(a.dataVersionList,o=>(r(),U(c,{key:o.value,value:o.value},{default:f(()=>[C(" V"+l(o.text),1)]),_:2},1032,["value"]))),128))]),_:1},8,["onChange","value"])])]),a.dataSource.length>0?(r(),u("div",da,[V(i,{color:"red"},{default:f(()=>[C(l(a.diffCount)+" 处差异",1)]),_:1}),V(i,{color:"green"},{default:f(()=>[C(l(a.dataSource.length-a.diffCount)+" 处相同",1)]),_:1}),e("span",ia,"共 "+l(a.dataSource.length)+" 个字段",1)])):q("",!0),a.isUpdate?(r(),u("div",ca,[e("table",ua,[e("thead",null,[e("tr",null,[s[6]||(s[6]=e("th",{class:"col-field"},"字段名",-1)),e("th",pa,[e("span",fa,"V"+l(a.dataVersion1Num),1)]),s[7]||(s[7]=e("th",{class:"col-status"},null,-1)),e("th",ma,[e("span",_a,"V"+l(a.dataVersion2Num),1)])])]),e("tbody",null,[(r(!0),u(S,null,k(a.dataSource,(o,N)=>(r(),u("tr",{key:N,class:M({"row-diff":o.isDiff,"row-same":!o.isDiff})},[e("td",ga,[e("span",ha,l(o.code),1)]),e("td",{class:M(["col-value",{"cell-diff":o.isDiff}])},[e("span",va,l(a.formatValue(o.dataVersion1)),1)],2),e("td",Va,[o.isDiff?(r(),u("span",ya,"≠")):(r(),u("span",Ca,"="))]),e("td",{class:M(["col-value",{"cell-diff":o.isDiff}])},[e("span",Da,l(a.formatValue(o.dataVersion2)),1)],2)],2))),128))])])])):q("",!0)]),_:1},16,["onRegister"])])}const Ia=A(sa,[["render",ba],["__scopeId","data-v-6625d404"]]),Ta=Object.freeze(Object.defineProperty({__proto__:null,default:Ia},Symbol.toStringTag,{value:"Module"}));export{Ia as D,Ta as a,Oa as g,ea as q};
|