瀏覽代碼

商品接口调试

lilei 4 年之前
父節點
當前提交
8c567a68ad

+ 4 - 3
App.vue

@@ -1,11 +1,12 @@
 <script>
-	const uat_URL = 'https://carwash.test.zyucgj.com/cw-wechat/' // 预发布
-	// const uat_URL = 'http://192.168.16.103:8103/cw-wechat/' // 本地
-	const pro_URL = 'https://carwash.zyucgj.com/cw-wechat/'  // 生产
+	// const uat_URL = 'https://carwash.test.zyucgj.com/gc-shop/' // 预发布
+	const uat_URL = 'http://192.168.16.102:8302/gc-shop/' // 本地
+	const pro_URL = 'https://carwash.zyucgj.com/gc-shop/'  // 生产
 	const buildType = 0 // 打包环境对应类型,1 生产 0 预发布
 	const buildURL = buildType ? pro_URL : uat_URL // 打包后实际对应的url
 	const envText = ['预发布环境','生产环境']
 	const envTips = process.env.NODE_ENV == 'development' ? envText[0] : envText[buildType]
+	console.log(process.env.NODE_ENV)
 	export default {
 		globalData: {  
 			baseUrl: process.env.NODE_ENV == 'development' ? uat_URL : buildURL,

+ 27 - 0
api/goods.js

@@ -0,0 +1,27 @@
+import axios from '@/libs/axios.js';
+
+// 获取商品分类
+export const getGoodsClass = params => {
+  return axios.request({
+    url: `goodsType/queryList`,
+    method: 'post',
+	data: params
+  })
+};
+
+// 获取商品列表
+export const getGoodsList = params => {
+  return axios.request({
+    url: `goods/query/${params.pageNo}/${params.pageSize}`,
+    method: 'post',
+	data: params
+  })
+};
+
+// 获取商品详情
+export const getGoodsDetail = params => {
+  return axios.request({
+    url: `goods/findById/${params.id}`,
+    method: 'get',
+  })
+};

+ 6 - 1
components/uni-coods/uni-coods.vue

@@ -8,7 +8,7 @@
 			<view class="name ellipsis-two">{{item.name}}</view>
 			<view class="price">
 				<view>
-					<text>{{item.price}}</text>
+					<text>{{item.sellGold}}</text>
 					<u-image mode="scaleToFill" width="40rpx" height="40rpx" src="/static/ledou.png"></u-image>
 				</view>
 				<view @click.stop="addCart" v-if="item.status == 0">
@@ -42,6 +42,11 @@
 				linePos: null
 			}
 		},
+		watch: {
+			list(newValue, oldValue) {
+				console.log(newValue,'------------')
+			}
+		},
 		methods: {
 			// 加入购物车
 			addCart(e) {

+ 0 - 224
components/uni-nav-bar/uni-nav-bar.vue

@@ -1,224 +0,0 @@
-<template>
-	<view class="uni-navbar">
-		<view :class="{ 'uni-navbar--fixed': fixed, 'uni-navbar--shadow': shadow, 'uni-navbar--border': border }" :style="{ 'background-color': backgroundColor }"
-		 class="uni-navbar__content">
-			<uni-status-bar v-if="statusBar" />
-			<view :style="{ color: color,backgroundColor: backgroundColor }" class="uni-navbar__header uni-navbar__content_view">
-				<view @tap="onClickLeft" class="uni-navbar__header-btns uni-navbar__header-btns-left uni-navbar__content_view">
-					<view class="uni-navbar__content_view" v-if="leftIcon.length">
-						<uni-icons :color="color" :type="leftIcon" size="24" />
-					</view>
-					<view :class="{ 'uni-navbar-btn-icon-left': !leftIcon.length }" class="uni-navbar-btn-text uni-navbar__content_view"
-					 v-if="leftText.length">
-						<text :style="{ color: color, fontSize: '14px' }">{{ leftText }}</text>
-					</view>
-					<slot name="left" />
-				</view>
-				<view class="uni-navbar__header-container uni-navbar__content_view">
-					<view class="uni-navbar__header-container-inner uni-navbar__content_view" v-if="title.length">
-						<text class="uni-nav-bar-text" :style="{color: color }">{{ title }}</text>
-					</view>
-					<!-- 标题插槽 -->
-					<slot />
-				</view>
-				<view :class="title.length ? 'uni-navbar__header-btns-right' : ''" @tap="onClickRight" class="uni-navbar__header-btns uni-navbar__content_view">
-					<view class="uni-navbar__content_view" v-if="rightIcon.length">
-						<uni-icons :color="color" :type="rightIcon" size="24" />
-					</view>
-					<!-- 优先显示图标 -->
-					<view class="uni-navbar-btn-text uni-navbar__content_view" v-if="rightText.length && !rightIcon.length">
-						<text class="uni-nav-bar-right-text">{{ rightText }}</text>
-					</view>
-					<slot name="right" />
-				</view>
-			</view>
-		</view>
-		<view class="uni-navbar__placeholder" v-if="fixed">
-			<uni-status-bar v-if="statusBar" />
-			<view class="uni-navbar__placeholder-view" />
-		</view>
-	</view>
-</template>
-
-<script>
-	import uniStatusBar from "../uni-status-bar/uni-status-bar.vue";
-	import uniIcons from "../uni-icons/uni-icons.vue";
-
-	export default {
-		name: "UniNavBar",
-		components: {
-			uniStatusBar,
-			uniIcons
-		},
-		props: {
-			title: {
-				type: String,
-				default: ""
-			},
-			leftText: {
-				type: String,
-				default: ""
-			},
-			rightText: {
-				type: String,
-				default: ""
-			},
-			leftIcon: {
-				type: String,
-				default: ""
-			},
-			rightIcon: {
-				type: String,
-				default: ""
-			},
-			fixed: {
-				type: [Boolean, String],
-				default: false
-			},
-			color: {
-				type: String,
-				default: "#000000"
-			},
-			backgroundColor: {
-				type: String,
-				default: "#FFFFFF"
-			},
-			statusBar: {
-				type: [Boolean, String],
-				default: false
-			},
-			shadow: {
-				type: [String, Boolean],
-				default: false
-			},
-			border: {
-				type: [String, Boolean],
-				default: true
-			}
-		},
-        mounted() {
-          if(uni.report && this.title !== '') {
-              uni.report('title', this.title)
-          }
-        },
-		methods: {
-			onClickLeft() {
-				this.$emit("clickLeft");
-			},
-			onClickRight() {
-				this.$emit("clickRight");
-			}
-		}
-	};
-</script>
-
-<style lang="scss" scoped>
-	$nav-height: 44px;
-	.uni-nav-bar-text {
-		/* #ifdef APP-PLUS */
-		font-size: 34rpx;
-		/* #endif */
-		/* #ifndef APP-PLUS */
-		font-size: $uni-font-size-lg;
-		/* #endif */
-	}
-	.uni-nav-bar-right-text {
-		font-size: $uni-font-size-base;
-	}
-
-	.uni-navbar {
-		width: 750rpx;
-	}
-
-	.uni-navbar__content {
-		position: relative;
-		width: 750rpx;
-		background-color: $uni-bg-color;
-		overflow: hidden;
-	}
-
-	.uni-navbar__content_view {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		align-items: center;
-		flex-direction: row;
-		// background-color: #FFFFFF;
-	}
-
-	.uni-navbar__header {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-direction: row;
-		width: 750rpx;
-		height: $nav-height;
-		line-height: $nav-height;
-		font-size: 14px;
-		// background-color: #ffffff;
-	}
-
-	.uni-navbar__header-btns {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-wrap: nowrap;
-		width: 120rpx;
-		padding: 0 6px;
-		justify-content: center;
-		align-items: center;
-	}
-
-	.uni-navbar__header-btns-left {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		// width: 300rpx;
-		justify-content: flex-start;
-	}
-
-	.uni-navbar__header-btns-right {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		width: 150rpx;
-		padding-right: 30rpx;
-		justify-content: flex-end;
-	}
-
-	.uni-navbar__header-container {
-		flex: 1;
-	}
-
-	.uni-navbar__header-container-inner {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex: 1;
-		align-items: center;
-		justify-content: center;
-		font-size: $uni-font-size-base;
-	}
-
-
-	.uni-navbar__placeholder-view {
-		height: $nav-height;
-	}
-
-	.uni-navbar--fixed {
-		position: fixed;
-		z-index: 998;
-	}
-
-	.uni-navbar--shadow {
-		/* #ifndef APP-NVUE */
-		box-shadow: 0 1px 6px #ccc;
-		/* #endif */
-	}
-
-	.uni-navbar--border {
-		border-bottom-width: 1rpx;
-		border-bottom-style: solid;
-		border-bottom-color: $uni-border-color;
-	}
-</style>

+ 0 - 25
components/uni-status-bar/uni-status-bar.vue

@@ -1,25 +0,0 @@
-<template>
-	<view :style="{ height: statusBarHeight }" class="uni-status-bar">
-		<slot />
-	</view>
-</template>
-
-<script>
-	var statusBarHeight = uni.getSystemInfoSync().statusBarHeight + 'px'
-	export default {
-		name: 'UniStatusBar',
-		data() {
-			return {
-				statusBarHeight: statusBarHeight
-			}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.uni-status-bar {
-		width: 750rpx;
-		height: 20px;
-		// height: var(--status-bar-height);
-	}
-</style>

+ 0 - 243
components/uni-steps/uni-steps.vue

@@ -1,243 +0,0 @@
-<template>
-	<view class="uni-steps">
-		<view :class="[direction==='column'?'uni-steps__column':'uni-steps__row']">
-			<view :class="[direction==='column'?'uni-steps__column-text-container':'uni-steps__row-text-container']">
-				<view v-for="(item,index) in options" :key="index" :class="[direction==='column'?'uni-steps__column-text':'uni-steps__row-text']">
-					<text :style="{color:index<=active?activeColor:deactiveColor}" :class="[direction==='column'?'uni-steps__column-title':'uni-steps__row-title']">{{item.title}}</text>
-					<text :style="{color:index<=active?activeColor:deactiveColor}" :class="[direction==='column'?'uni-steps__column-desc':'uni-steps__row-desc']">{{item.desc}}</text>
-				</view>
-			</view>
-			<view :class="[direction==='column'?'uni-steps__column-container':'uni-steps__row-container']">
-				<view :class="[direction==='column'?'uni-steps__column-line-item':'uni-steps__row-line-item']" v-for="(item,index) in options"
-				 :key="index">
-					<view :class="[direction==='column'?'uni-steps__column-line':'uni-steps__row-line',direction==='column'?'uni-steps__column-line--before':'uni-steps__row-line--before']"
-					 :style="{backgroundColor:index<=active&&index!==0?activeColor:index===0?'transparent':deactiveColor}"></view>
-					<view :class="[direction==='column'?'uni-steps__column-check':'uni-steps__row-check']" v-if="index === active">
-						<uni-icons :color="activeColor" type="checkbox-filled" size="14"></uni-icons>
-					</view>
-					<view :class="[direction==='column'?'uni-steps__column-circle':'uni-steps__row-circle']" v-else :style="{backgroundColor:index<active?activeColor:deactiveColor}"></view>
-					<view :class="[direction==='column'?'uni-steps__column-line':'uni-steps__row-line',direction==='column'?'uni-steps__column-line--after':'uni-steps__row-line--after']"
-					 :style="{backgroundColor:index<active&&index!==options.length-1?activeColor:index===options.length-1?'transparent':deactiveColor}"></view>
-				</view>
-			</view>
-		</view>
-	</view>
-</template>
-
-<script>
-	import uniIcons from '../uni-icons/uni-icons.vue'
-	export default {
-		name: 'UniSteps',
-		components: {
-			uniIcons
-		},
-		props: {
-			direction: {
-				// 排列方向 row column
-				type: String,
-				default: 'row'
-			},
-			activeColor: {
-				// 激活状态颜色
-				type: String,
-				default: '#1aad19'
-			},
-			deactiveColor: {
-				// 未激活状态颜色
-				type: String,
-				default: '#999999'
-			},
-			active: {
-				// 当前步骤
-				type: Number,
-				default: 0
-			},
-			options: {
-				type: Array,
-				default () {
-					return []
-				}
-			} // 数据
-		},
-		data() {
-			return {}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	.uni-steps {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		width: 100%;
-		/* #endif */
-		/* #ifdef APP-NVUE */
-		flex: 1;
-		/* #endif */
-		flex-direction: column;
-	}
-
-	.uni-steps__row {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-direction: column;
-	}
-
-	.uni-steps__column {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-direction: row-reverse;
-	}
-
-	.uni-steps__row-text-container {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-direction: row;
-	}
-
-	.uni-steps__column-text-container {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-direction: column;
-		flex: 1;
-	}
-
-	.uni-steps__row-text {
-		/* #ifndef APP-NVUE */
-		display: inline-flex;
-		/* #endif */
-		flex: 1;
-		flex-direction: column;
-	}
-
-	.uni-steps__column-text {
-		padding: 6px 0px;
-		border-bottom-style: solid;
-		border-bottom-width: 1px;
-		border-bottom-color: $uni-border-color;
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-direction: column;
-	}
-
-	.uni-steps__row-title {
-		font-size: $uni-font-size-base;
-		line-height: 16px;
-		text-align: center;
-	}
-
-	.uni-steps__column-title {
-		font-size: $uni-font-size-base;
-		text-align: left;
-		line-height: 18px;
-	}
-
-	.uni-steps__row-desc {
-		font-size: 12px;
-		line-height: 14px;
-		text-align: center;
-	}
-
-	.uni-steps__column-desc {
-		font-size: $uni-font-size-sm;
-		text-align: left;
-		line-height: 18px;
-	}
-
-	.uni-steps__row-container {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-direction: row;
-	}
-
-	.uni-steps__column-container {
-		/* #ifndef APP-NVUE */
-		display: inline-flex;
-		/* #endif */
-		width: 30px;
-		flex-direction: column;
-	}
-
-	.uni-steps__row-line-item {
-		/* #ifndef APP-NVUE */
-		display: inline-flex;
-		/* #endif */
-		flex-direction: row;
-		flex: 1;
-		height: 14px;
-		line-height: 14px;
-		align-items: center;
-		justify-content: center;
-	}
-
-	.uni-steps__column-line-item {
-		/* #ifndef APP-NVUE */
-		display: flex;
-		/* #endif */
-		flex-direction: column;
-		flex: 1;
-		align-items: center;
-		justify-content: center;
-	}
-
-	.uni-steps__row-line {
-		flex: 1;
-		height: 1px;
-		background-color: $uni-text-color-grey;
-	}
-
-	.uni-steps__column-line {
-		width: 1px;
-		background-color: $uni-text-color-grey;
-	}
-
-	.uni-steps__row-line--after {
-		transform: translateX(1px);
-	}
-
-	.uni-steps__column-line--after {
-		flex: 1;
-		transform: translate(0px, 1px);
-	}
-
-	.uni-steps__row-line--before {
-		transform: translateX(-1px);
-	}
-
-	.uni-steps__column-line--before {
-		height: 6px;
-		transform: translate(0px, -1px);
-	}
-
-	.uni-steps__row-circle {
-		width: 5px;
-		height: 5px;
-		border-radius: 100px;
-		background-color: $uni-text-color-grey;
-		margin: 0px 3px;
-	}
-
-	.uni-steps__column-circle {
-		width: 5px;
-		height: 5px;
-		border-radius: 100px;
-		background-color: $uni-text-color-grey;
-		margin: 4px 0px 5px 0px;
-	}
-
-	.uni-steps__row-check {
-		margin: 0px 6px;
-	}
-
-	.uni-steps__column-check {
-		height: 14px;
-		line-height: 14px;
-		margin: 2px 0px;
-	}
-</style>

+ 3 - 3
libs/axios.js

@@ -6,9 +6,9 @@ const request = (opts, hasToken) => {
 	// console.log(authorization,'authorization')
 	//  hasToken是否传入token,为true则不传token
 	const header = {
-			'Content-Type': 'application/json;charset=UTF-8'
+			'content-Type': 'application/json;charset=UTF-8'
 		}
-	if(!hasToken){
+	if(!hasToken&&authorization){
 		header['X-AUTH-TOKEN'] = authorization
 	}	
 	//此token是登录成功后后台返回保存在storage中的
@@ -21,7 +21,7 @@ const request = (opts, hasToken) => {
 	let promise = new Promise(function(resolve, reject) {
 		uni.request(DefaultOpts).then(
 			(res) => {
-				console.log(res,opts.url)
+				console.log(res)
 				// 是否超时已跳转
 				let loginTimeOut = uni.getStorageSync('loginTimeOut');
 				if(res[0]&&res[0].errMsg.indexOf('request:fail')>=0){

+ 29 - 54
pages/goods/goods.vue

@@ -1,6 +1,6 @@
 <template>
 	<view class="content">
-		<view class="info">该类商品需购满300乐豆才能下单哦!</view>
+		<view class="info">该类商品需购满{{goldLimit}}乐豆才能下单哦!</view>
 		<view v-if="goodsList.length">
 			<uni-coods :list="goodsList"></uni-coods>
 		</view>
@@ -10,71 +10,46 @@
 </template>
 
 <script>
+	import {
+		getGoodsList
+	} from '@/api/goods.js'
 	export default {
 		data() {
 			return {
 				clsId: '',
-				goodsList:[
-					{
-						id: 21312312321,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 50,
-						status: 0
-					},
-					{
-						id: 6465465465,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 50,
-						status: 1
-					},
-					{
-						id: 234324,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 50,
-						status: 0
-					},
-					{
-						id: 4453455,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 50,
-						status: 0
-					},
-					{
-						id: 22222,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 50,
-						status: 0
-					},
-					{
-						id: 345,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 50,
-						status: 0
-					},
-					{
-						id: 456456,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 50,
-						status: 0
-					}
-				]
+				goldLimit:0,
+				pageNo: 1,
+				pageSize: 20,
+				goodsList:[]
 			};
 		},
 		onLoad(opts) {
-			this.clsId = opts.id
-		}
+			console.log(opts)
+			this.clsId = opts.goodsTypeNo
+			this.goldLimit = opts.goldLimit
+			this.getGoods()
+		},
+		methods: {
+			// 查询商品
+			getGoods(item,index){
+				getGoodsList({
+					pageNo: this.pageNo,
+					pageSize: this.pageSize,
+					goodsTypeNo:this.clsId,
+				}).then(res => {
+					console.log(res,'goodsList')
+					if(res.status == 200){
+						this.goodsList = res.data.list
+					}
+				})
+			}
+		},
 	}
 </script>
 
 <style lang="scss">
    .content {
+	   width: 100%;
 		.goods{
 			padding: 20upx 0;
 		}

+ 34 - 42
pages/goods/index.vue

@@ -6,18 +6,13 @@
 		</view>
 		<!-- 商品 -->
 		<view class="goods">
-			<view v-if="goodsList.length">
-				<u-section title="人气零食" v-if="goodsList.length" line-color="#01c9b2" sub-title="更多" @click="toGoods(1)"></u-section>
+			<view v-for="(item,index) in goodsList" :key="item.type.id" v-if="item.list.length">
+				<u-section :title="item.type.name" line-color="#01c9b2" sub-title="更多" @click="toGoods(item.type)"></u-section>
 				<view class="goods-list">
-					<uni-coods :list="goodsList"></uni-coods>
-				</view>
-			</view>
-			<view v-if="goodsList.length">
-				<u-section title="居家生活" v-if="goodsList.length" line-color="#01c9b2" sub-title="更多" @click="toGoods(2)"></u-section>
-				<view class="goods-list">
-					<uni-coods :list="goodsList"></uni-coods>
+					<uni-coods :list="item.list"></uni-coods>
 				</view>
 			</view>
+			<u-empty v-else text="暂无商品" mode="list"></u-empty>
 		</view>
 		<!-- 购物车 -->
 		<uni-cart-fix></uni-cart-fix>
@@ -26,17 +21,9 @@
 
 <script>
 	import {
-		checkLogin
-	} from '@/api/login.js'
-	import {
-		getMapStoreList
-	} from '@/api/store.js'
-	import {
-		getLookUpDatas
-	} from '@/api/data.js'
-	import {
-		getUnFinishedOrder
-	} from '@/api/order.js'
+		getGoodsClass,
+		getGoodsList
+	} from '@/api/goods.js'
 	export default {
 		components: {
 		},
@@ -46,35 +33,39 @@
 					{image:'/static/banner.png'},
 					{image:'/static/banner1.png'}
 				],
-				goodsList:[
-					{
-						id: 21312312321,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 300,
-						status: 0
-					},
-					{
-						id: 6465465465,
-						name: '啊撒旦解放拉萨酱豆腐爱丽丝反对萨拉地方就',
-						src: '/static/goods.png',
-						price: 50,
-						status: 1
-					},
-				]
+				goodsList:[], // 商品
+				goodsType:[], // 商品分类
 			}
 		},
-		onReady() {
-		},
 		onShow() {
-		},
-		onLoad() {
+			getGoodsClass({}).then(res => {
+				console.log(res)
+				if(res.status == 200){
+					this.goodsType = res.data
+					this.goodsType.map((item,index) => {
+						this.getGoods(item,index)
+					})
+				}
+			})
 		},
 		methods: { 
 			// 更多商品
-			toGoods(clsId){
+			toGoods(item){
 				uni.navigateTo({
-					url:"/pages/goods/goods?id="+clsId
+					url:"/pages/goods/goods?goodsTypeNo="+ item.goodsTypeNo + "&goldLimit="+ item.goldLimit
+				})
+			},
+			// 查询商品
+			getGoods(item,index){
+				getGoodsList({pageNo:1,pageSize:item.popularizeGoodsLimit,goodsTypeNo:item.goodsTypeNo}).then(res => {
+					console.log(res,'goodsList')
+					if(res.status == 200&&res.data.list&&res.data.list.length){
+						this.goodsList.push({
+							type: item,
+							list: res.data.list
+						})
+						this.goodsList.splice()
+					}
 				})
 			}
 		}
@@ -85,6 +76,7 @@
 	.content {
 		background: url(../../static/topBg.png) no-repeat top center;
 		background-size: 100%;
+		width: 100%;
 		.goods{
 			>view{
 				padding: 25upx 20upx 10upx;

+ 20 - 4
pages/userCenter/index.vue

@@ -8,10 +8,15 @@
 			<view class="user-info">
 				<open-data type="userNickName"></open-data>
 			</view>
+		</view>
+		<view class="my-ledou">
 			<view class="user-jifen">
-				<view>乐豆:<text>345</text></view>
+				<view>我的乐豆:<text>345</text></view>
 				<u-image mode="scaleToFill" width="35rpx" height="35rpx" src="/static/ledou.png"></u-image>
 			</view>
+			<view>
+				<u-button size="mini" type="warrning" shape="circle">查看明细</u-button>
+			</view>
 		</view>
 		<!-- 列表 -->
 		<view class="user-list">
@@ -106,8 +111,17 @@
 				overflow: hidden;
 				margin-right: 5rpx;
 			}
+		}
+		.my-ledou{
+			background: #FFFFFF;
+			border-radius: 15upx;
+			display: flex;
+			align-items: center;
+			justify-content: space-between;
+			padding: 20upx;
+			margin: 20upx;
+			box-shadow: 0upx 3upx 6upx #eee;
 			.user-jifen{
-				color: #FFFFFF;
 				display: flex;
 				align-items: center;
 				text{
@@ -122,9 +136,11 @@
 				}
 			}
 		}
-		
 		.user-list{
-			padding:20rpx 0;
+			border-radius: 15upx;
+			margin: 20upx;
+			overflow: hidden;
+			box-shadow: 0upx 3upx 6upx #eee;
 		}
 		.user-btn{
 			padding: 85rpx 200rpx;