pages-order-confirm.da60fb76.js 10 KB

1
  1. import{v as s,c as e,l as o,m as t,e as a,f as l,w as d,j as r,p as c,k as n,F as i,r as u,A as f,i as m,E as p,G as _,S as y,D as I,t as b,g as w,u as x,s as h,q as g,o as k,aj as v,a2 as P,ak as C,a8 as j,C as V}from"./index-38bd0f0a.js";import{_ as A}from"./s-address-item.7d8d2bd1.js";import{_ as B}from"./s-goods-item.4a019027.js";import{d as S,g as $,a as D,_ as E}from"./s-layout.d2686188.js";import{_ as O}from"./s-coupon-list.1342b7c8.js";import{_ as G}from"./_plugin-vue_export-helper.1b428a4d.js";import{f as T}from"./useGoods.f4bc206e.js";/* empty css */import"./index.fba4e968.js";const H=G({__name:"s-coupon-select",props:{modelValue:{type:Object,default(){}},show:{type:Boolean,default:!1}},emits:["confirm","close"],setup(b,{emit:w}){const x=b,h=s({couponInfo:e((()=>x.modelValue)),couponId:0});function g(s){h.couponId===s?h.couponId=0:h.couponId=s}const k=()=>{w("confirm",h.couponId)};return(s,e)=>{const x=m,v=p,P=_,C=o(t("s-coupon-list"),O),j=y,V=I,A=o(t("su-popup"),S);return a(),l(A,{show:b.show,type:"bottom",round:"20",onClose:e[0]||(e[0]=s=>w("close")),showClose:"",backgroundColor:"#f2f2f2"},{default:d((()=>[r(x,{class:"model-box"},{default:d((()=>[r(x,{class:"title ss-m-t-16 ss-m-l-20 ss-flex"},{default:d((()=>[c("优惠券")])),_:1}),r(j,{class:"model-content","scroll-y":"","scroll-with-animation":!1,"enable-back-to-top":!0},{default:d((()=>[r(x,{class:"subtitle ss-m-l-20"},{default:d((()=>[c("可使用优惠券")])),_:1}),(a(!0),n(i,null,u(h.couponInfo,((s,e)=>(a(),l(x,{key:e},{default:d((()=>[r(C,{data:s,type:"user",disabled:!1},{default:d((()=>[r(P,{class:"ss-flex ss-col-center",onClick:e=>g(s.id)},{default:d((()=>[r(v,{color:"var(--ui-BG-Main)",style:{transform:"scale(0.8)"},checked:h.couponId===s.id,onClick:f((e=>g(s.id)),["stop"])},null,8,["checked","onClick"])])),_:2},1032,["onClick"])])),_:2},1032,["data"])])),_:2},1024)))),128))])),_:1})])),_:1}),r(x,{class:"modal-footer ss-flex"},{default:d((()=>[r(V,{class:"confirm-btn ss-reset-button",onClick:k},{default:d((()=>[c("确认")])),_:1})])),_:1})])),_:1},8,["show"])}}},[["__scopeId","data-v-abe43c08"]]),L=G({__name:"s-discount-list",props:{promoInfo:{type:Array,default:()=>[]},goodsList:{type:Array,default:()=>[]},modelValue:{type:Object,default(){}},show:{type:Boolean,default:!1}},emits:["close"],setup(f,{emit:p}){const _=f,k=s({orderInfo:e((()=>_.modelValue))}),v=s=>{let e="";return k.orderInfo.goods_list.forEach((o=>{s==o.goods_id&&(e=o.goods.image)})),e};return(s,e)=>{const _=m,P=g,C=y,j=I,V=o(t("su-popup"),S);return a(),l(V,{show:f.show,type:"bottom",round:"20",onClose:e[1]||(e[1]=s=>p("close")),showClose:"",backgroundColor:"#f2f2f2"},{default:d((()=>[r(_,{class:"model-box"},{default:d((()=>[r(_,{class:"title ss-m-t-38 ss-m-l-20 ss-m-b-40"},{default:d((()=>[c("活动优惠")])),_:1}),r(C,{class:"model-content ss-m-l-20","scroll-y":"","scroll-with-animation":!1,"enable-back-to-top":!0},{default:d((()=>[(a(!0),n(i,null,u(k.orderInfo.promo_infos,((s,e)=>(a(),l(_,{key:e},{default:d((()=>[r(_,{class:"ss-flex ss-m-b-40 subtitle"},{default:d((()=>[r(_,null,{default:d((()=>[c("共"+b(s.goods_ids.length)+"件,",1)])),_:2},1024),"full_discount"===s.activity_type?(a(),l(_,{key:0},{default:d((()=>[c(" 满"+b(s.discount_rule.full)+"打"+b(s.discount_rule.discount)+"折,已减 ",1)])),_:2},1024)):w("",!0),"full_gift"===s.activity_type?(a(),l(_,{key:1},{default:d((()=>[c("满赠")])),_:1})):w("",!0),"full_reduce"===s.activity_type?(a(),l(_,{key:2},{default:d((()=>[c(" 满"+b(s.discount_rule.full)+"减"+b(s.discount_rule.discount)+",已减 ",1)])),_:2},1024)):w("",!0),r(_,{class:"price-text"},{default:d((()=>[c("¥"+b(s.promo_discount_money||"0.00"),1)])),_:2},1024)])),_:2},1024),r(C,{class:"scroll-box","scroll-x":"","scroll-anchoring":""},{default:d((()=>[r(_,{class:"ss-flex"},{default:d((()=>[(a(!0),n(i,null,u(s.goods_ids,(s=>(a(),l(_,{key:s},{default:d((()=>[r(P,{class:"content-img",src:x(h).$url.cdn(v(s))},null,8,["src"])])),_:2},1024)))),128))])),_:2},1024)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1}),r(_,{class:"modal-footer ss-flex"},{default:d((()=>[r(j,{class:"confirm-btn ss-reset-button",onClick:e[0]||(e[0]=s=>p("close"))},{default:d((()=>[c("确认")])),_:1})])),_:1})])),_:1},8,["show"])}}},[["__scopeId","data-v-0a5d15ea"]]),M=G({__name:"confirm",setup(e){const f=s({orderPayload:{},orderInfo:{items:[],price:{}},addressInfo:{},showCoupon:!1,couponInfo:[],showDiscount:!1});function p(){C("SELECT_ADDRESS",(s=>{!async function(s={}){j.isEmpty(s)||(f.addressInfo=s);await S()}(s.addressInfo)})),h.$router.go("/pages/user/address/list")}async function _(s){f.orderPayload.couponId=s||0,await S(),f.showCoupon=!1}function y(){f.addressInfo.id?async function(){const{code:s,data:e}=await v.createOrder({items:f.orderPayload.items,couponId:f.orderPayload.couponId,addressId:f.addressInfo.id,deliveryType:1,pointStatus:!1,combinationActivityId:f.orderPayload.combinationActivityId,combinationHeadId:f.orderPayload.combinationHeadId,seckillActivityId:f.orderPayload.seckillActivityId});if(0!==s)return;f.orderPayload.items[0].cartId>0&&h.$store("cart").getList();h.$router.redirect("/pages/pay/index",{id:e.payOrderId})}():h.$helper.toast("请选择收货地址")}async function S(){const{data:s,code:e}=await v.settlementOrder({items:f.orderPayload.items,couponId:f.orderPayload.couponId,addressId:f.addressInfo.id,deliveryType:1,pointStatus:!1,combinationActivityId:f.orderPayload.combinationActivityId,combinationHeadId:f.orderPayload.combinationHeadId,seckillActivityId:f.orderPayload.seckillActivityId});0===e&&(f.orderInfo=s,f.orderInfo.address&&(f.addressInfo=f.orderInfo.address))}return k((async s=>{s.data?(f.orderPayload=JSON.parse(s.data),await S(),await async function(){const{code:s,data:e}=await P.getMatchCouponList(f.orderInfo.price.payPrice,f.orderInfo.items.map((s=>s.spuId)),f.orderPayload.items.map((s=>s.skuId)),f.orderPayload.items.map((s=>s.categoryId)));0===s&&(f.couponInfo=e)}()):h.$helper.toast("参数不正确,请检查!")})),(s,e)=>{const k=V,v=m,P=o(t("s-address-item"),A),C=o(t("s-goods-item"),B),j=o(t("uni-easyinput"),$),S=g,O=o(t("s-coupon-select"),H),G=o(t("s-discount-list"),L),M=I,U=o(t("su-fixed"),D),N=o(t("s-layout"),E);return a(),l(N,{title:"确认订单"},{default:d((()=>[r(v,{class:"bg-white address-box ss-m-b-14 ss-r-b-10",onClick:p},{default:d((()=>[r(P,{item:f.addressInfo,hasBorderBottom:!1},{default:d((()=>[r(v,{class:"ss-rest-button"},{default:d((()=>[r(k,{class:"_icon-forward"})])),_:1})])),_:1},8,["item"])])),_:1}),r(v,{class:"order-card-box ss-m-b-14"},{default:d((()=>[(a(!0),n(i,null,u(f.orderInfo.items,(s=>(a(),l(C,{key:s.skuId,img:s.picUrl,title:s.spuName,skuText:s.properties.map((s=>s.valueName)).join(" "),price:s.price,num:s.count,marginBottom:"10"},null,8,["img","title","skuText","price","num"])))),128)),r(v,{class:"order-item ss-flex ss-col-center ss-row-between ss-p-x-20 bg-white ss-r-10"},{default:d((()=>[r(v,{class:"item-title"},{default:d((()=>[c("订单备注")])),_:1}),r(v,{class:"ss-flex ss-col-center"},{default:d((()=>[r(j,{maxlength:"20",placeholder:"建议留言前先与商家沟通",modelValue:f.orderPayload.remark,"onUpdate:modelValue":e[0]||(e[0]=s=>f.orderPayload.remark=s),inputBorder:!1,clearable:!1},null,8,["modelValue"])])),_:1})])),_:1})])),_:1}),r(v,{class:"bg-white total-card-box ss-p-20 ss-m-b-14 ss-r-10"},{default:d((()=>[r(v,{class:"total-box-content border-bottom"},{default:d((()=>[r(v,{class:"order-item ss-flex ss-col-center ss-row-between"},{default:d((()=>[r(v,{class:"item-title"},{default:d((()=>[c("商品金额")])),_:1}),r(v,{class:"ss-flex ss-col-center"},{default:d((()=>[r(k,{class:"item-value ss-m-r-24"},{default:d((()=>[c(" ¥"+b(x(T)(f.orderInfo.price.totalPrice)),1)])),_:1})])),_:1})])),_:1}),"score"===f.orderPayload.order_type?(a(),l(v,{key:0,class:"order-item ss-flex ss-col-center ss-row-between"},{default:d((()=>[r(v,{class:"item-title"},{default:d((()=>[c("扣除积分")])),_:1}),r(v,{class:"ss-flex ss-col-center"},{default:d((()=>[r(S,{src:x(h).$url.static("/static/img/shop/goods/score1.svg"),class:"score-img"},null,8,["src"]),r(k,{class:"item-value ss-m-r-24"},{default:d((()=>[c(b(f.orderInfo.score_amount),1)])),_:1})])),_:1})])),_:1})):w("",!0),r(v,{class:"order-item ss-flex ss-col-center ss-row-between"},{default:d((()=>[r(v,{class:"item-title"},{default:d((()=>[c("运费")])),_:1}),r(v,{class:"ss-flex ss-col-center"},{default:d((()=>[r(k,{class:"item-value ss-m-r-24"},{default:d((()=>[c(" +¥"+b(x(T)(f.orderInfo.price.deliveryPrice)),1)])),_:1})])),_:1})])),_:1}),f.orderInfo.price.discountPrice>0?(a(),l(v,{key:1,class:"order-item ss-flex ss-col-center ss-row-between"},{default:d((()=>[r(v,{class:"item-title"},{default:d((()=>[c("活动优惠")])),_:1}),r(v,{class:"ss-flex ss-col-center"},{default:d((()=>[r(k,{class:"item-value text-red"},{default:d((()=>[c(" -¥"+b(x(T)(f.orderInfo.price.discountPrice)),1)])),_:1}),r(k,{class:"_icon-forward item-icon"})])),_:1})])),_:1})):w("",!0)])),_:1}),r(v,{class:"total-box-footer ss-font-28 ss-flex ss-row-right ss-col-center ss-m-r-28"},{default:d((()=>[r(v,{class:"total-num ss-m-r-20"},{default:d((()=>[c(" 共"+b(f.orderInfo.items.reduce(((s,e)=>s+e.count),0))+"件 ",1)])),_:1}),r(v,null,{default:d((()=>[c("合计:")])),_:1}),r(v,{class:"total-num text-red"},{default:d((()=>[c(" ¥"+b(x(T)(f.orderInfo.price.payPrice)),1)])),_:1})])),_:1})])),_:1}),r(O,{modelValue:f.couponInfo,"onUpdate:modelValue":e[1]||(e[1]=s=>f.couponInfo=s),show:f.showCoupon,onConfirm:_,onClose:e[2]||(e[2]=s=>f.showCoupon=!1)},null,8,["modelValue","show"]),r(G,{modelValue:f.orderInfo,"onUpdate:modelValue":e[3]||(e[3]=s=>f.orderInfo=s),show:f.showDiscount,onClose:e[4]||(e[4]=s=>f.showDiscount=!1)},null,8,["modelValue","show"]),r(U,{bottom:"",opacity:!1,bg:"bg-white",placeholder:"",noFixed:!1,index:200},{default:d((()=>[r(v,{class:"footer-box border-top ss-flex ss-row-between ss-p-x-20 ss-col-center"},{default:d((()=>[r(v,{class:"total-box-footer ss-flex ss-col-center"},{default:d((()=>[r(v,{class:"total-num ss-font-30 text-red"},{default:d((()=>[c(" ¥"+b(x(T)(f.orderInfo.price.payPrice)),1)])),_:1})])),_:1}),r(M,{class:"ss-reset-button ui-BG-Main-Gradient ss-r-40 submit-btn ui-Shadow-Main",onClick:y},{default:d((()=>[c(" 提交订单 ")])),_:1})])),_:1})])),_:1})])),_:1})}}},[["__scopeId","data-v-fe7c7208"]]);export{M as default};