From 31a5566dd7ff56a3405ce79a764cd9e3d63154c9 Mon Sep 17 00:00:00 2001
From: li-guang <153605324@qq.com>
Date: Wed, 23 Dec 2020 16:21:11 +0800
Subject: [PATCH] 排行榜
---
hive-app/pages/manager/index.vue | 12
hive-app/static/images/small-medal1.png | 0
hive-app/pages.json | 52 +++++++
hive-app/static/images/medal2.png | 0
hive-app/static/images/ranking.png | 0
hive-app/static/images/small-medal3.png | 0
hive-app/pages/manager/counselorRanking.vue | 147 +++++++++++++++++++++
hive-app/static/images/crown.png | 0
hive-app/static/images/medal1.png | 0
hive-app/static/images/small-medal2.png | 0
hive-app/pages/login/index.vue | 58 ++++++-
hive-app/common/styles/index.css | 3
hive-app/static/images/medal3.png | 0
hive-app/pages/manager/storeRanking.vue | 109 +++++++++++++++
14 files changed, 365 insertions(+), 16 deletions(-)
diff --git a/hive-app/common/styles/index.css b/hive-app/common/styles/index.css
index 6482a8e..d09494f 100644
--- a/hive-app/common/styles/index.css
+++ b/hive-app/common/styles/index.css
@@ -33,6 +33,9 @@
.ml-20{
margin-left: 20px;
}
+.ml-30{
+ margin-left: 30px;
+}
.mr-0{
margin-right: 0;
diff --git a/hive-app/pages.json b/hive-app/pages.json
index e2ab8de..66b9598 100644
--- a/hive-app/pages.json
+++ b/hive-app/pages.json
@@ -286,6 +286,58 @@
"scrollIndicator": "none"
}
}
+ },
+ {
+ "path": "pages/manager/storeRanking",
+ "style": {
+ "navigationBarTitleText": "门店业绩排行榜",
+ "navigationBarBackgroundColor":"#FFFFFF",
+ "navigationBarTextStyle":"black",
+ "app-plus":{
+ "scrollIndicator": "none",
+ "titleNView": {
+ "buttons": [
+ {
+ "text": "\ue6aa",
+ "fontSrc": "/static/iconfont/iconfont.ttf",
+ "fontSize": "16px",
+ "width":"25px",
+ "float":"right"
+ },
+ {
+ "text":"月榜",
+ "fontSize": "14px"
+ }
+ ]
+ }
+ }
+ }
+ },
+ {
+ "path": "pages/manager/counselorRanking",
+ "style": {
+ "navigationBarTitleText": "业绩排行榜",
+ "navigationBarBackgroundColor":"#518EFF",
+ "navigationBarTextStyle":"white",
+ "app-plus":{
+ "scrollIndicator": "none",
+ "titleNView": {
+ "buttons": [
+ {
+ "text": "\ue6aa",
+ "fontSrc": "/static/iconfont/iconfont.ttf",
+ "fontSize": "16px",
+ "width":"25px",
+ "float":"right"
+ },
+ {
+ "text":"月榜",
+ "fontSize": "14px"
+ }
+ ]
+ }
+ }
+ }
}
],
"globalStyle": {
diff --git a/hive-app/pages/login/index.vue b/hive-app/pages/login/index.vue
index 5fd2660..83a4788 100644
--- a/hive-app/pages/login/index.vue
+++ b/hive-app/pages/login/index.vue
@@ -1,9 +1,24 @@
<template>
<!-- 登录 -->
<view>
- <view class="login-box">
- <input v-model="username" placeholder="输入账号" class="login-input" maxlength="60"/>
- <input v-model="password" placeholder="输入密码" class="login-input mt-20" maxlength="60"/>
+ <!-- #ifndef H5 -->
+ <view class="status_bar"></view>
+ <!-- #endif -->
+ <view class="login-header flex flex-v align-center">
+ <view class="login-img"></view>
+ <text class="font-20 white mt-10">蜂巢美业</text>
+ </view>
+ <view class="login-box center">
+ <text class="font-20 blue font-bold">登录</text>
+ <input v-model="username" placeholder="请输入账号" placeholder-class="placeholder" class="input-group-row left mt-20" maxlength="60"/>
+ <view class="input-group-row">
+ <input v-model="password" placeholder="请输入密码" placeholder-class="placeholder" class="input-left" maxlength="60"/>
+ <text class="iconfont iconyanjing font-14 gray"></text>
+ </view>
+ <view class="right mt-5">
+ <text class="font-14 blue">忘记密码?</text>
+ </view>
+
<button :disabled="isDisabled" class="blue-btn mt-20" @click="login">登录</button>
</view>
</view>
@@ -64,19 +79,42 @@
</script>
<style>
- .login-box{
- padding: 30px;
- box-sizing: border-box;
- width: 100%;
- position: absolute;
- bottom: 40px;
+ .status_bar{
+ background: #518EFF;
}
- .login-input{
+ .login-header{
+ background: #518EFF;
+ border-bottom-left-radius: 20px;
+ border-bottom-right-radius: 20px;
+ padding: 60px 0 80px;
+ }
+ .login-img{
+ width: 72px;
+ height: 72px;
+ background: #FFFFFF;
+ border-radius: 8px;
+ }
+ .login-box{
+ background: #FFFFFF;
+ padding:20px;
+ box-sizing: border-box;
+ position: absolute;
+ left: 10px;
+ right: 10px;
+ bottom: 150px;
+ border: 1px solid #EDEAF4;
+ border-radius: 4px;
+ box-shadow:0 6px 6px rgba(237,234,244,0.5);
+ }
+ /* .login-input{
border: 1px solid #ABB1CC;
border-radius: 20px;
text-align: center;
padding: 10px 0;
font-size: 14px;
+ } */
+ .input-left{
+ text-align: left;
}
.blue-btn{
background: #2483ff;
diff --git a/hive-app/pages/manager/counselorRanking.vue b/hive-app/pages/manager/counselorRanking.vue
new file mode 100644
index 0000000..484efd5
--- /dev/null
+++ b/hive-app/pages/manager/counselorRanking.vue
@@ -0,0 +1,147 @@
+<template>
+ <!-- 顾问排行榜 -->
+ <view>
+ <!-- #ifndef H5 -->
+ <view class="status_bar"></view>
+ <!-- #endif -->
+ <view class="drop-down gray font-12" v-show="isShow">
+ <view class="drop-down-row center" v-for="item in Crunchies">
+ <text>{{item}}</text>
+ </view>
+ </view>
+ <view class="header flex justify-around">
+ <view class="flex flex-v align-center mt-20">
+ <view class="img-box flex align-center justify-center">
+ <image class="header-img" src="../../static/images/head-img.jpg"></image>
+ <image class="ranking-img" mode="widthFix" src="../../static/images/small-medal2.png"></image>
+ </view>
+ <text class="font-12 white mt-5">妍妍</text>
+ <text class="font-16 white mt-5">¥9,020</text>
+ </view>
+ <view class="flex flex-v align-center">
+ <view class="img-box flex align-center justify-center">
+ <image class="header-img" src="../../static/images/head-img.jpg"></image>
+ <image class="ranking-img" mode="widthFix" src="../../static/images/small-medal1.png"></image>
+ <image class="crown-img" mode="widthFix" src="../../static/images/crown.png"></image>
+ </view>
+ <text class="font-12 white mt-5">倩倩</text>
+ <text class="font-16 white mt-5">¥12,020</text>
+ </view>
+ <view class="flex flex-v align-center mt-20">
+ <view class="img-box flex align-center justify-center">
+ <image class="header-img" src="../../static/images/head-img.jpg"></image>
+ <image class="ranking-img" mode="widthFix" src="../../static/images/small-medal3.png"></image>
+ </view>
+ <text class="font-12 white mt-5">雯雯</text>
+ <text class="font-16 white mt-5">¥6,020</text>
+ </view>
+ </view>
+ <view class="content">
+ <view class="content-row flex align-center justify-between">
+ <view class="flex align-center">
+ <image class="content-img ml-30" src="../../static/images/head-img.jpg"></image>
+ <view class="ml-20 flex flex-v">
+ <text class="font-14">我的</text>
+ <text class="font-12 gray mt-5">第32名</text>
+ </view>
+ </view>
+ <text>¥6,020</text>
+ </view>
+ </view>
+ <view class="content">
+ <view class="content-row flex align-center justify-between" v-for="item in 4">
+ <view class="flex align-center">
+ <text class="font-16">4</text>
+ <image class="content-img ml-20" src="../../static/images/head-img.jpg"></image>
+ <text class="font-14 ml-20">冯丽妍</text>
+ </view>
+ <text>¥6,020</text>
+ </view>
+ </view>
+ </view>
+</template>
+
+<script>
+ export default{
+ data(){
+ return{
+ isShow:false,
+ Crunchies:['年榜','月榜','日榜']
+ }
+ },
+ methods:{
+ onNavigationBarButtonTap(e) {
+ this.isShow=!this.isShow
+ },
+ }
+ }
+</script>
+
+<style>
+ .header{
+ background: #518EFF;
+ border-bottom-left-radius: 20px;
+ border-bottom-right-radius: 20px;
+ padding: 15px 0;
+ }
+ .img-box{
+ width: 72px;
+ height: 72px;
+ position: relative;
+ border-radius: 50%;
+ background: #a8c6ff;
+ }
+ .header-img{
+ width: 64px;
+ height: 64px;
+ border-radius: 50%;
+ }
+ .ranking-img{
+ width: 18px;
+ position: absolute;
+ bottom: 0;
+ left: 45px;
+ }
+ .crown-img{
+ width: 35px;
+ position: absolute;
+ top: -15px;
+ left: 40px;
+ }
+ .content{
+ border: 1px solid #EDEAF4;
+ border-radius: 4px;
+ box-shadow:0 6px 6px rgba(237,234,244,0.5);
+ margin: 10px;
+ padding: 0 15px;
+ }
+ .content-row{
+ border-bottom: 1px solid #EDEAF4;
+ padding: 10px 0;
+ }
+ .content-row:nth-last-child(1){
+ border: 0;
+ }
+ .content-img{
+ width: 48px;
+ height: 48px;
+ border-radius: 50%;
+ }
+ .drop-down{
+ width: 56px;
+ background: #FFFFFF;
+ border-radius: 4px;
+ padding: 0 5px;
+ position: absolute;
+ right: 15px;
+ top: -10px;
+ z-index: 999;
+ }
+ .drop-down-row{
+ border-bottom: 1px solid #EDEAF4;
+ padding: 5px 0;
+ }
+ .drop-down-row:nth-last-child(1){
+ border: 0;
+ }
+</style>
diff --git a/hive-app/pages/manager/index.vue b/hive-app/pages/manager/index.vue
index f86dbe6..8e60ba5 100644
--- a/hive-app/pages/manager/index.vue
+++ b/hive-app/pages/manager/index.vue
@@ -5,18 +5,18 @@
<view class="content-item">
<text class="title">排行榜</text>
<view class="flex align-center mt-10">
- <view class="flex flex-v align-center list-item">
+ <navigator url="./storeRanking" class="flex flex-v align-center list-item" hover-class="none">
<image class="content-icon" src="../../static/images/statement1.png"></image>
<text class="font-12 font-dark">门店业绩排行榜</text>
- </view>
- <view class="flex flex-v align-center list-item">
+ </navigator>
+ <navigator url="./counselorRanking" hover-class="none" class="flex flex-v align-center list-item">
<image class="content-icon" src="../../static/images/statement2.png"></image>
<text class="font-12 font-dark">顾问业绩排行榜</text>
- </view>
- <view class="flex flex-v align-center list-item">
+ </navigator>
+ <navigator url="./beautyTherapistsRanking" hover-class="none" class="flex flex-v align-center list-item">
<image class="content-icon" src="../../static/images/statement3.png"></image>
<text class="font-12 font-dark">美疗师业绩排行榜</text>
- </view>
+ </navigator>
</view>
</view>
<view class="content-item">
diff --git a/hive-app/pages/manager/storeRanking.vue b/hive-app/pages/manager/storeRanking.vue
new file mode 100644
index 0000000..fd92084
--- /dev/null
+++ b/hive-app/pages/manager/storeRanking.vue
@@ -0,0 +1,109 @@
+<template>
+ <!-- 门店排行榜 -->
+ <view>
+ <view class="header flex justify-end">
+ <view class="flex flex-v">
+ <text class="font-16 white">总计</text>
+ <text class="font-20 white mt-10">¥180,8088</text>
+ </view>
+ </view>
+ <view>
+ <h-tabs
+ class="tab"
+ :tabData="tabs"
+ :config="{
+ color: '#abb1cc',
+ activeColor: '#518EFF',
+ underLineColor: '#518EFF',
+ underLineHeight: 6,
+ fontSize: '28',
+ underLineWidth: 60,
+ }"
+ />
+ </view>
+ <view class="content">
+ <view class="content-row flex justify-between mt-10">
+ <view class="flex align-center content-row-left">
+ <image class="row-img" src="../../static/images/head-img.jpg"></image>
+ <view class="flex flex-v ml-10">
+ <text class="font-16">时光秘境会所</text>
+ <text class="font-14 gray mt-10">¥23,960</text>
+ </view>
+ </view>
+ <image class="medal" mode="widthFix" src="../../static/images/medal1.png"></image>
+ </view>
+ <view class="content-row flex justify-between mt-10">
+ <view class="flex align-center content-row-left">
+ <image class="row-img" src="../../static/images/head-img.jpg"></image>
+ <view class="flex flex-v ml-10">
+ <text class="font-16">时光秘境会所</text>
+ <text class="font-14 gray mt-10">¥23,960</text>
+ </view>
+ </view>
+ <image class="medal" mode="widthFix" src="../../static/images/medal2.png"></image>
+ </view>
+ <view class="content-row flex justify-between mt-10">
+ <view class="flex align-center content-row-left">
+ <image class="row-img" src="../../static/images/head-img.jpg"></image>
+ <view class="flex flex-v ml-10">
+ <text class="font-16">时光秘境会所</text>
+ <text class="font-14 gray mt-10">¥23,960</text>
+ </view>
+ </view>
+ <image class="medal" mode="widthFix" src="../../static/images/medal3.png"></image>
+ </view>
+ </view>
+
+ </view>
+</template>
+
+<script>
+ import HTabs from "@/components/liuyuno-tabs/liuyuno-tabs.vue";
+ export default {
+ components: {
+ HTabs
+ },
+ data() {
+ return {
+ tabs:[
+ {
+ state: 1,
+ name: '销售榜'
+ },
+ {
+ state: 2,
+ name: '消耗榜'
+ }
+ ],
+ }
+ }
+ }
+</script>
+
+<style>
+ .header{
+ background: url(../../static/images/ranking.png) no-repeat;
+ background-size: 100% 100%;
+ padding: 30px;
+ }
+ .content{
+ padding: 0 10px;
+ }
+ .content-row{
+ border: 1px solid #EDEAF4;
+ border-radius: 4px;
+ box-shadow:0 6px 6px rgba(237,234,244,0.5);
+ padding: 0 10px;
+ }
+ .content-row-left{
+ padding: 10px 0;
+ }
+ .medal{
+ width: 36px;
+ }
+ .row-img{
+ width: 64px;
+ height: 64px;
+ border-radius: 50%;
+ }
+</style>
diff --git a/hive-app/static/images/crown.png b/hive-app/static/images/crown.png
new file mode 100644
index 0000000..981bf90
--- /dev/null
+++ b/hive-app/static/images/crown.png
Binary files differ
diff --git a/hive-app/static/images/medal1.png b/hive-app/static/images/medal1.png
new file mode 100644
index 0000000..819b5c6
--- /dev/null
+++ b/hive-app/static/images/medal1.png
Binary files differ
diff --git a/hive-app/static/images/medal2.png b/hive-app/static/images/medal2.png
new file mode 100644
index 0000000..dd50541
--- /dev/null
+++ b/hive-app/static/images/medal2.png
Binary files differ
diff --git a/hive-app/static/images/medal3.png b/hive-app/static/images/medal3.png
new file mode 100644
index 0000000..071c477
--- /dev/null
+++ b/hive-app/static/images/medal3.png
Binary files differ
diff --git a/hive-app/static/images/ranking.png b/hive-app/static/images/ranking.png
new file mode 100644
index 0000000..641bc96
--- /dev/null
+++ b/hive-app/static/images/ranking.png
Binary files differ
diff --git a/hive-app/static/images/small-medal1.png b/hive-app/static/images/small-medal1.png
new file mode 100644
index 0000000..636145e
--- /dev/null
+++ b/hive-app/static/images/small-medal1.png
Binary files differ
diff --git a/hive-app/static/images/small-medal2.png b/hive-app/static/images/small-medal2.png
new file mode 100644
index 0000000..fb206a0
--- /dev/null
+++ b/hive-app/static/images/small-medal2.png
Binary files differ
diff --git a/hive-app/static/images/small-medal3.png b/hive-app/static/images/small-medal3.png
new file mode 100644
index 0000000..f23c30f
--- /dev/null
+++ b/hive-app/static/images/small-medal3.png
Binary files differ
--
Gitblit v1.9.1