This commit is contained in:
唐明明
2022-06-08 19:28:18 +08:00
24 changed files with 3367 additions and 334 deletions

View File

@@ -10,7 +10,8 @@ import router from '../router'
// 基础配置
const config = {
apiUrl : 'http://api.gl.shangkelian.cn/api/', // 正式环境
// apiUrl : 'http://api.gl.shangkelian.cn/api/', // 正式环境
apiUrl : 'http://api.zh.shangkelian.cn/api/', // 大健康调试环境,目前没有任何数据无法正常显示,所以需要使用该环境,最后会删除
timeout : 60000
}

35
node_modules/.package-lock.json generated vendored
View File

@@ -1,35 +0,0 @@
{
"name": "zhhealth",
"version": "1.0.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"node_modules/moment": {
"version": "2.29.1",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
"integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==",
"engines": {
"node": "*"
}
},
"node_modules/uni-read-pages": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/uni-read-pages/-/uni-read-pages-1.0.5.tgz",
"integrity": "sha512-GkrrZ0LX0vn9R5k6RKEi0Ez3Q3e2vUpjXQ8Z6/K/d28KudI9ajqgt8WEjQFlG5EPm1K6uTArN8LlqmZTEixDUA==",
"hasInstallScript": true
},
"node_modules/uni-simple-router": {
"version": "2.0.7",
"resolved": "https://registry.npmjs.org/uni-simple-router/-/uni-simple-router-2.0.7.tgz",
"integrity": "sha512-8FKv5dw7Eoonm0gkO8udprrxzin0fNUI0+AvIphFkFRH5ZmP5ZWJ2pvnWzb2NiiqQSECTSU5VSB7HhvOSwD5eA=="
},
"node_modules/uview-ui": {
"version": "2.0.29",
"resolved": "https://registry.npmjs.org/uview-ui/-/uview-ui-2.0.29.tgz",
"integrity": "sha512-d5SttbPcowomrgpL7A1LMKRbemXtyyzpPCy98/+VQR3jfSyyHC9tfj/ZeAOKpqTn1rf9gOj2wc5tda/kVmYX2Q==",
"engines": {
"HBuilderX": "^3.1.0"
}
}
}
}

22
node_modules/.yarn-integrity generated vendored Normal file
View File

@@ -0,0 +1,22 @@
{
"systemParams": "darwin-x64-93",
"modulesFolders": [
"node_modules"
],
"flags": [],
"linkedModules": [],
"topLevelPatterns": [
"moment@^2.29.1",
"uni-read-pages@^1.0.5",
"uni-simple-router@^2.0.7",
"uview-ui@^2.0.27"
],
"lockfileEntries": {
"moment@^2.29.1": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
"uni-read-pages@^1.0.5": "https://registry.npmjs.org/uni-read-pages/-/uni-read-pages-1.0.5.tgz",
"uni-simple-router@^2.0.7": "https://registry.npmjs.org/uni-simple-router/-/uni-simple-router-2.0.7.tgz",
"uview-ui@^2.0.27": "https://registry.npmjs.org/uview-ui/-/uview-ui-2.0.29.tgz"
},
"files": [],
"artifacts": {}
}

View File

@@ -96,7 +96,7 @@
"path": "pages/order/index",
"name": "Order",
"style": {
"navigationBarTitleText": "订单",
"navigationBarTitleText": "我的订单",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": false
}
@@ -221,7 +221,6 @@
"style": {
"navigationBarTitleText": "共力会员协议"
}
}, {
"path": "pages/team/index",
"name": "Team",
@@ -230,6 +229,22 @@
"enablePullDownRefresh": false
}
},
{
"path" : "pages/store/shop/shopDetail",
"name": "ShopDetail",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/store/shop/shopList",
"name": "ShopList",
"style": {
"navigationBarTitleText": "更多店铺",
"navigationBarBackgroundColor": "#FFFFFF",
"enablePullDownRefresh": true
}
}
],
"tabBar": {

View File

@@ -1,24 +1,21 @@
<template>
<view>
<oct-pay
:price="price"
:payNo="payNo"
color="#34CE98"
price-color="#e6576b"
:payPlatform="platform"
@onPay="pay"
/>
<oct-pay :price="price" :payNo="payNo" color="#34CE98" price-color="#e6576b" :payPlatform="platform"
@onPay="pay" />
</view>
</template>
<script>
import { wxPAY, alPAY } from '@/apis/interfaces/pay'
import {
wxPAY,
alPAY
} from '@/apis/interfaces/pay'
export default {
data() {
return {
payNo: "",
price: "",
platform: ['wxpay', 'alipay']
platform: ['dtpay']
}
},
mounted() {
@@ -27,6 +24,7 @@
},
methods: {
pay(e) {
if (e.platform === 'dtpay') return this.getDTPAY(e.platform);
uni.getProvider({
service: 'payment',
success: res => {
@@ -49,6 +47,25 @@
}
if (e.platform === 'wxpay') this.getWXPAY(e.platform)
if (e.platform === 'alipay') this.getALPAY(e.platform)
}
})
},
getDTPAY(){
console.log('dt 支付。。。')
uni.showModal({
title:'当前DT积分不足',
content:'不能支付该订单,是否放弃当前支付',
confirmText:'立即充值',
confirmColor:"#34CE98",
cancelText:'放弃支付',
cancelColor:"#666666",
success: (res) => {
if(res.confirm){
}else{
uni.navigateBack();
}
}
})
},

View File

@@ -21,7 +21,7 @@
<image class="order-cover" :src="item.items[0].cover" mode="aspectFill"></image>
<view class="order-title">{{item.items[0].title}}</view>
<view class="order-count">
<view class="order-price"><text></text>{{item.items[0].price}}</view>
<view class="order-price">{{item.items[0].price}}<text class="type">DT积分</text></view>
</view>
</view>
</block>
@@ -44,12 +44,12 @@
<view class="block info-box">
<view class="info-item">
<view class="label">订单备注</view>
<textarea class="info-textarea" v-model="remark" placeholder="订单备注"></textarea>
<textarea class="info-textarea" v-model="remark" placeholder="请输入备注"></textarea>
</view>
</view>
<!-- footer -->
<view class="order-footer">
<view class="total">总计<text>{{total}}</text></view>
<view class="total">总计<text>{{total}} <text class="type">DT积分</text></text></view>
<button class="btn" @click="subOrder">确认订单</button>
</view>
</view>
@@ -217,13 +217,17 @@
padding-left: $margin;
line-height: 40rpx;
.order-price{
font-size: 30rpx;
font-size: 32rpx;
font-weight: bold;
color: $text-price;
&>text{
font-size: 24rpx;
}
}
.type{
font-size: 22rpx;
padding-left: 6rpx;
}
.order-sum{
font-size: $title-size-sm;
color: $text-gray;
@@ -289,6 +293,10 @@
font-size: $title-size-lg;
font-weight: bold;
}
.type{
font-size: 22rpx;
padding-left: 6rpx;
}
}
.btn{
margin-left: $margin;

View File

@@ -21,11 +21,22 @@
<view class="price">
<text>¥</text>{{goods.price.show}}
</view>
<view class="sales">{{goods.sales}}</view>
<view class="sales">库存{{goods.sales}}</view>
</view>
<!-- <view class="hr">
<text>详情</text>
</view> -->
<view class="shopInfo" @click="toShop(2)">
<view class="shopInfo-title-left">
<image class="shop-logo" src="../../static/img/house_back.jpg" mode="aspectFill" />
<view class="shop-title">
<view class="shop-titl">三只松鼠旗舰店</view>
<view> 商品质量:<span class='no'>5.0</span> <text style="padding-left: 20rpx;">服务态度:<span class='no'>5.0</span></text> </view>
</view>
</view>
<view class="shopInfo-title-right">全部商品 723 <uni-icons type="right" color="grey"/></view>
</view>
<view class="imgs">
<block v-for="(item, index) in goods.content" :key="index">
<image :src="item" mode="widthFix"></image>
@@ -34,6 +45,7 @@
</view>
<!-- 立即购买 -->
<view class="footer">
<view @click="toShop(2)" class=" shop"><uni-icons type="shop" size="26" color="grey"/>店铺</view>
<button type="default" hover-class="none" @click="buy">立即购买</button>
</view>
</view>
@@ -62,7 +74,7 @@
},
methods:{
getGoods(){
goods(this.$Route.query.id).then(res => {
goods(this.$Route.query.id || 55).then(res => {
this.goods = res
})
},
@@ -78,6 +90,14 @@
skuId: this.goods.skus[0].sku_id
}
})
},
toShop(id){
this.$Router.push({
name: 'ShopDetail',
params: {
shopId: id
}
})
}
}
}
@@ -187,6 +207,69 @@
width: 100%;
}
}
.shopInfo{
border-top: solid $padding #f9f9f9;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
width: 100%;
padding:$padding $padding - 10;
border-bottom: solid 10rpx #f9f9f9;
.shopInfo-title-left{
width: 500rpx;
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
box-sizing: border-box;
.shop-logo{
width: 100rpx;
height: 100rpx;
border-radius: 10rpx;
border:solid 1rpx #f9f9f9;
}
.shop-title{
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
box-sizing: border-box;
font-size: 26rpx;
margin-left: $margin;
color: #999;
width:370rpx;
.no {
color: $text-price;
padding-left: 4rpx;
}
.shop-titl{
font-size: 34rpx;
color: #333;
font-weight: bold;
margin-bottom: 6rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
width: 100%;
}
}
}
.shopInfo-title-right{
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
box-sizing: border-box;
font-size: 28rpx;
color: #222;
}
}
}
// 购买
.footer{
@@ -197,9 +280,25 @@
padding: $padding;
z-index: 98;
background: white;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
box-sizing: border-box;
// linear-gradient(to top, white 86%, rgba(255,255,255,.0))
.shop{
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
box-sizing: border-box;
font-size: 24rpx;
color: $text-gray;
}
button{
background: $main-color;
margin-left: 60rpx;
flex: 1;
color: white;
border-radius: $radius-lg;
height: 90rpx;

View File

@@ -26,7 +26,7 @@
</u-scroll-list>
<!-- 每日上新 -->
<view class="new-box">
<view class="title">上新精选</view>
<view class="title">上新精选<text class="title-des"> | 精品上新新品推荐</text></view>
<view class="news">
<view class="news-item" v-for="(item, index) in newGood" :key="index" @click="$Router.push({ name: 'StoreGoods', params: {id: item.goods_id}})">
<view class="news-cover">
@@ -37,6 +37,22 @@
</view>
</view>
</view>
<!-- 线下商家 -->
<view class="offline-box">
<view class="title">推荐店铺 <view class="more"><text class="title-des"> | 您身边的优质体验店</text> <text class="more-txt" @click="$Router.push({name: 'ShopList'})">更多></text></view></view>
<view class="card-box">
<block v-for="(item, index) in 6" :key="index">
<view class="card-box-item" style="{'backgrond': #FFF}" v-if="index<4" @click="$Router.push({name: 'ShopDetail', params: {id: item.meal_id}})">
<view class="card-title">吉屋居酒屋吉屋居酒屋吉屋居酒屋</view>
<view class="card-subtitle">距离0.5KM</view>
<view class="card-btn">前往体验</view>
<image class="card-cover" src="/static/img/text_back.jpg" mode="aspectFill" />
</view>
</block>
</view>
</view>
<!-- 推荐品类 -->
<view class="card-box">
<block v-for="(item, index) in meals" :key="index">
@@ -47,6 +63,8 @@
</view>
</block>
</view>
<!-- goods -->
<view class="goods-box">
<oct-goods
@@ -79,6 +97,7 @@
methods:{
getMall(){
mall().then(res => {
console.log(res);
this.banners = res.banners
this.goodsArr = res.goods
this.newGood = res.news
@@ -110,6 +129,7 @@
color: $text-color;
font-weight: bold;
margin-bottom: -$margin/2;
}
}
// 商城分类
@@ -158,7 +178,10 @@
font-weight: bold;
color: $text-color;
line-height: 40rpx;
@extend .nowrap;
width: calc(100% - 80rpx);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.card-subtitle{
font-size: 20rpx;
@@ -170,6 +193,7 @@
width: 80rpx;
height: 80rpx;
position: absolute;
border-radius: 50%;
right: $margin;
top: $margin;
}
@@ -190,6 +214,13 @@
font-size: $title-size-lg;
color: $text-color;
font-weight: bold;
padding-bottom: 10rpx;
.title-des{
font-size: 24rpx !important;
padding-left: 10rpx;
color: $text-gray-m;
font-weight: normal;
}
}
.news{
margin: $margin/2 -10rpx 0;
@@ -229,6 +260,78 @@
}
}
}
.offline-box{
.title{
font-size: $title-size-lg;
color: $text-color;
font-weight: bold;
margin-top: $margin;
margin-left: $margin;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
.more{
flex: 1;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding-right: $padding;
.more-txt{
font-size: 24rpx;
color: $text-gray;
font-weight: normal;
}
}
}
.card-btn{
font-size: 20rpx;
color: #fff;
padding: 4rpx 20rpx;
border-radius: 20rpx;
background-color: $text-price;
display: inline-block;
}
// .card-title{
// font-weight: normal;
// font-size: 28rpx!important;
// }
.card-box {
// &-item{
// background: #fff !important;
// }
&-item:nth-child(1){
background: #fef2ae;
}
&-item:nth-child(2){
background: #c9ead9;
}
&-item:nth-child(3){
margin-top: $padding - 8;
background: #bde0ff;
}
&-item:nth-child(4){
margin-top: $padding - 8;
background: #ffd9e1;
}
}
.card-cover{
width: 100rpx;
height: 100rpx;
position: absolute;
right: $margin;
top: $margin;
}
.title-des{
font-size: 24rpx;
padding-left: 10rpx;
color: $text-gray-m;
font-weight: normal;
}
}
// swiper
.swiper{
background: linear-gradient(#FFF, #F3F6FB);

View File

@@ -34,6 +34,7 @@
methods:{
getMeals(){
meals(this.$Route.query.id, this.categoryId).then(res => {
console.log(res)
uni.setNavigationBarTitle({
title: res.meal.subtitle
})

View File

@@ -0,0 +1,570 @@
<template>
<view class="shopDetail">
<view class="top">
<view class="search" @click="search">
<uni-icons type="left" class="back" size="30" @click="$Router.back();" />
<view class="input">
<uni-icons type="search" class="search-icon" color="grey" size="20" /> 请输入要搜索商品的关键词
</view>
</view>
<view class="shopInfo">
<view class="shopInfo-title-left">
<image class="shop-logo" src="/static/img/house_back.jpg" mode="aspectFill" />
<view class="shop-title">
<view class="shop-titl">三只松鼠旗舰店</view>
<view> 商品质量:<span class='no'>5.0</span> <text style="padding-left: 20rpx;">服务态度:<span
class='no'>5.0</span></text> </view>
</view>
</view>
<view class="shopInfo-title-right"> +关注 </view>
</view>
</view>
<view class="content">
<view class="left">
<scroll-view scroll-y="true" class="scroll-view-left">
<view :class="['classify-item', item.category_id === category_id?'active_classify_item':'']"
v-for="(item,index) in classify" :key="index" @click="selectClassify(item.category_id)">
{{item.name}}
</view>
</scroll-view>
</view>
<view class="right">
<scroll-view scroll-y="true" class="scroll-view-right">
<view class="goods-item" v-for="(item,index) in goods" :key="index" @click="onGoods(item.goods_id)">
<image :src="item.cover" mode="aspectFill" class="good-img" />
<view class="item--content">
<view class="title">{{item.name}}</view>
<view class="sub_title">{{item.shop.name}}</view>
<view class="price">{{item.price.price_min || '0'}}
<view class="price-type">
<text> DT积分</text>
<text class="kucun"> 库存量:1222</text>
</view>
</view>
</view>
</view>
</scroll-view>
</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
category_id: 1,
classify: [{
category_id: 1,
name: "全部商品",
cover: ""
}, {
category_id: 2,
name: "面部护理",
cover: ""
}, {
category_id: 3,
name: "香水彩妆",
cover: ""
}, {
category_id: 4,
name: "男装男鞋",
cover: ""
}, {
category_id: 5,
name: "儿童用品",
cover: ""
}],
goods: [{
"goods_id": 70,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "一口爆浆冰皮榴莲泡泡",
"description": "专注冰皮,苏丹王榴莲",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/11/ccd654bda2e3c95e190e941209e50c62.png",
"tags": [],
"original_price": 111,
"price": {
"show": "100",
"score": 1,
"price_min": 100,
"price_max": 100
},
"clicks": 0,
"sales": 3253
}, {
"goods_id": 56,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "铜锣烧蛋糕",
"description": "口感丰富,悠闲小食",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/11/37ecc570f9d7ad929a693d24118a0311.png",
"tags": [],
"original_price": 155,
"price": {
"show": "100",
"score": 1,
"price_min": 100,
"price_max": 100
},
"clicks": 0,
"sales": 7394
}, {
"goods_id": 54,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "雪麸蛋糕 香蕉牛奶风味",
"description": "北海道牛奶风味",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/11/9093c59ea5d513008926ac4233c20992.png",
"tags": [],
"original_price": 222,
"price": {
"show": "111",
"score": 1,
"price_min": 111,
"price_max": 111
},
"clicks": 1,
"sales": 202
}, {
"goods_id": 37,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "澳大利亚深海鱼油胶囊",
"description": "无腥味工艺,呵护全家健康",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/07/af4e0bab7e621d2bd6f1cb7052f1eb71.png",
"tags": [],
"original_price": 188,
"price": {
"show": "100",
"score": 1,
"price_min": 100,
"price_max": 100
},
"clicks": 2,
"sales": 5538
}, {
"goods_id": 28,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "冰淇淋威化饼干",
"description": "浓香醇厚,微甜不腻",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/06/f01d2ec7e73dff9371b71892957d85f0.png",
"tags": [],
"original_price": 155,
"price": {
"show": "111",
"score": 1,
"price_min": 111,
"price_max": 111
},
"clicks": 0,
"sales": 2707
}, {
"goods_id": 33,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "麦饭石天然矿泉水",
"description": "优选产地,多种矿物质",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/06/770afc8c293ff493c35d9a98dc3dbe97.png",
"tags": [],
"original_price": 122,
"price": {
"show": "100",
"score": 1,
"price_min": 100,
"price_max": 100
},
"clicks": 2,
"sales": 5257
}, {
"goods_id": 24,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "小米锅巴",
"description": "8%小米含量,松脆营养",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/06/5c6bbb8f1f50953c3d25b7a5c22a9865.png",
"tags": [],
"original_price": 155,
"price": {
"show": "111",
"score": 1,
"price_min": 111,
"price_max": 111
},
"clicks": 0,
"sales": 2653
}, {
"goods_id": 97,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "甜味浓郁低糖水果千禧玲珑小番茄",
"description": "甜味浓郁低糖水果千禧玲珑小番茄",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/11/8c44833a6d9477a9c01f8b4e06b2f748.png",
"tags": [],
"original_price": 0,
"price": {
"show": "89",
"score": 10,
"price_min": 89,
"price_max": 89
},
"clicks": 0,
"sales": 1347
}, {
"goods_id": 12,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "秘制手撕牛肉",
"description": "肉质紧致弹牙,细嚼口齿留香",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/06/bbd96a7724cb053e501b4ce2c34b5a0f.png",
"tags": [],
"original_price": 255,
"price": {
"show": "111",
"score": 1,
"price_min": 111,
"price_max": 111
},
"clicks": 0,
"sales": 1352
}, {
"goods_id": 58,
"shop": {
"shop_id": 1,
"name": "平台自营店铺",
"cover": "",
"is_self": true
},
"is_self": true,
"name": "挚爱巧克力",
"description": "黄金可可,瑞士工艺传承",
"cover": "http://storage.zh.shangkelian.cn/images/2022/01/11/ad5953e7f7ae60ca2f13f1313d67bb62.png",
"tags": [],
"original_price": 200,
"price": {
"show": "100",
"score": 1,
"price_min": 100,
"price_max": 100
},
"clicks": 0,
"sales": 5420
}],
}
},
onLoad(e) {
this.shopId = this.$Route.query.id;
},
methods: {
selectClassify(id) {
if (id === this.category_id) return;
this.category_id = id;
},
search() {
console.log('search')
this.$Router.push({
'name': 'StoreSearch'
});
},
onGoods(id) {
this.$Router.push({
name: 'StoreGoods',
params: {
id: id
}
})
}
}
}
</script>
<style lang="scss">
.shopDetail {
width: 100%;
height: 100vh;
.top {
height: 320rpx;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-end;
box-sizing: border-box;
padding-top: 44px;
width: 100%;
.search {
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
box-sizing: border-box;
width: 100%;
padding-right: $padding;
.back {
padding: 0 $padding;
}
.input {
flex: 1;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
box-sizing: border-box;
background-color: #f9f9f9;
color: gray;
font-size: 26rpx;
border-radius: 30rpx;
padding: 10rpx $padding;
.search-icon {
margin-right: $margin;
}
}
}
.shopInfo {
border-top: solid 1 #f9f9f9;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
width: 100%;
padding: $padding - 10;
background-color: #fff;
.shopInfo-title-left {
width: 500rpx;
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
box-sizing: border-box;
.shop-logo {
width: 100rpx;
height: 100rpx;
border-radius: 10rpx;
border: solid 1rpx #f9f9f9;
}
.shop-title {
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
box-sizing: border-box;
font-size: 26rpx;
margin-left: $margin;
color: #999;
width: 370rpx;
.no {
color: $text-price;
padding-left: 4rpx;
}
.shop-titl {
font-size: 34rpx;
color: #333;
font-weight: bold;
margin-bottom: 6rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
width: 100%;
}
}
}
.shopInfo-title-right {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
box-sizing: border-box;
font-size: 28rpx;
color: #222;
background-color: $main-color;
padding: 6rpx $padding;
color: #FFF;
}
}
}
.content {
height: calc(100vh - 320rpx);
background-color: #eee;
display: flex;
flex-direction: row;
align-items: center;
padding-top: 20rpx;
box-sizing: border-box;
.left {
width: 180rpx;
height: 100%;
.scroll-view-left {
height: 100%;
width: 100%;
}
.classify-item {
width: 100%;
padding: $padding 0;
font-size: 26rpx;
text-align: center;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: #222;
display: inline-block;
}
.active_classify_item {
background-color: #FFFFFF;
}
}
.right {
width: calc(100% - 180rpx);
height: 100%;
background-color: #fff;
.scroll-view-right {
width: 100%;
height: 100%;
.goods-item {
width: 100%;
display: inline-block;
border-bottom: solid 1rpx #eee;
// padding: $padding;
padding-left: $padding;
padding-top: $padding;
padding-bottom: $padding;
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
box-sizing: border-box;
.good-img {
width: 160rpx;
height: 160rpx;
border-radius: 10rpx;
}
.item--content {
flex: 1;
padding: $padding - 10;
&>.title {
font-size: 28rpx;
color: #333;
// @extend .ellipsis-1;
}
&>.sub_title {
color: #a05f0c;
font-size: 24rpx;
padding-top: 4rpx;
// @extend .ellipsis-1;
}
&>.price {
padding-top: $padding/2;
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: flex-start;
box-sizing: border-box;
line-height: 40rpx;
font-weight: bold;
font-size: 32rpx;
color: $text-price;
// @extend .ellipsis-1;
.price-type {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
box-sizing: border-box;
flex: 1;
text {
margin-right: $margin/2;
padding-left: 6rpx;
font-size: 70%;
}
.kucun {
color: $text-gray;
font-weight: normal;
}
}
}
}
}
}
}
}
}
</style>

View File

@@ -0,0 +1,201 @@
<template>
<view class="content">
<!-- banner -->
<view class="banner">
<image class="banner-cover"
src="http://storage.zh.shangkelian.cn/images/2022/01/11/7278de59f0817da7fbcaf6657dba7475.jpg"
mode="aspectFill" />
</view>
<!-- 分类 -->
<u-sticky bgColor="#fff" zIndex="99">
<u-tabs :list="classify" lineColor="#34CE98" @click="onTabs" />
</u-sticky>
<!-- 店铺列表 -->
<block v-for="(item,index) in 10" :key="index">
<view class="shopInfo" @click="toShop(2)">
<view class="shopInfo-title-left">
<image class="shop-logo" src="/static/img/house_back.jpg" mode="aspectFill" />
<view class="shop-title">
<view class="shop-titl">三只松鼠旗舰店</view>
<view> 商品质量:<span>5.0</span> <text style="padding-left: 20rpx;">服务态度:<span>5.0</span></text> </view>
</view>
</view>
<view class="shopInfo-title-right" >全部商品 723 <uni-icons type="right" color="grey" /></view>
</view>
</block>
</view>
</template>
<script>
import {
meals
} from "@/apis/interfaces/store"
export default {
data() {
return {
banner: "",
goodsArr: [],
// classify: [],
classify: [{
category_id: 1,
name: " 全部",
cover: ""
}, {
category_id: 2,
name: " 母婴",
cover: ""
}, {
category_id: 3,
name: "服饰",
cover: ""
}, {
category_id: 4,
name: "男装",
cover: ""
}, {
category_id: 5,
name: "男鞋",
cover: ""
}, {
category_id: 6,
name: "女装",
cover: ""
}]
};
},
mounted() {
// this.getMeals()
},
methods: {
getMeals() {
meals(this.$Route.query.id, this.categoryId).then(res => {
uni.setNavigationBarTitle({
title: res.meal.subtitle
})
this.banner = res.meal.banner
this.goodsArr = res.goods
this.classify = [{
name: "全部",
category_id: ""
}].concat(res.categories)
uni.stopPullDownRefresh()
})
},
onTabs(e) {
this.categoryId = e.category_id
this.getMeals()
},
toShop(id) {
console.log('toShop/////.........');
this.$Router.push({
name: 'ShopDetail',
params: {
ShopId: id,
}
})
}
},
onPullDownRefresh() {
this.getMeals()
},
}
</script>
<style lang="scss" scoped>
.content {
background: $window-color;
min-height: 100vh;
}
// banner
.banner {
position: relative;
width: 100%;
background-color: white;
padding-top: 40%;
&-text,
&-cover {
position: absolute;
top: 0;
left: 0;
height: 100%;
width: 100%;
}
}
// 筛选
.classify-tabs {
background: white;
}
.shopInfo {
border-top: solid 1 #f9f9f9;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
width: 100%;
padding: $padding $padding - 10;
border-bottom: solid 10rpx #f9f9f9;
background-color: #fff;
.shopInfo-title-left {
width: 500rpx;
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
box-sizing: border-box;
.shop-logo {
width: 100rpx;
height: 100rpx;
border-radius: 10rpx;
border: solid 1rpx #f9f9f9;
}
.shop-title {
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
box-sizing: border-box;
font-size: 26rpx;
margin-left: $margin;
color: #999;
width: 370rpx;
span {
color: $text-price;
padding-left: 4rpx;
}
.shop-titl {
font-size: 34rpx;
color: #333;
font-weight: bold;
margin-bottom: 6rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
width: 100%;
}
}
}
.shopInfo-title-right {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
box-sizing: border-box;
font-size: 28rpx;
color: #222;
}
}
</style>

View File

@@ -61,7 +61,7 @@
</view>
<!-- 订单 -->
<view class="order-box">
<view class="order-box-item" @click="onBtn('Order', { index: 4 })">
<view class="order-box-item" @click="onBtn('Order', { index: 0 })">
<image class="icon" src="@/static/user/order_icon_04.png" mode="widthFix" />
<view class="title">我的订单</view>
</view>

View File

@@ -5,7 +5,13 @@
<view class="item--cover" :style="{backgroundImage: 'url(' + item.cover + ')'}" />
<view class="item--content">
<view class="title">{{item.name}}</view>
<view class="price" :style="{color: color}"><text>{{priceType}}</text>{{item.price.price_min || '0'}}</view>
<view class="sub_title">{{item.shop.name}}</view>
<view class="price" :style="{color: color}">{{item.price.price_min || '0'}}
<view class="price-type">
<text> DT积分</text>
<text class="kucun" v-if="showSalce"> 库存量:1222</text>
</view>
</view>
</view>
</view>
</view>
@@ -30,11 +36,13 @@
type: String,
required: false,
default: "#d4282d"
},
showSalce:{
type:Boolean,
default:true
}
},
mounted() {
}
mounted() {}
}
</script>
<style lang="scss" scoped>
@@ -69,6 +77,7 @@
border-radius: $radius;
overflow: hidden;
margin: $margin;
box-shadow: 0 0 24rpx 4rpx rgba($color: #000000, $alpha: 0.1);
.item--cover{
width: 100%;
padding-top: 100%;
@@ -79,21 +88,44 @@
padding: $padding - 10;
& > .title{
font-size: 28rpx;
line-height: 40rpx;
height: 80rpx;
color: #333;
@extend .ellipsis-2;
@extend .ellipsis-1;
}
& > .sub_title{
color: #a05f0c;
font-size: 24rpx;
padding-top: 4rpx;
@extend .ellipsis-1;
}
& > .price{
padding-top: $padding/2;
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: flex-start;
box-sizing: border-box;
line-height: 40rpx;
font-weight: bold;
font-size: 28rpx;
font-size: 32rpx;
@extend .ellipsis-1;
.price-type{
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
box-sizing: border-box;
flex: 1;
text{
margin-right: $margin/2;
font-size: 80%;
padding-left: 6rpx;
font-size: 70%;
}
.kucun{
color: $text-gray;
font-weight: normal;
}
}
}
}
}

BIN
uni_modules/oct-pay/.DS_Store vendored Normal file

Binary file not shown.

View File

@@ -30,6 +30,15 @@
<radio value="alipay" :checked="payIndex === 0" :color="color" />
</label>
</view>
<view class="radio--item" v-if="pay === 'dtpay'">
<label class="radio-flex">
<view class="radio--text">
<image class="radio--icon" src="../../static/dtpay.png" mode="widthFix"></image>
DT积分
</view>
<radio value="alipay" :checked="payIndex === 0" :color="color" />
</label>
</view>
</block>
</radio-group>
<!-- 提交支付 -->
@@ -77,7 +86,8 @@
payPlatform: {
type: Array,
default: ()=> {
return ["wxpay", "alipay"]
return ["dtpay"];
// return ["wxpay", "alipay","dtpay"];
}
},
// 支付编号
@@ -170,7 +180,7 @@
}
}
&>.footer{
margin-top: $margin;
margin-top: $margin * 4;
.footer--pay{
height: 90rpx;
line-height: 90rpx;

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,8 +1,8 @@
var isReady=false;var onReadyCallbacks=[];
var isServiceReady=false;var onServiceReadyCallbacks=[];
var __uniConfig = {"pages":["pages/auth/auth","pages/auth/role","pages/life/life","pages/store/index","pages/user/index","pages/setting/setting","pages/store/goods","pages/store/buy","pages/order/index","pages/order/details","pages/address/index","pages/address/edit","pages/pay/pay","pages/store/list","pages/store/meals","pages/store/search","pages/refund/index","pages/account/integral","pages/account/dt","pages/account/recharge","pages/vip/vip","pages/vip/agreement","pages/team/index"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"ZH健康","navigationBarBackgroundColor":"#F3F6FB","backgroundColorTop":"#F3F6FB","backgroundColorBottom":"#F3F6FB"},"tabBar":{"borderStyle":"white","selectedColor":"#34CE98","list":[{"iconPath":"static/tabBar/tabBar_02.png","selectedIconPath":"static/tabBar/tabBar_show_02.png","pagePath":"pages/life/life","text":"共力人生"},{"iconPath":"static/tabBar/tabBar_02.png","selectedIconPath":"static/tabBar/tabBar_show_02.png","pagePath":"pages/store/index","text":"DT商城"},{"iconPath":"static/tabBar/tabBar_03.png","selectedIconPath":"static/tabBar/tabBar_show_03.png","pagePath":"pages/user/index","text":"我的"}]},"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"ZH-HEALTH","compilerVersion":"3.4.14","entryPagePath":"pages/life/life","entryPageQuery":"","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}};
var __uniRoutes = [{"path":"/pages/auth/auth","meta":{"isQuit":true},"window":{"navigationBarTitleText":"登录","navigationStyle":"custom"}},{"path":"/pages/auth/role","meta":{},"window":{"navigationBarTitleText":"角色创建","navigationBarBackgroundColor":"#FFF","titleNView":{"buttons":[{"text":"退出登录","fontSize":"14","width":"80px","color":"#34CE98"}]}}},{"path":"/pages/life/life","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"共力人生","navigationStyle":"custom"}},{"path":"/pages/store/index","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"DT商城","enablePullDownRefresh":true,"titleNView":{"backgroundColor":"#FFFFFF","buttons":[{"float":"right","text":"","fontSrc":"/static/iconfont.ttf","color":"#000","fontSize":"20px"}]}}},{"path":"/pages/user/index","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"我的","navigationStyle":"custom"}},{"path":"/pages/setting/setting","meta":{},"window":{"navigationBarTitleText":"设置中心","navigationBarBackgroundColor":"#34CE98","navigationBarTextStyle":"white"}},{"path":"/pages/store/goods","meta":{},"window":{"navigationStyle":"custom","navigationBarTitleText":"详情","titleNView":{"backgroundColor":"#FFFFFF","type":"transparent"}}},{"path":"/pages/store/buy","meta":{},"window":{"navigationBarTitleText":"确认订单","enablePullDownRefresh":false}},{"path":"/pages/order/index","meta":{},"window":{"navigationBarTitleText":"订单","navigationBarBackgroundColor":"#FFFFFF","enablePullDownRefresh":false}},{"path":"/pages/order/details","meta":{},"window":{"navigationBarTitleText":"订单详情","enablePullDownRefresh":false}},{"path":"/pages/address/index","meta":{},"window":{"navigationBarTitleText":"收货地址"}},{"path":"/pages/address/edit","meta":{},"window":{"navigationBarTitleText":"编辑","enablePullDownRefresh":false}},{"path":"/pages/pay/pay","meta":{},"window":{"navigationBarTitleText":"收银台","navigationBarBackgroundColor":"#FFFFFF"}},{"path":"/pages/store/list","meta":{},"window":{"navigationBarTitleText":"商品","navigationBarBackgroundColor":"#FFFFFF","enablePullDownRefresh":true}},{"path":"/pages/store/meals","meta":{},"window":{"navigationBarTitleText":"套餐","navigationBarBackgroundColor":"#FFFFFF","enablePullDownRefresh":true}},{"path":"/pages/store/search","meta":{},"window":{"navigationBarTitleText":"搜索","navigationBarBackgroundColor":"#FFFFFF"}},{"path":"/pages/refund/index","meta":{},"window":{"navigationBarTitleText":"退换货","navigationBarBackgroundColor":"#FFFFFF"}},{"path":"/pages/account/integral","meta":{},"window":{"navigationBarTitleText":"共力值","navigationBarBackgroundColor":"#34CE98","navigationBarTextStyle":"white"}},{"path":"/pages/account/dt","meta":{},"window":{"navigationBarTitleText":"DT积分","navigationBarBackgroundColor":"#34CE98","backgroundColorTop":"#34CE98","navigationBarTextStyle":"white","titleNView":{"buttons":[{"text":"充值","width":"60","fontSize":"14"}]}}},{"path":"/pages/account/recharge","meta":{},"window":{"navigationBarTitleText":"DT积分充值","navigationBarBackgroundColor":"#FFFFFF","titleNView":{"buttons":[{"text":"充值记录","width":"80","fontSize":"14"}]}}},{"path":"/pages/vip/vip","meta":{},"window":{"navigationBarTitleText":"共力会员","navigationBarBackgroundColor":"#242430","navigationBarTextStyle":"white","backgroundColorTop":"#242430"}},{"path":"/pages/vip/agreement","meta":{},"window":{"navigationBarTitleText":"共力会员协议"}},{"path":"/pages/team/index","meta":{},"window":{"navigationBarTitleText":"共力团队","enablePullDownRefresh":false}}];
var __uniConfig = {"pages":["pages/auth/auth","pages/auth/role","pages/life/life","pages/store/index","pages/user/index","pages/setting/setting","pages/store/goods","pages/store/buy","pages/order/index","pages/order/details","pages/address/index","pages/address/edit","pages/pay/pay","pages/store/list","pages/store/meals","pages/store/search","pages/refund/index","pages/account/integral","pages/account/dt","pages/account/recharge","pages/vip/vip","pages/vip/agreement","pages/team/index","pages/store/shop/shopDetail","pages/store/shop/shopList"],"window":{"navigationBarTextStyle":"black","navigationBarTitleText":"ZH健康","navigationBarBackgroundColor":"#F3F6FB","backgroundColorTop":"#F3F6FB","backgroundColorBottom":"#F3F6FB"},"tabBar":{"borderStyle":"white","selectedColor":"#34CE98","list":[{"iconPath":"static/tabBar/tabBar_02.png","selectedIconPath":"static/tabBar/tabBar_show_02.png","pagePath":"pages/life/life","text":"共力人生"},{"iconPath":"static/tabBar/tabBar_02.png","selectedIconPath":"static/tabBar/tabBar_show_02.png","pagePath":"pages/store/index","text":"DT商城"},{"iconPath":"static/tabBar/tabBar_03.png","selectedIconPath":"static/tabBar/tabBar_show_03.png","pagePath":"pages/user/index","text":"我的"}]},"nvueCompiler":"uni-app","nvueStyleCompiler":"uni-app","renderer":"auto","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":false},"appname":"ZH-HEALTH","compilerVersion":"3.4.14","entryPagePath":"pages/life/life","entryPageQuery":"","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000}};
var __uniRoutes = [{"path":"/pages/auth/auth","meta":{"isQuit":true},"window":{"navigationBarTitleText":"登录","navigationStyle":"custom"}},{"path":"/pages/auth/role","meta":{},"window":{"navigationBarTitleText":"角色创建","navigationBarBackgroundColor":"#FFF","titleNView":{"buttons":[{"text":"退出登录","fontSize":"14","width":"80px","color":"#34CE98"}]}}},{"path":"/pages/life/life","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"共力人生","navigationStyle":"custom"}},{"path":"/pages/store/index","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"DT商城","enablePullDownRefresh":true,"titleNView":{"backgroundColor":"#FFFFFF","buttons":[{"float":"right","text":"","fontSrc":"/static/iconfont.ttf","color":"#000","fontSize":"20px"}]}}},{"path":"/pages/user/index","meta":{"isQuit":true,"isTabBar":true},"window":{"navigationBarTitleText":"我的","navigationStyle":"custom"}},{"path":"/pages/setting/setting","meta":{},"window":{"navigationBarTitleText":"设置中心","navigationBarBackgroundColor":"#34CE98","navigationBarTextStyle":"white"}},{"path":"/pages/store/goods","meta":{},"window":{"navigationStyle":"custom","navigationBarTitleText":"详情","titleNView":{"backgroundColor":"#FFFFFF","type":"transparent"}}},{"path":"/pages/store/buy","meta":{},"window":{"navigationBarTitleText":"确认订单","enablePullDownRefresh":false}},{"path":"/pages/order/index","meta":{},"window":{"navigationBarTitleText":"我的订单","navigationBarBackgroundColor":"#FFFFFF","enablePullDownRefresh":false}},{"path":"/pages/order/details","meta":{},"window":{"navigationBarTitleText":"订单详情","enablePullDownRefresh":false}},{"path":"/pages/address/index","meta":{},"window":{"navigationBarTitleText":"收货地址"}},{"path":"/pages/address/edit","meta":{},"window":{"navigationBarTitleText":"编辑","enablePullDownRefresh":false}},{"path":"/pages/pay/pay","meta":{},"window":{"navigationBarTitleText":"收银台","navigationBarBackgroundColor":"#FFFFFF"}},{"path":"/pages/store/list","meta":{},"window":{"navigationBarTitleText":"商品","navigationBarBackgroundColor":"#FFFFFF","enablePullDownRefresh":true}},{"path":"/pages/store/meals","meta":{},"window":{"navigationBarTitleText":"套餐","navigationBarBackgroundColor":"#FFFFFF","enablePullDownRefresh":true}},{"path":"/pages/store/search","meta":{},"window":{"navigationBarTitleText":"搜索","navigationBarBackgroundColor":"#FFFFFF"}},{"path":"/pages/refund/index","meta":{},"window":{"navigationBarTitleText":"退换货","navigationBarBackgroundColor":"#FFFFFF"}},{"path":"/pages/account/integral","meta":{},"window":{"navigationBarTitleText":"共力值","navigationBarBackgroundColor":"#34CE98","navigationBarTextStyle":"white"}},{"path":"/pages/account/dt","meta":{},"window":{"navigationBarTitleText":"DT积分","navigationBarBackgroundColor":"#34CE98","backgroundColorTop":"#34CE98","navigationBarTextStyle":"white","titleNView":{"buttons":[{"text":"充值","width":"60","fontSize":"14"}]}}},{"path":"/pages/account/recharge","meta":{},"window":{"navigationBarTitleText":"DT积分充值","navigationBarBackgroundColor":"#FFFFFF","titleNView":{"buttons":[{"text":"充值记录","width":"80","fontSize":"14"}]}}},{"path":"/pages/vip/vip","meta":{},"window":{"navigationBarTitleText":"共力会员","navigationBarBackgroundColor":"#242430","navigationBarTextStyle":"white","backgroundColorTop":"#242430"}},{"path":"/pages/vip/agreement","meta":{},"window":{"navigationBarTitleText":"共力会员协议"}},{"path":"/pages/team/index","meta":{},"window":{"navigationBarTitleText":"共力团队","enablePullDownRefresh":false}},{"path":"/pages/store/shop/shopDetail","meta":{},"window":{"navigationStyle":"custom"}},{"path":"/pages/store/shop/shopList","meta":{},"window":{"navigationBarTitleText":"更多店铺","navigationBarBackgroundColor":"#FFFFFF","enablePullDownRefresh":true}}];
__uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
__uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
service.register("uni-app-config",{create(a,b,c){if(!__uniConfig.viewport){var d=b.weex.config.env.scale,e=b.weex.config.env.deviceWidth,f=Math.ceil(e/d);Object.assign(__uniConfig,{viewport:f,defaultFontSize:Math.round(f/20)})}return{instance:{__uniConfig:__uniConfig,__uniRoutes:__uniRoutes,global:void 0,window:void 0,document:void 0,frames:void 0,self:void 0,location:void 0,navigator:void 0,localStorage:void 0,history:void 0,Caches:void 0,screen:void 0,alert:void 0,confirm:void 0,prompt:void 0,fetch:void 0,XMLHttpRequest:void 0,WebSocket:void 0,webkit:void 0,print:void 0}}}});

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long