From 93de43267e1663031fe5dc2f5ae40d128a182a76 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期四, 18 六月 2026 17:24:51 +0800
Subject: [PATCH] 新增智能电表、空调管理
---
h5/pages/customer/index.vue | 100 ++++++++++++++++++++++++++++++++------------------
1 files changed, 64 insertions(+), 36 deletions(-)
diff --git a/h5/pages/customer/index.vue b/h5/pages/customer/index.vue
index 6948e8a..125a7c5 100644
--- a/h5/pages/customer/index.vue
+++ b/h5/pages/customer/index.vue
@@ -1,11 +1,19 @@
<template>
<view class="cu-page cu-page--home">
<view class="cu-hero">
- <view class="cu-hero__greet">
- <view class="cu-avatar">{{ customerInitial }}</view>
- <view>
- <view class="cu-hero__hi">{{ greeting }}</view>
- <view class="cu-hero__name">{{ home.customerName || '鍟嗘埛鐢ㄦ埛' }}</view>
+ <view class="cu-profile-bar">
+ <view class="cu-profile-bar__info">
+ <view class="cu-avatar">{{ customerInitial }}</view>
+ <view>
+ <view class="cu-hero__hi">{{ greeting }}</view>
+ <view class="cu-hero__name">{{ displayName }}</view>
+ </view>
+ </view>
+ <view class="cu-profile-actions">
+ <view class="cu-profile-action cu-profile-action--pill" @click="logout">
+ <u-icon name="minus-circle-fill" color="#ffffff" size="18" />
+ <text class="cu-profile-action__text">閫�鍑�</text>
+ </view>
</view>
</view>
</view>
@@ -15,43 +23,61 @@
<u-swiper :list="banners" keyName="imageUrl" height="160" radius="12" indicator indicatorMode="dot" />
</view>
- <view class="cu-section-title">涓撳睘鏈嶅姟</view>
- <view class="cu-service-grid">
- <view class="cu-service-item cu-service-item--electric" @click="go('/pages/customer/electricity/list')">
- <view class="cu-service-item__icon">鈿�</view>
- <text class="cu-service-item__label">浜ょ數璐�</text>
- <text class="cu-service-item__desc">鐢佃〃 / 绌鸿皟鍏呭��</text>
+ <view class="cu-service-panel">
+ <view class="cu-section-head">
+ <view class="cu-section-head__bar" />
+ <text class="cu-section-head__title">涓撳睘鏈嶅姟</text>
</view>
- <view class="cu-service-item cu-service-item--contract" @click="go('/pages/customer/contract/list')">
- <view class="cu-service-item__icon">
- <u-icon name="file-text-fill" color="#40a9ff" size="24" />
+ <view class="cu-service-grid">
+ <view class="cu-service-card cu-service-card--electric" @click="go('/pages/customer/electricity/list')">
+ <view class="cu-service-card__top">
+ <view class="cu-service-card__icon">
+ <u-icon name="coupon-fill" color="#fa8c16" size="26" />
+ </view>
+ <text class="cu-service-card__arrow">鈥�</text>
+ </view>
+ <text class="cu-service-card__label">浜ょ數璐�</text>
+ <text class="cu-service-card__desc">鐢佃〃 / 绌鸿皟鍏呭��</text>
</view>
- <text class="cu-service-item__label">鏌ュ悎鍚�</text>
- <text class="cu-service-item__desc">绉熻祦鍚堝悓鏌ヨ</text>
+ <view class="cu-service-card cu-service-card--contract" @click="go('/pages/customer/contract/list')">
+ <view class="cu-service-card__top">
+ <view class="cu-service-card__icon">
+ <u-icon name="file-text-fill" color="#40a9ff" size="26" />
+ </view>
+ <text class="cu-service-card__arrow">鈥�</text>
+ </view>
+ <text class="cu-service-card__label">鏌ュ悎鍚�</text>
+ <text class="cu-service-card__desc">绉熻祦鍚堝悓鏌ヨ</text>
+ </view>
+ <view class="cu-service-card cu-service-card--bill" @click="go('/pages/customer/bill/list')">
+ <view class="cu-service-card__top">
+ <view class="cu-service-card__icon">
+ <u-icon name="red-packet-fill" color="#597ef7" size="26" />
+ </view>
+ <text class="cu-service-card__arrow">鈥�</text>
+ </view>
+ <text class="cu-service-card__label">鏌ヨ处鍗�</text>
+ <text class="cu-service-card__desc">鍦ㄧ嚎缂磋垂</text>
+ </view>
+ <view class="cu-service-card cu-service-card--record" @click="go('/pages/customer/recharge/record')">
+ <view class="cu-service-card__top">
+ <view class="cu-service-card__icon">
+ <u-icon name="list" color="#9254de" size="26" />
+ </view>
+ <text class="cu-service-card__arrow">鈥�</text>
+ </view>
+ <text class="cu-service-card__label">鍏呭�艰褰�</text>
+ <text class="cu-service-card__desc">鍘嗗彶鍏呭�兼槑缁�</text>
+ </view>
</view>
- <view class="cu-service-item cu-service-item--bill" @click="go('/pages/customer/bill/list')">
- <view class="cu-service-item__icon">馃挸</view>
- <text class="cu-service-item__label">鏌ヨ处鍗�</text>
- <text class="cu-service-item__desc">鍦ㄧ嚎缂磋垂</text>
- </view>
- <view class="cu-service-item cu-service-item--record" @click="go('/pages/customer/recharge/record')">
- <view class="cu-service-item__icon">馃搵</view>
- <text class="cu-service-item__label">鍏呭�艰褰�</text>
- <text class="cu-service-item__desc">鍘嗗彶鍏呭�兼槑缁�</text>
- </view>
- </view>
-
- <view class="cu-footer-bar">
- <view class="cu-footer-btn cu-footer-btn--primary" @click="onSwitchRole">鍒囨崲瑙掕壊</view>
- <view class="cu-footer-btn" @click="logout">閫�鍑虹櫥褰�</view>
</view>
</view>
</view>
</template>
<script>
-import { customerBanners, customerHome } from '@/api'
-import { switchRole, goRoleSelect } from '@/utils/roleSwitch.js'
+import { customerBanners, customerHome, customerLogout } from '@/api'
+import { switchRole } from '@/utils/roleSwitch.js'
export default {
data () {
return { banners: [], home: {} }
@@ -63,8 +89,11 @@
if (h < 18) return '涓嬪崍濂�'
return '鏅氫笂濂�'
},
+ displayName () {
+ return this.home.displayName || this.home.customerName || '鍟嗘埛鐢ㄦ埛'
+ },
customerInitial () {
- const name = (this.home.customerName || '鍟�').trim()
+ const name = (this.home.memberName || this.home.customerName || '鍟�').trim()
return name.charAt(0)
}
},
@@ -76,8 +105,7 @@
},
methods: {
go (url) { uni.navigateTo({ url }) },
- onSwitchRole () { switchRole() },
- logout () { goRoleSelect() }
+ logout () { switchRole(customerLogout) }
}
}
</script>
--
Gitblit v1.9.3