cart.7b345076.js 3.1 KB

1
  1. import{aU as d,bV as k,b as a,al as m,__tla as p}from"./entry.7ac74952.js";let u,l,L=Promise.all([(()=>{try{return p}catch{}})()]).then(async()=>{function g(t){return d.post("mall/cart",t)}function c(t){return d.put("mall/cart",t)}function _(t){return d.put("mall/cart/delete",t)}function h(t){return d.get("mall/cart",t)}u=function(t){return d.get("mall/cart/goods",t)};let r;r=k("cart",{state:()=>({cartList:{},totalNum:0,totalMoney:0,isRepeat:!1}),actions:{getList(){a()&&h({}).then(t=>{let i=t.data;for(let e in this.cartList)delete this.cartList[e];Object.values(i).length&&Object.values(i).forEach(e=>{e.goods_list.forEach(s=>{if(s.goods.status==1&&s.goods.delete_time==0){let o={id:s.id,goods_id:s.goods_id,sku_id:s.sku_id,stock:s.goodsSku.stock,num:s.num,sale_price:s.goodsSku.sale_price,site_id:s.site_id};s.goods.is_discount&&s.goodsSku.sale_price!=s.goodsSku.price?o.sale_price=s.goodsSku.sale_price?s.goodsSku.sale_price:s.goodsSku.price:s.goods.member_discount&&a()&&s.goodsSku.member_price!=s.goodsSku.price&&(o.sale_price=s.goodsSku.member_price?s.goodsSku.member_price:s.goodsSku.price),this.cartList["goods_"+o.goods_id]||(this.cartList["goods_"+o.goods_id]={}),this.cartList["goods_"+o.goods_id]["sku_"+o.sku_id]=o}})}),this.calculateNum()})},increase(t,i=1,e=null){if(!t||t&&Object.keys(t).length==0||!t.goods_id||!t.sku_id||!a())return;let s=(t.num||0)+i,o=t.id?c:g;if(s>parseInt(t.stock)){m.error("\u5546\u54C1\u5E93\u5B58\u4E0D\u8DB3");return}this.isRepeat||(this.isRepeat=!0,t.id?this.cartList["goods_"+t.goods_id]["sku_"+t.sku_id].num=s:(this.cartList["goods_"+t.goods_id]||(this.cartList["goods_"+t.goods_id]={}),this.cartList["goods_"+t.goods_id]["sku_"+t.sku_id]={id:t.id,goods_id:t.goods_id,sku_id:t.sku_id,stock:t.stock,num:s,sale_price:t.sale_price,site_id:t.site_id}),this.calculateNum(),o({id:t.id,goods_id:t.goods_id,sku_id:t.sku_id,num:s,site_id:t.site_id}).then(n=>{typeof e=="function"&&e(),this.getList(),this.isRepeat=!1}).catch(n=>{this.isRepeat=!1}))},reduce(t,i=1){if(!t||t&&Object.keys(t).length==0||!t.goods_id||!t.sku_id||!a())return;let e=(t.num||0)-1,s=e>0?c:_;this.isRepeat||(this.isRepeat=!0,e>0?this.cartList["goods_"+t.goods_id]["sku_"+t.sku_id].num=e:(delete this.cartList["goods_"+t.goods_id]["sku_"+t.sku_id],Object.keys(this.cartList["goods_"+t.goods_id]).length==0&&delete this.cartList["goods_"+t.goods_id]),this.calculateNum(),s({ids:t.id,id:t.id,goods_id:t.goods_id,sku_id:t.sku_id,num:e,site_id:t.site_id}).then(o=>{this.getList(),this.isRepeat=!1}).catch(o=>{this.isRepeat=!1}))},delete(t,i=null){t&&_({ids:t}).then(e=>{this.getList(),this.isRepeat=!1,i&&i()}).catch(e=>{this.isRepeat=!1})},calculateNum(){if(this.totalNum=0,this.totalMoney=0,Object.keys(this.cartList).length)for(let t in this.cartList){let i=0,e=0;for(let s in this.cartList[t])typeof this.cartList[t][s]=="object"&&(i+=this.cartList[t][s].num,e+=this.cartList[t][s].num*this.cartList[t][s].sale_price);this.cartList[t].totalNum=i,this.cartList[t].totalMoney=e.toFixed(2),this.totalNum+=i,this.totalMoney+=e}this.totalMoney=this.totalMoney.toFixed(2)}}}),l=r});export{L as __tla,u as g,l as u};