|
|
@@ -23,43 +23,26 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
|
|
|
- <view class="bubble-grid">
|
|
|
+ <view class="stat-grid">
|
|
|
|
|
|
- <!-- 访客 -->
|
|
|
- <view class="bubble bubble-secondary" @click.stop="pageTo({url:'/admin/custom/visit'})">
|
|
|
- <view class="bubble-inner">
|
|
|
- <view class="bubble-label">访客</view>
|
|
|
- <view class="bubble-value">{{ $util.numberFormat(data.todayData.visit) || 0 }}</view>
|
|
|
- </view>
|
|
|
+ <view class="stat-item" @click.stop="pageTo({url:'/admin/stat/kdIncome'})">
|
|
|
+ <view class="stat-label" style="opacity: 0.8;">今日收入</view>
|
|
|
+ <view class="stat-value">{{ $util.numberFormat(data.todayData.income) }}</view>
|
|
|
</view>
|
|
|
|
|
|
- <!-- 订单 -->
|
|
|
<navigator
|
|
|
url="/admin/home/order"
|
|
|
open-type="switchTab"
|
|
|
- class="bubble bubble-secondary"
|
|
|
+ class="stat-item"
|
|
|
@click.stop="pageTo({url:'/admin/home/order'})"
|
|
|
>
|
|
|
- <view class="bubble-inner">
|
|
|
- <view class="bubble-label">订单</view>
|
|
|
- <view class="bubble-value">{{ $util.numberFormat(data.todayData.order) || 0 }}</view>
|
|
|
- </view>
|
|
|
+ <view class="stat-label" style="opacity: 0.8;">订单</view>
|
|
|
+ <view class="stat-value">{{ $util.numberFormat(data.todayData.order) || 0 }}</view>
|
|
|
</navigator>
|
|
|
|
|
|
- <!-- 昨日收入 -->
|
|
|
- <view class="bubble bubble-secondary" @click.stop="">
|
|
|
- <view class="bubble-inner">
|
|
|
- <view class="bubble-label">昨日收入</view>
|
|
|
- <view class="bubble-value">{{ $util.numberFormat(data.yesterdayIncome) || 0 }}</view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
-
|
|
|
- <!-- 今日收入 -->
|
|
|
- <view class="bubble bubble-secondary bubble-large" @click.stop="pageTo({url:'/admin/stat/kdIncome'})">
|
|
|
- <view class="bubble-inner">
|
|
|
- <view class="bubble-label">今日收入</view>
|
|
|
- <view class="bubble-value">{{ $util.numberFormat(data.todayData.income) }}</view>
|
|
|
- </view>
|
|
|
+ <view class="stat-item" @click.stop="pageTo({url:'/admin/custom/visit'})">
|
|
|
+ <view class="stat-label" style="opacity: 0.8;">访客</view>
|
|
|
+ <view class="stat-value">{{ $util.numberFormat(data.todayData.visit) || 0 }}</view>
|
|
|
</view>
|
|
|
|
|
|
</view>
|
|
|
@@ -1171,159 +1154,34 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- .bubble-grid {
|
|
|
+ .stat-grid {
|
|
|
display: flex;
|
|
|
- flex-wrap: wrap;
|
|
|
- gap: 20upx;
|
|
|
- padding: 20upx 24upx 30upx;
|
|
|
+ justify-content: space-around;
|
|
|
align-items: center;
|
|
|
- justify-content: center;
|
|
|
+ padding: 50upx 0 30upx;
|
|
|
+ width: 100%;
|
|
|
|
|
|
- .bubble {
|
|
|
- position: relative;
|
|
|
+ .stat-item {
|
|
|
display: flex;
|
|
|
+ flex-direction: column;
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
- border-radius: 50%;
|
|
|
- cursor: pointer;
|
|
|
- transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
|
- box-shadow: 0 8upx 20upx rgba(0, 0, 0, 0.15);
|
|
|
-
|
|
|
-
|
|
|
- .bubble-inner {
|
|
|
- width: 100%;
|
|
|
- height: 100%;
|
|
|
- border-radius: 50%;
|
|
|
- display: flex;
|
|
|
- flex-direction: column;
|
|
|
- align-items: center;
|
|
|
- justify-content: center;
|
|
|
- padding: 20upx;
|
|
|
- box-sizing: border-box;
|
|
|
- }
|
|
|
-
|
|
|
- &.bubble-primary {
|
|
|
- width: 180upx;
|
|
|
- height: 180upx;
|
|
|
- background: linear-gradient(135deg, #3b82f6 0%, #1e40af 100%);
|
|
|
-
|
|
|
- .bubble-inner {
|
|
|
- .bubble-label {
|
|
|
- font-size: 28upx;
|
|
|
- color: rgba(255, 255, 255, 0.9);
|
|
|
- font-weight: 600;
|
|
|
- margin-bottom: 12upx;
|
|
|
- }
|
|
|
-
|
|
|
- .bubble-value {
|
|
|
- font-size: 34upx;
|
|
|
- font-weight: 800;
|
|
|
- color: #ffffff;
|
|
|
- line-height: 1;
|
|
|
- max-width: 160upx;
|
|
|
- white-space: nowrap;
|
|
|
- overflow: hidden;
|
|
|
- text-overflow: ellipsis;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ flex: 1;
|
|
|
|
|
|
- &.bubble-secondary {
|
|
|
- width: 140upx;
|
|
|
- height: 140upx;
|
|
|
- background: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.1) 100%);
|
|
|
- backdrop-filter: blur(10px);
|
|
|
- border: 2upx solid rgba(255, 255, 255, 0.3);
|
|
|
-
|
|
|
- .bubble-inner {
|
|
|
- .bubble-label {
|
|
|
- font-size: 24upx;
|
|
|
- color: rgba(255, 255, 255, 0.9);
|
|
|
- font-weight: 600;
|
|
|
- margin-bottom: 8upx;
|
|
|
- }
|
|
|
-
|
|
|
- .bubble-value {
|
|
|
- font-size: 31upx;
|
|
|
- font-weight: 700;
|
|
|
- color: #ffffff;
|
|
|
- line-height: 1;
|
|
|
- max-width: 130upx;
|
|
|
- white-space: nowrap;
|
|
|
- overflow: hidden;
|
|
|
- text-overflow: ellipsis;
|
|
|
- }
|
|
|
- }
|
|
|
+ .stat-label {
|
|
|
+ font-size: 26upx;
|
|
|
+ color: rgba(255, 255, 255, 0.8);
|
|
|
+ margin-bottom: 12upx;
|
|
|
}
|
|
|
|
|
|
- &.bubble-large {
|
|
|
- width: 180upx;
|
|
|
- height: 180upx;
|
|
|
-
|
|
|
- .bubble-inner {
|
|
|
- .bubble-label {
|
|
|
- font-size: 28upx;
|
|
|
- }
|
|
|
-
|
|
|
- .bubble-value {
|
|
|
- font-size: 34upx;
|
|
|
- max-width: 160upx;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
-.user-wrap {
|
|
|
- padding: 20upx 30upx 34upx 30upx;
|
|
|
- color: #fff;
|
|
|
- text-align: center;
|
|
|
- background-size: 100% 380upx;
|
|
|
- background-repeat: no-repeat;
|
|
|
- .user-top {
|
|
|
- @include disFlex(center, space-between);
|
|
|
- .open-bt_bx {
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- line-height: 1upx;
|
|
|
- & > button {
|
|
|
- padding: 0;
|
|
|
- line-height: auto;
|
|
|
- background-color: transparent;
|
|
|
- border: 1px solid #ffffff;
|
|
|
- border-radius: 22upx;
|
|
|
- padding: 10upx 17upx !important;
|
|
|
- font-size: 24upx;
|
|
|
- font-family: PingFang SC;
|
|
|
- font-weight: 400;
|
|
|
+ .stat-value {
|
|
|
+ font-size: 40upx;
|
|
|
+ font-weight: 700;
|
|
|
color: #ffffff;
|
|
|
- & > .iconfont {
|
|
|
- font-size: 25upx;
|
|
|
- padding-right: 10upx;
|
|
|
- }
|
|
|
+ line-height: 1;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- .income-amount {
|
|
|
- margin-top: 36upx;
|
|
|
- margin-bottom: 37upx;
|
|
|
- .price {
|
|
|
- font-size: 50upx;
|
|
|
- font-weight: bold;
|
|
|
- margin-top: 4upx;
|
|
|
- }
|
|
|
- }
|
|
|
- .user-bottom {
|
|
|
- @include disFlex(center, space-around);
|
|
|
- .info-list-name {
|
|
|
- color: white;
|
|
|
- }
|
|
|
- .info-list-value {
|
|
|
- font-size: 36upx;
|
|
|
- font-weight: bold;
|
|
|
- margin-top: 4upx;
|
|
|
- }
|
|
|
- }
|
|
|
}
|
|
|
// 消息
|
|
|
.news-wrap {
|
|
|
@@ -1382,11 +1240,6 @@ export default {
|
|
|
color: #333;
|
|
|
margin-bottom: 8upx;
|
|
|
}
|
|
|
-
|
|
|
- .overview-subtitle {
|
|
|
- font-size: 24upx;
|
|
|
- color: #999;
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
.overview-grid {
|
|
|
@@ -1473,10 +1326,6 @@ export default {
|
|
|
margin-bottom: 24upx;
|
|
|
padding-left: 0;
|
|
|
|
|
|
- .header-line {
|
|
|
- display: none;
|
|
|
- }
|
|
|
-
|
|
|
.header-title {
|
|
|
padding: 0;
|
|
|
font-size: 32upx;
|
|
|
@@ -1514,11 +1363,6 @@ export default {
|
|
|
font-size: 48upx;
|
|
|
line-height: 1;
|
|
|
}
|
|
|
-
|
|
|
- .icon-image {
|
|
|
- width: 85upx;
|
|
|
- height: 85upx;
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
.icon-text {
|
|
|
@@ -1945,23 +1789,6 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-.red-mind{
|
|
|
- width: 42upx;
|
|
|
- height: 42upx;
|
|
|
- line-height: 38upx;
|
|
|
- font-size: 28upx;
|
|
|
- font-weight: 700;
|
|
|
- text-align: center;
|
|
|
- position: absolute;
|
|
|
- right: 16upx;
|
|
|
- top: 10upx;
|
|
|
- color: white;
|
|
|
- background-color: red;
|
|
|
- border: 1upx solid red;
|
|
|
- border-radius: 26upx;
|
|
|
- display: inline-block;
|
|
|
-}
|
|
|
-
|
|
|
// 警告提示区域样式
|
|
|
.alert-card {
|
|
|
margin: 15upx 10upx;
|
|
|
@@ -1983,27 +1810,6 @@ export default {
|
|
|
padding: 30upx 18upx;
|
|
|
min-height: 100upx;
|
|
|
|
|
|
- .alert-title {
|
|
|
- font-size: 38upx;
|
|
|
- font-weight: 600;
|
|
|
- flex: 1;
|
|
|
- line-height: 1.4;
|
|
|
- }
|
|
|
-
|
|
|
- .alert-action {
|
|
|
- font-size: 32upx;
|
|
|
- font-weight: 600;
|
|
|
- white-space: nowrap;
|
|
|
- margin-left: 20upx;
|
|
|
- padding: 12upx 24upx;
|
|
|
- border-radius: 8upx;
|
|
|
- transition: all 0.2s ease;
|
|
|
-
|
|
|
- &:active {
|
|
|
- background-color: rgba(255, 255, 255, 0.6);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
.alert-text {
|
|
|
font-size: 36upx;
|
|
|
font-weight: 600;
|
|
|
@@ -2014,22 +1820,6 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-.alert-card-warning {
|
|
|
- background: #fffbf0;
|
|
|
- border-color: #fffbf0;
|
|
|
-
|
|
|
- .alert-content {
|
|
|
- .alert-title {
|
|
|
- color: #d48806;
|
|
|
- }
|
|
|
-
|
|
|
- .alert-action {
|
|
|
- color: #ffa940;
|
|
|
- border: 2upx solid #ffa940;
|
|
|
- }
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
.alert-card-error {
|
|
|
background-color: #ff6b6b;
|
|
|
border-color: #ff6b6b;
|