import{d as t,r as e,J as n,a as r,b as o,e as i,p as a,m as s,n as u,t as l,u as c,v as f,F as d,x as h,q as g,A as p,C as v,H as m,Z as w,f as y}from"./index-Cu9ZRBys.js";import{i as E,d as A}from"./content.SYmDdoIV.js";import{_ as C}from"./_plugin-vue_export-helper.BCo6x5W8.js";var B={},I={},M={};let T;const N=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];M.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return 4*t+17},M.getSymbolTotalCodewords=function(t){return N[t]},M.getBCHDigit=function(t){let e=0;for(;0!==t;)e++,t>>>=1;return e},M.setToSJISFunction=function(t){if("function"!=typeof t)throw new Error('"toSJISFunc" is not a valid function.');T=t},M.isKanjiModeEnabled=function(){return void 0!==T},M.toSJIS=function(t){return T(t)};var b,P={};function R(){this.buffer=[],this.length=0}(b=P).L={bit:1},b.M={bit:0},b.Q={bit:3},b.H={bit:2},b.isValid=function(t){return t&&void 0!==t.bit&&t.bit>=0&&t.bit<4},b.from=function(t,e){if(b.isValid(t))return t;try{return function(t){if("string"!=typeof t)throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return b.L;case"m":case"medium":return b.M;case"q":case"quartile":return b.Q;case"h":case"high":return b.H;default:throw new Error("Unknown EC Level: "+t)}}(t)}catch(n){return e}},R.prototype={get:function(t){const e=Math.floor(t/8);return 1==(this.buffer[e]>>>7-t%8&1)},put:function(t,e){for(let n=0;n>>e-n-1&1))},getLengthInBits:function(){return this.length},putBit:function(t){const e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};var _=R;function L(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}L.prototype.set=function(t,e,n,r){const o=t*this.size+e;this.data[o]=n,r&&(this.reservedBit[o]=!0)},L.prototype.get=function(t,e){return this.data[t*this.size+e]},L.prototype.xor=function(t,e,n){this.data[t*this.size+e]^=n},L.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};var x=L,U={};!function(t){const e=M.getSymbolSize;t.getRowColCoords=function(t){if(1===t)return[];const n=Math.floor(t/7)+2,r=e(t),o=145===r?26:2*Math.ceil((r-13)/(2*n-2)),i=[r-7];for(let e=1;e=0&&t<=7},t.from=function(e){return t.isValid(e)?parseInt(e,10):void 0},t.getPenaltyN1=function(t){const n=t.size;let r=0,o=0,i=0,a=null,s=null;for(let u=0;u=5&&(r+=e+(o-5)),a=n,o=1),n=t.get(l,u),n===s?i++:(i>=5&&(r+=e+(i-5)),s=n,i=1)}o>=5&&(r+=e+(o-5)),i>=5&&(r+=e+(i-5))}return r},t.getPenaltyN2=function(t){const e=t.size;let r=0;for(let n=0;n=10&&(1488===o||93===o)&&n++,i=i<<1&2047|t.get(a,r),a>=10&&(1488===i||93===i)&&n++}return n*r},t.getPenaltyN4=function(t){let e=0;const n=t.data.length;for(let r=0;r=0;){const t=r[0];for(let i=0;i0){const t=new Uint8Array(this.degree);return t.set(n,r),t}return n};var Q=O,$={},Z={},X={isValid:function(t){return!isNaN(t)&&t>=1&&t<=40}},W={};const G="[0-9]+";let tt="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";tt=tt.replace(/u/g,"\\u");const et="(?:(?![A-Z0-9 $%*+\\-./:]|"+tt+")(?:.|[\r\n]))+";W.KANJI=new RegExp(tt,"g"),W.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),W.BYTE=new RegExp(et,"g"),W.NUMERIC=new RegExp(G,"g"),W.ALPHANUMERIC=new RegExp("[A-Z $%*+\\-./:]+","g");const nt=new RegExp("^"+tt+"$"),rt=new RegExp("^"+G+"$"),ot=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");W.testKanji=function(t){return nt.test(t)},W.testNumeric=function(t){return rt.test(t)},W.testAlphanumeric=function(t){return ot.test(t)},function(t){const e=X,n=W;t.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},t.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},t.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},t.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},t.MIXED={bit:-1},t.getCharCountIndicator=function(t,n){if(!t.ccBits)throw new Error("Invalid mode: "+t);if(!e.isValid(n))throw new Error("Invalid version: "+n);return n>=1&&n<10?t.ccBits[0]:n<27?t.ccBits[1]:t.ccBits[2]},t.getBestModeForData=function(e){return n.testNumeric(e)?t.NUMERIC:n.testAlphanumeric(e)?t.ALPHANUMERIC:n.testKanji(e)?t.KANJI:t.BYTE},t.toString=function(t){if(t&&t.id)return t.id;throw new Error("Invalid mode")},t.isValid=function(t){return t&&t.bit&&t.ccBits},t.from=function(e,n){if(t.isValid(e))return e;try{return function(e){if("string"!=typeof e)throw new Error("Param is not a string");switch(e.toLowerCase()){case"numeric":return t.NUMERIC;case"alphanumeric":return t.ALPHANUMERIC;case"kanji":return t.KANJI;case"byte":return t.BYTE;default:throw new Error("Unknown mode: "+e)}}(e)}catch(r){return n}}}(Z),function(t){const e=M,n=D,r=P,o=Z,i=X,a=e.getBCHDigit(7973);function s(t,e){return o.getCharCountIndicator(t,e)+4}function u(t,e){let n=0;return t.forEach(function(t){const r=s(t.mode,e);n+=r+t.getBitsLength()}),n}t.from=function(t,e){return i.isValid(t)?parseInt(t,10):e},t.getCapacity=function(t,r,a){if(!i.isValid(t))throw new Error("Invalid QR Code version");void 0===a&&(a=o.BYTE);const u=8*(e.getSymbolTotalCodewords(t)-n.getTotalCodewordsCount(t,r));if(a===o.MIXED)return u;const l=u-s(a,t);switch(a){case o.NUMERIC:return Math.floor(l/10*3);case o.ALPHANUMERIC:return Math.floor(l/11*2);case o.KANJI:return Math.floor(l/13);case o.BYTE:default:return Math.floor(l/8)}},t.getBestVersionForData=function(e,n){let i;const a=r.from(n,r.M);if(Array.isArray(e)){if(e.length>1)return function(e,n){for(let r=1;r<=40;r++)if(u(e,r)<=t.getCapacity(r,n,o.MIXED))return r}(e,a);if(0===e.length)return 1;i=e[0]}else i=e;return function(e,n,r){for(let o=1;o<=40;o++)if(n<=t.getCapacity(o,r,e))return o}(i.mode,i.getLength(),a)},t.getEncodedBits=function(t){if(!i.isValid(t)||t<7)throw new Error("Invalid QR Code version");let n=t<<12;for(;e.getBCHDigit(n)-a>=0;)n^=7973<=0;)r^=1335<0&&(n=this.data.substr(e),r=parseInt(n,10),t.put(r,3*o+1))};var ft=ct;const dt=Z,ht=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function gt(t){this.mode=dt.ALPHANUMERIC,this.data=t}gt.getBitsLength=function(t){return 11*Math.floor(t/2)+t%2*6},gt.prototype.getLength=function(){return this.data.length},gt.prototype.getBitsLength=function(){return gt.getBitsLength(this.data.length)},gt.prototype.write=function(t){let e;for(e=0;e+2<=this.data.length;e+=2){let n=45*ht.indexOf(this.data[e]);n+=ht.indexOf(this.data[e+1]),t.put(n,11)}this.data.length%2&&t.put(ht.indexOf(this.data[e]),6)};var pt=gt;const vt=Z;function mt(t){this.mode=vt.BYTE,this.data="string"==typeof t?(new TextEncoder).encode(t):new Uint8Array(t)}mt.getBitsLength=function(t){return 8*t},mt.prototype.getLength=function(){return this.data.length},mt.prototype.getBitsLength=function(){return mt.getBitsLength(this.data.length)},mt.prototype.write=function(t){for(let e=0,n=this.data.length;e=33088&&n<=40956)n-=33088;else{if(!(n>=57408&&n<=60351))throw new Error("Invalid SJIS character: "+this.data[e]+"\nMake sure your charset is UTF-8");n-=49472}n=192*(n>>>8&255)+(255&n),t.put(n,13)}};var Ct,Bt=At,It={exports:{}},Mt=It.exports=Ct={single_source_shortest_paths:function(t,e,n){var r={},o={};o[e]=0;var i,a,s,u,l,c,f,d=Ct.PriorityQueue.make();for(d.push(e,0);!d.empty();)for(s in a=(i=d.pop()).value,u=i.cost,l=t[a]||{})l.hasOwnProperty(s)&&(c=u+l[s],f=o[s],(void 0===o[s]||f>c)&&(o[s]=c,d.push(s,c),r[s]=a));if(void 0!==n&&void 0===o[n]){var h=["Could not find a path from ",e," to ",n,"."].join("");throw new Error(h)}return r},extract_shortest_path_from_predecessor_list:function(t,e){for(var n=[],r=e;r;)n.push(r),t[r],r=t[r];return n.reverse(),n},find_path:function(t,e,n){var r=Ct.single_source_shortest_paths(t,e,n);return Ct.extract_shortest_path_from_predecessor_list(r,n)},PriorityQueue:{make:function(t){var e,n=Ct.PriorityQueue,r={};for(e in t=t||{},n)n.hasOwnProperty(e)&&(r[e]=n[e]);return r.queue=[],r.sorter=t.sorter||n.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var n={value:t,cost:e};this.queue.push(n),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return 0===this.queue.length}}};!function(t){const e=Z,n=ft,r=pt,o=wt,i=Bt,a=W,s=M,u=Mt;function l(t){return unescape(encodeURIComponent(t)).length}function c(t,e,n){const r=[];let o;for(;null!==(o=t.exec(n));)r.push({data:o[0],index:o.index,mode:e,length:o[0].length});return r}function f(t){const n=c(a.NUMERIC,e.NUMERIC,t),r=c(a.ALPHANUMERIC,e.ALPHANUMERIC,t);let o,i;s.isKanjiModeEnabled()?(o=c(a.BYTE,e.BYTE,t),i=c(a.KANJI,e.KANJI,t)):(o=c(a.BYTE_KANJI,e.BYTE,t),i=[]);return n.concat(r,o,i).sort(function(t,e){return t.index-e.index}).map(function(t){return{data:t.data,mode:t.mode,length:t.length}})}function d(t,a){switch(a){case e.NUMERIC:return n.getBitsLength(t);case e.ALPHANUMERIC:return r.getBitsLength(t);case e.KANJI:return i.getBitsLength(t);case e.BYTE:return o.getBitsLength(t)}}function h(t,a){let u;const l=e.getBestModeForData(t);if(u=e.from(a,l),u!==e.BYTE&&u.bit=0?t[t.length-1]:null;return n&&n.mode===e.mode?(t[t.length-1].data+=e.data,t):(t.push(e),t)},[])}(c))},t.rawSplit=function(e){return t.fromArray(f(e,s.isKanjiModeEnabled()))}}(ut);const Tt=M,Nt=P,bt=_,Pt=x,Rt=U,_t=S,Lt=F,xt=D,Ut=Q,St=$,kt=it,Ft=Z,Dt=ut;function zt(t,e,n){const r=t.size,o=kt.getEncodedBits(e,n);let i,a;for(i=0;i<15;i++)a=1==(o>>i&1),i<6?t.set(i,8,a,!0):i<8?t.set(i+1,8,a,!0):t.set(r-15+i,8,a,!0),i<8?t.set(8,r-i-1,a,!0):i<9?t.set(8,15-i-1+1,a,!0):t.set(8,15-i-1,a,!0);t.set(r-8,8,1,!0)}function Ht(t,e,n){const r=new bt;n.forEach(function(e){r.put(e.mode.bit,4),r.put(e.getLength(),Ft.getCharCountIndicator(e.mode,t)),e.write(r)});const o=8*(Tt.getSymbolTotalCodewords(t)-xt.getTotalCodewordsCount(t,e));for(r.getLengthInBits()+4<=o&&r.put(0,4);r.getLengthInBits()%8!=0;)r.putBit(0);const i=(o-r.getLengthInBits())/8;for(let a=0;a=0&&r<=6&&(0===o||6===o)||o>=0&&o<=6&&(0===r||6===r)||r>=2&&r<=4&&o>=2&&o<=4?t.set(e+r,i+o,!0,!0):t.set(e+r,i+o,!1,!0))}}(u,e),function(t){const e=t.size;for(let n=8;n=7&&function(t,e){const n=t.size,r=St.getEncodedBits(e);let o,i,a;for(let s=0;s<18;s++)o=Math.floor(s/3),i=s%3+n-8-3,a=1==(r>>s&1),t.set(o,i,a,!0),t.set(i,o,a,!0)}(u,e),function(t,e){const n=t.size;let r=-1,o=n-1,i=7,a=0;for(let s=n-1;s>0;s-=2)for(6===s&&s--;;){for(let n=0;n<2;n++)if(!t.isReserved(o,s-n)){let r=!1;a>>i&1)),t.set(o,s-n,r),i--,-1===i&&(a++,i=7)}if(o+=r,o<0||n<=o){o-=r,r=-r;break}}}(u,a),isNaN(r)&&(r=Lt.getBestMask(u,zt.bind(null,u,n))),Lt.applyMask(r,u),zt(u,n,r),{modules:u,version:e,errorCorrectionLevel:n,maskPattern:r,segments:o}}I.create=function(t,e){if(void 0===t||""===t)throw new Error("No input text");let n,r,o=Nt.M;return void 0!==e&&(o=Nt.from(e.errorCorrectionLevel,Nt.M),n=St.from(e.version),r=Lt.from(e.maskPattern),e.toSJISFunc&&Tt.setToSJISFunction(e.toSJISFunc)),Jt(t,n,o,r)};var Kt={},Yt={};!function(t){function e(t){if("number"==typeof t&&(t=t.toString()),"string"!=typeof t)throw new Error("Color should be defined as hex string");let e=t.slice().replace("#","").split("");if(e.length<3||5===e.length||e.length>8)throw new Error("Invalid hex color: "+t);3!==e.length&&4!==e.length||(e=Array.prototype.concat.apply([],e.map(function(t){return[t,t]}))),6===e.length&&e.push("F","F");const n=parseInt(e.join(""),16);return{r:n>>24&255,g:n>>16&255,b:n>>8&255,a:255&n,hex:"#"+e.slice(0,6).join("")}}t.getOptions=function(t){t||(t={}),t.color||(t.color={});const n=void 0===t.margin||null===t.margin||t.margin<0?4:t.margin,r=t.width&&t.width>=21?t.width:void 0,o=t.scale||4;return{width:r,scale:r?4:o,margin:n,color:{dark:e(t.color.dark||"#000000ff"),light:e(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}},t.getScale=function(t,e){return e.width&&e.width>=t+2*e.margin?e.width/(t+2*e.margin):e.scale},t.getImageWidth=function(e,n){const r=t.getScale(e,n);return Math.floor((e+2*n.margin)*r)},t.qrToImageData=function(e,n,r){const o=n.modules.size,i=n.modules.data,a=t.getScale(o,r),s=Math.floor((o+2*r.margin)*a),u=r.margin*a,l=[r.color.light,r.color.dark];for(let t=0;t=u&&n>=u&&t':"",u="0&&u>0&&t[s-1]||(r+=i?Ot("M",u+n,.5+l+n):Ot("m",o,0),o=0,i=!1),u+1',l='viewBox="0 0 '+a+" "+a+'"',c=''+s+u+"\n";return"function"==typeof n&&n(null,c),c};const Qt=function(){return"function"==typeof Promise&&Promise.prototype&&Promise.prototype.then},$t=I,Zt=Kt,Xt=qt;function Wt(t,e,n,r,o){const i=[].slice.call(arguments,1),a=i.length,s="function"==typeof i[a-1];if(!s&&!Qt())throw new Error("Callback required as last argument");if(!s){if(a<1)throw new Error("Too few arguments provided");return 1===a?(n=e,e=r=void 0):2!==a||e.getContext||(r=n,n=e,e=void 0),new Promise(function(o,i){try{const i=$t.create(n,r);o(t(i,e,r))}catch(a){i(a)}})}if(a<2)throw new Error("Too few arguments provided");2===a?(o=n,n=e,e=r=void 0):3===a&&(e.getContext&&void 0===o?(o=r,r=void 0):(o=r,r=n,n=e,e=void 0));try{const i=$t.create(n,r);o(null,t(i,e,r))}catch(u){o(u)}}B.create=$t.create,B.toCanvas=Wt.bind(null,Zt.render),B.toDataURL=Wt.bind(null,Zt.renderToDataURL),B.toString=Wt.bind(null,function(t,e,n){return Xt.render(t,n)});const Gt=C(t({__name:"reservation-detail",setup(t){const C=e(null),I=e(""),M=e(!1),T=e(!1),N=e("");const b=e([]);function P(){var t;const e=(null==(t=C.value)?void 0:t.qr_token)||"";e&&w({data:e})}async function R(t){if(t&&I.value){M.value=!0;try{C.value=await E(t,I.value),await async function(){var t;const e=null==(t=C.value)?void 0:t.qr_token;if(e)try{N.value=await B.toDataURL(e,{width:320,margin:1,errorCorrectionLevel:"M"})}catch{N.value=""}else N.value=""}(),function(){var t,e;const n=Math.max(1,Number((null==(t=C.value)?void 0:t.ticket_count)||1)),r=(null==(e=C.value)?void 0:e.visitor_name)||"观众";b.value=Array.from({length:n},(t,e)=>({label:1===n?r:`${r}${e+1}`,qr:N.value}))}()}catch(e){i({title:(null==e?void 0:e.message)||"加载详情失败",icon:"none"})}finally{M.value=!1}}}async function _(){var t;if(!(null==(t=C.value)?void 0:t.id)||!I.value)return;if("pending"!==C.value.status)return void i({title:"当前状态不可取消",icon:"none"});if((await y({title:"确认取消预约",content:"取消后将释放该日期占用名额,是否继续?",confirmText:"确认取消",confirmColor:"#ff7d00"})).confirm){T.value=!0;try{await A(C.value.id,I.value),i({title:"取消成功",icon:"success"}),await R(C.value.id)}catch(e){i({title:(null==e?void 0:e.message)||"取消失败",icon:"none"})}finally{T.value=!1}}}return n(t=>{const e=Number((null==t?void 0:t.id)||0);I.value=String((null==t?void 0:t.phone)||""),R(e)}),(t,e)=>{const n=a,i=g,w=p,y=m;return s(),r(n,{class:"page"},{default:o(()=>{var t;return[u(n,{class:"card"},{default:o(()=>[u(n,{class:"title"},{default:o(()=>{var t,e;return[l(c((null==(e=null==(t=C.value)?void 0:t.activity)?void 0:e.title)||"-"),1)]}),_:1}),u(n,{class:"meta"},{default:o(()=>{var t;return[l("预约编号:"+c((null==(t=C.value)?void 0:t.id)||"-"),1)]}),_:1}),u(n,{class:"meta"},{default:o(()=>{var t,e;return[l("场馆:"+c((null==(e=null==(t=C.value)?void 0:t.venue)?void 0:e.name)||"-"),1)]}),_:1}),u(n,{class:"meta"},{default:o(()=>{var t,e;return[l("预约日期:"+c((null==(e=null==(t=C.value)?void 0:t.activity_day)?void 0:e.activity_date)||"-"),1)]}),_:1}),u(n,{class:"meta"},{default:o(()=>{var t,e;return[l("状态:"+c((e=null==(t=C.value)?void 0:t.status,"pending"===e?"待核销":"verified"===e?"已核销":"cancelled"===e?"已取消":e||"-")),1)]}),_:1}),u(n,{class:"meta"},{default:o(()=>{var t;return[l("报名人:"+c((null==(t=C.value)?void 0:t.visitor_name)||"-"),1)]}),_:1}),u(n,{class:"meta"},{default:o(()=>{var t;return[l("手机:"+c((null==(t=C.value)?void 0:t.visitor_phone)||"-"),1)]}),_:1})]),_:1}),(null==(t=C.value)?void 0:t.qr_token)?(s(),r(n,{key:0,class:"card"},{default:o(()=>[u(n,{class:"sub-title"},{default:o(()=>[l("可扫入馆码")]),_:1}),(s(!0),f(d,null,h(b.value,(t,e)=>(s(),r(n,{class:"ticket",key:e},{default:o(()=>[u(n,{class:"ticket-head"},{default:o(()=>[u(i,null,{default:o(()=>{var t;return[l("入馆码:"+c(null==(t=C.value)?void 0:t.id)+" "+c(e+1),1)]}),_:2},1024),u(i,{class:"copy",onClick:P},{default:o(()=>[l("复制")]),_:1})]),_:2},1024),t.qr?(s(),r(w,{key:0,class:"qr",src:t.qr,mode:"aspectFit"},null,8,["src"])):(s(),r(n,{key:1,class:"tip"},{default:o(()=>[l("二维码生成中...")]),_:1})),u(n,{class:"qr-name"},{default:o(()=>[l(c(t.label),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})):v("",!0),u(n,{class:"action"},{default:o(()=>{var t;return[u(y,{class:"btn",disabled:"pending"!==(null==(t=C.value)?void 0:t.status)||T.value||M.value,onClick:_},{default:o(()=>[l(c(T.value?"取消中...":"取消预约"),1)]),_:1},8,["disabled"])]}),_:1})]}),_:1})}}}),[["__scopeId","data-v-f3245868"]]);export{Gt as default};