You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

363 lines
20 KiB

<!--pages/info/sceneProductInfo/index.wxml-->
<wxs src="../../../utils/filter.wxs" module="tool" />
<title title="{{isBook?'产品详情':'景点详情'}}"></title>
<view class="iconfont icon-fenxiang" bindtap="share"></view>
<image lazy-load wx:for="{{info.product}}" style="{{aniSkuIndex==index?('top:689px;'):('top:'+top+'px;'+cartImgInfo)}}" class="headimg{{aniSkuIndex==index?' active':''}}" src="{{item.headimg}}" mode="aspectFill"></image>
<swiper class="swiper" indicator-dots="{{true}}" wx:if="{{info}}" autoplay="{{false}}" interval="{{2000}}" duration="{{300}}">
<block wx:if="{{info.videourl}}" wx:key="*this">
<swiper-item>
<video bindplay="playVideo" src="{{info.videourl}}" autoplay="{{false}}" muted="{{true}}"
show-mute-btn="{{true}}" show-background-playback-button="{{false}}"
></video>
</swiper-item>
</block>
<block wx:for="{{info.listimg}}" wx:key="*this">
<swiper-item>
<image lazy-load src="{{item}}" mode="aspectFill"></image>
</swiper-item>
</block>
</swiper>
<view class="top-info" wx:if="{{info}}" style="position:relative">
<view class="title">{{info.title}}</view>
<view class="tags-box textOver">
<view class="tag textOver" wx:for="{{info.display_tags}}">{{item}}</view>
</view>
<view class="address-box" bind:tap="viewOPenTime">
<view class="address-text">
<view class="info-address">{{isBook?"活动":"开园"}}时间</view>
<view class="sub-info-address textOver">{{info.open_time}}</view>
</view>
<view class="iconfont">
<image lazy-load src="https://static.ticket.sz-trip.com/uploads/20250808/b64e49752fc3e0831db700331db766dd.png"></image>
<view>详情</view>
</view>
</view>
<view class="address-box true-address" bindtap="gotolocation">
<view class="address-text">
<view class="info-address">地址</view>
<view class="sub-info-address textOver">{{info.address}}</view>
</view>
<view class="iconfont">
<image lazy-load src="https://static.ticket.sz-trip.com/uploads/20250808/0faddf87d40d7bd782a6aab047f2046e.png"></image>
<view>导航</view>
</view>
</view>
<view class="status-text{{info.garden_flag==0?' disable':''}}" wx:if="{{info.garden_flag_text && info.garden_flag!=1}}">{{info.garden_flag_text}}</view>
</view>
<view class="tab-info-container" wx:if="{{info}}">
<view class="tab-item {{showTabIndex==0?'active':''}}" bind:tap="changeTabIndex" data-value="0">预订</view>
<view class="tab-item {{showTabIndex==2?'active':''}}" bind:tap="changeTabIndex" data-value="2">详情/政策</view>
<view class="tab-item {{showTabIndex==1?'active':''}}" bind:tap="changeTabIndex" data-value="1">评价/问答</view>
</view>
<view class="sku-type-container" wx:if="{{info&&showTabIndex==0}}">
<view class="left-type-container">
<view class="sku-type {{activeIndex==index?'active':''}}" wx:for="{{info.product}}"
data-index="{{index}}" bindtap="changeMenu">
{{item.title}}
</view>
</view>
<scroll-view class="right-container" scroll-y="{{true}}" scroll-top="{{scrollHeight}}" enhanced="{{true}}" binddragend="skuScroll">
<view class="box" style="margin: 0;padding: 20rpx;" wx:if="{{info}}" wx:for="{{info.product}}">
<view class="allowance-box" wx:if="{{info.allowance}}" bindtap="changeAllowance">
补贴价
<view class="com-price two">¥{{ info.allowance.mini_price / 100 }}起</view>
<view class="yellow">单品最高补贴{{ info.allowance.max_price / 100 }}元</view>
</view>
<view id="{{'scrollItem'+index}}" class="box-top scroll-item-top">
<text>{{item.title}}</text>
</view>
<view class="product-item" wx:for="{{item.sku}}" wx:for-item="sku" wx:for-index="itemI">
<view class="skutitle">{{sku.sku_name}}</view>
<view class="product-box">
<view class="product-left textOver">
<view class="product-tags">
<!-- <view class="product-tag textOver" wx:for="{{sku.display_tags}}">{{item}}</view> -->
<view class="product-tag textOver" >{{sku.display_tags_str}}</view>
</view>
<view class="order-tip-text" bindtap="selectDate" data-sku="{{sku}}" data-product="{{item}}"
data-index="1"
data-disable="{{item.flag==0 || sku.flag=='off'?1:0}}">ⓘ预订须知></view>
</view>
<view class="product-right">
<view class="price">
<text>¥</text>
<text>{{sku.price?sku.price/100:0}}</text>
<!-- <text wx:if="{{sku.is_merged}}">起</text> -->
</view>
<!-- showOrder selectDate -->
<view bindtap="selectDate" data-sku="{{sku}}" data-product="{{item}}"
data-disable="{{item.flag==0 || sku.flag=='off'?1:0}}" data-index="0"
class="btn{{item.flag==0 || sku.flag=='off'?' disable':''}}">预订</view>
</view>
</view>
</view>
</view>
</scroll-view>
</view>
<view class="fixed-bottom">
<navigator url="/pages/user/service/index" catchtap="pagePoint" data-event='product_customservice' class="kefu-box">
<view class="iconfont icon-kefu"></view>
<view>客服</view>
</navigator>
<view bindtap="like" class="kefu-box" style="margin-left:70rpx">
<view class="iconfont {{isLike==1?'icon-shoucang':'icon-xin'}}"></view>
<view>收藏</view>
</view>
<view style="flex:1"></view>
<view class="btns" wx:if="{{info.id!=914626}}">
<view class="btn" bindtap="showCart" wx:if="{{info.product[0].type!='line' }}">加入购物车</view>
<!-- <view class="btn {{info.product[0].type=='line' ? 'btn-r':''}}" bindtap="showOrder" wx:if="{{info && info.flag==1}}">立即预订</view> -->
<view class="btn disable" wx:elif="{{info}}">该商品已下架</view>
</view>
</view>
<!-- 购物车悬浮框 -->
<navigator url="/pages/user/cartlist/list" catchtap="pagePoint" data-event='product_cart_click' class="cart-box" id="cart">
<image lazy-load src="https://static.ticket.sz-trip.com/xcxImages/info/cart.png" mode="widthFix"></image>
<view class="cart-num">{{cartCount}}</view>
</navigator>
<!-- <view class="mask" wx:if="{{skuFlag}}">
<view class="mask-bg" bindtap="hideSku"></view>
<view class="mask-content">
<view class="iconfont icon-close" bindtap="hideSku"></view>
<view class="sku-info-box">
<image lazy-load id="skuImg" src="{{info.headimg}}" mode="aspectFill"></image>
<view class="sku-info">
<view class="sku-price">{{info.product[0].sku[skuIndex].price/100}}
<view class="allowance" wx:if="{{allowance_data}}">
补贴价:¥{{ (1 - allowance_data.discount_rate / 100) * info.sku[skuIndex].price / 100 }}</view>
</view>
<view class="sku-name">已选择:{{info.product[0].sku[skuIndex].sku_name}}</view>
</view>
</view>
<view class="sku-names">
<view bindtap="selectSku" data-index="{{index}}" class="sku-name-item textOver{{index==skuIndex?' active':''}}" wx:for="{{info.product[0].sku}}">{{item.sku_name}}</view>
</view>
<view class="number-box">
<text>数量</text>
<view class="iconfont icon-sami-select" bindtap="minus"></view>
<view class="number">{{producNum}}</view>
<view class="iconfont icon-add-select" bindtap="add"></view>
</view>
<view style="height:138rpx"></view>
<view class="btn-box">
<view class="mask-btn" bindtap="order" data-sku="{{sku}}" data-product="{{item}}" wx:if="{{info && info.flag==1}}" data-disable="{{item.flag==0 || sku.flag=='off'?1:0}}" data-disable="{{item.flag==0 || sku.flag=='off'?1:0}}">{{skuFlag=='cart'?'确认':'立即购买'}}
</view>
<view class="mask-btn disable" wx:else>该商品已下架</view>
</view>
</view>
</view> -->
<!-- 日期弹框 -->
<!-- <date-popup wx:if="{{showDate}}"></date-popup> -->
<view class="mask" wx:if="{{showDate}}">
<view class="mask-bg" bindtap="hideDate"></view>
<view class="mask-content1">
<view class="iconfont icon-close" bindtap="hideDate"></view>
<view class="mask-top-menu">
<view class="{{skuShowIndex==0?'active':''}}" bind:tap="changeSimpleVal" data-keyname="skuShowIndex" data-val="0">预订选择</view>
<view class="{{skuShowIndex==1?'active':''}}" bind:tap="changeSimpleVal" data-keyname="skuShowIndex" data-val="1">预订须知</view>
</view>
<scroll-view class="mask-scroll-content" scroll-y scroll-into-view="{{skuShowDomId}}" scroll-with-animation>
<date id="sku-show-0" wx:if="{{showDate2}}" bind:onChangeDate="changeDate" bind:onChangeTime="changeTime"
product="{{product}}" datePrice="{{skuPriceDate}}" endDays="{{30}}"></date>
<view id="sku-show-1" class="orderNotice" wx:if="{{orderSku}}">
<view style="font-weight: 500;font-size: 15px;color: #000000;margin-bottom: 26rpx;">预订须知</view>
<view class="scroll-menus" wx:if="{{orderProduct&&orderProduct.product_detail}}">
<view class="scroll-menu-item{{noticeIndex==0?' active':''}}"
bindtap="changeNoticeIndex" data-index="0" style="width: 276rpx;">预订须知</view>
<view class="scroll-menu-item{{noticeIndex==1?' active':''}}"
bindtap="changeNoticeIndex" data-index="1" style="width: 276rpx;">产品详情</view>
</view>
<rich-text wx:if="{{noticeIndex==0}}" class="detail" nodes="{{tool.formateRichText(orderSku.sku_model.bookinfo)}}"></rich-text>
<rich-text wx:if="{{noticeIndex==1}}" class="detail" nodes="{{tool.formateRichText(orderProduct.product_detail)}}"></rich-text>
</view>
<view style="height: 180rpx;"></view>
</scroll-view>
<view class="bottom-box">
<view>
合计: <text class="totalPrice">{{showPrice/100}}</text>
</view>
<view class="next" bindtap="order" data-sku="{{sku}}" data-product="{{item}}">
下一步
</view>
</view>
</view>
</view>
<!-- 规格弹框 -->
<view class="mask" wx:if="{{skuFlag == 'cart'}}">
<view class="mask-bg" bindtap="hideSku"></view>
<view class="mask-content">
<view class="iconfont icon-close" bindtap="hideSku"></view>
<view class="sku-info-box">
<image lazy-load id="skuImg" src="{{skuList[skuIndex].headimg||skuList[0].headimg}}" mode="aspectFill"></image>
<view class="sku-info">
<view class="sku-price">{{skuIndex||skuIndex==0?skuList[skuIndex].price/100:skuList[0].price/100}}
<view class="allowance" wx:if="{{allowance_data}}">
补贴价:¥{{ (1 - allowance_data.discount_rate / 100) * info.sku[skuIndex].price / 100 }}</view>
</view>
<view class="sku-name">已选择:{{skuList[skuIndex].sku_name || skuList[0].sku_name}}</view>
</view>
</view>
<view class="sku-names">
<view bindtap="selectSku" data-index="{{index}}" data-item="{{item}}" class="sku-name-item textOver{{index==skuIndex?' active':''}} {{(item.stock==0&&item.is_third_stock!=1)||item.is_salee==1?' disable':''}}" wx:for="{{skuList}}">{{item.sku_name}}</view>
</view>
<view class="number-box">
<text>数量</text>
<view class="iconfont icon-sami-select" bindtap="minus"></view>
<view class="number">{{productNum}}</view>
<view class="iconfont icon-add-select" bindtap="add"></view>
</view>
<view style="height:138rpx"></view>
<view class="btn-box">
<view class="mask-btn" bindtap="order" data-product="{{item}}" wx:if="{{info && info.flag==1}}">{{skuFlag=='cart'?'确认':'立即购买'}}
</view>
<!-- <view class="mask-btn" bindtap="order" data-product="{{item}}" wx:if="{{info && info.flag==1}}">{{skuFlag=='cart'?'确认':'立即购买'}}
</view> -->
<view class="mask-btn disable" wx:else>该商品已下架</view>
</view>
</view>
</view>
<!-- <view class="empty-box">
<view>这里空空如也,快去向大家提问吧!</view>
<view class="empty-btn">去提问</view>
</view> -->
<view wx:if="{{showTabIndex==1}}">
<view class="box box-gb-20241216" style="margin: 0;">
<view class="box-top">
<text class="iconfont icon-tiwen"></text><text>游客点评</text><text class="score" wx:if="{{info && commentTotal>0}}">{{info.rate}}分</text>
<navigator url="/pages/list/comments/index?sceneid={{id}}" style="display: inline;"> <text class="all-comment-num">共{{commentTotal}}条 <text style="font-family: fangsong; font-weight: bold;color: #000;">></text></text>
</navigator>
</view>
<view class="empty-box" wx:if="{{!comment || comment.length==0}}">
<view>这里空空如也,快去点评吧!</view>
<!-- <navigator url="/pages/ask/index?id={{id}}" class="empty-btn">去点评</navigator> -->
</view>
<navigator wx:for="{{comment}}" wx:for-index="index" url="/pages/list/comments/index?sceneid={{info.id}}&&index={{index}}" class="product-comment">
<view class="product-comment-top">
<image lazy-load src="{{item.user.avatar}}" mode="aspectFill"></image>
<view class="comment-info">
<view class="nickname">{{item.nickname}}</view>
<view class="iconfont"><text wx:for="{{item.rate}}" class="icon-xingxing"></text><text wx:for="{{5 - item.rate}}" style="color:#999" class="icon-xingxing"></text></view>
</view>
<!-- <view class="comment-date">{{item.create_time}}</view> -->
</view>
<view class="comment-content">{{item.content}}</view>
<view wx:if="{{item.img_list}}">
<view class="img-box" wx:for="{{item.img_list}}" wx:for-index="index" wx:for-item="img" mode="scaleToFill" data-img="{{img}}" data-list="{{item.img_list}}">
<image lazy-load wx:if="{{index<6}}" class="imgs" src="{{img}}" bindtap="imgsc">
</image>
<view class="all" wx:if="{{index==5}}" >
<view>共{{item.img_list.length}}张</view>
<view>查看全部</view>
</view>
</view>
</view>
<view class="sku" wx:if="{{item.sku_name}}">{{item.sku_name}}</view>
</navigator>
<navigator url="/pages/list/comments/index?sceneid={{id}}" wx:if="{{comment.length>0}}" class="more-comment-btn">
查看全部点评<text class="iconfont icon-you"></text></navigator>
</view>
<view class="box box-gb-20241216">
<view class="box-top" style="border-bottom:1px solid #D9D9D9;">
<text class="iconfont icon-tiwen1"></text><text>问大家</text>
</view>
<view class="empty-box" wx:if="{{!ask || ask.length==0}}">
<view>这里空空如也,快去向大家提问吧!</view>
<navigator url="/pages/ask/index?id={{id}}" catchtap="pagePoint" data-event="scene_question" class="empty-btn">去提问
</navigator>
</view>
<view class="ask-list" wx:else>
<navigator url="/pages/ask/info/index?id={{item.id}}" catchtap="pagePoint" data-event="scene_comment" class="ask-item" wx:for="{{ask}}">
<view class="item-ques">
<image lazy-load class="item-icon" src="https://static.ticket.sz-trip.com/xcxImages/ask/ask.png" mode="widthFix"></image>
<view class="ques">{{item.question_name}}</view>
<view class="ques-num" wx:if="{{item.answer.total!=0}}">{{item.answer.total}}个回答</view>
<view class="ques-num" wx:if="{{item.answer.total==0}}">暂无回答</view>
</view>
<!-- <view class="item-ques">
<image lazy-load class="item-icon" src="https://static.ticket.sz-trip.com/xcxImages/ask/ans.png" mode="widthFix"></image>
<view class="ans">{{item.answer && item.answer.lastest_answer?item.answer.lastest_answer.answer:"暂无回答"}}</view>
</view>
<view class="ques-tip">
<view class="ques-time">{{item.created_time}}提问</view> -->
<!-- <view class="ans-number">全部{{item.answer && item.answer.total ? item.answer.total : 0}}个回答 <text class="iconfont icon-you"></text> </view> -->
<!-- </view> -->
</navigator>
<navigator style="border-top:1rpx solid #ccc" url="/pages/ask/index?id={{info.id}}" class="more-comment-btn">
查看全部问答<text class="iconfont icon-you"></text></navigator>
</view>
</view>
</view>
<view style="background:white" wx:if="{{showTabIndex==2}}">
<view class="scroll-menus">
<view class="scroll-menu-item{{menuType==0?' active':''}}" bindtap="changePopMenu" data-index="0">景点介绍</view>
<view class="scroll-menu-item{{menuType==1?' active':''}}" bindtap="changePopMenu" data-index="1">开放时间</view>
<view class="scroll-menu-item{{menuType==2?' active':''}}" bindtap="changePopMenu" data-index="2">优待政策</view>
</view>
<view class="scroll-content" style="padding: 20rpx 33rpx;">
<view class="info-title">{{menuType==0?"景点介绍":menuType==1?"开放时间":"优待政策"}}</view>
<rich-text wx:if="{{menuType==0}}" class="detail" nodes="{{tool.formateRichText(info.content)}}"></rich-text>
<rich-text wx:if="{{menuType==1}}" class="detail" nodes="{{tool.formateRichText(info.time_info)}}"></rich-text>
<rich-text wx:if="{{menuType==2}}" class="detail" nodes="{{tool.formateRichText(info.extra_info)}}"></rich-text>
</view>
</view>
<view style="height:160rpx"></view>
<notice bookingInfo="{{bookingInfo}}" skuName="{{bookingInfoTitle}}" wx:if="{{bookingInfo}}" bind:close="closeMask">
</notice>
<view style="position:absolute;right:0;left:-10000rpx;top:-20000rpx;z-index:-1">
<canvas canvas-id='imageCanvas' class='imageCanvas' style="width:551rpx;height:643rpx;" disable-scroll='true'>
</canvas>
<canvas class="canvasCode" style="opacity:0;width:500px;height:500px" canvas-id="myQrcode"></canvas>
</view>
<view class="mask" wx:if="{{showShareFlag}}" style="align-items: center;">
<view class="mask-bg" bindtap="share"></view>
<view class="mask-content share-img-box" style="bottom: 200rpx;">
<image lazy-load class="share-img" src="{{shareImg}}" mode="widthFix"></image>
<view class="share-tips">
<view style="position:relative">
<image lazy-load class="img" src="https://static.ticket.sz-trip.com/xcxImages/info/img.png" mode="widthFix">
</image>
<view>保存图片到相册</view>
<view class="tipimg">
<image lazy-load src="https://static.ticket.sz-trip.com/xcxImages/info/ok.png" mode="widthFix"></image>
</view>
</view>
<image lazy-load style="width:36rpx" src="https://static.ticket.sz-trip.com/xcxImages/info/arrow2.png" mode="widthFix"></image>
<view style="position:relative">
<image lazy-load class="img" src="https://static.ticket.sz-trip.com/xcxImages/info/code.png" mode="widthFix">
</image>
<view>微信识别二维码</view>
<view class="tipimg">
<image lazy-load src="https://static.ticket.sz-trip.com/xcxImages/info/ok1.png" mode="widthFix"></image>
</view>
</view>
</view>
<view class="save-btn" bindtap="save">保存到相册</view>
</view>
</view>
<view class="mask mask-allowance" wx:if="{{showAllowance}}">
<view bindtap="changeAllowance" class="mask-bg"></view>
<view class="mask-content rule-box">
<view class="rule-title">{{info.allowance.title}}</view>
<rich-text nodes="{{info.allowance.content}}"></rich-text>
</view>
</view>
<code showModel="{{showQrCode}}" qrcode = "{{wxqrcode}}">
</code>