Browse Source

提交

master
shaojing 2 years ago
parent
commit
e33d009e64
  1. 5
      app.json
  2. 9
      pages/component/SearchHeader.js
  3. 13
      pages/component/SearchHeader.wxml
  4. 8
      pages/index/index.js
  5. 317
      pages/index/index.wxml
  6. 4
      pages/index/index.wxss
  7. 2
      pages/list/night/index.js
  8. 11
      pages/order/pay/index.js
  9. 7
      pages/order/scene/index.js
  10. 7
      pages/user/address/add/index.js
  11. 4
      pages/user/service/list/index.wxml
  12. 4
      pages/user/user.wxml
  13. 657
      subPackages/feiyiNew/index.js
  14. 7
      subPackages/feiyiNew/index.json
  15. 232
      subPackages/feiyiNew/index.wxml
  16. 721
      subPackages/feiyiNew/index.wxss
  17. 404
      subPackages/techanCart/index.js
  18. 6
      subPackages/techanCart/index.json
  19. 65
      subPackages/techanCart/index.wxml
  20. 242
      subPackages/techanCart/index.wxss
  21. 690
      subPackages/techanNew/index.js
  22. 7
      subPackages/techanNew/index.json
  23. 213
      subPackages/techanNew/index.wxml
  24. 685
      subPackages/techanNew/index.wxss

5
app.json

@ -189,7 +189,10 @@
"root": "subPackages",
"pages": [
"indexs/index",
"index/index"
"index/index",
"techanNew/index",
"techanCart/index",
"feiyiNew/index"
]
}],
"plugins": {

9
pages/component/SearchHeader.js

@ -36,6 +36,10 @@ Component({
focusclickid:{
type:String,
value:""
},
name:{
type:String,
value:""
}
},
@ -65,6 +69,11 @@ Component({
* 组件的方法列表
*/
methods: {
getVal(e) {
console.log(e.detail.value);
let keywords = e.detail.value == ''?'': e.detail.value
this.triggerEvent("onload",{keywords:keywords})
},
inputFocus:function(){
// if(this.properties.focusclickid){
// wx.uma.trackEvent(this.properties.focusclickid);

13
pages/component/SearchHeader.wxml

@ -1,5 +1,16 @@
<view class="title-box{{transparent==1?' bg-box':''}}" style="height:{{isScene==1?'0':(height+padHeight)}}px;">
<view class="title-header" style="padding-top:{{padHeight}}px;height:{{height}}px">
<view class="title-header" style="padding-top:{{padHeight}}px;height:{{height}}px" wx:if="{{name!=''}}">
<icon bindtap="back" class="iconfont icon-fanhui1"></icon>
<view bindtap="indexFocus" class="search-box" style="margin-right:{{right + 5}}px;">
<icon class="iconfont icon-sousuo"></icon>
<input bindfocus="inputFocus" placeholder-class="{{transparent==1?'phcolor':''}}" bindinput="getVal" class="weui-input" placeholder="搜索" />
<view wx:if="{{isScene!=1}}" style="display: flex;padding-right: 12rpx;">
<view style="color: #ccc;">|</view>
<view style="margin-left:22rpx;font-weight: 400;font-size: 29rpx;color: #0B898E;">搜索</view>
</view>
</view>
</view>
<view class="title-header" style="padding-top:{{padHeight}}px;height:{{height}}px" wx:else>
<icon bindtap="back" class="iconfont icon-fanhui1"></icon>
<view bindtap="indexFocus" class="search-box" style="margin-right:{{right + 5}}px;">
<icon class="iconfont icon-sousuo"></icon>

8
pages/index/index.js

@ -491,7 +491,13 @@ Page({
// path: 'pages/index/index'
// })
// return;
} else if (e.currentTarget.dataset.event == 'kunshan_click') {
} else if (e.currentTarget.dataset.title == 'e读书') {
wx.navigateToMiniProgram({
appId: 'wx26e6f4c0baba005b',
path: 'pages/index/index'
})
return;
}else if (e.currentTarget.dataset.event == 'kunshan_click') {
wx.navigateToMiniProgram({
appId: 'wx8888a3fd0862b4c8',
path: 'pages/index/index'

317
pages/index/index.wxml

@ -9,11 +9,8 @@
<image src="{{weather.icon2}}" style="margin-left:0" mode="aspectFill"></image>
<view class="weather-num">{{weather.max_temp}}°</view>
<view class="weather">{{weather.weather}}</view>
<image bindtap="gotoPath" style="margin-left:0" data-path="/pages/user/service/index"
data-event="customer_service_click" src="https://static.ticket.sz-trip.com/uploads/20240428/7c77f3fc227acb3f15963c54fbd3d954.png"
mode="aspectFill"></image>
<image bindtap="gotoPath" data-event="message_click" data-path="/pages/list/message/index"
src="https://static.ticket.sz-trip.com/uploads/20240428/ae4b559db397a7b7d76b471576bfa3c0.png" mode="aspectFill"></image>
<image bindtap="gotoPath" style="margin-left:0" data-path="/pages/user/service/index" data-event="customer_service_click" src="https://static.ticket.sz-trip.com/uploads/20240428/7c77f3fc227acb3f15963c54fbd3d954.png" mode="aspectFill"></image>
<image bindtap="gotoPath" data-event="message_click" data-path="/pages/list/message/index" src="https://static.ticket.sz-trip.com/uploads/20240428/ae4b559db397a7b7d76b471576bfa3c0.png" mode="aspectFill"></image>
<!-- <image bindtap="gotoPath" style="margin-left:0" data-path="/pages/user/service/index"
data-event="customer_service_click" src="https://static.ticket.sz-trip.com/xcxImages/spring22/service.png"
mode="aspectFill"></image>
@ -26,8 +23,8 @@
<view class="textOver">搜索想要的旅游产品或服务</view>
</navigator>
</view>
<view style="position:relative;z-index: 1;" >
<swiper class="swiper" autoplay="{{true}}" interval="{{5000}}" duration="{{300}}" bindchange="changeBannerIndex" circular>
<view style="position:relative;z-index: 1;">
<swiper class="swiper" autoplay="{{true}}" interval="{{5000}}" duration="{{300}}" bindchange="changeBannerIndex" circular>
<block wx:for="{{banner}}" wx:key="*this">
<swiper-item bindtap="bannerClick" data-item="{{item}}">
<image src="{{item.head_img}}" mode="scaleToFill"></image>
@ -48,15 +45,13 @@
</block>
</swiper> -->
<view class="top-icons" wx:if="{{!isTest}}">
<view bindtap="gotoPath" data-event="activity_click" data-title="活动日历" data-path="/pages/list/activitynew/index"
class="top-icon-item">
<view bindtap="gotoPath" data-event="activity_click" data-title="活动日历" data-path="/pages/list/activitynew/index" class="top-icon-item">
<!-- 夏季修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/ebe723260a0d46550c77307472180586.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon1New.png" mode="widthFix"></image> -->
<view class="top-icon-text">活动日历</view>
</view>
<view bindtap="gotoPath" data-event="museum" data-title="场馆预约"
data-path="/pages/list/{{isTest?'scene':'museum'}}/index" class="top-icon-item">
<view bindtap="gotoPath" data-event="museum" data-title="场馆预约" data-path="/pages/list/{{isTest?'scene':'museum'}}/index" class="top-icon-item">
<!-- 夏季修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/106ed983a3641f27a13c41cc2b977af2.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon2New.png" mode="widthFix"></image> -->
@ -65,57 +60,56 @@
<!-- 非遗跳专题 -->
<!-- <view bindtap="goFeiyi" data-event="legacy" data-title="非遗专卖"
data-path="/pages/list/{{isTest?'scene':'feiyi'}}/index" class="top-icon-item"> -->
<view bindtap="gotoPath" data-event="legacy" data-title="非遗专卖"
data-path="/pages/list/{{isTest?'scene':'feiyi'}}/index" class="top-icon-item">
<!-- 夏季修改 -->
<view bindtap="gotoPath" data-event="legacy" data-title="非遗专卖" data-path="{{isTest?'/pages/list/scene/index':'/subPackages/feiyiNew/index'}}" class="top-icon-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/64bc601cd248586984c6ba7f7abf12cd.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon3New.png" mode="widthFix"></image> -->
<view class="top-icon-text">非遗专卖</view>
</view>
<view bindtap="gotoPath" data-event="show" data-title="剧场演出"
data-path="/pages/list/{{isTest?'activity':'theatre'}}/index" class="top-icon-item">
<!-- <view bindtap="gotoPath" data-event="legacy" data-title="非遗专卖"
data-path="/pages/list/{{isTest?'scene':'feiyi'}}/index" class="top-icon-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/64bc601cd248586984c6ba7f7abf12cd.png" mode="widthFix"></image>
<view class="top-icon-text">非遗专卖</view>
</view> -->
<view bindtap="gotoPath" data-event="show" data-title="剧场演出" data-path="/pages/list/{{isTest?'activity':'theatre'}}/index" class="top-icon-item">
<!-- 夏季修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/3db989129660f5de29b0f617375f0672.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon4New.png" mode="widthFix"></image> -->
<view class="top-icon-text">剧场演出</view>
</view>
<view bindtap="gotoPath" data-event="specialty" data-title="文创特产"
data-path="/pages/list/{{isTest?'road':'techan'}}/index" class="top-icon-item">
<!-- 夏季修改 -->
<!-- 2024年7月新版文创特产 -->
<view bindtap="gotoPath" data-event="specialty" data-title="文创特产" data-path="{{isTest?'/pages/list/road/index':'/subPackages/techanNew/index'}}" class="top-icon-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/bafa90e369f339347170f9c55a245d78.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon5New.png" mode="widthFix"></image> -->
<view class="top-icon-text">文创特产</view>
</view>
<view bindtap="gotoPath" data-event="ticket_click" data-title="景点门票" data-path="/pages/list/scene/index"
class="top-icon-item">
<!-- <view bindtap="gotoPath" data-event="specialty" data-title="文创特产"
data-path="/pages/list/{{isTest?'road':'techan'}}/index" class="top-icon-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/bafa90e369f339347170f9c55a245d78.png" mode="widthFix"></image>
<view class="top-icon-text">文创特产</view>
</view> -->
<view bindtap="gotoPath" data-event="ticket_click" data-title="景点门票" data-path="/pages/list/scene/index" class="top-icon-item">
<!-- 夏季修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/e11e0cb3033b786fc61ee17f8bfbfbfb.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon6New.png" mode="widthFix"></image> -->
<view class="top-icon-text">景点门票</view>
</view>
<view bindtap="gotoPath" data-event="hotel_click" data-title="酒店住宿" data-path="/pages/list/hotel/index"
class="top-icon-item">
<view bindtap="gotoPath" data-event="hotel_click" data-title="酒店住宿" data-path="/pages/list/hotel/index" class="top-icon-item">
<!-- 夏季修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/26d38d0b8b6014915b5b013e8672ae82.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon7New.png" mode="widthFix"></image> -->
<view class="top-icon-text">酒店住宿</view>
</view>
<view bindtap="gotoPath" data-event="night_sz" data-title="夜游苏州" data-path="/pages/list/night/index"
class="top-icon-item">
<view bindtap="gotoPath" data-event="night_sz" data-title="夜游苏州" data-path="/pages/list/night/index" class="top-icon-item">
<!-- 夏季修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/1d8d45eab5735103ed2d1342f84b615a.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon8New.png" mode="widthFix"></image> -->
<view class="top-icon-text">夜游苏州</view>
</view>
<view bindtap="gotoUrl" data-event="card" data-title="一卡游苏州" data-url="https://m.cloud.sz-trip.com/OneDayTravelNew"
class="top-icon-item">
<view bindtap="gotoUrl" data-event="card" data-title="一卡游苏州" data-url="https://m.cloud.sz-trip.com/OneDayTravelNew" class="top-icon-item">
<!-- 夏季修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/d63fd9f74bc5f3016800f0572fdbeed9.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon9New.png" mode="widthFix"></image> -->
<view class="top-icon-text">一日游</view>
</view>
<view bindtap="gotoUrl" data-event="movie" data-title="研学游" data-url="https://m.cloud.sz-trip.com/LearningTravel"
class="top-icon-item">
<view bindtap="gotoUrl" data-event="movie" data-title="研学游" data-url="https://m.cloud.sz-trip.com/LearningTravel" class="top-icon-item">
<!-- 夏季修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/3537918b5a5b26319c22747e80200ef7.png" mode="widthFix"></image>
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/icon10New.png" mode="widthFix"></image> -->
@ -124,15 +118,12 @@
</view>
<view class="content">
<view class="sale-road-boxes" wx:if="{{false}}">
<view class="sale-box" bindtap="gotoPath" data-event="discount_click" data-title="特惠新品"
data-path="/pages/list/{{isTest==false?'sale':'scene'}}/index">
<view class="sale-box" bindtap="gotoPath" data-event="discount_click" data-title="特惠新品" data-path="/pages/list/{{isTest==false?'sale':'scene'}}/index">
<view class="sale-title"><text>特惠新品</text>超值商品限时抢购</view>
<view class="sale-product">
<view class="sale-product-bg"></view>
<image mode="aspectFill" class="sale-img"
src="https://static.ticket.sz-trip.com/uploads/20211022/0c90b027b5572b559b34c219eaf257ba.jpg"></image>
<image class="sale-tip-img" src="https://static.ticket.sz-trip.com/xcxImages/spring22/sale.png"
mode="aspectFill">
<image mode="aspectFill" class="sale-img" src="https://static.ticket.sz-trip.com/uploads/20211022/0c90b027b5572b559b34c219eaf257ba.jpg"></image>
<image class="sale-tip-img" src="https://static.ticket.sz-trip.com/xcxImages/spring22/sale.png" mode="aspectFill">
</image>
<view class="sale-info">
<view class="sale-product-title textOver2">
@ -144,16 +135,12 @@
</view>
</view>
</view>
<view class="sale-box" bindtap="gotoPath" data-event="route_click" data-title="精品线路"
data-path="/pages/list/road/index">
<view class="sale-box" bindtap="gotoPath" data-event="route_click" data-title="精品线路" data-path="/pages/list/road/index">
<view class="sale-title"><text>精品线路</text>带你轻松玩转苏州</view>
<view class="sale-product">
<view class="sale-product-bg road-product-bg"></view>
<common-image class="sale-img" width="173rpx" height="165rpx"
src="https://static.ticket.sz-trip.com/uploads/20211022/f8d9b54fa477b9ad8bf14e119664455e.jpg"
mode="aspectFill"></common-image>
<image class="sale-tip-img" src="https://static.ticket.sz-trip.com/xcxImages/spring22/road.png"
mode="aspectFill">
<common-image class="sale-img" width="173rpx" height="165rpx" src="https://static.ticket.sz-trip.com/uploads/20211022/f8d9b54fa477b9ad8bf14e119664455e.jpg" mode="aspectFill"></common-image>
<image class="sale-tip-img" src="https://static.ticket.sz-trip.com/xcxImages/spring22/road.png" mode="aspectFill">
</image>
<view class="sale-info">
<view class="sale-product-title textOver2">
@ -171,11 +158,10 @@
<image bindtap="bannerClick" data-item="{{xiaobanner[0]}}" style="border-radius:13rpx;width: 100%" src="{{xiaobanner[0].head_img}}" mode="widthFix"></image>
</view>
<view class="small-swiper-box" wx:else>
<swiper class="small-swiper" autoplay="{{true}}" interval="{{5000}}" duration="{{300}}"
bindchange="changeSmBannerIndex">
<swiper class="small-swiper" autoplay="{{true}}" interval="{{5000}}" duration="{{300}}" bindchange="changeSmBannerIndex">
<block wx:for="{{xiaobanner}}" wx:key="*this">
<swiper-item bindtap="bannerClick" data-item="{{item}}">
<!-- 原 圆角77rpx,现改为13rpx -->
<!-- 原 圆角77rpx,现改为13rpx -->
<image style="border-radius:13rpx" src="{{item.head_img}}" mode="aspectFill"></image>
</swiper-item>
</block>
@ -186,10 +172,8 @@
</view>
<!-- 2024年 夏季改UI新增景区舒适度和实时路况 -->
<view style="display: flex;">
<view bindtap="gotoUrl" data-event="comfort_click" data-title="景区舒适度"
data-url="https://m.cloud.sz-trip.com/ScenicComfort" class="jqssd" ></view>
<view bindtap="gotoUrl" data-event="xlqc"
data-url="https://jiaotonghao2.amap.com/?channel=amap&unitId=257&src=app_share#/" class="sslk"></view>
<view bindtap="gotoUrl" data-event="comfort_click" data-title="景区舒适度" data-url="https://m.cloud.sz-trip.com/ScenicComfort" class="jqssd"></view>
<view bindtap="gotoUrl" data-event="xlqc" data-url="https://jiaotonghao2.amap.com/?channel=amap&unitId=257&src=app_share#/" class="sslk"></view>
</view>
<!-- 元旦修改 限时特惠--新版-->
<view class="sale-road-boxes xpth" style="margin-bottom: 18.67rpx;margin-top: 0;padding-top: 0;" wx:if="{{!isTest}}">
@ -199,7 +183,7 @@
<image mode="heightFix" style="height:86rpx" src="{{indexSeason.xpth}}"></image>
</view>
<view class="time-box" style="z-index: 9;">
倒计时
倒计时
<view class="xsth-time" style="margin-left: 20rpx;">{{djs.h}}</view>
<text>:</text>
<view class="xsth-time">{{djs.m}}</view>
@ -215,8 +199,8 @@
<view class="xpth-product">
<!-- 左边的2个产品 -->
<view class="xpth-left">
<view class="xpth-item" wx:for="{{xpth.list}}" bindtap="productGotoDetail" data-item="{{item}}" wx:key="id">
<image src="{{item.headimg}}" mode=""/>
<view class="xpth-item" wx:for="{{xpth.list}}" bindtap="productGotoDetail" data-item="{{item}}" wx:key="id">
<image src="{{item.headimg}}" mode="" />
<view class="xpth-item-content">
<view class="xpth-item-title textOver2">{{item.title}}</view>
<!-- <view class="xpth-tag">唇齿留香</view> -->
@ -228,12 +212,12 @@
</view>
</view>
<!-- 右边的banner -->
<image bindtap="goBanner" class="xpth-banner" data-url="{{xpth.adv.tdata}}" src="{{xpth.adv.head_img}}" mode="aspectFill"/>
<image bindtap="goBanner" class="xpth-banner" data-url="{{xpth.adv.tdata}}" src="{{xpth.adv.head_img}}" mode="aspectFill" />
</view>
</view>
<view class="sale-road-boxes" style="margin-top:0">
<image mode="heightFix" style="height:86rpx" src="{{indexSeason.wlcx}}"></image>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240606/479dad06e6cf67bc45f7cf605d982184.png" mode=""/>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240606/479dad06e6cf67bc45f7cf605d982184.png" mode="" />
</view>
<!-- 五一修改 .slide-out-box 增加背景色-->
<view class="slide-out-box">
@ -241,43 +225,50 @@
<scroll-view scroll-x style="height:343.33rpx" bindscroll="listenScroll" class="slide-box">
<view class="pbservice" style="margin-bottom:30rpx">
<view bindtap="gotoUrl" data-title="非遗鉴赏" style="margin-left: 20rpx;" data-url="https://m.cloud.sz-trip.com/IntangibleCultural2" class="pbservice-item">
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/newpb3.jpg" mode="widthFix"></image>
<view>非遗鉴赏</view> -->
<!-- 元旦修改 第一个pbservice-item新增margin-left -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/97844beceebd503256bebae5afd6820b.png" mode="widthFix"></image>
<view class="text">非遗鉴赏</view>
</view>
<view bindtap="goH5" data-title="数字博物馆"
data-path="BwsInfo" class="pbservice-item">
<!-- <image src="https://static.ticket.sz-trip.com/uploads/20220907/d50f492083b419b9b538de274423084c.png" mode="widthFix"></image>
<view>数字博物馆</view> -->
<!-- 元旦修改 -->
<view bindtap="goH5" data-title="数字博物馆" data-path="BwsInfo" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/27acb48002369a8203762acc783c7492.png" mode="widthFix"></image>
<view class="text">数字博物馆</view>
</view>
<view bindtap="gotoUrl" data-event="book_click" data-title="公共文化资源库" data-url="https://m.cloud.sz-trip.com/PublicCulture2022"
class="pbservice-item">
<!-- <image src="https://static.ticket.sz-trip.com/xcxImages/index/ggwh.png" mode="widthFix"></image>
<view>公共文化资源库</view> -->
<!-- 元旦修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/0f422cb2026f42c772ab12d384f5b7ef.png" mode="widthFix"></image>
<view class="text">公共文化资源库</view>
</view>
<view bindtap="gotoUrl" data-event="cloud_click" data-title="云上观展"
data-url="https://m.cloud.sz-trip.com/CloudPerform2022" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/5711260f02772eebaba9dba9dfda2b4f.png" mode="widthFix"></image>
<view>云上观展</view>
</view>
<view bindtap="goH5" data-event="book_click" data-title="文博会" data-path="CloudExpo"
class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/4a3804f24e034e15f19c27a85d0a8ac4.png" mode="widthFix"></image>
<view class="text">云上文博会</view>
</view>
<view bindtap="gotoPath" data-event="review_click" data-title="精彩回顾" data-path="/pages/pbService/activity/index"
class="pbservice-item">
<view bindtap="gotoUrl" data-title="数字名人馆" data-url="https://www.szsmrg.com/home" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/27acb48002369a8203762acc783c7492.png" mode="widthFix"></image>
<view class="text">数字名人馆</view>
</view>
<view bindtap="gotoUrl" data-event="cloud_click" data-title="云上观展" data-url="https://m.cloud.sz-trip.com/CloudPerform2022" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/5711260f02772eebaba9dba9dfda2b4f.png" mode="widthFix"></image>
<view>云上观展</view>
</view>
<view bindtap="goH5" data-event="book_click" data-title="文博会" data-path="CloudExpo" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/4a3804f24e034e15f19c27a85d0a8ac4.png" mode="widthFix"></image>
<view class="text">云上文博会</view>
</view>
<view bindtap="gotoPath" data-event="review_click" data-title="精彩回顾" data-path="/pages/pbService/activity/index" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/e5b8c83dd99e18b9af6b15aede1c458b.png" mode="widthFix"></image>
<view class="text">精彩回顾</view>
</view>
<view bindtap="goH5" data-title="文化场馆查询" data-path="Museum" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/29b2954718fe7b7232fe352eb503fbf0.png" mode="widthFix"></image>
<view class="text">文化场馆查询</view>
</view>
<view bindtap="gotoPath" style="margin-left: 20rpx;" data-event="book_click" data-title="苏影通" data-path="/pages/list/movieticket/index" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/5b2f56e57caa058ef0293a682bc620c5.png" mode="widthFix"></image>
<view class="text">苏影通</view>
</view>
<view bindtap="gotoPath" data-event="book_click" data-title="书仓" data-path="/pages/pbService/library/index" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/92ddf619960de959f760d5690ed5007a.png" mode="widthFix"></image>
<view class="text">书仓</view>
</view>
<view bindtap="gotoPath" data-event="e_book" data-title="e读书" data-path="/pages/pbService/library/index" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240716/1b3895b680bc447b84829623d43cee02.png" mode="widthFix"></image>
<view class="text">e读书</view>
</view>
<view bindtap="gotoUrl" data-event="book_click" data-title="公共文化资源库" data-url="https://m.cloud.sz-trip.com/PublicCulture2022" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/0f422cb2026f42c772ab12d384f5b7ef.png" mode="widthFix"></image>
<view class="text">数字公共文化</view>
</view>
<!-- <view bindtap="gotoPath" data-event="institution_click" data-title="文旅单位"
data-path="/pages/list/culturalUnit/index" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/5b0b1be9942bfae84ddbd218421e098f.png" mode="widthFix"></image>
@ -288,13 +279,11 @@
<image src="https://static.ticket.sz-trip.com/uploads/20240606/92ddf619960de959f760d5690ed5007a.png" mode="widthFix"></image>
<view class="text">书仓</view>
</view> -->
<view bindtap="gotoPath" style="margin-left: 20rpx;" data-event="book_click" data-title="苏影通" data-path="/pages/list/movieticket/index"
class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/5b2f56e57caa058ef0293a682bc620c5.png" mode="widthFix"></image>
<view class="text">苏影通</view>
<view bindtap="gotoUrl" data-event="appreciate_click" data-title="云游苏州" data-url="https://speed.web.yunyouyizhan.com/downloadApp/index.html#/" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/61aac5403bb54bb4cea6a9587da6863b.png" mode="widthFix"></image>
<view class="text">云游苏州</view>
</view>
<view bindtap="gotoPath" data-event="appreciate_click" data-title="美图鉴赏"
data-path="/pages/pbService/appreciate/index" class="pbservice-item">
<view bindtap="gotoPath" data-event="appreciate_click" data-title="美图鉴赏" data-path="/pages/pbService/appreciate/index" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/61aac5403bb54bb4cea6a9587da6863b.png" mode="widthFix"></image>
<view class="text">美图鉴赏</view>
</view>
@ -303,11 +292,6 @@
<image src="https://static.ticket.sz-trip.com/xcxImages/index/newpb3.png" mode="widthFix"></image>
<view>文物查询</view>
</view> -->
<view bindtap="goH5" data-title="文化场馆查询"
data-path="Museum" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/29b2954718fe7b7232fe352eb503fbf0.png" mode="widthFix"></image>
<view class="text">文化场馆查询</view>
</view>
<!-- <view bindtap="gotoPath" data-event="museum_search_click" data-title="博物馆查询"
data-path="/pages/pbService/museum/index" class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/xcxImages/index/newpb6.png" mode="widthFix"></image>
@ -318,11 +302,6 @@
<image src="https://static.ticket.sz-trip.com/uploads/20220810/ceb07b75aa3df20d7f1de22e2588332a.png" mode="widthFix"></image>
<view>云上文博会</view>
</view> -->
<view bindtap="gotoPath" data-event="book_click" data-title="书仓" data-path="/pages/pbService/library/index"
class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/92ddf619960de959f760d5690ed5007a.png" mode="widthFix"></image>
<view class="text">书仓</view>
</view>
<!-- <view bindtap="gotoUrl" data-event="investment_click" data-title="投资导引图" data-url="https://hot-map.sz-trip.com/"
class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/c66d07e172fe3dd66afc0c69340a7b7d.png" mode="widthFix"></image>
@ -338,14 +317,12 @@
<image src="https://static.ticket.sz-trip.com/xcxImages/index/newpb9.png" mode="widthFix"></image>
<view>团体预约</view>
</view> -->
<!-- <view bindtap="gotoUrl" data-title="廉洁地图"
data-url="https://ljwhdt.lianshi.gov.cn:8443/Web/WebChatJCW/Mobile/EduBase/MobileMap.aspx"
class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/xcxImages/index/newpb10.png" mode="widthFix"></image>
<view>廉洁地图</view>
</view> -->
<!-- <view bindtap="gotoPath" data-event="book_click" data-title="文化配送" data-path="/pages/culture/index"
class="pbservice-item">
<image src="https://static.ticket.sz-trip.com/uploads/20220818/e02af6e8bf9170060ed7295d367d72c1.png" mode="widthFix"></image>
@ -362,20 +339,14 @@
</view>
<view class="sale-road-boxes" style="margin-top:0">
<image mode="heightFix" style="height:86rpx" src="{{indexSeason.lyzs}}"></image>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240606/7f1962fbfe1c56155ace577eeb8e6580.png" mode=""/>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240606/7f1962fbfe1c56155ace577eeb8e6580.png" mode="" />
</view>
<view class="pic-list" style="margin-top:20rpx" wx:if="{{!isTest}}">
<image class="new-pic" bindtap="gotoUrl" data-event="dou_click" data-title="抖in苏州"
data-url="https://m.cloud.sz-trip.com/ShakeInDetailList?id=350&class_id=27&index=1"
src="https://static.ticket.sz-trip.com/uploads/20240428/c40ddcb3ed2c971eec02187374540d06.png" mode="aspectFill"></image>
<image class="new-pic" bindtap="gotoPath" data-event="food_click" data-title="街巷美食"
data-path="/pages/list/{{isTest?'road':'food'}}/index"
src="https://static.ticket.sz-trip.com/uploads/20240428/866baa2713b1819cb861aec9fd34970d.png" mode="aspectFill"></image>
<image class="new-pic" bindtap="audioGuide" data-event="voice_click"
src="https://static.ticket.sz-trip.com/uploads/20240428/7e1fc96543b093aa6871172770d0db6b.png" mode="aspectFill">
<image class="new-pic" bindtap="gotoUrl" data-event="dou_click" data-title="抖in苏州" data-url="https://m.cloud.sz-trip.com/ShakeInDetailList?id=350&class_id=27&index=1" src="https://static.ticket.sz-trip.com/uploads/20240428/c40ddcb3ed2c971eec02187374540d06.png" mode="aspectFill"></image>
<image class="new-pic" bindtap="gotoPath" data-event="food_click" data-title="街巷美食" data-path="/pages/list/{{isTest?'road':'food'}}/index" src="https://static.ticket.sz-trip.com/uploads/20240428/866baa2713b1819cb861aec9fd34970d.png" mode="aspectFill"></image>
<image class="new-pic" bindtap="audioGuide" data-event="voice_click" src="https://static.ticket.sz-trip.com/uploads/20240428/7e1fc96543b093aa6871172770d0db6b.png" mode="aspectFill">
</image>
<image class="new-pic" bindtap="gotoPath" data-event="guide_click" data-title="游记攻略" data-path="/pages/list/strategy/index"
src="https://static.ticket.sz-trip.com/uploads/20240428/3c21e5876209c1bad4bbfcc688779c08.png" mode="aspectFill"></image>
<image class="new-pic" bindtap="gotoPath" data-event="guide_click" data-title="游记攻略" data-path="/pages/list/strategy/index" src="https://static.ticket.sz-trip.com/uploads/20240428/3c21e5876209c1bad4bbfcc688779c08.png" mode="aspectFill"></image>
<!-- <image class="new-pic" bindtap="gotoUrl" data-event="dou_click" data-title="抖in苏州"
data-url="https://m.cloud.sz-trip.com/ShakeInDetailList?id=350&class_id=27&index=1"
src="https://static.ticket.sz-trip.com/jundaosuzhou/images/yuandan2024/disz.png" mode="aspectFill"></image> -->
@ -387,7 +358,7 @@
</image>
<image class="new-pic" bindtap="gotoPath" data-event="guide_click" data-title="游记攻略" data-path="/pages/list/strategy/index"
src="https://static.ticket.sz-trip.com/jundaosuzhou/images/yuandan2024/yjgl.png" mode="aspectFill"></image> -->
<!-- 元旦修改 下面4个为原始的, 上面的是新改的 新改的class为 new-pic -->
<!-- 元旦修改 下面4个为原始的, 上面的是新改的 新改的class为 new-pic -->
<!-- <image bindtap="gotoUrl" data-event="dou_click" data-title="抖in苏州"
data-url="https://m.cloud.sz-trip.com/ShakeInDetailList?id=350&class_id=27&index=1"
src="https://static.ticket.sz-trip.com/jundaosuzhou/images/jdsz/douinsuzhou.png" mode="aspectFill"></image>
@ -408,7 +379,7 @@
<view>
查看全部
</view>
<image style="width: 20rpx;height: 20rpx;margin-left: 8rpx;" src="https://static.ticket.sz-trip.com/uploads/20240617/ae3b9e3833861d242489c844e0abe99e.png" mode=""/>
<image style="width: 20rpx;height: 20rpx;margin-left: 8rpx;" src="https://static.ticket.sz-trip.com/uploads/20240617/ae3b9e3833861d242489c844e0abe99e.png" mode="" />
<!-- <text class="iconfont icon-you"></text> -->
</navigator>
<!-- <image class="rmtj-right" style="z-index: 2;" src="https://static.ticket.sz-trip.com/jundaosuzhou/images/springFestival2024/ggfw-right.png" mode=""/> -->
@ -421,30 +392,26 @@
<image src="https://static.ticket.sz-trip.com/xcxImages/pbservice/pb4.png" mode="widthFix"></image>
<view>景区舒适度</view>
</view> -->
<!-- 元旦修改 ggfw为新增类名 -->
<!-- 元旦修改 ggfw为新增类名 -->
<!-- <view bindtap="gotoPath" data-event="security_home_click" data-title="安全服务" data-path="/pages/pbService/security/index" class="pbservice-item ggfw" style="margin-right: 32.33rpx;">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/5bc25bb21009b5f652b07d7c5d44b247.png" mode="widthFix"></image>
<view>安全服务</view>
</view> -->
<view bindtap="gotoUrl" data-event="sbk" data-title="电子社保卡"
data-url="https://m.cloud.sz-trip.com/sbkLogin" class="pbservice-item ggfw" style="margin-right: 32.33rpx;">
<view bindtap="gotoUrl" data-event="sbk" data-title="电子社保卡" data-url="https://m.cloud.sz-trip.com/sbkLogin" class="pbservice-item ggfw" style="margin-right: 32.33rpx;">
<image src="https://static.ticket.sz-trip.com/uploads/20240624/28e0cadbb7363dec9b51b1174bd2c5a5.png" mode="widthFix"></image>
<view>电子社保卡</view>
</view>
<view bindtap="gotoUrl" data-event="comfort_click" data-title="景区舒适度"
data-url="https://m.cloud.sz-trip.com/ScenicComfort" class="pbservice-item ggfw" style="margin-right: 32.33rpx;">
<view bindtap="gotoUrl" data-event="comfort_click" data-title="景区舒适度" data-url="https://m.cloud.sz-trip.com/ScenicComfort" class="pbservice-item ggfw" style="margin-right: 32.33rpx;">
<image src="https://static.ticket.sz-trip.com/uploads/20240606/55bbad2e7dcec9bd9753fc848488b8f2.png" mode="widthFix"></image>
<view>景区舒适度</view>
</view>
<view bindtap="gotoUrl" data-event="xlqc"
data-url="https://weixin.2500sz.net/zt/2023/07/luggage_storage/" class="pbservice-item ggfw" style="margin-right: 32.33rpx;">
<view bindtap="gotoUrl" data-event="xlqc" data-url="https://weixin.2500sz.net/zt/2023/07/luggage_storage/" class="pbservice-item ggfw" style="margin-right: 32.33rpx;">
<!-- <image src="https://static.ticket.sz-trip.com/uploads/20230808/484100644e7f02f4eb722a8c2e665927.png" mode="widthFix"></image> -->
<!-- 元旦修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/311deeac7cd4dbf821b9b394e69431ed.png" mode="widthFix"></image>
<view>行李寄存</view>
</view>
<view bindtap="gotoUrl" data-event="xlqc"
data-url="https://jiaotonghao2.amap.com/?channel=amap&unitId=257&src=app_share#/" class="pbservice-item ggfw" style="margin-right: 0;">
<view bindtap="gotoUrl" data-event="xlqc" data-url="https://jiaotonghao2.amap.com/?channel=amap&unitId=257&src=app_share#/" class="pbservice-item ggfw" style="margin-right: 0;">
<!-- <image src="https://static.ticket.sz-trip.com/uploads/20230901/21668c913dd4875d05eba398e905b9f0.png" mode="widthFix"></image> -->
<!-- 元旦修改 -->
<image src="https://static.ticket.sz-trip.com/uploads/20240606/a6ab539577b9003e35061a888ec4aa27.png" mode="widthFix"></image>
@ -469,7 +436,7 @@
</view>
<view class="sale-road-boxes">
<image mode="heightFix" style="height:86rpx" src="{{indexSeason.sqj}}"></image>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240428/6955225b950d5bbe5168f5d9994a6098.png" mode=""/>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240428/6955225b950d5bbe5168f5d9994a6098.png" mode="" />
</view>
<!-- <view class="six-box">
<image bindtap="gotoPath" data-event="{{area_ids[index]}}_click" data-title="苏城六纪"
@ -479,14 +446,12 @@
</view> -->
<!-- 元旦修改 十全街新 以上注释部分为之前的版本-->
<view class="six-box-new" wx:if="{{!isTest}}">
<image bindtap="gotoPath" data-event="{{area_ids[index]}}_click" data-title="苏城六纪"
data-path="/pages/list/six/index?area={{area_ids[index]}}" wx:for="{{sqjNew}}"
src="{{sqjNew[index]}}" mode="widthFix" wx:key="index">
<image bindtap="gotoPath" data-event="{{area_ids[index]}}_click" data-title="苏城六纪" data-path="/pages/list/six/index?area={{area_ids[index]}}" wx:for="{{sqjNew}}" src="{{sqjNew[index]}}" mode="widthFix" wx:key="index">
</image>
</view>
<view class="sale-road-boxes" style="margin-top:0" wx:if="{{otherPlat}}">
<image mode="heightFix" style="height:86rpx" src="{{indexSeason.csjwlpt}}"></image>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240428/f6648d96e0f6d99cc8d82633b5ad1536.png" mode=""/>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240428/f6648d96e0f6d99cc8d82633b5ad1536.png" mode="" />
</view>
<view class="other-plats" wx:if="{{otherPlat}}">
<view class="other-plat" wx:for="{{otherPlat}}" bindtap="gotoOther" data-item="{{item}}" wx:key="this">
@ -496,17 +461,15 @@
</view>
<view class="sale-road-boxes" style="margin-top:0">
<image mode="heightFix" style="height:86rpx" src="{{indexSeason.rmtj}}"></image>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240428/31601dded0df580774b24b064bbb6580.png" mode=""/>
<image class="rmtj-right" src="https://static.ticket.sz-trip.com/uploads/20240428/31601dded0df580774b24b064bbb6580.png" mode="" />
</view>
<view class="hot-list" wx:if="{{isTest==false}}">
<view class="hot-list-item" wx:for="{{2}}" wx:for-index="number" wx:key="this">
<view wx:for="{{list}}" wx:if="{{index%2==number}}" bindtap="gotoDetail" data-item="{{item}}" wx:key="id">
<view wx:if="{{number==0 && index==0}}" class="hot-item today-hot">
<common-image class="today-main-img" width="100%" height="615rpx" src="{{item.ext.headimg}}"
mode="aspectFill"></common-image>
<common-image class="today-main-img" width="100%" height="615rpx" src="{{item.ext.headimg}}" mode="aspectFill"></common-image>
<view style="position:absolute;left:0;right:0;top:0;bottom:0;background:rgba(0,0,0,0.14)"></view>
<image class="today-tip-img" src="https://static.ticket.sz-trip.com/xcxImages/index/today.png"
mode="widthFix"></image>
<image class="today-tip-img" src="https://static.ticket.sz-trip.com/xcxImages/index/today.png" mode="widthFix"></image>
<view class="today-date">{{date}} {{month}}</view>
<view class="today-hot-box">
<view class="today-hot-tag textOver" wx:for="{{item.ext.display_tags && ext.display_tags.length>0}}" wx:key="this">
@ -545,7 +508,8 @@
<view wx:for="{{item.ext.display_tags}}" class="tag textOver">{{item}}</view>
</view> -->
<view wx:if="{{item.ext.type!='tenscenic' && item.ext.price}}" class="hot-price">
<text>¥</text><text>{{item.ext.price/100}}</text><text>起</text></view>
<text>¥</text><text>{{item.ext.price/100}}</text><text>起</text>
</view>
</view>
</view>
</view>
@ -556,14 +520,11 @@
</view>
<view class="mask prizeMask" wx:if="{{videoPrize}}">
<view class="mask-bg"></view>
<view class="mask-content"
style="width:100%;display:flex;flex-direction:column;background:none;border-radius:0;align-items:center">
<view class="mask-content" style="width:100%;display:flex;flex-direction:column;background:none;border-radius:0;align-items:center">
<!-- 中奖的卡券 -->
<view style="position:relative" wx:if="{{prizeInfo && prizeInfo.type=='coupon'}}">
<image bindtap="choosePrize" style="display:block;width:533rpx"
src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/bg1.png" mode="widthFix"></image>
<image src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/congratulation.png" mode="widthFix"
class="prize-tip-text"></image>
<image bindtap="choosePrize" style="display:block;width:533rpx" src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/bg1.png" mode="widthFix"></image>
<image src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/congratulation.png" mode="widthFix" class="prize-tip-text"></image>
<view class="prize-name">{{prizeInfo.prize_name}}</view>
<view class="prize-img">
<image src="{{prizeInfo.head_img}}" mode="aspectFill"></image>
@ -575,10 +536,8 @@
</view>
<!-- 中奖的产品 -->
<view style="position:relative" wx:elif="{{prizeInfo && prizeInfo.type=='product'}}">
<image bindtap="choosePrize" style="display:block;width:533rpx"
src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/bg1.png" mode="widthFix"></image>
<image src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/congratulation.png" mode="widthFix"
class="prize-tip-text"></image>
<image bindtap="choosePrize" style="display:block;width:533rpx" src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/bg1.png" mode="widthFix"></image>
<image src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/congratulation.png" mode="widthFix" class="prize-tip-text"></image>
<view class="prize-name">{{prizeInfo.prize_name}}</view>
<view class="prize-img">
<image src="{{prizeInfo.head_img}}" mode="aspectFill"></image>
@ -590,10 +549,8 @@
</view>
<!-- 未中奖 -->
<view style="position:relative" wx:elif="{{prizeInfo && prizeInfo.type=='none'}}">
<image bindtap="choosePrize" style="display:block;width:533rpx"
src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/bg1.png" mode="widthFix"></image>
<image src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/sorrytext.png" mode="widthFix"
class="prize-tip-text"></image>
<image bindtap="choosePrize" style="display:block;width:533rpx" src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/bg1.png" mode="widthFix"></image>
<image src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/sorrytext.png" mode="widthFix" class="prize-tip-text"></image>
<view class="prize-name">您与奖品擦肩而过期待下次参与</view>
<view class="prize-img">
<image src="{{prizeInfo.head_img}}" mode="aspectFill"></image>
@ -605,56 +562,42 @@
</view>
<!-- 未抽奖状态 -->
<view style="position:relative" wx:else>
<image bindtap="choosePrize" style="display:block;width:533rpx"
src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/allbg.png" mode="widthFix"></image>
<image bindtap="choosePrize" style="display:block;width:533rpx" src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/allbg.png" mode="widthFix"></image>
<view class="nomore-tip-btn" bindtap="noMoreTip"></view>
</view>
<image bindtap="closePrice" style="width:80rpx;margin-top:40rpx"
src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/allclose.png" mode="widthFix"></image>
<image bindtap="closePrice" style="width:80rpx;margin-top:40rpx" src="https://sz-qd.oss-cn-hangzhou.aliyuncs.com/xcxImages/videoprize/allclose.png" mode="widthFix"></image>
</view>
</view>
<!-- 广告弹窗 -->
<view class="zzc" bindtap="closeAdv" wx:if="{{showAdv}}" ></view>
<view class="zzc" bindtap="closeAdv" wx:if="{{showAdv}}"></view>
<view class="alertavd" wx:if="{{showAdv}}">
<swiper class="alertsp" indicator-dots='{{true}}' indicator-color="rgba(255,255,255,0.5)" autoplay="{{true}}" interval="{{3000}}" duration="{{300}}" indicator-active-color="white">
<block wx:for="{{alertSwipeList}}" wx:key="*this">
<swiper-item data-item="{{item}}" bindtap="bannerJumpNew" >
<image src="{{item.head_img}}" style="width: 100%; height:100%; border-radius: 10rpx;" mode="aspectFill"></image>
</swiper-item>
<swiper-item data-item="{{item}}" bindtap="bannerJumpNew">
<image src="{{item.head_img}}" style="width: 100%; height:100%; border-radius: 10rpx;" mode="aspectFill"></image>
</swiper-item>
</block>
</swiper>
<image bindtap="closeAdv" style="width: 100rpx; height: 100rpx;transform: translate(200rpx,6rpx);" src="https://static.ticket.sz-trip.com/uploads/20220810/f4bb1a4f0b5eb394e6ca6e4f03aaa1e0.png"></image>
</view>
<!-- 广告弹窗结束 -->
<view class="fullavd" wx:if="{{showFullAdv && startList.head_img}}" style="opacity: {{opacity}}">
<view class="time" bindtap="closeFullAdv" wx:if="{{showTime && startList.media_type}}">{{time}}s跳过</view>
<view class="Qtop" style="min-height:100vh" wx:if="{{showTime && startList.media_type}}">
<image src="{{startList.head_img}}" mode="widthFix" style="width: 100%;height: 100%;"></image>
</view>
<!-- 视频 -->
<view style="width:100vw;height: 100vh;position: relative;" wx:if="{{!startList.media_type}}">
<video
style="width:100vw;height:100vh;display:block;"
id="myVideo"
src="{{startList.head_img}}"
show-center-play-btn="{{false}}"
show-play-btn="{{true}}"
autoplay
controls="{{false}}"
bindended="videoend"
loop="{{true}}"
muted="{{isMuted}}"
object-fit="fill"
></video>
<!-- <image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/mute.png" class="muteImg" mode="widthFix" wx:if="{{isMuted}}" bindtap="closeMuted"></image> -->
<!-- <image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/sound.png" class="muteImg" mode="widthFix" wx:else bindtap="closeMuted"></image> -->
<image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/logo.png" class="logoImg" mode="widthFix"></image>
<image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/btn.png" class="btnImg" mode="widthFix" bindtap="closeFullAdv"></image>
<image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/play.png" class="playImg" mode="widthFix" wx:if="{{videoPlay}}" bindtap="videoPlay"></image>
<image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/pause.png" class="playImg" mode="widthFix" wx:else bindtap="videoPause"></image>
</view>
<view class="fullavd" wx:if="{{showFullAdv && startList.head_img}}" style="opacity: {{opacity}}">
<view class="time" bindtap="closeFullAdv" wx:if="{{showTime && startList.media_type}}">{{time}}s跳过</view>
<view class="Qtop" style="min-height:100vh" wx:if="{{showTime && startList.media_type}}">
<image src="{{startList.head_img}}" mode="widthFix" style="width: 100%;height: 100%;"></image>
</view>
<!-- 视频 -->
<view style="width:100vw;height: 100vh;position: relative;" wx:if="{{!startList.media_type}}">
<video style="width:100vw;height:100vh;display:block;" id="myVideo" src="{{startList.head_img}}" show-center-play-btn="{{false}}" show-play-btn="{{true}}" autoplay controls="{{false}}" bindended="videoend" loop="{{true}}" muted="{{isMuted}}" object-fit="fill"></video>
<!-- <image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/mute.png" class="muteImg" mode="widthFix" wx:if="{{isMuted}}" bindtap="closeMuted"></image> -->
<!-- <image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/sound.png" class="muteImg" mode="widthFix" wx:else bindtap="closeMuted"></image> -->
<image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/logo.png" class="logoImg" mode="widthFix"></image>
<image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/btn.png" class="btnImg" mode="widthFix" bindtap="closeFullAdv"></image>
<image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/play.png" class="playImg" mode="widthFix" wx:if="{{videoPlay}}" bindtap="videoPlay"></image>
<image src="https://static.ticket.sz-trip.com/jundaosuzhou/images/startPage/pause.png" class="playImg" mode="widthFix" wx:else bindtap="videoPause"></image>
</view>
</view>
<!-- <view class="topBox">
<view class="Qtop" :style="{height:height}">
@ -664,4 +607,4 @@
<view class="time">{{time}}s</view>
<view bind:tap="gotoIndex">跳过</view>
</view>
</view> -->
</view> -->

4
pages/index/index.wxss

@ -358,9 +358,9 @@ page {
.pbservice {
/* width: calc(175rpx * 6); */
/* 元旦修改 */
width: calc(190rpx * 6);
width: calc(190rpx * 7);
display: flex;
margin-top: 20rpx;
margin-top: 30rpx;
flex-wrap: wrap;
/* margin-bottom: 60rpx; */
/* 元旦修改 注释margin-bottom */

2
pages/list/night/index.js

@ -23,7 +23,7 @@ Page({
})
this.getList()
},
search:function(){
search:function(e){
this.setData(e.detail);
this.setData({
list:[],

11
pages/order/pay/index.js

@ -20,6 +20,7 @@ Page({
wxPay:false,
isBook:false,
ids:[], // 多产品id
status:false
},
/**
@ -128,6 +129,9 @@ Page({
title: '订单已支付',
icon:'success'
})
this.setData({
status:true
})
setTimeout(()=>{
wx.reLaunch({
url: '/pages/user/order/list',
@ -255,7 +259,12 @@ Page({
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
if (!this.data.status) {
wx.reLaunch({
url: '/pages/user/order/list',
})
}
},
/**

7
pages/order/scene/index.js

@ -36,6 +36,7 @@ Page({
is_authentication:1, // 是否实名,0否1是,默认实名
phone:'', //不实名时传的手机号
is_real_name:1, // 是否是一证一票,0否1是,
status:false
},
/**
@ -162,6 +163,7 @@ Page({
// productNum: productNum,
linkmanList: linkmanList
})
console.log(this.data.linkmanList);
// this.changePrice()
this.totalPrice(this.data.singlePrice)
}
@ -615,6 +617,10 @@ Page({
* 生命周期函数--监听页面显示
*/
onShow: function () {
// this.setData({
// productNum:1
// })
// app.globalData.productNum =1
if(app.globalData.list && app.globalData.list.length != 0 && this.data.type!='museum'){
app.globalData.product = app.globalData.list[app.globalData.index]
}
@ -669,7 +675,6 @@ Page({
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**

7
pages/user/address/add/index.js

@ -275,12 +275,19 @@ Page({
data.id = this.data.id;
service ="editConsignee";
}
let address = province+city+area+" "+data.address
let name = data.username
let tel = data.mobile
user.user_post("user/" + service,data).then(res=>{
if(res.data){
wx.showToast({
title: '保存成功',
icon:'success'
})
wx.setStorageSync('linkMan',{
...data,address:address,name:name,tel:tel
// ...data,address:data.seldAdd+data.address
})
util.back()
}
})

4
pages/user/service/list/index.wxml

@ -22,8 +22,8 @@
<!-- 成功 -->
<view class="modal-dialog" wx:if="{{showModal && ses}}">
<view class="modal-title"><view class="modal-info">即将跳转人工在线客服
<view>客服服务时间:8:30-11:30,</view>
<view>13:00-17:30</view>
<view>客服服务时间:9:00-12:00,</view>
<view>13:00-18:00</view>
如遇紧急情况可拨打 <view class="green" bindtap="phoneCall"> 0512-66555111 </view></view></view>
<view class="modal-footer">
<view

4
pages/user/user.wxml

@ -126,8 +126,8 @@
<view class="model-content">
<view>即将跳转人工客服</view>
<view style="margin-top: 40rpx;">客服服务时间:08:30-17:30,</view>
<view style="margin-top: 30rpx;margin-left: 110rpx;">13:00-17:30</view>
<view style="margin-top: 40rpx;">客服服务时间:09:00-12:00,</view>
<view style="margin-top: 30rpx;">13:00-18:00</view>
</view>
<view class="btn-list">
<button class="model-btn" bindtap="closeModel">

657
subPackages/feiyiNew/index.js

@ -0,0 +1,657 @@
// pages/list/store/index.js
// import commonApi from "../../../utils/https/common"
// import util from "../../../utils/util"
import commonApi from "../../utils/https/common"
import util from "../../utils/util"
let app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
list:[], //获取的产品列表
total:1, //总数
keywords:"", //搜索关键字
navIndex:0, //一级分类选中下标
navList:['列表样式','宫格样式'],
flag:true, //切换样式,true按分类,false按店铺展示
typeList:[], //左侧的二级分类
typeIndex:0, //二级分类选中下标
id:'1',
cartCount:0,
skuFlag:null, //规格弹窗
info: null, //规格信息
skuIndex: 0, //默认选中第一个规格
producNum: 1,
showPopup:false, //购物车的弹窗
gwcList:[], //gwc里的产品数据
allSelectedBtn:false, //全选按钮
seachFlag:false, //搜索模式
totalPrice:0, //获取购物车总价
name:'非遗专卖'
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
wx.showShareMenu({
withShareTicket: true,
menus: ['shareAppMessage', 'shareTimeline']
})
this.getCount()
this.getType()
},
// 清空
delAll() {
let ids = []
this.data.gwcList.forEach(item => {
ids.push(item.sku_id)
})
commonApi.user_post("cart_within/del_sku", {
sku_id: ids+'',
type:'2'
}).then(res => {
if (res.code == 1) {
wx.showToast({
title: '清空成功',
icon: "success"
})
this.setData({
allSelectedBtn:false
})
this.getCount()
}
})
},
// 减少一个
del(e) {
let item = e.currentTarget.dataset.item
let gwcList = this.data.gwcList
commonApi.user_post("cart_within/update_sku", {
num:item.num-1,
sku_id: item.sku_id,
type:'2'
}).then(res => {
if (res.code == 1) {
// this.getCount()
commonApi.user_post('cart_within/get_list', {
type:'2'
}).then(res => {
let arr = res.data,totalPrice = 0,cartCount=0
if (res.data.length>0) {
res.data.forEach(item=> {
// totalPrice += item.num*item.sku.price
cartCount += item.num
gwcList.forEach(el=> {
if (el.id == item.id) {
item.selected = el.selected
}
})
})
res.data.forEach(item=> {
if (item.selected ==1) {
totalPrice += item.num*item.sku.price
}
})
}
let status = res.data.every(el => el.selected === 1)
this.setData({
cartCount: cartCount, //1
gwcList:res.data,
allSelectedBtn:status?true:false,
totalPrice
})
})
}
})
},
// 添加产品到购物车
addCart: function (e) {
let item = e.currentTarget.dataset.item
app.globalData.postProduct = []
app.globalData.list = []
commonApi.user_post("/product/checkStock", {
sku_id: this.data.showPopup ? item.sku.id : this.data.info.sku[this.data.skuIndex].id,
}).then(res => {
if (res && res.code != 1) {
return;
} else {
commonApi.user_post("cart_within/add_sku", {
sku_id: this.data.showPopup ? item.sku.id :this.data.info.sku[this.data.skuIndex].id,
num: this.data.producNum,
type:"2"
}).then(res => {
if (res.code == 1) {
commonApi.user_post('cart_within/get_list', {
type:'2'
}).then(res => {
let cartCount = 0,totalPrice = 0,gwcList=this.data.gwcList
res.data.forEach(val=> {
cartCount+=val.num
console.log(this.data.skuFlag);
// debugger
if (!this.data.skuFlag && !this.data.showPopup) {
// debugger
if (val.sku.id == this.data.info.sku[this.data.skuIndex].id) {
val.selected = 1
}
}else {
// debugger
gwcList.forEach(el=> {
if (el.id == val.id) {
val.selected = el.selected
}
})
}
// if (this.data.showPopup) {
// totalPrice += Number(val.num*val.sku.price)
// gwcList.forEach(el=> {
// if (el.id == val.id) {
// val.selected = el.selected
// }
// })
// }
})
res.data.forEach(element=> {
if (element.selected == 1) {
totalPrice += Number(element.num*element.sku.price)
}
})
let status = res.data.every(el => el.selected === 1)
this.setData({
cartCount: cartCount,
totalPrice,
producNum:1,
gwcList:res.data,
allSelectedBtn:status?true:false,
})
})
// 加动效
this.setData({
skuFlag: null,
aniSkuIndex: this.data.skuIndex,
cartImgInfo: null
})
setTimeout(() => {
this.setData({
aniSkuIndex: -1
})
// wx.showModal({
// title: "提示",
// content: "去购物车结算?",
// success: function (res) {
// if (res.confirm) {
// wx.navigateTo({
// url: '/pages/user/cartlist/list',
// })
// }
// }
// })
}, 650)
}
})
}
})
},
// 去结算
order: function () {
commonApi.user_post('wx/get_user_keep', {
jumpurl: '/pages/user/cartlist/list',
title: '购物车',
type: 'mini'
}).then(res => {
if (res.data.subscribe == 0) {
this.setData({
wxqrcode: res.data.qrcode,
showQrCode: true
})
} else {
app.globalData.couponInfo = null;
util.pagePoint({
event: 'cart_order'
}, 1)
let list = this.data.gwcList,
price = 0,
product = [],
product1 = []
list.map(item => {
if (item.selected == 1) {
// item.product.type="post";
if (item.product.type == 'post') {
product.push({
product: item.product,
sku: item.sku,
productNum: item.num
})
} else {
product1.push(item)
app.globalData.list = product1
}
if (item.product.type.includes('post')) {
this.data.productType = 'post'
}
}
})
if (product.length == 0 && product1.length == 0) {
wx.showToast({
title: '请先选择产品',
icon: 'none'
})
return;
}
if (product.length > 0 && product1.length > 0) {
this.setData({
flag: 'mix',
isCar: 'multiple'
})
}
if (product1.length > 1) {
this.setData({
isCar: 'multiple'
})
} else {
this.setData({
isCar: 'single'
})
}
console.log(product1);
app.globalData.postProduct = product;
if (app.globalData.list) {
app.globalData.product = app.globalData.list[app.globalData.index]
}
wx.navigateTo({
url: '/pages/order/postOrder/index?from=cart&flag=' + this.data.flag,
})
}
})
},
// 全选
allSelected() {
let gwcList = this.data.gwcList
let totalPrice = 0
if (this.data.allSelectedBtn) {
gwcList.forEach(item=> {
item.selected =0
})
} else {
gwcList.forEach(item=> {
item.selected =1
})
gwcList.forEach(item=> {
totalPrice += Number(item.num*item.sku.price)
})
}
this.setData({
gwcList,
allSelectedBtn:!this.data.allSelectedBtn,
totalPrice
})
},
// 单选一个
selectedIt(e) {
let item = e.currentTarget.dataset.item,gwcList= this.data.gwcList,totalPrice=0
gwcList.forEach(el=> {
if (el.id == item.id) {
el.selected == 1 ? el.selected =0 : el.selected = 1
}
})
gwcList.forEach(el=> {
if (el.selected == 1) {
totalPrice += Number(el.num*el.sku.price)
}
})
let status = gwcList.every(el => el.selected === 1)
this.setData({
gwcList,
allSelectedBtn:status?true:false,
totalPrice
})
},
// 左侧购物车打开弹窗
openPopup() {
// this.getCount()
let gwcList = this.data.gwcList
let status = gwcList.every(el => el.selected === 1)
this.setData({
showPopup:!this.data.showPopup,
allSelectedBtn:status?true:false,
})
},
// 获取商户标签列表
getSupplierTag() {
let list = this.data.list;
if(list.length>=this.data.total) return;
commonApi.user_post('supplier/get_supplier_by_title_tag_id', {
tag_id:5, //标签的ID
offset:list.length, //起始查询
limit:10, //查询数量
title:this.data.keywords //搜索产品名称
}).then(res => {
res.data.list.map(item=>{
item.display_tags = item.display_tags?item.display_tags.split(","):[];
item.display_tags = item.display_tags.splice(0,2);
})
this.setData({
list:list.concat(res.data.list),
total:res.data.total
})
})
},
// 获取左侧二级分类
getType() {
commonApi._post("product/tag_list",{
pid:5, //父标签的ID
}).then(res=>{
this.setData({
typeList:res.data
})
this.getList()
})
},
// 获取历史购物车详情
getCount() {
commonApi.user_post('cart_within/get_list', {
type:'2'
}).then(res => {
let arr = res.data,cartCount=0
// let arr = res.data,totalPrice = 0,cartCount=0
if (arr.length>0) {
arr.forEach(item=> {
// totalPrice += item.num*item.sku.price
cartCount += item.num
})
}
// console.log(totalPrice);
this.setData({
cartCount: cartCount, //1
gwcList:res.data,
// totalPrice,
allSelectedBtn:false
})
})
},
// 重置
onReload() {
this.setData({
list:[],
total:1,
navIndex:0,
typeIndex:0,
flag:true,
seachFlag:false
})
this.getList()
},
// 搜索
search:function(e){
if (e.detail.keywords == '') {
this.setData({
seachFlag:false,
keywords:'',
list:[],
total:1
})
this.onReload()
}else {
this.setData({
seachFlag:true,
keywords:e.detail.keywords,
list:[],
total:1
})
this.getList();
}
},
// 去产品详情页
goodsDetail(e){
wx.navigateTo({
url: '/pages/info/postProductInfo/index?id='+e.currentTarget.dataset.goods.id,
})
},
// 去店铺
goShop(e){
let id = e.currentTarget.dataset.id;
util.pagePoint({
event: 'legacy_shop',
param:{
id:id
},
type:'supplier'
},1)
wx.navigateTo({
url: '/pages/list/store/index?id='+id,
})
},
gotoProduct:function(e){
let item = e.currentTarget.dataset.item;
util.gotoDetail(item)
},
// 切换样式
changeStyle() {
this.setData({
navIndex:this.data.navIndex == 0? 1: 0,
flag:!this.data.flag,
total:1,
list:[],
typeIndex:0
})
if (this.data.flag) {
this.getType()
}else {
this.getSupplierTag()
}
},
// 切换一级分类
changeNav:function(e){
let index = e.currentTarget.dataset.index,navList=this.data.navList;
this.setData({
navIndex:index,
list:[],
total:1
})
if (this.data.navIndex == 0) {
this.getType()
} else {
this.getSupplierTag()
}
},
// 切换左侧二级分类
changeType(e) {
let index = e.currentTarget.dataset.index,typeList=this.data.typeList;
this.setData({
typeIndex:index,
type:typeList[index].id,
list:[],
total:1
})
this.getList()
},
// 获取产品列表
getList:function(){
let list = this.data.list;
if(list.length>=this.data.total) return;
commonApi._post("product/get_product_by_tag",{
tag_id:this.data.seachFlag? '5':this.data.typeList[this.data.typeIndex].id, //标签的ID
offset:list.length, //起始查询
limit: 10, //查询数量
title:this.data.keywords, //搜索产品名称
}).then(res=>{
res.data.list.map(item=>{
item.display_tags = item.display_tags?item.display_tags.split(","):[];
item.display_tags = item.display_tags.splice(0,2);
})
this.setData({
list:list.concat(res.data.list),
total:res.data.total
})
console.log(this.data.list);
})
// commonApi._post("supplier/get_supplier_by_tag_id",{
// tag_id:this.data.flag ? this.data.navList[this.data.navIndex].type :this.data.navList2[this.data.navIndex].type,
// limit:10,
// offset:list.length,
// sort:"weight",
// title:this.data.keywords
// }).then(res=>{
// res.data.list.map(item=>{
// item.display_tags = item.display_tags?item.display_tags.split(","):[];
// item.display_tags = item.display_tags.splice(0,2);
// })
// this.setData({
// list:list.concat(res.data.list),
// total:res.data.total
// })
// })
},
// 添加产品弹窗 1.首先获取到该产品下的规格
addBuyCart(e) {
let item = e.currentTarget.dataset.item
console.log(item);
commonApi._post("product/get_product_detail", {
id: item.id
}).then(res => {
if (item.skuid) {
let sku = res.data.sku.find(skuItem => item.id == skuItem.skuid);
res.data.sku = [sku];
}
res.data.flag = res.data.sku.find(item => item.flag == 'on') ? res.data.flag : 0
this.setData({
info: res.data,
// skuFlag: "cart"
})
this.showCart()
this.BroswerRecord()
})
},
// 添加产品弹窗 2.渲染规格,未登录去登录
showCart: function () {
commonApi.user_post('wx/get_user_keep', {
jumpurl: '/pages/info/postProductInfo/index?id=' + this.data.id,
title: this.data.info.title,
type: 'mini'
}).then(res => {
if (res.data.subscribe == 0) {
this.setData({
wxqrcode: res.data.qrcode,
showQrCode: true
})
} else {
if (this.data.info.sku.length == 0) {
wx.showToast({
title: '该产品未设置规格,不能加购',
icon: 'none'
})
return;
}
this.setData({
skuFlag: "cart"
})
let that = this
wx.createSelectorQuery().select('#skuImg').boundingClientRect(function (res) {
console.log(res)
that.setData({
cartImgInfo: 'top:' + res.top + 'px;left:' + res.left + 'px;'
})
}).exec()
}
this.getCount()
})
},
// 规格弹窗切换其他规格
selectSku: function (e) {
let index = e.currentTarget.dataset.index;
this.setData({
skuIndex: index
})
},
// 关闭弹窗
hideSku: function () {
this.setData({
skuFlag: null,
cartImgInfo: null
})
},
// 减少数量
minus: function () {
if (this.data.producNum == 1) return;
this.setData({
producNum: this.data.producNum - 1
})
},
// 加数量
add: function () {
this.setData({
producNum: this.data.producNum + 1
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
this.onReload()
// this.setData({
// list:[],
// total:1,
// navIndex:0,
// typeIndex:0,
// flag:true
// })
// this.getList()
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
if (this.data.flag) {
this.getList()
} else {
this.getSupplierTag()
}
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
onShareTimeline: function() {
return {
title: '君到苏州-文创特产',
query: '',
imageUrl: 'https://static.ticket.sz-trip.com/xcxImages/index/icon5New.png'
}
}
})

7
subPackages/feiyiNew/index.json

@ -0,0 +1,7 @@
{
"usingComponents": {
"title":"/pages/component/TitleHeader",
"common-image":"/pages/component/commonImage/index",
"search":"/pages/component/SearchHeader"
}
}

232
subPackages/feiyiNew/index.wxml

@ -0,0 +1,232 @@
<!--pages/feiyi/list/index.wxml-->
<!-- 非遗专卖页面 -->
<view class="fiyi-main" >
<view style="{{seachFlag?'':'height: 500rpx;'}}">
<search bind:onload="search" name="{{name}}"></search>
<image wx:if="{{!seachFlag}}" class="heaimg" src="https://static.ticket.sz-trip.com/uploads/20240715/590b8c17b06ccadd09f43ee9260d2a36.png" mode="widthFix"></image>
</view>
<view wx:if="{{!seachFlag}}" class="feiyi-centent">
<!-- <view class="type-box">
<view style="display: flex;">
<view wx:for="{{flag?navList:navList2}}" wx:key="*this" bindtap="changeNav" data-index="{{index}}" class="{{index == navIndex ? 'seld-nav':'nav'}}">{{item.title}}</view>
</view>
<image bindtap="changeStyle" class="changeStyle" src="https://static.ticket.sz-trip.com/uploads/20240710/62bb38d5f88754e57447a26b14176aa2.png" mode="" />
</view> -->
<!-- 产品部分 -->
<view wx:if="{{navIndex == 0}}" style="height: 100%; overflow: hidden;">
<view style="display: flex;height: 100%; overflow: hidden;">
<!-- 左侧二级分类 -->
<view class="left">
<scroll-view scroll-y="true" style="height: 100%" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll">
<view wx:for="{{typeList}}" wx:key="*this" class="{{index == typeIndex ? 'seld-type':'type-two-box'}}" bindtap="changeType" data-index="{{index}}">
<view class="line" wx:if="{{index == typeIndex}}"></view>
<view>
{{item.name}}
</view>
</view>
</scroll-view>
</view>
<!-- 右侧产品列表 -->
<view style="display:flex">
<view style="width: 550rpx;display: flex;justify-content: flex-end;margin: 21rpx 24rpx 20rpx 0;">
<view class="nav-box">
<view class="{{navIndex == index ? 'styleBtn-seld' : 'styleBtn'}}" wx:for="{{navList}}" data-index="{{index}}" bindtap="changeNav">
<image wx:if="{{navIndex == index}}" class="style-icon" style="width:29rpx;height:29rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/1cb81757944dd8523f3786195969266c.png" mode="" />
<image wx:else class="style-icon" style="width:29rpx;height:29rpx;" src="https://static.ticket.sz-trip.com/uploads/20240710/62bb38d5f88754e57447a26b14176aa2.png" mode="" />
<text>{{item}}</text>
</view>
</view>
</view>
<view class="list" style="width: 100%;flex:1; overflow: hidden;">
<scroll-view scroll-y="true" style="height: 100%" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll">
<view class="item" wx:for="{{list}}" wx:key="*this" bindtap="goodsDetail" data-goods="{{item}}">
<image class="img" src="{{item.headimg}}" mode="" />
<view class="content">
<view class="title">
{{item.title}}
</view>
<view class="item-bottom">
<view class="price">
<text class="current-price">{{item.price/100}}</text>
<text class="original-price">¥{{item.market_price/100}}</text>
</view>
<view class="add" catchtap="addBuyCart" data-item="{{item}}">+</view>
</view>
</view>
</view>
</scroll-view>
</view>
</view>
</view>
</view>
<!-- 店铺展示 -->
<view wx:else style="padding: 0 26.67rpx; display: flex; flex-direction: column; overflow: hidden;">
<view style="width: 700rpx;display: flex;justify-content: flex-end;margin: 21rpx 24rpx 20rpx 0;">
<view class="nav-box">
<view class="{{navIndex == index ? 'styleBtn-seld' : 'styleBtn'}}" wx:for="{{navList}}" data-index="{{index}}" bindtap="changeNav">
<image wx:if="{{navIndex == index}}" class="style-icon" style="width:29rpx;height:29rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/1cb81757944dd8523f3786195969266c.png" mode="" />
<image wx:else class="style-icon" style="width:29rpx;height:29rpx;" src="https://static.ticket.sz-trip.com/uploads/20240710/62bb38d5f88754e57447a26b14176aa2.png" mode="" />
<text>{{item}}</text>
</view>
</view>
</view>
<view style="flex:1; overflow: hidden;">
<scroll-view scroll-y="true" style="height: 100%" bindscrolltoupper="upper" bindscrolltolower="getSupplierTag" bindscroll="scroll">
<view wx:for="{{list}}" class="list1" wx:key="*this">
<view class="top-info" bindtap="goShop" data-id="{{item.id}}">
<common-image mode="aspectFill" src="{{item.headimg}}" style="border-radius: 13rpx;"></common-image>
<view class="supplier-info">
<view class="supplier-name textOver">{{item.shop_name}}</view>
<view class="mid-box">
<view class="supplier-tags">
<view class="supplier-tag textOver" wx:for="{{item.display_tags}}">{{item}}</view>
</view>
<view class="supplier-price"><text>¥</text><text>{{(item.start_price/100)}}</text><text>起</text></view>
</view>
<view class="bottom-box">
<view class="supplier-address supplier-tags"><text class="iconfont icon-location"></text><text style="max-width: 300rpx;" class="textOver">{{item.address}}</text></view>
<view class="btn">
进店看看
</view>
</view>
</view>
</view>
<view class="product-list">
<view data-item="{{item}}" bindtap="goodsDetail" data-goods="{{item}}" class="product-item" wx:for="{{item.product}}" wx:key="*this">
<image src="{{item.headimg}}" mode="aspectFill"></image>
<view class="product-title textOver2">{{item.title}}</view>
<view class="supplier-price"><text>¥</text><text style="font-size:32rpx">{{(item.price/100)}}</text><text class="market_price" wx:if="{{item.market_price && item.market_price!=0 && item.market_price>item.price}}">{{item.market_price/100}}</text></view>
</view>
</view>
</view>
</scroll-view>
</view>
</view>
</view>
</view>
<!-- 搜索到的产品列表 -->
<view wx:if="{{seachFlag}}" style="overflow-y: scroll;margin-top: -650rpx;padding-bottom: 50rpx;">
<view class="hot-list" wx:if="{{list.length>0}}">
<view class="hot-list-item" wx:for="{{2}}" wx:for-index="number" wx:key="this">
<view class="hot-item" wx:for="{{list}}" wx:if="{{index%2==number}}" bindtap="goodsDetail" data-goods="{{item}}" wx:key="id">
<image class="hot-item-img" src="{{item.headimg}}" mode="" />
<view class="hot-item-main">
<view class="hot-item-title textOver2">
{{item.title}}
</view>
<view style="display: flex;justify-content: space-between;align-items: center; ">
<view>
<text class="hot-item-price">{{item.price/100}}</text>
<text class="hot-item-market_price">{{item.market_price/100}}</text>
</view>
<image class="add" bindtap="addBuyCart" data-item="{{item}}" src="https://static.ticket.sz-trip.com/uploads/20240715/3ad59eac0088d47ff4bc2fec6ffd8f56.png" mode="" />
</view>
</view>
</view>
</view>
</view>
<view wx:if="{{list.length==0}}" style="display: flex;flex-direction: column;align-items: center;position: absolute;left: 211rpx;top: 286.67rpx;">
<image style="width:328rpx;height:450.67rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/3750a41a89b49e9f546a6ba85d71d66e.png" mode="" />
<view style="font-family: PingFang SC;font-weight: 500;font-size: 28rpx;color: #666666;margin-top: 67rpx;">
暂无搜索结果
</view>
</view>
</view>
<!-- 底部购物车 -->
<view style="width:100%;height:167rpx;" wx:if="{{navIndex == 0}}">
</view>
<view class="bottom" wx:if="{{(navIndex == 0 &&skuFlag != 'cart') || showPopup}}">
<!-- 左边购物车图标及价格 -->
<view class="gwc-left">
<view class="gwc" bindtap="openPopup">
<image wx:if="{{cartCount == 0}}" style="width: 100%;height: 100%;" src="https://static.ticket.sz-trip.com/uploads/20240715/520600afc4bd32ed1f44bc5985fc2ba5.png" mode="" />
<image wx:else style="width: 100%;height: 100%;" src="https://static.ticket.sz-trip.com/uploads/20240711/f9c290c64c521feae643d28f1b8c9c60.png" mode="" />
<view class="cartCount">{{cartCount}}</view>
</view>
<view style="font-weight: 500;font-size: 27rpx;color: #000000;">
总计:<text class="money">{{totalPrice/100}}</text>
</view>
<!-- <view style="margin-left: 16.67rpx;font-family: PingFang SC;font-weight: 500;font-size: 27rpx;color: #0B898E;" bindtap="openPopup">
<text>明细</text>
<image wx:if="{{showPopup}}" style="width:17.33rpx;height:17.33rpx;margin-left: 10rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/524acef87f09269f6a4fa39d0fa38c18.png" mode="" />
<image wx:else style="width:17.33rpx;height:17.33rpx;margin-left: 10rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/080e94053d1444707d18860a73b17915.png" mode="" />
</view> -->
</view>
<!-- 去结算按钮 -->
<view class="{{cartCount == 0?'no-buy':'buy'}}" bindtap="order">去结算</view>
</view>
<!-- 规格弹窗 -->
<view class="mask" wx:if="{{skuFlag}}">
<view class="mask-bg" bindtap="hideSku" style="z-index: 9999;"></view>
<view class="mask-content" style="z-index: 99999;">
<view class="iconfont icon-close" bindtap="hideSku"></view>
<view class="sku-info-box">
<image id="skuImg" src="{{info.sku[skuIndex].headimg}}" mode="aspectFill"></image>
<view class="sku-info">
<view class="sku-price">{{info.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.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.sku}}" wx:key="*this">{{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="addCart" wx:if="{{info.sku[skuIndex].flag=='on'}}">{{skuFlag=='cart'?'加入购物车':'立即购买'}}
</view> -->
<view class="mask-btn" bindtap="addCart" wx:if="{{info.sku[skuIndex].flag=='on'}}">加入购物车</view>
<view class="mask-btn disable" wx:else>该商品已下架</view>
</view>
</view>
</view>
<!-- 购物车的弹窗 -->
<view class="mask" wx:if="{{showPopup}}">
<view bindtap="openPopup" class="mask-bg"></view>
<view class="mask-content" style="padding: 40rpx 0 180rpx;min-height: 600rpx;">
<view style="margin: 0 26.67rpx;">
<!-- 顶部操作按钮 -->
<view class="flex" style="margin-bottom: 56.67rpx;">
<view class="flex">
<image bindtap="allSelected" wx:if="{{allSelectedBtn}}" style="width: 43rpx;height: 43rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/a961604bc708670cbdc76d1580eb3f3c.png" mode="" />
<view bindtap="allSelected" wx:else style="width: 40rpx;height: 40rpx;border-radius: 50%;border: 1px solid #999999;"></view>
<text class="all">全选</text>
</view>
<view class="flex" bindtap="delAll">
<image style="width:26.67rpx;height:26.67rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/3320fbf5ccf471145c3c600582cd9b65.png" mode="" />
<text class="del-all">清空</text>
</view>
</view>
<view class="gwc-item" wx:for="{{gwcList}}" wx:key="*this" bindtap="selectedIt" data-item="{{item}}">
<view style="margin-right: 26.67rpx;">
<image wx:if="{{item.selected ==1}}" style="width: 40rpx;height: 40rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/a961604bc708670cbdc76d1580eb3f3c.png" mode="" />
<view wx:else style="width: 40rpx;height: 40rpx;border-radius: 50%;border: 1px solid #999999;"></view>
</view>
<image style="width:179rpx;height: 179rpx;border-radius: 13rpx;flex-shrink: 0;margin-right: 26rpx;" src="{{item.sku.headimg}}" mode="" />
<view class="main">
<view>
<view class="title">{{item.product.title}}</view>
<view class="sku-title">{{item.sku.sku_name}}</view>
</view>
<view class="main-bottom">
<view class="price">{{item.sku.price/100}}</view>
<view class="num-box">
<image class="reduce" catchtap="del" data-item="{{item}}" src="https://static.ticket.sz-trip.com/uploads/20240715/054627e5d3864a9a4a8b397cae47754e.png" mode="" />
<view style="margin: 0 25.33rpx;">{{item.num}}</view>
<image class="grow" catchtap="addCart" data-item="{{item}}" src="https://static.ticket.sz-trip.com/uploads/20240715/3ad59eac0088d47ff4bc2fec6ffd8f56.png" mode="" />
</view>
</view>
</view>
</view>
</view>
</view>
</view>

721
subPackages/feiyiNew/index.wxss

@ -0,0 +1,721 @@
/* pages/feiyi/list/index.wxss */
.heaimg {
display: block;
width: 100%;
}
.fiyi-main{
height: 100%;
display: flex;
flex-direction: column;
overflow:hidden;
}
page {
/* background: #FFD99E; */
/* padding-bottom: 170rpx; */
height: 100%;
display: flex;
flex-direction: column;
overflow:hidden;
}
.changeStyle {
width: 40rpx;
height: 40rpx;
}
.type-box {
padding: 33.33rpx 26.67rpx 26.67rpx;
display: flex;
justify-content: space-between;
align-items: center;
}
.nav {
width: 145rpx;
height: 53rpx;
border-radius: 8rpx;
border: 1px solid #0B898E;
font-family: PingFang SC;
font-weight: 500;
font-size: 27rpx;
color: #0B898E;
text-align: center;
line-height: 53rpx;
margin-right: 12.67rpx;
}
.seld-nav {
width: 145rpx;
height: 57rpx;
background: #0B898E;
border-radius: 8rpx;
font-family: PingFang SC;
font-weight: bold;
font-size: 27rpx;
color: #FFFFFF;
text-align: center;
line-height: 57rpx;
margin-right: 12.67rpx;
}
.feiyi-centent {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
.left {
width: 200rpx;
/* min-height: 100vh; */
/* min-height: 950rpx; */
background-color: #F3F3F3;
}
.type-two-box {
width: 200rpx;
height: 107rpx;
text-align: center;
line-height: 107rpx;
font-weight: 500;
font-size: 27rpx;
color: #000000;
}
.seld-type {
background: #fff;
font-weight: bold;
font-size: 27rpx;
color: #000000;
text-align: center;
line-height: 107rpx;
position: relative;
}
.line {
width: 7rpx;
height: 53rpx;
background: #0B898E;
position: absolute;
top: 26.67rpx;
left: 0;
}
.item {
padding: 0 26.67rpx;
display: flex;
margin-bottom: 26.67rpx;
}
.img {
width: 161rpx;
height: 161rpx;
background: #999999;
border-radius: 11rpx;
flex-shrink: 0;
margin-right: 14.67rpx;
}
.content {
display: flex;
flex-direction: column;
justify-content: space-between;
width: 100%;
}
.title {
font-weight: 500;
font-size: 27rpx;
color: #000000;
}
.item-bottom {
display: flex;
justify-content: space-between;
align-items: center;
}
.current-price {
font-weight: bold;
font-size: 33rpx;
color: #D70000;
margin-right: 13.33rpx;
}
.current-price::before {
content: "¥";
font-size: 23rpx;
font-weight: 500;
}
.original-price {
font-weight: 400;
font-size: 21rpx;
color: #999999;
text-decoration-line: line-through;
}
.add {
width: 40rpx;
height: 40rpx;
background: #0B898E;
border-radius: 50%;
text-align: center;
line-height: 40rpx;
font-weight: 500;
font-size: 31rpx;
color: #FFFFFF;
}
.bottom {
position: fixed;
bottom: 0;
left: 0;
right: 0;
height: 167rpx;
background: #FFFFFF;
box-shadow: 0rpx 2rpx 13rpx 0rpx rgba(136,136,136,0.25);
padding: 0 27.33rpx 0 26.67rpx;
display: flex;
justify-content: space-between;
align-items: center;
z-index: 666;
}
.gwc {
margin-right: 14rpx;
width: 84rpx;
height: 84rpx;
position: relative;
}
.cartCount {
width: 40rpx;
height: 40rpx;
background: #D90F01;
border-radius: 50%;
border: 1rpx solid #FFFFFF;
font-family: PingFang SC;
font-weight: 500;
font-size: 27rpx;
color: #FFFFFF;
text-align: center;
line-height: 40rpx;
position: absolute;
right: -10rpx;
top: -10rpx;
}
.gwc-left {
display: flex;
align-items: center;
}
.money {
font-weight: bold;
font-size: 47rpx;
color: #D70000;
}
.money::before {
content: "¥";
font-size: 23rpx;
font-weight: 500;
}
.buy {
width: 240rpx;
height: 83rpx;
background: #D70000;
border-radius: 42rpx;
font-family: PingFang SC;
font-weight: bold;
font-size: 32rpx;
color: #FFFFFF;
text-align: center;
line-height: 83rpx;
}
.no-buy {
width: 240rpx;
height: 83rpx;
background: #BDBDBD;
border-radius: 42rpx;
font-family: PingFang SC;
font-weight: bold;
font-size: 32rpx;
color: #FFFFFF;
text-align: center;
line-height: 83rpx;
}
/* .classimg {
margin-left: 13rpx;
width: 710rpx;
display: block;
} */
/* .type-text {
position: absolute;
left: 130rpx;
padding: 30rpx 30rpx;
bottom: 0;
line-height: 60rpx;
font-size: 40rpx;
font-weight: bold;
z-index: 1;
color: #FFE1A2;
width: 120rpx;
display: flex;
justify-content: space-between;
} */
/* .item {
background: url(https://static.ticket.sz-trip.com/xcxImages/techan/bg.png);
background-size: 100% 100%;
width: 694rpx;
height: 571rpx;
margin: 0 auto;
margin-bottom: 15rpx;
color: #704436;
box-sizing: border-box;
} */
.list1 {
background-color: #FAF6F0;
border-radius: 13rpx;
margin-bottom: 30rpx;
padding: 20rpx 0 28rpx 20rpx;
}
.top-info {
display: flex;
/* padding: 30rpx; */
align-items: center;
margin-bottom: 20rpx;
}
.top-info image {
width: 136rpx;
height: 136rpx;
display: block;
flex-shrink: 0;
margin-right: 12rpx;
}
.supplier-info {
display: flex;
flex-direction: column;
height: 136rpx;
justify-content:space-between;
flex: 1;
margin-right: 20.67rpx;
/* width: 300rpx; */
}
.supplier-name {
font-family: PingFang SC;
font-weight: 500;
font-size: 32rpx;
color: #000000;
}
.supplier-tags {
display: flex;
}
.supplier-tag {
padding: 0 20rpx;
font-size: 22rpx;
border: 1rpx solid #877350;
border-radius: 15rpx;
line-height: 28rpx;
margin-right: 20rpx;
color: #877350;
}
.supplier-address {
font-size: 20rpx;
margin-top: 10rpx;
color: #877350;
font-weight: 500;
font-size: 23rpx;
}
.supplier-address .iconfont {
margin-right: 8rpx;
font-size: 20rpx;
}
.supplier-price {
color: #CC3320;
font-size: 20rpx;
}
.supplier-price text:nth-child(2){
font-size: 40rpx;
font-weight: bold;
}
.product-list {
display: flex;
/* margin: 0 20rpx 0 30rpx; */
overflow-x:scroll ;
box-sizing: border-box;
/* padding-right:30rpx ; */
}
.product-list::-webkit-scrollbar {
display: none;
}
.product-item {
width: 212rpx;
font-size: 28rpx;
margin-right: 19rpx;
}
.product-item:nth-child(3){
}
.product-item image {
width: 212rpx;
height: 209rpx;
border-radius: 13rpx;
}
.market_price {
color: #999999;
font-weight: 400;
font-size: 20rpx;
margin-left: 10rpx;
text-decoration: line-through;
}
.mid-box{
display: flex;
align-items: center;
justify-content: space-between;
padding-right: 10rpx;
}
.bottom-box{
display: flex;
align-items: center;
justify-content: space-between;
}
.btn{
flex-shrink: 0;
background: #C6937F;
border-radius: 24rpx;
width: 147rpx;
height: 48rpx;
line-height: 48rpx;
text-align: center;
font-size: 25rpx;
font-family: PingFang SC;
font-weight: 500;
color: #FFFFFF;
}
.mask-content {
position: absolute;
left: 0;
right: 0;
bottom: 0;
width: 100%;
}
.mask-content .icon-close {
position: absolute;
right: 40rpx;
top: 40rpx;
}
.sku-info-box {
margin: 50rpx 40rpx;
display: flex;
justify-content: space-between;
}
.sku-info-box image {
width: 218rpx;
height: 180rpx;
border-radius: 13rpx;
display: block;
margin-right: 40rpx;
flex-shrink: 0;
}
.sku-info {
flex: 1;
}
.sku-price {
font-size: 40rpx;
font-weight: 500;
color: #D62828;
margin: 20rpx 0;
display: flex;
justify-content: flex-start;
align-items: center;
}
.sku-price::before {
content: "¥";
font-weight: 400;
font-size: 27rpx;
vertical-align: baseline;
}
.sku-price view {
font-size: 24rpx;
color: #FFFFFF;
background-color: #D62828;
border-radius: 22rpx;
line-height: 44rpx;
margin-left: 7rpx;
padding: 0 20rpx;
}
.sku-name {
font-size: 27rpx;
color: #666666;
}
.sku-names {
display: flex;
font-size: 29rpx;
color: #333;
margin: 0 40rpx;
text-align: center;
flex-wrap: wrap;
margin-bottom: 20rpx;
}
.sku-name-item {
background: #EFEFEF;
border: 1rpx solid #EFEFEF;
width: 318rpx;
line-height: 77rpx;
border-radius: 14rpx;
margin-bottom: 25rpx;
margin-right: 30rpx;
}
.sku-name-item:nth-child(2n) {
margin-right: 0;
}
.sku-name-item.active {
color: #0B898E;
border-color: #0B898E;
background: rgba(11, 137, 142, 0.1);
}
.number-box {
display: flex;
align-items: center;
border-top: 1rpx solid #ccc;
justify-content: space-between;
margin: 0 40rpx;
padding: 40rpx 0;
}
.number-box text {
flex: 1;
font-size: 29rpx;
color: #333;
}
.number-box view {
border: 1rpx solid #666;
border-radius: 7rpx;
text-align: center;
width: 67rpx;
line-height: 67rpx;
font-size: 33rpx;
color: #000;
}
.number-box view.disable {
border-color: #ccc;
color: #999;
}
.number-box view.number {
width: 94rpx;
margin: 0 15rpx;
}
.btn-box {
height: 138rpx;
background: #FFFFFF;
box-shadow: 0px 0px 16rpx 0px rgba(6, 0, 1, 0.1);
display: flex;
align-items: center;
justify-content: center;
position: fixed;
left: 0;
right: 0;
bottom: 0;
}
.mask-btn {
width: 670rpx;
line-height: 78rpx;
background: #D62828;
border-radius: 39rpx;
color: #fff;
text-align: center;
font-size: 33rpx;
font-weight: 500;
}
.mask-btn.disable {
background: #ccc;
}
.flex {
display: flex;
justify-content: space-between;
align-items: center;
}
.all {
font-family: PingFang SC;
font-weight: bold;
font-size: 37rpx;
color: #000000;
margin-left: 26rpx;
}
.del-all {
font-family: PingFang SC;
font-weight: bold;
font-size: 27rpx;
color: #999999;
margin-left: 7.33rpx;
}
.gwc-item {
display: flex;
align-items: center;
margin-bottom: 48rpx;
}
.main {
height: 179rpx;
padding: 8.67rpx 0 6.67rpx;
width: 425rpx;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.main .title {
font-family: PingFang SC;
font-weight: bold;
font-size: 31rpx;
color: #2C2C2C;
margin-bottom: 18rpx;
}
.main .sku-title {
font-family: PingFang SC;
font-weight: 500;
font-size: 27rpx;
color: #999999;
}
.main-bottom {
display: flex;
width: 100%;
justify-content: space-between;
}
.num-box {
display: flex;
}
.reduce, .grow {
width: 49rpx;
height: 49rpx;
}
.main-bottom .price {
font-family: PingFangSC;
font-size: 35rpx;
color: #F84A56;
}
.main-bottom .price::before {
content: "¥";
font-size: 24rpx;
font-weight: 500;
}
.hot-list {
padding: 26.67rpx;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.hot-item {
margin-bottom: 20rpx;
width: 337rpx;
height: 513rpx;
background: #FFFFFF;
box-shadow: 0rpx 0rpx 9rpx 0rpx rgba(153,153,153,0.33);
border-radius: 13rpx;
}
.hot-item-img {
width: 337rpx;
height: 337rpx;
background: #0B898E;
border-radius: 13rpx;
}
.hot-item-title {
font-family: PingFang SC;
font-weight: 500;
font-size: 27rpx;
color: #000000;
/* margin-bottom: 25.33rpx; */
}
.hot-item-price {
font-family: Arial;
font-weight: bold;
font-size: 33rpx;
color: #D70000;
margin-right: 12.67rpx;
}
.hot-item-price::before {
content: "¥";
font-weight: 400;
font-size: 23rpx;
}
.hot-item-market_price {
font-family: Arial;
font-weight: 400;
font-size: 21rpx;
color: #999999;
text-decoration-line: line-through;
}
.hot-item-main {
padding: 20rpx 19rpx 26.67rpx 20rpx;
display: flex;
flex-direction: column;
min-height: 140rpx;
justify-content: space-between;
}
.hot-list-item:nth-child(2) .hot-item:first-child {
width: 337rpx;
height: 373rpx;
background: #FFFFFF;
box-shadow: 0rpx 0rpx 9rpx 0rpx rgba(153,153,153,0.33);
border-radius: 13rpx;
padding-bottom: 20rpx;
}
.hot-list-item:nth-child(2) .hot-item:first-child .hot-item-img{
width: 337rpx;
height: 238rpx;
background: #71B580;
border-radius: 13rpx;
}
.hot-list-item:nth-child(2) .hot-item:first-child .main{
width: 337rpx;
height: 238rpx;
background: #71B580;
border-radius: 13rpx;
}
.hot-list-item:nth-child(2) .hot-item:first-child .hot-item-main {
padding: 5rpx 19rpx 26.67rpx 15rpx;
display: flex;
flex-direction: column;
min-height: 90rpx;
justify-content: space-between;
}
.hot-list-item:nth-child(2) .hot-item:first-child .hot-item-main .hot-item-title {
margin-bottom: 20rpx;
}
.nav-box {
width: 377rpx;
height: 53rpx;
background: #E5F3F3;
border-radius: 13rpx;
display: flex;
justify-content: space-around;
}
.styleBtn-seld {
width: 187rpx;
height: 48rpx;
background: #0B898E;
border-radius: 11rpx;
display: flex;
align-items: center;
font-family: PingFang SC;
font-weight: 500;
font-size: 24rpx;
color: #E5F3F3;
justify-content: center;
}
.style-icon {
width:29rpx;
height:29rpx;
flex-shrink: 0;
margin-right: 12.67rpx;
}
.styleBtn {
width: 187rpx;
height: 48rpx;
display: flex;
align-items: center;
font-family: PingFang SC;
font-weight: 500;
font-size: 24rpx;
color: #0B898E;
justify-content: center;
}
.hot-list-item {
width: 337rpx;
}

404
subPackages/techanCart/index.js

@ -0,0 +1,404 @@
// pages/user/cartlist/list.js
const device = wx.getSystemInfoSync(),
rect = wx.getMenuButtonBoundingClientRect(); // 获取设备信息
const ratio = 750 / device.windowWidth;
console.log(rect)
const width = device.windowWidth // 示例为一个与屏幕等宽的正方形裁剪框
let height = device.windowHeight;
import commonApi from "../../utils/https/common"
import util from '../../utils/util'
let app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
menuWidth: width - rect.right + rect.width + 6,
list: [],
allChecked: false,
allPrice: 0,
productType: '',
manageFlag: false,
flag: false, //判断订单是否同时有商品和票
isCar: 'single', //判断是否购物车
showQrCode: false,
wxqrcode: null,
showModel:false
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
wx.removeStorageSync('linkMan')
this.getList();
},
manage: function () {
let list = this.data.list;
list.map(item => {
item.checked = 0;
})
this.setData({
manageFlag: !this.data.manageFlag,
allChecked: 0,
list: list,
allPrice: 0
})
},
gotoDetail: function (e) {
console.log(e)
let item = e.currentTarget.dataset.item.product;
util.gotoDetail(item, 1);
},
getList: function () {
commonApi.user_post("cart/get_list", {
// type: '1'
}).then(res => {
this.setData({
list: res.data
})
})
},
minus: function (e) {
let index = e.currentTarget.dataset.index,
list = this.data.list;
let num = list[index].num;
if (num <= 1) return;
num = num - 1;
list[index].num = num;
this.setData({
list: list
})
this.changeNumber(list[index])
this.updatePrice()
},
add: function (e) {
let index = e.currentTarget.dataset.index,
list = this.data.list;
let num = list[index].num + 1;
list[index].num = num;
this.setData({
list: list
})
this.changeNumber(list[index])
this.updatePrice()
},
select: function (e) {
let index = e.currentTarget.dataset.index,
list = this.data.list;
if (list[index].product.flag != 1 || list[index].sku.flag != 'on') {
if (!this.data.manageFlag) {
wx.showToast({
title: '产品已下架',
icon: 'none'
})
return;
}
}
list[index].checked = list[index].checked ? false : true;
this.setData({
list: list
})
let flag = true
list.forEach(item => {
if (!item.checked) {
flag = false
return
}
});
this.setData({
allChecked: flag
})
this.updatePrice()
},
selectAll: function () {
let list = this.data.list,
allChecked = this.data.allChecked ? false : true;
list.map(item => {
if (item.sku.flag == 'on' && item.product.flag == 1) {
item.checked = allChecked;
}
})
this.setData({
allChecked: allChecked,
list: list
})
this.updatePrice()
},
changeNumber(item) {
commonApi.user_post("cart/update_sku", {
sku_id: item.sku.id,
num: item.num
}).then(res => { })
},
updatePrice: function () {
let list = this.data.list,
price = 0;
list.map(item => {
if (item.checked) {
price = price + item.sku.price * item.num;
}
})
this.setData({
allPrice: price
})
},
order: function () {
commonApi.user_post('wx/get_user_keep', {
jumpurl: '/pages/user/cartlist/list',
title: '购物车',
type: 'mini'
}).then(res => {
if (res.data.subscribe == 0) {
this.setData({
wxqrcode: res.data.qrcode,
showQrCode: true
})
} else {
app.globalData.couponInfo = null;
util.pagePoint({
event: 'cart_order'
}, 1)
let list = this.data.list,
price = 0,
product = [],
product1 = []
list.map(item => {
if (item.checked) {
// item.product.type="post";
if (item.product.type == 'post') {
product.push({
product: item.product,
sku: item.sku,
productNum: item.num
})
} else {
product1.push(item)
app.globalData.list = product1
}
if (item.product.type.includes('post')) {
this.data.productType = 'post'
}
}
})
if (product.length == 0 && product1.length == 0) {
wx.showToast({
title: '请先选择产品',
icon: 'none'
})
return;
}
if (product.length > 0 && product1.length > 0) {
this.setData({
flag: 'mix',
isCar: 'multiple'
})
}
if (product1.length > 1) {
this.setData({
isCar: 'multiple'
})
} else {
this.setData({
isCar: 'single'
})
}
console.log(product1);
app.globalData.postProduct = product;
if (app.globalData.list) {
app.globalData.product = app.globalData.list[app.globalData.index]
}
if (this.data.productType == 'post') {
console.log(this.data.flag);
wx.navigateTo({
url: '/pages/order/postOrder/index?from=cart&flag=' + this.data.flag,
})
} else {
wx.navigateTo({
url: '/pages/order/scene/index?isCar=' + this.data.isCar,
})
}
}
})
},
checkOrder(){
console.log(this.data.list);
let list = this.data.list,product = []
list.map(item => {
if (item.checked) {
product.push(item)
}
})
if (product.length>1) {
this.setData({
showModel:true
})
}else{
this.order()
}
},
closeModel(){
this.setData({
showModel:false
})
},
touchStart(e) { //移动前点击的位置
console.log(e)
// 在开始触摸时将所有startTouchMove设置为flase,对当前的为true
this.data.list.forEach(cart => {
if (cart.isTouchMove) //当istouchMove为true
cart.isTouchMove = false; //其它的对象都为false
})
this.setData({
startX: e.changedTouches[0].clientX,
startY: e.changedTouches[0].clientY,
list: this.data.list
})
},
touchmove(e) { //移动的位置,用于计算用户滑动的弧度向左还是向右,移动了多少,可以确定删除功能的显示和隐藏
let index = e.currentTarget.dataset.index;
// 获取开始的x,y坐标
let startX = this.data.startX,
startY = this.data.startY;
// 获取移动的x,x坐标
let touchMoveX = e.changedTouches[0].clientX,
touchMoveY = e.changedTouches[0].clientY;
// 调用计算角度的方法,获取角度
var angel = this.angel({
X: startX,
Y: startY
}, {
X: touchMoveX,
Y: touchMoveY
})
// 遍历cartArray
this.data.list.forEach((cart, i) => {
cart.isTouchMove = false;
// 滑动角度大于30,直接return 视为非滑动意思
if (Math.abs(angel) > 30) return;
// 匹配当前所点击的list和滑动的list
if (i == index) {
// 匹配上后判断滑动方向
if (touchMoveX > startX) { //左滑动隐藏删除
cart.isTouchMove = false;
} else {
cart.isTouchMove = true;
}
}
})
// 更新数据
this.setData({
list: this.data.list
})
},
angel(start, end) { //计算滑动的角度
// console.log(start,end)
// 移动坐标减去对应的开始坐标
var _X = end.X - start.X,
_Y = end.Y - start.Y;
// 返回角度 Math.atan() 返回数字的正切值
return 360 * Math.atan(_Y / _X) / (2 * Math.PI)
},
del: function (e) {
let index = e.currentTarget.dataset.index,
list = this.data.list;
commonApi.user_post("cart/del_sku", {
sku_id: list[index].sku_id
}).then(res => {
if (res.code == 1) {
wx.showToast({
title: '删除成功',
icon: "success"
})
list.splice(index, 1);
this.setData({
list: list
})
}
})
},
delM() {
let that = this
let arr = this.data.list
let suid = []
arr.forEach(item => {
if (item.checked) {
suid.push(item.sku_id)
}
});
let skuids = suid.join(',')
wx.showModal({
title: '提示',
content: '确定要删除选定的产品?',
success: function (res) {
if (res.confirm) {
commonApi.user_post("cart/del_sku", {
sku_id: skuids
}).then(res => {
if (res.code == 1) {
wx.showToast({
title: '删除成功',
icon: "success"
})
that.getList();
}
})
} else {
console.log('取消')
}
}
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
util.pagePoint({
event: 'cart_view'
}, 1)
app.globalData.list = null
app.globalData.createDate = null
app.globalData.index = 0
app.globalData.productPrice = 0
app.globalData.ticketPrice = 0
this.data.productType = ''
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
}
})

6
subPackages/techanCart/index.json

@ -0,0 +1,6 @@
{
"usingComponents": {
"title": "/pages/component/TitleHeader",
"code":"../../pages/order/components/wxqrCode/index"
}
}

65
subPackages/techanCart/index.wxml

@ -0,0 +1,65 @@
<!--pages/user/cartlist/list.wxml-->
<title title="购物车">
<view class="edit-btn" style="right:{{menuWidth}}px" wx:if="{{list.length>0}}" bindtap="manage">{{manageFlag?'关闭':'管理'}}</view>
</title>
<view wx:for="{{list}}" class="goods-item {{item.isTouchMove ? 'touch-move-active' : ''}}" bindtouchstart='touchStart' bindtouchmove='touchmove' data-index="{{index}}">
<view class="item{{(item.product.flag!=1 || item.sku.flag!='on')?' disable':''}}">
<view class="iconfont{{item.checked?' icon-gou':' icon-quan'}}" bindtap="select" data-index="{{index}}"></view>
<image src="{{item.sku.headimg}}" mode="aspectFill" bindtap="gotoDetail" data-item="{{item}}"></image>
<view class="item-info textOver">
<view class="title textOver">{{item.product.title}}</view>
<view class="sku-title textOver">
<view class="sku-name textOver">{{item.sku.sku_name}}</view>
<view class="sku-number">x{{item.num}}</view>
</view>
<view class="item-bottom" wx:if="{{item.product.flag==1 && item.sku.flag=='on'}}">
<view class="price">{{item.sku.price/100}}</view>
<view class="iconfont icon-sami-select" bindtap="minus" data-index="{{index}}"></view>
<view class="number">{{item.num}}</view>
<view class="iconfont icon-add-select" bindtap="add" data-index="{{index}}"></view>
</view>
<view class="item-bottom" wx:else>已下架</view>
</view>
</view>
<view class='del' catchtap="del" data-index="{{index}}">删除</view>
</view>
<view wx:if="{{list.length==0}}" class="common-empty" style="z-index:-1">
<image mode="widthFix" src="https://static.ticket.sz-trip.com/xcxImages/other/nodata.png"></image>
<view>暂无内容</view>
</view>
<view style="height:113rpx"></view>
<view class="fixed-bottom" wx:if="{{list.length>0&&manageFlag===false}}">
<view bindtap="selectAll" class="iconfont{{allChecked?' icon-gou':' icon-quan'}}"><text style="color:#666;font-size:32rpx;flex-shrink:0;margin-left:10rpx;flex:1">全选</text></view>
<view class="tip"> <text style="color:#666;font-size:20rpx;flex-shrink:0;margin-left:10rpx;flex:1">不含运费</text> 合计:</view>
<view class="bottom-price">¥{{allPrice/100}} </view>
<!-- <view style="margin-right: 10rpx; font-size: 29rpx;color: #000;">起</view> -->
<view style="flex:1"></view>
<view class="btn" bindtap="checkOrder">去下单</view>
</view>
<view class="fixed-bottom" wx:if="{{list.length>0&&manageFlag===true}}">
<view class="iconfont{{allChecked?' icon-gou':' icon-quan'}}" bindtap="selectAll"></view>
<text style="color:#666;font-size:26rpx;flex-shrink:0;margin-left:10rpx;flex:1">全选</text>
<view class="fixed-btn del-btn" bindtap="delM">删除</view>
</view>
<code showModel="{{showQrCode}}" qrcode = "{{wxqrcode}}">
</code>
<view class="mask" wx:if="{{showModel}}">
<view class="model">
<view class="model-title">
购买须知
</view>
<view class="model-content">
<view>多产品订单一经购买</view>
<view style="color:rgba(196, 0, 0, 1);margin-top: 10rpx;">不支持部分退改</view>
</view>
<view class="btn-list">
<view class="model-btn" bindtap="closeModel">
取消
</view>
<view class="model-btn" style="color:#0B898E;border-left:#D8D8D8 solid 1rpx;" bindtap="order">
确定
</view>
</view>
</view>
</view>

242
subPackages/techanCart/index.wxss

@ -0,0 +1,242 @@
/* pages/user/cartlist/list.wxss */
.edit-btn {
font-size: 29rpx;
color: #000;
position: absolute;
}
page {
background: #f6f6f6;
}
.item {
display: flex;
padding: 40rpx 20rpx;
justify-content: space-between;
align-items: center;
transition: all 0.4s;
transform: translateX(180rpx);
margin-left: -180rpx;
flex-shrink: 0;
width: 660rpx;
}
.item.disable {
color: #999 !important;
opacity: 0.5;
}
.del {
background-color: #e4393c;
width: 180rpx;
display: flex;
flex-direction: column;
align-items: center;
height: 260rpx;
justify-content: center;
color: #fff;
transform: translateX(180rpx);
transition: all 0.4s;
flex-shrink: 0;
opacity: 0;
margin-left: 30rpx;
text-align: center;
}
.goods-item {
display: flex;
align-items: center;
justify-content: space-between;
margin: 30rpx 25rpx;
background: white;
border-radius: 10rpx;
overflow: hidden;
}
.touch-move-active .del,.touch-move-active .item {
-webkit-transform: translateX(0);
transform: translateX(0);
opacity: 1;
}
.icon-gou,.icon-quan {
color: #999999;
flex-shrink: 0;
font-size: 40rpx;
}
.item image {
margin: 0 25rpx;
flex-shrink: 0;
width: 173rpx;
height: 173rpx;
border-radius: 7rpx;
}
.item-info {
flex: 1;
}
.item-info .title {
font-size: 31rpx;
font-weight: 500;
color: #000;
}
.item-info .sku-title {
display: flex;
justify-content: space-between;
align-items: center;
color: #666;
font-size: 27rpx;
margin-top: 10rpx;
margin-bottom: 20rpx;
}
.item-bottom {
display: flex;
justify-content: space-between;
align-items: flex-end;
}
.item-bottom .price {
color: #D62828;
font-size: 40rpx;
font-weight: 500;
flex: 1;
margin-right: 10rpx;
}
.item-bottom .price::before {
content: "¥";
font-size: 27rpx;
font-weight: 400;
}
.item-bottom .iconfont {
flex-shrink: 0;
font-size: 32rpx;
line-height: 50rpx;
}
.item-bottom .number {
flex-shrink: 0;
width: 67rpx;
line-height: 50rpx;
background: #F0F0F0;
border-radius: 7rpx;
text-align: center;
margin: 0 20rpx;
}
.fixed-bottom {
position: fixed;
left: 0;
right: 0;
height: 113rpx;
background: #FFFFFF;
box-shadow: 0px 0px 16rpx 0px rgba(6, 0, 1, 0.1);
bottom: 0;
display: flex;
justify-content: space-between;
align-items: center;
font-size: 27rpx;
color: #999;
padding-left: 40rpx;
}
.fixed-bottom .tip {
font-size: 29rpx;
color: #000;
font-weight: 500;
margin-left: 20rpx;
flex-shrink: 0;
}
.bottom-price {
color: #D62828;
font-size: 36rpx;
font-weight: 500;
flex-shrink: 0;
margin-right: 20rpx;
}
.fixed-bottom .btn {
width: 267rpx;
line-height: 113rpx;
text-align: center;
background: #D62828;
color: #fff;
font-size: 36rpx;
flex-shrink: 0;
font-weight: 500;
}
.fixed-bottom .iconfont {
font-size: 42rpx;
}
.icon-gou {
color: #D62828;
}
.fixed-btn {
width: 202rpx;
line-height: 84rpx;
background: #FB6E4D;
border-radius: 42rpx;
font-size: 36rpx;
font-weight: 500;
color: #fff;
text-align: center;
}
.del-btn {
box-sizing: border-box;
border: 1rpx solid #FB6E4D;
color: #FB6E4D;
background: white;
margin-right:40rpx ;
}
.mask {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(0, 0, 0, 0.5);
z-index: 999;
}
.model{
width: 561rpx;
min-height: 449rpx;
background: #FFFFFF;
border-radius: 13rpx;
position: absolute;
box-sizing: border-box;
}
.model-title{
text-align: center;
font-size: 34rpx;
font-family: PingFang SC;
font-weight: bold;
color: #333333;
margin-top: 32rpx;
box-sizing: border-box;
}
.model-content{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
flex-wrap: wrap;
margin-top: 100rpx;
font-size: 34rpx;
font-family: PingFang SC;
font-weight: 500;
color: #333333;
}
.btn-list{
height: 106rpx;
width: 100%;
position: absolute;
bottom: 0;
border-top: 1rpx solid rgba(216, 216, 216, .99);
padding: 10rpx;
box-sizing: border-box;
display: flex;
justify-content: space-between;
align-items: center;
}
.model-btn{
width: 50%;
text-align: center;
height: 86rpx;
line-height: 86rpx;
font-size: 34rpx;
font-family: PingFang SC;
font-weight: 500;
color: #333333;
}

690
subPackages/techanNew/index.js

@ -0,0 +1,690 @@
// pages/list/store/index.js
// import commonApi from "../../../utils/https/common"
// import util from "../../../utils/util"
import commonApi from "../../utils/https/common"
import util from "../../utils/util"
let app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
list:[], //获取的产品列表
total:1, //总数
keywords:"", //搜索关键字
navIndex:0, //一级分类选中下标
navList:[
{
type:'20',
title:'特产'
},
{
type:'19',
title:'文创'
}
], //产品 一级分类:特产、文创
navList2:[
{
type:'3',
title:'特产'
},
{
type:'2',
title:'文创'
}
], //按商户 一级分类:特产、文创
flag:true, //切换样式,true按分类,false按店铺展示
typeList:[], //左侧的二级分类
typeIndex:0, //二级分类选中下标
id:'1',
cartCount:0,
skuFlag:null, //规格弹窗
info: null, //规格信息
skuIndex: 0, //默认选中第一个规格
producNum: 1,
showPopup:false, //购物车的弹窗
gwcList:[], //gwc里的产品数据
allSelectedBtn:false, //全选按钮
seachFlag:false, //搜索模式
totalPrice:0, //获取购物车总价--打开购物车后勾选的产品价格
name:'文创特产'
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
wx.showShareMenu({
withShareTicket: true,
menus: ['shareAppMessage', 'shareTimeline']
})
this.getCount()
this.getType()
},
BroswerRecord: function () {
setTimeout(() => {
if (app.globalData.uuid) {
commonApi._post('browse/browse_record', {
type: "goods",
title: this.data.info.title,
drive: "mini",
source_id: this.data.info.id,
url: "/pages/info/postProductInfo/index?id=" + this.data.info.id,
uuid: app.globalData.uuid
}).then(res => {})
} else {
this.BroswerRecord();
}
}, 500)
},
// 清空
delAll() {
let ids = []
this.data.gwcList.forEach(item => {
ids.push(item.sku_id)
})
commonApi.user_post("cart_within/del_sku", {
sku_id: ids+'',
type:'1'
}).then(res => {
if (res.code == 1) {
wx.showToast({
title: '清空成功',
icon: "success"
})
this.getCount()
}
})
},
// 减少一个
del(e) {
let item = e.currentTarget.dataset.item
let gwcList = this.data.gwcList
commonApi.user_post("cart_within/update_sku", {
num:item.num-1,
sku_id: item.sku_id,
type:'1'
}).then(res => {
if (res.code == 1) {
// this.getCount()
commonApi.user_post('cart_within/get_list', {
type:'1'
}).then(res => {
let arr = res.data,totalPrice = 0,cartCount=0
if (res.data.length>0) {
res.data.forEach(item=> {
// totalPrice += item.num*item.sku.price
cartCount += item.num
gwcList.forEach(el=> {
if (el.id == item.id) {
item.selected = el.selected
}
})
})
res.data.forEach(item=> {
if (item.selected ==1) {
totalPrice += item.num*item.sku.price
}
})
}
let status = res.data.every(el => el.selected === 1)
this.setData({
cartCount: cartCount, //1
gwcList:res.data,
allSelectedBtn:status?true:false,
totalPrice
})
})
}
})
},
// 添加产品到购物车
addCart: function (e) {
let item = e.currentTarget.dataset.item
app.globalData.postProduct = []
app.globalData.list = []
commonApi.user_post("/product/checkStock", {
sku_id: this.data.showPopup ? item.sku.id : this.data.info.sku[this.data.skuIndex].id,
}).then(res => {
if (res && res.code != 1) {
return;
} else {
commonApi.user_post("cart_within/add_sku", {
sku_id: this.data.showPopup ? item.sku.id :this.data.info.sku[this.data.skuIndex].id,
num: this.data.producNum,
type:"1"
}).then(res => {
if (res.code == 1) {
commonApi.user_post('cart_within/get_list', {
type:'1'
}).then(res => {
let cartCount = 0,totalPrice = 0,gwcList=this.data.gwcList
res.data.forEach(val=> {
cartCount+=val.num
console.log(this.data.skuFlag);
// debugger
if (!this.data.skuFlag && !this.data.showPopup) {
// debugger
if (val.sku.id == this.data.info.sku[this.data.skuIndex].id) {
val.selected = 1
}
}else {
// debugger
gwcList.forEach(el=> {
if (el.id == val.id) {
val.selected = el.selected
}
})
}
// if (this.data.showPopup) {
// totalPrice += Number(val.num*val.sku.price)
// gwcList.forEach(el=> {
// if (el.id == val.id) {
// val.selected = el.selected
// }
// })
// }
})
res.data.forEach(element=> {
if (element.selected == 1) {
totalPrice += Number(element.num*element.sku.price)
}
})
console.log(res.data);
let status = res.data.every(el => el.selected === 1)
this.setData({
cartCount: cartCount,
totalPrice,
producNum:1,
gwcList:res.data,
allSelectedBtn:status?true:false,
})
})
// 加动效
this.setData({
skuFlag: null,
aniSkuIndex: this.data.skuIndex,
cartImgInfo: null
})
setTimeout(() => {
this.setData({
aniSkuIndex: -1
})
// wx.showModal({
// title: "提示",
// content: "去购物车结算?",
// success: function (res) {
// if (res.confirm) {
// wx.navigateTo({
// url: '/pages/user/cartlist/list',
// })
// }
// }
// })
}, 650)
}
})
}
})
},
// 去结算
order: function () {
commonApi.user_post('wx/get_user_keep', {
jumpurl: '/pages/user/cartlist/list',
title: '购物车',
type: 'mini'
}).then(res => {
if (res.data.subscribe == 0) {
this.setData({
wxqrcode: res.data.qrcode,
showQrCode: true
})
} else {
app.globalData.couponInfo = null;
util.pagePoint({
event: 'cart_order'
}, 1)
let list = this.data.gwcList,
price = 0,
product = [],
product1 = []
list.map(item => {
if (item.selected == 1) {
// item.product.type="post";
if (item.product.type == 'post') {
product.push({
product: item.product,
sku: item.sku,
productNum: item.num
})
} else {
product1.push(item)
app.globalData.list = product1
}
if (item.product.type.includes('post')) {
this.data.productType = 'post'
}
}
})
if (product.length == 0 && product1.length == 0) {
wx.showToast({
title: '请先选择产品',
icon: 'none'
})
return;
}
if (product.length > 0 && product1.length > 0) {
this.setData({
flag: 'mix',
isCar: 'multiple'
})
}
if (product1.length > 1) {
this.setData({
isCar: 'multiple'
})
} else {
this.setData({
isCar: 'single'
})
}
console.log(product1);
app.globalData.postProduct = product;
if (app.globalData.list) {
app.globalData.product = app.globalData.list[app.globalData.index]
}
wx.navigateTo({
url: '/pages/order/postOrder/index?from=cart&flag=' + this.data.flag,
})
}
})
},
// 全选
allSelected() {
let gwcList = this.data.gwcList
let totalPrice = 0
if (this.data.allSelectedBtn) {
gwcList.forEach(item=> {
item.selected =0
})
} else {
gwcList.forEach(item=> {
item.selected =1
})
gwcList.forEach(item=> {
totalPrice += Number(item.num*item.sku.price)
})
}
this.setData({
gwcList,
allSelectedBtn:!this.data.allSelectedBtn,
totalPrice
})
},
// 单选一个
selectedIt(e) {
let item = e.currentTarget.dataset.item,gwcList= this.data.gwcList,totalPrice=0
gwcList.forEach(el=> {
if (el.id == item.id) {
el.selected == 1 ? el.selected =0 : el.selected = 1
}
})
gwcList.forEach(el=> {
if (el.selected == 1) {
totalPrice += Number(el.num*el.sku.price)
}
})
let status = gwcList.every(el => el.selected === 1)
this.setData({
gwcList,
allSelectedBtn:status?true:false,
totalPrice
})
},
// 左侧购物车打开弹窗
openPopup() {
// this.getCount()
let gwcList = this.data.gwcList
let status = gwcList.every(el => el.selected === 1)
this.setData({
showPopup:!this.data.showPopup,
allSelectedBtn:status?true:false,
})
},
// 获取商户标签列表
getSupplierTag() {
let list = this.data.list;
if(list.length>=this.data.total) return;
commonApi.user_post('supplier/get_supplier_by_title_tag_id', {
tag_id:this.data.navList2[this.data.navIndex].type, //标签的ID
offset:list.length, //起始查询
limit:10, //查询数量
title:this.data.keywords //搜索产品名称
}).then(res => {
res.data.list.map(item=>{
item.display_tags = item.display_tags?item.display_tags.split(","):[];
item.display_tags = item.display_tags.splice(0,2);
})
this.setData({
list:list.concat(res.data.list),
total:res.data.total
})
})
},
// 获取左侧二级分类
getType() {
commonApi._post("product/tag_list",{
pid:this.data.flag?this.data.navList[this.data.navIndex].type:this.data.navList2[this.data.navIndex].type, //父标签的ID
}).then(res=>{
this.setData({
typeList:res.data
})
this.getList()
})
},
// 获取历史购物车详情
getCount() {
commonApi.user_post('cart_within/get_list', {
type:'1'
}).then(res => {
let arr = res.data,totalPrice = 0,cartCount=0
if (arr.length>0) {
arr.forEach(item=> {
// totalPrice += item.num*item.sku.price
cartCount += item.num
})
}
this.setData({
cartCount: cartCount, //1
gwcList:res.data,
allSelectedBtn:false
})
})
},
// 重置
onReload() {
this.setData({
list:[],
total:1,
navIndex:0,
typeIndex:0,
flag:true
})
this.getList()
},
// 搜索
search:function(e){
if (e.detail.keywords == '') {
this.setData({
seachFlag:false,
keywords:'',
list:[],
total:1
})
this.onReload()
}else {
this.setData({
seachFlag:true,
keywords:e.detail.keywords,
list:[],
total:1
})
this.getList();
}
},
// 去产品详情页
goodsDetail(e){
wx.navigateTo({
url: '/pages/info/postProductInfo/index?id='+e.currentTarget.dataset.goods.id,
})
},
// 去店铺
goShop(e){
let id = e.currentTarget.dataset.id;
util.pagePoint({
event: 'legacy_shop',
param:{
id:id
},
type:'supplier'
},1)
wx.navigateTo({
url: '/pages/list/store/index?id='+id,
})
},
gotoProduct:function(e){
let item = e.currentTarget.dataset.item;
util.gotoDetail(item)
},
// 切换样式
changeStyle() {
this.setData({
navIndex:0,
flag:!this.data.flag,
total:1,
list:[],
typeIndex:0
})
if (this.data.flag) {
this.getType()
}else {
this.getSupplierTag()
}
},
// 切换一级分类
changeNav:function(e){
let index = e.currentTarget.dataset.index,navList=this.data.navList;
this.setData({
typeIndex:0,
navIndex:index,
typeList:[],
type:navList[index].type,
list:[],
total:1
})
if (this.data.flag) {
this.getType()
} else {
this.getSupplierTag()
}
},
// 切换左侧二级分类
changeType(e) {
let index = e.currentTarget.dataset.index,typeList=this.data.typeList;
this.setData({
typeIndex:index,
type:typeList[index].id,
list:[],
total:1
})
this.getList()
},
// 获取产品列表
getList:function(){
let list = this.data.list;
if(list.length>=this.data.total) return;
commonApi._post("product/get_product_by_tag",{
tag_id:this.data.seachFlag? '20,19':this.data.typeList[this.data.typeIndex].id, //标签的ID
offset:list.length, //起始查询
limit: 10, //查询数量
title:this.data.keywords, //搜索产品名称
}).then(res=>{
res.data.list.map(item=>{
item.display_tags = item.display_tags?item.display_tags.split(","):[];
item.display_tags = item.display_tags.splice(0,2);
})
this.setData({
list:list.concat(res.data.list),
total:res.data.total
})
console.log(this.data.list);
})
// commonApi._post("supplier/get_supplier_by_tag_id",{
// tag_id:this.data.flag ? this.data.navList[this.data.navIndex].type :this.data.navList2[this.data.navIndex].type,
// limit:10,
// offset:list.length,
// sort:"weight",
// title:this.data.keywords
// }).then(res=>{
// res.data.list.map(item=>{
// item.display_tags = item.display_tags?item.display_tags.split(","):[];
// item.display_tags = item.display_tags.splice(0,2);
// })
// this.setData({
// list:list.concat(res.data.list),
// total:res.data.total
// })
// })
},
// 添加产品弹窗 1.首先获取到该产品下的规格
addBuyCart(e) {
let item = e.currentTarget.dataset.item
console.log(item);
commonApi._post("product/get_product_detail", {
id: item.id
}).then(res => {
if (item.skuid) {
let sku = res.data.sku.find(skuItem => item.id == skuItem.skuid);
res.data.sku = [sku];
}
res.data.flag = res.data.sku.find(item => item.flag == 'on') ? res.data.flag : 0
this.setData({
info: res.data,
// skuFlag: "cart"
})
this.showCart()
this.BroswerRecord()
})
},
// 添加产品弹窗 2.渲染规格,未登录去登录
showCart: function () {
commonApi.user_post('wx/get_user_keep', {
jumpurl: '/pages/info/postProductInfo/index?id=' + this.data.id,
title: this.data.info.title,
type: 'mini'
}).then(res => {
if (res.data.subscribe == 0) {
this.setData({
wxqrcode: res.data.qrcode,
showQrCode: true
})
} else {
if (this.data.info.sku.length == 0) {
wx.showToast({
title: '该产品未设置规格,不能加购',
icon: 'none'
})
return;
}
this.setData({
skuFlag: "cart"
})
let that = this
wx.createSelectorQuery().select('#skuImg').boundingClientRect(function (res) {
console.log(res)
that.setData({
cartImgInfo: 'top:' + res.top + 'px;left:' + res.left + 'px;'
})
}).exec()
}
this.getCount()
})
},
// 规格弹窗切换其他规格
selectSku: function (e) {
let index = e.currentTarget.dataset.index;
this.setData({
skuIndex: index
})
},
// 关闭弹窗
hideSku: function () {
this.setData({
skuFlag: null,
cartImgInfo: null
})
},
// 减少数量
minus: function () {
if (this.data.producNum == 1) return;
this.setData({
producNum: this.data.producNum - 1
})
},
// 加数量
add: function () {
this.setData({
producNum: this.data.producNum + 1
})
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
// this.onReload()
// this.setData({
// seachFlag:false
// // list:[],
// // total:1,
// // navIndex:0,
// // typeIndex:0,
// // flag:true
// })
// this.getList()
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
if (this.data.flag) {
this.getList()
} else {
this.getSupplierTag()
}
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
},
onShareTimeline: function() {
return {
title: '君到苏州-文创特产',
query: '',
imageUrl: 'https://static.ticket.sz-trip.com/xcxImages/index/icon5New.png'
}
}
})

7
subPackages/techanNew/index.json

@ -0,0 +1,7 @@
{
"usingComponents": {
"title":"/pages/component/TitleHeader",
"common-image":"/pages/component/commonImage/index",
"search":"/pages/component/SearchHeader"
}
}

213
subPackages/techanNew/index.wxml

@ -0,0 +1,213 @@
<!--pages/feiyi/list/index.wxml-->
<!-- 文创特产页面 -->
<view class="techanMain">
<view style="{{seachFlag?'':'height: 500rpx;'}}">
<search bind:onload="search" name="{{name}}"></search>
<image wx:if="{{!seachFlag}}" class="heaimg" src="https://static.ticket.sz-trip.com/uploads/20240710/a39dd5504c4baa66dd239153d2d20787.png" mode="widthFix"></image>
</view>
<view wx:if="{{!seachFlag}}" class="techan-centent">
<!-- 切换分类 以及 切换样式 -->
<view class="type-box">
<view style="display: flex;">
<view wx:for="{{flag?navList:navList2}}" wx:key="*this" bindtap="changeNav" data-index="{{index}}" class="{{index == navIndex ? 'seld-nav':'nav'}}">{{item.title}}</view>
</view>
<!-- 店铺--产品 切换 -->
<image bindtap="changeStyle" class="changeStyle" src="https://static.ticket.sz-trip.com/uploads/20240710/62bb38d5f88754e57447a26b14176aa2.png" mode="" />
</view>
<!-- 产品部分 -->
<view wx:if="{{flag}}" style="flex: 1; display: flex; overflow: hidden;">
<!-- <view style="display: flex; pa/dding-bottom: 167rpx;"> -->
<!-- 左侧二级分类 -->
<view class="left">
<scroll-view scroll-y="true" style="height: 100%" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll">
<view wx:for="{{typeList}}" wx:key="*this" class="{{index == typeIndex ? 'seld-type':'type-two-box'}}" bindtap="changeType" data-index="{{index}}">
<view class="line" wx:if="{{index == typeIndex}}"></view>
<view>
{{item.name}}
</view>
</view>
</scroll-view>
</view>
<!-- 右侧产品列表 -->
<view class="list" style="width: 100%;">
<scroll-view scroll-y="true" style="height: 100%" bindscrolltoupper="upper" bindscrolltolower="lower" bindscroll="scroll">
<view class="item" wx:for="{{list}}" wx:key="*this" bindtap="goodsDetail" data-goods="{{item}}">
<image class="img" src="{{item.headimg}}" mode="" />
<view class="content">
<view class="title">
{{item.title}}
</view>
<view class="item-bottom">
<view class="price">
<text class="current-price">{{item.price/100}}</text>
<text class="original-price">¥{{item.market_price/100}}</text>
</view>
<view class="add" catchtap="addBuyCart" data-item="{{item}}">+</view>
</view>
</view>
</view>
</scroll-view>
</view>
<!-- </view> -->
</view>
<!-- 店铺展示 -->
<view wx:else style="padding: 0 26.67rpx; overflow: hidden;">
<scroll-view scroll-y="true" style="height: 100%" bindscrolltoupper="upper" bindscrolltolower="getSupplierTag" bindscroll="scroll">
<view wx:for="{{list}}" class="list1" wx:key="*this">
<view class="top-info" bindtap="goShop" data-id="{{item.id}}">
<common-image mode="aspectFill" src="{{item.headimg}}" style="border-radius: 13rpx;"></common-image>
<view class="supplier-info">
<view class="supplier-name textOver">{{item.shop_name}}</view>
<view class="mid-box">
<view class="supplier-tags">
<view class="supplier-tag textOver" wx:for="{{item.display_tags}}">{{item}}</view>
</view>
<view class="supplier-price"><text>¥</text><text>{{(item.start_price/100)}}</text><text>起</text></view>
</view>
<view class="bottom-box">
<view class="supplier-address supplier-tags"><text class="iconfont icon-location"></text><text style="max-width: 300rpx;" class="textOver">{{item.address}}</text></view>
<view class="btn">
进店看看
</view>
</view>
</view>
</view>
<view class="product-list">
<view data-item="{{item}}" bindtap="goodsDetail" data-goods="{{item}}" class="product-item" wx:for="{{item.product}}" wx:key="*this">
<image src="{{item.headimg}}" mode="aspectFill"></image>
<view class="product-title textOver2">{{item.title}}</view>
<view class="supplier-price"><text>¥</text><text style="font-size:32rpx">{{(item.price/100)}}</text><text class="market_price" wx:if="{{item.market_price && item.market_price!=0 && item.market_price>item.price}}">{{item.market_price/100}}</text></view>
</view>
</view>
</view>
</scroll-view>
</view>
</view>
<!-- 搜索到的产品列表 -->
<view wx:if="{{seachFlag}}" style="overflow-y: scroll;padding-bottom: 70rpx;">
<view class="hot-list" wx:if="{{list.length>0}}">
<view class="hot-list-item" wx:for="{{2}}" wx:for-index="number" wx:key="this">
<view class="hot-item" wx:if="{{index%2==number}}" wx:for="{{list}}" bindtap="goodsDetail" data-goods="{{item}}" wx:key="id">
<image class="hot-item-img" src="{{item.headimg}}" mode="" />
<view class="hot-item-main">
<view class="hot-item-title textOver2">
{{item.title}}
</view>
<view style="display: flex;justify-content: space-between;align-items: center; ">
<view>
<text class="hot-item-price">{{item.price/100}}</text>
<text class="hot-item-market_price">{{item.market_price/100}}</text>
</view>
<image class="add" catchtap="addBuyCart" data-item="{{item}}" src="https://static.ticket.sz-trip.com/uploads/20240715/3ad59eac0088d47ff4bc2fec6ffd8f56.png" mode="" />
</view>
</view>
</view>
</view>
</view>
<view wx:else style="display: flex;flex-direction: column;align-items: center;">
<image style="width:328rpx;height:450.67rpx;margin-top: 286.67rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/3750a41a89b49e9f546a6ba85d71d66e.png" mode="" />
<view style="font-family: PingFang SC;font-weight: 500;font-size: 28rpx;color: #666666;margin-top: 67rpx;">
暂无搜索结果
</view>
</view>
</view>
<!-- 底部购物车 -->
<view style="width:100%;height:167rpx;" wx:if="{{flag}}">
</view>
<view class="bottom" wx:if="{{(flag &&skuFlag != 'cart') || showPopup}}">
<!-- 左边购物车图标及价格 -->
<view class="gwc-left">
<view class="gwc" bindtap="openPopup">
<image wx:if="{{cartCount == 0}}" style="width: 100%;height: 100%;" src="https://static.ticket.sz-trip.com/uploads/20240715/520600afc4bd32ed1f44bc5985fc2ba5.png" mode="" />
<image wx:else style="width: 100%;height: 100%;" src="https://static.ticket.sz-trip.com/uploads/20240711/f9c290c64c521feae643d28f1b8c9c60.png" mode="" />
<view class="cartCount">{{cartCount}}</view>
</view>
<view style="font-weight: 500;font-size: 27rpx;color: #000000;">
总计:<text class="money">{{totalPrice/100}}</text>
</view>
<!-- <view style="margin-left: 16.67rpx;font-family: PingFang SC;font-weight: 500;font-size: 27rpx;color: #0B898E;" bindtap="openPopup">
<text>明细</text>
<image wx:if="{{showPopup}}" style="width:17.33rpx;height:17.33rpx;margin-left: 10rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/524acef87f09269f6a4fa39d0fa38c18.png" mode="" />
<image wx:else style="width:17.33rpx;height:17.33rpx;margin-left: 10rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/080e94053d1444707d18860a73b17915.png" mode="" />
</view> -->
</view>
<!-- 去结算按钮 -->
<view class="{{cartCount == 0?'no-buy':'buy'}}" bindtap="order">去结算</view>
</view>
</view>
<!-- 规格弹窗 -->
<view class="mask" wx:if="{{skuFlag}}">
<view class="mask-bg" bindtap="hideSku" style="z-index: 9999;"></view>
<view class="mask-content" style="z-index: 99999;">
<view class="iconfont icon-close" bindtap="hideSku"></view>
<view class="sku-info-box">
<image id="skuImg" src="{{info.sku[skuIndex].headimg}}" mode="aspectFill"></image>
<view class="sku-info">
<view class="sku-price">{{info.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.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.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="addCart" wx:if="{{info.sku[skuIndex].flag=='on'}}">{{skuFlag=='cart'?'加入购物车':'立即购买'}}
</view> -->
<view class="mask-btn" bindtap="addCart" wx:if="{{info.sku[skuIndex].flag=='on'}}">加入购物车</view>
<view class="mask-btn disable" wx:else>该商品已下架</view>
</view>
</view>
</view>
<!-- 购物车的弹窗 -->
<view class="mask" wx:if="{{showPopup}}">
<view bindtap="openPopup" class="mask-bg"></view>
<view class="mask-content" style="padding: 40rpx 0 180rpx;min-height: 600rpx;">
<view style="margin: 0 26.67rpx;">
<!-- 顶部操作按钮 -->
<view class="flex" style="margin-bottom: 56.67rpx;">
<view class="flex">
<image bindtap="allSelected" wx:if="{{allSelectedBtn}}" style="width: 40rpx;height: 40rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/a961604bc708670cbdc76d1580eb3f3c.png" mode="" />
<view bindtap="allSelected" wx:else style="width: 40rpx;height: 40rpx;border-radius: 50%;border: 1px solid #999999;"></view>
<text class="all">全选</text>
</view>
<view class="flex" bindtap="delAll">
<image style="width:26.67rpx;height:26.67rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/3320fbf5ccf471145c3c600582cd9b65.png" mode="" />
<text class="del-all">清空</text>
</view>
</view>
<view class="gwc-item" wx:for="{{gwcList}}" wx:key="*this" bindtap="selectedIt" data-item="{{item}}">
<view style="margin-right: 26.67rpx;">
<image wx:if="{{item.selected ==1}}" style="width: 43rpx;height: 43rpx;" src="https://static.ticket.sz-trip.com/uploads/20240715/a961604bc708670cbdc76d1580eb3f3c.png" mode="" />
<view wx:else style="width: 40rpx;height: 40rpx;border-radius: 50%;border: 1px solid #999999;"></view>
</view>
<image style="width:179rpx;height: 179rpx;border-radius: 13rpx;flex-shrink: 0;margin-right: 26rpx;" src="{{item.sku.headimg}}" mode="" />
<view class="main">
<view>
<view class="title">{{item.product.title}}</view>
<view class="sku-title">{{item.sku.sku_name}}</view>
</view>
<view class="main-bottom">
<view class="price">{{item.sku.price/100}}</view>
<view class="num-box">
<image class="reduce" catchtap="del" data-item="{{item}}" src="https://static.ticket.sz-trip.com/uploads/20240715/054627e5d3864a9a4a8b397cae47754e.png" mode="" />
<view style="margin: 0 25.33rpx;">{{item.num}}</view>
<image class="grow" catchtap="addCart" data-item="{{item}}" src="https://static.ticket.sz-trip.com/uploads/20240715/3ad59eac0088d47ff4bc2fec6ffd8f56.png" mode="" />
</view>
</view>
</view>
</view>
</view>
</view>
</view>

685
subPackages/techanNew/index.wxss

@ -0,0 +1,685 @@
/* pages/feiyi/list/index.wxss */
.techanMain {
height: 100%;
display: flex;
flex-direction: column;
overflow:hidden;
}
.heaimg {
display: block;
width: 100%;
}
.techan-centent {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
/* height: 500rpx; */
}
page {
/* background: #FFD99E; */
/* padding-bottom: 170rpx; */
height: 100%;
display: flex;
flex-direction: column;
overflow:hidden;
}
.changeStyle {
width: 40rpx;
height: 40rpx;
}
.type-box {
padding: 33.33rpx 26.67rpx 26.67rpx;
display: flex;
justify-content: space-between;
align-items: center;
}
.nav {
width: 145rpx;
height: 53rpx;
border-radius: 8rpx;
border: 1px solid #0B898E;
font-family: PingFang SC;
font-weight: 500;
font-size: 27rpx;
color: #0B898E;
text-align: center;
line-height: 53rpx;
margin-right: 12.67rpx;
}
.seld-nav {
width: 145rpx;
height: 57rpx;
background: #0B898E;
border-radius: 8rpx;
font-family: PingFang SC;
font-weight: bold;
font-size: 27rpx;
color: #FFFFFF;
text-align: center;
line-height: 57rpx;
margin-right: 12.67rpx;
}
.left {
width: 200rpx;
/* min-height: 100vh; */
/* min-height: 850rpx; */
height: 100%;
background-color: #F3F3F3;
}
.type-two-box {
width: 200rpx;
height: 107rpx;
text-align: center;
line-height: 107rpx;
font-weight: 500;
font-size: 27rpx;
color: #000000;
}
.seld-type {
background: #fff;
font-weight: bold;
font-size: 27rpx;
color: #000000;
text-align: center;
line-height: 107rpx;
position: relative;
}
.line {
width: 7rpx;
height: 53rpx;
background: #0B898E;
position: absolute;
top: 26.67rpx;
left: 0;
}
.item {
padding: 0 26.67rpx;
display: flex;
margin-bottom: 26.67rpx;
}
.img {
width: 161rpx;
height: 161rpx;
background: #999999;
border-radius: 11rpx;
flex-shrink: 0;
margin-right: 14.67rpx;
}
.content {
display: flex;
flex-direction: column;
justify-content: space-between;
width: 100%;
}
.title {
font-weight: 500;
font-size: 27rpx;
color: #000000;
}
.item-bottom {
display: flex;
justify-content: space-between;
align-items: center;
}
.current-price {
font-weight: bold;
font-size: 33rpx;
color: #D70000;
margin-right: 13.33rpx;
}
.current-price::before {
content: "¥";
font-size: 23rpx;
font-weight: 500;
}
.original-price {
font-weight: 400;
font-size: 21rpx;
color: #999999;
text-decoration-line: line-through;
}
.add {
width: 40rpx;
height: 40rpx;
background: #0B898E;
border-radius: 50%;
text-align: center;
line-height: 40rpx;
font-weight: 500;
font-size: 31rpx;
color: #FFFFFF;
}
.bottom {
position: fixed;
bottom: 0;
left: 0;
right: 0;
height: 167rpx;
background: #FFFFFF;
box-shadow: 0rpx 2rpx 13rpx 0rpx rgba(136,136,136,0.25);
padding: 0 27.33rpx 0 26.67rpx;
display: flex;
justify-content: space-between;
align-items: center;
z-index: 666;
}
.gwc {
margin-right: 14rpx;
width: 84rpx;
height: 84rpx;
position: relative;
}
.cartCount {
width: 40rpx;
height: 40rpx;
background: #D90F01;
border-radius: 50%;
border: 1rpx solid #FFFFFF;
font-family: PingFang SC;
font-weight: 500;
font-size: 27rpx;
color: #FFFFFF;
text-align: center;
line-height: 40rpx;
position: absolute;
right: -10rpx;
top: -10rpx;
}
.gwc-left {
display: flex;
align-items: center;
}
.money {
font-weight: bold;
font-size: 47rpx;
color: #D70000;
}
.money::before {
content: "¥";
font-size: 23rpx;
font-weight: 500;
}
.buy {
width: 240rpx;
height: 83rpx;
background: #D70000;
border-radius: 42rpx;
font-family: PingFang SC;
font-weight: bold;
font-size: 32rpx;
color: #FFFFFF;
text-align: center;
line-height: 83rpx;
}
.no-buy {
width: 240rpx;
height: 83rpx;
background: #BDBDBD;
border-radius: 42rpx;
font-family: PingFang SC;
font-weight: bold;
font-size: 32rpx;
color: #FFFFFF;
text-align: center;
line-height: 83rpx;
}
/* .classimg {
margin-left: 13rpx;
width: 710rpx;
display: block;
} */
/* .type-text {
position: absolute;
left: 130rpx;
padding: 30rpx 30rpx;
bottom: 0;
line-height: 60rpx;
font-size: 40rpx;
font-weight: bold;
z-index: 1;
color: #FFE1A2;
width: 120rpx;
display: flex;
justify-content: space-between;
} */
/* .item {
background: url(https://static.ticket.sz-trip.com/xcxImages/techan/bg.png);
background-size: 100% 100%;
width: 694rpx;
height: 571rpx;
margin: 0 auto;
margin-bottom: 15rpx;
color: #704436;
box-sizing: border-box;
} */
.list1 {
background-color: #FAF6F0;
border-radius: 13rpx;
margin-bottom: 30rpx;
padding: 20rpx 0 28rpx 20rpx;
}
.top-info {
display: flex;
/* padding: 30rpx; */
align-items: center;
margin-bottom: 20rpx;
}
.top-info image {
width: 136rpx;
height: 136rpx;
display: block;
flex-shrink: 0;
margin-right: 12rpx;
}
.supplier-info {
display: flex;
flex-direction: column;
/* height: 136rpx; */
justify-content:space-between;
flex: 1;
margin-right: 20.67rpx;
/* width: 300rpx; */
}
.supplier-name {
font-family: PingFang SC;
font-weight: 500;
font-size: 32rpx;
color: #000000;
}
.supplier-tags {
display: flex;
}
.supplier-tag {
padding: 0 20rpx;
font-size: 22rpx;
border: 1rpx solid #877350;
border-radius: 15rpx;
line-height: 28rpx;
margin-right: 20rpx;
color: #877350;
}
.supplier-address {
font-size: 20rpx;
margin-top: 10rpx;
color: #877350;
font-weight: 500;
font-size: 23rpx;
}
.supplier-address .iconfont {
margin-right: 8rpx;
font-size: 20rpx;
}
.supplier-price {
color: #CC3320;
font-size: 20rpx;
}
.supplier-price text:nth-child(2){
font-size: 40rpx;
font-weight: bold;
}
.product-list {
display: flex;
/* margin: 0 20rpx 0 30rpx; */
overflow-x:scroll ;
box-sizing: border-box;
/* padding-right:30rpx ; */
}
.product-list::-webkit-scrollbar {
display: none;
}
.product-item {
width: 212rpx;
font-size: 28rpx;
margin-right: 19rpx;
}
.product-item:nth-child(3){
}
.product-item image {
width: 212rpx;
height: 209rpx;
border-radius: 13rpx;
}
.market_price {
color: #999999;
font-weight: 400;
font-size: 20rpx;
margin-left: 10rpx;
text-decoration: line-through;
}
.mid-box{
display: flex;
align-items: center;
justify-content: space-between;
padding-right: 10rpx;
}
.bottom-box{
display: flex;
align-items: center;
justify-content: space-between;
}
.btn{
flex-shrink: 0;
background: #C6937F;
border-radius: 24rpx;
width: 147rpx;
height: 48rpx;
line-height: 48rpx;
text-align: center;
font-size: 25rpx;
font-family: PingFang SC;
font-weight: 500;
color: #FFFFFF;
}
.mask-content {
position: absolute;
left: 0;
right: 0;
bottom: 0;
width: 100%;
}
.mask-content .icon-close {
position: absolute;
right: 40rpx;
top: 40rpx;
}
.sku-info-box {
margin: 50rpx 40rpx;
display: flex;
justify-content: space-between;
}
.sku-info-box image {
width: 218rpx;
height: 180rpx;
border-radius: 13rpx;
display: block;
margin-right: 40rpx;
flex-shrink: 0;
}
.sku-info {
flex: 1;
}
.sku-price {
font-size: 40rpx;
font-weight: 500;
color: #D62828;
margin: 20rpx 0;
display: flex;
justify-content: flex-start;
align-items: center;
}
.sku-price::before {
content: "¥";
font-weight: 400;
font-size: 27rpx;
vertical-align: baseline;
}
.sku-price view {
font-size: 24rpx;
color: #FFFFFF;
background-color: #D62828;
border-radius: 22rpx;
line-height: 44rpx;
margin-left: 7rpx;
padding: 0 20rpx;
}
.sku-name {
font-size: 27rpx;
color: #666666;
}
.sku-names {
display: flex;
font-size: 29rpx;
color: #333;
margin: 0 40rpx;
text-align: center;
flex-wrap: wrap;
margin-bottom: 20rpx;
}
.sku-name-item {
background: #EFEFEF;
border: 1rpx solid #EFEFEF;
width: 318rpx;
line-height: 77rpx;
border-radius: 14rpx;
margin-bottom: 25rpx;
margin-right: 30rpx;
}
.sku-name-item:nth-child(2n) {
margin-right: 0;
}
.sku-name-item.active {
color: #0B898E;
border-color: #0B898E;
background: rgba(11, 137, 142, 0.1);
}
.number-box {
display: flex;
align-items: center;
border-top: 1rpx solid #ccc;
justify-content: space-between;
margin: 0 40rpx;
padding: 40rpx 0;
}
.number-box text {
flex: 1;
font-size: 29rpx;
color: #333;
}
.number-box view {
border: 1rpx solid #666;
border-radius: 7rpx;
text-align: center;
width: 67rpx;
line-height: 67rpx;
font-size: 33rpx;
color: #000;
}
.number-box view.disable {
border-color: #ccc;
color: #999;
}
.number-box view.number {
width: 94rpx;
margin: 0 15rpx;
}
.btn-box {
height: 138rpx;
background: #FFFFFF;
box-shadow: 0px 0px 16rpx 0px rgba(6, 0, 1, 0.1);
display: flex;
align-items: center;
justify-content: center;
position: fixed;
left: 0;
right: 0;
bottom: 0;
}
.mask-btn {
width: 670rpx;
line-height: 78rpx;
background: #D62828;
border-radius: 39rpx;
color: #fff;
text-align: center;
font-size: 33rpx;
font-weight: 500;
}
.mask-btn.disable {
background: #ccc;
}
.flex {
display: flex;
justify-content: space-between;
align-items: center;
}
.all {
font-family: PingFang SC;
font-weight: bold;
font-size: 37rpx;
color: #000000;
margin-left: 26rpx;
}
.del-all {
font-family: PingFang SC;
font-weight: bold;
font-size: 27rpx;
color: #999999;
margin-left: 7.33rpx;
}
.gwc-item {
display: flex;
align-items: center;
margin-bottom: 48rpx;
}
.main {
height: 179rpx;
padding: 8.67rpx 0 6.67rpx;
width: 425rpx;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.main .title {
font-family: PingFang SC;
font-weight: bold;
font-size: 31rpx;
color: #2C2C2C;
margin-bottom: 18rpx;
}
.main .sku-title {
font-family: PingFang SC;
font-weight: 500;
font-size: 27rpx;
color: #999999;
}
.main-bottom {
display: flex;
width: 100%;
justify-content: space-between;
}
.num-box {
display: flex;
}
.reduce, .grow {
width: 49rpx;
height: 49rpx;
}
.main-bottom .price {
font-family: PingFangSC;
font-size: 35rpx;
color: #F84A56;
}
.main-bottom .price::before {
content: "¥";
font-size: 24rpx;
font-weight: 500;
}
.hot-list {
padding: 26.67rpx;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.hot-item {
margin-bottom: 20rpx;
width: 337rpx;
height: 513rpx;
background: #FFFFFF;
box-shadow: 0rpx 0rpx 9rpx 0rpx rgba(153,153,153,0.33);
border-radius: 13rpx;
}
.hot-item-img {
width: 337rpx;
height: 337rpx;
background: #0B898E;
border-radius: 13rpx;
}
.hot-item-title {
font-family: PingFang SC;
font-weight: 500;
font-size: 27rpx;
color: #000000;
/* margin-bottom: 25.33rpx; */
}
.hot-item-price {
font-family: Arial;
font-weight: bold;
font-size: 33rpx;
color: #D70000;
margin-right: 12.67rpx;
}
.hot-item-price::before {
content: "¥";
font-weight: 400;
font-size: 23rpx;
}
.hot-item-market_price {
font-family: Arial;
font-weight: 400;
font-size: 21rpx;
color: #999999;
text-decoration-line: line-through;
}
.hot-item-main {
padding: 20rpx 19rpx 26.67rpx 20rpx;
display: flex;
flex-direction: column;
min-height: 140rpx;
justify-content: space-between;
}
.hot-list-item:nth-child(2) .hot-item:first-child {
width: 337rpx;
height: 373rpx;
background: #FFFFFF;
box-shadow: 0rpx 0rpx 9rpx 0rpx rgba(153,153,153,0.33);
border-radius: 13rpx;
padding-bottom: 20rpx;
}
.hot-list-item:nth-child(2) .hot-item:first-child .hot-item-img{
width: 337rpx;
height: 238rpx;
background: #71B580;
border-radius: 13rpx;
}
.hot-list-item:nth-child(2) .hot-item:first-child .main{
width: 337rpx;
height: 238rpx;
background: #71B580;
border-radius: 13rpx;
}
.hot-list-item:nth-child(2) .hot-item:first-child .hot-item-main {
padding: 5rpx 19rpx 26.67rpx 15rpx;
display: flex;
flex-direction: column;
min-height: 90rpx;
justify-content: space-between;
}
.hot-list-item:nth-child(2) .hot-item:first-child .hot-item-main .hot-item-title {
margin-bottom: 20rpx;
}
.hot-list-item {
width: 337rpx;
}
Loading…
Cancel
Save