newfront/dist/js/320.431654cc.js
2025-12-14 00:03:37 +08:00

2 lines
5.4 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"use strict";(self["webpackChunknewfront"]=self["webpackChunknewfront"]||[]).push([[320],{5320:function(a,s,t){t.r(s),t.d(s,{default:function(){return U}});var i=t(6768),e=t(4232);const c={class:"subscribe-page"},n={class:"container"},o={class:"content-section"},r={class:"subscribe-card"},d={class:"card-footer"},l=["disabled"],h={key:0,class:"modal-overlay"},u={class:"payment-modal"},p={class:"modal-header"},b={class:"modal-body"},v={class:"qr-container"},k=["src"],f={key:1,class:"loading-qr"},L={class:"notification-area"},g={class:"modal-footer"},y=["disabled"];function m(a,s,t,m,w,C){const P=(0,i.g2)("Navbar");return(0,i.uX)(),(0,i.CE)("div",c,[(0,i.bF)(P),(0,i.Lk)("div",n,[s[4]||(s[4]=(0,i.Lk)("div",{class:"header-section"},[(0,i.Lk)("h1",{class:"page-title"},"支持我们"),(0,i.Lk)("div",{class:"control-card"},[(0,i.Lk)("p",{class:"description"},"所有赞助收入都将用于网站服务的维护")])],-1)),(0,i.Lk)("div",o,[(0,i.Lk)("div",r,[s[3]||(s[3]=(0,i.Fv)('<div class="card-header" data-v-3ea0acbe><h2 data-v-3ea0acbe>赞助服务</h2><div class="price" data-v-3ea0acbe><span class="currency" data-v-3ea0acbe>¥</span><span class="integer" data-v-3ea0acbe>9</span><span class="decimal" data-v-3ea0acbe>.90</span></div></div><div class="card-body" data-v-3ea0acbe><ul class="privileges-list" data-v-3ea0acbe><li data-v-3ea0acbe><span class="icon" data-v-3ea0acbe>🚀</span><span class="text" data-v-3ea0acbe>高速下载通道</span></li><li data-v-3ea0acbe><span class="icon" data-v-3ea0acbe>💰</span><span class="text" data-v-3ea0acbe>5000东币</span></li><li data-v-3ea0acbe><span class="icon" data-v-3ea0acbe>💬</span><span class="text" data-v-3ea0acbe>100次课程评分追问机会</span></li><li data-v-3ea0acbe><span class="icon" data-v-3ea0acbe>✨</span><span class="text" data-v-3ea0acbe>炫彩昵称</span></li></ul></div>',2)),(0,i.Lk)("div",d,[(0,i.Lk)("button",{class:"purchase-btn",disabled:!C.canPurchase,onClick:s[0]||(s[0]=(...a)=>C.handlePurchase&&C.handlePurchase(...a))},(0,e.v_)(C.buttonText),9,l)])])])]),w.showPaymentModal?((0,i.uX)(),(0,i.CE)("div",h,[(0,i.Lk)("div",u,[(0,i.Lk)("div",p,[s[5]||(s[5]=(0,i.Lk)("h3",null,"扫码支付",-1)),(0,i.Lk)("button",{class:"close-btn",onClick:s[1]||(s[1]=(...a)=>C.closeModal&&C.closeModal(...a))},"×")]),(0,i.Lk)("div",b,[s[6]||(s[6]=(0,i.Lk)("p",{class:"instruction"},"请使用微信扫一扫支付",-1)),s[7]||(s[7]=(0,i.Lk)("p",{class:"sub-instruction"},"暂不支持保存图片到扫一扫打开",-1)),(0,i.Lk)("div",v,[w.qrUrl?((0,i.uX)(),(0,i.CE)("img",{key:0,src:w.qrUrl,alt:"支付二维码",class:"qr-code"},null,8,k)):((0,i.uX)(),(0,i.CE)("div",f,"二维码加载中..."))]),(0,i.Lk)("div",L,[(0,i.Lk)("p",{class:(0,e.C4)(["notification",w.notificationType])},(0,e.v_)(w.notification||"请在支付完成后点击下方按钮"),3)]),s[8]||(s[8]=(0,i.Lk)("div",{class:"support-area"},[(0,i.Lk)("p",{class:"support-text"},[(0,i.eW)("如果支付遇到问题,请务必"),(0,i.Lk)("a",{href:"/about",target:"_blank",class:"support-link"},"联系我们")])],-1))]),(0,i.Lk)("div",g,[(0,i.Lk)("button",{class:"complete-btn",disabled:w.isCheckingStatus,onClick:s[2]||(s[2]=(...a)=>C.checkPaymentStatus&&C.checkPaymentStatus(...a))},(0,e.v_)(w.isCheckingStatus?"查询中...":"支付完成"),9,y)])])])):(0,i.Q3)("",!0)])}var w=t(5302),C=t(8704),P=t(4373),A=t(4993),x={name:"Subscribe",components:{Navbar:w.A},data(){return{isLogin:!1,isVip:!1,loading:!0,showPaymentModal:!1,qrUrl:"",orderUuid:"",notification:"",notificationType:"info",isCheckingStatus:!1}},computed:{canPurchase(){return this.isLogin&&!this.isVip},buttonText(){return this.isLogin?this.isVip?"您已拥有":"立即购买":"请先登录"}},mounted(){this.checkLoginStatus(),document.title="支持我们 - NEU小站"},methods:{async checkLoginStatus(){const a=C.A.get("token");if(!a)return this.isLogin=!1,void(this.loading=!1);this.isLogin=!0,await this.checkVipStatus(),this.loading=!1},async checkVipStatus(){try{const a=C.A.get("token"),s=await P.A.get("https://newfront.xn--xhq44jb2fzpc.com/subscribe/vip",{headers:{Authorization:a}});this.isVip=s.data.is_vip}catch(a){console.error("获取VIP状态失败:",a)}},async handlePurchase(){if(this.canPurchase)try{const a=C.A.get("token"),s=await P.A.get("https://newfront.xn--xhq44jb2fzpc.com/subscribe/order",{headers:{Authorization:a}});this.qrUrl=s.data.qr_url,this.orderUuid=s.data.uuid,this.showPaymentModal=!0,this.notification=""}catch(a){a.response&&403===a.response.status?(this.isVip=!0,A.A.alert(a.response.data.error||"您已经是VIP了","提示")):(console.error("创建订单失败:",a),A.A.alert("创建订单失败,请稍后重试","错误"))}},async checkPaymentStatus(){if(this.orderUuid){this.isCheckingStatus=!0,this.notification="";try{const a=C.A.get("token"),s=await P.A.post("https://newfront.xn--xhq44jb2fzpc.com/subscribe/status",{uuid:this.orderUuid},{headers:{Authorization:a}});s.data.is_paid?(this.notification="支付成功,请稍后...",this.notificationType="success",this.isVip=!0,setTimeout((()=>{window.location.reload()}),3e3)):(this.notification="尚未检测到支付完成",this.notificationType="info")}catch(a){console.error("查询支付状态失败:",a),this.notification="查询失败,请重试",this.notificationType="error"}finally{this.isCheckingStatus=!1}}},closeModal(){this.showPaymentModal=!1,this.qrUrl="",this.orderUuid="",this.notification=""}}},S=t(1241);const q=(0,S.A)(x,[["render",m],["__scopeId","data-v-3ea0acbe"]]);var U=q}}]);
//# sourceMappingURL=320.431654cc.js.map