index.37a81a89.js 2.9 KB

1
  1. import{C as n}from"./index.ade3b310.js";import{c as d,s as i}from"./cart.9f50dc81.js";import{d as h,a as s,a0 as u,a1 as r,an as m,O as p,x as f,ao as c,b as o,F as b}from"./vendor.6544a766.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{r as l}from"./index.bfda0881.js";function C(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!f(e)}var A=h({name:"cart",data(){return{isManage:!1,cartList:[],selectItems:[]}},computed:{checkAll(){let e=this.selectItems.length,t=this.cartList.length;return e===t},len(){return this.selectItems.length},totalPrice(){let e=0;const t=this.selectItems;return this.cartList.forEach(a=>{t.includes(a.id)&&typeof a.price=="number"&&(e+=a.price*a.quantity)}),e*100}},mounted(){this.getCartList()},methods:{async getCartList(){this.cartList=[];try{let{code:e,data:t}=await l.get("/api-mall-portal/cart/list");e===200&&(this.cartList=t)}catch{}},setCheckAll(){const e=[];this.checkAll||this.cartList.forEach(t=>{e.push(t.id)}),this.selectItems=e},async setCartItem(e){try{let{code:t,data:a}=await l.get("/api-mall-portal/cart/update/quantity",{params:{id:e.id,quantity:e.quantity}})}catch{}},async onDeleteCartItem(){const e=this.selectItems.join(",");try{let{code:t,data:a}=await l.post("/api-mall-portal/cart/delete?ids="+e);t===200&&(this.getCartList(),this.selectItems=[],this.isManage=!1)}catch{}},settlement(){const e=this.selectItems,t=[];this.cartList.forEach(a=>{e.includes(a.id)&&t.push(a)}),d.list=t,this.$router.push({path:"/cartConfirm"})}},render(){let e;return s(b,null,[s(n,{isBack:!0,onClickRight:()=>this.isManage=!this.isManage},{right:()=>s("span",{style:{color:"#333",fontSize:"14px"}},[this.isManage?"\u5B8C\u6210":"\u7BA1\u7406"])}),s("div",{class:i.cartBox},[s(u,{modelValue:this.selectItems,"onUpdate:modelValue":t=>this.selectItems=t},C(e=this.cartList.map(t=>s("div",{class:i.cartItem},[s(r,{name:t.id},null),s(m,{price:(t.price*t.quantity*100/100).toFixed(2),desc:t.productAttr,title:t.productName,thumb:t.productPic},{num:()=>s(p,{modelValue:t.quantity,"onUpdate:modelValue":a=>t.quantity=a,onChange:()=>this.setCartItem(t),inputWidth:"50px",buttonSize:"24px",min:1},null)})])))?e:{default:()=>[e]}),this.isManage?s("div",{class:i.delete},[s(c,{buttonText:"\u5220\u9664",buttonColor:"var(--van-primary)",disabled:this.totalPrice===0,onSubmit:()=>this.onDeleteCartItem()},{default:()=>[s(r,{modelValue:this.checkAll,onClick:t=>this.setCheckAll()},{default:()=>[o("\u5168\u9009")]})]})]):s("div",{class:i.submit},[s(c,{price:this.totalPrice,buttonText:`\u7ED3\u7B97(${this.len})`,buttonColor:"var(--van-primary)",disabled:this.totalPrice===0,onSubmit:()=>this.settlement()},{default:()=>[s(r,{modelValue:this.checkAll,onClick:t=>this.setCheckAll()},{default:()=>[o("\u5168\u9009")]})]})])]),s("div",{style:{height:"var(--van-submit-bar-height)"}},null)])}});export{A as default};