Merge branch 'dev' into test
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2024-05-20 18:18:58 +08:00
25 changed files with 330 additions and 345 deletions

View File

@@ -51,7 +51,7 @@ const config = {
prebundle: {enable: false},
},
cache: {
enable: false, // Webpack 持久化缓存配置建议开启。默认配置请参考https://docs.taro.zone/docs/config-detail#cache
enable: true, // Webpack 持久化缓存配置建议开启。默认配置请参考https://docs.taro.zone/docs/config-detail#cache
},
sass: {
data: `@import "@nutui/nutui-taro/dist/styles/variables.scss";`,

View File

@@ -92,26 +92,26 @@ export default defineAppConfig({
list: [
{
pagePath: 'pages/index/index',
iconPath: 'static/tabbar/1-01.png',
selectedIconPath: 'static/tabbar/1-02.png',
iconPath: 'static/tabbar/1-0.png',
selectedIconPath: 'static/tabbar/1-1.png',
text: '首页',
},
{
pagePath: 'pages/game/gamehome/index',
iconPath: 'static/tabbar/2-01.png',
selectedIconPath: 'static/tabbar/2-02.png',
iconPath: 'static/tabbar/2-0.png',
selectedIconPath: 'static/tabbar/2-1.png',
text: '游戏',
},
{
pagePath: 'pages/cart/index',
iconPath: 'static/tabbar/3-01.png',
selectedIconPath: 'static/tabbar/3-02.png',
iconPath: 'static/tabbar/3-0.png',
selectedIconPath: 'static/tabbar/3-1.png',
text: '购物车',
},
{
pagePath: 'pages/user/index',
iconPath: 'static/tabbar/4-01.png',
selectedIconPath: 'static/tabbar/4-02.png',
iconPath: 'static/tabbar/4-0.png',
selectedIconPath: 'static/tabbar/4-1.png',
text: '我的',
},
],

View File

@@ -58,7 +58,7 @@ page {
}
.card {
width: 80%;
width: 690px;
height: 300px;
box-sizing: border-box;
background-color: #fff;

View File

@@ -73,10 +73,10 @@ Taro.useLoad(options => {
const goodInfo = ref<any>({});
const getData = async (options: any) => {
const merInfo = Taro.getStorageSync('mer_info');
const merInfo = Taro.getStorageSync("userInfo");
const res = await getActiveVerifyList({
oid: options.oid,
bid: merInfo.bid,
bid: merInfo.data.bid,
});
if (!res.data.data.oid) {
Taro.showToast({

View File

@@ -164,13 +164,13 @@ Taro.useReachBottom(() => {
</view>
</view>
<view class="formCard">
<view class="flex justify-between">
<view class="flex justify-between mb-[25px]">
<text>积分提现</text>
<view class="flex items-center" @click="visible1 = true">
<image
class="w-[25px] h-[25px]"
class="w-[26px] h-[26px]"
src="http://p1.meituan.net/csc/5437a800f4ed4a49f14984494c1c3077994.png"></image>
<view class="text-[#EC4443] text-[20px] ml-1">提现疑问</view>
<view class="text-[#EC4443] text-[26px] ml-1">提现疑问</view>
</view>
</view>
<nut-form ref="formRef" :model-value="basicData" :rules="rules">
@@ -182,7 +182,7 @@ Taro.useReachBottom(() => {
type="text">
<template #right>
<text
class="text-[#EC4443] text-[25px]"
class="text-[#EC4443] text-[26px]"
@tap="basicData.num = row.toString()"
>全部</text
>

View File

@@ -92,7 +92,7 @@ page {
height: auto;
background-color: #fff;
border-radius: 20px;
padding: 32px 26px;
padding: 32px 0;
.item {
display: flex;
@@ -101,8 +101,8 @@ page {
.icon {
background-size: 100% 100%;
width: 80px;
height: 80px;
width: 90px;
height: 90px;
}
.text {

View File

@@ -105,18 +105,18 @@ const getUserLocal = async () => {
const getNavLists = async () => {
navigationList.value = [
{
type: 1,
icon: '//p0.meituan.net/csc/5c770748f0028c63741c5ec14df3cc386715.png',
url: '',
name: '活动商家',
},
{
type: 1,
icon: '//p0.meituan.net/csc/4868c06b99008ff7d5f81e6514858c8a7950.png',
url: '',
name: '兑换商家',
},
// {
// type: 1,
// icon: '//p0.meituan.net/csc/5c770748f0028c63741c5ec14df3cc386715.png',
// url: '',
// name: '活动商家',
// },
// {
// type: 1,
// icon: '//p0.meituan.net/csc/4868c06b99008ff7d5f81e6514858c8a7950.png',
// url: '',
// name: '兑换商家',
// },
{
type: 1,
icon: '//p0.meituan.net/csc/f33ad2443a67e9f3474a1d5fd9d529db7504.png',

141
src/pages/user/index.scss Normal file
View File

@@ -0,0 +1,141 @@
.appUser {
box-sizing: border-box;
background-color: #f8f8f8;
height: 100%;
background-image: url('http://p0.meituan.net/csc/f44bb11463e3c538c307d7ce4b303bec33520.png');
background-size: 100% 500px;
background-repeat: no-repeat;
position: relative;
padding-top: 180px;
color: var(--nut-grid-item-text-color, var(--nut-title-color2, #666666));
}
.user-center-card__header__avatar {
img {
border-radius: 50%;
}
}
.user-center-card__header__info__phone {
color: #737373;
font-size: 25px;
}
.user-center-card__header__transparent {
padding-left: 30px;
background-color: transparent;
display: flex;
align-items: center;
box-sizing: border-box;
text-align: left;
padding-right: 20px;
.user-center-card__header__info {
margin-left: 20px;
width: 400px;
color: #333;
font-weight: bolder;
}
}
.cell-card {
box-sizing: border-box;
background-color: #fff;
padding: 30px;
.center {
display: flex;
justify-content: space-between;
color: #666;
padding: 0 30px;
.center-t {
margin-top: 30px;
display: flex;
flex-direction: column;
align-items: center;
.center-text {
margin-top: 15px;
}
}
}
}
.user-center {
background-color: #fff;
margin: 20px 0px;
padding: 20px;
-nut-grid-item-text-color: #333;
.box {
margin-top: 30px;
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-gap: 20px 100px;
box-sizing: border-box;
line-height: 1.5;
.box-mini {
display: flex;
box-sizing: border-box;
flex-direction: column;
align-items: center;
.label {
font-size: 25px;
margin-top: 10px;
color: #333333;
}
image {
width: 80px;
height: 80px;
}
}
}
}
.mer-box {
background-color: #fff;
margin: 20px;
width: 100%;
}
.user-acc {
background-image: url('http://p0.meituan.net/csc/a74c44a7af541f01efbcc6fb023e6e09132712.png');
background-size: 100% 100%;
background-repeat: no-repeat;
width: 90%;
height: 150px;
padding: 0 100px;
margin: 50px auto 0 auto;
.line {
width: 1px;
height: 50px;
background-color: #ffc300;
margin: 0 100px;
}
}
.kf-btn {
padding: 0 !important;
margin: 0 !important;
background: transparent;
-webkit-tap-highlight-color: transparent;
overflow: hidden;
font-size: 25px;
color: #333333;
line-height: 1;
.IconFont {
margin-bottom: 13px;
}
&::after {
border: none;
background: transparent;
line-height: 1;
}
}

View File

@@ -43,7 +43,7 @@
</view>
</view>
</view>
<view class="user-acc flex items-center text-center justify-evenly px-10">
<view class="user-acc flex items-center text-center justify-between">
<view>
<view class="text-[#ffc300] text-[40px] font-bold">{{
userInfo.data?.pulse || 0
@@ -58,124 +58,120 @@
<view class="text-[#CFAA32] text-[28px]">积分</view>
</view>
</view>
<view class="container">
<!--我的订单-->
<view class="border-box bg-[#fff] p-[20px]">
<view class="flex justify-between items-center">
<view class="text-[#333333]">我的订单</view>
<view
class="flex text-[#c9c9c9] items-center"
@click="toOrderList(0)">
<view class="text-[25px]">查看全部</view>
<ArrowRight size="10" />
</view>
</view>
<view class="flex justify-between text-[#666] px-[20px]">
<view
class="mt-[30px] flex flex-col items-center"
@click="toOrderList(1)">
<IconFont
name="http://p0.meituan.net/csc/9943f6c938fc0e310141a2b99d5bde6617483.png"
size="42" />
<view class="mt-[15px] text-[25px] text-[#333333]">待付款</view>
</view>
<view
class="mt-[30px] flex flex-col items-center"
@click="toOrderList(2)">
<IconFont
name="http://p0.meituan.net/csc/5306d094d7b4b61848dd21c86b693a9515523.png"
size="42" />
<view class="mt-[15px] text-[25px] text-[#333333]">待使用</view>
</view>
<view
class="mt-[30px] flex flex-col items-center"
@click="toOrderList(3)">
<IconFont
name="http://p0.meituan.net/csc/32ea9bbf51e3bbb0cbd75bc0fea97ca815779.png"
size="42" />
<view class="mt-[15px] text-[25px] text-[#333333]">已使用</view>
</view>
<view
class="mt-[30px] flex flex-col items-center"
@click="toOrderList(4)">
<IconFont
name="http://p0.meituan.net/csc/2e0dee89e9a3e3f2e7bf65db355fa11c11630.png"
size="42" />
<view class="mt-[15px] text-[25px] text-[#333333]">已失效</view>
</view>
<!--我的订单-->
<view class="border-box bg-[#fff] p-[20px]">
<view class="flex justify-between items-center mt-2">
<view class="text-[#333333] text-[32px]">我的订单</view>
<view class="flex text-[#c9c9c9] items-center" @click="toOrderList(0)">
<view class="text-[26px]">查看全部</view>
<ArrowRight size="12" />
</view>
</view>
<view class="flex justify-between text-[#666] px-[20px]">
<view
class="mt-[30px] flex flex-col items-center"
@click="toOrderList(1)">
<IconFont
name="http://p0.meituan.net/csc/9943f6c938fc0e310141a2b99d5bde6617483.png"
size="42" />
<view class="mt-[15px] text-[25px] text-[#333333]">待付款</view>
</view>
<view
class="mt-[30px] flex flex-col items-center"
@click="toOrderList(2)">
<IconFont
name="http://p0.meituan.net/csc/5306d094d7b4b61848dd21c86b693a9515523.png"
size="42" />
<view class="mt-[15px] text-[25px] text-[#333333]">待使用</view>
</view>
<view
class="mt-[30px] flex flex-col items-center"
@click="toOrderList(3)">
<IconFont
name="http://p0.meituan.net/csc/32ea9bbf51e3bbb0cbd75bc0fea97ca815779.png"
size="42" />
<view class="mt-[15px] text-[25px] text-[#333333]">已使用</view>
</view>
<view
class="mt-[30px] flex flex-col items-center"
@click="toOrderList(4)">
<IconFont
name="http://p0.meituan.net/csc/2e0dee89e9a3e3f2e7bf65db355fa11c11630.png"
size="42" />
<view class="mt-[15px] text-[25px] text-[#333333]">已失效</view>
</view>
</view>
</view>
<!-- 我的服务 -->
<view class="user-center" v-if="isLogin">
<view class="text-[#333333]">我的服务</view>
<view class="box">
<view v-for="(item, idx) in userMenuList" :key="idx">
<view
v-if="item.type !== 333"
class="box-mini"
@click="toPage(item.url)">
<IconFont size="42" :name="item.icon"></IconFont>
<view class="label">{{ item.label }}</view>
</view>
<button v-else class="kf-btn" open-type="contact">
<IconFont class="IconFont" size="42" :name="item.icon"></IconFont>
<view class="label">{{ item.label }}</view>
</button>
<!-- 我的服务 -->
<view class="user-center" v-if="isLogin">
<view class="text-[#333333] text-[32px] mt-2">我的服务</view>
<view class="box">
<view v-for="(item, idx) in userMenuList" :key="idx">
<view
v-if="item.type !== 333"
class="box-mini"
@click="toPage(item.url)">
<IconFont size="42" :name="item.icon"></IconFont>
<view class="label">{{ item.label }}</view>
</view>
<button v-else class="kf-btn" open-type="contact">
<IconFont class="IconFont" size="42" :name="item.icon"></IconFont>
<view class="label">{{ item.label }}</view>
</button>
</view>
</view>
</view>
<!-- 商家管理 -->
<view
class="user-center"
v-if="userInfo.data?.bid && userInfo.store_status === 1">
<view class="text-[#333333]">商家服务</view>
<view class="box">
<view
v-if="userInfo.data.permission.dd"
class="box-mini"
@click="toPage('/pages/admin/add_order/index')">
<IconFont
size="42"
name="http://p0.meituan.net/csc/72a389ac6a441061fd534b96644c431b7839.png"></IconFont>
<view class="label">后结点单</view>
</view>
<view
v-if="userInfo.data.permission.hx"
class="box-mini"
@click="toPage('/pages/admin/verify/index')">
<IconFont
size="42"
name="http://p1.meituan.net/csc/c236a8b7a73178da25218e1fb59a96f06610.png"></IconFont>
<view class="label">订单核销</view>
</view>
<view
v-if="userInfo.data.permission.tj"
class="box-mini"
@click="toPage('/pages/admin/order_manage/index')">
<IconFont
size="42"
name="http://p0.meituan.net/csc/bd9aca457a109b4d69a692a9109a73ed9045.png"></IconFont>
<view class="label">订单统计</view>
</view>
<view
v-if="userInfo.data.permission.tx"
class="box-mini"
@click="toPage('/pages/admin/withdrawal/index')">
<IconFont
size="42"
name="http://p0.meituan.net/csc/f85d7dc1bf9eda8977e9089b260a586b7440.png"></IconFont>
<view class="label">收益提现</view>
</view>
<!-- 商家管理 -->
<view
class="user-center"
v-if="userInfo.data?.bid && userInfo.store_status === 1">
<view class="text-[#333333] text-[32px] mt-2">商家服务</view>
<view class="box">
<view
v-if="userInfo.data.permission.dd"
class="box-mini"
@click="toPage('/pages/admin/add_order/index')">
<IconFont
size="42"
name="http://p0.meituan.net/csc/72a389ac6a441061fd534b96644c431b7839.png"></IconFont>
<view class="label">后结点单</view>
</view>
<view
v-if="userInfo.data.permission.hx"
class="box-mini"
@click="toPage('/pages/admin/verify/index')">
<IconFont
size="42"
name="http://p1.meituan.net/csc/c236a8b7a73178da25218e1fb59a96f06610.png"></IconFont>
<view class="label">订单核销</view>
</view>
<view
v-if="userInfo.data.permission.tj"
class="box-mini"
@click="toPage('/pages/admin/order_manage/index')">
<IconFont
size="42"
name="http://p0.meituan.net/csc/bd9aca457a109b4d69a692a9109a73ed9045.png"></IconFont>
<view class="label">订单统计</view>
</view>
<view
v-if="userInfo.data.permission.tx"
class="box-mini"
@click="toPage('/pages/admin/withdrawal/index')">
<IconFont
size="42"
name="http://p0.meituan.net/csc/f85d7dc1bf9eda8977e9089b260a586b7440.png"></IconFont>
<view class="label">收益提现</view>
</view>
</view>
</view>
<!-- 版权 -->
<view class="text-[#999999] mt-5 text-[20px] text-center">
<view>鑫瓴科技版权所有</view>
<view>v4.0.0</view>
</view>
<!-- 版权 -->
<view class="text-[#999999] mt-5 text-[20px] text-center">
<view>鑫瓴科技版权所有</view>
<view>v4.0.0</view>
</view>
<!-- 登录 -->
<Auth
@@ -309,7 +305,7 @@ const userMenuList = ref([
{
label: '设置',
url: '/pages/users/setting/index',
icon: 'http://p0.meituan.net/csc/333f2ec6a76c1fb2e442d277f8b99d5e2853.png',
icon: 'http://p0.meituan.net/csc/1d8e6b328d384ff042c282976b82feec6005.png',
},
]);
@@ -351,150 +347,5 @@ const scanCode = () => {
</script>
<style lang="scss">
.appUser {
box-sizing: border-box;
background-color: #f8f8f8;
height: 100%;
background-image: url('http://p0.meituan.net/csc/f44bb11463e3c538c307d7ce4b303bec33520.png');
background-size: 100% 500px;
background-repeat: no-repeat;
position: relative;
padding-top: 180px;
color: var(--nut-grid-item-text-color, var(--nut-title-color2, #666666));
}
.user-center-card__header__avatar {
img {
border-radius: 50%;
}
}
.user-center-card__header__info__phone {
color: #737373;
font-size: 25px;
}
.user-center-card__header__transparent {
padding-left: 30px;
background-color: transparent;
display: flex;
align-items: center;
box-sizing: border-box;
text-align: left;
padding-right: 20px;
.user-center-card__header__info {
margin-left: 20px;
width: 400px;
color: #333;
font-weight: bolder;
}
}
.container {
position: absolute;
top: 500px;
}
.cell-card {
box-sizing: border-box;
background-color: #fff;
padding: 30px;
.center {
display: flex;
justify-content: space-between;
color: #666;
padding: 0 30px;
.center-t {
margin-top: 30px;
display: flex;
flex-direction: column;
align-items: center;
.center-text {
margin-top: 15px;
}
}
}
}
.user-center {
background-color: #fff;
margin: 20px 0px;
padding: 20px;
-nut-grid-item-text-color: #333;
.box {
margin-top: 30px;
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-gap: 20px 100px;
box-sizing: border-box;
line-height: 1.5;
.box-mini {
display: flex;
box-sizing: border-box;
flex-direction: column;
align-items: center;
.label {
font-size: 25px;
margin-top: 10px;
color: #333333;
}
image {
width: 80px;
height: 80px;
}
}
}
}
.mer-box {
background-color: #fff;
margin: 20px;
width: 100%;
}
.user-acc {
background-image: url('http://p0.meituan.net/csc/a74c44a7af541f01efbcc6fb023e6e09132712.png');
background-size: 100% 100%;
background-repeat: no-repeat;
width: 95%;
height: 150px;
margin: 60px auto;
.line {
width: 1px;
height: 50px;
background-color: #ffc300;
margin: 0 100px;
}
}
.kf-btn {
padding: 0 !important;
margin: 0 !important;
background: transparent;
-webkit-tap-highlight-color: transparent;
overflow: hidden;
font-size: 25px;
color: #333333;
line-height: 1;
.IconFont {
margin-bottom: 13px;
}
&::after {
border: none;
background: transparent;
line-height: 1;
}
}
@import './index.scss';
</style>

View File

@@ -20,14 +20,14 @@ const tabsList = ref([
title: '豆子明细',
value: 2,
},
{
title: '活动赠送',
value: 4,
},
{
title: '聚合积分',
value: 5,
},
{
title: '活动赠送',
value: 4,
},
]);
const computerType = computed(() => {
@@ -133,7 +133,7 @@ const closePicker = () => {
</script>
<template>
<view>
<view class="overflow-scroll">
<view class="tabs-box">
<view
class="item"
@@ -170,28 +170,32 @@ const closePicker = () => {
<view v-if="data.length > 0">
<view v-if="tabValue === 1">
<view class="card-list" v-for="(item, index) in data" :key="index">
<view class="left">
<view>订单号: {{ item.oid }}</view>
<text class="jf">{{
<view>
<view class="text-[28px]">订单号: {{ item.oid }}</view>
<view class="text-[#484848] text-[26px] mt-[18px]">{{
dayjs(item.add_time).format('YYYY/MM/DD mm:ss')
}}</text>
}}</view>
</view>
<view class="right">
<view class="flex-1 text-right mt-[18px]">
<view v-if="tabValue === 1" style="color: red"
>-
<text>{{ item.number }}</text>
</view>
<text class="jf">积分余额: {{ item.residue || 0 }}</text>
<text class="text-[#484848]"
>积分余额: {{ item.residue || 0 }}</text
>
</view>
</view>
</view>
<view v-if="tabValue === 3 || tabValue === 5">
<view class="card-list" v-for="(item, index) in data" :key="index">
<view class="left">
<view>订单{{ item.oid }}</view>
<view>时间{{ item.add_time.slice(0, 10) }}</view>
<view>
<view class="text-[28px]">订单{{ item.oid }}</view>
<view class="text-[#484848] text-[26px] mt-[18px]"
>时间{{ item.add_time.slice(0, 10) }}</view
>
</view>
<view class="right">
<view class="flex-1 text-right mt-[18px]">
<view v-if="tabValue === 5" style="color: red"
>-
<text>{{ item.number }}积分</text>
@@ -206,11 +210,13 @@ const closePicker = () => {
</view>
<view v-else-if="tabValue === 2">
<view class="card-list" v-for="(item, index) in data" :key="index">
<view class="left">
<view class="text">订单{{ item.oid }}</view>
<view>时间{{ item.add_time.slice(0, 10) }}</view>
<view>
<view class="text-[28px]">订单{{ item.oid }}</view>
<view class="text-[#484848] text-[26px] mt-[18px]"
>时间{{ item.add_time.slice(0, 10) }}</view
>
</view>
<view class="right">
<view class="flex-1 text-right mt-[18px]">
<view style="color: green"
>+
<text>{{ item.number }}</text>
@@ -221,11 +227,13 @@ const closePicker = () => {
</view>
<view v-else-if="tabValue === 4">
<view class="card-list" v-for="(item, index) in data" :key="index">
<view class="left">
<view class="text">类型{{ computerType(item.type) }}</view>
<view>时间{{ item.add_time.slice(0, 10) }}</view>
<view>
<view class="text-[28px]">类型{{ computerType(item.type) }}</view>
<view class="text-[#484848] text-[26px] mt-[18px]"
>时间{{ item.add_time.slice(0, 10) }}</view
>
</view>
<view class="right">
<view class="flex-1 text-right mt-[18px]">
<view style="color: green"
>+
<text>{{ item.number }}</text>
@@ -257,19 +265,24 @@ const closePicker = () => {
align-items: center;
background-color: #fff;
text-align: center;
flex-wrap: wrap;
padding: 15px;
justify-content: space-evenly;
justify-content: space-between;
overflow-x: scroll;
.item {
padding: 10px 20px;
font-size: 23px;
width: 144px;
min-width: 144px;
height: 60px;
min-height: 60px;
font-size: 26px;
border-radius: 10px;
text-align: center;
line-height: 60px;
margin-left: 25px;
}
}
.card-list {
// margin: 10px 20px;
background-color: #fff;
display: flex;
border-radius: 10px;
@@ -277,27 +290,8 @@ const closePicker = () => {
justify-content: space-between;
align-items: center;
font-size: 25px;
margin-bottom: 25px;
.jf {
color: #484848;
}
.left {
.text {
text-align: left;
font-weight: bolder;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
overflow: hidden;
word-break: break-word;
color: #484848;
}
}
.right {
flex: 1;
text-align: right;
}
}
</style>

View File

@@ -228,7 +228,7 @@ const getTj = async () => {
:key="index"
@click="toDetail(item)">
<view class="top">
<view class="text-[#9C9C9C] text-[25px]">订单号{{ item.oid }}</view>
<view class="text-[#9C9C9C] text-[28px]">订单号{{ item.oid }}</view>
<view
:style="{
color:
@@ -272,8 +272,10 @@ const getTj = async () => {
class="flex justify-between items-center mt-2 mb-2 text-[25px]"
v-if="item.status !== 0"
style="text-align: right">
<text class="text-[#9C9C9C]">{{ item.count }}件商品</text>
<text
<text class="text-[#9C9C9C] text-[28px]"
>{{ item.count }}件商品</text
>
<text class="text-[26px]"
>{{ item.status !== 0 ? '实' : '应' }}付款{{
item.pay_type === 1 ? '(元): ' : '(积分): '
}}{{ item.pay_type === 1 ? item.price : item.exchange }}</text
@@ -352,9 +354,8 @@ page {
text-align: center;
.text {
// margin: 10px 20px;
align-items: center;
font-size: 25px;
font-size: 30px;
}
.line {
@@ -373,7 +374,7 @@ page {
.order-card {
width: 95%;
box-sizing: border-box;
margin: 15px auto;
margin: 20px auto;
background-color: #fff;
border-radius: 10px;
padding: 20px;
@@ -382,7 +383,7 @@ page {
width: 100%;
height: 1px;
background-color: #f5f5f5;
margin: 10px;
margin: 20px auto;
}
.top {
@@ -398,17 +399,15 @@ page {
}
.center {
// margin-bottom: 10px;
.top {
display: flex;
// justify-content: space-between;
align-items: flex-start;
image {
width: 150px;
height: 150px;
border-radius: 15px;
margin-right: 10px;
margin-right: 20px;
}
.title {

BIN
src/static/tabbar/1-0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1002 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

BIN
src/static/tabbar/1-1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 919 B

BIN
src/static/tabbar/2-0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 813 B

View File

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

BIN
src/static/tabbar/3-0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 541 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 899 B

BIN
src/static/tabbar/3-1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 986 B

BIN
src/static/tabbar/4-0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 590 B

View File

Before

Width:  |  Height:  |  Size: 956 B

After

Width:  |  Height:  |  Size: 956 B