2 lines
23 KiB
JavaScript
2 lines
23 KiB
JavaScript
|
|
import{r as C,h as ns,U as vs,al as j,z as $,I as is,J as p,B as s,D as B,R as a,u as _,P as u,A as M,Q as K,a4 as ds,W as ts,aA as gs,m as fs,c as ls,ar as ys,O as Y,K as _s,M as os}from"./vue-vendor-164775a6.js";import ks from"./MyWorks-729e0951.js";import{h as bs,E as n,u as hs,q as Ps,d as Cs,v as ws,r as Is,t as Ss,x as rs,k as U}from"./element-plus-4a19e5e8.js";import{a as cs,b as us,t as $s,d as Ds,e as qs}from"./payments-ee5e732b.js";import{_ as ps,a as Es,u as xs}from"./index-2fb4354b.js";import{g as Ts}from"./members-fa2c2290.js";import"./userWorks-78cd305b.js";import"./utils-edfcd65b.js";const As={class:"payment-content"},Ms={class:"payment-methods"},Ns={class:"method-icon alipay-icon"},Vs={class:"amount-section"},Us={class:"amount-value"},Ls={class:"qr-section"},Rs={class:"qr-code"},zs={ref:"qrPlaceholder",class:"qr-placeholder"},Bs={class:"qr-grid"},Os={class:"action-section"},Hs={class:"test-payment-section",style:{"margin-top":"16px","text-align":"center"}},Fs=["disabled"],Gs={class:"footer-link"},Ws={__name:"PaymentModal",props:{modelValue:{type:Boolean,default:!1},title:{type:String,default:"标准版会员"},amount:{type:[String,Number],default:"32.00"},orderId:{type:String,default:""}},emits:["update:modelValue","pay-success","pay-error"],setup(O,{emit:D}){const v=O,g=D,k=C(!1),w=C("alipay"),N=C(!1),L=C(null);let R=null;ns(()=>v.modelValue,i=>{k.value=i,i&&ss()}),ns(k,i=>{g("update:modelValue",i),i||q()});const Z=i=>{w.value=i},ss=async()=>{var i,t,E,x,b,V;try{N.value=!0,n.info("正在创建支付订单...");const c={orderId:v.orderId,amount:v.amount.toString(),method:"ALIPAY",description:`${v.title} - 支付宝支付`};console.log("=== 开始支付流程 ==="),console.log("支付数据:",c),console.log("1. 创建支付订单...");const T=await cs(c);if(console.log("创建支付订单响应:",T),T.data&&T.data.success){const A=T.data.data.id;L.value=A,console.log("2. 支付订单创建成功,ID:",A),n.info("正在生成支付宝二维码..."),console.log("3. 创建支付宝支付...");const h=await us({paymentId:A});if(console.log("支付宝支付响应:",h),console.log("支付宝支付响应数据:",h.data),console.log("支付宝支付响应数据详情:",JSON.stringify(h.data,null,2)),h.data&&h.data.success){const W=h.data.data.qrCode;console.log("4. 支付宝二维码:",W);try{console.log("开始生成二维码,内容:",W);const X=`https://quickchart.io/qr?text=${encodeURIComponent(W)}&size=200&margin=0&dark=ffffff&light=1a1a1a`;console.log("5. 二维码图片URL已生成");const J=document.querySelector("#qr-code-img");J&&(J.src=X,J.style.display="block",console.log("6. 二维码图片已设置"));const Q=document.querySelector(".qr-placeholder");Q&&(Q.style.display="none",console.log("7. 模拟二维码已隐藏")),n.success("二维码已生成,请使用支付宝扫码支付"),console.log("=== 支付流程完成,开始轮询支付状态 ==="),es(A)}catch(X){console.error("生成二维码失败:",X),n.error("生成二维码失败,请重试")}}else console.error("支付宝响应失败:",h),n.error(((i=h.data)==null?void 0:i.message)||"生成二维码失败"),g("pay-error",new Error(((t=h.data)==null?void 0:t.message)||"生成二维码失败"))}else console.error("创建支付订单失败:",T),n.error(((E=T.data)==null?void 0:E.message)||"创建支付订单失败"),g("pay-error",new Error(((x=T.data)==null?void 0:x.message)||"创建支付订单失败"))}catch(c){console.error("=== 支付流程出错 ==="),console.error("错误详情:",c),console.error("错误响应:",c.response),console.error("错误状态:",(b=c.response)==null?void 0:b.status),console.error("错误数据:",(V=c.response)==null?void 0:V.data),n.error(`支付失败:${c.message||"请重试"}`),g("pay-error",c)}finally{N.value=!1}},es=i=>{q();let t=0;const E=60,x=async()=>{if(t>=E){console.log("轮询达到最大次数,停止轮询"),q();return}try{console.log(`轮询支付状态 (${t+1}/${E}),支付ID:`,i);const b=await Ds(i);if(b.data&&b.data.success){const V=b.data.data,c=V.status;if(cons
|