1 |
- import{r as d,m as n}from"./index.2c5047b1.js";import{d as w,ap as u,T as f,a as t,al as k,ak as b,I as C,j as l,C as S,q as p,k as y,l as m,ac as x,am as h,ad as j,z as v,x as I,F as L,aq as P,u as T,ar as _,P as G}from"./vendor.a0144ce9.js";/* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css *//* empty css */import{i as D}from"./icon-shop-cart.43383536.js";import{A as B}from"./index.48672c15.js";/* empty css */import"./icon-sell-out.bc315722.js";const N="_swipeItemImg_c6w30_1",A="_swipe_c6w30_1",H="_goodsHead_c6w30_17",q="_priceGroup_c6w30_24",E="_price_c6w30_24",M="_delPrice_c6w30_36",W="_stock_c6w30_42",F="_goodsName_c6w30_46",J="_row_c6w30_52",R="_col_c6w30_56",V="_radio_c6w30_60",$="_badge_c6w30_95",z="_section_c6w30_99",O="_detail_c6w30_103",U="_photoDetail_c6w30_128",Z="_goodsDetail_c6w30_132",K="_actionBar_c6w30_135",Q="_addCertBtn_c6w30_156",X="_buyGroup_c6w30_160",Y="_selectWrap_c6w30_170";var e={swipeItemImg:N,swipe:A,"custom-indicator":"_custom-indicator_c6w30_7",goodsHead:H,priceGroup:q,price:E,delPrice:M,stock:W,goodsName:F,row:J,col:R,"radio-group":"_radio-group_c6w30_60",radio:V,badge:$,section:z,detail:O,photoDetail:U,goodsDetail:Z,actionBar:K,addCertBtn:Q,buyGroup:X,selectWrap:Y};function tt(o){return typeof o=="function"||Object.prototype.toString.call(o)==="[object Object]"&&!I(o)}var wt=w({name:"goods-detail",data(){return{id:this.$route.query.id,albumPics:[],product:{},radio:0,skuStockListTemp:[],detailMobileHtml:"",loading:!1,addGoodsShow:!1,selectGoodsItem:{},cartCount:0,showType:"cart"}},computed:{skuStockList(){const o=this.product,i=this.skuStockListTemp.length>0?this.skuStockListTemp:[{id:-1,price:o.price,pic:o.pic,stock:o.stock,spData:null}];return i.forEach(a=>{if(a.spData){const s=JSON.parse(a.spData);let r="";s.forEach(c=>{r+=`${c.value}`}),a.spDataJson=r}else a.spDataJson="\u9ED8\u8BA4"}),i},getPrice(){let o=this.skuStockList.filter(i=>i.id==this.radio);return o&&Array.isArray(o)&&o.length?o[0].price:0}},async mounted(){try{this.loading=!0;const o=await d.get(`/api-mall-portal/product/detail/${this.id}`);this.loading=!1;const i=o.data||{};if(this.albumPics=[i.product.pic].concat(i.product.albumPics.split(",")).filter(a=>a),this.product=i.product,this.skuStockListTemp=i.skuStockList||[],this.skuStockListTemp.length){let a=this.skuStockListTemp.length;for(let s=0;s<a;s++){let r=this.skuStockListTemp[s];if(r.stock>=0){this.radio=r.id;break}}}this.detailMobileHtml=i.product.detailMobileHtml}catch{}this.getCartCount()},methods:{onPreview(o){u({images:this.albumPics,startPosition:o,closeable:!0})},onShowImg(o){const{localName:i}=o.srcElement;if(i!=="img")return;let a=0;const s=document.querySelectorAll(".msgWrap img");let r=Array.from(s).map((c,g)=>(o.srcElement==c&&(a=g),c.src));u({images:r,startPosition:a,closeable:!0})},onShowCart(o="cart"){this.selectGoodsItem={price:this.product.pic,stock:this.product.stock,skuStockList:this.skuStockListTemp.length?this.skuStockListTemp:void 0,brandName:this.product.brandName,productCategoryId:this.product.productCategoryId,name:this.product.name,productSn:this.product.productSn,productSubTitle:this.product.subTitle,id:this.product.id},this.showType=o,this.addGoodsShow=!0},onBuy(){if(!this.radio)return f("\u8BF7\u9009\u62E9\u89C4\u683C");console.log(!0)},async getCartCount(){try{let{code:o,data:i}=await d.get("/api-mall-portal/cart/list");o===200&&(this.cartCount=i.length)}catch{}}},render(){let o;const i=this.product,a=this.skuStockList.filter(s=>s.id===this.radio);return t("div",{class:e.goodsDetail},[t(k,{class:e.swipe,lazyRender:!0},{default:()=>[this.albumPics.map((s,r)=>t(b,null,{default:()=>[t(C,{class:e.swipeItemImg,src:s,onClick:()=>this.onPreview(r),fit:"cover"},null)]}))],indicator:s=>s.total>1&&t("div",{class:e["custom-indicator"]},[(s.active||0)+1,l(" / "),s.total])}),t(S,{border:!1,class:[e.goodsHead,"mb12"]},{default:()=>[t(p,{center:!0,border:!1},{title:()=>t("div",{class:e.priceGroup},[t("span",{class:e.price},[t("i",null,[l("\xA5")]),n(this.getPrice)]),t("del",{class:e.delPrice},[l("\xA5"),n(i.originalPrice)])])}),t(p,{center:!0,border:!1,title:i.name,titleClass:[e.goodsName,"van-ellipsis"]},null)]}),t(y,{class:[e.row,"mb12"]},{default:()=>[t(m,{span:4,class:e.col},{default:()=>[l("\u89C4\u683C")]}),t(m,{span:20},{default:()=>[a.length?t("div",{class:e.selectWrap},[a[0].stock<=0?"\u5F53\u524D\u6B3E\u5F0F\u6682\u65F6\u7F3A\u8D27":`\u5DF2\u9009\u62E9 ${a[0].spDataJson}`]):t("div",null,[l("\u8BF7\u9009\u62E9 \u89C4\u683C")]),t(x,{class:e["radio-group"],modelValue:this.radio,"onUpdate:modelValue":s=>this.radio=s},tt(o=this.skuStockList.map(s=>{const r=s.id===this.radio,c=r?"primary":"default";return t(h,{position:"top-right",content:s.stock<=0?"\u7F3A\u8D27":"",color:"#999999",class:e.badge,offset:[-20,0]},{default:()=>[t(j,{class:e.radio,name:s.id,disabled:s.stock<=0,onClick:()=>{s.stock<=0||(this.radio=s.id)}},{default:()=>[t(v,{size:"large",plain:r,type:c},{default:()=>[s.spDataJson]})]})]})}))?o:{default:()=>[o]})]})]}),this.detailMobileHtml&&t("div",{class:[e.section]},[t("div",{class:e.detail},[t("span",null,[l("\u56FE\u6587\u8BE6\u60C5")])]),t("div",{class:[e.photoDetail,"msgWrap"],onClick:this.onShowImg,innerHTML:this.detailMobileHtml},null)]),!this.loading&&t(L,null,[t(P,{class:e.actionBar,"safe-area-inset-bottom":!0},{default:()=>[t(h,{content:this.cartCount,showZero:!1,onClick:()=>{this.$router.push("/cart")}},{default:()=>[t(T,{name:D,size:30},null)]})],button:()=>t("div",{class:e.buyGroup},[t(_,{type:"primary",class:e.addCertBtn,text:"\u52A0\u5165\u8D2D\u7269\u8F66",onClick:()=>this.onShowCart()},null),t(_,{type:"primary",text:"\u7ACB\u5373\u8D2D\u4E70",onClick:()=>this.onShowCart("cartConfirm")},null)])})]),t(G,{show:this.addGoodsShow,closeable:!0,position:"bottom",round:!0,onClose:()=>{this.addGoodsShow=!1}},{default:()=>[t(B,{onGetCartCount:()=>this.getCartCount(),item:this.selectGoodsItem,defaultRadio:this.radio,showType:this.showType},null)]})])}});export{wt as default};
|