edu/public/mobile/assets/packages-pages-recharge-rec...

2 lines
15 KiB
JavaScript

var e=Object.defineProperty;import{d as t,A as a,o as s,c as l,w as r,b as i,h as o,x as n,E as u,l as d,t as c,g as p,s as h,k as f,y as m,r as y,a as _,a_ as b,a$ as g,aj as w,z as x,aR as v,a8 as S,ad as C,N as D,e as k,F as z,f as I,af as A,b0 as P,b1 as $,aA as N,H as j,a1 as E,m as V,W as L,aa as U,I as F,i as R}from"./index.a5551c62.js";import{_ as W}from"./u-button.aaedd45e.js";import{_ as B,a as O,b as T,g as M,p as H}from"./pay.89f91c66.js";import{f as q,s as X}from"./util.829234cb.js";import{_ as G}from"./plugin-vue_export-helper.21dcd24c.js";import{_ as Y}from"./u-icon.c4c66c2b.js";import{E as J}from"./emitter.5b880544.js";import{_ as K}from"./u-popup.0da83ff5.js";import{u as Q}from"./useLockFn.140c6c7b.js";import{r as Z,a as ee}from"./recharge.243013a8.js";var te=G(t({__name:"price",props:{content:{default:""},prec:{default:2},autoPrec:{type:Boolean,default:!0},color:{default:"#FA8919"},mainSize:{default:"36rpx"},minorSize:{default:"28rpx"},lineThrough:{type:Boolean,default:!1},fontWeight:{default:"normal"},prefix:{default:"¥"},suffix:{default:""}},setup(e){const t=e,y=a((()=>q({price:t.content,take:"int"}))),_=a((()=>{let e=q({price:t.content,take:"dec",prec:t.prec});return e=e%10==0?e.substr(0,e.length-1):e,t.autoPrec?1*e?"."+e:"":t.prec?"."+e:""}));return(t,a)=>{const b=f,g=m;return s(),l(b,{class:"price-container"},{default:r((()=>[i(b,{class:h(["price-wrap",{"price-wrap--disabled":e.lineThrough}]),style:n({color:e.color})},{default:r((()=>[o(" Prefix "),i(b,{class:"fix-pre",style:n({fontSize:e.minorSize})},{default:r((()=>[u(t.$slots,"prefix",{},(()=>[d(c(e.prefix),1)]),!0)])),_:3},8,["style"]),o(" Content "),i(b,{style:n({"font-weight":e.fontWeight})},{default:r((()=>[o(" Integer "),i(g,{style:n({fontSize:e.mainSize})},{default:r((()=>[d(c(p(y)),1)])),_:1},8,["style"]),o(" Decimals "),i(g,{style:n({fontSize:e.minorSize})},{default:r((()=>[d(c(p(_)),1)])),_:1},8,["style"])])),_:1},8,["style"]),o(" Suffix "),i(b,{class:"fix-suf",style:n({fontSize:e.minorSize})},{default:r((()=>[u(t.$slots,"suffix",{},(()=>[d(c(e.suffix),1)]),!0)])),_:3},8,["style"])])),_:3},8,["class","style"])])),_:3})}}}),[["__scopeId","data-v-171c6bc6"]]);var ae=G({name:"u-radio",emits:["change"],props:{name:{type:[String,Number],default:""},size:{type:[String,Number],default:34},shape:{type:String,default:""},disabled:{type:[String,Boolean],default:""},labelDisabled:{type:[String,Boolean],default:""},activeColor:{type:String,default:""},iconSize:{type:[String,Number],default:""},labelSize:{type:[String,Number],default:""}},data:()=>({parentData:{iconSize:null,labelDisabled:null,disabled:null,shape:null,activeColor:null,size:null,width:null,height:null,value:null,wrap:null}}),created(){this.parent=!1,this.updateParentData(),this.parent.children.push(this)},computed:{elDisabled(){return""!==this.disabled?this.disabled:null!==this.parentData.disabled&&this.parentData.disabled},elLabelDisabled(){return""!==this.labelDisabled?this.labelDisabled:null!==this.parentData.labelDisabled&&this.parentData.labelDisabled},elSize(){return this.size?this.size:this.parentData.size?this.parentData.size:34},elIconSize(){return this.iconSize?this.iconSize:this.parentData.iconSize?this.parentData.iconSize:20},elActiveColor(){return this.activeColor?this.activeColor:this.parentData.activeColor?this.parentData.activeColor:"primary"},elShape(){return this.shape?this.shape:this.parentData.shape?this.parentData.shape:"circle"},iconStyle(){let e={};return this.elActiveColor&&this.parentData.value===this.name&&!this.elDisabled&&(e.borderColor=this.elActiveColor,e.backgroundColor=this.elActiveColor),e.width=this.$u.addUnit(this.elSize),e.height=this.$u.addUnit(this.elSize),e},iconColor(){return this.name===this.parentData.value?"#ffffff":"transparent"},iconClass(){let e=[];return e.push("u-radio__icon-wrap--"+this.elShape),this.name===this.parentData.value&&e.push("u-radio__icon-wrap--checked"),this.elDisabled&&e.push("u-radio__icon-wrap--disabled"),this.name===this.parentData.value&&this.elDisabled&&e.push("u-radio__icon-wrap--disabled--checked"),e.join(" ")},radioStyle(){let e={};return this.parentData.width&&(e.width=this.$u.addUnit(this.parentData.width),e.flex=`0 0 ${this.$u.addUnit(this.parentData.width)}`),this.parentData.wrap&&(e.width="100%",e.flex="0 0 100%"),e}},methods:{updateParentData(){this.getParentData("u-radio-group")},onClickLabel(){this.elLabelDisabled||this.elDisabled||this.setRadioCheckedStatus()},toggle(){this.elDisabled||this.setRadioCheckedStatus()},emitEvent(){this.parentData.value!=this.name&&this.$emit("change",this.name)},setRadioCheckedStatus(){this.emitEvent(),this.parent&&(this.parent.setValue(this.name),this.parentData.value=this.name)}}},[["render",function(e,t,a,o,d,c){const p=y(_("u-icon"),Y),m=f;return s(),l(m,{class:"u-radio",style:n([c.radioStyle])},{default:r((()=>[i(m,{class:h(["u-radio__icon-wrap",[c.iconClass]]),onClick:c.toggle,style:n([c.iconStyle])},{default:r((()=>[i(p,{class:"u-radio__icon-wrap__icon",name:"checkbox-mark",size:c.elIconSize,color:c.iconColor},null,8,["size","color"])])),_:1},8,["onClick","class","style"]),i(m,{class:"u-radio__label",onClick:c.onClickLabel,style:n({fontSize:e.$u.addUnit(a.labelSize)})},{default:r((()=>[u(e.$slots,"default",{},void 0,!0)])),_:3},8,["onClick","style"])])),_:3},8,["style"])}],["__scopeId","data-v-1458021f"]]);const se={name:"u-radio-group",emits:["update:modelValue","input","change"],mixins:[J],props:{value:{type:[String,Number],default:""},modelValue:{type:[String,Number],default:""},disabled:{type:Boolean,default:!1},activeColor:{type:String,default:"#2979ff"},size:{type:[String,Number],default:34},labelDisabled:{type:Boolean,default:!1},shape:{type:String,default:"circle"},iconSize:{type:[String,Number],default:20},width:{type:[String,Number],default:"auto"},wrap:{type:Boolean,default:!1}},data:()=>({uFromData:{inputAlign:"left"}}),created(){this.children=[]},mounted(){let e=this.$u.$parent.call(this,"u-form");e&&Object.keys(this.uFromData).map((t=>{this.uFromData[t]=e[t]}))},watch:{parentData(){this.children.length&&this.children.map((e=>{"function"==typeof e.updateParentData&&e.updateParentData()}))}},computed:{valueCom(){return this.modelValue},parentData(){return[this.value,this.disabled,this.activeColor,this.size,this.labelDisabled,this.shape,this.iconSize,this.width,this.wrap]}},methods:{setValue(e){this.children.map((t=>{t.parentData.value!=e&&(t.parentData.value="")})),this.$emit("input",e),this.$emit("update:modelValue",e),this.$emit("change",e),setTimeout((()=>{this.dispatch("u-form-item","onFieldChange",e)}),60)}}};var le=G(se,[["render",function(e,t,a,i,o,n){const d=f;return s(),l(d,{class:h(["u-radio-group u-clearfix","right"==o.uFromData.inputAlign?"flex-end":""])},{default:r((()=>[u(e.$slots,"default",{},void 0,!0)])),_:3},8,["class"])}],["__scopeId","data-v-d3d67590"]]);const re=class{static inject(e,t){this.modules.set(e,t)}constructor(){for(const[e,t]of re.modules.entries())t.init(e,this)}async payment(e,t){try{const a=this[ne[e]];if(!a)throw new Error(`can not find pay way ${e}`);return await a.run(t)}catch(a){return Promise.reject(a)}}};let ie=re;var oe;((t,a,s)=>{a in t?e(t,a,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[a]=s})(ie,"symbol"!=typeof(oe="modules")?oe+"":oe,new Map);var ne=(e=>(e[e.BALANCE=1]="BALANCE",e[e.WECHAT=2]="WECHAT",e[e.ALIPAY=3]="ALIPAY",e))(ne||{});const ue=new class{init(e,t){t[e]=this}async run(e){try{return await b({MP_WEIXIN:()=>new Promise((t=>{console.log(e),uni.requestPayment({orderInfo:"",provider:"wxpay",timeStamp:e.timeStamp,nonceStr:e.nonceStr,package:e.packageValue,paySign:e.paySign,signType:e.signType,success(){t(g.SUCCESS)},fail(){t(g.FAIL)}})})),OA_WEIXIN:()=>new Promise((t=>{w.pay(e).then((()=>{t(g.SUCCESS)})).catch((()=>{t(g.FAIL)}))})),H5:()=>new Promise((t=>{window.open(e.url,"_self"),t(g.PENDING)}))})}catch(t){return Promise.reject(t)}}};ie.inject(ne[2],ue);const de=new ie;const ce=t({__name:"payment",props:{show:{type:Boolean,required:!0},showCheck:{type:Boolean},orderId:{type:Number,required:!0},from:{type:String,required:!0},redirect:{type:String}},emits:["update:showCheck","update:show","close","success","fail"],setup(e,{emit:t}){const o=e,n=x(),u=x(v.LOADING),h=x({orderAmount:"",list:[]}),m=a({get:()=>o.showCheck,set(e){t("update:showCheck",e)}}),b=a({get:()=>o.show,set(e){t("update:show",e)}}),w=()=>{b.value=!1,t("close")},V=S(),L=X((async()=>{if(0==V.userInfo.isBindWechat&&[P.OA_WEIXIN,P.MP_WEIXIN].includes($)&&n.value==ne.WECHAT)return(await N({title:"温馨提示",content:"当前账号未绑定微信,无法完成支付",confirmText:"去绑定"})).confirm&&j({url:"/pages/user_set/user_set"}),Promise.reject()}),(async()=>(E({title:"正在支付中"}),await H({orderId:o.orderId,scene:o.from,payWay:n.value,redirectUrl:o.redirect}))),(async e=>{try{return await de.payment(n.value,e)}catch(t){return Promise.reject(t)}})),{isLock:U,lockFn:F}=Q((async()=>{try{const e=await L();R(e),C()}catch(e){C(),console.log(e)}})),R=e=>{switch(e){case g.SUCCESS:t("success");break;case g.FAIL:t("fail")}},q=async(e=!0)=>{0===(await M({order_id:o.orderId,from:o.from})).pay_status?(1==e&&uni.$u.toast("您的订单还未支付,请重新支付"),b.value=!0,R(g.FAIL)):(0==e&&uni.$u.toast("您的订单已经支付,请勿重新支付"),R(g.SUCCESS)),m.value=!1};return D((()=>o.show),(e=>{if(e){if(!o.orderId)return void(u.value=v.ERROR);(async()=>{u.value=v.LOADING;try{h.value=await T({orderId:o.orderId,from:o.from}),u.value=v.NORMAL;const e=h.value.list.find((e=>e.isDefault))||h.value.list[0];n.value=null==e?void 0:e.id}catch(e){u.value=v.ERROR}})()}}),{immediate:!0}),(e,t)=>{const a=y(_("u-empty"),B),o=y(_("price"),te),g=f,x=y(_("u-icon"),Y),v=y(_("u-radio"),ae),S=y(_("u-radio-group"),le),C=y(_("u-button"),W),D=y(_("page-status"),O),P=y(_("u-popup"),K);return s(),k(z,null,[i(P,{modelValue:p(b),"onUpdate:modelValue":t[1]||(t[1]=e=>A(b)?b.value=e:null),mode:"bottom","safe-area-inset-bottom":"","mask-close-able":!1,"border-radius":"14",closeable:"",onClose:w},{default:r((()=>[i(g,{class:"h-[900rpx]"},{default:r((()=>[i(D,{status:u.value,fixed:!1},{error:r((()=>[i(a,{text:"订单信息错误,无法查询到订单信息",mode:"order"})])),default:r((()=>[i(g,{class:"payment h-full w-full flex flex-col"},{default:r((()=>[i(g,{class:"header py-[50rpx] flex flex-col items-center"},{default:r((()=>[i(o,{content:h.value.orderAmount,mainSize:"44rpx",minorSize:"40rpx",fontWeight:"500",color:"#333"},null,8,["content"])])),_:1}),i(g,{class:"main flex-1 mx-[20rpx]"},{default:r((()=>[i(g,null,{default:r((()=>[i(g,{class:"payway-lists"},{default:r((()=>[i(S,{modelValue:n.value,"onUpdate:modelValue":t[0]||(t[0]=e=>n.value=e),class:"w-full"},{default:r((()=>[(s(!0),k(z,null,I(h.value.list,((e,t)=>(s(),l(g,{class:"p-[20rpx] flex items-center w-full payway-item",key:t,onClick:t=>{return a=e.id,void(n.value=a);var a}},{default:r((()=>[i(x,{class:"flex-none",size:48,name:e.icon},null,8,["name"]),i(g,{class:"mx-[16rpx] flex-1"},{default:r((()=>[i(g,{class:"payway-item--name flex-1"},{default:r((()=>[d(c(e.name),1)])),_:2},1024),i(g,{class:"text-muted text-xs"},{default:r((()=>[d(c(e.extra),1)])),_:2},1024)])),_:2},1024),i(v,{class:"mr-[-20rpx]",name:e.id},null,8,["name"])])),_:2},1032,["onClick"])))),128))])),_:1},8,["modelValue"])])),_:1})])),_:1})])),_:1}),i(g,{class:"submit-btn p-[20rpx]"},{default:r((()=>[i(C,{onClick:p(F),shape:"circle",type:"primary",loading:p(U)},{default:r((()=>[d(" 立即支付 ")])),_:1},8,["onClick","loading"])])),_:1})])),_:1})])),_:1},8,["status"])])),_:1})])),_:1},8,["modelValue"]),i(P,{class:"pay-popup",modelValue:p(m),"onUpdate:modelValue":t[4]||(t[4]=e=>A(m)?m.value=e:null),round:"",mode:"center",borderRadius:"10",maskCloseAble:!1},{default:r((()=>[i(g,{class:"content bg-white w-[560rpx] p-[40rpx]"},{default:r((()=>[i(g,{class:"text-2xl font-medium text-center"},{default:r((()=>[d(" 支付确认 ")])),_:1}),i(g,{class:"pt-[30rpx] pb-[40rpx]"},{default:r((()=>[i(g,null,{default:r((()=>[d(" 请在微信内完成支付,如果您已支付成功,请点击`已完成支付`按钮 ")])),_:1})])),_:1}),i(g,{class:"flex"},{default:r((()=>[i(g,{class:"flex-1 mr-[20rpx]"},{default:r((()=>[i(C,{shape:"circle",type:"primary",plain:"",size:"medium","hover-class":"none",customStyle:{width:"100%"},onClick:t[2]||(t[2]=e=>q(!1))},{default:r((()=>[d(" 重新支付 ")])),_:1})])),_:1}),i(g,{class:"flex-1"},{default:r((()=>[i(C,{shape:"circle",type:"primary",size:"medium","hover-class":"none",customStyle:{width:"100%"},onClick:t[3]||(t[3]=e=>q())},{default:r((()=>[d(" 已完成支付 ")])),_:1})])),_:1})])),_:1})])),_:1})])),_:1},8,["modelValue"])],64)}}});var pe=G(ce,[["__scopeId","data-v-06869896"]]);const he=t({__name:"recharge",setup(e){const t=x(""),a=V({orderId:"",from:"recharge",showPay:!1,showCheck:!1,redirect:"/packages/pages/recharge/recharge"}),o=V({userMoney:"",minRechargeMoney:0}),{isLock:n,lockFn:u}=Q((async()=>{const e=o.minRechargeMoney;if(!t.value)return uni.$u.toast("请输入充值金额");if(0==e&&Number(t.value)==e)return uni.$u.toast("充值金额必须大于0");if(Number(t.value)<e)return uni.$u.toast(`最低充值金额${e}`);const s=await ee({orderAmount:t.value,payWay:2});a.orderId=s.orderId,a.showPay=!0})),h=async()=>{a.showPay=!1,a.showCheck=!1,j({url:`/pages/payment_result/payment_result?id=${a.orderId}&from=${a.from}`})},b=async()=>{uni.$u.toast("支付失败")};return L((e=>{(null==e?void 0:e.checkPay)&&(a.orderId=e.orderId,a.from=e.scene,a.showCheck=!0)})),U((()=>{(async()=>{const e=await Z();Object.assign(o,e)})()})),(e,g)=>{const w=f,x=F,v=m,S=y(_("u-button"),W),C=R,D=y(_("payment"),pe);return s(),l(w,{class:"recharge p-[20rpx]"},{default:r((()=>[i(w,{class:"bg-white rounded-[14rpx] p-[40rpx]"},{default:r((()=>[i(w,{class:"text-content"},{default:r((()=>[d("充值金额")])),_:1}),i(w,{class:"border-0 border-b border-solid border-light"},{default:r((()=>[i(x,{modelValue:t.value,"onUpdate:modelValue":g[0]||(g[0]=e=>t.value=e),class:"text-[60rpx] h-[60rpx] py-[24rpx]",placeholder:"0.00",type:"digit"},null,8,["modelValue"])])),_:1}),i(w,{class:"mt-[20rpx] text-xs text-muted"},{default:r((()=>[d(" 当前可用余额 "),i(v,{class:"text-primary"},{default:r((()=>[d(c(o.userMoney),1)])),_:1})])),_:1})])),_:1}),i(w,{class:"mt-[40rpx]"},{default:r((()=>[i(S,{loading:p(n),type:"primary",shape:"circle",onClick:p(u)},{default:r((()=>[d(" 立即充值 ")])),_:1},8,["loading","onClick"])])),_:1}),i(w,{class:"flex justify-center m-[60rpx]"},{default:r((()=>[i(C,{url:"/packages/pages/recharge_record/recharge_record","hover-class":"none"},{default:r((()=>[i(v,{class:"text-content text-sm"},{default:r((()=>[d("充值记录")])),_:1})])),_:1})])),_:1}),i(D,{show:a.showPay,"onUpdate:show":g[1]||(g[1]=e=>a.showPay=e),"show-check":a.showCheck,"onUpdate:show-check":g[2]||(g[2]=e=>a.showCheck=e),"order-id":a.orderId,from:a.from,redirect:a.redirect,onSuccess:h,onFail:b},null,8,["show","show-check","order-id","from","redirect"])])),_:1})}}});export{he as default};