var g=Object.defineProperty,S=Object.defineProperties;var y=Object.getOwnPropertyDescriptors;var n=Object.getOwnPropertySymbols;var _=Object.prototype.hasOwnProperty,I=Object.prototype.propertyIsEnumerable;var p=(t,s,e)=>s in t?g(t,s,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[s]=e,c=(t,s)=>{for(var e in s||(s={}))_.call(s,e)&&p(t,e,s[e]);if(n)for(var e of n(s))I.call(s,e)&&p(t,e,s[e]);return t},h=(t,s)=>S(t,y(s));import{r as m,n as C}from"./index.99ecdf56.js";import{d as x,T as L,a as i,q as l,I as f,j as u,a7 as b,a8 as j,z as v,x as O,O as A,B as P}from"./vendor.75c233d7.js";/* empty css               *//* empty css               *//* empty css               *//* empty css                *//* empty css                *//* empty css                */import{i as D}from"./icon-sell-out.bc315722.js";const N="_addGoodsCart_17hfd_1",G="_goodsSection_17hfd_16",T="_sellOut_17hfd_23",q="_goodsImg_17hfd_35",F="_goodsPrice_17hfd_41",J="_goodsStore_17hfd_50",V="_title_17hfd_55",$="_radio_17hfd_60";var a={addGoodsCart:N,goodsSection:G,sellOut:T,goodsImg:q,goodsPrice:F,goodsStore:J,title:V,"radio-group":"_radio-group_17hfd_60",radio:$};function w(t){return typeof t=="function"||Object.prototype.toString.call(t)==="[object Object]"&&!O(t)}var X=x({name:"add-goods-cart",props:{item:{type:Object,default:{}},defaultRadio:{type:Number,default:0},showType:{type:String,default:"cart"},onGetCartCount:{type:Function,default:t=>{}}},data(){return{radio:"",total:1,totalData:{},skuStockList:[]}},mounted(){this.setList()},computed:{selectItem(){const t=this.skuStockList.find(s=>s.id==this.radio);if(t){let s=t.stock-t.lockStock-t.cartNum;return h(c({},t),{stock:s})}return{stock:0}}},methods:{setList(){let t=[];const s=JSON.parse(JSON.stringify(this.item));if(Array.isArray(s.skuStockList)&&(t=s.skuStockList.map(o=>{if(o.pic=o.pic||s.pic,o.cartNum=0,o.spData){const d=JSON.parse(o.spData);let r="";d.forEach(k=>{r+=`${k.value}`}),o.spDataJson=r}else o.spDataJson="\u9ED8\u8BA4";return o.lockStock=o.lockStock>0?o.lockStock:0,c({},o)})),!t.length)return t;let e=0;if(this.defaultRadio){let o=t.findIndex(d=>d.id==this.defaultRadio);e=o>-1?o:0}this.radio=t[e].id,this.skuStockList=t,this.getProductAddCartCount(t[e].id)},async onAddCart(){const t=this.selectItem,s=this.item,e={price:t.price,productSkuId:t.id,quantity:this.total,productId:s.id,hidden:this.showType==="cart"?0:1,promoterId:this.$route.query.promoterId?this.$route.query.promoterId:void 0};try{let{code:o,data:d}=await m.post("/api-mall-portal/cart/add",{data:e});o===200&&(this.getProductAddCartCount(t.id,!0),this.showType==="cart"?(this.onGetCartCount(),this.$nextTick(()=>{setTimeout(()=>{L({icon:"success",message:"\u6DFB\u52A0\u5546\u54C1\u6210\u529F"})},500)})):this.$router.push({path:"/cartConfirm",query:{cartIds:d.id}}))}catch(o){if(o.message==="\u5E93\u5B58\u4E0D\u8DB3"){for(let r=0;r<this.skuStockList.length;r++)this.skuStockList[r].id===this.selectItem.id&&(this.skuStockList[r].stock=0);console.log(this.skuStockList)}}},async getProductAddCartCount(t,s=!1){if(t=t||this.selectItem.id,this.totalData[t]&&!s){this.setProductStock(this.totalData[t]);return}if(!!t)try{let e=await m.get(`/api-mall-portal/product/cart/${t}`);this.setProductStock(e.data||0),this.totalData[t]=e.data||0}catch{}},setProductStock(t){for(let s=0;s<this.skuStockList.length;s++)this.skuStockList[s].id===this.radio&&(this.skuStockList[s].cartNum=t)}},render(){return i("div",{class:a.addGoodsCart},[i(l,{titleStyle:{paddingLeft:"12px"}},{icon:()=>i("div",{class:a.goodsSection},[i(f,{src:this.selectItem.pic,class:a.goodsImg,fit:"cover"},null),this.selectItem.stock<=0&&i("div",{class:a.sellOut},[i(f,{src:D,fit:"cover",class:a.sellOutImg},null)])]),title:()=>i("div",{class:a.goodsInfo},[i("p",{class:a.goodsPrice},[i("span",null,[u("\uFFE5")]),C(this.selectItem.price)]),i("p",{class:a.goodsStore},[u("\u5E93\u5B58\uFF1A"),this.selectItem.stock])])}),i(l,null,{title:()=>i("div",{class:a.title},[u("\u89C4\u683C")]),label:()=>{let t;return i(b,{class:a["radio-group"],modelValue:this.radio},w(t=this.skuStockList.map(s=>{const e=s.id===this.radio,o=e?"primary":"default";return i(j,{class:a.radio,name:s.id,onClick:()=>{this.radio!=s.id&&(this.radio=s.id,this.getProductAddCartCount(s.id))}},{default:()=>[i(v,{size:"large",plain:e,type:o},{default:()=>[s.spDataJson]})]})}))?t:{default:()=>[t]})}}),i(l,{title:"\u8D2D\u4E70\u6570\u91CF",style:{margin:"12px 0"},border:!1,titleClass:a.title,center:!0},{default:()=>[i(A,{modelValue:this.total,"onUpdate:modelValue":t=>this.total=t,inputWidth:"50px",theme:"round",buttonSize:"24px",max:this.selectItem.stock>200?200:this.selectItem.stock,min:1,disabled:this.selectItem.stock<=0,integer:!0},null)]}),i("div",{class:["btnGroup"],style:{marginBottom:"8px"}},[i(P,{block:!0,round:!0,type:"primary",text:"\u786E\u5B9A",disabled:this.selectItem.stock<=0,onClick:()=>this.onAddCart()},null)])])}});export{X as A};