1 |
- import{H as e,u as s,s as o,C as t,c as r,a1 as l,a2 as a,b as c,d as u,o as n,e as d,w as i,i as f,y as p,z as g,f as _,F as k,h as m,G as b,k as S,l as h,m as x,B as y,S as P}from"./index-520dfaee.js";import{_ as I}from"./su-number-box.f5462364.js";import{_ as w}from"./s-layout.5146c957.js";import{a as A}from"./useGoods.7c6b9280.js";import{_ as v}from"./_plugin-vue_export-helper.1b428a4d.js";const N=v({__name:"s-select-groupon-sku",props:{show:{type:Boolean,default:!1},goodsInfo:{type:Object,default(){}},grouponAction:{type:String,default:"create"},grouponNum:{type:[Number,String],default:0}},emits:["change","addCart","buy","close","ladder"],setup(v,{emit:N}){const C=v;e((e=>({"6d50482e":s(j)})));const j=o.$url.css("/assets/addons/shopro/uniapp/goods/groupon-btn-long.png"),E=t({selectedSkuPrice:{},currentSkuArray:[],grouponNum:C.grouponNum});C.goodsInfo.is_sku||(E.selectedSkuPrice=C.goodsInfo.sku_prices[0]);const O=C.goodsInfo.activity_type,$=r((()=>{let e=C.goodsInfo.sku_prices;return C.goodsInfo.is_sku&&e.forEach((e=>{e.goods_sku_id_arr=e.goods_sku_ids.split(",")})),e})),V=C.goodsInfo.skus,B=r((()=>{if(l.isEmpty(E.selectedSkuPrice))return A(C.goodsInfo.price);if(0===C.grouponNum&&"groupon_ladder"===O)return A(C.goodsInfo.price);if("groupon"===O)return E.selectedSkuPrice.groupon_price;if("groupon_ladder"===O){const e=G();return E.selectedSkuPrice.ladder_price=e.ladder_price,e.ladder_price}})),F=r((()=>{if(l.isEmpty(E.selectedSkuPrice))return A(C.goodsInfo.price);if(0===C.grouponNum&&"groupon_ladder"===O)return A(C.goodsInfo.price);if("groupon"===O)return E.selectedSkuPrice.leader_price;if("groupon_ladder"===O){return G().leader_ladder_price}}));function G(){return E.selectedSkuPrice.ladders.find((e=>e.ladder==C.grouponNum))}function z(){E.selectedSkuPrice.goods_id?E.selectedSkuPrice.stock<=0?o.$helper.toast("库存不足"):N("buy",E.selectedSkuPrice):o.$helper.toast("请选择规格")}function H(e=!1,s=0,o=0){let t=[];if(e)for(let a of $.value)a.stock<=0||a.goods_sku_id_arr.indexOf(o.toString())>=0&&t.push(a);else t=U();let r=[];for(let a of t)r=r.concat(a.goods_sku_id_arr);if(r=Array.from(new Set(r)),e){let e=r.indexOf(o.toString());r.splice(e,1)}else E.currentSkuArray.forEach((e=>{if(""!=e.toString()){let s=r.indexOf(e.toString());s>=0&&r.splice(s,1)}}));let l=[];e?l=[s]:E.currentSkuArray.forEach(((e,s)=>{""!=e&&l.push(s)}));for(let a in V)if(!(l.indexOf(V[a].id)>=0))for(let e in V[a].children)r.indexOf(V[a].children[e].id.toString())>=0?V[a].children[e].disabled=!1:V[a].children[e].disabled=!0}function U(){let e=[];for(let o of $.value)if(!(o.stock<=0)){var s=!0;E.currentSkuArray.forEach((e=>{""!=e.toString()&&o.goods_sku_id_arr.indexOf(e.toString())<0&&(s=!1)})),s&&e.push(o)}return e}return a((()=>E.selectedSkuPrice),(e=>{N("change",e)}),{immediate:!0,deep:!0}),H(!1),(e,t)=>{const r=h,l=x,a=y,A=c(u("su-number-box"),I),j=P,$=c(u("su-popup"),w);return n(),d($,{show:v.show,round:"10",onClose:t[2]||(t[2]=e=>N("close"))},{default:i((()=>[f(l,{class:"ss-modal-box bg-white ss-flex-col"},{default:i((()=>[f(l,{class:"modal-header ss-flex ss-col-center"},{default:i((()=>[f(l,{class:"header-left ss-m-r-30"},{default:i((()=>[f(r,{class:"sku-image",src:s(o).$url.cdn(E.selectedSkuPrice.image||v.goodsInfo.image),mode:"aspectFill"},null,8,["src"])])),_:1}),f(l,{class:"header-right ss-flex-col ss-row-between ss-flex-1"},{default:i((()=>[f(l,{class:"goods-title ss-line-2"},{default:i((()=>[f(l,{class:"tig ss-flex ss-col-center"},{default:i((()=>[f(l,{class:"tig-icon ss-flex ss-col-center ss-row-center"},{default:i((()=>[f(l,{class:"groupon-tag"},{default:i((()=>[f(r,{src:s(o).$url.static("/assets/addons/shopro/uniapp/goods/groupon-tag-white.png")},null,8,["src"])])),_:1})])),_:1}),f(l,{class:"tig-title"},{default:i((()=>[p("拼团价")])),_:1})])),_:1}),f(l,{class:"info-title"},{default:i((()=>[p(g(v.goodsInfo.title),1)])),_:1})])),_:1}),f(l,{class:"header-right-bottom ss-flex ss-col-center ss-row-between"},{default:i((()=>[f(l,{class:"price-text"},{default:i((()=>[p(g(s(B)),1)])),_:1}),f(l,{class:"stock-text ss-m-l-20"},{default:i((()=>[p(" 库存"+g(E.selectedSkuPrice.stock||v.goodsInfo.stock)+"件 ",1)])),_:1})])),_:1})])),_:1})])),_:1}),f(l,{class:"modal-content ss-flex-1"},{default:i((()=>[f(j,{"scroll-y":"true",class:"modal-content-scroll"},{default:i((()=>["create"===v.grouponAction&&"groupon_ladder"===s(O)?(n(),d(l,{key:0,class:"sku-item ss-m-b-20"},{default:i((()=>[f(l,{class:"label-text ss-m-b-20"},{default:i((()=>[p("拼团人数")])),_:1}),f(l,{class:"ss-flex ss-col-center ss-flex-wrap"},{default:i((()=>[(n(!0),_(k,null,m(v.goodsInfo.activity.rules.ladders,((e,s)=>(n(),d(a,{key:s,class:b(["ss-reset-button spec-btn",[{"checked-btn":v.grouponNum==e}]]),onClick:s=>function(e){N("ladder",e)}(e)},{default:i((()=>[p(g(e)+"人团 ",1)])),_:2},1032,["class","onClick"])))),128))])),_:1})])),_:1})):S("",!0),(n(!0),_(k,null,m(v.goodsInfo.skus,(e=>(n(),d(l,{class:"sku-item ss-m-b-20",key:e.id},{default:i((()=>[f(l,{class:"label-text ss-m-b-20"},{default:i((()=>[p(g(e.name),1)])),_:2},1024),f(l,{class:"ss-flex ss-col-center ss-flex-wrap"},{default:i((()=>[(n(!0),_(k,null,m(e.children,(e=>(n(),d(a,{class:b(["ss-reset-button spec-btn",[{"checked-btn":E.currentSkuArray[e.parent_id]==e.id},{"disabled-btn":1==e.disabled}]]),key:e.id,disabled:1==e.disabled,onClick:s=>function(e,s){if("groupon_ladder"===O&&0==C.grouponNum)return void o.$helper.toast("请选择拼团人数");let t=!0;null!=E.currentSkuArray[e]&&E.currentSkuArray[e]==s?(t=!1,E.currentSkuArray.splice(e,1,"")):E.currentSkuArray[e]=s;let r=[];E.currentSkuArray.forEach((e=>{""!=e&&r.push(e)}));let l=U();r.length==V.length&&l.length?(l[0].goods_num=E.selectedSkuPrice.goods_num||1,E.selectedSkuPrice=l[0]):E.selectedSkuPrice={},H(t,e,s)}(e.parent_id,e.id)},{default:i((()=>[p(g(e.name),1)])),_:2},1032,["class","disabled","onClick"])))),128))])),_:2},1024)])),_:2},1024)))),128)),f(l,{class:"buy-num-box ss-flex ss-col-center ss-row-between"},{default:i((()=>[f(l,{class:"label-text"},{default:i((()=>[p("购买数量")])),_:1}),f(A,{min:1,max:E.selectedSkuPrice.stock,step:1,modelValue:E.selectedSkuPrice.goods_num,"onUpdate:modelValue":t[0]||(t[0]=e=>E.selectedSkuPrice.goods_num=e),onChange:t[1]||(t[1]=e=>{var s;0!==(s=e)&&E.selectedSkuPrice.goods_num!==s&&(E.selectedSkuPrice.goods_num=s)}),activity:"groupon"},null,8,["max","modelValue"])])),_:1})])),_:1})])),_:1}),f(l,{class:"modal-footer ss-p-y-20"},{default:i((()=>[f(l,{class:"buy-box ss-flex ss-col-center ss-flex ss-col-center ss-row-center"},{default:i((()=>[f(l,{class:"ss-flex"},{default:i((()=>[f(a,{class:"ss-reset-button origin-price-btn ss-flex-col"},{default:i((()=>[f(l,{class:"btn-title"},{default:i((()=>[p(g(0===v.grouponNum?"阶梯团":v.grouponNum+"人团"),1)])),_:1})])),_:1}),f(a,{class:"ss-reset-button btn-tox ss-flex-col",onClick:z},{default:i((()=>[f(l,{class:"btn-price"},{default:i((()=>[p(g("create"===v.grouponAction&&1==v.goodsInfo.activity.rules.is_leader_discount?s(F):s(B)),1)])),_:1}),"create"===v.grouponAction&&0==v.goodsInfo.activity.rules.is_leader_discount?(n(),d(l,{key:0},{default:i((()=>[p("立即开团")])),_:1})):"create"===v.grouponAction&&1==v.goodsInfo.activity.rules.is_leader_discount?(n(),d(l,{key:1},{default:i((()=>[p("团长立减价")])),_:1})):"join"===v.grouponAction?(n(),d(l,{key:2},{default:i((()=>[p("参与拼团")])),_:1})):S("",!0)])),_:1})])),_:1})])),_:1})])),_:1})])),_:1})])),_:1},8,["show"])}}},[["__scopeId","data-v-206d5c29"]]);export{N as _};
|