This commit is contained in:
lik
2026-05-28 17:06:18 +08:00
parent a93a75b3c6
commit db0f47d994
582 changed files with 8060 additions and 1781 deletions

View File

@@ -49,7 +49,7 @@
width: 160rpx;
height: 160rpx;
border-radius: 50%;
background: linear-gradient(135deg, #FF9B33 0%, #FF7A33 100%);
background: linear-gradient(135deg, #D4A853 0%, #D4A853 100%);
display: flex;
align-items: center;
justify-content: center;

View File

@@ -30,807 +30,7 @@ Page({
genderOptions: ['不限', '男', '女'],
department: '',
departments: ['内科', '外科', '妇产科', '儿科', '骨科', '神经科', '心血管内科', '消化内科', '呼吸内科', '内分泌科', '皮肤科', '眼科', '耳鼻喉科', '口腔科', '急诊科', '肿瘤科', '康复医学科', '老年病科', '中医科', '针灸推拿科'],
hospitals: [{
id: 1,
name: '中国医学科学院北京协和医院',
level: '三级甲等'
},
{
id: 2,
name: '中国人民解放军总医院301医院',
level: '三级甲等'
},
{
id: 3,
name: '中国医学科学院肿瘤医院',
level: '三级甲等'
},
{
id: 4,
name: '中国医学科学院阜外心血管病医院',
level: '三级甲等'
},
{
id: 5,
name: '中国医学科学院整形外科医院',
level: '三级甲等'
},
{
id: 6,
name: '北京大学第一医院',
level: '三级甲等'
},
{
id: 7,
name: '北京大学人民医院',
level: '三级甲等'
},
{
id: 8,
name: '北京大学第三医院',
level: '三级甲等'
},
{
id: 9,
name: '北京大学肿瘤医院',
level: '三级甲等'
},
{
id: 10,
name: '北京大学口腔医院',
level: '三级甲等'
},
{
id: 11,
name: '北京大学第六医院',
level: '三级甲等'
},
{
id: 12,
name: '北京中医药大学东直门医院',
level: '三级甲等'
},
{
id: 13,
name: '北京中医药大学东直门医院通州院区',
level: '三级甲等'
},
{
id: 14,
name: '北京中医药大学东方医院',
level: '三级甲等'
},
{
id: 15,
name: '北京中医药大学第三附属医院',
level: '三级甲等'
},
{
id: 16,
name: '北京天坛医院',
level: '三级甲等'
},
{
id: 17,
name: '北京宣武医院',
level: '三级甲等'
},
{
id: 18,
name: '北京朝阳医院',
level: '三级甲等'
},
{
id: 19,
name: '北京朝阳医院常营院区',
level: '三级甲等'
},
{
id: 20,
name: '北京朝阳医院石景山院区',
level: '三级甲等'
},
{
id: 21,
name: '北京友谊医院',
level: '三级甲等'
},
{
id: 22,
name: '北京积水潭医院',
level: '三级甲等'
},
{
id: 23,
name: '北京安贞医院',
level: '三级甲等'
},
{
id: 24,
name: '北京世纪坛医院',
level: '三级甲等'
},
{
id: 25,
name: '北京中医医院',
level: '三级甲等'
},
{
id: 26,
name: '北京中医医院顺义医院',
level: '三级甲等'
},
{
id: 27,
name: '北京中医医院延庆医院',
level: '三级甲等'
},
{
id: 28,
name: '北京儿童医院',
level: '三级甲等'
},
{
id: 29,
name: '北京儿童医院顺义妇儿医院',
level: '三级甲等'
},
{
id: 30,
name: '北京妇产医院',
level: '三级甲等'
},
{
id: 31,
name: '北京同仁医院',
level: '三级甲等'
},
{
id: 32,
name: '北京安定医院',
level: '三级甲等'
},
{
id: 33,
name: '北京回龙观医院',
level: '三级甲等'
},
{
id: 34,
name: '北京胸科医院',
level: '三级甲等'
},
{
id: 35,
name: '北京地坛医院',
level: '三级甲等'
},
{
id: 36,
name: '北京佑安医院',
level: '三级甲等'
},
{
id: 37,
name: '北京口腔医院',
level: '三级甲等'
},
{
id: 38,
name: '北京老年医院',
level: '三级甲等'
},
{
id: 39,
name: '北京小汤山医院',
level: '三级甲等'
},
{
id: 40,
name: '北京清华长庚医院',
level: '三级甲等'
},
{
id: 41,
name: '中国康复研究中心北京博爱医院',
level: '三级甲等'
},
{
id: 42,
name: '北京急救中心',
level: '三级甲等'
},
{
id: 43,
name: '解放军空军总医院(空军特色医学中心)',
level: '三级甲等'
},
{
id: 44,
name: '解放军海军总医院',
level: '三级甲等'
},
{
id: 45,
name: '解放军火箭军总医院(火箭军特色医学中心)',
level: '三级甲等'
},
{
id: 46,
name: '解放军总医院第九医学中心',
level: '三级甲等'
},
{
id: 47,
name: '解放军总医院第六医学中心',
level: '三级甲等'
},
{
id: 48,
name: '解放军305医院',
level: '三级甲等'
},
{
id: 49,
name: '武警总医院',
level: '三级甲等'
},
{
id: 50,
name: '中日友好医院',
level: '三级甲等'
},
{
id: 51,
name: '中国中医科学院广安门医院',
level: '三级甲等'
},
{
id: 52,
name: '中国中医科学院广安门医院南区',
level: '三级甲等'
},
{
id: 53,
name: '中国中医科学院西苑医院',
level: '三级甲等'
},
{
id: 54,
name: '中国中医科学院望京医院',
level: '三级甲等'
},
{
id: 55,
name: '中国中医科学院眼科医院',
level: '三级甲等'
},
{
id: 56,
name: '清华大学玉泉医院',
level: '三级甲等'
},
{
id: 57,
name: '清华大学第一附属医院',
level: '三级甲等'
},
{
id: 58,
name: '北京大学首钢医院',
level: '三级甲等'
},
{
id: 59,
name: '首都医科大学附属首都儿童医学中心',
level: '三级甲等'
},
{
id: 60,
name: '首都医科大学附属复兴医院',
level: '三级甲等'
},
{
id: 61,
name: '首都医科大学附属北京康复医院',
level: '三级甲等'
},
{
id: 62,
name: '首都医科大学附属北京潞河医院',
level: '三级甲等'
},
{
id: 63,
name: '首都医科大学附属北京顺义医院',
level: '三级甲等'
},
{
id: 64,
name: '首都医科大学附属北京大兴医院',
level: '三级甲等'
},
{
id: 65,
name: '护国寺中医院',
level: '三级甲等'
},
{
id: 66,
name: '北京市肛肠医院',
level: '三级甲等'
},
{
id: 67,
name: '北京市回民医院',
level: '三级甲等'
},
{
id: 68,
name: '北京市第一中西医结合医院',
level: '三级甲等'
},
{
id: 69,
name: '北京中西医结合医院',
level: '三级甲等'
},
{
id: 70,
name: '北京市海淀区妇幼保健院',
level: '三级甲等'
},
{
id: 71,
name: '北京市丰台区中西医结合医院',
level: '三级甲等'
},
{
id: 72,
name: '北京市和平里医院',
level: '三级甲等'
},
{
id: 73,
name: '北京市隆福医院',
level: '三级甲等'
},
{
id: 74,
name: '北京市昌平区中医医院',
level: '三级甲等'
},
{
id: 75,
name: '北京市昌平区中西医结合医院',
level: '三级甲等'
},
{
id: 76,
name: '北京市房山区中医医院',
level: '三级甲等'
},
{
id: 77,
name: '北京市平谷区中医医院',
level: '三级甲等'
},
{
id: 78,
name: '通州区妇幼保健院',
level: '三级甲等'
},
{
id: 79,
name: '北京燕化医院',
level: '三级甲等'
},
{
id: 80,
name: '北京和睦家医院',
level: '三级甲等'
},
{
id: 81,
name: '北京华德眼科医院',
level: '三级甲等'
},
{
id: 82,
name: '北京希玛林顺潮眼科医院',
level: '三级甲等'
},
{
id: 83,
name: '北京优联医院',
level: '三级甲等'
},
{
id: 84,
name: '北京裕和医院',
level: '三级甲等'
},
{
id: 85,
name: '北京京城皮肤医院',
level: '三级甲等'
},
{
id: 86,
name: '航空总医院',
level: '三级甲等'
},
{
id: 87,
name: '航天中心医院',
level: '三级甲等'
},
{
id: 88,
name: '航天总医院',
level: '三级甲等'
},
{
id: 89,
name: '北京电力医院',
level: '三级甲等'
},
{
id: 90,
name: '北京通用航天医院',
level: '三级甲等'
},
{
id: 91,
name: '应急管理部应急总医院',
level: '三级甲等'
},
{
id: 92,
name: '北京回龙观医院',
level: '三级甲等'
},
{
id: 93,
name: '北京康复医院',
level: '三级甲等'
},
{
id: 94,
name: '北京南郊肿瘤医院',
level: '三级甲等'
},
{
id: 95,
name: '北京美中爱瑞肿瘤医院',
level: '三级甲等'
},
{
id: 96,
name: '北京陆道培医院',
level: '三级甲等'
},
{
id: 97,
name: '北京高博医院',
level: '三级甲等'
},
{
id: 98,
name: '北京高博博仁医院',
level: '三级甲等'
},
{
id: 99,
name: '北京京都儿童医院',
level: '三级甲等'
},
{
id: 100,
name: '北京首大眼耳鼻喉医院',
level: '三级甲等'
},
{
id: 101,
name: '北京市海淀医院',
level: '三级甲等'
},
{
id: 102,
name: '北京市中关村医院',
level: '三级甲等'
},
{
id: 103,
name: '北京市石景山医院',
level: '三级甲等'
},
{
id: 104,
name: '北京市顺义区医院',
level: '三级甲等'
},
{
id: 105,
name: '北京市大兴区人民医院',
level: '三级甲等'
},
{
id: 106,
name: '北京市房山区良乡医院',
level: '三级甲等'
},
{
id: 107,
name: '北京市延庆区医院',
level: '三级甲等'
},
{
id: 108,
name: '北京市平谷区医院',
level: '三级甲等'
},
{
id: 109,
name: '北京市密云区中医医院',
level: '三级甲等'
},
{
id: 110,
name: '北京怀柔医院',
level: '三级甲等'
},
{
id: 111,
name: '北京中医医院怀柔医院',
level: '三级甲等'
},
{
id: 112,
name: '北京协和医院',
level: '三级甲等'
},
{
id: 113,
name: '北京医院',
level: '三级甲等'
},
{
id: 114,
name: '北京市第六医院',
level: '二级甲等'
},
{
id: 115,
name: '北京市普仁医院',
level: '二级甲等'
},
{
id: 116,
name: '北京市鼓楼中医医院',
level: '二级甲等'
},
{
id: 117,
name: '北京市西城区人民医院',
level: '二级甲等'
},
{
id: 118,
name: '北京市西城区平安医院',
level: '二级甲等'
},
{
id: 119,
name: '北京市第二医院',
level: '二级甲等'
},
{
id: 120,
name: '北京市东城区第一人民医院',
level: '二级甲等'
},
{
id: 121,
name: '北京市丰台区中医医院',
level: '二级甲等'
},
{
id: 122,
name: '北京市丰台区医院',
level: '二级甲等'
},
{
id: 123,
name: '北京市丰台区康复医院',
level: '二级甲等'
},
{
id: 124,
name: '北京市石景山区中医医院',
level: '二级甲等'
},
{
id: 125,
name: '北京市通州区中西医结合医院',
level: '二级甲等'
},
{
id: 126,
name: '北京市通州区新华医院',
level: '二级甲等'
},
{
id: 127,
name: '北京市通州区老年病医院',
level: '二级甲等'
},
{
id: 128,
name: '北京市顺义区空港医院',
level: '二级甲等'
},
{
id: 129,
name: '北京市顺义区精神病医院',
level: '二级甲等'
},
{
id: 130,
name: '北京市昌平区医院',
level: '二级甲等'
},
{
id: 131,
name: '北京市昌平区妇幼保健院',
level: '二级甲等'
},
{
id: 132,
name: '北京市昌平区南口医院',
level: '二级甲等'
},
{
id: 133,
name: '北京市大兴区妇幼保健院',
level: '二级甲等'
},
{
id: 134,
name: '北京市大兴区心康医院',
level: '二级甲等'
},
{
id: 135,
name: '北京市房山区第一医院',
level: '二级甲等'
},
{
id: 136,
name: '北京市房山区妇幼保健院',
level: '二级甲等'
},
{
id: 137,
name: '北京市房山区精神病医院',
level: '二级甲等'
},
{
id: 138,
name: '北京市密云区医院',
level: '二级甲等'
},
{
id: 139,
name: '北京市密云区妇幼保健院',
level: '二级甲等'
},
{
id: 140,
name: '北京市平谷区妇幼保健院',
level: '二级甲等'
},
{
id: 141,
name: '北京市平谷区精神病医院',
level: '二级甲等'
},
{
id: 142,
name: '北京市延庆区妇幼保健院',
level: '二级甲等'
},
{
id: 143,
name: '北京市延庆区精神病医院',
level: '二级甲等'
},
{
id: 144,
name: '北京市怀柔区妇幼保健院',
level: '二级甲等'
},
{
id: 145,
name: '北京市怀柔区第二医院',
level: '二级甲等'
},
{
id: 146,
name: '北京市门头沟区医院',
level: '二级甲等'
},
{
id: 147,
name: '北京市门头沟区中医医院',
level: '二级甲等'
},
{
id: 148,
name: '北京市门头沟区妇幼保健院',
level: '二级甲等'
},
{
id: 149,
name: '北京水利医院',
level: '二级甲等'
},
{
id: 150,
name: '北京四季青医院',
level: '二级甲等'
},
{
id: 151,
name: '北京上地医院',
level: '二级甲等'
},
{
id: 152,
name: '北京华医中西医结合皮肤病医院',
level: '二级甲等'
},
{
id: 153,
name: '德尔康尼骨科医院',
level: '二级甲等'
},
{
id: 154,
name: '北京怡德医院',
level: '二级甲等'
},
{
id: 155,
name: '北京万柳美中宜和妇儿医院',
level: '二级甲等'
},
{
id: 156,
name: '北京家圆医院',
level: '二级甲等'
},
{
id: 157,
name: '北京新世纪儿童医院',
level: '二级甲等'
},
{
id: 158,
name: '北京和睦家东城院区',
level: '二级甲等'
},
{
id: 159,
name: '北京嘉禾妇儿医院',
level: '二级甲等'
},
{
id: 160,
name: '垂杨柳医院',
level: '二级甲等'
}
]
hospitals: []
},
onLoad(options) {

View File

@@ -1,43 +1,47 @@
Page({
data: {
contact: {
icon: 'logo-wechat-stroke',
phone: '18618162956'
},
services: {},
assistServices: [
{ id: 1, name: '陪诊', icon: 'user-vip', iconColor: '#2D6A4F' },
{ id: 2, name: '代办问诊', icon: 'chat', iconColor: '#2D6A4F' },
{ id: 3, name: '代办买药', icon: 'cart', iconColor: '#2D6A4F' },
{ id: 4, name: '代取结果', icon: 'file-paste', iconColor: '#2D6A4F' },
{ id: 5, name: '检查预约', icon: 'calendar', iconColor: '#2D6A4F' },
{ id: 6, name: '出入院办理', icon: 'chart-bar', iconColor: '#2D6A4F' },
{ id: 7, name: 'vip陪诊', icon: 'user-star', iconColor: '#2D6A4F' },
{ id: 8, name: '其他服务', icon: 'app', iconColor: '#2D6A4F' }
],
otherServices: [
{ id: 1, name: '代办问诊', icon: 'heart', iconColor: '#D4A853' },
{ id: 2, name: '代办买药', icon: 'cart', iconColor: '#D4A853' },
{ id: 3, name: '代取结果', icon: 'ai-article', iconColor: '#D4A853' },
]
},
async onLoad() {
const app = getApp()
const services = await app.globalData.servicesReady
this.setData({
services: services.sort((a, b) => parseFloat(a.price) - parseFloat(b.price))
},
goToEscort() {
wx.navigateTo({
url: '/pages/escort/itemlist'
});
},
makePhoneCall() {
const phoneNumber = this.data.contact.phone;
wx.makePhoneCall({
phoneNumber: phoneNumber,
success: () => {
console.log('拨打电话成功');
},
fail: () => {
console.log('拨打电话失败');
}
goToVipEscort() {
wx.navigateTo({
url: '/pages/escort/itemlist?type=vip'
});
},
goToDetail(e) {
goToServiceList() {
wx.navigateTo({
url: '/pages/escort/itemlist'
});
},
goToAssistDetail(e) {
const id = e.currentTarget.dataset.id;
wx.navigateTo({
url: `/pages/escort/itemdetail?id=${id}`
});
},
goToAIChat() {
wx.switchTab({
url: '/pages/ai/aichat'
url: `/pages/escort/itemlist?assistId=${id}`
});
}
});
});

View File

@@ -1,6 +1,7 @@
{
"navigationBarTitleText": "暖橙陪诊",
"navigationStyle": "custom",
"navigationBarTitleText": "优医优诊",
"usingComponents": {
"t-icon": "tdesign-miniprogram/icon/icon"
}
}
}

View File

@@ -1,73 +1,59 @@
<view class="container">
<view class="header-section">
<image class="header-bg" src="/images/background.jpg" mode="aspectFill"></image>
<view class="user-info">
<image class="avatar" src="/images/home-active2.png" mode="aspectFill"></image>
<view class="welcome-text">
<text class="user-name">专业陪诊</text>
<text class="welcome-subtitle">让就医更简单,让客户更安心</text>
<!-- 顶部导航栏 -->
<view class="nav-bar">
<view class="nav-logo">
<image class="logo-icon" src="/images/home-active.png" mode="aspectFit"></image>
<text class="logo-text">暖橙陪诊</text>
</view>
</view>
<!-- Banner区域 -->
<view class="banner-section">
<view class="banner-card">
<image class="banner-bg" src="/images/banner.jpg" mode="aspectFill"></image>
<view class="banner-text">
<text class="banner-title">专业陪诊</text>
<text class="banner-subtitle"></text>
<text class="banner-en">让就医更简单,让客户更安心</text>
</view>
</view>
</view>
<view class="services-section">
<view class="service-item">
<view class="service-icon-wrap blue">
<image class="service-icon" src="/images/home-w.png" mode="aspectFill"></image>
<!-- 服务卡片 -->
<view class="service-cards">
<view class="service-card" bindtap="goToEscort">
<image class="card-img" src="/images/ai-active.png" mode="aspectFit"></image>
<view class="card-info">
<text class="card-title">客服咨询</text>
<text class="card-en">AI Customer service</text>
</view>
<text class="service-name">陪诊</text>
</view>
<view class="service-item" bindtap="goToAIChat">
<view class="service-icon-wrap blue">
<image class="service-icon" src="/images/zixun-w.png" mode="aspectFill"></image>
<view class="service-card vip" bindtap="goToVipEscort">
<view class="card-info">
<text class="card-title">联系我们</text>
<text class="card-en">Contact us anytime</text>
</view>
<text class="service-name">AI客服</text>
</view>
<view class="service-item" bindtap="goToAIChat">
<view class="service-icon-wrap blue">
<image class="service-icon" src="/images/team-w.png" mode="aspectFill"></image>
</view>
<text class="service-name">商务合作</text>
</view>
<view class="service-item" bindtap="makePhoneCall">
<view class="service-icon-wrap blue">
<image class="service-icon" src="/images/call-w.png" mode="aspectFill"></image>
</view>
<text class="service-name">电话联系</text>
<image class="card-img" src="/images/call.png" mode="aspectFit"></image>
</view>
</view>
<view class="articles-section">
<!-- 助诊服务 -->
<view class="assist-section">
<view class="section-header">
<view class="section-title-wrap">
<t-icon name="view-list" class="section-icon" />
<text class="section-title">陪诊项目</text>
<t-icon name="user-vip" class="section-icon" size="40rpx" color="#2D6A4F" />
<text class="section-title">助诊服务</text>
</view>
<text class="section-more"></text>
<text class="section-more" bindtap="goToServiceList">全部 >></text>
</view>
<view class="article-list">
<view class="article-item" wx:for="{{ services }}" wx:key="id" bindtap="goToDetail" data-id="{{ item.id }}">
<image class="article-image" src="{{ item.image }}" mode="aspectFill"></image>
<view class="article-content">
<text class="article-title">{{ item.title }}</text>
<view class="article-meta">
<text class="article-date">{{ item.subtitle }}</text>
<text class="article-time">{{ item.readTime }}</text>
</view>
<view class="assist-grid">
<view class="assist-item" wx:for="{{ assistServices }}" wx:key="id" bindtap="goToAssistDetail" data-id="{{ item.id }}">
<view class="assist-icon-circle">
<t-icon name="{{ item.icon }}" class="assist-icon" style="color: #2D6A4F;" />
</view>
<text class="article-price">¥{{ item.price }}</text>
</view>
</view>
<view class="contact-section">
<view class="contact-box">
<t-icon name="{{ contact.icon }}" class="contact-icon" />
<text class="contact-phone">18618162956</text>
<button class="contact-btn" bindtap="makePhoneCall">打电话 </button>
<text class="assist-name">{{ item.name }}</text>
</view>
</view>
</view>
</view>
</view>

View File

@@ -1,181 +1,190 @@
page {
background-color: #FAF6F1;
background-color: #F5F7F6;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}
.container {
min-height: 100vh;
padding-bottom: 40rpx;
}
.header-section {
position: relative;
width: 100%;
height: 360rpx;
overflow: hidden;
padding-top: 10rpx;
/* 顶部导航栏 */
.nav-bar {
display: flex;
align-items: center;
justify-content: space-between;
padding: 120rpx 32rpx 20rpx 32rpx;
background: #FFFFFF;
}
.header-bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.header-blur-mask {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.doctor-image {
position: absolute;
right: -60rpx;
bottom: 0;
width: 380rpx;
height: 420rpx;
}
.user-info {
position: relative;
z-index: 10;
padding: 100rpx 40rpx 40rpx;
.nav-logo {
display: flex;
align-items: center;
}
.avatar {
width: 80rpx;
height: 80rpx;
.logo-icon {
width: 56rpx;
height: 56rpx;
border-radius: 16rpx;
background: #FFFFFF;
padding: 4rpx;
}
.welcome-text {
margin-left: 24rpx;
}
.welcome-title {
display: block;
font-size: 28rpx;
color: #FFFFFF;
opacity: 0.9;
margin-bottom: 8rpx;
}
.user-name {
display: block;
font-size: 40rpx;
.logo-text {
font-size: 36rpx;
font-weight: 700;
color: #FFFFFF;
margin-bottom: 8rpx;
color: #1F2937;
margin-left: 16rpx;
}
.welcome-subtitle {
display: block;
font-size: 26rpx;
color: #FFFFFF;
opacity: 0.8;
}
.contact-section {
padding: 0 32rpx;
margin-top: 40rpx;
position: relative;
z-index: 20;
}
.contact-box {
background: #FFFFFF;
border-radius: 10rpx;
padding: 34rpx 32rpx;
.nav-actions {
display: flex;
align-items: center;
gap: 20rpx;
}
.contact-icon {
font-size: 38rpx;
margin-right: 16rpx;
}
.contact-text {
font-size: 30rpx;
color: #9CA3AF;
margin-right: 16rpx;
}
.contact-phone {
font-size: 28rpx;
color: #1F2937;
font-weight: 600;
}
.contact-btn {
background: linear-gradient(135deg, #FF9B33 0%, #FF8500 100%);
color: #FFFFFF;
font-size: 28rpx;
font-weight: 600;
padding: 26rpx 6rpx;
border-radius: 20rpx;
margin-left: auto;
}
.services-section {
padding: 36rpx 32rpx;
.nav-more {
display: flex;
justify-content: space-around;
background: #FFFFFF;
margin: 30rpx 0rpx;
box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.04);
align-items: center;
gap: 6rpx;
}
.service-item {
.nav-more .dot {
width: 8rpx;
height: 8rpx;
border-radius: 50%;
background: #1F2937;
}
.nav-circle {
width: 40rpx;
height: 40rpx;
border-radius: 50%;
border: 4rpx solid #1F2937;
}
/* Banner区域 */
.banner-section {
padding: 24rpx 32rpx;
background: #FFFFFF;
}
.banner-card {
background: #FFFFFF;
border-radius: 24rpx;
padding: 20rpx 32rpx;
display: flex;
align-items: center;
justify-content: space-between;
position: relative;
overflow: hidden;
min-height: 280rpx;
}
.banner-bg {
position: absolute;
top: 0;
right: 0;
width: 100%;
height: 100%;
z-index: 1;
}
.banner-text {
flex: 1;
z-index: 2;
display: flex;
flex-direction: column;
align-items: center;
}
.service-icon-wrap {
width: 100rpx;
height: 100rpx;
border-radius: 50%;
.banner-title {
font-size: 52rpx;
font-weight: 800;
color: #D4A853;
letter-spacing: 4rpx;
line-height: 1.2;
}
.banner-subtitle {
font-size: 52rpx;
font-weight: 800;
color: #2D6A4F;
letter-spacing: 4rpx;
line-height: 1.2;
}
.banner-en {
font-size: 26rpx;
color: #6B8E7B;
letter-spacing: 6rpx;
margin-top: 16rpx;
}
/* 服务卡片 */
.service-cards {
display: flex;
gap: 20rpx;
padding: 24rpx 32rpx;
/*margin-top: 18rpx;*/
background: #FFFFFF;
}
.service-card {
flex: 1;
background: #FFFFFF;
border-radius: 24rpx;
padding: 24rpx;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 16rpx;
justify-content: space-between;
box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.06);
border: 2rpx solid #F0F0F0;
}
.service-icon-wrap.blue {
background-color: #FF9B33;
.card-img {
width: 90rpx;
height: 90rpx;
}
.service-icon {
width: 50rpx;
height: 50rpx;
color: #FF9B33;
.card-info {
display: flex;
flex-direction: column;
flex: 1;
margin-left: 16rpx;
}
.service-name {
font-size: 28rpx;
color: #374151;
font-weight: 600;
.service-card.vip .card-info {
margin-left: 0;
margin-right: 16rpx;
}
.articles-section {
padding: 10rpx 0rpx;
.card-title {
font-size: 30rpx;
font-weight: 700;
color: #1F2937;
margin-bottom: 8rpx;
}
.card-en {
font-size: 20rpx;
color: #9CA3AF;
line-height: 1.3;
}
/* 助诊服务 */
.assist-section {
background: #FFFFFF;
padding: 50rpx 32rpx;
}
.section-header {
display: flex;
align-items: center;
margin-bottom: 20rpx;
padding-left: 20rpx;
}
.section-icon {
font-size: 36rpx;
margin-right: 12rpx;
justify-content: space-between;
margin-bottom: 32rpx;
padding: 0rpx 30rpx;
}
.section-title-wrap {
@@ -183,86 +192,53 @@ page {
align-items: center;
}
.section-more {
margin-left: auto;
.section-icon {
margin-right: 12rpx;
color: #2D6A4F;
}
.section-title {
font-size: 32rpx;
font-weight: 600;
font-size: 34rpx;
font-weight: 700;
color: #1F2937;
}
.section-more {
font-size: 26rpx;
color: #FF9B33;
font-weight: 500;
color: #2D6A4F;
}
.article-list {
.assist-grid {
display: flex;
flex-wrap: wrap;
}
.assist-item {
width: 25%;
display: flex;
flex-direction: column;
gap: 20rpx;
align-items: center;
padding: 20rpx 0;
}
.article-item {
.assist-icon-circle {
width: 96rpx;
height: 96rpx;
border-radius: 50%;
border: 2rpx solid #E8F0EC;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 16rpx;
background: #FFFFFF;
border-radius: 0rpx;
padding: 24rpx;
display: flex;
align-items: center;
box-shadow: 0 2rpx 12rpx rgba(0, 0, 0, 0.04);
position: relative;
}
.article-image {
width: 160rpx;
height: 160rpx;
border-radius: 10rpx;
flex-shrink: 0;
.assist-icon {
font-size: 44rpx;
}
.article-content {
flex: 1;
margin-left: 20rpx;
padding-right: 16rpx;
align-self: flex-start;
}
.article-title {
display: block;
font-size: 30rpx;
font-weight: 600;
color: #1F2937;
line-height: 1.4;
margin-bottom: 22rpx;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.article-meta {
display: flex;
align-items: center;
gap: 16rpx;
}
.article-date {
font-size: 26rpx;
color: #6c6c6c;
}
.article-time {
font-size: 22rpx;
color: #9CA3AF;
}
.article-price {
font-size: 32rpx;
font-weight: 700;
color: #FF9B33;
align-self: flex-start;
margin-left: auto;
flex-shrink: 0;
.assist-name {
font-size: 28rpx;
color: #6B7280;
font-weight: 400;
}

View File

@@ -110,7 +110,7 @@
.address-default-tag {
font-size: 22rpx;
color: #FF8500;
color: #D4A853;
background: rgba(255, 133, 0, 0.1);
padding: 4rpx 12rpx;
border-radius: 8rpx;
@@ -160,7 +160,7 @@
}
.action-text.active {
color: #FF8500;
color: #D4A853;
}
.address-footer {
@@ -169,7 +169,7 @@
}
.address-add-btn {
background: linear-gradient(135deg, #FF9B33 0%, #FF8500 100%);
background: linear-gradient(135deg, #FF9B33 0%, #D4A853 100%);
color: #FFFFFF;
font-size: 30rpx;
font-weight: 600;
@@ -222,7 +222,7 @@
}
.address-save-btn {
background: linear-gradient(135deg, #FF9B33 0%, #FF8500 100%);
background: linear-gradient(135deg, #FF9B33 0%, #D4A853 100%);
color: #FFFFFF;
font-size: 30rpx;
font-weight: 600;

View File

@@ -125,7 +125,7 @@
}
.profile-sex-tag-active {
background: linear-gradient(135deg, #FF9B33 0%, #FF8500 100%);
background: linear-gradient(135deg, #FF9B33 0%, #D4A853 100%);
}
.profile-sex-text {
@@ -143,7 +143,7 @@
}
.profile-save-btn {
background: linear-gradient(135deg, #FF9B33 0%, #FF8500 100%);
background: linear-gradient(135deg, #FF9B33 0%, #D4A853 100%);
color: #FFFFFF;
font-size: 30rpx;
font-weight: 600;

View File

@@ -3,7 +3,7 @@ const API = require('../../utils/api.js')
Page({
data: {
userInfo: {
avatar: '/images/home-active2.png',
avatar: '/images/home-active.png',
name: '用户',
phone: '',
sex: '',

View File

@@ -44,7 +44,7 @@ page {
}
.login-btn {
background: linear-gradient(135deg, #FF9B33 0%, #FF8500 100%);
background: linear-gradient(135deg, #D4A853 0%, #FF8500 100%);
color: #FFFFFF;
font-size: 30rpx;
font-weight: 600;
@@ -60,12 +60,12 @@ page {
.avatar-btn {
background: #FFFFFF;
color: #FF9B33;
color: #D4A853;
font-size: 28rpx;
font-weight: 500;
padding: 24rpx;
border-radius: 20rpx;
border: 1rpx solid #FF9B33;
border: 1rpx solid #D4A853;
line-height: 1.5;
}
@@ -118,7 +118,7 @@ page {
}
.menu-icon {
color: #FF9B33;
color: #D4A853;
margin-right: 24rpx;
}