diff --git a/pages.json b/pages.json index b844bcf..4969e94 100644 --- a/pages.json +++ b/pages.json @@ -89,14 +89,26 @@ { "path": "line/lineList", "style": { - "navigationBarTitleText": "", + "navigationBarTitleText": "特色体验", "navigationStyle": "custom" } }, { "path": "line/detail", "style": { - "navigationBarTitleText": "线路详情" + "navigationBarTitleText": "特色体验" + } + }, + { + "path": "line/order", + "style": { + "navigationBarTitleText": "特色体验" + } + }, + { + "path": "line/orders", + "style": { + "navigationBarTitleText": "特色体验" } }, { @@ -229,6 +241,13 @@ "navigationBarTitleText": "优惠券" } }, + { + "path": "user/getCoupon", + "style": { + "navigationBarTitleText": "领券中心", + "navigationStyle": "custom" + } + }, { "path": "user/collect", "style": { @@ -299,6 +318,32 @@ "style": { "navigationBarTitleText": "" } + }, + { + "path": "leyou/index", + "style": { + "navigationBarTitleText": "乐游同里" + } + }, + { + "path": "leyou/detail", + "style": { + "navigationBarTitleText": "乐游同里详情", + "navigationStyle": "custom" + } + }, + { + "path": "video/video", + "style": { + "navigationBarTitleText": "视频" + } + }, + { + "path": "novelty/detail", + "style": { + "navigationBarTitleText": "同里新鲜事", + "navigationStyle": "custom" + } } ] }], diff --git a/pages/index/index.vue b/pages/index/index.vue index c4130b4..a39927c 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -30,7 +30,7 @@ - + @@ -97,7 +97,7 @@ - + @@ -105,7 +105,7 @@ - + {{item.title}} @@ -117,6 +117,9 @@ 查看更多 + + + @@ -130,7 +133,7 @@ { img: 'https://static.ticket.sz-trip.com/tongli/images/index/lytl.png', text: '乐游同里', - path: '/subPackages/ticketBooking/ticketBooking' + path: '/subPackages/leyou/index' }, { img: 'https://static.ticket.sz-trip.com/tongli/images/index/hdrl.png', @@ -140,7 +143,7 @@ { img: 'https://static.ticket.sz-trip.com/tongli/images/index/tsty.png', text: '特色体验', - path: '/subPackages/food/foodList' + path: '/subPackages/line/lineList' }, { img: 'https://static.ticket.sz-trip.com/tongli/images/index/jdms.png', @@ -739,4 +742,13 @@ font-size: 27rpx; color: #248BAA; } + + .couponImg { + position: fixed; + right: 27rpx; + bottom: 38rpx; + width: 94rpx; + height: 105.33rpx; + z-index: 100; + } diff --git a/static/css/base.css b/static/css/base.css index b79de15..b494b6e 100644 --- a/static/css/base.css +++ b/static/css/base.css @@ -142,4 +142,19 @@ view { } .font-bold{ font-weight: bold; +} + +.topLeft { + width: 60rpx; + height: 60rpx; + background: rgba(0, 0, 0, .4); + border-radius: 50%; + position: absolute; + left: 26rpx; + top: 98rpx; + z-index: 2; +} +.topLeft .iconfont { + font-size: 40rpx; + color: #fff; } \ No newline at end of file diff --git a/store/modules/user.js b/store/modules/user.js index e832da7..5515dcd 100644 --- a/store/modules/user.js +++ b/store/modules/user.js @@ -4,6 +4,7 @@ export default { userInfo: {}, //保存用户登录信息, toPath: "", //要跳转过去的页面, foodInfo:"", //美食套餐信息 + lineInfo: "", // 线路 }, coupon: "",//下单选择优惠券 // 类似 vue 里的 mothods(同步方法) @@ -31,5 +32,9 @@ export default { choseCoupon(state, data) { state.coupon = data }, + // 线路下单 + changeLineInfo(state, data){ + state.lineInfo = data + } } } diff --git a/subPackages/eventCalendar/detail.vue b/subPackages/eventCalendar/detail.vue index 42efabd..18f006a 100644 --- a/subPackages/eventCalendar/detail.vue +++ b/subPackages/eventCalendar/detail.vue @@ -1,42 +1,55 @@ @@ -112,8 +125,45 @@ } .swipe-box { - height: 867rpx; + height: 309rpx; position: relative; + padding: 38rpx 0 0 26rpx; + + .swipe-headImg { + width: 138rpx; + height: 212rpx; + border-radius: 7rpx; + } + + .swipe-content { + width: 445rpx; + height: 212rpx; + margin-left: 25rpx; + padding: 8rpx 0; + flex-direction: column; + align-items: start; + + .swipe-title { + font-weight: 500; + font-size: 28rpx; + color: #FFFFFF; + } + + .swipe-subtitle { + font-weight: 400; + font-size: 24rpx; + color: #FFFFFF; + } + } + + .swipe-img { + width: 100%; + height: 100%; + position: absolute; + top: 0; + left: 0; + filter: blur(3px); + } .swiper-item-num { width: 90rpx; @@ -214,11 +264,21 @@ } .detail-container{ + .detail-title{ + font-weight: bold; + font-size: 33rpx; + color: #000000; + margin-bottom: 25rpx; + } + width: 100%; - padding: 28rpx; + padding: 35rpx 26rpx; + border-radius: 20rpx; + position: relative; + margin-top: -30rpx; font-family: PingFang SC; font-weight: 500; font-size: 28rpx; - color: #333333; + color: #000; } diff --git a/subPackages/leyou/detail.vue b/subPackages/leyou/detail.vue new file mode 100644 index 0000000..215ed9a --- /dev/null +++ b/subPackages/leyou/detail.vue @@ -0,0 +1,230 @@ + + + + + \ No newline at end of file diff --git a/subPackages/leyou/index.vue b/subPackages/leyou/index.vue new file mode 100644 index 0000000..ba58940 --- /dev/null +++ b/subPackages/leyou/index.vue @@ -0,0 +1,153 @@ + + + + + \ No newline at end of file diff --git a/subPackages/line/detail.vue b/subPackages/line/detail.vue index 56b9867..5379cd7 100644 --- a/subPackages/line/detail.vue +++ b/subPackages/line/detail.vue @@ -1,7 +1,7 @@ @@ -83,28 +162,13 @@ } .bg{ min-height: 100vh; - background: #F8F8F8; + background: #F7F7F7; + padding-bottom: 200rpx; } .swipe-box { - height: 867rpx; + height: 413rpx; position: relative; - - .swiper-item-num { - width: 90rpx; - height: 40rpx; - background: rgba(0, 0, 0, 0.5); - border-radius: 20rpx; - font-size: 24rpx; - font-family: PingFangSC-Regular, PingFang SC; - font-weight: 400; - color: #ffffff; - text-align: center; - line-height: 40rpx; - position: absolute; - right: 30rpx; - bottom: 50rpx; - } .collect{ position: absolute; @@ -123,62 +187,180 @@ height: 36rpx; } } - .swiper-pointer{ - position: absolute; - right: 36rpx; - bottom: 80rpx; - background: rgba(22,22,22,0.5); - border-radius: 23rpx; - font-family: PingFang SC; - font-weight: 500; - font-size: 24rpx; - color: #FFFFFF; - padding: 6rpx 14rpx; - - } } .swiper { - height: 867rpx; + height: 413rpx; position: relative; .swiper-item { width: 100%; - height: 867rpx; + height: 413rpx; .item-img { width: 750rpx; - height: 867rpx; - } - .item-img.pop-swiper-image{ - height: 347rpx; - border-radius: 13rpx; + height: 413rpx; } } } - .common-container{ - background: white; - width: 100%; + .top-box { + width: 697rpx; + background: #FFFFFF; + border-radius: 20rpx; + position: relative; + margin: -30rpx auto 0; + padding: 27rpx 42rpx 37rpx; + + .top-price { + font-weight: bold; + font-size: 40rpx; + color: #F02A2A; + } + .top-price::before { + font-size: 32rpx; + content: '¥'; + } + .top-price::after { + font-size: 24rpx; + color: rgba(102, 102, 102, 1); + content: '起'; + } + + .top-title { + font-weight: bold; + font-size: 31rpx; + color: #000000; + margin-top: 15rpx; + } + } + + .scroll-all-box { + margin: 24rpx 0; + + .scroll-menus { + padding: 0 40rpx; + display: flex; + justify-content: space-between; + align-items: center; + font-size: 29rpx; + color: #333; + height: 84rpx; + border-bottom: 1rpx solid #d9d9d9; + + .scroll-menu-item { + position: relative; + line-height: 84rpx; + } + + .scroll-menu-item.active::after { + content: '1'; + font-size: 0; + display: block; + position: absolute; + width: 46rpx; + height: 6rpx; + border-radius: 3rpx; + background: #248BAA; + left: 50%; + margin-left: -23rpx; + bottom: 0rpx; + } + } + + .fixed-menus { + position: fixed; + top: 0; + left: 0; + right: 0; + background: white; + z-index: 1; + } + + .info-box { + padding: 20rpx 40rpx; + + .info-title { + font-size: 35rpx; + font-weight: bold; + color: #000; + } + + .info-content { + width: 697rpx; + background: #FFFFFF; + border-radius: 20rpx; + padding: 22rpx 14rpx; + margin-top: 20rpx; + } + } } + .fixed-bottom { + width: 750rpx; + height: 152rpx; + background: #FFFFFF; + box-shadow: 0rpx 0rpx 16rpx 0rpx rgba(6,0,1,0.1); + position: fixed; + left: 0; + right: 0; + bottom: 0; + display: flex; + align-items: center; + justify-content: space-between; + padding: 0 26rpx 0 48rpx; + box-sizing: border-box; + font-size: 23rpx; + font-family: PingFangSC; + font-weight: 400; + color: #666666; + + img { + width: 48rpx; + height: 48rpx; + } + + .btn { + width: 254rpx; + height: 77rpx; + background: linear-gradient(270deg, #FC5109, #FC930A); + border-radius: 39rpx; + text-align: center; + line-height: 77rpx; + font-size: 32rpx; + font-family: PingFangSC; + font-weight: 500; + color: #FFFFFF; + } + } - .info-container{ - padding: 34rpx 25rpx; - width: 100%; - font-family: PingFang SC; - font-weight: bold; - font-size: 35rpx; - color: #000000; - margin-bottom: 21rpx; + #contact { + -webkit-tap-highlight-color: transparent; + background-color: rgba(0, 0, 0, 0); + border-radius: 0; + box-sizing: border-box; + color: transparent; + cursor: pointer; + display: inline-block; + font-size: 0; + line-height: 35rpx; + margin-left: 0; + margin-right: 0; + overflow: hidden; + padding-left: 0; + padding-right: 0; + position: relative; + text-align: center; + text-decoration: none; + border: transparent 0px solid; + font-size: 23rpx; + font-family: PingFangSC; + font-weight: 400; + color: #666666; } - .detail-container{ - width: 100%; - padding: 28rpx; - font-family: PingFang SC; - font-weight: 500; - font-size: 28rpx; - color: #333333; + button::after { + border: none; + background-color: rgba(0, 0, 0, 0); } diff --git a/subPackages/line/lineList.vue b/subPackages/line/lineList.vue index eb54a3c..66b92c3 100644 --- a/subPackages/line/lineList.vue +++ b/subPackages/line/lineList.vue @@ -1,7 +1,9 @@