pages-order-confirm.520e68d3.js 9.8 KB

1
  1. import{y as e,c as s,ab as t,ac as o,l as a,m as r,e as l,f as d,w as i,j as n,t as c,u,i as f,ad as p,E as m,G as b,o as _,s as y,aa as v,k as P,r as x,F as I,v as h,B as w,ae as k,a1 as g}from"./index-9e198f81.js";import{_ as j}from"./s-address-item.1b926b06.js";import{_ as M}from"./s-goods-item.e6de33e3.js";import{_ as O,a as T}from"./phone-international-input.959a5711.js";import{_ as V}from"./_plugin-vue_export-helper.1b428a4d.js";import{p as C,f as D,a as E,_ as A}from"./s-layout.a6cd3587.js";/* empty css */const B=V({__name:"s-points-pop",props:{modelValue:{type:Object,default(){}},show:{type:Boolean,default:!1},currentMemberPoints:{type:Number,default:0},currentTotalPrice:{type:Number,default:0},currentDeliveryPrice:{type:Number,default:0}},emits:["confirm","close"],setup(_,{emit:y}){const v=_,P=y,x=e({points:0,disabled:!1}),I=s((()=>parseFloat(v.currentMemberPoints))),h=s((()=>parseFloat(v.currentTotalPrice))),w=s((()=>parseFloat(v.currentDeliveryPrice))),k=s((()=>h.value?(h.value-.01-w.value).toFixed(2):h.value));t((()=>{x.points>I.value&&o((()=>{x.points=I.value})),x.points>k.value&&o((()=>{x.points=k.value})),(0==k.value||k.value<0)&&(x.disabled=!0),k.value>0&&(x.disabled=!1)}));const g=()=>{P("confirm",x.points)};return(e,s)=>{const t=f,o=p,y=m,v=b,I=a(r("su-popup"),O);return l(),d(I,{show:_.show,type:"bottom",round:"10",onClose:s[2]||(s[2]=e=>P("close")),showClose:"",backgroundColor:"#ffffff"},{default:i((()=>[n(t,{class:"title ss-m-t-16 ss-m-l-20 ss-flex"},{default:i((()=>[c("使用数字权益")])),_:1}),n(t,{class:"model-box ss-p-x-30"},{default:i((()=>[n(o,{modelValue:x.points,"onUpdate:modelValue":s[0]||(s[0]=e=>x.points=e),modelModifiers:{number:!0},class:"uni-input input-points ss-m-b-10",type:"number",placeholder:"请输入抵扣数字权益",oninput:"this.value=this.value.replace(/\\D/g);",disabled:x.disabled},null,8,["modelValue","disabled"])])),_:1}),n(t,{class:"modal-footer text-center"},{default:i((()=>[n(t,{class:"subtitle text-disabled"},{default:i((()=>[c("您的可用数字权益"),n(y,{class:"text-red"},{default:i((()=>[c(u(_.currentMemberPoints),1)])),_:1})])),_:1}),n(t,{class:"subtitle text-disabled"},{default:i((()=>[c("当前订单价格"),n(y,{class:"text-red"},{default:i((()=>[c("¥"+u(h.value),1)])),_:1}),c(",可使用最高"),n(y,{class:"text-red"},{default:i((()=>[c(u(k.value),1)])),_:1}),c("数字权益 ")])),_:1}),n(t,{class:"ss-flex ss-m-y-20 ss-col-center"},{default:i((()=>[n(v,{class:"confirm-btn ss-reset-button",onClick:s[1]||(s[1]=e=>{x.points=0,P("confirm",x.points)})},{default:i((()=>[c("取消")])),_:1}),n(v,{class:"confirm-btn ss-reset-button",onClick:g},{default:i((()=>[c("确认")])),_:1})])),_:1})])),_:1})])),_:1},8,["show"])}}},[["__scopeId","data-v-2625ba6e"]]),N=V({__name:"confirm",setup(t){const o=e({orderPayload:{},orderInfo:{items:[],price:{}},addressInfo:{},showPoints:!1,couponInfo:[],showDiscount:!1,currentMemberPoints:0,usedPoint:0,currentTotalPrice:0,currentDeliveryPrice:0}),p=s((()=>{const e={};try{Object.keys(o.orderInfo.shopRespVOMap).forEach((s=>{const t=o.orderInfo.shopNameMap[s];t&&(e[t]=o.orderInfo.shopRespVOMap[s],e[t].remark="",e[t].shopId=s)}))}catch(s){}return e})),O=s((()=>{let e=0;return Object.values(p.value).forEach((s=>{s.items.forEach((s=>{e+=s.count}))})),e}));function V(){k("SELECT_ADDRESS",(e=>{!async function(e={}){g.isEmpty(e)||(o.addressInfo=e);await F()}(e.addressInfo)})),y.$router.go("/pages/user/address/list")}async function N(e){null==e&&(e=0);const s=o.currentTotalPrice;o.orderInfo.price.payPrice=100*(s-e),o.usedPoint=e,o.showPoints=!1}function S(){o.addressInfo.id?async function(){const e=p.value,s={};Object.keys(e).forEach((t=>{const o=e[t];s[o.shopId]=o.remark}));const{code:t,data:a}=await v.createOrder({items:o.orderPayload.items,couponId:o.orderPayload.couponId,addressId:o.addressInfo.id,deliveryType:1,pointStatus:!1,combinationActivityId:o.orderPayload.combinationActivityId,combinationHeadId:o.orderPayload.combinationHeadId,seckillActivityId:o.orderPayload.seckillActivityId,payIntegral:o.usedPoint,shopRemarks:s});if(0!==t)return;o.orderPayload.items[0].cartId>0&&y.$store("cart").getList();y.$router.redirect("/pages/pay/index",{id:a.payOrderId})}():y.$helper.toast("请选择收货地址")}async function F(){const e=p.value;let s={};0!==Object.keys(e).length&&Object.keys(e).forEach((t=>{const o=e[t];s[t]=o.remark}));const{data:t,code:a}=await v.settlementOrder({items:o.orderPayload.items,couponId:o.orderPayload.couponId,addressId:o.addressInfo.id,deliveryType:1,pointStatus:!1,combinationActivityId:o.orderPayload.combinationActivityId,combinationHeadId:o.orderPayload.combinationHeadId,seckillActivityId:o.orderPayload.seckillActivityId,usedPoint:o.usedPoint});0===a&&(o.orderInfo=t,0!==Object.keys(s).length&&Object.keys(s).forEach((e=>{p.value[e].remark=s[e]})),o.orderInfo.address&&(o.addressInfo=o.orderInfo.address),o.currentMemberPoints=C(o.orderInfo.currentQuota),o.currentTotalPrice=D(o.orderInfo.price.payPrice),o.currentDeliveryPrice=D(o.orderInfo.price.deliveryPrice))}return _((async e=>{e.data?(o.orderPayload=JSON.parse(e.data),await F()):y.$helper.toast("参数不正确,请检查!")})),(e,s)=>{const t=m,_=f,y=a(r("s-address-item"),j),v=a(r("s-goods-item"),M),k=a(r("uni-easyinput"),T),g=a(r("s-points-pop"),B),C=b,F=a(r("su-fixed"),E),U=a(r("s-layout"),A);return l(),d(U,{title:"确认订单"},{default:i((()=>[n(_,{class:"bg-white address-box ss-m-b-14 ss-r-b-10",onClick:V},{default:i((()=>[n(y,{item:o.addressInfo,hasBorderBottom:!1},{default:i((()=>[n(_,{class:"ss-rest-button"},{default:i((()=>[n(t,{class:"_icon-forward"})])),_:1})])),_:1},8,["item"])])),_:1}),(l(!0),P(I,null,x(p.value,((e,s)=>(l(),d(_,{class:"order-card-box ss-m-b-14",key:s},{default:i((()=>[n(_,{class:"title-text ss-p-x-20 ss-p-t-20"},{default:i((()=>[c(u(s),1)])),_:2},1024),(l(!0),P(I,null,x(e.items,(e=>(l(),d(v,{key:null==e?void 0:e.skuId,img:null==e?void 0:e.picUrl,title:null==e?void 0:e.spuName,skuText:null==e?void 0:e.properties.map((e=>e.valueName)).join(" "),price:null==e?void 0:e.price,num:null==e?void 0:e.count},null,8,["img","title","skuText","price","num"])))),128)),n(_,{class:"order-item ss-flex ss-col-center ss-row-between ss-p-x-20 bg-white ss-r-10"},{default:i((()=>[n(_,{class:"item-title"},{default:i((()=>[c("运费")])),_:1}),n(_,{class:"ss-flex ss-col-center"},{default:i((()=>[c(u(e.price.deliveryPrice?"¥"+h(D)(e.price.deliveryPrice):"包邮"),1)])),_:2},1024)])),_:2},1024),n(_,{class:"order-item ss-flex ss-col-center ss-row-between ss-p-x-20 bg-white ss-r-10"},{default:i((()=>[n(_,{class:"item-title"},{default:i((()=>[c("订单备注")])),_:1}),n(_,{class:"ss-flex ss-col-center"},{default:i((()=>[n(k,{maxlength:"20",placeholder:"建议留言前先与商家沟通",modelValue:e.remark,"onUpdate:modelValue":s=>e.remark=s,inputBorder:!1,clearable:!1},null,8,["modelValue","onUpdate:modelValue"])])),_:2},1024)])),_:2},1024),n(_,{class:"order-item ss-flex ss-col-center ss-row-between ss-p-x-20 bg-white ss-r-10"},{default:i((()=>[n(_,{class:"item-title"},{default:i((()=>[c("总价")])),_:1}),n(_,{class:"ss-flex ss-col-center"},{default:i((()=>[c(u("¥"+h(D)(e.price.payPrice)),1)])),_:2},1024)])),_:2},1024)])),_:2},1024)))),128)),n(_,{class:"bg-white total-card-box ss-p-20 ss-m-b-14 ss-r-10"},{default:i((()=>[n(_,{class:"title-text"},{default:i((()=>[c(" 价格明细 ")])),_:1}),n(_,{class:"total-box-content border-bottom"},{default:i((()=>[n(_,{class:"order-item ss-flex ss-col-center ss-row-between"},{default:i((()=>[n(_,{class:"item-title"},{default:i((()=>[c("商品总价 共"+u(O.value)+"件商品",1)])),_:1}),n(_,{class:"ss-flex ss-col-center"},{default:i((()=>[n(t,{class:"item-value ss-m-r-24"},{default:i((()=>[c(" ¥"+u(h(D)(o.orderInfo.price.totalPrice)),1)])),_:1})])),_:1})])),_:1}),n(_,{class:"order-item ss-flex ss-col-center ss-row-between"},{default:i((()=>[n(_,{class:"item-title"},{default:i((()=>[c("运费")])),_:1}),n(_,{class:"ss-flex ss-col-center"},{default:i((()=>[n(t,{class:"item-value ss-m-r-24"},{default:i((()=>[c(" ¥"+u(h(D)(o.orderInfo.price.deliveryPrice)),1)])),_:1})])),_:1})])),_:1}),n(_,{class:"order-item ss-flex ss-col-center ss-row-between"},{default:i((()=>[n(_,{class:"item-title"},{default:i((()=>[c("数字权益抵扣")])),_:1}),n(_,{class:"ss-flex ss-col-center",onClick:s[0]||(s[0]=e=>o.showPoints=!0)},{default:i((()=>[n(t,{class:w(["item-value",o.usedPoint>0?"text-red":"text-disabled"])},{default:i((()=>[c(u(o.usedPoint>0?" 可抵扣"+o.usedPoint+"元":"不使用数字权益"),1)])),_:1},8,["class"]),n(t,{class:"_icon-forward item-icon"})])),_:1})])),_:1})])),_:1}),n(_,{class:"total-box-footer ss-font-28 ss-flex ss-row-right ss-col-center ss-m-r-28"},{default:i((()=>[n(_,{class:"total-num ss-m-r-20"},{default:i((()=>[c(" 共"+u(O.value)+"件 ",1)])),_:1}),n(_,null,{default:i((()=>[c("合计:")])),_:1}),n(_,{class:"total-num text-red"},{default:i((()=>[c(" ¥"+u(h(D)(o.orderInfo.price.payPrice)),1)])),_:1})])),_:1})])),_:1}),n(g,{modelValue:o.couponInfo,"onUpdate:modelValue":s[1]||(s[1]=e=>o.couponInfo=e),currentMemberPoints:o.currentMemberPoints,currentTotalPrice:o.currentTotalPrice,currentDeliveryPrice:o.currentDeliveryPrice,show:o.showPoints,onConfirm:N,onClose:s[2]||(s[2]=e=>o.showPoints=!1)},null,8,["modelValue","currentMemberPoints","currentTotalPrice","currentDeliveryPrice","show"]),n(F,{bottom:"",opacity:!1,bg:"bg-white",placeholder:"",noFixed:!1,index:200},{default:i((()=>[n(_,{class:"footer-box border-top ss-flex ss-row-between ss-p-x-20 ss-col-center"},{default:i((()=>[n(_,{class:"total-box-footer ss-flex ss-col-center"},{default:i((()=>[n(_,{class:"total-num ss-font-30 text-red"},{default:i((()=>[c(" ¥"+u(h(D)(o.orderInfo.price.payPrice)),1)])),_:1})])),_:1}),n(C,{class:"ss-reset-button ui-BG-Main-Gradient ss-r-40 submit-btn ui-Shadow-Main",onClick:S},{default:i((()=>[c(" 提交订单 ")])),_:1})])),_:1})])),_:1})])),_:1})}}},[["__scopeId","data-v-9bc3b81b"]]);export{N as default};