Browse Source

上传

master
前端-胡立永 7 months ago
parent
commit
cc6ead1ce2
28 changed files with 130 additions and 925 deletions
  1. +4
    -19
      components/base/tabbar.vue
  2. +11
    -16
      pages.json
  3. +0
    -181
      pages/index/category.vue
  4. +71
    -328
      pages/index/center.vue
  5. +0
    -360
      pages/index/index.vue
  6. +27
    -0
      pages/index/tourGuide.vue
  7. +1
    -1
      pages_order/auth/loginAndRegisterAndForgetPassword.vue
  8. +0
    -0
      pages_order/mine/cart.vue
  9. +15
    -19
      pages_order/order/order.vue
  10. BIN
      static/image/center/1.png
  11. BIN
      static/image/center/10.png
  12. BIN
      static/image/center/2.png
  13. BIN
      static/image/center/3.png
  14. BIN
      static/image/center/4.png
  15. BIN
      static/image/center/5.png
  16. BIN
      static/image/center/6.png
  17. BIN
      static/image/center/7.png
  18. BIN
      static/image/center/8.png
  19. BIN
      static/image/center/9.png
  20. BIN
      static/image/tabbar/cart-a.png
  21. BIN
      static/image/tabbar/cart.png
  22. BIN
      static/image/tabbar/category-a.png
  23. BIN
      static/image/tabbar/category.png
  24. BIN
      static/image/tabbar/center-a.png
  25. BIN
      static/image/tabbar/home-a.png
  26. BIN
      static/image/tabbar/order-a.png
  27. BIN
      static/image/tabbar/order.png
  28. +1
    -1
      uni.scss

+ 4
- 19
components/base/tabbar.vue View File

@ -4,7 +4,6 @@
:class="{item : true, active : select == index}" :class="{item : true, active : select == index}"
v-for="(item, index) in list" v-for="(item, index) in list"
:key="index" :key="index"
v-if="!item.isNotShop || !userShop"
@click="toPath(item, index)"> @click="toPath(item, index)">
<view class="icon"> <view class="icon">
<image :src="select == index ? <image :src="select == index ?
@ -36,24 +35,10 @@
"title": "首页" "title": "首页"
}, },
{ {
"selectedIconPath": "/static/image/tabbar/category-a.png",
"iconPath": "/static/image/tabbar/category.png",
"pagePath": "/pages/index/category",
"title": "分类",
isNotShop : true,
},
{
"selectedIconPath": "/static/image/tabbar/order-a.png",
"iconPath": "/static/image/tabbar/order.png",
"pagePath": "/pages/index/order",
"title": "订单中心"
},
{
"selectedIconPath": "/static/image/tabbar/cart-a.png",
"iconPath": "/static/image/tabbar/cart.png",
"pagePath": "/pages/index/cart",
"title": "购物车",
isNotShop : true,
"selectedIconPath": "/static/image/tabbar/home-a.png",
"iconPath": "/static/image/tabbar/home.png",
"pagePath": "/pages/index/tourGuide",
"title": "导览"
}, },
{ {
"selectedIconPath": "/static/image/tabbar/center-a.png", "selectedIconPath": "/static/image/tabbar/center-a.png",


+ 11
- 16
pages.json View File

@ -5,18 +5,6 @@
"navigationBarTitleText": "" "navigationBarTitleText": ""
} }
}, },
{
"path": "pages/index/order",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/index/category",
"style": {
"navigationBarTitleText": ""
}
},
{ {
"path": "pages/index/center", "path": "pages/index/center",
"style": { "style": {
@ -24,9 +12,10 @@
} }
}, },
{ {
"path": "pages/index/cart",
"style": {
"navigationBarTitleText": ""
"path" : "pages/index/tourGuide",
"style" :
{
"navigationBarTitleText" : ""
} }
} }
], ],
@ -64,12 +53,18 @@
}, },
{ {
"path": "auth/loginAndRegisterAndForgetPassword" "path": "auth/loginAndRegisterAndForgetPassword"
},
{
"path": "order/order"
},
{
"path": "mine/cart"
} }
] ]
}], }],
"globalStyle": { "globalStyle": {
"navigationBarTextStyle": "black", "navigationBarTextStyle": "black",
"navigationBarTitleText": "酒店桌布",
"navigationBarTitleText": "",
"navigationBarBackgroundColor": "#F8F8F8", "navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8", "backgroundColor": "#F8F8F8",
"navigationStyle": "custom" "navigationStyle": "custom"


+ 0
- 181
pages/index/category.vue View File

@ -1,181 +0,0 @@
<template>
<view class="page">
<navbar/>
<view class="category">
<uv-vtabs
:chain="chain"
:list="category"
height="1000px"
:barItemBadgeStyle="{right:'20px',top:'12px'}"
@change="change">
<uv-vtabs-item>
<view class="category-title">
租赁
</view>
<view class="list">
<view class="item" v-for="(item,index) in list" :key="index"
@click="$utils.navigateTo('/pages_order/product/productDetail?id=123')">
<view class="item-image">
<image
:src="item.image"
mode="aspectFill"></image>
</view>
<view class="item-unit">
<text class="text">{{item.unit}}</text>
</view>
</view>
</view>
</uv-vtabs-item>
</uv-vtabs>
</view>
<tabber select="1" />
</view>
</template>
<script>
import tabber from '@/components/base/tabbar.vue'
export default {
components: {
tabber,
},
data() {
return {
category: [
{
name : '桌布'
},
{
name : '桌布'
},
{
name : '桌布'
},
],
list : [
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
{
unit : '100*50*60',
image : 'https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg',
},
],
chain: false,
value: 0
}
},
computed: {
list2() {
const _list = this.list[this.value]?.childrens;
return _list ? _list : [];
}
},
onReady() {
},
methods: {
change(index) {
console.log('选项改变:', index)
this.value = index;
}
}
}
</script>
<style scoped lang="scss">
.category {
font-size: 30rpx;
color: #333;
min-height: 100vh;
.category-title{
position: relative;
display: flex;
justify-content: center;
align-items: center;
height: 120rpx;
&::before,
&::after {
position: absolute;
top: 50%;
content: '';
width: 10%;
border-top: 2rpx solid black;
}
&::before {
left: 25%;
}
&::after {
right: 25%;
}
}
.list{
display: flex;
flex-wrap: wrap;
margin: 0 auto;
width: 490rpx;
.item {
padding: 10rpx 20rpx;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
margin-bottom: 20rpx;
.item-image {
width: 120rpx;
height: 120rpx;
image{
height: 100%;
width: 100%;
border-radius: 50%;
}
}
.item-unit {
font-size: 24rpx;
margin-top: 15rpx;
color: #555;
}
}
.gap {
padding: 0 30rpx;
}
}
}
</style>

+ 71
- 328
pages/index/center.vue View File

@ -9,184 +9,81 @@
</view> </view>
<view class="info"> <view class="info">
<view class="name"> <view class="name">
倾心.
微信用户
</view> </view>
<!-- <view class="vip">
VIP1
</view> -->
<view class="tips"> <view class="tips">
今天是您来的的第32天
加入时间2024-03-03
</view> </view>
</view> </view>
<view class="headBtn" @click="headBtn">
角色切换
</view>
<view class="setting"> <view class="setting">
<uv-icon name="setting" size="40rpx"></uv-icon>
<!-- <uv-icon name="setting" size="40rpx"></uv-icon> -->
</view> </view>
</view> </view>
<!-- 水洗店 -->
<view class="userShop" v-if="userShop">
<userShopCommission />
<view class="userList">
<view class="title">
我的用户
</view>
<view class="list">
<view class="item" v-for="(item, index) in 20" :key="index">
<view class="name">
客户王生
</view>
<view class="num">
剩余水洗布198
</view>
</view>
</view>
</view>
</view>
<!-- 酒店 -->
<view class="user" v-else>
<view class="line">
<view class="item">
<view class="image">
<image src="/static/image/center/1.png" mode=""></image>
</view>
<view class="">
余额3000
</view>
</view>
<view class="item">
<view class="image">
<image src="/static/image/center/4.png" mode=""></image>
</view>
<view class="">
押金30000
</view>
</view>
</view>
<view class="line grid">
<view class="title">
常用功能
</view>
<uv-grid :col="4" :border="false">
<uv-grid-item @click="$utils.navigateTo('/pages_order/mine/address')">
<image class="image" src="/static/image/center/7.png" mode=""></image>
<text class="grid-text">地址管理</text>
</uv-grid-item>
<uv-grid-item @click="$utils.redirectTo('/index/order')">
<image class="image" src="/static/image/center/8.png" mode=""></image>
<text class="grid-text">订单管理</text>
</uv-grid-item>
<uv-grid-item @click="$utils.navigateTo('/pages_order/order/refundsOrExchange?index='+0)">
<image class="image" src="/static/image/center/5.png" mode=""></image>
<text class="grid-text">换货</text>
</uv-grid-item>
<uv-grid-item @click="$utils.navigateTo('/pages_order/order/refundsOrExchange?index='+1)">
<image class="image" src="/static/image/center/7.png" mode=""></image>
<text class="grid-text">退货</text>
</uv-grid-item>
</uv-grid>
</view>
<view class="line grid">
<uv-grid :col="4" :border="false">
<uv-grid-item @click="contactUs">
<image class="image" src="/static/image/center/9.png" mode=""></image>
<text class="grid-text">联系客服</text>
</uv-grid-item>
<uv-grid-item>
<image class="image" src="/static/image/center/6.png" mode=""></image>
<text class="grid-text">我的租赁</text>
</uv-grid-item>
<uv-grid-item @click="$utils.redirectTo('/index/cart')">
<image class="image" src="/static/image/center/7.png" mode=""></image>
<text class="grid-text">租赁车</text>
</uv-grid-item>
<uv-grid-item
@click="$utils.navigateTo('/pages_order/auth/loginAndRegisterAndForgetPassword?index='+2)">
<image class="image" src="/static/image/center/7.png" mode=""></image>
<text class="grid-text">申请成为水洗店</text>
</uv-grid-item>
</uv-grid>
</view>
<view class="line">
<uv-cell-group>
<!-- 我的收藏 -->
<uv-cell icon="setting-fill" title="我的收藏"
isLink>
<template #icon>
<image src="/static/image/center/1.png"
class="uv-cell-icon"></image>
</template>
</uv-cell>
<!-- 我的预约 -->
<uv-cell icon="setting-fill" title="我的预约"
isLink>
<template #icon>
<image src="/static/image/center/2.png"
class="uv-cell-icon"></image>
</template>
</uv-cell>
<!-- 我的订单 -->
<uv-cell icon="setting-fill" title="我的订单"
@click="$utils.navigateTo('/pages_order/order/order')"
isLink>
<template #icon>
<image src="/static/image/center/3.png"
class="uv-cell-icon"></image>
</template>
</uv-cell>
<!-- 我的地址 -->
<uv-cell icon="setting-fill" title="我的地址"
@click="$utils.navigateTo('/pages_order/mine/address')"
isLink>
<template #icon>
<image src="/static/image/center/1.png"
class="uv-cell-icon"></image>
</template>
</uv-cell>
<!-- 加入志愿者 -->
<uv-cell icon="setting-fill" title="加入志愿者"
isLink>
<template #icon>
<image src="/static/image/center/4.png"
class="uv-cell-icon"></image>
</template>
</uv-cell>
</uv-cell-group>
</view> </view>
<!-- 联系客服弹框 -->
<uv-overlay :show="show" @click="show = false">
<view class="warp">
<view class="rect" @tap.stop>
<view class="title">联系客服</view>
<view class="center">确定拨打客服电话?</view>
<view class="bottom">
<view>
<uv-button type="info" shape="circle" text="取消" :custom-style="customStyle1"
@click="cancle"></uv-button>
</view>
<view>
<uv-button type="info" shape="circle" text="确定" :custom-style="customStyle2"
@click="confirm"></uv-button>
</view>
</view>
</view>
</view>
</uv-overlay>
<tabber select="4" />
<tabber select="2" />
</view> </view>
</template> </template>
<script> <script>
import tabber from '@/components/base/tabbar.vue' import tabber from '@/components/base/tabbar.vue'
import {
mapGetters
} from 'vuex'
import userShopCommission from '@/components/userShop/userShopCommission.vue'
export default { export default {
components: { components: {
tabber, tabber,
userShopCommission,
}, },
computed: { computed: {
...mapGetters(['userShop']),
customStyle1() {
return {
height: '60rpx',
background: '#FFF',
color: '#000000',
fontSize: '36rpx',
borderRadius: '40rpx', //
// nvue
'border-top-right-radius': '40rpx',
'border-bottom-left-radius': '40rpx',
'border-bottom-right-radius': '40rpx',
'width': '150rpx',
}
},
customStyle2() {
return {
height: '60rpx',
background: '#fd5100',
color: '#FFF',
fontSize: '34px',
borderRadius: '40rpx', //
// nvue
'border-top-right-radius': '40rpx',
'border-bottom-left-radius': '40rpx',
'border-bottom-right-radius': '40rpx',
'width': '150rpx',
}
}
}, },
data() { data() {
return { return {
@ -195,32 +92,6 @@
}, },
methods: { methods: {
headBtn() {
let self = this
uni.showModal({
title: '演示切换角色之后的效果',
success(res) {
if (res.confirm) {
self.$store.state.shop = !self.$store.state.shop
}
}
})
},
//
contactUs() {
this.show = true
},
confirm() {
this.show = false
},
cancle() {
this.show = false
},
} }
} }
</script> </script>
@ -228,50 +99,25 @@
<style scoped lang="scss"> <style scoped lang="scss">
.page { .page {
padding-bottom: 200rpx; padding-bottom: 200rpx;
.warp {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
.rect {
width: 600rpx;
height: 300rpx;
min-height: 100vh;
background-color: #FFFDF6;
.line{
margin: 30rpx;
background-color: #fff; background-color: #fff;
border-radius: 20rpx;
border-radius: 30rpx;
overflow: hidden; overflow: hidden;
.title {
padding: 10rpx 0 0 15rpx;
background-color: #fd5100;
color: #FFF;
text-align: left;
width: 100%;
height: 18%;
font-size: 36rpx;
}
.center {
height: 40%;
display: flex;
justify-content: center;
align-items: center;
font-size: 36rpx;
box-shadow: 0 0 10rpx 10rpx #00000007;
.uv-cell-icon{
width: 60rpx;
height: 60rpx;
margin-right: 20rpx;
} }
.bottom {
display: flex;
justify-content: center;
gap: 50rpx;
/deep/ .uv-cell__body{
padding: 40rpx 30rpx;
} }
} }
} }
image { image {
width: 100%; width: 100%;
height: 100%; height: 100%;
@ -279,11 +125,11 @@
.head { .head {
display: flex; display: flex;
background-color: #fff;
padding: 40rpx 20rpx;
background-color: $uni-color;
padding: 60rpx 40rpx;
align-items: center; align-items: center;
position: relative; position: relative;
color: #fff;
.headImage { .headImage {
width: 120rpx; width: 120rpx;
height: 120rpx; height: 120rpx;
@ -297,37 +143,16 @@
.info { .info {
font-size: 28rpx; font-size: 28rpx;
.vip {
background-color: #FCCC92;
color: #FA6239;
width: 100rpx;
display: flex;
justify-content: center;
align-items: center;
height: 40rpx;
border-radius: 20rpx;
margin-top: 20rpx;
}
.name { .name {
font-size: 32rpx; font-size: 32rpx;
margin-bottom: 10rpx;
} }
.tips { .tips {
font-size: 26rpx; font-size: 26rpx;
color: #ABABAB;
} }
} }
.headBtn {
margin-left: auto;
padding: 15rpx 20rpx;
background-color: $uni-color;
color: #fff;
border-radius: 20rpx;
margin-top: 50rpx;
}
.setting { .setting {
position: absolute; position: absolute;
right: 50rpx; right: 50rpx;
@ -335,87 +160,5 @@
} }
} }
.userShop {
.userList {
.title {
font-size: 32rpx;
font-weight: 900;
padding: 20rpx;
}
.list {
display: flex;
flex-wrap: wrap;
.item {
width: 270rpx;
margin: 20rpx;
display: flex;
flex-direction: column;
padding: 40rpx 30rpx;
background-color: #fff;
border-radius: 30rpx;
line-height: 60rpx;
.name {}
.num {
color: $uni-color;
font-weight: 600;
font-size: 28rpx;
}
}
}
}
}
.user {
.line {
display: flex;
background-color: #fff;
margin-top: 20rpx;
padding: 20rpx 0;
.item {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
padding: 20rpx 0;
&:nth-child(1) {
border-right: 1px solid #00000013;
}
.image {
width: 100rpx;
height: 70rpx;
margin-right: 20rpx;
}
}
}
.grid {
flex-direction: column;
font-size: 26rpx;
padding: 20rpx;
.title {
margin-bottom: 30rpx;
font-size: 28rpx;
font-weight: 600;
}
.image {
width: 70rpx;
height: 70rpx;
margin-bottom: 10rpx;
}
text {
text-align: center;
width: 120rpx;
}
}
}
</style> </style>

+ 0
- 360
pages/index/index.vue View File

@ -1,112 +1,6 @@
<template> <template>
<view class="page"> <view class="page">
<navbar/>
<view class="search">
<view @click="showSelectArea" class="left-area">
<image src="@/static/image/home/address-icon.png"></image>
<view class="area">{{ area }}</view>
<image src="@/static/image/home/arrow-icon.png" mode="aspectFit"></image>
<view class="parting-line">|</view>
</view>
<view class="center-area">
<image
style="margin-right: 20rpx;"
src="@/static/image/home/search-icon.png"></image>
<input v-model="queryParams.title"
placeholder="桌布租赁" />
</view>
<!-- <view class="right-area">
<view @click="searchAddress" class="search-button">
搜索
</view>
</view> -->
</view>
<view class="swipe">
<uv-swiper
:list="bannerList"
indicator
height="320rpx"
keyName="url"></uv-swiper>
</view>
<!-- 水洗店 -->
<view class="userShop"
v-if="userShop">
<view class="list">
<view class="item"
v-for="(item, index) in 4"
:key="index">
<view class="">
<view class="">
我的客户
</view>
<view class="num">
{{ 30 }}
</view>
</view>
<view class="">
<image :src="`/static/image/home/${index}.png`" mode=""></image>
</view>
</view>
</view>
</view>
<!-- 酒店 -->
<view class="user"
v-else>
<uv-notice-bar
fontSize="28rpx"
:text="text"></uv-notice-bar>
<view class="shop">
<image
class="image"
src="https://img95.699pic.com/photo/50058/1378.jpg_wh860.jpg"
mode=""></image>
<view class="shopInfo">
<view class="title">
HOUS水洗店
</view>
<view class="tags">
<view class="tag">
桌布水洗
</view>
<view class="tag">
桌布租赁
</view>
</view>
<view class="time">
9:00-18:00
</view>
<view class="address">
长沙市天心区桂花坪街道231号
</view>
</view>
<view class="btns">
<view class="btn"
@click="$utils.navigateTo('/pages_order/auth/wxUserInfo')">
我要水洗
</view>
</view>
<view class="tips">
关联门店主信门店
</view>
</view>
<view class="productList">
<productList/>
</view>
</view>
<!-- <selectArea ref="selectArea" @close="closeAreaPro" @select="selectArea"></selectArea> -->
<PrivacyAgreementPoup/> <PrivacyAgreementPoup/>
@ -116,21 +10,15 @@
<script> <script>
import PrivacyAgreementPoup from '@/components/config/PrivacyAgreementPoup.vue' import PrivacyAgreementPoup from '@/components/config/PrivacyAgreementPoup.vue'
import Position from '@/utils/position.js'
import tabber from '@/components/base/tabbar.vue' import tabber from '@/components/base/tabbar.vue'
import productList from '@/components/user/productList.vue'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
// import selectArea from '../../components/selectArea.vue';
export default { export default {
components : { components : {
tabber, tabber,
productList,
PrivacyAgreementPoup, PrivacyAgreementPoup,
}, },
data() { data() {
return { return {
area: '长沙',
text : '长沙市刘师傅在服务过程中客户投诉“服务过程中有不文明的行为”.....',
queryParams: { queryParams: {
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
@ -151,263 +39,15 @@
} }
}, },
computed : { computed : {
...mapGetters(['userShop']),
}, },
methods: { methods: {
//
showSelectArea() {
// this.$refs.selectArea.open()
},
//
searchAddress() {
Position.getLocation(res => {
Position.selectAddress(res.longitude, res.latitude, success => {
let address = this.extractProvinceAndCity(success)
this.queryParams.title = address.city
})
})
},
//()
extractProvinceAndCity(res) { //()
if (!res.address && res.name) { //
return {
province: '',
city: res.name
};
}
if (res.address) { //
// 使
const regex = /(?<province>[\u4e00-\u9fa5]+?省)(?<city>[\u4e00-\u9fa5]+?(?:市|自治州|盟|地区))/;
const match = res.address.match(regex);
if (match) { //
return {
province: match.groups.province,
city: match.groups.city
};
}
}
return { //
province: '',
city: ''
}
},
} }
} }
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.search {
height: 82rpx;
width: 710rpx;
background: #FFFFFF;
margin: 20rpx auto;
border-radius: 41rpx;
box-sizing: border-box;
padding: 0 15rpx;
display: flex;
align-items: center;
// justify-content: space-between;
.left-area,
.center-area {
display: flex;
align-items: center;
}
.left-area {
max-width: 160rpx;
image {
flex-shrink: 0;
width: 26rpx;
height: 26rpx;
}
.area {
font-size: 24rpx;
display: -webkit-box;
-webkit-line-clamp: 2;
/* 限制显示两行 */
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
color: #292929;
}
.parting-line {
flex-shrink: 0;
font-size: 26rpx;
color: #ccc;
margin: 0rpx 5rpx;
}
}
.center-area {
display: flex;
flex-wrap: nowrap;
align-items: center;
width: calc(100% - 290rpx);
margin-left: 30rpx;
image {
width: 26rpx;
height: 26rpx;
}
.van-field {
background-color: transparent;
box-sizing: border-box;
height: 82rpx;
line-height: 82rpx;
width: calc(100% - 30rpx);
padding: 0rpx 10rpx 0rpx 0rpx;
input {
height: 82rpx;
font-size: 60rpx;
}
}
}
.right-area {
.search-button {
background: #60BDA2;
height: 60rpx;
width: 130rpx;
font-size: 26rpx;
border-radius: 35rpx;
color: white;
display: flex;
align-items: center;
justify-content: center;
}
}
}
.swipe{
overflow: hidden;
border-radius: 20rpx;
margin: 20rpx;
}
.page{ .page{
padding-bottom: 200rpx;
& /deep/ .uv-icon__icon{
font-size: 30rpx !important;
}
//
.userShop{
.list{
display: flex;
flex-wrap: wrap;
.item{
display: flex;
justify-content: center;
align-items: center;
width: 330rpx;
margin: 20rpx;
padding: 30rpx 0;
color: #FFFFFF;
line-height: 50rpx;
border-radius: 20rpx;
font-size: 28rpx;
.num{
font-size: 38rpx;
font-weight: 900;
}
image{
width: 110rpx;
height: 110rpx;
margin-left: 20rpx;
}
&:nth-child(1){
background: #F07A77;
}
&:nth-child(2){
background: #F48B4E;
}
&:nth-child(3){
background: #6487E1;
}
&:nth-child(4){
background: #61B7E6;
}
}
}
}
//
.user{
padding: 20rpx;
.shop{
position: relative;
display: flex;
align-items: center;
justify-content: center;
background-color: #fff;
margin-top: 20rpx;
border-radius: 20rpx;
padding: 20rpx;
overflow: hidden;
.image{
width: 180rpx;
height: 180rpx;
margin-right: 20rpx;
border-radius: 20rpx;
}
.shopInfo{
font-size: 22rpx;
.title{
font-size: 30rpx;
}
.tags{
display: flex;
.tag{
padding: 4rpx 6rpx;
border: 1rpx solid #FFAC6E;
color: #FFAC6E;
margin-right: 10rpx;
margin-top: 10rpx;
font-size: 18rpx;
}
}
.time{
margin-top: 10rpx;
display: flex;
}
.address{
margin-top: 10rpx;
display: flex;
}
}
.btns{
margin-left: auto;
display: flex;
align-items: center;
justify-content: center;
.btn{
background-color: $uni-color;
color: #fff;
box-shadow: 0 0 5rpx 5rpx #FFAC6E;
padding: 10rpx 20rpx;
flex-shrink: 0;
border-radius: 35rpx;
}
}
.tips{
position: absolute;
top: 0;
right: 0;
font-size: 24rpx;
color: #FFAC6E;
background-color: #FEF5EE;
padding: 10rpx 20rpx;
border-radius: 10rpx;
}
}
}
} }
</style> </style>

+ 27
- 0
pages/index/tourGuide.vue View File

@ -0,0 +1,27 @@
<template>
<view class="page">
<tabber select="1" />
</view>
</template>
<script>
import tabber from '@/components/base/tabbar.vue'
export default {
components : {
tabber,
},
data() {
return {
}
},
methods: {
}
}
</script>
<style scoped lang="scss">
</style>

+ 1
- 1
pages_order/auth/loginAndRegisterAndForgetPassword.vue View File

@ -11,7 +11,7 @@
<!-- 头像 --> <!-- 头像 -->
<view class="userIamge"> <view class="userIamge">
<view> <view>
<img src="../../static/image/center/11.svg" alt="" style="width: 100%;height: 100%;">
<img src="/static/image/center/11.svg" alt="" style="width: 100%;height: 100%;">
</view> </view>
</view> </view>


pages/index/cart.vue → pages_order/mine/cart.vue View File


pages/index/order.vue → pages_order/order/order.vue View File

@ -3,14 +3,19 @@
<navbar <navbar
title="订单中心" title="订单中心"
leftClick
@leftClick="$utils.navigateBack"
/> />
<uv-tabs :list="tabs"
:activeStyle="{color : '#FD5100', fontWeight : 600}"
lineColor="#FD5100"
lineHeight="8rpx"
lineWidth="50rpx"
@click="clickTabs"></uv-tabs>
<view class=""
style="background-color: #fff;">
<uv-tabs :list="tabs"
lineColor="#B12026"
lineHeight="8rpx"
lineWidth="50rpx"
:scrollable="false"
@click="clickTabs"></uv-tabs>
</view>
<view v-if="orderList.length > 0" class="list"> <view v-if="orderList.length > 0" class="list">
<view class="item" <view class="item"
@ -75,38 +80,29 @@
</view> </view>
</view> </view>
<tabber select="2"/>
</view> </view>
</template> </template>
<script> <script>
import tabber from '@/components/base/tabbar.vue'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
export default { export default {
components : { components : {
tabber,
}, },
computed : { computed : {
...mapGetters(['userShop']), ...mapGetters(['userShop']),
}, },
data() { data() {
return { return {
tabs: [{
name: '全部'
},
tabs: [
{ {
name: '租赁押金'
name: '遗产路径'
}, },
{ {
name: '水洗租赁'
name: '我要研学'
}, },
{ {
name: '破损换货'
name: '文创好物'
}, },
{
name: '退货退款'
}
], ],
queryParams: { queryParams: {
pageNo: 1, pageNo: 1,

BIN
static/image/center/1.png View File

Before After
Width: 51  |  Height: 49  |  Size: 1.2 KiB Width: 60  |  Height: 60  |  Size: 5.1 KiB

BIN
static/image/center/10.png View File

Before After
Width: 355  |  Height: 158  |  Size: 45 KiB

BIN
static/image/center/2.png View File

Before After
Width: 112  |  Height: 126  |  Size: 6.1 KiB Width: 60  |  Height: 60  |  Size: 5.2 KiB

BIN
static/image/center/3.png View File

Before After
Width: 120  |  Height: 120  |  Size: 5.9 KiB Width: 60  |  Height: 60  |  Size: 5.5 KiB

BIN
static/image/center/4.png View File

Before After
Width: 52  |  Height: 49  |  Size: 1.7 KiB Width: 60  |  Height: 60  |  Size: 5.6 KiB

BIN
static/image/center/5.png View File

Before After
Width: 64  |  Height: 64  |  Size: 2.8 KiB

BIN
static/image/center/6.png View File

Before After
Width: 63  |  Height: 50  |  Size: 2.1 KiB

BIN
static/image/center/7.png View File

Before After
Width: 64  |  Height: 64  |  Size: 2.4 KiB

BIN
static/image/center/8.png View File

Before After
Width: 64  |  Height: 64  |  Size: 2.5 KiB

BIN
static/image/center/9.png View File

Before After
Width: 56  |  Height: 48  |  Size: 2.1 KiB

BIN
static/image/tabbar/cart-a.png View File

Before After
Width: 40  |  Height: 40  |  Size: 958 B

BIN
static/image/tabbar/cart.png View File

Before After
Width: 40  |  Height: 40  |  Size: 953 B

BIN
static/image/tabbar/category-a.png View File

Before After
Width: 40  |  Height: 40  |  Size: 1.1 KiB

BIN
static/image/tabbar/category.png View File

Before After
Width: 40  |  Height: 40  |  Size: 1.2 KiB

BIN
static/image/tabbar/center-a.png View File

Before After
Width: 40  |  Height: 40  |  Size: 915 B Width: 40  |  Height: 40  |  Size: 972 B

BIN
static/image/tabbar/home-a.png View File

Before After
Width: 47  |  Height: 43  |  Size: 2.2 KiB Width: 47  |  Height: 43  |  Size: 2.3 KiB

BIN
static/image/tabbar/order-a.png View File

Before After
Width: 40  |  Height: 40  |  Size: 691 B

BIN
static/image/tabbar/order.png View File

Before After
Width: 40  |  Height: 40  |  Size: 736 B

+ 1
- 1
uni.scss View File

@ -12,7 +12,7 @@
* 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量同时无需 import 这个文件 * 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量同时无需 import 这个文件
*/ */
/* 颜色变量 */ /* 颜色变量 */
$uni-color: #FD5100;
$uni-color: #B12026;
/* 行为相关颜色 */ /* 行为相关颜色 */
$uni-color-primary: #007aff; $uni-color-primary: #007aff;


Loading…
Cancel
Save