From 8dff53cd2ac9fb2e17c4de3de5af51cdf2044d21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B7=A6=E5=93=A5?= <17630302050@163.com> Date: Tue, 17 Jun 2025 22:48:15 +0800 Subject: [PATCH] ewew --- assets/images/my/baby.png | Bin 7067 -> 4406 bytes pages/home/index.js | 301 +++++++++++++++++++++++++++++++++----- pages/home/index.less | 180 +++++++++++++++++++++-- pages/home/index.wxml | 43 ++++-- pages/my/index.less | 4 +- 5 files changed, 465 insertions(+), 63 deletions(-) diff --git a/assets/images/my/baby.png b/assets/images/my/baby.png index a8a0a30f4ca2c0438fe719371bbebffebaae77f5..259ac17235314c67e27d67fbee3c26b2aba32724 100644 GIT binary patch literal 4406 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

4<9O>6jxYwqJC9)gcTua1d{g zpYukGcPU8vHGcBn;7ege{5&udvwE&c2nLOW8C1EdGIqwKmF`(jX#{IC?{n^9M7>H* zgKg`;C1sE-Q+XQau>oQ-fQcf5btOqt_(IpU>h7c}(fT+CHD9 z!yich^Z#Mc0KdC{l$O~BaF5-#r~sWHLHy+IfXo7qM`d`&?9XV86*G4irY`FWeBm~f zs1G7gi$9T*oR6H|baLl!a~1Lk?95Y4zSCrJMjSFmWmi3A{D##>KQnnnycZGS5)kU*7g!;)CU`o+>^lIh#Ks@F>aTgyBltKIFcp#u5z z%6@>wslUEr`<#HcW7r$qzvoU8;~Qa%#qg~<4&qyCC>fma?qdo_dtr$BXu)x z??(qa$vEN0?4+dEW{3fg^qkp0)j;7J{A#S|5t866XCV@#{?3>0b3b&;Ss~LgvnbS#3vFJ?Z$13z!3Ju+Pw2iDl*Vf{rs7>GIEqBT>!IJwQ{0yZ@=({)2Q03)1o u{J}*W*#G{ma2iiHnpOYbkemP(g7V(d!pgHN6#bdV0xAlc^50}F!u}7G+H&{+ diff --git a/pages/home/index.js b/pages/home/index.js index a12520a..40ece98 100644 --- a/pages/home/index.js +++ b/pages/home/index.js @@ -1,19 +1,18 @@ import * as echarts from '../../ec-canvas/echarts.min'; import request from '~/api/request'; const app = getApp(); -let height = [] -let weight = [] + function initChart(canvas, width, height, dpr) { const chart = echarts.init(canvas, null, { width: width, height: height, - devicePixelRatio: dpr // new + devicePixelRatio: dpr }); canvas.setChart(chart); var option = { title: { - text: '身高(cm)', + text: '', left: 'left', fontSize: 6 }, @@ -25,8 +24,8 @@ function initChart(canvas, width, height, dpr) { }, grid: { containLabel: true, - top: '12%', - left: '5%', + top: '5%', + left: '1%', right: '5%', bottom: '10%' }, @@ -37,8 +36,7 @@ function initChart(canvas, width, height, dpr) { xAxis: { type: 'category', boundaryGap: false, - data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], - // show: false + data: ['出生', '1月', '2月', '3月', '4月', '5月'], }, yAxis: { x: 'center', @@ -48,13 +46,12 @@ function initChart(canvas, width, height, dpr) { type: 'dashed' } } - // show: false }, series: [{ name: '实际身高', type: 'line', smooth: true, - data: height + data: [] }, { name: '标准范围', type: 'line', @@ -71,13 +68,13 @@ function initChart2(canvas, width, height, dpr) { const chart = echarts.init(canvas, null, { width: width, height: height, - devicePixelRatio: dpr // new + devicePixelRatio: dpr }); canvas.setChart(chart); var option = { title: { - text: '体重(kg)', + text: '', left: 'left', fontSize: 12 }, @@ -89,8 +86,8 @@ function initChart2(canvas, width, height, dpr) { }, grid: { containLabel: true, - top: '12%', - left: '5%', + top: '5%', + left: '1%', right: '5%', bottom: '10%' }, @@ -101,8 +98,7 @@ function initChart2(canvas, width, height, dpr) { xAxis: { type: 'category', boundaryGap: false, - data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], - // show: false + data: ['出生', '1月', '2月', '3月', '4月', '5月'], }, yAxis: { x: 'center', @@ -112,13 +108,12 @@ function initChart2(canvas, width, height, dpr) { type: 'dashed' } } - // show: false }, series: [{ name: '实际体重', type: 'line', smooth: true, - data: weight + data: [] }, { name: '标准范围', type: 'line', @@ -142,16 +137,20 @@ Page({ }, data: { ec: { - onInit: '' + lazyLoad: true }, ec2: { - onInit: '' + lazyLoad: true }, activeIndex: 0, sfData:{}, sfListLength: 0, articles:[], - articlesLength: 0 + articlesLength: 0, + heightData: [], + weightData: [], + heightChart: null, + weightChart: null }, // Helper function to strip HTML tags and convert to plain text @@ -198,35 +197,205 @@ Page({ async getChartData(){ const res = await request('patient/chat/0', 'get') + const heightData = [] + const weightData = [] + if(res.list.length > 0){ res.list.forEach(item => { - height.push(item.height) - weight.push(item.weight) + heightData.push(item.height) + weightData.push(item.weight) }) } + this.setData({ - ec: { - onInit: initChart - }, - ec2: { - onInit: initChart2 - }, - }) + heightData, + weightData + }, () => { + this.initCharts(); + }); }, + + initCharts() { + // 初始化身高图表 + if (!this.heightChart) { + const chart1 = this.selectComponent('#mychart-dom-height'); + if (chart1) { + chart1.init((canvas, width, height, dpr) => { + const chart = echarts.init(canvas, null, { + width: width, + height: height, + devicePixelRatio: dpr + }); + canvas.setChart(chart); + + const option = { + title: { + text: '', + left: 'left', + fontSize: 6 + }, + legend: { + data: ['实际身高', '标准范围'], + bottom: 0, + left: 'center', + z: 100 + }, + grid: { + containLabel: true, + top: '5%', + left: '1%', + right: '5%', + bottom: '10%' + }, + tooltip: { + show: true, + trigger: 'axis' + }, + xAxis: { + type: 'category', + boundaryGap: false, + data: ['出生', '1月', '2月', '3月', '4月', '5月'], + }, + yAxis: { + x: 'center', + type: 'value', + splitLine: { + lineStyle: { + type: 'dashed' + } + } + }, + series: [{ + name: '实际身高', + type: 'line', + smooth: true, + data: this.data.heightData + }, { + name: '标准范围', + type: 'line', + smooth: true, + data: [120, 130, 140, 150, 160, 170] + }] + }; + + chart.setOption(option); + this.heightChart = chart; + return chart; + }); + } + } + + // 初始化体重图表 + if (!this.weightChart) { + const chart2 = this.selectComponent('#mychart-dom-weight'); + if (chart2) { + chart2.init((canvas, width, height, dpr) => { + const chart = echarts.init(canvas, null, { + width: width, + height: height, + devicePixelRatio: dpr + }); + canvas.setChart(chart); + + const option = { + title: { + text: '', + left: 'left', + fontSize: 12 + }, + legend: { + data: ['实际体重', '标准范围'], + bottom: 0, + left: 'center', + z: 100 + }, + grid: { + containLabel: true, + top: '5%', + left: '1%', + right: '5%', + bottom: '10%' + }, + tooltip: { + show: true, + trigger: 'axis' + }, + xAxis: { + type: 'category', + boundaryGap: false, + data: ['出生', '1月', '2月', '3月', '4月', '5月'], + }, + yAxis: { + x: 'center', + type: 'value', + splitLine: { + lineStyle: { + type: 'dashed' + } + } + }, + series: [{ + name: '实际体重', + type: 'line', + smooth: true, + data: this.data.weightData + }, { + name: '标准范围', + type: 'line', + smooth: true, + data: [120, 130, 140, 150, 160, 170] + }] + }; + + chart.setOption(option); + this.weightChart = chart; + return chart; + }); + } + } + }, + onLoad(){ - this.getChartData() this.getSfList() + setTimeout(() => { + this.getChartData().then(() => { + if (this.data.activeIndex === 0) { + this.initHeightChart(); + } else { + this.initWeightChart(); + } + }); + }, 500); + }, + + onReady() { + // setTimeout(() => { + // this.getChartData().then(() => { + // if (this.data.activeIndex === 0) { + // this.initHeightChart(); + // } else { + // this.initWeightChart(); + // } + // }); + // }, 500); }, changeChart(e) { const index = e.currentTarget.dataset.index; - console.log(index); + if(index == this.data.activeIndex){ + return + } this.setData({ activeIndex: index - }) - }, - - onReady() { + }, () => { + setTimeout(() => { + if (index == 0) { + this.initHeightChart(); + } else { + this.initWeightChart(); + } + }, 100); + }); }, toClockIn(){ @@ -251,4 +420,64 @@ Page({ url: '/pages/article/index', }) }, + + onUnload() { + // 页面卸载时销毁图表实例 + if (this.heightChart) { + this.heightChart.dispose(); + this.heightChart = null; + } + if (this.weightChart) { + this.weightChart.dispose(); + this.weightChart = null; + } + }, + + // 初始化身高图表 + initHeightChart() { + const chartComp = this.selectComponent('#mychart-dom-height'); + if (chartComp) { + chartComp.init((canvas, width, height, dpr) => { + const chart = echarts.init(canvas, null, { width, height, devicePixelRatio: dpr }); + canvas.setChart(chart); + chart.setOption({ + title: { text: '', left: 'left', fontSize: 6 }, + legend: { data: ['实际身高', '标准范围'], bottom: 0, left: 'center', z: 100 }, + grid: { containLabel: true, top: '5%', left: '1%', right: '5%', bottom: '10%' }, + tooltip: { show: true, trigger: 'axis' }, + xAxis: { type: 'category', boundaryGap: false, data: ['出生', '1月', '2月', '3月', '4月', '5月'] }, + yAxis: { x: 'center', type: 'value', splitLine: { lineStyle: { type: 'dashed' } } }, + series: [ + { name: '实际身高', type: 'line', smooth: true, data: this.data.heightData }, + { name: '标准范围', type: 'line', smooth: true, data: [120, 130, 140, 150, 160, 170] } + ] + }); + return chart; + }); + } + }, + + // 初始化体重图表 + initWeightChart() { + const chartComp = this.selectComponent('#mychart-dom-weight'); + if (chartComp) { + chartComp.init((canvas, width, height, dpr) => { + const chart = echarts.init(canvas, null, { width, height, devicePixelRatio: dpr }); + canvas.setChart(chart); + chart.setOption({ + title: { text: '', left: 'left', fontSize: 12 }, + legend: { data: ['实际体重', '标准范围'], bottom: 0, left: 'center', z: 100 }, + grid: { containLabel: true, top: '5%', left: '1%', right: '5%', bottom: '10%' }, + tooltip: { show: true, trigger: 'axis' }, + xAxis: { type: 'category', boundaryGap: false, data: ['出生', '1月', '2月', '3月', '4月', '5月'] }, + yAxis: { x: 'center', type: 'value', splitLine: { lineStyle: { type: 'dashed' } } }, + series: [ + { name: '实际体重', type: 'line', smooth: true, data: this.data.weightData }, + { name: '标准范围', type: 'line', smooth: true, data: [120, 130, 140, 150, 160, 170] } + ] + }); + return chart; + }); + } + }, }); \ No newline at end of file diff --git a/pages/home/index.less b/pages/home/index.less index 4b669b9..577c736 100644 --- a/pages/home/index.less +++ b/pages/home/index.less @@ -17,7 +17,8 @@ .home-content { // height: calc(100% - @nav-bar-height); - padding: 30rpx; + padding: 28rpx; + padding-bottom: 0; position: relative; z-index: 1; .item-title-img{ @@ -28,7 +29,7 @@ height: 96rpx; position: relative; left: -24rpx; - margin-top: -28rpx; + // margin-top: -28rpx; } .item-title { font-family: Alibaba-PuHuiTi, Alibaba-PuHuiTi; @@ -54,8 +55,8 @@ .item-content { background-color: #fff; border-radius: 24rpx; - padding: 30rpx; - margin-bottom: 30rpx; + padding: 28rpx; + margin-bottom: 28rpx; @@ -90,7 +91,7 @@ vertical-align: middle; width: 36rpx; height: 36rpx; - margin-right: 10rpx; + margin-right: 20rpx; } .item-title-right-text { position: absolute; @@ -186,6 +187,21 @@ .item-title-icon{ margin-right: 18rpx; } + + } + .item-content-2{ + background: linear-gradient( 180deg, #E7F2F2 0%, #F7FCFC 100%); + box-shadow: 0rpx 2rpx 20rpx 0rpx #E9F4F3; + border-radius: 24rpx; + border: 2rpx solid #FFFFFF; + position: relative; + padding-top:0 ; + .item-title{ + margin-bottom: 0; + } + .item-box{ + margin-top: 0; + } } } .item-content-1{ @@ -195,13 +211,7 @@ border: 2rpx solid #FFFFFF; position: relative; } - .item-content-2{ - background: linear-gradient( 180deg, #E7F2F2 0%, #F7FCFC 100%); - box-shadow: 0rpx 2rpx 20rpx 0rpx #E9F4F3; - border-radius: 24rpx; - border: 2rpx solid #FFFFFF; - position: relative; - } + } @@ -220,4 +230,150 @@ align-items: center; justify-content: center; box-shadow: 0px 12px 32px 4px rgba(0, 0, 0, .04), 0px 8px 20px rgba(0, 0, 0, .08); +} + +.box_3 { + background-color: rgba(245,245,245,1.000000); + border-radius: 28rpx; + width: 250rpx; + flex-direction: row; + display: flex; + justify-content: space-between; + padding: 4rpx 28rpx 4rpx 4rpx; + white-space: nowrap; + margin-bottom: 16rpx; + margin-left:-4rpx; +} +.text-wrapper_1 { + border-radius: 28rpx; + display: flex; + flex-direction: column; + padding: 12rpx 24rpx 12rpx 24rpx; +} +.text-act{ + background-color: rgba(255,255,255,1.000000); + +} +.text_2 { + overflow-wrap: break-word; + color: rgba(34,34,34,1); + font-size: 24rpx; + font-family: Alibaba-PuHuiTi-M; + font-weight: normal; + text-align: left; + white-space: nowrap; + line-height: 24rpx; +} +.echarts-title{ + font-size: 24rpx; + color: #909399; + line-height: 34rpx; +} +.image-text_3 { + width: 110rpx; + flex-direction: row; + display: flex; + justify-content: space-between; + margin: 32rpx 0rpx 18rpx 0; +} +.box_6 { + border-radius: 100%; + width: 16rpx; + height: 16rpx; + border: 2px solid rgba(0,91,162,1); + display: flex; + flex-direction: column; + margin: 6rpx 0 6rpx 0; + box-sizing: border-box; +} +.text-group_3 { + overflow-wrap: break-word; + color: rgba(34,34,34,1); + font-size: 28rpx; + font-family: Alibaba-PuHuiTi-M; + font-weight: normal; + text-align: left; + white-space: nowrap; + line-height: 28rpx; +} +.box_9 { + background-color: rgba(255,255,255,1.000000); + border-radius: 16rpx; + position: relative; + z-index: 1; + flex-direction: row; + display: flex; + justify-content: flex-center; + padding: 24rpx 24rpx 24rpx 24rpx; + margin-left: 30rpx; +} +.image-text_5 { + width: 298rpx; + flex-direction: row; + display: flex; + justify-content: space-between; +} +.box_10 { + border-radius: 16rpx; + background-image: url(https://lanhu-dds-backend.oss-cn-beijing.aliyuncs.com/merge_image/imgs/c46fcd8a7c644cbbb347a75b175350c6_mergeImage.png); + width: 100rpx; + height: 100rpx; + border: 1px solid rgba(0,91,162,0.1); + display: flex; + flex-direction: column; + box-sizing: border-box; + margin-right:16rpx ; +} +.text-group_5 { + display: flex; + flex-direction: column; + margin: 12rpx 0 12rpx 0; +} +.text_21 { + overflow-wrap: break-word; + color: rgba(34,34,34,1); + font-size: 32rpx; + font-family: Alibaba-PuHuiTi-M; + font-weight: normal; + text-align: right; + white-space: nowrap; + line-height: 32rpx; + margin-right: 86rpx; +} +.text_22 { + overflow-wrap: break-word; + color: rgba(144,147,153,1); + font-size: 28rpx; + font-family: Alibaba-PuHuiTi-R; + font-weight: normal; + text-align: left; + white-space: nowrap; + line-height: 28rpx; + margin-top: 16rpx; +} +.box_11 { + background-color: rgba(237,243,248,1.000000); + width: 2rpx; + height: 62rpx; + display: flex; + flex-direction: column; + margin: 20rpx 0 18rpx 100rpx; +} +.text-wrapper_6 { + background-color: rgba(0,91,162,1.000000); + border-radius: 32rpx; + display: flex; + flex-direction: column; + margin: 22rpx 0 22rpx 24rpx; + padding: 12rpx 40rpx 12rpx 40rpx; +} +.text_23 { + overflow-wrap: break-word; + color: rgba(255,255,255,1); + font-size: 28rpx; + font-family: Alibaba-PuHuiTi-M; + font-weight: normal; + text-align: right; + white-space: nowrap; + line-height: 32rpx; } \ No newline at end of file diff --git a/pages/home/index.wxml b/pages/home/index.wxml index 656d07c..f286733 100644 --- a/pages/home/index.wxml +++ b/pages/home/index.wxml @@ -6,17 +6,19 @@ 宝宝成长曲线 - - - 身高曲线 + + + + 身高曲线 - - 体重曲线 + + 体重曲线 + {{activeIndex == 0 ? '身高(cm)':'体重(g)'}} - - + + @@ -27,8 +29,8 @@ 更多 - - + + 布洛芬 - 1片 饭后复用 - 打卡 - + 打卡 --> + + + 08:00 + + + + + + 优思弗 + 1片,饭后服用 + + + + + 打卡 + + + diff --git a/pages/my/index.less b/pages/my/index.less index 08ce0df..8c1cad3 100644 --- a/pages/my/index.less +++ b/pages/my/index.less @@ -169,9 +169,9 @@ height: 120rpx; margin-bottom: 48rpx; background-color: rgba(255,255,255,0.5); - padding: 20rpx; + // padding: 20rpx; border-radius: 120rpx; - border: 4rpx solid rgba(255,255,255,1); + // border: 4rpx solid rgba(255,255,255,1); image{ width: 100%; height: 100%;