pages-orders-checkout.BcFVdcVP.js 4.5 KB

1
  1. import{d as a,C as e,c as s,U as l,b as t,w as u,i as n,g as d,f as c,h as o,u as r,n as i,F as _,j as f,t as m,k as p,p as y,m as b,V as g,z as v,y as k,e as w}from"./index-Cgv4VOZl.js";import{u as h}from"./useResource.DVvDV1FJ.js";import{u as j,_ as x}from"./CommandStatus.vue_vue_type_script_setup_true_lang.PR9QqYSW.js";import{t as C,l as R,m as I,i as P,c as S}from"./format.CiuDwZy2.js";import{I as q}from"./IdentityGuard.ClEibVD3.js";import{P as z}from"./PageState.atfDHXnz.js";import"./_plugin-vue_export-helper.BCo6x5W8.js";const A=a({__name:"checkout",setup(a){const A=e(0),B=e("balance"),E=()=>w("enterprise")+"/checkouts/"+P(A.value),{data:F,loading:G,error:N,load:U}=h(()=>d(E())),V=j(()=>E()+"/cancel",async()=>{C("订单已取消"),await U()}),D=j(()=>E()+"/pay",async()=>{C("余额支付成功"),await U()}),H=s(()=>!!F.value&&F.value.balance_cents<F.value.amount_cents);async function J(){await S("取消订单","确认取消这笔待支付订单?")&&V.execute({})}function K(){F.value&&"pending"===F.value.status&&!D.busy&&("wechat"!==B.value?H.value?C("企业余额不足"):D.execute({payment_method:B.value}):C("微信支付接口暂未开通"))}return l(a=>{A.value=Number(null==a?void 0:a.id),U()}),(a,e)=>{const s=n,l=p,d=k;return c(),t(s,{class:"page"},{default:u(()=>[o(q,{kind:"enterprise"},{default:u(()=>[o(z,{loading:r(G),error:r(N),onRetry:r(U)},null,8,["loading","error","onRetry"]),r(F)?(c(),i(_,{key:0},[o(s,{class:"hero"},{default:u(()=>[o(s,{class:"hero-subtitle"},{default:u(()=>[f(m(r(F).code),1)]),_:1}),o(s,{class:"hero-title"},{default:u(()=>[f(m("pending"===r(F).status?"等待支付":r(R)(r(F).status)),1)]),_:1}),o(s,{class:"hero-subtitle"},{default:u(()=>[f("有效期至 "+m(r(F).expires_at),1)]),_:1})]),_:1}),o(s,{class:"card stack"},{default:u(()=>[o(l,{class:"tag"},{default:u(()=>[f("下单时的配送地址")]),_:1}),o(s,{class:"title"},{default:u(()=>[f(m(r(F).address.name),1)]),_:1}),o(s,null,{default:u(()=>[f(m(r(F).address.address),1)]),_:1}),o(s,{class:"muted"},{default:u(()=>[f(m(r(F).address.contact)+" · "+m(r(F).address.phone),1)]),_:1})]),_:1}),o(s,{class:"card"},{default:u(()=>[o(s,{class:"title"},{default:u(()=>[f("套餐明细")]),_:1}),(c(!0),i(_,null,y(r(F).items,a=>(c(),t(s,{key:a.package_id,class:"link-row"},{default:u(()=>[o(s,{class:"grow"},{default:u(()=>[o(s,null,{default:u(()=>[f(m(a.name),1)]),_:2},1024),o(s,{class:"muted"},{default:u(()=>[f(m(a.buckets)+" 桶 · "+m(a.quantity)+" 份",1)]),_:2},1024)]),_:2},1024),o(l,null,{default:u(()=>[f("¥"+m(r(I)(a.amount_cents)),1)]),_:2},1024)]),_:2},1024))),128)),o(s,{class:"row",style:{"margin-top":"22rpx"}},{default:u(()=>[o(l,null,{default:u(()=>[f("合计")]),_:1}),o(l,{class:"amount"},{default:u(()=>[f("¥"+m(r(I)(r(F).amount_cents)),1)]),_:1})]),_:1})]),_:1}),r(F).payment_enabled?b("",!0):(c(),t(s,{key:0,class:"notice warning"},{default:u(()=>[f(" 在线支付尚未开放,此订单不会扣款或发放供水权益。 ")]),_:1})),"pending"===r(F).status&&r(g)()?(c(),t(s,{key:1,class:"card payment-card"},{default:u(()=>[o(s,{class:"title"},{default:u(()=>[f("支付方式")]),_:1}),o(s,{class:v(["payment-option",{selected:"balance"===B.value}]),onClick:e[0]||(e[0]=a=>B.value="balance")},{default:u(()=>[o(s,{class:"grow"},{default:u(()=>[o(s,null,{default:u(()=>[f("企业余额")]),_:1}),o(s,{class:"muted"},{default:u(()=>[f("可用余额:¥"+m(r(I)(r(F).balance_cents)),1)]),_:1})]),_:1}),o(l,null,{default:u(()=>[f(m("balance"===B.value?"●":"○"),1)]),_:1})]),_:1},8,["class"]),o(s,{class:"payment-option disabled"},{default:u(()=>[o(s,{class:"grow"},{default:u(()=>[o(s,null,{default:u(()=>[f("微信支付")]),_:1}),o(s,{class:"muted"},{default:u(()=>[f("支付接口预留,暂未开通")]),_:1})]),_:1}),o(l,null,{default:u(()=>[f("○")]),_:1})]),_:1}),H.value?(c(),t(s,{key:0,class:"notice warning"},{default:u(()=>[f("企业余额不足,请先充值。")]),_:1})):b("",!0),o(d,{class:"primary",loading:r(D).busy,disabled:r(D).busy||H.value,onClick:K},{default:u(()=>[f(" 立即支付 ")]),_:1},8,["loading","disabled"])]),_:1})):b("",!0),o(x,{command:r(D)},null,8,["command"]),o(x,{command:r(V)},null,8,["command"]),o(s,{class:"actions"},{default:u(()=>[o(d,{class:"secondary",onClick:r(U)},{default:u(()=>[f("刷新订单")]),_:1},8,["onClick"]),"pending"===r(F).status&&r(g)()?(c(),t(d,{key:0,class:"secondary",disabled:r(V).busy||r(D).busy,onClick:J},{default:u(()=>[f(" 取消订单 ")]),_:1},8,["disabled"])):b("",!0)]),_:1})],64)):b("",!0)]),_:1})]),_:1})}}});export{A as default};