1 |
- import{d as m,p as _,i as f,o as g,f as n,g as l,m as p,B as x,I as w,e as h,r as b,k as c,bn as v,bo as S}from"./index-abe5b65a.js";import{C as q}from"./index-fc58b782.js";import{C as i}from"./index-62d15662.js";const I="_paydefine_gyhp9_1",B="_amount_gyhp9_16",r={paydefine:I,amount:B,"error-text":"_error-text_gyhp9_27","error-icon":"_error-icon_gyhp9_34"},T=m({name:"pay-define",setup(){const t=_(),e=f({browserStatus:!1,errorText:"",code:null,pay_channel:t.query.pay_channel,wxAppId:t.query.wxAppId,body:t.query.body,price:t.query.price,orderNo:t.query.orderNo,userId:t.query.userId,payInfo:{}}),u=async()=>{try{if(parseFloat(e.price)<=0){h("支付金额异常");return}const o={merOrderNo:e.orderNo,paymentChannel:e.pay_channel,userId:e.userId};e.pay_channel=="wx_pub"&&(o.code=e.code),console.log(o,"payMap");const{data:a}=await b.post("/edu-app/open/userOrder/executePayment",{hideLoading:!1,data:{...o}});console.log(a,"payment"),d(a.reqParams)}catch(o){console.log(o)}},d=o=>{if(e.pay_channel=="alipay_qr"){const a=o.prod_mode==="false"?o.expend.qrcode_url+"?payment_id="+o.id+"&pay_channel="+o.pay_channel:o.expend.qrcode_url;window.location.href=a}else if(e.pay_channel=="wx_pub"){const a=JSON.parse(o.expend.pay_info);e.payInfo=a,typeof window.WeixinJSBridge>"u"?document.addEventListener?document.addEventListener("WeixinJSBridgeReady",s,!1):document.attachEvent&&document.attachEvent("WeixinJSBridgeReady",s)(document).attachEvent("onWeixinJSBridgeReady",s):s()}},s=()=>{const o=e.payInfo;window.WeixinJSBridge.invoke("getBrandWCPayRequest",{appId:o.appId,timeStamp:o.timeStamp,nonceStr:o.nonceStr,package:o.package,signType:o.signType,paySign:o.paySign},a=>{a.err_msg=="get_brand_wcpay_request:cancel"||a.err_msg=="get_brand_wcpay_request:fail",window.location.replace(location.origin+"/classroom-app/#/payment-result?orderNo="+e.orderNo)})},y=()=>{const o=e.pay_channel;if(c().weixin)if(o==="wx_pub"){const a=v();console.log(a),a?e.code=a:S(e.wxAppId),e.browserStatus=!0,document.title="微信支付"}else o=="alipay_qr"&&(e.errorText="请使用支付宝扫码");else c().alipay?o==="wx_pub"?e.errorText="请使用微信扫码":o=="alipay_qr"&&(e.browserStatus=!0,document.title="支付宝支付"):e.errorText="请在微信或支付宝客户端打开";e.errorText&&(document.title="ERROR")};return g(()=>{console.log(e),y()}),()=>n("div",{class:r.paydefine},[e.browserStatus&&n("div",{class:r.container},[n("div",{class:r.amount},[n("span",null,[l("¥ ")]),p(e.price)]),n(q,{inset:!0},{default:()=>[n(i,{title:"订单信息",value:e.body,valueClass:r.values},null),n(i,{title:"支付方式",value:e.pay_channel==="wx_pub"?"微信":"支付宝"},null),n(i,{title:"实付金额",value:`¥ ${p(e.price)}元`},null)]}),n(x,{type:"primary",block:!0,size:"large",onClick:u,round:!0},{default:()=>[l("立即支付")]})]),!e.browserStatus&&n("div",{class:r.container},[n("div",{class:r["error-text"]},[e.errorText&&n(w,{class:r["error-icon"],name:"warning-o"},null),e.errorText])])])}});export{T as default};
|