feat(miniprogram): 温润东方风全面 UI 重设计

73 文件变更,覆盖全部 40 个页面 SCSS + TabBar 图标 + 组件样式。
统一赤陶主色 #C4623A + 暖米背景 + 衬线标题字体 + 12px 圆角体系。
This commit is contained in:
iven
2026-04-28 00:19:52 +08:00
parent fbb28e655d
commit 50eae8b809
97 changed files with 7633 additions and 2373 deletions

View File

@@ -9,22 +9,26 @@ import './index.scss';
interface CardConfig {
key: keyof doctorApi.DoctorDashboard;
label: string;
icon: string;
initial: string;
route: string;
color: string;
}
const CARDS: CardConfig[] = [
{ key: 'total_patients', label: '我的患者', icon: '👥', route: '/pages/doctor/patients/index', color: '#0891b2' },
{ key: 'unread_messages', label: '未读消息', icon: '💬', route: '/pages/doctor/consultation/index', color: '#f59e0b' },
{ key: 'pending_follow_ups', label: '待处理随访', icon: '📋', route: '/pages/doctor/followup/index', color: '#8b5cf6' },
{ key: 'today_consultations', label: '今日咨询', icon: '🩺', route: '/pages/doctor/consultation/index', color: '#10b981' },
{ key: 'total_patients', label: '我的患者', initial: '', route: '/pages/doctor/patients/index' },
{ key: 'unread_messages', label: '未读消息', initial: '', route: '/pages/doctor/consultation/index' },
{ key: 'pending_follow_ups', label: '待处理随访', initial: '', route: '/pages/doctor/followup/index' },
{ key: 'today_consultations', label: '今日咨询', initial: '', route: '/pages/doctor/consultation/index' },
];
const HEALTH_CARDS: CardConfig[] = [
{ key: 'pending_dialysis_review', label: '待审透析', icon: '💧', route: '/pages/doctor/patients/index', color: '#0ea5e9' },
{ key: 'pending_lab_review', label: '待审化验', icon: '🔬', route: '/pages/doctor/report/index', color: '#f43f5e' },
{ key: 'today_appointments', label: '今日预约', icon: '📅', route: '/pages/doctor/patients/index', color: '#14b8a6' },
{ key: 'pending_dialysis_review', label: '待审透析', initial: '', route: '/pages/doctor/patients/index' },
{ key: 'pending_lab_review', label: '待审化验', initial: '', route: '/pages/doctor/report/index' },
{ key: 'today_appointments', label: '今日预约', initial: '', route: '/pages/doctor/patients/index' },
];
const QUICK_ACTIONS = [
{ label: '化验审核', initial: '审', route: '/pages/doctor/report/index' },
{ label: '患者查询', initial: '查', route: '/pages/doctor/patients/index' },
];
export default function DoctorHome() {
@@ -81,10 +85,9 @@ export default function DoctorHome() {
<View
key={card.key}
className='doctor-home__card'
style={`border-left: 6px solid ${card.color}`}
onClick={() => handleCardClick(card)}
>
<Text className='doctor-home__card-icon'>{card.icon}</Text>
<Text className='doctor-home__card-initial'>{card.initial}</Text>
<Text className='doctor-home__card-num'>{getValue(card.key)}</Text>
<Text className='doctor-home__card-label'>{card.label}</Text>
</View>
@@ -99,10 +102,9 @@ export default function DoctorHome() {
<View
key={card.key}
className='doctor-home__card'
style={`border-left: 6px solid ${card.color}`}
onClick={() => handleCardClick(card)}
>
<Text className='doctor-home__card-icon'>{card.icon}</Text>
<Text className='doctor-home__card-initial'>{card.initial}</Text>
<Text className='doctor-home__card-num'>{getValue(card.key)}</Text>
<Text className='doctor-home__card-label'>{card.label}</Text>
</View>
@@ -113,14 +115,16 @@ export default function DoctorHome() {
<View className='doctor-home__section'>
<Text className='doctor-home__section-title'></Text>
<View className='doctor-home__quick-actions'>
<View className='quick-action' onClick={() => Taro.navigateTo({ url: '/pages/doctor/report/index' })}>
<Text className='quick-action__icon'>📊</Text>
<Text className='quick-action__label'></Text>
</View>
<View className='quick-action' onClick={() => Taro.navigateTo({ url: '/pages/doctor/patients/index' })}>
<Text className='quick-action__icon'>🔍</Text>
<Text className='quick-action__label'></Text>
</View>
{QUICK_ACTIONS.map((action) => (
<View
key={action.route}
className='quick-action'
onClick={() => Taro.navigateTo({ url: action.route })}
>
<Text className='quick-action__initial'>{action.initial}</Text>
<Text className='quick-action__label'>{action.label}</Text>
</View>
))}
</View>
</View>