joy-admin-components 0.2.72 → 0.2.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- (function(m,Z){typeof exports=="object"&&typeof module<"u"?Z(exports,require("element-plus"),require("vue"),require("file-saver"),require("exceljs"),require("dayjs"),require("vue-i18n"),require("lodash"),require("vue-router"),require("vuex"),require("vxe-pc-ui")):typeof define=="function"&&define.amd?define(["exports","element-plus","vue","file-saver","exceljs","dayjs","vue-i18n","lodash","vue-router","vuex","vxe-pc-ui"],Z):(m=typeof globalThis<"u"?globalThis:m||self,Z(m.JoyAdminComponents={},m.ElementPlus,m.Vue,m.fileSaver,m.ExcelJS,m.dayjs,m.VueI18n,m._,m.VueRouter,m.Vuex,m.VxeUI))})(this,function(m,Z,e,Fe,pe,me,ee,le,ve,te,oe){"use strict";const lt=e.defineComponent({name:"LayOutForm",setup(t,{slots:o,attrs:n,emit:r}){const s=e.ref(null),l=()=>o.default?o.default().filter(i=>i.type!==Symbol.for("v-cmt")).map(i=>i.type===Symbol.for("v-fgt")?i.children:i).flat().map(i=>{var c,y,p,b;return e.h(Z.ElCol,{span:((c=i.props)==null?void 0:c.span)||((p=(y=i.props)==null?void 0:y.colProps)==null?void 0:p.span)||24,...(b=i.props)==null?void 0:b.colProps},{default:()=>i})}):null;e.onMounted(()=>{r("ref",s.value)});function a(){return e.h(Z.ElForm,{...n,ref:s},()=>e.h(Z.ElRow,{gutter:n.gutter??20},{default:()=>l()}))}return a}});var De=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Be(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Me={exports:{}};(function(t,o){(function(n,r){t.exports=r()})(De,function(){var n="minute",r=/[+-]\d\d(?::?\d\d)?/g,s=/([+-]|\d\d)/g;return function(l,a,i){var c=a.prototype;i.utc=function(d){var w={date:d,utc:!0,args:arguments};return new a(w)},c.utc=function(d){var w=i(this.toDate(),{locale:this.$L,utc:!0});return d?w.add(this.utcOffset(),n):w},c.local=function(){return i(this.toDate(),{locale:this.$L,utc:!1})};var y=c.parse;c.parse=function(d){d.utc&&(this.$u=!0),this.$utils().u(d.$offset)||(this.$offset=d.$offset),y.call(this,d)};var p=c.init;c.init=function(){if(this.$u){var d=this.$d;this.$y=d.getUTCFullYear(),this.$M=d.getUTCMonth(),this.$D=d.getUTCDate(),this.$W=d.getUTCDay(),this.$H=d.getUTCHours(),this.$m=d.getUTCMinutes(),this.$s=d.getUTCSeconds(),this.$ms=d.getUTCMilliseconds()}else p.call(this)};var b=c.utcOffset;c.utcOffset=function(d,w){var k=this.$utils().u;if(k(d))return this.$u?0:k(this.$offset)?b.call(this):this.$offset;if(typeof d=="string"&&(d=function(B){B===void 0&&(B="");var A=B.match(r);if(!A)return null;var L=(""+A[0]).match(s)||["-",0,0],Y=L[0],V=60*+L[1]+ +L[2];return V===0?0:Y==="+"?V:-V}(d),d===null))return this;var S=Math.abs(d)<=16?60*d:d;if(S===0)return this.utc(w);var _=this.clone();if(w)return _.$offset=S,_.$u=!1,_;var T=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();return(_=this.local().add(S+T,n)).$offset=S,_.$x.$localOffset=T,_};var C=c.format;c.format=function(d){var w=d||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return C.call(this,w)},c.valueOf=function(){var d=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*d},c.isUTC=function(){return!!this.$u},c.toISOString=function(){return this.toDate().toISOString()},c.toString=function(){return this.toDate().toUTCString()};var g=c.toDate;c.toDate=function(d){return d==="s"&&this.$offset?i(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():g.call(this)};var h=c.diff;c.diff=function(d,w,k){if(d&&this.$u===d.$u)return h.call(this,d,w,k);var S=this.local(),_=i(d).local();return h.call(S,_,w,k)}}})})(Me);var at=Me.exports;const rt=Be(at);var ze={exports:{}};(function(t,o){(function(n,r){t.exports=r()})(De,function(){var n={year:0,month:1,day:2,hour:3,minute:4,second:5},r={};return function(s,l,a){var i,c=function(C,g,h){h===void 0&&(h={});var d=new Date(C),w=function(k,S){S===void 0&&(S={});var _=S.timeZoneName||"short",T=k+"|"+_,B=r[T];return B||(B=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:k,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:_}),r[T]=B),B}(g,h);return w.formatToParts(d)},y=function(C,g){for(var h=c(C,g),d=[],w=0;w<h.length;w+=1){var k=h[w],S=k.type,_=k.value,T=n[S];T>=0&&(d[T]=parseInt(_,10))}var B=d[3],A=B===24?0:B,L=d[0]+"-"+d[1]+"-"+d[2]+" "+A+":"+d[4]+":"+d[5]+":000",Y=+C;return(a.utc(L).valueOf()-(Y-=Y%1e3))/6e4},p=l.prototype;p.tz=function(C,g){C===void 0&&(C=i);var h,d=this.utcOffset(),w=this.toDate(),k=w.toLocaleString("en-US",{timeZone:C}),S=Math.round((w-new Date(k))/1e3/60),_=15*-Math.round(w.getTimezoneOffset()/15)-S;if(!Number(_))h=this.utcOffset(0,g);else if(h=a(k,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(_,!0),g){var T=h.utcOffset();h=h.add(d-T,"minute")}return h.$x.$timezone=C,h},p.offsetName=function(C){var g=this.$x.$timezone||a.tz.guess(),h=c(this.valueOf(),g,{timeZoneName:C}).find(function(d){return d.type.toLowerCase()==="timezonename"});return h&&h.value};var b=p.startOf;p.startOf=function(C,g){if(!this.$x||!this.$x.$timezone)return b.call(this,C,g);var h=a(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return b.call(h,C,g).tz(this.$x.$timezone,!0)},a.tz=function(C,g,h){var d=h&&g,w=h||g||i,k=y(+a(),w);if(typeof C!="string")return a(C).tz(w);var S=function(A,L,Y){var V=A-60*L*1e3,x=y(V,Y);if(L===x)return[V,L];var $=y(V-=60*(x-L)*1e3,Y);return x===$?[V,x]:[A-60*Math.min(x,$)*1e3,Math.max(x,$)]}(a.utc(C,d).valueOf(),k,w),_=S[0],T=S[1],B=a(_).utcOffset(T);return B.$x.$timezone=w,B},a.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},a.tz.setDefault=function(C){i=C}}})})(ze);var st=ze.exports;const it=Be(st),ye={"dao-ru":"导入","quan-xuan":"全选","xia-zai-dao-ru-mo-ban":"下载导入模板","xu-hao":"序号","qing-shu-ru":"请输入","qing-xuan-ze":"请选择","kai-shi-shi-jian":"开始时间","jie-shu-shi-jian":"结束时间","shai-xuan":"筛选","chong-zhi":"重置","guan-bi":"关闭","zhan-kai":"展开","qu-xiao":"取消","ti-jiao":"提交","que-ding":"确定","que-ding-guan-bi-ma":"确定关闭吗","xia-zai-dao-ru-mo-ban":"下载导入模板",excel:{fieldsMappingRequired:"请输入列字段映射",invalidInput:"非法输入",invalidOption:"请输入有效选项!",copyFailed:"复制失败",sheetNameTooLong:'Sheet名称 "{0}" 长度超过31个字符,已自动截断为 "{1}"'},validate:{invalidInput:"请输入正确内容"},tools:{keysLengthError:"keys 长度必须大于2 默认前两位为 label value"}},Ce={"dao-ru":"Import","quan-xuan":"Select All","xia-zai-dao-ru-mo-ban":"Download Import Template","xu-hao":"No.","qing-shu-ru":"Please enter","qing-xuan-ze":"Please select","kai-shi-shi-jian":"Start Time","jie-shu-shi-jian":"End Time","shai-xuan":"Filter","chong-zhi":"Reset","guan-bi":"Collapse","zhan-kai":"Expand","qu-xiao":"Cancel","ti-jiao":"Submit","que-ding":"Confirm","que-ding-guan-bi-ma":"Are you sure to close?","xia-zai-dao-ru-mo-ban":"Download Import Template",excel:{fieldsMappingRequired:"Please enter column field mapping",invalidInput:"Invalid input",invalidOption:"Please enter a valid option!",copyFailed:"Copy failed",sheetNameTooLong:'Sheet name "{0}" exceeds 31 characters, automatically truncated to "{1}"'},validate:{invalidInput:"Please enter valid content"},tools:{keysLengthError:"Keys length must be greater than 2, default first two are label and value"}},Ne={zh_cn:ye,en_us:Ce};let ce=null;function Oe(t=null){if(t){const{global:o}=t;return o.messages.value.zh_cn?o.mergeLocaleMessage("zh_cn",ye):o.setLocaleMessage("zh_cn",ye),o.messages.value.en_us?o.mergeLocaleMessage("en_us",Ce):o.setLocaleMessage("en_us",Ce),ce=t,t}return ce||(ce=ee.createI18n({legacy:!1,locale:"zh_cn",fallbackLocale:"zh_cn",messages:Ne})),ce}function be(){return ce||Oe()}function ae(){return be().global.t}me.extend(rt),me.extend(it);async function ct(t,o){const{fields:n,range:r=1}=o;if(!n){const a=ae();throw new Error(a("excel.fieldsMappingRequired"))}let s=new pe.Workbook;await s.xlsx.load(t);const l={};return s.eachSheet(function(a,i){const c=[];a.eachRow(function(y,p){if(p>r){let b={},C=!0;Object.keys(n).forEach(g=>{const h=y.getCell(n[g]).value;b[g]=h,h&&(C=!1)}),C||c.push(b)}}),l[a._name]=c}),s=null,l}const qe={columnWidth:30};async function dt(t,o,n=[],r={}){if(!t||!o)return;const{columnStyle:s}=r,{columnWidth:l}=qe;o.forEach(c=>{c.width=c.width?c.width:l});const{workbook:a,worksheet:i}=ut();i.columns=o,i.addRows(n),s&&await ft(a,i,s);try{const c=await a.xlsx.writeBuffer(),y=new File([c],t,{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});Fe.saveAs(y)}catch(c){console.log(c)}}function ut(){const t=new pe.Workbook;t.creator="distributor System",t.lastModifiedBy="distributor System",t.created=new Date,t.modified=new Date,t.lastPrinted=new Date;const o=t.addWorksheet("Sheet1");return{workbook:t,worksheet:o}}async function ft(t,o,n){const r=Object.keys(n);for(const s of r){const l=n[s],{type:a}=l;switch(a){case"IMG":await mt(t,o,s);break}}}async function mt(t,o,n,r){const s=o.getColumn(n),l=s.values;o.getColumn(n).width=20,o.eachRow((a,i)=>{i>1&&(a.height=40)});for(let a=0,i=l.length;a<i;a++){if(a<2)continue;let c=l[a];c&&(o.getCell(s.letter+a).value="",await ht(t,o,c,{width:100,height:50,col:s._number-1,row:a-1}))}}async function ht(t,o,n,r){const{col:s,row:l,width:a,height:i}=r,{success:c,base64:y}=await gt(n,.3);if(c){const p=t.addImage({base64:y,extension:"jpeg"});o.addImage(p,{tl:{col:s,row:l},ext:{width:a,height:i}})}}function gt(t,o=1){const n=new Image;return n.setAttribute("crossOrigin","anonymous"),n.crossOrigin="anonymous",n.src=t,new Promise((r,s)=>{n.onload=()=>{const l=document.createElement("canvas");l.width=n.width,l.height=n.height,l.getContext("2d").drawImage(n,0,0,l.width,l.height),r({success:!0,base64:l.toDataURL("image/jpeg",o)})},n.onerror=()=>{r({success:!1})}})}const _e="---";async function Pe(t,o){const{fields:n,range:r=1}=o;if(!n){const a=ae();throw new Error(a("excel.fieldsMappingRequired"))}let s=new pe.Workbook;await s.xlsx.load(t);const l={};return s.eachSheet(function(a,i){if(a.state=="visible"){const c=[],y=n[a._name];if(y){let p=Object.values(y).some(C=>C.includes("image")),b={};p&&(a.getImages().forEach(g=>{const{tl:h}=g.range,d=s.model.media.find(w=>w.index===g.imageId);if(d){const w=d.buffer.toString("base64"),k=`data:image/${d.extension};base64,${w}`,S=`${Math.ceil(h.row)}_${Math.ceil(h.col)}`;b[S]?b[S].push(k):b[S]=[k]}}),console.log("withImages-imageMap",b)),a.eachRow(function(C,g){if(g>r){let h={_excelRowNumber:g},d=!0;Object.keys(y).forEach(w=>{var B;let[k,S]=y[w].split(_e);const _=C.getCell(k);let T;if(S=="image"&&p){const A=_._column._number,L=`${g}_${A}`;T=b[L]||""}else _.result!=null?T=_.result:(B=_.value)!=null&&B.richText?T=_.value.richText.reduce((A,L)=>A+L.text,""):_.type==4&&_.value?T=me(_.value).utc().format("YYYY-MM-DD HH:mm:ss"):T=_.value;T&&S=="option"&&(T=T.split(_e)[1]),h[w]=T,T&&(d=!1)}),d||c.push(h)}}),l[a._name]=c}}}),s=null,l}const pt={date:"yyyy-mm-dd",number:"0",string:"@"};async function Ae(t,o){if(!t||o.length==0)return;const n=yt(o);for(const r of n.worksheets){const{columnWidth:s}=qe,l=o[r.name];if(!l)continue;const{tableHeader:a,tableData:i}=l;a.forEach(c=>{const{style:y={},required:p}=c,{font:b={}}=y;c.style={...y,font:{...b,color:{argb:p?"FFFF0000":void 0}}}}),r.columns=a,r.addRows(i),a.forEach(c=>{let{header:y,key:p,width:b,option:C,numFmt:g,locked:h,optionFormater:d}=c;const w=r.getColumn(p);if(w.numFmt=pt[g]||g,w.width=b||s,w.protection={locked:h===!0},C){const k=n.addWorksheet(p);k.state="hidden",d||(d=S=>`${S.label}${_e}${S.value}`),k.getColumn(1).values=C.map(d),Array(100).fill("").forEach((S,_)=>{if(_>0){const T=ae();r.getCell(`${w.letter}${_}`).dataValidation={type:"list",formulae:[`${p}!$A$1:$A$${C.length}`],showErrorMessage:!0,error:T("excel.invalidInput"),errorStyle:"stop",errorMessage:T("excel.invalidOption")}}})}}),a.some(c=>c.locked)&&await r.protect("6737187214",{selectLockedCells:!0,selectUnlockedCells:!0})}try{const r=await n.xlsx.writeBuffer(),s=new File([r],t,{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});Fe.saveAs(s)}catch(r){console.log(r)}}function yt(t){const o=ae(),n=new pe.Workbook;return n.creator="distributor System",n.lastModifiedBy="distributor System",n.created=new Date,n.modified=new Date,n.lastPrinted=new Date,Object.keys(t).sort((s,l)=>{const a=t[s].sort??0,i=t[l].sort??0;return a-i}).forEach(s=>{let l=s,a=!1;/[\\/:*?\[\]]/g.test(s)&&(s=s.replace(/[\\/:*?\[\]]/g,""),a=!0),s.length>31&&(s=s.substring(0,31).trim(),a=!0,console.warn(o("excel.sheetNameTooLong",[l,s]))),a&&(t[s]=t[l],delete t[l]),n.addWorksheet(s)}),n}function Ct(t){if(t<26)return String.fromCharCode(65+t);{const o=String.fromCharCode(65+Math.floor((t-26)/26)),n=String.fromCharCode(65+(t-26)%26);return o+n}}function bt(t){return new Promise(o=>{setTimeout(()=>{o()},t)})}function wt(t){return JSON.parse(JSON.stringify(t))}function xt(t){let o=[],n={},r=(s,l)=>Object.prototype.hasOwnProperty.call(s,l);for(const s of t){n[s.id]={...s,children:r(n,s.id)?n[s.id].children:[]};const l=n[s.id];s.pid==-1?o.push(l):(r(n,s.pid)||(n[s.pid]={children:[]}),n[s.pid].children.push(l))}return o}function Se(t,o=" "){return t?t.split(o).filter(n=>n.trim()):[]}class $e{constructor(o,n=["label","value","labelEn"]){this.list=o.map(r=>({...r,label:r[n[0]],labelEn:r[n[2]]??r[n[0]]??"",value:r[n[1]]})),this.map=new Map(this.list.map(r=>[r[n[1]],r]))}getName(o){if(!this.has(o))return"-";const n=be().global.locale,{label:r,labelEn:s}=this.map.get(o);return(n.value=="zh_cn"?r:s)??r??"-"}getTag(o){if(!this.has(o))return"info";const{tag:n="info"}=this.map.get(o);return n}getItem(o){return this.has(o)?this.map.get(o):null}getColor(o){if(!this.has(o))return null;const{color:n}=this.map.get(o);return n}has(o){return this.map.has(o)}}function kt(t,o=[],n="i18nName"){if(t.length==0)return new $e([]);if(o.length<2){const s=ae();throw new Error(s("tools.keysLengthError"))}let r=t.map(s=>{let l={};return n&&(l.labelEn=s[n]),o.forEach((a,i)=>{i===0?l.label=s[a]:i===1?l.value=s[a]:l[a]=s[a]}),l});return new $e(r)}function _t(t){return t?t.replace(/<[^>]+>/g,""):""}function St(t){return t?(t.includes("\\\\u")&&(t=t.replace(/\\/g,"")),t.replace(/\\u[\dA-F]{4}/gi,o=>String.fromCharCode(parseInt(o.replace(/\\u/g,""),16)))):""}function $t(t,o=10){let n=1048576*o;return!(t.size>n)}function Vt(t){return Array.from(10).fill(0).map((n,r)=>t+"_"+r)}function Et(t){let o={};return t.map((n,r)=>{let{key:s,option:l,type:a,optionFormater:i}=n,c=Ct(r);l&&!i?o[s]=`${c}---option`:a==="image"?o[s]=`${c}---image`:o[s]=c}),o}function Tt(t,o){return o.split(".").reduce((n,r)=>n&&n[r],t)}const mo="",de=(t,o)=>{const n=t.__vccOpts||t;for(const[r,s]of o)n[r]=s;return n},It=["onClick"],je=de({__name:"index",props:e.mergeModels({api:{type:Function},showCheckAll:{type:Boolean,default:!0},maxLimit:{type:Number,default:void 0},minLimit:{type:Number,default:void 0},optionClick:{type:Function,default:()=>{}},data:{type:Array},labelValue:{type:Object,default:()=>({label:"label",labelEn:"labelEn",value:"value"})},changeLocal:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["success","change","changeAll"],["update:modelValue"]),setup(t,{emit:o}){const n=t,r=e.useAttrs(),{t:s,locale:l}=ee.useI18n(),a=e.useModel(t,"modelValue"),i=e.computed(()=>r["value-key"]!=null),c=e.ref(""),y=e.computed(()=>{if(r.remote!==void 0)return n.data;const x=Se(c.value),{data:$,labelValue:v}=n,H=$||C.value;if(x.length==0)return H;const{label:E,labelEn:ue}=v;let M=l.value=="en_us"?ue||"i18nName":E;return x.length==1?H.filter(ne=>ne[M].toLowerCase().includes(x[0].toLowerCase())):H.filter(ne=>{let fe=!1;return fe=x.some(ke=>ne[M].toLowerCase()==ke.toLowerCase()),fe})}),p=e.computed({get(){return r.multiple==null||a.value==null?!1:a.value.length==y.value.length},set(x){return x}}),b=o,C=e.ref([]),g=async()=>{const{data:x}=await n.api();C.value=[...x],b("success",C)};n.api&&g();function h(x){b("change",x),d.value&&e.nextTick(()=>{n.optionClick&&n.optionClick(d.value),d.value=null})}const d=e.ref(null);function w(x){d.value=x}const k=n.labelValue.label.split("-"),S=x=>{if(k.length==1){if(n.changeLocal)return s(x[n.labelValue.label]);let $=l.value=="en_us"?x[n.labelValue.labelEn||"i18nName"]:x[n.labelValue.label];return $=$||x[n.labelValue.label],$+""}else{let $=[];return k.forEach(v=>{$.push(x[v])}),$.join("-")}};function _(x){let $=n.data?n.data:C.value;a.value=x?$.map(v=>i.value?v:v[n.labelValue.value]):[],e.nextTick(()=>{b("change",a.value),b("changeAll",a.value,$)})}function T(x){b("change",i.value?x:x[n.labelValue.value]),e.nextTick(()=>{n.optionClick&&n.optionClick(x)})}function B(x){const $=i.value?x:x[n.labelValue.value],v=i.value?a.value.some(H=>H[n.labelValue.value]===x[n.labelValue.value]):a.value.includes($);return!!(n.maxLimit>0&&a.value.length>=n.maxLimit&&!v||n.minLimit>0&&a.value.length===n.minLimit&&v)}function A(x){return x.map($=>({...$,label:S($),value:i.value?$:$[n.labelValue.value]}))}const L=e.ref([]),Y=n.data?n.data:C.value;L.value=A(Y),e.watch(()=>n.data?n.data:C.value,x=>{var v;const $=A(x);if($.length!==L.value.length)L.value=$;else{let H=!1;for(let E=0;E<$.length;E++)if($[E].value!==((v=L.value[E])==null?void 0:v.value)){H=!0;break}H&&(L.value=$)}},{deep:!0});const V=e.computed(()=>r.multiple!==void 0&&(n.maxLimit>0||n.minLimit>0)?L.value.map(x=>({...x,disabled:B(x)})):L.value);return(x,$)=>{const v=e.resolveComponent("el-checkbox"),H=e.resolveComponent("el-select-v2"),E=e.resolveComponent("el-option"),ue=e.resolveComponent("el-select");return e.unref(r).v2!=null?(e.openBlock(),e.createBlock(H,e.mergeProps({key:0,options:V.value,modelValue:a.value,"onUpdate:modelValue":$[1]||($[1]=M=>a.value=M)},e.unref(r),{filterable:"","collapse-tags":"","collapse-tags-tooltip":"",clearable:"",onChange:h,onClear:h}),e.createSlots({default:e.withCtx(({item:M})=>[e.createElementVNode("div",{onClick:re=>w(M)},e.toDisplayString(M.label),9,It)]),_:2},[e.unref(r).multiple!=null?{name:"header",fn:e.withCtx(()=>[e.renderSlot(x.$slots,"header",{},()=>[e.createVNode(v,{class:"mgl20",modelValue:p.value,"onUpdate:modelValue":$[0]||($[0]=M=>p.value=M),onChange:_},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.$t("quan-xuan")),1)]),_:1},8,["modelValue"])],!0)]),key:"0"}:void 0]),1040,["options","modelValue"])):(e.openBlock(),e.createBlock(ue,e.mergeProps({key:1,modelValue:a.value,"onUpdate:modelValue":$[3]||($[3]=M=>a.value=M),filterable:"","collapse-tags":"","collapse-tags-tooltip":"","filter-method":e.unref(r).remote!=null?void 0:M=>c.value=M,clearable:""},e.unref(r),{onClear:t.optionClick}),{default:e.withCtx(()=>[e.unref(r).multiple!=null&&t.showCheckAll&&t.maxLimit==null?e.renderSlot(x.$slots,"header",{key:0},()=>[e.createVNode(v,{class:"mgl20",modelValue:p.value,"onUpdate:modelValue":$[2]||($[2]=M=>p.value=M),onChange:_},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.$t("quan-xuan")),1)]),_:1},8,["modelValue"])],!0):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(M,re)=>(e.openBlock(),e.createBlock(E,{key:re,label:S(M),disabled:e.unref(r).multiple!=null&&(t.maxLimit>0||t.minLimit>0)?B(M):!1,onClick:e.withModifiers(ne=>T(M),["stop"]),value:i.value?M:M[t.labelValue.value]},null,8,["label","disabled","onClick","value"]))),128))]),_:3},16,["modelValue","filter-method","onClear"]))}}},[["__scopeId","data-v-078a95a6"]]),go="",Lt=e.defineComponent({props:{name:{tyepe:String,required:!0}}});function Ft(t,o,n,r,s,l){const a=e.resolveComponent("el-icon");return e.openBlock(),e.createBlock(a,{class:"cmp-icon"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.name)))]),_:1})}const Ve=de(Lt,[["render",Ft],["__scopeId","data-v-733f9daa"]]),po="",vt={class:"confirm-button-wrapper"},Dt=de({__name:"index",emits:["ok","no"],setup(t,{emit:o}){const n=o,r=le.debounce(()=>{n("ok")},500);function s(){n("no")}return(l,a)=>{const i=e.resolveComponent("el-popconfirm");return e.openBlock(),e.createElementBlock("span",vt,[e.createVNode(i,e.mergeProps(l.$attrs,{onConfirm:e.unref(r),onCancel:s}),{reference:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},void 0,!0)]),_:3},16,["onConfirm"])])}}},[["__scopeId","data-v-24cb35fd"]]),Co="",Bt={class:"ImportButton"},Mt=["accept"],zt=de({__name:"index",props:{accept:{type:String,default:".xlsx,.xls"},fields:{type:Object,default:()=>({})},fileChange:{type:Function,required:!0}},emits:["fileChange"],setup(t,{emit:o}){const n=t,r=e.ref(null),s=e.ref(!1);async function l(a){s.value=!0;let i=a.target.files[0];const c=await Pe(i,n.fields).catch(()=>{s.value=!1}).finally(()=>{r.value.value=null});await n.fileChange(c).finally(()=>{s.value=!1})}return(a,i)=>{const c=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("div",Bt,[e.createVNode(c,e.mergeProps({type:"primary",loading:s.value,class:"mgr10",onClick:i[0]||(i[0]=y=>r.value.click())},a.$attrs),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(a.$t("dao-ru")),1)],!0)]),_:3},16,["loading"]),e.createElementVNode("input",{onChange:l,ref_key:"input",ref:r,accept:t.accept,style:{position:"absolute",width:"0px",height:"0px",opacity:"0"},type:"file"},null,40,Mt)])}}},[["__scopeId","data-v-ea0a4c60"]]);function Ee(t){let o={};return t.forEach(n=>{const{key:r,type:s,option:l={},value:a,dateType:i="date"}=n;if(r)if(s=="input"&&(l!=null&&l.multiple))o[r]=Se(a);else if(s=="date")if(i.includes("range")){const[c,y]=r;let[p,b]=a||[];p&&i=="daterange"&&(p=me(p).format("YYYY-MM-DD 00:00:00"),b=me(b).format("YYYY-MM-DD 23:59:59")),o[c]=p,o[y]=b}else o[r]=a;else o[r]=a}),o}const wo="",Nt={key:0},Ot={class:"btns"},qt={class:"left"},Pt={class:"right"},Re=de({__name:"index",props:{form:{type:Object,required:!0}},emits:["confirm","reset","visibleChange"],setup(t,{expose:o,emit:n}){const r=t,s=n,l=e.ref(!0),a=e.ref(null),{t:i}=ee.useI18n(),c={datetimerange:"YYYY-MM-DD HH:mm:ss",daterange:"YYYY-MM-DD",month:"YYYY-MM"},y=e.computed(()=>l.value?i("guan-bi"):i("zhan-kai"));function p(){s("confirm")}function b(k){k.option.onClear&&k.option.onClear(),s("confirm")}function C(){s("reset")}function g(){s("confirm")}function h(){return Ee(r.form.items)}const d=le.cloneDeep(r.form.items);function w(){r.form.items.forEach(k=>{const S=d.find(_=>_.key==k.key);S&&(k.value=S.value)})}return o({getPrm:h,reset:w}),(k,S)=>{const _=e.resolveComponent("el-input"),T=e.resolveComponent("el-date-picker"),B=e.resolveComponent("el-form-item"),A=e.resolveComponent("el-form"),L=e.resolveComponent("el-link"),Y=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("div",{class:"searchBar-container mgt10 mgb10",onKeydown:e.withKeys(p,["enter"])},[e.createElementVNode("div",{class:"searchBar",style:e.normalizeStyle({height:l.value?"auto":"32px"})},[e.createVNode(A,{inline:"",model:t.form.data},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.form.items.filter(V=>!V.hidden),V=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:V.key},[V.type=="br"?(e.openBlock(),e.createElementBlock("br",Nt)):(e.openBlock(),e.createBlock(B,{key:1,label:V.name},{default:e.withCtx(()=>{var x,$;return[V.type==="input"?(e.openBlock(),e.createBlock(_,{key:0,modelValue:V.value,"onUpdate:modelValue":v=>V.value=v,class:e.normalizeClass(((x=V.option)==null?void 0:x.class)||"w150"),placeholder:k.$t("qing-shu-ru"),clearable:""},null,8,["modelValue","onUpdate:modelValue","class","placeholder"])):V.type==="custom"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(V.render),{key:1})):e.createCommentVNode("",!0),V.type==="select"?(e.openBlock(),e.createBlock(je,e.mergeProps({key:2,class:(($=V.option)==null?void 0:$.class)||"w150",modelValue:V.value,"onUpdate:modelValue":v=>V.value=v},{ref_for:!0},V.option,{onChange:p,onClear:v=>b(V),placeholder:k.$t("qing-xuan-ze")}),null,16,["class","modelValue","onUpdate:modelValue","onClear","placeholder"])):e.createCommentVNode("",!0),V.type==="date"?(e.openBlock(),e.createBlock(T,e.mergeProps({key:3,class:{datetimerange:"w300",daterange:"w200"}[V.dateType]||"w100",modelValue:V.value,"onUpdate:modelValue":v=>V.value=v,"value-format":c[V.dateType]||"YYYY-MM-DD",type:V.dateType||"date",onFocus:v=>a.value=V,onChange:v=>g(),placeholder:k.$t("qing-xuan-ze"),"start-placeholder":k.$t("kai-shi-shi-jian"),"end-placeholder":k.$t("jie-shu-shi-jian")},{ref_for:!0},V.option),null,16,["class","modelValue","onUpdate:modelValue","value-format","type","onFocus","onChange","placeholder","start-placeholder","end-placeholder"])):e.createCommentVNode("",!0)]}),_:2},1032,["label"]))],64))),128))]),_:1},8,["model"])],4),e.createElementVNode("div",Ot,[e.createElementVNode("div",qt,[e.renderSlot(k.$slots,"table-header-left",{},void 0,!0)]),e.createElementVNode("div",Pt,[e.createVNode(L,{underline:"never",class:"mgr10",onClick:S[0]||(S[0]=()=>{s("visibleChange",!l.value),l.value=!l.value})},{default:e.withCtx(()=>[e.createVNode(Ve,{name:l.value?"ArrowUp":"ArrowDown"},null,8,["name"]),e.createTextVNode(" "+e.toDisplayString(y.value),1)]),_:1}),e.createVNode(Y,{type:"primary",onClick:p},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.$t("shai-xuan")),1)]),_:1}),e.createVNode(Y,{type:"primary",onClick:C},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.$t("chong-zhi")),1)]),_:1}),e.renderSlot(k.$slots,"btn",{},void 0,!0)])])],32)}}},[["__scopeId","data-v-db6f71dd"]]),Ue={pageNoKey:"pageNo",pageSizeKey:"pageSize",totalKey:"total",defaultPageSize:10,pageSizes:[10,50,100,500],responseDataKeys:{rows:["rows","records","list"],total:["totalRows","total"]},showSearch:!1,showPage:!1,showShadow:!1,showCheckBox:!1,enableCellCopy:!0};let he={...Ue};function At(t){he={...he,...t,responseDataKeys:{...he.responseDataKeys,...t.responseDataKeys||{}}}}function Ye(){return he}function jt(){he={...Ue}}const ko="",Rt={class:"center"},Ut=de({__name:"index",props:{id:{type:String,required:!1},loading:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0},searchForm:{type:Object,default:()=>({items:[],selections:[]})},api:{type:Function},data:{type:Array},tableConfig:{type:Object,default:()=>({})}},setup(t,{expose:o}){const{t:n,locale:r}=ee.useI18n(),s=ve.useRoute(),l=Ye(),a=t,i=e.ref(!1),c=e.ref([]);a.searchForm.showSearch===void 0&&(a.searchForm.showSearch=l.showSearch),a.searchForm.showPage===void 0&&(a.searchForm.showPage=l.showPage),a.searchForm.showShadow===void 0&&(a.searchForm.showShadow=l.showShadow),a.searchForm.showCheckBox===void 0&&(a.searchForm.showCheckBox=l.showCheckBox),a.searchForm.enableCellCopy===void 0&&(a.searchForm.enableCellCopy=l.enableCellCopy),a.searchForm.selections||(a.searchForm.selections=[]);const y=e.computed(()=>{const f=s.path.replace(/\//g,"-").replace(/^-/,"")||"default-table";return a.id?`listPageId-${f}-${a.id}`:`listPageId-${f}`}),p=le.cloneDeep(a.searchForm.items),b=a.searchForm.pageNoKey||l.pageNoKey,C=a.searchForm.pageSizeKey||l.pageSizeKey,g=e.reactive({[b]:1,[C]:a.searchForm.defaultPageSize||l.defaultPageSize,total:0}),h=e.ref(null),d=e.ref(null),w=e.ref(450),k=le.debounce(()=>{e.nextTick(()=>{if(!d.value)return;const u=d.value.getBoundingClientRect(),I=window.innerHeight,D=u.top,q=100,U=I-D-q,z=200;w.value=Math.max(U,z)})},100),S=()=>{k()},_=()=>{if(!a.searchForm.enableCellCopy&&!l.enableCellCopy)return!1;const f=h.value;if(!f||!f.$el)return!1;const u=f.$el;return u.classList.add("cell-copy-enabled"),u.setAttribute("tabindex","-1"),u.removeEventListener("mousedown",M),u.removeEventListener("mousemove",re),u.removeEventListener("mouseup",ne),u.removeEventListener("keydown",Ie),u.addEventListener("mousedown",M),u.addEventListener("mousemove",re),u.addEventListener("mouseup",ne),u.addEventListener("keydown",Ie),!0};e.onMounted(()=>{k(),window.addEventListener("resize",S),(a.searchForm.enableCellCopy||l.enableCellCopy)&&(document.addEventListener("mouseup",et),document.addEventListener("mousedown",tt),setTimeout(()=>{_()},500))}),e.onUpdated(()=>{(a.searchForm.enableCellCopy||l.enableCellCopy)&&setTimeout(()=>{_()},500)}),e.onUnmounted(()=>{if(window.removeEventListener("resize",S),a.searchForm.enableCellCopy||l.enableCellCopy){document.removeEventListener("mouseup",et),document.removeEventListener("mousedown",tt);const f=h.value;if(f&&f.$el){const u=f.$el;u.removeEventListener("mousedown",M),u.removeEventListener("mousemove",re),u.removeEventListener("mouseup",ne),u.removeEventListener("keydown",Ie)}}});const T=e.computed(()=>H.value.height||w.value);let B;async function A(f){const{dataFormat:u}=a.tableConfig;f[b]!=1&&(f.nextSearchAfter=B),i.value=!0;const{code:I,data:D={}}=await a.api(f).finally(()=>{i.value=!1,a.searchForm.selections=[]});if(I==200){let q=[];for(const z of l.responseDataKeys.rows)if(D[z]){q=D[z];break}let U=0;for(const z of l.responseDataKeys.total)if(D[z]!==void 0){U=D[z];break}c.value=u?u(q):q,g.total=U,B=D.nextSearchAfter,(a.searchForm.enableCellCopy||l.enableCellCopy)&&e.nextTick(()=>{setTimeout(()=>{_()},100)})}}function L(f={}){const{searchData:u=()=>({})}=a.tableConfig,I=u();A({...g,...Ee(a.searchForm.items),...f,...I})}function Y(){const{reset:f}=a.tableConfig;f&&f(),a.searchForm.items.forEach(u=>{const I=p.find(D=>le.isArray(u.key)&&le.isArray(D.key)?u.key.join(",")==D.key.join(","):D.key==u.key);I&&(u.value=I.value)}),L()}a.api&&a.immediate&&L();function V(){return{...g,...Ee(a.searchForm.items)}}const x=()=>{const f=h.value;f&&f.clearSort()},$=e.reactive({storage:!0}),v=e.reactive({drag:!0,resizable:!0,maxFixedSize:0}),H=e.computed(()=>{const{customConfig:f,columnConfig:u,...I}=a.tableConfig;return{headerAlign:"left",align:"center",customConfig:{...$,...f},columnConfig:{...v,...u},"virtual-x-config":{enabled:!1,scrollToLeftOnChange:!1},"virtual-y-config":{enabled:!0,gt:100},...I}}),E=e.reactive({isSelecting:!1,startCell:null,endCell:null,selectedCells:[]}),ue=f=>{const u=f.closest(".vxe-body--column");if(!u||u.classList.contains("col--checkbox")||u.classList.contains("col--seq"))return null;const I=u.closest(".vxe-body--row");if(!I)return null;const D=h.value;if(!D)return null;let q=-1;const U=I.getAttribute("data-rowid");if(U!=null)q=parseInt(U,10);else{const N=I.parentElement;q=Array.from(N.querySelectorAll(".vxe-body--row")).indexOf(I)}if(q<0)return null;let z=-1;const Q=u.getAttribute("data-colid");if(Q&&(z=D.getColumns().findIndex(F=>F.id===Q)),z<0){const F=Array.from(I.querySelectorAll(".vxe-body--column")).indexOf(u),j=!!u.closest(".vxe-table--fixed-left-wrapper"),K=!!u.closest(".vxe-table--fixed-right-wrapper"),P=D.getColumns();if(j){const W=P.filter(R=>R.fixed==="left");F<W.length&&(z=P.indexOf(W[F]))}else if(K){const W=P.filter(R=>R.fixed==="right");F<W.length&&(z=P.indexOf(W[F]))}else{const W=a.searchForm.showCheckBox?1:0;z=P.filter(G=>G.fixed==="left").length+F-W}}return z<0?null:{rowIndex:q,colIndex:z,cell:u}},M=f=>{const u=ue(f.target);if(!u){fe();return}E.isSelecting=!0,E.startCell={rowIndex:u.rowIndex,colIndex:u.colIndex},E.endCell={...E.startCell},ke(),Qe()},re=f=>{if(!E.isSelecting)return;const u=ue(f.target);u&&(E.endCell={rowIndex:u.rowIndex,colIndex:u.colIndex},ke(),Qe())},ne=()=>{E.isSelecting=!1},fe=()=>{E.selectedCells=[],E.startCell=null,E.endCell=null;const f=h.value;if(!f)return;f.$el.querySelectorAll(".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left").forEach(I=>{I.classList.remove("cell-selected","cell-border-top","cell-border-right","cell-border-bottom","cell-border-left")})},ke=()=>{if(!E.startCell||!E.endCell){E.selectedCells=[];return}const f=E.startCell.rowIndex,u=E.endCell.rowIndex,I=E.startCell.colIndex,D=E.endCell.colIndex,q=Math.min(f,u),U=Math.max(f,u),z=Math.min(I,D),Q=Math.max(I,D);E.selectedCells=[];for(let N=q;N<=U;N++)for(let F=z;F<=Q;F++)E.selectedCells.push({rowIndex:N,colIndex:F})},Qe=()=>{e.nextTick(()=>{const f=h.value;if(!f)return;const u=f.$el;if(u.querySelectorAll(".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left").forEach(j=>{j.classList.remove("cell-selected","cell-border-top","cell-border-right","cell-border-bottom","cell-border-left")}),E.selectedCells.length===0)return;const I=f.getColumns(),D=E.selectedCells.map(j=>j.rowIndex),q=E.selectedCells.map(j=>j.colIndex),U=Math.min(...D),z=Math.max(...D),Q=Math.min(...q),N=Math.max(...q),F=[u.querySelector(".vxe-table--body-wrapper tbody"),u.querySelector(".vxe-table--fixed-left-wrapper tbody"),u.querySelector(".vxe-table--fixed-right-wrapper tbody")].filter(Boolean);E.selectedCells.forEach(({rowIndex:j,colIndex:K})=>{const P=I[K];if(!P)return;const W=P.fixed==="left",R=P.fixed==="right";for(const G of F){const ge=G.querySelectorAll(".vxe-body--row")[j];if(!ge)continue;const se=Array.from(ge.querySelectorAll(".vxe-body--column"));let O=null;if(W&&G.closest(".vxe-table--fixed-left-wrapper")){const J=I.filter(X=>X.fixed==="left").indexOf(P);O=se[J]}else if(R&&G.closest(".vxe-table--fixed-right-wrapper")){const J=I.filter(X=>X.fixed==="right").indexOf(P);O=se[J]}else if(!W&&!R&&G.closest(".vxe-table--body-wrapper")){const ie=a.searchForm.showCheckBox?1:0,J=I.filter(Le=>Le.fixed==="left").length,X=K-J;O=se[X+ie]}if(O&&!O.classList.contains("col--checkbox")&&!O.classList.contains("col--seq")){O.classList.add("cell-selected"),j===U&&O.classList.add("cell-border-top"),j===z&&O.classList.add("cell-border-bottom"),K===Q&&O.classList.add("cell-border-left"),K===N&&O.classList.add("cell-border-right");break}}})})},io=async()=>{if(E.selectedCells.length===0)return;const f=h.value;if(!f)return;const u=f.$el,I=f.getColumns(),D=[...new Set(E.selectedCells.map(N=>N.rowIndex))].sort((N,F)=>N-F),q=[...new Set(E.selectedCells.map(N=>N.colIndex))].sort((N,F)=>N-F),U=[u.querySelector(".vxe-table--body-wrapper tbody"),u.querySelector(".vxe-table--fixed-left-wrapper tbody"),u.querySelector(".vxe-table--fixed-right-wrapper tbody")].filter(Boolean),z=[];D.forEach(N=>{const F=[];q.forEach(j=>{const K=I[j];if(!K){F.push("");return}const P=K.fixed==="left",W=K.fixed==="right";let R="";for(const G of U){const ge=G.querySelectorAll(".vxe-body--row")[N];if(!ge)continue;const se=Array.from(ge.querySelectorAll(".vxe-body--column"));let O=null;if(P&&G.closest(".vxe-table--fixed-left-wrapper")){const J=I.filter(X=>X.fixed==="left").indexOf(K);O=se[J]}else if(W&&G.closest(".vxe-table--fixed-right-wrapper")){const J=I.filter(X=>X.fixed==="right").indexOf(K);O=se[J]}else if(!P&&!W&&G.closest(".vxe-table--body-wrapper")){const ie=a.searchForm.showCheckBox?1:0,J=I.filter(Le=>Le.fixed==="left").length,X=j-J;O=se[X+ie]}if(O&&!O.classList.contains("col--checkbox")&&!O.classList.contains("col--seq")){R=O.innerText||O.textContent||"",R=R.trim(),R=R.replace(/\n/g," ").replace(/\s+/g," ");break}}F.push(R)}),z.push(F.join(" "))});const Q=z.join(`
2
- `);try{await navigator.clipboard.writeText(Q)}catch(N){console.error("复制失败:",N)}},Ie=f=>{!a.searchForm.enableCellCopy&&!l.enableCellCopy||((f.ctrlKey||f.metaKey)&&f.key==="c"?E.selectedCells.length>0&&(f.preventDefault(),f.stopPropagation(),io()):f.key==="Escape"&&fe())},et=()=>{E.isSelecting=!1},tt=f=>{const u=h.value;if(!u||!u.$el)return;u.$el.contains(f.target)||fe()},co=f=>{g[b]=f,L()},uo=f=>{g[C]=f,g[b]=1,L()};function ot(){const f=h.value.getCheckboxRecords();a.searchForm.selections=f}const nt=f=>{const u=h.value;if(u){u.toggleCheckboxRow(f);const I=h.value.getCheckboxRecords();a.searchForm.selections=I}};return o({tableRef:h,getList:L,getPrm:V,clearSort:x,calculateTableHeight:k}),(f,u)=>{var N;const I=e.resolveComponent("el-button"),D=e.resolveComponent("el-checkbox"),q=e.resolveComponent("el-text"),U=e.resolveComponent("vxe-column"),z=e.resolveComponent("VxeTable"),Q=e.resolveComponent("el-pagination");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({box:t.searchForm.showShadow})},[t.searchForm.showSearch?(e.openBlock(),e.createBlock(Re,{key:0,form:t.searchForm,onReset:Y,onConfirm:u[1]||(u[1]=F=>L()),onVisibleChange:e.unref(k)},{btn:e.withCtx(()=>[u[3]||(u[3]=e.createElementVNode("span",{class:"mgr10"},null,-1)),e.renderSlot(f.$slots,"search-bar-btn",{},void 0,!0),e.createVNode(I,{class:"mgl10",round:"",onClick:u[0]||(u[0]=F=>h.value.openCustom())},{default:e.withCtx(()=>[e.createVNode(Ve,{name:"Tools"})]),_:1})]),_:3},8,["form","onVisibleChange"])):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"table-header-left",{},void 0,!0),e.createElementVNode("div",{ref_key:"tableContentRef",ref:d},[e.createVNode(z,e.mergeProps({id:y.value,ref_key:"tableRef",ref:h,loading:t.loading||i.value,data:t.api?c.value:t.data,border:""},H.value,{height:T.value,onCheckboxChange:ot,onCheckboxAll:ot,onSortChange:(N=H.value["sort-config"])==null?void 0:N.sortChange}),{default:e.withCtx(()=>[t.searchForm.showCheckBox==null||t.searchForm.showCheckBox?(e.openBlock(),e.createBlock(U,{key:0,type:"checkbox",width:e.unref(r)=="zh_cn"?80:150,title:f.$t("xu-hao"),fixed:"left"},{checkbox:e.withCtx(({rowIndex:F,row:j,checked:K,disabled:P,indeterminate:W})=>[e.createElementVNode("div",Rt,[K?(e.openBlock(),e.createBlock(D,{key:0,checked:!0,disabled:P,size:"default",onClick:e.withModifiers(R=>!P&&nt(j),["stop"])},null,8,["disabled","onClick"])):(e.openBlock(),e.createBlock(D,{key:1,disabled:P,checked:!1,size:"default",onClick:e.withModifiers(R=>!P&&nt(j),["stop"])},null,8,["disabled","onClick"])),e.createVNode(q,{type:"info",class:"mgl5"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(F+1),1)]),_:2},1024)])]),_:1},8,["width","title"])):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"default",{},void 0,!0)]),_:3},16,["id","loading","data","height","onSortChange"])],512),t.searchForm.showPage?(e.openBlock(),e.createBlock(Q,{key:1,"current-page":g[e.unref(b)],"onUpdate:currentPage":u[2]||(u[2]=F=>g[e.unref(b)]=F),class:"myPagination mgt10",background:"",layout:"total, sizes, prev, pager, next",total:g.total,"page-size":g[e.unref(C)],"page-sizes":t.searchForm.pageSizes||e.unref(l).pageSizes,onCurrentChange:co,onSizeChange:uo},null,8,["current-page","total","page-size","page-sizes"])):e.createCommentVNode("",!0)],2)}}},[["__scopeId","data-v-c022c16d"]]),Yt={__name:"index",props:{sheetsConfig:{type:Object,required:!0},fileName:{type:String,required:!0}},setup(t){const o=t;function n(){Ae(o.fileName,o.sheetsConfig)}return(r,s)=>{const l=e.resolveComponent("el-link");return e.openBlock(),e.createBlock(l,e.mergeProps({type:"primary",underline:"never"},r.$attrs,{onClick:n}),{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(r.$t("xia-zai-dao-ru-mo-ban")),1)])]),_:3},16)}}},Ht={mounted(t,o){o.value&&He(t)},updated(t,o){o.value?He(t):Ke(t)},beforeUnmount(t){Ke(t)}};async function He(t){await C();const o=t.querySelector(".el-dialog");if(!o)return;const n=t.querySelector(".el-dialog__header"),r=t.querySelector(".el-overlay");r.style.cssText+="overflow: hidden;",n.style.cursor="move";let s=!1,l={window:{width:0,height:0},dialog:{x:0,y:0,width:0,height:0,marginTop:""},mouse:{x:0,y:0},drag:{x:0,y:0}};n.addEventListener("mousedown",c),document.addEventListener("mousemove",y),document.addEventListener("mouseup",p),window.addEventListener("resize",b);function a(){l.mouse.x-l.drag.x>=l.dialog.x&&(l.drag.x=l.mouse.x-l.dialog.x),l.drag.x-l.mouse.x>=l.window.width-(l.dialog.x+l.dialog.width)&&(l.drag.x=l.mouse.x+l.window.width-l.dialog.x-l.dialog.width),l.mouse.y-l.drag.y>=l.dialog.y&&(l.drag.y=l.mouse.y-l.dialog.y),l.drag.y-l.mouse.y>=l.window.height-(l.dialog.y+l.dialog.height)&&(l.drag.y=l.mouse.y+l.window.height-l.dialog.y-l.dialog.height),i()}function i(){let g=l.drag.y-l.mouse.y+l.dialog.y,h=l.drag.x-l.mouse.x+l.dialog.x;o.style.cssText+=`position: absolute; top: calc(${g}px - ${l.dialog.marginTop}); left: ${h}px;`}function c(g){g.button===0&&(l.window={width:document.body.clientWidth,height:document.body.clientHeight},l.dialog=o.getBoundingClientRect(),l.dialog.marginTop=window.getComputedStyle(o).marginTop,l.mouse={x:g.clientX,y:g.clientY},s=!0)}function y(g){s&&(l.drag={x:g.clientX,y:g.clientY},r.style.userSelect="none",a())}function p(g){r.style.userSelect="auto",s=!1}function b(g){}function C(){return new Promise((g,h)=>{setTimeout(()=>{g()},500)})}t.__mouseDown__=c,t.__mouseUp__=p,t.__mouseMove__=y,t.__sizeChange__=b}function Ke(t){document.removeEventListener("mousedown",t.__mouseDown__),document.removeEventListener("mousemove",t.__mouseMove__),document.removeEventListener("mouseup",t.__mouseUp__),window.removeEventListener("resize",t.__sizeChange__)}const So="",Kt={key:0,class:"drawer-btn"},Wt={key:1},Zt={__name:"index",props:{layer:{type:Object,default:()=>({show:!1,type:"layer",title:"",showButton:!1}),required:!0},loading:{type:Boolean,default:!1}},emits:["confirm"],setup(t,{emit:o}){const n=t,r=o,{t:s}=ee.useI18n(),l=le.debounce(()=>{r("confirm")},300);async function a(){n.layer.type=="drawer"?n.layer.onClose?n.layer.onClose():n.layer.closeConfirm?await Z.ElMessageBox.confirm(s("que-ding-guan-bi-ma"),{confirmButtonText:s("que-ding"),cancelButtonText:s("qu-xiao"),type:"warning"}).catch(()=>{})=="confirm"&&(n.layer.show=!1):n.layer.show=!1:n.layer.show=!1}return(i,c)=>{const y=e.resolveComponent("el-button"),p=e.resolveComponent("el-drawer"),b=e.resolveComponent("el-dialog");return t.layer.type?(e.openBlock(),e.createBlock(p,{key:0,modelValue:t.layer.show,"onUpdate:modelValue":c[0]||(c[0]=C=>t.layer.show=C),size:t.layer.width||"100%",title:t.layer.title,direction:"rtl","append-to-body":"","before-close":a,class:"drawer-content"},{default:e.withCtx(()=>[e.renderSlot(i.$slots,"default"),c[2]||(c[2]=e.createElementVNode("p",{class:"mgt50"},null,-1)),t.layer.showButton?(e.openBlock(),e.createElementBlock("div",Kt,[e.renderSlot(i.$slots,"btn",{},()=>[e.createVNode(y,{onClick:a},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.$t("qu-xiao")),1)]),_:1}),e.createVNode(y,{type:"primary",loading:t.loading,onClick:e.unref(l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.$t("ti-jiao")),1)]),_:1},8,["loading","onClick"])])])):e.createCommentVNode("",!0)]),_:3},8,["modelValue","size","title"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",Wt,[e.createVNode(b,{"close-on-click-modal":!1,modelValue:t.layer.show,"onUpdate:modelValue":c[1]||(c[1]=C=>t.layer.show=C),title:t.layer.title,width:t.layer.width||500,center:""},e.createSlots({default:e.withCtx(()=>[e.renderSlot(i.$slots,"default")]),_:2},[t.layer.showButton?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(i.$slots,"btn",{},()=>[e.createVNode(y,{onClick:a},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.$t("qu-xiao")),1)]),_:1}),e.createVNode(y,{type:"primary",onClick:e.unref(l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.$t("ti-jiao")),1)]),_:1},8,["onClick"])])]),key:"0"}:void 0]),1032,["modelValue","title","width"])])),[[e.unref(Ht),t.layer.show]])}}};function Gt(t,o={}){const n=ae(),r={inForm:!0,required:!0,...o},s={phone:/^1(3[0-9]|4[01456879]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/,password:/(?=.*\d)(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{8,12}/,email:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/}[t],{inForm:l,value:a,required:i,msg:c=n("validate.invalidInput")}=r;return l?function(y,p,b){if(i){s.test(p)?b():b(new Error(c));return}p&&!s.test(p)?b(new Error(c)):b()}:s.test(a)}class Jt{constructor(o={}){this.config={clientCode:o.clientCode||"one-portal",casServerUrl:`https://one-portal${o.isTest?"-test":""}.joy-group.com/api`,casPortalUrl:`https://one-portal${o.isTest?"-test":""}.joy-group.com`,serviceUrl:o.serviceUrl||window.location.origin+"/cas/callback",tokenKey:o.tokenKey||"one_portal_token",userKey:o.userKey||"one_portal_user",debug:o.debug||!1,autoLogin:o.autoLogin!==!1,loginCallback:o.loginCallback||null,logoutCallback:o.logoutCallback||null,errorCallback:o.errorCallback||null},this.token=null,this.user=null,this.init()}init(){this.log("OnePortal CAS SDK 初始化中..."),this.loadFromStorage();const n=new URLSearchParams(window.location.search).get("ticket");this.isLoggedIn()&&this.config.loginCallback?this.config.loginCallback(this.user,this.token):n?(this.log("检测到ST票据:",n),this.validateTicket(n)):this.config.autoLogin&&!this.isLoggedIn()&&(this.log("用户未登录,准备跳转到CAS登录页面"),this.login())}loadFromStorage(){try{this.token=localStorage.getItem(this.config.tokenKey);const o=localStorage.getItem(this.config.userKey);o&&(this.user=JSON.parse(o)),this.log("从本地存储加载数据:",{token:!!this.token,user:!!this.user})}catch(o){this.log("加载本地存储数据失败:",o)}}saveToStorage(){try{this.token&&localStorage.setItem(this.config.tokenKey,this.token),this.user&&localStorage.setItem(this.config.userKey,JSON.stringify(this.user)),this.log("数据已保存到本地存储")}catch(o){this.log("保存到本地存储失败:",o)}}clearStorage(){try{localStorage.removeItem(this.config.tokenKey),localStorage.removeItem(this.config.userKey),this.log("本地存储已清除")}catch(o){this.log("清除本地存储失败:",o)}}isLoggedIn(){return!!(this.token&&this.user)}getUser(){return this.user}getToken(){return this.token}login(){const o=`${this.config.casPortalUrl}?appCode=${this.config.clientCode}&redirectUrl=${encodeURIComponent(this.config.serviceUrl)}`;this.log("跳转到CAS登录页面:",o),window.location.href=o}async validateTicket(o){try{this.log("验证ST票据:",o);const n=await fetch(`${this.config.casServerUrl}/auth/validateST?ticket=${o}`,{method:"GET",headers:{"Content-Type":"application/json"}});if(!n.ok)throw new Error(`HTTP ${n.status}: ${n.statusText}`);const r=await n.json();if(r.success&&r.data)return this.token=r.data.token,this.user=r.data.user,this.saveToStorage(),this.clearTicketFromUrl(),this.log("ST票据验证成功,用户登录成功:",this.user),this.config.loginCallback&&this.config.loginCallback(this.user,this.token),!0;throw new Error(r.message||"ST票据验证失败")}catch(n){return this.log("ST票据验证失败:",n),this.handleError(n),!1}}clearTicketFromUrl(){const o=new URL(window.location);o.searchParams.delete("ticket"),window.history.replaceState({},document.title,o.toString())}async logout(o=!0){try{if(this.log("用户登出"),this.token)try{await fetch(`${this.config.casServerUrl}/auth/logout`,{method:"POST",headers:{AppId:this.config.clientCode,Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"}})}catch(n){this.log("调用服务端登出接口失败:",n)}this.token=null,this.user=null,this.clearStorage(),this.config.logoutCallback&&this.config.logoutCallback(),o&&this.login()}catch(n){this.log("登出失败:",n),this.handleError(n)}}async request(o,n={}){const r={headers:{"Content-Type":"application/json",...n.headers},...n};r.headers.appId=this.config.clientCode,this.token&&(r.headers.Authorization=`Bearer ${this.token}`);try{const s=await fetch(o,r);return s.status===401?(this.log("Token已过期,需要重新登录"),this.logout(),null):s}catch(s){throw this.log("请求失败:",s),s}}async fetchUserInfo(){try{const o=await this.request(`${this.config.casServerUrl}/auth/user`);if(o&&o.ok){const n=await o.json();if(n.success&&n.data)return this.user=n.data,this.saveToStorage(),this.user}return null}catch(o){return this.log("获取用户信息失败:",o),null}}async refreshToken(){this.log("Token刷新功能暂未实现")}handleError(o){this.log("发生错误:",o),this.config.errorCallback&&this.config.errorCallback(o)}log(...o){this.config.debug&&console.log("[OnePortal CAS SDK]",...o)}checkLoginStatus(){return!this.isLoggedIn()&&this.config.autoLogin?(this.login(),!1):this.isLoggedIn()}setConfig(o,n){this.config[o]=n}getConfig(o){return this.config[o]}}function we(t,o=2,n=".",r=","){(t==null||t==="")&&(t=0);const s=Number(t);isNaN(s)?t=0:t=s,o=Math.max(0,Math.floor(o));const a=t.toFixed(o).split(".");let i=a[0];const c=a[1],y=i.startsWith("-");return y&&(i=i.slice(1)),i=i.replace(/\B(?=(\d{3})+(?!\d))/g,r),y&&(i="-"+i),o>0?i+n+c:i}function We(t,o=2){return we(t,o)}function Ze(t,o=2){(t==null||t==="")&&(t=0);const n=Number(t);isNaN(n)?t=0:t=n;const r=t*100;return we(r,o)+"%"}function Xt(t,o={}){const r=Object.assign({manual:!1,log:!1,params:null,format:null},o),{manual:s,log:l,params:a={},cb:i,format:c}=r,y=e.ref([]),p=e.ref(!1),b=C=>{const g=C||a;p.value=!0,t(g).then(h=>{const{code:d,data:w,msg:k}=h;if(i){const{records:S,rows:_}=w||{},T=S||_?S||_:w;y.value=Te(T,c),i(h)}if(w){if(w.records!=null||w.rows!=null){const{records:S,rows:_,total:T=0}=w||{};g&&g.total!=null&&(a.total=parseInt(T)),y.value=Te(S||_||[],c)}else y.value=Te(w,c);l&&console.log("useRequest-res",y.value)}}).catch(h=>{i&&(console.log("useRequestErr",h),i({code:500}))}).finally(()=>{p.value=!1})};return s||b(),[p,y,b]}function Qt(t){const o=e.ref(t),n=e.ref(""),r=e.ref("");return e.watch(o,s=>{const l=s||["",""];n.value=l[0],r.value=l[1]}),[o,n,r]}function eo(t){return Object.prototype.toString.call(t).slice(8,-1).toLowerCase()}function Te(t,o){if(!o)return t;if(t instanceof Array)return t.map(r=>{let s={};return o.forEach(l=>s[l]=r[l]),s});let n={};return o.forEach(r=>n[r]=t[r]),n}function to(t,o=[]){const{locale:n}=ee.useI18n(),r=e.ref(t());return e.watch([n,...o],()=>{r.value=t()},{immediate:!0}),r}function oo(t,o="zh_cn",n="en_us"){if(!t)return"-";const r={en_us:n,zh_cn:o},l=be().global.locale.value;return t[r[l]]||t[o]||"-"}function no(t,o){let n=te.mapState;return typeof t=="string"&&t.length>0&&(n=te.createNamespacedHelpers(t).mapState),Ge(o,n)}function lo(t,o){let n=te.mapGetters;return typeof t=="string"&&t.length>0&&(n=te.createNamespacedHelpers(t).mapGetters),Ge(o,n)}function ao(t,o){let n=te.mapActions;return typeof t=="string"&&t.length>0&&(n=te.createNamespacedHelpers(t).mapActions),ro(o,n)}function Ge(t,o){const n=te.useStore(),r=o(t),s={};return Object.keys(r).forEach(l=>{const a=r[l].bind({$store:n});s[l]=e.computed(a)}),s}function ro(t,o){const n=te.useStore(),r=o(t),s={};return Object.keys(r).forEach(l=>{s[l]=r[l].bind({$store:n})}),s}function xe(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!e.isVNode(t)}function Je(){oe.VxeUI.formats.add("formatNumber",{cellFormatMethod({cellValue:t},o=2){return we(t,o)}}),oe.VxeUI.formats.add("formatMoney",{cellFormatMethod({cellValue:t},o=2){return We(t,o)}}),oe.VxeUI.formats.add("formatPercent",{cellFormatMethod({cellValue:t},o=2){return Ze(t,o)}})}function Xe(){oe.VxeUI.renderer.add("Enum",{renderTableDefault(t,o){let n;if([null,void 0].includes(o.row[o.column.field]))return"-";const r=o.row[o.column.field];if(t.type=="tag"){let s;return e.createVNode(e.resolveComponent("el-text"),{type:t.enum.getTag(r)},xe(s=t.enum.getName(r))?s:{default:()=>[s]})}return e.createVNode(e.resolveComponent("el-text"),null,xe(n=t.enum.getName(r))?n:{default:()=>[n]})}}),oe.VxeUI.renderer.add("InputNumber",{renderTableDefault(t,o){return e.createVNode(Z.ElInputNumber,e.mergeProps({modelValue:o.row[o.column.field],"onUpdate:modelValue":n=>o.row[o.column.field]=n},t.props,{"step-strictly":!0,"value-on-clear":0}),null)}}),oe.VxeUI.renderer.add("TrueFalse",{renderTableDefault(t,o){const{locale:n}=ee.useI18n();let r=n.value=="zh_cn";return e.createVNode(Z.ElText,{type:o.row[o.column.field]?"success":"danger"},{default:()=>[o.row[o.column.field]?r?"是":"YES":r?"否":"NO"]})}}),oe.VxeUI.renderer.add("I18n",{renderTableDefault(t,o){const{locale:n}=ee.useI18n();let r=n.value=="zh_cn"?o.column.field:t.fieldEn;return o.row[r]||o.row[o.column.field]}}),oe.VxeUI.renderer.add("Link",{renderTableDefault(t,o){let n=o.column.field;const r=ve.useRouter(),{multiple:s,to:l,openType:a="system"}=t,i=o.row[n];function c(y,p){a=="blank"?window.open(y):r.push({path:y,query:{[n]:p}})}if(s){const y=(i==null?void 0:i.split(","))||[];return y.map((p,b)=>e.createVNode("span",null,[e.createVNode(Z.ElLink,{underline:"never",type:"primary",onclick:()=>c(a=="stystem"?l:p,p)},xe(p)?p:{default:()=>[p]}),b<y.length-1?",":""]))}return e.createVNode(Z.ElLink,{underline:"never",type:"primary",onclick:()=>c(a=="stystem"?l:i,i)},xe(i)?i:{default:()=>[i]})}})}function so(){Je(),Xe()}m.CmpDictionary=je,m.CmpIcon=Ve,m.ConfrimButton=Dt,m.DownExcelTemp=Yt,m.ImportButton=zt,m.LayOutForm=lt,m.Layer=Zt,m.ListPage=Ut,m.OnePortalCasSDK=Jt,m.SearchBar=Re,m.StatusMap=$e,m._toRaw=wt,m._typeOf=eo,m.arrToStatusMap=kt,m.arrayToTree=xt,m.checkFileSize=$t,m.creatValidator=Gt,m.createImportFields=Et,m.createListPageId=Vt,m.en_us=Ce,m.exportExcel=dt,m.exportExcelMuilti=Ae,m.formatMoney=We,m.formatNumber=we,m.formatPercent=Ze,m.getI18n=be,m.getI18nT=ae,m.getListPageConfig=Ye,m.getLocaleValue=oo,m.getValueBykey=Tt,m.importExcel=ct,m.importExcelMuilti=Pe,m.messages=Ne,m.registerVxeFormatters=Je,m.registerVxePlugins=so,m.registerVxeRenderers=Xe,m.resetListPageConfig=jt,m.setListPageConfig=At,m.setupI18n=Oe,m.sleep=bt,m.stringToArray=Se,m.stripHtmlTags=_t,m.unicode2Str=St,m.useActions=ao,m.useDatePicker=Qt,m.useGetters=lo,m.useI18nReState=to,m.useRequest=Xt,m.useState=no,m.zh_cn=ye,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})});
1
+ (function(m,Z){typeof exports=="object"&&typeof module<"u"?Z(exports,require("element-plus"),require("vue"),require("file-saver"),require("exceljs"),require("dayjs"),require("vue-i18n"),require("lodash"),require("vue-router"),require("vuex"),require("vxe-pc-ui")):typeof define=="function"&&define.amd?define(["exports","element-plus","vue","file-saver","exceljs","dayjs","vue-i18n","lodash","vue-router","vuex","vxe-pc-ui"],Z):(m=typeof globalThis<"u"?globalThis:m||self,Z(m.JoyAdminComponents={},m.ElementPlus,m.Vue,m.fileSaver,m.ExcelJS,m.dayjs,m.VueI18n,m._,m.VueRouter,m.Vuex,m.VxeUI))})(this,function(m,Z,e,ve,ye,me,te,ae,De,oe,ne){"use strict";const lt=e.defineComponent({name:"LayOutForm",setup(t,{slots:o,attrs:n,emit:r}){const i=e.ref(null),l=()=>o.default?o.default().filter(s=>s.type!==Symbol.for("v-cmt")).map(s=>s.type===Symbol.for("v-fgt")?s.children:s).flat().map(s=>{var c,y,p,C;return e.h(Z.ElCol,{span:((c=s.props)==null?void 0:c.span)||((p=(y=s.props)==null?void 0:y.colProps)==null?void 0:p.span)||24,...(C=s.props)==null?void 0:C.colProps},{default:()=>s})}):null;e.onMounted(()=>{r("ref",i.value)});function a(){return e.h(Z.ElForm,{...n,ref:i},()=>e.h(Z.ElRow,{gutter:n.gutter??20},{default:()=>l()}))}return a}});var Be=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Me(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var ze={exports:{}};(function(t,o){(function(n,r){t.exports=r()})(Be,function(){var n="minute",r=/[+-]\d\d(?::?\d\d)?/g,i=/([+-]|\d\d)/g;return function(l,a,s){var c=a.prototype;s.utc=function(d){var w={date:d,utc:!0,args:arguments};return new a(w)},c.utc=function(d){var w=s(this.toDate(),{locale:this.$L,utc:!0});return d?w.add(this.utcOffset(),n):w},c.local=function(){return s(this.toDate(),{locale:this.$L,utc:!1})};var y=c.parse;c.parse=function(d){d.utc&&(this.$u=!0),this.$utils().u(d.$offset)||(this.$offset=d.$offset),y.call(this,d)};var p=c.init;c.init=function(){if(this.$u){var d=this.$d;this.$y=d.getUTCFullYear(),this.$M=d.getUTCMonth(),this.$D=d.getUTCDate(),this.$W=d.getUTCDay(),this.$H=d.getUTCHours(),this.$m=d.getUTCMinutes(),this.$s=d.getUTCSeconds(),this.$ms=d.getUTCMilliseconds()}else p.call(this)};var C=c.utcOffset;c.utcOffset=function(d,w){var k=this.$utils().u;if(k(d))return this.$u?0:k(this.$offset)?C.call(this):this.$offset;if(typeof d=="string"&&(d=function(B){B===void 0&&(B="");var j=B.match(r);if(!j)return null;var F=(""+j[0]).match(i)||["-",0,0],N=F[0],E=60*+F[1]+ +F[2];return E===0?0:N==="+"?E:-E}(d),d===null))return this;var S=Math.abs(d)<=16?60*d:d;if(S===0)return this.utc(w);var _=this.clone();if(w)return _.$offset=S,_.$u=!1,_;var T=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();return(_=this.local().add(S+T,n)).$offset=S,_.$x.$localOffset=T,_};var b=c.format;c.format=function(d){var w=d||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return b.call(this,w)},c.valueOf=function(){var d=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*d},c.isUTC=function(){return!!this.$u},c.toISOString=function(){return this.toDate().toISOString()},c.toString=function(){return this.toDate().toUTCString()};var g=c.toDate;c.toDate=function(d){return d==="s"&&this.$offset?s(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():g.call(this)};var h=c.diff;c.diff=function(d,w,k){if(d&&this.$u===d.$u)return h.call(this,d,w,k);var S=this.local(),_=s(d).local();return h.call(S,_,w,k)}}})})(ze);var at=ze.exports;const rt=Me(at);var Ne={exports:{}};(function(t,o){(function(n,r){t.exports=r()})(Be,function(){var n={year:0,month:1,day:2,hour:3,minute:4,second:5},r={};return function(i,l,a){var s,c=function(b,g,h){h===void 0&&(h={});var d=new Date(b),w=function(k,S){S===void 0&&(S={});var _=S.timeZoneName||"short",T=k+"|"+_,B=r[T];return B||(B=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:k,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:_}),r[T]=B),B}(g,h);return w.formatToParts(d)},y=function(b,g){for(var h=c(b,g),d=[],w=0;w<h.length;w+=1){var k=h[w],S=k.type,_=k.value,T=n[S];T>=0&&(d[T]=parseInt(_,10))}var B=d[3],j=B===24?0:B,F=d[0]+"-"+d[1]+"-"+d[2]+" "+j+":"+d[4]+":"+d[5]+":000",N=+b;return(a.utc(F).valueOf()-(N-=N%1e3))/6e4},p=l.prototype;p.tz=function(b,g){b===void 0&&(b=s);var h,d=this.utcOffset(),w=this.toDate(),k=w.toLocaleString("en-US",{timeZone:b}),S=Math.round((w-new Date(k))/1e3/60),_=15*-Math.round(w.getTimezoneOffset()/15)-S;if(!Number(_))h=this.utcOffset(0,g);else if(h=a(k,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(_,!0),g){var T=h.utcOffset();h=h.add(d-T,"minute")}return h.$x.$timezone=b,h},p.offsetName=function(b){var g=this.$x.$timezone||a.tz.guess(),h=c(this.valueOf(),g,{timeZoneName:b}).find(function(d){return d.type.toLowerCase()==="timezonename"});return h&&h.value};var C=p.startOf;p.startOf=function(b,g){if(!this.$x||!this.$x.$timezone)return C.call(this,b,g);var h=a(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return C.call(h,b,g).tz(this.$x.$timezone,!0)},a.tz=function(b,g,h){var d=h&&g,w=h||g||s,k=y(+a(),w);if(typeof b!="string")return a(b).tz(w);var S=function(j,F,N){var E=j-60*F*1e3,W=y(E,N);if(F===W)return[E,F];var x=y(E-=60*(W-F)*1e3,N);return W===x?[E,W]:[j-60*Math.min(W,x)*1e3,Math.max(W,x)]}(a.utc(b,d).valueOf(),k,w),_=S[0],T=S[1],B=a(_).utcOffset(T);return B.$x.$timezone=w,B},a.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},a.tz.setDefault=function(b){s=b}}})})(Ne);var it=Ne.exports;const st=Me(it),Ce={"dao-ru":"导入","quan-xuan":"全选","xia-zai-dao-ru-mo-ban":"下载导入模板","xu-hao":"序号","qing-shu-ru":"请输入","qing-xuan-ze":"请选择","kai-shi-shi-jian":"开始时间","jie-shu-shi-jian":"结束时间","shai-xuan":"筛选","chong-zhi":"重置","guan-bi":"关闭","zhan-kai":"展开","qu-xiao":"取消","ti-jiao":"提交","que-ding":"确定","que-ding-guan-bi-ma":"确定关闭吗","xia-zai-dao-ru-mo-ban":"下载导入模板",excel:{fieldsMappingRequired:"请输入列字段映射",invalidInput:"非法输入",invalidOption:"请输入有效选项!",copyFailed:"复制失败",sheetNameTooLong:'Sheet名称 "{0}" 长度超过31个字符,已自动截断为 "{1}"'},validate:{invalidInput:"请输入正确内容"},tools:{keysLengthError:"keys 长度必须大于2 默认前两位为 label value"}},be={"dao-ru":"Import","quan-xuan":"Select All","xia-zai-dao-ru-mo-ban":"Download Import Template","xu-hao":"No.","qing-shu-ru":"Please enter","qing-xuan-ze":"Please select","kai-shi-shi-jian":"Start Time","jie-shu-shi-jian":"End Time","shai-xuan":"Filter","chong-zhi":"Reset","guan-bi":"Collapse","zhan-kai":"Expand","qu-xiao":"Cancel","ti-jiao":"Submit","que-ding":"Confirm","que-ding-guan-bi-ma":"Are you sure to close?","xia-zai-dao-ru-mo-ban":"Download Import Template",excel:{fieldsMappingRequired:"Please enter column field mapping",invalidInput:"Invalid input",invalidOption:"Please enter a valid option!",copyFailed:"Copy failed",sheetNameTooLong:'Sheet name "{0}" exceeds 31 characters, automatically truncated to "{1}"'},validate:{invalidInput:"Please enter valid content"},tools:{keysLengthError:"Keys length must be greater than 2, default first two are label and value"}},Oe={zh_cn:Ce,en_us:be};let ue=null;function qe(t=null){if(t){const{global:o}=t;return o.messages.value.zh_cn?o.mergeLocaleMessage("zh_cn",Ce):o.setLocaleMessage("zh_cn",Ce),o.messages.value.en_us?o.mergeLocaleMessage("en_us",be):o.setLocaleMessage("en_us",be),ue=t,t}return ue||(ue=te.createI18n({legacy:!1,locale:"zh_cn",fallbackLocale:"zh_cn",messages:Oe})),ue}function we(){return ue||qe()}function re(){return we().global.t}me.extend(rt),me.extend(st);async function ct(t,o){const{fields:n,range:r=1}=o;if(!n){const a=re();throw new Error(a("excel.fieldsMappingRequired"))}let i=new ye.Workbook;await i.xlsx.load(t);const l={};return i.eachSheet(function(a,s){const c=[];a.eachRow(function(y,p){if(p>r){let C={},b=!0;Object.keys(n).forEach(g=>{const h=y.getCell(n[g]).value;C[g]=h,h&&(b=!1)}),b||c.push(C)}}),l[a._name]=c}),i=null,l}const Pe={columnWidth:30};async function dt(t,o,n=[],r={}){if(!t||!o)return;const{columnStyle:i}=r,{columnWidth:l}=Pe;o.forEach(c=>{c.width=c.width?c.width:l});const{workbook:a,worksheet:s}=ut();s.columns=o,s.addRows(n),i&&await ft(a,s,i);try{const c=await a.xlsx.writeBuffer(),y=new File([c],t,{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});ve.saveAs(y)}catch(c){console.log(c)}}function ut(){const t=new ye.Workbook;t.creator="distributor System",t.lastModifiedBy="distributor System",t.created=new Date,t.modified=new Date,t.lastPrinted=new Date;const o=t.addWorksheet("Sheet1");return{workbook:t,worksheet:o}}async function ft(t,o,n){const r=Object.keys(n);for(const i of r){const l=n[i],{type:a}=l;switch(a){case"IMG":await mt(t,o,i);break}}}async function mt(t,o,n,r){const i=o.getColumn(n),l=i.values;o.getColumn(n).width=20,o.eachRow((a,s)=>{s>1&&(a.height=40)});for(let a=0,s=l.length;a<s;a++){if(a<2)continue;let c=l[a];c&&(o.getCell(i.letter+a).value="",await ht(t,o,c,{width:100,height:50,col:i._number-1,row:a-1}))}}async function ht(t,o,n,r){const{col:i,row:l,width:a,height:s}=r,{success:c,base64:y}=await gt(n,.3);if(c){const p=t.addImage({base64:y,extension:"jpeg"});o.addImage(p,{tl:{col:i,row:l},ext:{width:a,height:s}})}}function gt(t,o=1){const n=new Image;return n.setAttribute("crossOrigin","anonymous"),n.crossOrigin="anonymous",n.src=t,new Promise((r,i)=>{n.onload=()=>{const l=document.createElement("canvas");l.width=n.width,l.height=n.height,l.getContext("2d").drawImage(n,0,0,l.width,l.height),r({success:!0,base64:l.toDataURL("image/jpeg",o)})},n.onerror=()=>{r({success:!1})}})}const Se="---";async function Ae(t,o){const{fields:n,range:r=1}=o;if(!n){const a=re();throw new Error(a("excel.fieldsMappingRequired"))}let i=new ye.Workbook;await i.xlsx.load(t);const l={};return i.eachSheet(function(a,s){if(a.state=="visible"){const c=[],y=n[a._name];if(y){let p=Object.values(y).some(b=>b.includes("image")),C={};p&&(a.getImages().forEach(g=>{const{tl:h}=g.range,d=i.model.media.find(w=>w.index===g.imageId);if(d){const w=d.buffer.toString("base64"),k=`data:image/${d.extension};base64,${w}`,S=`${Math.ceil(h.row)}_${Math.ceil(h.col)}`;C[S]?C[S].push(k):C[S]=[k]}}),console.log("withImages-imageMap",C)),a.eachRow(function(b,g){if(g>r){let h={_excelRowNumber:g},d=!0;Object.keys(y).forEach(w=>{var B;let[k,S]=y[w].split(Se);const _=b.getCell(k);let T;if(S=="image"&&p){const j=_._column._number,F=`${g}_${j}`;T=C[F]||""}else _.result!=null?T=_.result:(B=_.value)!=null&&B.richText?T=_.value.richText.reduce((j,F)=>j+F.text,""):_.type==4&&_.value?T=me(_.value).utc().format("YYYY-MM-DD HH:mm:ss"):T=_.value;T&&S=="option"&&(T=T.split(Se)[1]),h[w]=T,T&&(d=!1)}),d||c.push(h)}}),l[a._name]=c}}}),i=null,l}const pt={date:"yyyy-mm-dd",number:"0",string:"@"};async function je(t,o){if(!t||o.length==0)return;const n=yt(o);for(const r of n.worksheets){const{columnWidth:i}=Pe,l=o[r.name];if(!l)continue;const{tableHeader:a,tableData:s}=l;a.forEach(c=>{const{style:y={},required:p}=c,{font:C={}}=y;c.style={...y,font:{...C,color:{argb:p?"FFFF0000":void 0}}}}),r.columns=a,r.addRows(s),a.forEach(c=>{let{header:y,key:p,width:C,option:b,numFmt:g,locked:h,optionFormater:d}=c;const w=r.getColumn(p);if(w.numFmt=pt[g]||g,w.width=C||i,w.protection={locked:h===!0},b){const k=n.addWorksheet(p);k.state="hidden",d||(d=S=>`${S.label}${Se}${S.value}`),k.getColumn(1).values=b.map(d),Array(100).fill("").forEach((S,_)=>{if(_>0){const T=re();r.getCell(`${w.letter}${_}`).dataValidation={type:"list",formulae:[`${p}!$A$1:$A$${b.length}`],showErrorMessage:!0,error:T("excel.invalidInput"),errorStyle:"stop",errorMessage:T("excel.invalidOption")}}})}}),a.some(c=>c.locked)&&await r.protect("6737187214",{selectLockedCells:!0,selectUnlockedCells:!0})}try{const r=await n.xlsx.writeBuffer(),i=new File([r],t,{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"});ve.saveAs(i)}catch(r){console.log(r)}}function yt(t){const o=re(),n=new ye.Workbook;return n.creator="distributor System",n.lastModifiedBy="distributor System",n.created=new Date,n.modified=new Date,n.lastPrinted=new Date,Object.keys(t).sort((i,l)=>{const a=t[i].sort??0,s=t[l].sort??0;return a-s}).forEach(i=>{let l=i,a=!1;/[\\/:*?\[\]]/g.test(i)&&(i=i.replace(/[\\/:*?\[\]]/g,""),a=!0),i.length>31&&(i=i.substring(0,31).trim(),a=!0,console.warn(o("excel.sheetNameTooLong",[l,i]))),a&&(t[i]=t[l],delete t[l]),n.addWorksheet(i)}),n}function Ct(t){if(t<26)return String.fromCharCode(65+t);{const o=String.fromCharCode(65+Math.floor((t-26)/26)),n=String.fromCharCode(65+(t-26)%26);return o+n}}function bt(t){return new Promise(o=>{setTimeout(()=>{o()},t)})}function wt(t){return JSON.parse(JSON.stringify(t))}function xt(t){let o=[],n={},r=(i,l)=>Object.prototype.hasOwnProperty.call(i,l);for(const i of t){n[i.id]={...i,children:r(n,i.id)?n[i.id].children:[]};const l=n[i.id];i.pid==-1?o.push(l):(r(n,i.pid)||(n[i.pid]={children:[]}),n[i.pid].children.push(l))}return o}function $e(t,o=" "){return t?t.split(o).filter(n=>n.trim()):[]}class Ve{constructor(o,n=["label","value","labelEn"]){this.list=o.map(r=>({...r,label:r[n[0]],labelEn:r[n[2]]??r[n[0]]??"",value:r[n[1]]})),this.map=new Map(this.list.map(r=>[r[n[1]],r]))}getName(o){if(!this.has(o))return"-";const n=we().global.locale,{label:r,labelEn:i}=this.map.get(o);return(n.value=="zh_cn"?r:i)??r??"-"}getTag(o){if(!this.has(o))return"info";const{tag:n="info"}=this.map.get(o);return n}getItem(o){return this.has(o)?this.map.get(o):null}getColor(o){if(!this.has(o))return null;const{color:n}=this.map.get(o);return n}has(o){return this.map.has(o)}}function kt(t,o=[],n="i18nName"){if(t.length==0)return new Ve([]);if(o.length<2){const i=re();throw new Error(i("tools.keysLengthError"))}let r=t.map(i=>{let l={};return n&&(l.labelEn=i[n]),o.forEach((a,s)=>{s===0?l.label=i[a]:s===1?l.value=i[a]:l[a]=i[a]}),l});return new Ve(r)}function _t(t){return t?t.replace(/<[^>]+>/g,""):""}function St(t){return t?(t.includes("\\\\u")&&(t=t.replace(/\\/g,"")),t.replace(/\\u[\dA-F]{4}/gi,o=>String.fromCharCode(parseInt(o.replace(/\\u/g,""),16)))):""}function $t(t,o=10){let n=1048576*o;return!(t.size>n)}function Vt(t){return Array.from(10).fill(0).map((n,r)=>t+"_"+r)}function Et(t){let o={};return t.map((n,r)=>{let{key:i,option:l,type:a,optionFormater:s}=n,c=Ct(r);l&&!s?o[i]=`${c}---option`:a==="image"?o[i]=`${c}---image`:o[i]=c}),o}function Tt(t,o){return o.split(".").reduce((n,r)=>n&&n[r],t)}const mo="",fe=(t,o)=>{const n=t.__vccOpts||t;for(const[r,i]of o)n[r]=i;return n},It=["onClick"],Re=fe({__name:"index",props:e.mergeModels({api:{type:Function},showCheckAll:{type:Boolean,default:!0},maxLimit:{type:Number,default:void 0},minLimit:{type:Number,default:void 0},optionClick:{type:Function,default:()=>{}},data:{type:Array},labelValue:{type:Object,default:()=>({label:"label",labelEn:"labelEn",value:"value"})},changeLocal:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["success","change","changeAll"],["update:modelValue"]),setup(t,{emit:o}){const n=t,r=e.useAttrs(),{t:i,locale:l}=te.useI18n(),a=e.useModel(t,"modelValue"),s=e.computed(()=>r["value-key"]!=null),c=e.ref(""),y=e.computed(()=>{if(r.remote!==void 0)return n.data;const x=$e(c.value),{data:$,labelValue:q}=n,V=$||b.value;if(x.length==0)return V;const{label:G,labelEn:ie}=q;let D=l.value=="en_us"?ie||"i18nName":G;return x.length==1?V.filter(le=>le[D].toLowerCase().includes(x[0].toLowerCase())):V.filter(le=>{let ge=!1;return ge=x.some(_e=>le[D].toLowerCase()==_e.toLowerCase()),ge})}),p=e.computed({get(){return r.multiple==null||a.value==null?!1:a.value.length==y.value.length},set(x){return x}}),C=o,b=e.ref([]),g=async()=>{const{data:x}=await n.api();b.value=[...x],C("success",b)};n.api&&g();function h(x){C("change",x),d.value&&e.nextTick(()=>{n.optionClick&&n.optionClick(d.value),d.value=null})}const d=e.ref(null);function w(){C("change",a.value),e.nextTick(()=>{n.optionClick&&n.optionClick(null)})}function k(x){d.value=x}const S=n.labelValue.label.split("-"),_=x=>{if(S.length==1){if(n.changeLocal)return i(x[n.labelValue.label]);let $=l.value=="en_us"?x[n.labelValue.labelEn||"i18nName"]:x[n.labelValue.label];return $=$||x[n.labelValue.label],$+""}else{let $=[];return S.forEach(q=>{$.push(x[q])}),$.join("-")}};function T(x){let $=n.data?n.data:b.value;a.value=x?$.map(q=>s.value?q:q[n.labelValue.value]):[],e.nextTick(()=>{C("change",a.value),C("changeAll",a.value,$)})}function B(x){C("change",s.value?x:x[n.labelValue.value]),e.nextTick(()=>{n.optionClick&&n.optionClick(x)})}function j(x){const $=s.value?x:x[n.labelValue.value],q=s.value?a.value.some(V=>V[n.labelValue.value]===x[n.labelValue.value]):a.value.includes($);return!!(n.maxLimit>0&&a.value.length>=n.maxLimit&&!q||n.minLimit>0&&a.value.length===n.minLimit&&q)}function F(x){return x.map($=>({...$,label:_($),value:s.value?$:$[n.labelValue.value]}))}const N=e.ref([]),E=n.data?n.data:b.value;N.value=F(E),e.watch(()=>n.data?n.data:b.value,x=>{var q;const $=F(x);if($.length!==N.value.length)N.value=$;else{let V=!1;for(let G=0;G<$.length;G++)if($[G].value!==((q=N.value[G])==null?void 0:q.value)){V=!0;break}V&&(N.value=$)}},{deep:!0});const W=e.computed(()=>r.multiple!==void 0&&(n.maxLimit>0||n.minLimit>0)?N.value.map(x=>({...x,disabled:j(x)})):N.value);return(x,$)=>{const q=e.resolveComponent("el-checkbox"),V=e.resolveComponent("el-select-v2"),G=e.resolveComponent("el-option"),ie=e.resolveComponent("el-select");return e.unref(r).v2!=null?(e.openBlock(),e.createBlock(V,e.mergeProps({key:0,options:W.value,modelValue:a.value,"onUpdate:modelValue":$[1]||($[1]=D=>a.value=D)},e.unref(r),{filterable:"","collapse-tags":"","collapse-tags-tooltip":"",clearable:"",onChange:h}),e.createSlots({default:e.withCtx(({item:D})=>[e.createElementVNode("div",{onClick:se=>k(D)},e.toDisplayString(D.label),9,It)]),_:2},[e.unref(r).multiple!=null?{name:"header",fn:e.withCtx(()=>[e.renderSlot(x.$slots,"header",{},()=>[e.createVNode(q,{class:"mgl20",modelValue:p.value,"onUpdate:modelValue":$[0]||($[0]=D=>p.value=D),onChange:T},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.$t("quan-xuan")),1)]),_:1},8,["modelValue"])],!0)]),key:"0"}:void 0]),1040,["options","modelValue"])):(e.openBlock(),e.createBlock(ie,e.mergeProps({key:1,modelValue:a.value,"onUpdate:modelValue":$[3]||($[3]=D=>a.value=D),filterable:"","collapse-tags":"","collapse-tags-tooltip":"","filter-method":e.unref(r).remote!=null?void 0:D=>c.value=D,clearable:""},e.unref(r),{onClear:w}),{default:e.withCtx(()=>[e.unref(r).multiple!=null&&t.showCheckAll&&t.maxLimit==null?e.renderSlot(x.$slots,"header",{key:0},()=>[e.createVNode(q,{class:"mgl20",modelValue:p.value,"onUpdate:modelValue":$[2]||($[2]=D=>p.value=D),onChange:T},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(x.$t("quan-xuan")),1)]),_:1},8,["modelValue"])],!0):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,(D,se)=>(e.openBlock(),e.createBlock(G,{key:se,label:_(D),disabled:e.unref(r).multiple!=null&&(t.maxLimit>0||t.minLimit>0)?j(D):!1,onClick:e.withModifiers(le=>B(D),["stop"]),value:s.value?D:D[t.labelValue.value]},null,8,["label","disabled","onClick","value"]))),128))]),_:3},16,["modelValue","filter-method"]))}}},[["__scopeId","data-v-12794201"]]),go="",Lt=e.defineComponent({props:{name:{tyepe:String,required:!0}}});function Ft(t,o,n,r,i,l){const a=e.resolveComponent("el-icon");return e.openBlock(),e.createBlock(a,{class:"cmp-icon"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.name)))]),_:1})}const Ee=fe(Lt,[["render",Ft],["__scopeId","data-v-733f9daa"]]),po="",vt={class:"confirm-button-wrapper"},Dt=fe({__name:"index",emits:["ok","no"],setup(t,{emit:o}){const n=o,r=ae.debounce(()=>{n("ok")},500);function i(){n("no")}return(l,a)=>{const s=e.resolveComponent("el-popconfirm");return e.openBlock(),e.createElementBlock("span",vt,[e.createVNode(s,e.mergeProps(l.$attrs,{onConfirm:e.unref(r),onCancel:i}),{reference:e.withCtx(()=>[e.renderSlot(l.$slots,"default",{},void 0,!0)]),_:3},16,["onConfirm"])])}}},[["__scopeId","data-v-24cb35fd"]]),Co="",Bt={class:"ImportButton"},Mt=["accept"],zt=fe({__name:"index",props:{accept:{type:String,default:".xlsx,.xls"},fields:{type:Object,default:()=>({})},fileChange:{type:Function,required:!0}},emits:["fileChange"],setup(t,{emit:o}){const n=t,r=e.ref(null),i=e.ref(!1);async function l(a){i.value=!0;let s=a.target.files[0];const c=await Ae(s,n.fields).catch(()=>{i.value=!1}).finally(()=>{r.value.value=null});await n.fileChange(c).finally(()=>{i.value=!1})}return(a,s)=>{const c=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("div",Bt,[e.createVNode(c,e.mergeProps({type:"primary",loading:i.value,class:"mgr10",onClick:s[0]||(s[0]=y=>r.value.click())},a.$attrs),{default:e.withCtx(()=>[e.renderSlot(a.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(a.$t("dao-ru")),1)],!0)]),_:3},16,["loading"]),e.createElementVNode("input",{onChange:l,ref_key:"input",ref:r,accept:t.accept,style:{position:"absolute",width:"0px",height:"0px",opacity:"0"},type:"file"},null,40,Mt)])}}},[["__scopeId","data-v-ea0a4c60"]]);function Te(t){let o={};return t.forEach(n=>{const{key:r,type:i,option:l={},value:a,dateType:s="date"}=n;if(r)if(i=="input"&&(l!=null&&l.multiple))o[r]=$e(a);else if(i=="date")if(s.includes("range")){const[c,y]=r;let[p,C]=a||[];p&&s=="daterange"&&(p=me(p).format("YYYY-MM-DD 00:00:00"),C=me(C).format("YYYY-MM-DD 23:59:59")),o[c]=p,o[y]=C}else o[r]=a;else o[r]=a}),o}const wo="",Nt={key:0},Ot={class:"btns"},qt={class:"left"},Pt={class:"right"},Ue=fe({__name:"index",props:{form:{type:Object,required:!0}},emits:["confirm","reset","visibleChange"],setup(t,{expose:o,emit:n}){const r=t,i=n,l=e.ref(!0),a=e.ref(null),{t:s}=te.useI18n(),c={datetimerange:"YYYY-MM-DD HH:mm:ss",daterange:"YYYY-MM-DD",month:"YYYY-MM"},y=e.computed(()=>l.value?s("guan-bi"):s("zhan-kai"));function p(){i("confirm")}function C(k){k.option.onClear&&k.option.onClear(),i("confirm")}function b(){i("reset")}function g(){i("confirm")}function h(){return Te(r.form.items)}const d=ae.cloneDeep(r.form.items);function w(){r.form.items.forEach(k=>{const S=d.find(_=>_.key==k.key);S&&(k.value=S.value)})}return o({getPrm:h,reset:w}),(k,S)=>{const _=e.resolveComponent("el-input"),T=e.resolveComponent("el-date-picker"),B=e.resolveComponent("el-form-item"),j=e.resolveComponent("el-form"),F=e.resolveComponent("el-link"),N=e.resolveComponent("el-button");return e.openBlock(),e.createElementBlock("div",{class:"searchBar-container mgt10 mgb10",onKeydown:e.withKeys(p,["enter"])},[e.createElementVNode("div",{class:"searchBar",style:e.normalizeStyle({height:l.value?"auto":"32px"})},[e.createVNode(j,{inline:"",model:t.form.data},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.form.items.filter(E=>!E.hidden),E=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:E.key},[E.type=="br"?(e.openBlock(),e.createElementBlock("br",Nt)):(e.openBlock(),e.createBlock(B,{key:1,label:E.name},{default:e.withCtx(()=>{var W,x;return[E.type==="input"?(e.openBlock(),e.createBlock(_,{key:0,modelValue:E.value,"onUpdate:modelValue":$=>E.value=$,class:e.normalizeClass(((W=E.option)==null?void 0:W.class)||"w150"),placeholder:k.$t("qing-shu-ru"),clearable:""},null,8,["modelValue","onUpdate:modelValue","class","placeholder"])):E.type==="custom"?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(E.render),{key:1})):e.createCommentVNode("",!0),E.type==="select"?(e.openBlock(),e.createBlock(Re,e.mergeProps({key:2,class:((x=E.option)==null?void 0:x.class)||"w150",modelValue:E.value,"onUpdate:modelValue":$=>E.value=$},{ref_for:!0},E.option,{onChange:p,onClear:$=>C(E),placeholder:k.$t("qing-xuan-ze")}),null,16,["class","modelValue","onUpdate:modelValue","onClear","placeholder"])):e.createCommentVNode("",!0),E.type==="date"?(e.openBlock(),e.createBlock(T,e.mergeProps({key:3,class:{datetimerange:"w300",daterange:"w200"}[E.dateType]||"w100",modelValue:E.value,"onUpdate:modelValue":$=>E.value=$,"value-format":c[E.dateType]||"YYYY-MM-DD",type:E.dateType||"date",onFocus:$=>a.value=E,onChange:$=>g(),placeholder:k.$t("qing-xuan-ze"),"start-placeholder":k.$t("kai-shi-shi-jian"),"end-placeholder":k.$t("jie-shu-shi-jian")},{ref_for:!0},E.option),null,16,["class","modelValue","onUpdate:modelValue","value-format","type","onFocus","onChange","placeholder","start-placeholder","end-placeholder"])):e.createCommentVNode("",!0)]}),_:2},1032,["label"]))],64))),128))]),_:1},8,["model"])],4),e.createElementVNode("div",Ot,[e.createElementVNode("div",qt,[e.renderSlot(k.$slots,"table-header-left",{},void 0,!0)]),e.createElementVNode("div",Pt,[e.createVNode(F,{underline:"never",class:"mgr10",onClick:S[0]||(S[0]=()=>{i("visibleChange",!l.value),l.value=!l.value})},{default:e.withCtx(()=>[e.createVNode(Ee,{name:l.value?"ArrowUp":"ArrowDown"},null,8,["name"]),e.createTextVNode(" "+e.toDisplayString(y.value),1)]),_:1}),e.createVNode(N,{type:"primary",onClick:p},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.$t("shai-xuan")),1)]),_:1}),e.createVNode(N,{type:"primary",onClick:b},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(k.$t("chong-zhi")),1)]),_:1}),e.renderSlot(k.$slots,"btn",{},void 0,!0)])])],32)}}},[["__scopeId","data-v-db6f71dd"]]),Ye={pageNoKey:"pageNo",pageSizeKey:"pageSize",totalKey:"total",defaultPageSize:10,pageSizes:[10,50,100,500],responseDataKeys:{rows:["rows","records","list"],total:["totalRows","total"]},showSearch:!1,showPage:!1,showShadow:!1,showCheckBox:!1,enableCellCopy:!0};let he={...Ye};function At(t){he={...he,...t,responseDataKeys:{...he.responseDataKeys,...t.responseDataKeys||{}}}}function He(){return he}function jt(){he={...Ye}}const ko="",Rt={class:"center"},Ut=fe({__name:"index",props:{id:{type:String,required:!1},loading:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0},searchForm:{type:Object,default:()=>({items:[],selections:[]})},api:{type:Function},data:{type:Array},tableConfig:{type:Object,default:()=>({})}},setup(t,{expose:o}){const{t:n,locale:r}=te.useI18n(),i=De.useRoute(),l=He(),a=t,s=e.ref(!1),c=e.ref([]);a.searchForm.showSearch===void 0&&(a.searchForm.showSearch=l.showSearch),a.searchForm.showPage===void 0&&(a.searchForm.showPage=l.showPage),a.searchForm.showShadow===void 0&&(a.searchForm.showShadow=l.showShadow),a.searchForm.showCheckBox===void 0&&(a.searchForm.showCheckBox=l.showCheckBox),a.searchForm.enableCellCopy===void 0&&(a.searchForm.enableCellCopy=l.enableCellCopy),a.searchForm.selections||(a.searchForm.selections=[]);const y=e.computed(()=>{const f=i.path.replace(/\//g,"-").replace(/^-/,"")||"default-table";return a.id?`listPageId-${f}-${a.id}`:`listPageId-${f}`}),p=ae.cloneDeep(a.searchForm.items),C=a.searchForm.pageNoKey||l.pageNoKey,b=a.searchForm.pageSizeKey||l.pageSizeKey,g=e.reactive({[C]:1,[b]:a.searchForm.defaultPageSize||l.defaultPageSize,total:0}),h=e.ref(null),d=e.ref(null),w=e.ref(450),k=ae.debounce(()=>{e.nextTick(()=>{if(!d.value)return;const u=d.value.getBoundingClientRect(),I=window.innerHeight,v=u.top,P=100,Y=I-v-P,M=200;w.value=Math.max(Y,M)})},100),S=()=>{k()},_=()=>{if(!a.searchForm.enableCellCopy&&!l.enableCellCopy)return!1;const f=h.value;if(!f||!f.$el)return!1;const u=f.$el;return u.classList.add("cell-copy-enabled"),u.setAttribute("tabindex","-1"),u.removeEventListener("mousedown",ie),u.removeEventListener("mousemove",D),u.removeEventListener("mouseup",se),u.removeEventListener("keydown",Le),u.addEventListener("mousedown",ie),u.addEventListener("mousemove",D),u.addEventListener("mouseup",se),u.addEventListener("keydown",Le),!0};e.onMounted(()=>{k(),window.addEventListener("resize",S),(a.searchForm.enableCellCopy||l.enableCellCopy)&&(document.addEventListener("mouseup",et),document.addEventListener("mousedown",tt),setTimeout(()=>{_()},500))}),e.onUpdated(()=>{(a.searchForm.enableCellCopy||l.enableCellCopy)&&setTimeout(()=>{_()},500)}),e.onUnmounted(()=>{if(window.removeEventListener("resize",S),a.searchForm.enableCellCopy||l.enableCellCopy){document.removeEventListener("mouseup",et),document.removeEventListener("mousedown",tt);const f=h.value;if(f&&f.$el){const u=f.$el;u.removeEventListener("mousedown",ie),u.removeEventListener("mousemove",D),u.removeEventListener("mouseup",se),u.removeEventListener("keydown",Le)}}});const T=e.computed(()=>q.value.height||w.value);let B;async function j(f){const{dataFormat:u}=a.tableConfig;f[C]!=1&&(f.nextSearchAfter=B),s.value=!0;const{code:I,data:v={}}=await a.api(f).finally(()=>{s.value=!1,a.searchForm.selections=[]});if(I==200){let P=[];for(const M of l.responseDataKeys.rows)if(v[M]){P=v[M];break}let Y=0;for(const M of l.responseDataKeys.total)if(v[M]!==void 0){Y=v[M];break}c.value=u?u(P):P,g.total=Y,B=v.nextSearchAfter,(a.searchForm.enableCellCopy||l.enableCellCopy)&&e.nextTick(()=>{setTimeout(()=>{_()},100)})}}function F(f={}){const{searchData:u=()=>({})}=a.tableConfig,I=u();j({...g,...Te(a.searchForm.items),...f,...I})}function N(){const{reset:f}=a.tableConfig;f&&f(),a.searchForm.items.forEach(u=>{const I=p.find(v=>ae.isArray(u.key)&&ae.isArray(v.key)?u.key.join(",")==v.key.join(","):v.key==u.key);I&&(u.value=I.value)}),F()}a.api&&a.immediate&&F();function E(){return{...g,...Te(a.searchForm.items)}}const W=()=>{const f=h.value;f&&f.clearSort()},x=e.reactive({storage:!0}),$=e.reactive({drag:!0,resizable:!0,maxFixedSize:0}),q=e.computed(()=>{const{customConfig:f,columnConfig:u,...I}=a.tableConfig;return{headerAlign:"left",align:"center",customConfig:{...x,...f},columnConfig:{...$,...u},"virtual-x-config":{enabled:!1,scrollToLeftOnChange:!1},"virtual-y-config":{enabled:!0,gt:100},...I}}),V=e.reactive({isSelecting:!1,startCell:null,endCell:null,selectedCells:[]}),G=f=>{const u=f.closest(".vxe-body--column");if(!u||u.classList.contains("col--checkbox")||u.classList.contains("col--seq"))return null;const I=u.closest(".vxe-body--row");if(!I)return null;const v=h.value;if(!v)return null;let P=-1;const Y=I.getAttribute("data-rowid");if(Y!=null)P=parseInt(Y,10);else{const z=I.parentElement;P=Array.from(z.querySelectorAll(".vxe-body--row")).indexOf(I)}if(P<0)return null;let M=-1;const ee=u.getAttribute("data-colid");if(ee&&(M=v.getColumns().findIndex(L=>L.id===ee)),M<0){const L=Array.from(I.querySelectorAll(".vxe-body--column")).indexOf(u),R=!!u.closest(".vxe-table--fixed-left-wrapper"),H=!!u.closest(".vxe-table--fixed-right-wrapper"),A=v.getColumns();if(R){const K=A.filter(U=>U.fixed==="left");L<K.length&&(M=A.indexOf(K[L]))}else if(H){const K=A.filter(U=>U.fixed==="right");L<K.length&&(M=A.indexOf(K[L]))}else{const K=a.searchForm.showCheckBox?1:0;M=A.filter(J=>J.fixed==="left").length+L-K}}return M<0?null:{rowIndex:P,colIndex:M,cell:u}},ie=f=>{const u=G(f.target);if(!u){le();return}V.isSelecting=!0,V.startCell={rowIndex:u.rowIndex,colIndex:u.colIndex},V.endCell={...V.startCell},ge(),_e()},D=f=>{if(!V.isSelecting)return;const u=G(f.target);u&&(V.endCell={rowIndex:u.rowIndex,colIndex:u.colIndex},ge(),_e())},se=()=>{V.isSelecting=!1},le=()=>{V.selectedCells=[],V.startCell=null,V.endCell=null;const f=h.value;if(!f)return;f.$el.querySelectorAll(".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left").forEach(I=>{I.classList.remove("cell-selected","cell-border-top","cell-border-right","cell-border-bottom","cell-border-left")})},ge=()=>{if(!V.startCell||!V.endCell){V.selectedCells=[];return}const f=V.startCell.rowIndex,u=V.endCell.rowIndex,I=V.startCell.colIndex,v=V.endCell.colIndex,P=Math.min(f,u),Y=Math.max(f,u),M=Math.min(I,v),ee=Math.max(I,v);V.selectedCells=[];for(let z=P;z<=Y;z++)for(let L=M;L<=ee;L++)V.selectedCells.push({rowIndex:z,colIndex:L})},_e=()=>{e.nextTick(()=>{const f=h.value;if(!f)return;const u=f.$el;if(u.querySelectorAll(".cell-selected, .cell-border-top, .cell-border-right, .cell-border-bottom, .cell-border-left").forEach(R=>{R.classList.remove("cell-selected","cell-border-top","cell-border-right","cell-border-bottom","cell-border-left")}),V.selectedCells.length===0)return;const I=f.getColumns(),v=V.selectedCells.map(R=>R.rowIndex),P=V.selectedCells.map(R=>R.colIndex),Y=Math.min(...v),M=Math.max(...v),ee=Math.min(...P),z=Math.max(...P),L=[u.querySelector(".vxe-table--body-wrapper tbody"),u.querySelector(".vxe-table--fixed-left-wrapper tbody"),u.querySelector(".vxe-table--fixed-right-wrapper tbody")].filter(Boolean);V.selectedCells.forEach(({rowIndex:R,colIndex:H})=>{const A=I[H];if(!A)return;const K=A.fixed==="left",U=A.fixed==="right";for(const J of L){const pe=J.querySelectorAll(".vxe-body--row")[R];if(!pe)continue;const ce=Array.from(pe.querySelectorAll(".vxe-body--column"));let O=null;if(K&&J.closest(".vxe-table--fixed-left-wrapper")){const X=I.filter(Q=>Q.fixed==="left").indexOf(A);O=ce[X]}else if(U&&J.closest(".vxe-table--fixed-right-wrapper")){const X=I.filter(Q=>Q.fixed==="right").indexOf(A);O=ce[X]}else if(!K&&!U&&J.closest(".vxe-table--body-wrapper")){const de=a.searchForm.showCheckBox?1:0,X=I.filter(Fe=>Fe.fixed==="left").length,Q=H-X;O=ce[Q+de]}if(O&&!O.classList.contains("col--checkbox")&&!O.classList.contains("col--seq")){O.classList.add("cell-selected"),R===Y&&O.classList.add("cell-border-top"),R===M&&O.classList.add("cell-border-bottom"),H===ee&&O.classList.add("cell-border-left"),H===z&&O.classList.add("cell-border-right");break}}})})},so=async()=>{if(V.selectedCells.length===0)return;const f=h.value;if(!f)return;const u=f.$el,I=f.getColumns(),v=[...new Set(V.selectedCells.map(z=>z.rowIndex))].sort((z,L)=>z-L),P=[...new Set(V.selectedCells.map(z=>z.colIndex))].sort((z,L)=>z-L),Y=[u.querySelector(".vxe-table--body-wrapper tbody"),u.querySelector(".vxe-table--fixed-left-wrapper tbody"),u.querySelector(".vxe-table--fixed-right-wrapper tbody")].filter(Boolean),M=[];v.forEach(z=>{const L=[];P.forEach(R=>{const H=I[R];if(!H){L.push("");return}const A=H.fixed==="left",K=H.fixed==="right";let U="";for(const J of Y){const pe=J.querySelectorAll(".vxe-body--row")[z];if(!pe)continue;const ce=Array.from(pe.querySelectorAll(".vxe-body--column"));let O=null;if(A&&J.closest(".vxe-table--fixed-left-wrapper")){const X=I.filter(Q=>Q.fixed==="left").indexOf(H);O=ce[X]}else if(K&&J.closest(".vxe-table--fixed-right-wrapper")){const X=I.filter(Q=>Q.fixed==="right").indexOf(H);O=ce[X]}else if(!A&&!K&&J.closest(".vxe-table--body-wrapper")){const de=a.searchForm.showCheckBox?1:0,X=I.filter(Fe=>Fe.fixed==="left").length,Q=R-X;O=ce[Q+de]}if(O&&!O.classList.contains("col--checkbox")&&!O.classList.contains("col--seq")){U=O.innerText||O.textContent||"",U=U.trim(),U=U.replace(/\n/g," ").replace(/\s+/g," ");break}}L.push(U)}),M.push(L.join(" "))});const ee=M.join(`
2
+ `);try{await navigator.clipboard.writeText(ee)}catch(z){console.error("复制失败:",z)}},Le=f=>{!a.searchForm.enableCellCopy&&!l.enableCellCopy||((f.ctrlKey||f.metaKey)&&f.key==="c"?V.selectedCells.length>0&&(f.preventDefault(),f.stopPropagation(),so()):f.key==="Escape"&&le())},et=()=>{V.isSelecting=!1},tt=f=>{const u=h.value;if(!u||!u.$el)return;u.$el.contains(f.target)||le()},co=f=>{g[C]=f,F()},uo=f=>{g[b]=f,g[C]=1,F()};function ot(){const f=h.value.getCheckboxRecords();a.searchForm.selections=f}const nt=f=>{const u=h.value;if(u){u.toggleCheckboxRow(f);const I=h.value.getCheckboxRecords();a.searchForm.selections=I}};return o({tableRef:h,getList:F,getPrm:E,clearSort:W,calculateTableHeight:k}),(f,u)=>{var z;const I=e.resolveComponent("el-button"),v=e.resolveComponent("el-checkbox"),P=e.resolveComponent("el-text"),Y=e.resolveComponent("vxe-column"),M=e.resolveComponent("VxeTable"),ee=e.resolveComponent("el-pagination");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({box:t.searchForm.showShadow})},[t.searchForm.showSearch?(e.openBlock(),e.createBlock(Ue,{key:0,form:t.searchForm,onReset:N,onConfirm:u[1]||(u[1]=L=>F()),onVisibleChange:e.unref(k)},{btn:e.withCtx(()=>[u[3]||(u[3]=e.createElementVNode("span",{class:"mgr10"},null,-1)),e.renderSlot(f.$slots,"search-bar-btn",{},void 0,!0),e.createVNode(I,{class:"mgl10",round:"",onClick:u[0]||(u[0]=L=>h.value.openCustom())},{default:e.withCtx(()=>[e.createVNode(Ee,{name:"Tools"})]),_:1})]),_:3},8,["form","onVisibleChange"])):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"table-header-left",{},void 0,!0),e.createElementVNode("div",{ref_key:"tableContentRef",ref:d},[e.createVNode(M,e.mergeProps({id:y.value,ref_key:"tableRef",ref:h,loading:t.loading||s.value,data:t.api?c.value:t.data,border:""},q.value,{height:T.value,onCheckboxChange:ot,onCheckboxAll:ot,onSortChange:(z=q.value["sort-config"])==null?void 0:z.sortChange}),{default:e.withCtx(()=>[t.searchForm.showCheckBox==null||t.searchForm.showCheckBox?(e.openBlock(),e.createBlock(Y,{key:0,type:"checkbox",width:e.unref(r)=="zh_cn"?80:150,title:f.$t("xu-hao"),fixed:"left"},{checkbox:e.withCtx(({rowIndex:L,row:R,checked:H,disabled:A,indeterminate:K})=>[e.createElementVNode("div",Rt,[H?(e.openBlock(),e.createBlock(v,{key:0,checked:!0,disabled:A,size:"default",onClick:e.withModifiers(U=>!A&&nt(R),["stop"])},null,8,["disabled","onClick"])):(e.openBlock(),e.createBlock(v,{key:1,disabled:A,checked:!1,size:"default",onClick:e.withModifiers(U=>!A&&nt(R),["stop"])},null,8,["disabled","onClick"])),e.createVNode(P,{type:"info",class:"mgl5"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(L+1),1)]),_:2},1024)])]),_:1},8,["width","title"])):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"default",{},void 0,!0)]),_:3},16,["id","loading","data","height","onSortChange"])],512),t.searchForm.showPage?(e.openBlock(),e.createBlock(ee,{key:1,"current-page":g[e.unref(C)],"onUpdate:currentPage":u[2]||(u[2]=L=>g[e.unref(C)]=L),class:"myPagination mgt10",background:"",layout:"total, sizes, prev, pager, next",total:g.total,"page-size":g[e.unref(b)],"page-sizes":t.searchForm.pageSizes||e.unref(l).pageSizes,onCurrentChange:co,onSizeChange:uo},null,8,["current-page","total","page-size","page-sizes"])):e.createCommentVNode("",!0)],2)}}},[["__scopeId","data-v-c022c16d"]]),Yt={__name:"index",props:{sheetsConfig:{type:Object,required:!0},fileName:{type:String,required:!0}},setup(t){const o=t;function n(){je(o.fileName,o.sheetsConfig)}return(r,i)=>{const l=e.resolveComponent("el-link");return e.openBlock(),e.createBlock(l,e.mergeProps({type:"primary",underline:"never"},r.$attrs,{onClick:n}),{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(r.$t("xia-zai-dao-ru-mo-ban")),1)])]),_:3},16)}}},Ht={mounted(t,o){o.value&&Ke(t)},updated(t,o){o.value?Ke(t):We(t)},beforeUnmount(t){We(t)}};async function Ke(t){await b();const o=t.querySelector(".el-dialog");if(!o)return;const n=t.querySelector(".el-dialog__header"),r=t.querySelector(".el-overlay");r.style.cssText+="overflow: hidden;",n.style.cursor="move";let i=!1,l={window:{width:0,height:0},dialog:{x:0,y:0,width:0,height:0,marginTop:""},mouse:{x:0,y:0},drag:{x:0,y:0}};n.addEventListener("mousedown",c),document.addEventListener("mousemove",y),document.addEventListener("mouseup",p),window.addEventListener("resize",C);function a(){l.mouse.x-l.drag.x>=l.dialog.x&&(l.drag.x=l.mouse.x-l.dialog.x),l.drag.x-l.mouse.x>=l.window.width-(l.dialog.x+l.dialog.width)&&(l.drag.x=l.mouse.x+l.window.width-l.dialog.x-l.dialog.width),l.mouse.y-l.drag.y>=l.dialog.y&&(l.drag.y=l.mouse.y-l.dialog.y),l.drag.y-l.mouse.y>=l.window.height-(l.dialog.y+l.dialog.height)&&(l.drag.y=l.mouse.y+l.window.height-l.dialog.y-l.dialog.height),s()}function s(){let g=l.drag.y-l.mouse.y+l.dialog.y,h=l.drag.x-l.mouse.x+l.dialog.x;o.style.cssText+=`position: absolute; top: calc(${g}px - ${l.dialog.marginTop}); left: ${h}px;`}function c(g){g.button===0&&(l.window={width:document.body.clientWidth,height:document.body.clientHeight},l.dialog=o.getBoundingClientRect(),l.dialog.marginTop=window.getComputedStyle(o).marginTop,l.mouse={x:g.clientX,y:g.clientY},i=!0)}function y(g){i&&(l.drag={x:g.clientX,y:g.clientY},r.style.userSelect="none",a())}function p(g){r.style.userSelect="auto",i=!1}function C(g){}function b(){return new Promise((g,h)=>{setTimeout(()=>{g()},500)})}t.__mouseDown__=c,t.__mouseUp__=p,t.__mouseMove__=y,t.__sizeChange__=C}function We(t){document.removeEventListener("mousedown",t.__mouseDown__),document.removeEventListener("mousemove",t.__mouseMove__),document.removeEventListener("mouseup",t.__mouseUp__),window.removeEventListener("resize",t.__sizeChange__)}const So="",Kt={key:0,class:"drawer-btn"},Wt={key:1},Zt={__name:"index",props:{layer:{type:Object,default:()=>({show:!1,type:"layer",title:"",showButton:!1}),required:!0},loading:{type:Boolean,default:!1}},emits:["confirm"],setup(t,{emit:o}){const n=t,r=o,{t:i}=te.useI18n(),l=ae.debounce(()=>{r("confirm")},300);async function a(){n.layer.type=="drawer"?n.layer.onClose?n.layer.onClose():n.layer.closeConfirm?await Z.ElMessageBox.confirm(i("que-ding-guan-bi-ma"),{confirmButtonText:i("que-ding"),cancelButtonText:i("qu-xiao"),type:"warning"}).catch(()=>{})=="confirm"&&(n.layer.show=!1):n.layer.show=!1:n.layer.show=!1}return(s,c)=>{const y=e.resolveComponent("el-button"),p=e.resolveComponent("el-drawer"),C=e.resolveComponent("el-dialog");return t.layer.type?(e.openBlock(),e.createBlock(p,{key:0,modelValue:t.layer.show,"onUpdate:modelValue":c[0]||(c[0]=b=>t.layer.show=b),size:t.layer.width||"100%",title:t.layer.title,direction:"rtl","append-to-body":"","before-close":a,class:"drawer-content"},{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default"),c[2]||(c[2]=e.createElementVNode("p",{class:"mgt50"},null,-1)),t.layer.showButton?(e.openBlock(),e.createElementBlock("div",Kt,[e.renderSlot(s.$slots,"btn",{},()=>[e.createVNode(y,{onClick:a},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.$t("qu-xiao")),1)]),_:1}),e.createVNode(y,{type:"primary",loading:t.loading,onClick:e.unref(l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.$t("ti-jiao")),1)]),_:1},8,["loading","onClick"])])])):e.createCommentVNode("",!0)]),_:3},8,["modelValue","size","title"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",Wt,[e.createVNode(C,{"close-on-click-modal":!1,modelValue:t.layer.show,"onUpdate:modelValue":c[1]||(c[1]=b=>t.layer.show=b),title:t.layer.title,width:t.layer.width||500,center:""},e.createSlots({default:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:2},[t.layer.showButton?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"btn",{},()=>[e.createVNode(y,{onClick:a},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.$t("qu-xiao")),1)]),_:1}),e.createVNode(y,{type:"primary",onClick:e.unref(l)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.$t("ti-jiao")),1)]),_:1},8,["onClick"])])]),key:"0"}:void 0]),1032,["modelValue","title","width"])])),[[e.unref(Ht),t.layer.show]])}}};function Gt(t,o={}){const n=re(),r={inForm:!0,required:!0,...o},i={phone:/^1(3[0-9]|4[01456879]|5[0-35-9]|6[2567]|7[0-8]|8[0-9]|9[0-35-9])\d{8}$/,password:/(?=.*\d)(?=.*[a-zA-Z])(?=.*[^a-zA-Z0-9]).{8,12}/,email:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/}[t],{inForm:l,value:a,required:s,msg:c=n("validate.invalidInput")}=r;return l?function(y,p,C){if(s){i.test(p)?C():C(new Error(c));return}p&&!i.test(p)?C(new Error(c)):C()}:i.test(a)}class Jt{constructor(o={}){this.config={clientCode:o.clientCode||"one-portal",casServerUrl:`https://one-portal${o.isTest?"-test":""}.joy-group.com/api`,casPortalUrl:`https://one-portal${o.isTest?"-test":""}.joy-group.com`,serviceUrl:o.serviceUrl||window.location.origin+"/cas/callback",tokenKey:o.tokenKey||"one_portal_token",userKey:o.userKey||"one_portal_user",debug:o.debug||!1,autoLogin:o.autoLogin!==!1,loginCallback:o.loginCallback||null,logoutCallback:o.logoutCallback||null,errorCallback:o.errorCallback||null},this.token=null,this.user=null,this.init()}init(){this.log("OnePortal CAS SDK 初始化中..."),this.loadFromStorage();const n=new URLSearchParams(window.location.search).get("ticket");this.isLoggedIn()&&this.config.loginCallback?this.config.loginCallback(this.user,this.token):n?(this.log("检测到ST票据:",n),this.validateTicket(n)):this.config.autoLogin&&!this.isLoggedIn()&&(this.log("用户未登录,准备跳转到CAS登录页面"),this.login())}loadFromStorage(){try{this.token=localStorage.getItem(this.config.tokenKey);const o=localStorage.getItem(this.config.userKey);o&&(this.user=JSON.parse(o)),this.log("从本地存储加载数据:",{token:!!this.token,user:!!this.user})}catch(o){this.log("加载本地存储数据失败:",o)}}saveToStorage(){try{this.token&&localStorage.setItem(this.config.tokenKey,this.token),this.user&&localStorage.setItem(this.config.userKey,JSON.stringify(this.user)),this.log("数据已保存到本地存储")}catch(o){this.log("保存到本地存储失败:",o)}}clearStorage(){try{localStorage.removeItem(this.config.tokenKey),localStorage.removeItem(this.config.userKey),this.log("本地存储已清除")}catch(o){this.log("清除本地存储失败:",o)}}isLoggedIn(){return!!(this.token&&this.user)}getUser(){return this.user}getToken(){return this.token}login(){const o=`${this.config.casPortalUrl}?appCode=${this.config.clientCode}&redirectUrl=${encodeURIComponent(this.config.serviceUrl)}`;this.log("跳转到CAS登录页面:",o),window.location.href=o}async validateTicket(o){try{this.log("验证ST票据:",o);const n=await fetch(`${this.config.casServerUrl}/auth/validateST?ticket=${o}`,{method:"GET",headers:{"Content-Type":"application/json"}});if(!n.ok)throw new Error(`HTTP ${n.status}: ${n.statusText}`);const r=await n.json();if(r.success&&r.data)return this.token=r.data.token,this.user=r.data.user,this.saveToStorage(),this.clearTicketFromUrl(),this.log("ST票据验证成功,用户登录成功:",this.user),this.config.loginCallback&&this.config.loginCallback(this.user,this.token),!0;throw new Error(r.message||"ST票据验证失败")}catch(n){return this.log("ST票据验证失败:",n),this.handleError(n),!1}}clearTicketFromUrl(){const o=new URL(window.location);o.searchParams.delete("ticket"),window.history.replaceState({},document.title,o.toString())}async logout(o=!0){try{if(this.log("用户登出"),this.token)try{await fetch(`${this.config.casServerUrl}/auth/logout`,{method:"POST",headers:{AppId:this.config.clientCode,Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"}})}catch(n){this.log("调用服务端登出接口失败:",n)}this.token=null,this.user=null,this.clearStorage(),this.config.logoutCallback&&this.config.logoutCallback(),o&&this.login()}catch(n){this.log("登出失败:",n),this.handleError(n)}}async request(o,n={}){const r={headers:{"Content-Type":"application/json",...n.headers},...n};r.headers.appId=this.config.clientCode,this.token&&(r.headers.Authorization=`Bearer ${this.token}`);try{const i=await fetch(o,r);return i.status===401?(this.log("Token已过期,需要重新登录"),this.logout(),null):i}catch(i){throw this.log("请求失败:",i),i}}async fetchUserInfo(){try{const o=await this.request(`${this.config.casServerUrl}/auth/user`);if(o&&o.ok){const n=await o.json();if(n.success&&n.data)return this.user=n.data,this.saveToStorage(),this.user}return null}catch(o){return this.log("获取用户信息失败:",o),null}}async refreshToken(){this.log("Token刷新功能暂未实现")}handleError(o){this.log("发生错误:",o),this.config.errorCallback&&this.config.errorCallback(o)}log(...o){this.config.debug&&console.log("[OnePortal CAS SDK]",...o)}checkLoginStatus(){return!this.isLoggedIn()&&this.config.autoLogin?(this.login(),!1):this.isLoggedIn()}setConfig(o,n){this.config[o]=n}getConfig(o){return this.config[o]}}function xe(t,o=2,n=".",r=","){(t==null||t==="")&&(t=0);const i=Number(t);isNaN(i)?t=0:t=i,o=Math.max(0,Math.floor(o));const a=t.toFixed(o).split(".");let s=a[0];const c=a[1],y=s.startsWith("-");return y&&(s=s.slice(1)),s=s.replace(/\B(?=(\d{3})+(?!\d))/g,r),y&&(s="-"+s),o>0?s+n+c:s}function Ze(t,o=2){return xe(t,o)}function Ge(t,o=2){(t==null||t==="")&&(t=0);const n=Number(t);isNaN(n)?t=0:t=n;const r=t*100;return xe(r,o)+"%"}function Xt(t,o={}){const r=Object.assign({manual:!1,log:!1,params:null,format:null},o),{manual:i,log:l,params:a={},cb:s,format:c}=r,y=e.ref([]),p=e.ref(!1),C=b=>{const g=b||a;p.value=!0,t(g).then(h=>{const{code:d,data:w,msg:k}=h;if(s){const{records:S,rows:_}=w||{},T=S||_?S||_:w;y.value=Ie(T,c),s(h)}if(w){if(w.records!=null||w.rows!=null){const{records:S,rows:_,total:T=0}=w||{};g&&g.total!=null&&(a.total=parseInt(T)),y.value=Ie(S||_||[],c)}else y.value=Ie(w,c);l&&console.log("useRequest-res",y.value)}}).catch(h=>{s&&(console.log("useRequestErr",h),s({code:500}))}).finally(()=>{p.value=!1})};return i||C(),[p,y,C]}function Qt(t){const o=e.ref(t),n=e.ref(""),r=e.ref("");return e.watch(o,i=>{const l=i||["",""];n.value=l[0],r.value=l[1]}),[o,n,r]}function eo(t){return Object.prototype.toString.call(t).slice(8,-1).toLowerCase()}function Ie(t,o){if(!o)return t;if(t instanceof Array)return t.map(r=>{let i={};return o.forEach(l=>i[l]=r[l]),i});let n={};return o.forEach(r=>n[r]=t[r]),n}function to(t,o=[]){const{locale:n}=te.useI18n(),r=e.ref(t());return e.watch([n,...o],()=>{r.value=t()},{immediate:!0}),r}function oo(t,o="zh_cn",n="en_us"){if(!t)return"-";const r={en_us:n,zh_cn:o},l=we().global.locale.value;return t[r[l]]||t[o]||"-"}function no(t,o){let n=oe.mapState;return typeof t=="string"&&t.length>0&&(n=oe.createNamespacedHelpers(t).mapState),Je(o,n)}function lo(t,o){let n=oe.mapGetters;return typeof t=="string"&&t.length>0&&(n=oe.createNamespacedHelpers(t).mapGetters),Je(o,n)}function ao(t,o){let n=oe.mapActions;return typeof t=="string"&&t.length>0&&(n=oe.createNamespacedHelpers(t).mapActions),ro(o,n)}function Je(t,o){const n=oe.useStore(),r=o(t),i={};return Object.keys(r).forEach(l=>{const a=r[l].bind({$store:n});i[l]=e.computed(a)}),i}function ro(t,o){const n=oe.useStore(),r=o(t),i={};return Object.keys(r).forEach(l=>{i[l]=r[l].bind({$store:n})}),i}function ke(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!e.isVNode(t)}function Xe(){ne.VxeUI.formats.add("formatNumber",{cellFormatMethod({cellValue:t},o=2){return xe(t,o)}}),ne.VxeUI.formats.add("formatMoney",{cellFormatMethod({cellValue:t},o=2){return Ze(t,o)}}),ne.VxeUI.formats.add("formatPercent",{cellFormatMethod({cellValue:t},o=2){return Ge(t,o)}})}function Qe(){ne.VxeUI.renderer.add("Enum",{renderTableDefault(t,o){let n;if([null,void 0].includes(o.row[o.column.field]))return"-";const r=o.row[o.column.field];if(t.type=="tag"){let i;return e.createVNode(e.resolveComponent("el-text"),{type:t.enum.getTag(r)},ke(i=t.enum.getName(r))?i:{default:()=>[i]})}return e.createVNode(e.resolveComponent("el-text"),null,ke(n=t.enum.getName(r))?n:{default:()=>[n]})}}),ne.VxeUI.renderer.add("InputNumber",{renderTableDefault(t,o){return e.createVNode(Z.ElInputNumber,e.mergeProps({modelValue:o.row[o.column.field],"onUpdate:modelValue":n=>o.row[o.column.field]=n},t.props,{"step-strictly":!0,"value-on-clear":0}),null)}}),ne.VxeUI.renderer.add("TrueFalse",{renderTableDefault(t,o){const{locale:n}=te.useI18n();let r=n.value=="zh_cn";return e.createVNode(Z.ElText,{type:o.row[o.column.field]?"success":"danger"},{default:()=>[o.row[o.column.field]?r?"是":"YES":r?"否":"NO"]})}}),ne.VxeUI.renderer.add("I18n",{renderTableDefault(t,o){const{locale:n}=te.useI18n();let r=n.value=="zh_cn"?o.column.field:t.fieldEn;return o.row[r]||o.row[o.column.field]}}),ne.VxeUI.renderer.add("Link",{renderTableDefault(t,o){let n=o.column.field;const r=De.useRouter(),{multiple:i,to:l,openType:a="system"}=t,s=o.row[n];function c(y,p){a=="blank"?window.open(y):r.push({path:y,query:{[n]:p}})}if(i){const y=(s==null?void 0:s.split(","))||[];return y.map((p,C)=>e.createVNode("span",null,[e.createVNode(Z.ElLink,{underline:"never",type:"primary",onclick:()=>c(a=="stystem"?l:p,p)},ke(p)?p:{default:()=>[p]}),C<y.length-1?",":""]))}return e.createVNode(Z.ElLink,{underline:"never",type:"primary",onclick:()=>c(a=="stystem"?l:s,s)},ke(s)?s:{default:()=>[s]})}})}function io(){Xe(),Qe()}m.CmpDictionary=Re,m.CmpIcon=Ee,m.ConfrimButton=Dt,m.DownExcelTemp=Yt,m.ImportButton=zt,m.LayOutForm=lt,m.Layer=Zt,m.ListPage=Ut,m.OnePortalCasSDK=Jt,m.SearchBar=Ue,m.StatusMap=Ve,m._toRaw=wt,m._typeOf=eo,m.arrToStatusMap=kt,m.arrayToTree=xt,m.checkFileSize=$t,m.creatValidator=Gt,m.createImportFields=Et,m.createListPageId=Vt,m.en_us=be,m.exportExcel=dt,m.exportExcelMuilti=je,m.formatMoney=Ze,m.formatNumber=xe,m.formatPercent=Ge,m.getI18n=we,m.getI18nT=re,m.getListPageConfig=He,m.getLocaleValue=oo,m.getValueBykey=Tt,m.importExcel=ct,m.importExcelMuilti=Ae,m.messages=Oe,m.registerVxeFormatters=Xe,m.registerVxePlugins=io,m.registerVxeRenderers=Qe,m.resetListPageConfig=jt,m.setListPageConfig=At,m.setupI18n=qe,m.sleep=bt,m.stringToArray=$e,m.stripHtmlTags=_t,m.unicode2Str=St,m.useActions=ao,m.useDatePicker=Qt,m.useGetters=lo,m.useI18nReState=to,m.useRequest=Xt,m.useState=no,m.zh_cn=Ce,Object.defineProperty(m,Symbol.toStringTag,{value:"Module"})});
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .cmp-icon[data-v-078a95a6],.cmp-icon[data-v-733f9daa]{padding:0!important}.confirm-button-wrapper[data-v-24cb35fd],.ImportButton[data-v-ea0a4c60]{display:inline-block;line-height:1;vertical-align:middle}.searchBar-container .searchBar[data-v-db6f71dd]{overflow:hidden;transition:all .3s}.searchBar-container[data-v-db6f71dd] .el-form-item{margin-bottom:8px!important}.searchBar-container .btns[data-v-db6f71dd]{display:flex;justify-content:space-between;align-items:center}.searchBar-container .btns .left[data-v-db6f71dd]{display:flex;align-items:center}.searchBar-container .btns .left[data-v-db6f71dd] .el-tabs__header{margin:0}.searchBar-container .btns .right[data-v-db6f71dd]{display:flex;align-items:center;text-align:right}[data-v-c022c16d] .vxe-table-custom-wrapper.placement--top-right.is--active{max-height:400px!important}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column{-webkit-user-select:none;user-select:none}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-selected{background-color:#409eff26!important;position:relative}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-border-top:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background-color:#409eff;pointer-events:none;z-index:10}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-border-bottom:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background-color:#409eff;pointer-events:none;z-index:10}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-border-left{border-left:1px solid #409eff!important}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-border-right{border-right:1px solid #409eff!important}.drawer-content .drawer-btn{position:absolute;box-sizing:border-box;bottom:0;width:100%;text-align:right;padding:10px 60px 20px 20px;background-color:#fff;z-index:10}
1
+ .cmp-icon[data-v-12794201],.cmp-icon[data-v-733f9daa]{padding:0!important}.confirm-button-wrapper[data-v-24cb35fd],.ImportButton[data-v-ea0a4c60]{display:inline-block;line-height:1;vertical-align:middle}.searchBar-container .searchBar[data-v-db6f71dd]{overflow:hidden;transition:all .3s}.searchBar-container[data-v-db6f71dd] .el-form-item{margin-bottom:8px!important}.searchBar-container .btns[data-v-db6f71dd]{display:flex;justify-content:space-between;align-items:center}.searchBar-container .btns .left[data-v-db6f71dd]{display:flex;align-items:center}.searchBar-container .btns .left[data-v-db6f71dd] .el-tabs__header{margin:0}.searchBar-container .btns .right[data-v-db6f71dd]{display:flex;align-items:center;text-align:right}[data-v-c022c16d] .vxe-table-custom-wrapper.placement--top-right.is--active{max-height:400px!important}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column{-webkit-user-select:none;user-select:none}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-selected{background-color:#409eff26!important;position:relative}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-border-top:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background-color:#409eff;pointer-events:none;z-index:10}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-border-bottom:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background-color:#409eff;pointer-events:none;z-index:10}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-border-left{border-left:1px solid #409eff!important}[data-v-c022c16d] .vxe-table.cell-copy-enabled .vxe-body--column.cell-border-right{border-right:1px solid #409eff!important}.drawer-content .drawer-btn{position:absolute;box-sizing:border-box;bottom:0;width:100%;text-align:right;padding:10px 60px 20px 20px;background-color:#fff;z-index:10}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "joy-admin-components",
3
- "version": "0.2.72",
3
+ "version": "0.2.73",
4
4
  "main": "./dist/joy-admin-components.umd.js",
5
5
  "module": "./dist/joy-admin-components.es.js",
6
6
  "types": "./src/index.d.ts",