Files
yshop-pro-uniapp/unpackage/dist/build/h5/assets/pages-shoppingCartJump-shoppingCart.33e99742.js
2024-02-22 18:37:23 +08:00

2 lines
9.5 KiB
JavaScript

import{a as e,x as t,a1 as a,i as o,a2 as l,u as s,o as n,j as c,w as i,I as u,h as r,B as d,a3 as p,U as f,e as m,F as _,l as v,k as g,m as h,a4 as b,C as k,D as x,y as S,G as y,H as j,Q as C,z as I,a5 as w}from"./index-d4baa715.js";import{_ as N,a as P}from"./uv-checkbox-group.790ea70b.js";import{_ as L}from"./uv-icon.b5ddbe11.js";import{_ as G}from"./card.5267ca05.js";import{G as A}from"./Goods.ed14922a.js";import{G as V}from"./good-attr-select.827f4d84.js";import{M as B}from"./index.b68f4c8d.js";import{u as O,g as T,c as z,d as D,a as U}from"./cart.301868c6.js";import{_ as E}from"./lodash.77ffa483.js";import{u as R}from"./useInterface.2c7749ae.js";import{a as q}from"./product.280a3345.js";import{E as F}from"./index.7dcbea25.js";import{e as M}from"./images.f0a6f614.js";import{_ as H}from"./_plugin-vue_export-helper.1b428a4d.js";import{H as W}from"./index.704ebef3.js";import{R as $}from"./index.7ff8e91f.js";import{u as Q}from"./useScroll.dcb46f58.js";import{R as Y}from"./index.51e1f7e9.js";import"./uv-icon.vue_vue_type_style_index_0_scoped_23936b10_lang.7145f5b2.js";import"./index.6c6cd02e.js";import"./utils.052a93d2.js";import"./uv-image.cfd78d3c.js";import"./uv-transition.e8fc5cb3.js";import"./createAnimation.a561e009.js";import"./space.587a4c0a.js";import"./uv-button.4742932f.js";import"./uv-loading-icon.1a9e10db.js";import"./uv-loading-icon.vue_vue_type_style_index_0_scoped_bad0efbf_lang.8998f762.js";import"./uv-button.vue_vue_type_style_index_0_scoped_bc0e850d_lang.79bfdc50.js";import"./index.dcf9623e.js";import"./usePage.48b817d3.js";import"./index.f7879302.js";import"./config.6730da78.js";const J=[{label:"商品总价",field:"costPrice",prefix:"¥"},{label:"优惠",field:"couponPrice",prefix:"-¥"},{label:"运费",field:"storePostage",prefix:"¥"},{label:"总计",field:"totalPrice",prefix:"¥"}];function K(a){const{cartList:l,doGetCartList:n}=a,{toast:c}=R(),{push:i}=s(),u=e(!1),r=t((()=>u.value?"取消":"管理")),d=e([]),p=e(!1);const f=e(void 0);async function m(){if(o(d).length<=0)return f.value=void 0;const e=await z({cartId:o(d).join(","),orderType:1,useIntegral:!1});f.value=e.priceGroup}return{manage:u,manageStr:r,shoppingSelect:d,shoppingSelectAll:p,statisticsInfo:f,handleSingleSelect:async function(e){p.value=e.length===l.value.length,setTimeout((async()=>{await m()}),100)},handleSelectAll:async function(e){d.value=e?l.value.map((e=>e.id)):[],p.value=e,await m()},computeSelectInfoByShoppingSelect:m,openDelModal:function(e){if(o(d).length<=0)return c({title:"请勾选需要删除的商品"});o(e).show()},doDelete:async function(){await D({ids:d.value}),await n(),await async function(){d.value=[],p.value=!1,await m()}()},submitOrder:function(){if(o(d).length<=0)return c({title:"请勾选需要购买的商品"});i({url:"/pages/submitOrder/submitOrder"},{data:{cartId:d.value.toString()}})}}}function X(){const{toast:t}=R(),a=e(void 0),o=e(void 0),s=e(void 0),n=e(void 0);function c(){a.value=s.value=void 0}return{openProductItem:n,openSkuSkuId:o,openSkuProductId:a,handleOpenSkuSelect:async function(e,t){await(async e=>{n.value=await q(e)})({productId:e.productId}),o.value=e.productInfo.attrInfo.id,a.value=e.productId,s.value=e.id,await l((()=>{t.open(e.cartNum)}))},handleCloseSkuSelect:c,handleSubmitSkuSelect:async function(e,o,l,n,i){if(!a.value)return;const{store:u,num:r}=e;if(await U({id:s.value,productId:a.value,productAttrUnique:u.unique}),"function"==typeof n){const e=l.find((e=>e.id===s.value));await n({detail:{value:r}},e)}setTimeout((async()=>{await i(),t({title:"修改成功",icon:"success"}),c()}),400)}}}const Z=H({__name:"CartEmpty",setup(e){const{pushToTab:t}=s();return(e,a)=>{const l=d;return n(),c(F,{iconSrc:o(M),padding:"220rpx 0 0 0"},{default:i((()=>[u(" 购物车里空空如也~ ")])),bottom:i((()=>[r(l,{class:"go-on-btn",onClick:a[0]||(a[0]=e=>o(t)({url:"/root/index/index"}))},{default:i((()=>[u(" 继续逛逛 ")])),_:1})])),_:1},8,["iconSrc"])}}},[["__scopeId","data-v-ba7d9f9d"]]),ee=H({__name:"shoppingCart",setup(s){const z=e(),D=e(),{showEmpty:U,cartList:q,doGetCartList:F}=function(){const o=e(!1),l=e([]),s=t((()=>l.value.length<=0));async function n(){try{o.value=!0;const e=await T();l.value=(null==e?void 0:e.valid)??[]}finally{o.value=!1}}return a((async()=>{await n()})),{showEmpty:s,cartListLoading:o,cartList:l,doGetCartList:n}}(),{manage:M,manageStr:H,shoppingSelect:ee,shoppingSelectAll:te,handleSingleSelect:ae,handleSelectAll:oe,statisticsInfo:le,computeSelectInfoByShoppingSelect:se,openDelModal:ne,doDelete:ce,submitOrder:ie}=K({cartList:q,doGetCartList:F}),{openProductItem:ue,openSkuSkuId:re,openSkuProductId:de,handleOpenSkuSelect:pe,handleCloseSkuSelect:fe,handleSubmitSkuSelect:me}=X(),{handleCartNumberInputChange:_e,handleCartNumberChange:ve}=function(e){const{toast:t}=R(),a=E.debounce((async t=>{await O({id:t.id,number:t.cartNum}),e&&e.afterChange&&await e.afterChange()}),300);return{handleCartNumberInputChange:function(e,o){const s=parseInt(e.detail.value);return s<=0?(o.cartNum=1,void t({title:"至少选一件哦~"})):s>o.trueStock?(o.cartNum=o.productInfo.stock,void t({title:"超出库存啦~"})):void l((()=>{o.cartNum=s.toString().replace(/^0+/,""),a(o)}))},handleCartNumberChange:function(e,t="plus"){"plus"===t?e.cartNum+1>e.trueStock?e.cartNum=e.trueStock:e.cartNum+=1:e.cartNum<=1?e.cartNum=1:e.cartNum-=1,a(e)}}}({afterChange:se});p((()=>{var e,t;null==(e=z.value)||e.close(),null==(t=D.value)||t.close()}));const ge=e(0);f({success:e=>{ge.value=e.safeAreaInsets.bottom}});const{scrollTop:he}=Q();return(e,t)=>{const a=d,l=y(j("uv-checkbox"),N),s=y(j("uv-icon"),L),p=w,f=y(j("card"),G),O=y(j("uv-checkbox-group"),P);return n(),m(_,null,[r(W,{"scroll-top":o(he),"system-bar-area-bg":"#fff","header-area-bg":"#fff","bg-change-by-scroll":""},{default:i((()=>[u(" 购物车 ")])),_:1},8,["scroll-top"]),o(U)?(n(),c(Z,{key:1})):(n(),c(a,{key:0},{default:i((()=>[r(a,{class:"cart-manage"},{default:i((()=>[r(a,{onClick:t[0]||(t[0]=e=>M.value=!o(M))},{default:i((()=>[u(v(o(H)),1)])),_:1})])),_:1}),r(O,{modelValue:o(ee),"onUpdate:modelValue":t[2]||(t[2]=e=>b(ee)?ee.value=e:null),shape:"circle",activeColor:"#ee6d46",onChange:o(ae)},{default:i((()=>[r(f,{class:"shopping-checkbox"},{default:i((()=>[(n(!0),m(_,null,g(o(q),(e=>(n(),c(a,{key:e.id,class:"shopping-item"},{default:i((()=>[r(l,{name:e.id},null,8,["name"]),r(a,{class:"good"},{default:i((()=>[r(A,{row:"",imgWidth:"200rpx","info-padding":"0 0 0 40rpx",goods:e.productInfo},{options:i((()=>[r(a,{class:"goods-options"},{default:i((()=>[r(a,{class:"sku-row flex"},{default:i((()=>[r(a,{class:"sku-info flex flex-jc__sb flex-ai__center",onClick:C((t=>o(pe)(e,D.value)),["stop"])},{default:i((()=>[r(a,{class:"info"},{default:i((()=>[u(v(e.productInfo&&e.productInfo.attrInfo&&e.productInfo.attrInfo.sku),1)])),_:2},1024),r(s,{class:"icon",name:"arrow-down",color:"#ccc",size:"12"})])),_:2},1032,["onClick"])])),_:2},1024),r(a,{class:"price-row flex flex-ai__center flex-jc__sb"},{default:i((()=>[r(a,{class:"price-box flex flex-ai__end"},{default:i((()=>[u(" ¥"+v(e.truePrice)+" ",1),r(a,{class:"old-price"},{default:i((()=>[u(" ¥"+v(e.productInfo.otPrice),1)])),_:2},1024)])),_:2},1024),r(a,{class:"cart-num flex flex-ai__center flex-jc__sb",onClick:t[1]||(t[1]=C((()=>{}),["stop"]))},{default:i((()=>[r(a,{class:"button",onClick:t=>o(ve)(e,"minus")},{default:i((()=>[r(s,{name:"minus",color:"#333",size:"12"})])),_:2},1032,["onClick"]),r(a,{class:"input"},{default:i((()=>[r(p,{type:"number",inputmode:"numeric",modelValue:e.cartNum,"onUpdate:modelValue":t=>e.cartNum=t,onBlur:t=>o(_e)(t,e)},null,8,["modelValue","onUpdate:modelValue","onBlur"])])),_:2},1024),r(a,{class:"button",onClick:t=>o(ve)(e,"plus")},{default:i((()=>[r(s,{name:"plus",color:"#333",size:"12"})])),_:2},1032,["onClick"])])),_:2},1024)])),_:2},1024)])),_:2},1024)])),_:2},1032,["goods"])])),_:2},1024)])),_:2},1024)))),128)),r(a,{class:h({"select-product-settle-info":!0,show:o(ee).length>0})},{default:i((()=>[(n(!0),m(_,null,g(o(J),((e,t)=>(n(),c(a,{class:"row flex flex-ai__center flex-jc__sb",key:t},{default:i((()=>[r(a,{class:"label"},{default:i((()=>[u(v(e.label),1)])),_:2},1024),o(le)?(n(),c(a,{key:0},{default:i((()=>[u(v(e.prefix)+" "+v(o(le)[e.field].toFixed(2)),1)])),_:2},1024)):I("",!0)])),_:2},1024)))),128))])),_:1},8,["class"])])),_:1})])),_:1},8,["modelValue","onChange"]),r(a,{class:"screen action-bar",style:S({paddingBottom:`${ge.value}px`})},{default:i((()=>[r(a,{class:"action-info"},{default:i((()=>[r(a,{class:"action-checkbox"},{default:i((()=>[r(O,{shape:"circle",activeColor:"#ee6d46"},{default:i((()=>[r(l,{name:"all",checked:o(te),onChange:o(oe)},{default:i((()=>[u(" 全选 ")])),_:1},8,["checked","onChange"])])),_:1})])),_:1})])),_:1}),r(a,{class:"action-btns"},{default:i((()=>[k(r(a,{class:"action-total"},{default:i((()=>[u(" 总计:¥"+v(o(le)?o(le).totalPrice.toFixed(2):"0.00"),1)])),_:1},512),[[x,!o(M)]]),o(M)?(n(),c(a,{key:1,class:"button",onClick:t[3]||(t[3]=e=>o(ne)(z.value))},{default:i((()=>[u(" 删除 ")])),_:1})):(n(),c(a,{key:0,class:"button",onClick:o(ie)},{default:i((()=>[u("结算 ")])),_:1},8,["onClick"]))])),_:1})])),_:1},8,["style"])])),_:1})),r($),r(a,{class:"action-height"}),r(a,{class:"h5-tabbar-height"}),r(V,{style:{"z-index":"999"},id:o(de),ref_key:"goodsAttrSelectRef",ref:D,"goods-detail":o(ue),"sku-id":o(re),onSelect:t[4]||(t[4]=e=>o(me)(e,D.value,o(q),o(_e),o(F)))},null,8,["id","goods-detail","sku-id"]),r(B,{ref_key:"modalRef",ref:z,content:"确认要删除这些购物车数据吗?",onConfirm:o(ce)},null,8,["onConfirm"]),r(Y,{"scroll-top":o(he)},null,8,["scroll-top"])],64)}}},[["__scopeId","data-v-6c568d0d"]]);export{ee as default};