1 |
- import{d as R,m as _,o as i,A as U,x as C,a as p,c as N,u as S,dd as b,_ as A,de as D,cb as L}from"./index.b5c844d0.js";import{r as j,u as n}from"./xlsx.ed122d16.js";const M={key:0,class:"el-upload__text"},K=R({__name:"execl-upload",emits:["onSuccess"],setup(z,{expose:f,emit:m}){const x=_(null),c=_(null),v=m,g=e=>{const o=e.raw;!o||h(o)},h=e=>{u(e)&&k(e)},k=async e=>{const o=D.service({lock:!0,text:"Loading",background:"rgba(0, 0, 0, 0.7)"});return new Promise(a=>{const s=new FileReader;s.onload=l=>{const t=l.target.result,r=j(t,{type:"array"}),B=r.SheetNames[0],d=r.Sheets[B],w=y(d),F=n.sheet_to_json(d,{defval:""});v("onSuccess",{header:w,results:F}),o.close(),a({isok:!0})},s.readAsArrayBuffer(e)})},y=e=>{const o=[],a=n.decode_range(e["!ref"]);let s;const l=a.s.r;for(s=a.s.c;s<=a.e.c;++s){const t=e[n.encode_cell({c:s,r:l})];let r="UNKNOWN "+s;t&&t.t&&(r=n.format_cell(t)),o.push(r)}return o},u=async e=>e.size/1024<500?!0:(L.warning("\u8BF7\u4E0D\u8981\u4E0A\u4F20\u5927\u4E8E500KB\u7684\u6587\u4EF6"),!1),E=()=>c.value=null;return f({onDisplay:()=>c.value=null}),(e,o)=>(i(),U(S(b),{ref_key:"uploadRef",ref:x,action:"#",accept:".xls,.xlsx",drag:"","auto-upload":!1,onChange:g,onRemove:E,onBeforeUpload:u,multiple:""},{default:C(()=>[p(' class="execl-uploader" '),c.value?p("v-if",!0):(i(),N("div",M,"\u70B9\u51FB\u6B64\u5904,\u4E0A\u4F20\u6587\u4EF6"))]),_:1},512))}});var O=A(K,[["__scopeId","data-v-dec4647e"],["__file","D:/work/sjtj/report-v3/src/components/execlUpload/src/execl-upload.vue"]]);export{O as e};
|