s-select-sku.js 6.8 KB

1
  1. "use strict";const e=require("../../../common/vendor.js"),o=require("../../../common/assets.js"),s=require("../../index.js"),r=require("../../hooks/useGoods.js"),t=require("../../api/pay/wallet.js");if(require("../../url/index.js"),require("../../store/index.js"),require("../../store/app.js"),require("../../api/promotion/diy.js"),require("../../request/index.js"),require("../../config/index.js"),require("../../platform/index.js"),require("../../platform/provider/wechat/index.js"),require("../../platform/provider/wechat/miniProgram.js"),require("../../api/member/auth.js"),require("../../api/member/social.js"),require("../../api/member/user.js"),require("../../platform/provider/apple/index.js"),require("../../platform/share.js"),require("../../router/index.js"),require("../../hooks/useModal.js"),require("../../helper/index.js"),require("../../helper/test.js"),require("../../helper/digit.js"),require("../../api/member/signin.js"),require("../../helper/throttle.js"),require("../../platform/pay.js"),require("../../api/pay/order.js"),require("../../store/user.js"),require("../../store/cart.js"),require("../../api/trade/cart.js"),require("../../api/trade/order.js"),require("../../api/promotion/coupon.js"),require("../../store/sys.js"),require("../../store/modal.js"),require("../../config/zIndex.js"),require("../../util/index.js"),!Array){(e.resolveComponent("su-number-box")+e.resolveComponent("su-popup"))()}Math||((()=>"../../ui/su-number-box/su-number-box.js")+(()=>"../../ui/su-popup/su-popup.js"))();const u={__name:"s-select-sku",props:{goodsInfo:{type:Object,default(){}},show:{type:Boolean,default:!1}},emits:["change","addCart","buy","close"],setup(u,{emit:n}){const i=n,p=u,d=e.computed((()=>s.sheep.$store("user").userWallet)),a=e.reactive({selectedSku:{},currentPropertyArray:[]}),c=r.convertProductPropertyList(p.goodsInfo.skus),l=e.computed((()=>{let e=p.goodsInfo.skus;for(let o of e)o.value_id_array=o.properties.map((e=>e.valueId));return e}));function f(){p.goodsInfo.highPrecision?a.selectedSku.goods_num=parseInt(a.selectedSku.use_points/(a.selectedSku.highPrecisionPrice/100)):a.selectedSku.goods_num=parseInt(a.selectedSku.use_points/r.fen2yuan(a.selectedSku.price))}async function y(){const{code:e,data:o}=await t.PayWalletApi.getDuserInfo(),s=parseFloat(r.points2point(o.integralDO.currentQuota));console.log(s),a.selectedSku.use_points=parseInt(s),f()}function g(o){const t=o.detail.value;if(console.log(typeof t),""==t)return!1;const u=parseFloat(r.points2point(d.value.integralDO.currentQuota));f(),e.nextTick$1((()=>{a.selectedSku.use_points=parseInt(t),f()})),t<=0&&(s.sheep.$helper.toast("最低使用1积分"),u>=1?e.nextTick$1((()=>{a.selectedSku.use_points=1,f()})):e.nextTick$1((()=>{a.selectedSku.use_points=0,f()}))),t>u&&(s.sheep.$helper.toast("可用积分不足"),e.nextTick$1((()=>{a.selectedSku.use_points=parseInt(u),f()})))}function k(){a.selectedSku.id<=0?s.sheep.$helper.toast("请选择规格"):a.selectedSku.stock<=0?s.sheep.$helper.toast("库存不足"):i("addCart",a.selectedSku)}async function m(){if(2==p.goodsInfo.spuPayType){const{code:e,data:o}=await t.PayWalletApi.getDuserInfo();if(parseFloat(r.points2point(o.integralDO.currentQuota))<a.selectedSku.use_points)return s.sheep.$helper.toast("可用积分不足"),!1;if(a.selectedSku.goods_num<1||!a.selectedSku.use_points)return void s.sheep.$helper.toast("输入金额少于可购买数量");a.selectedSku.goods_num>a.selectedSku.stock&&(a.selectedSku.use_points=(a.selectedSku.stock*r.fen2yuan(a.selectedSku.price)).toFixed(2),a.selectedSku.goods_num=a.selectedSku.stock)}a.selectedSku.id<=0?s.sheep.$helper.toast("请选择规格"):a.selectedSku.stock<=0?s.sheep.$helper.toast("库存不足"):(i("buy",a.selectedSku),a.selectedSku.use_points=0)}function h(e=!1,o=0,s=0){let r=[];if(e)for(let n of l.value)n.stock<=0||n.value_id_array.indexOf(s)>=0&&r.push(n);else r=S();let t=[];for(let n of r)t=t.concat(n.value_id_array);if(t=Array.from(new Set(t)),e){let e=t.indexOf(s);t.splice(e,1)}else a.currentPropertyArray.forEach((e=>{if(""!==e.toString())return;let o=t.indexOf(e);o>=0&&t.splice(o,1)}));let u=[];e?u=[o]:a.currentPropertyArray.forEach(((e,o)=>{""!==e&&u.push(o)}));for(let n in c)if(!(u.indexOf(c[n].id)>=0))for(let e in c[n].values)c[n].values[e].disabled=t.indexOf(c[n].values[e].id)<0}function S(){let e=[];for(let o of l.value){if(o.stock<=0)continue;let s=!0;a.currentPropertyArray.forEach((e=>{""!==e.toString()&&o.value_id_array.indexOf(e)<0&&(s=!1)})),s&&e.push(o)}return e}function _(e,o){a.selectedSku.use_points=0;let s=!0;void 0!==a.currentPropertyArray[e]&&a.currentPropertyArray[e]===o?(s=!1,a.currentPropertyArray.splice(e,1,"")):a.currentPropertyArray[e]=o;let r=[];a.currentPropertyArray.forEach((e=>{""!==e&&r.push(e)}));let t=S();r.length===c.length&&t.length?(t[0].goods_num=a.selectedSku.goods_num||1,a.selectedSku=t[0]):a.selectedSku={},h(s,e,o)}return e.watch((()=>a.selectedSku),(e=>{i("change",e)}),{immediate:!0,deep:!0}),h(!1),e.onMounted((()=>{1==c.length&&1==c[0].values.length&&_(0,0)})),(s,t)=>e.e({a:a.selectedSku.picUrl||u.goodsInfo.picUrl,b:e.t(u.goodsInfo.name),c:2==u.goodsInfo.spuPayType},2==u.goodsInfo.spuPayType?{d:o._imports_0}:{},{e:u.goodsInfo.highPrecision},u.goodsInfo.highPrecision?{f:e.t(e.unref(r.fen2yuan6)(a.selectedSku.highPrecisionPrice||u.goodsInfo.highPrecisionPrice))}:{g:e.t(e.unref(r.fen2yuan)(a.selectedSku.price||u.goodsInfo.price))},{h:a.selectedSku.promotionFee>=0||u.goodsInfo.promotionFee>=0},a.selectedSku.promotionFee>=0||u.goodsInfo.promotionFee>=0?{i:e.t(e.unref(r.fen2yuan)(a.selectedSku.promotionFee||u.goodsInfo.promotionFee))}:{},{j:e.t(e.unref(r.formatStock)("exact",a.selectedSku.stock||u.goodsInfo.stock)),k:e.f(e.unref(c),((o,s,r)=>({a:e.t(o.name),b:e.f(o.values,((s,r,t)=>({a:e.t(s.name),b:e.n({"ui-BG-Main-Gradient":a.currentPropertyArray[o.id]===s.id}),c:e.n({"disabled-btn":!0===s.disabled}),d:s.id,e:!0===s.disabled,f:e.o((e=>_(o.id,s.id)),s.id)}))),c:o.id}))),l:2==u.goodsInfo.spuPayType},2==u.goodsInfo.spuPayType?e.e({m:e.t(e.unref(r.points2point)(d.value.integralDO.currentQuota)),n:e.o(y),o:2==u.goodsInfo.spuPayType},2==u.goodsInfo.spuPayType?{p:o._imports_0}:{},{q:e.o([e=>a.selectedSku.use_points=e.detail.value,g]),r:!a.selectedSku.id,s:a.selectedSku.use_points}):{t:e.o((e=>{var o;0!==(o=e)&&a.selectedSku.goods_num!==o&&(a.selectedSku.goods_num=o)})),v:e.o((e=>a.selectedSku.goods_num=e)),w:e.p({min:1,max:a.selectedSku.stock,step:1,modelValue:a.selectedSku.goods_num})},{x:e.o((()=>{})),y:u.goodsInfo.spuType&&1==u.goodsInfo.spuPayType},u.goodsInfo.spuType&&1==u.goodsInfo.spuPayType?{z:e.o(k),A:e.o(m)}:e.e({B:1!=u.goodsInfo.spuPayType&&!u.goodsInfo.spuType},1==u.goodsInfo.spuPayType||u.goodsInfo.spuType?(u.goodsInfo.spuType,{}):{},{C:!u.goodsInfo.spuType,D:e.o(m)}),{E:e.o((e=>i("close"))),F:e.p({show:u.show,round:"10"})})}},n=e._export_sfc(u,[["__scopeId","data-v-ce78878e"]]);wx.createComponent(n);