柒零 1 рік тому
батько
коміт
4e7934f2d3

+ 22 - 0
subpages/constitutionDiagnosis/constitutionDiagnosis.js

@@ -595,6 +595,28 @@ Page({
 		// 	duration: 2000
 		// });
 	},
+	// 取出最大值的obj
+	findMaxValueKeyAndIndex(obj) {
+		let maxValue = -Infinity;
+		let maxKey = '';
+		let maxIndex = -1;
+
+		const keys = Object.keys(obj);
+		keys.forEach((key, index) => {
+			const value = obj[key];
+			if (value > maxValue) {
+				maxValue = value;
+				maxKey = key;
+				maxIndex = index;
+			}
+		});
+
+		return {
+			key: maxKey,
+			value: maxValue,
+			index: maxIndex
+		};
+	},
 	export() {
 		var that = this;
 		const { nickName } = wx.getStorageSync('userInfo');

+ 124 - 11
subpages/data/data.js

@@ -1207,10 +1207,13 @@ Page({
 		sns: [],//床
 		dateData: [],//日期
 		dateTimeData: [],//时间段
-		showSelectSn:false,
+		showSelectSn: false,
 		showSelectDate: false,
 		showSelectDateTime: false,
-		isNoReportToday:false,
+		isNoReportToday: false,
+		isShowTz: false,
+		tzTitle: '',
+		tzSubTitle: '',
 	},
 	toWarmReminder(e) {
 		const tabName = e.currentTarget.dataset.index || 1;
@@ -1502,7 +1505,7 @@ Page({
 		} else {
 			this.getReportData();
 		}
-
+		this.getTzData();
 	},
 	/**			
 	 * 生命周期函数--监听页面加载
@@ -1611,7 +1614,7 @@ Page({
 							sn: res.data[0].sn,
 							sns: res.data //床的数组
 						});
-						that.getDateData(res.data[0].sn,false);//根据 sn  获取可以用的时间段 
+						that.getDateData(res.data[0].sn, false);//根据 sn  获取可以用的时间段 
 						// console.log("res.data=sn=" + JSON.stringify(res.data));
 					}
 
@@ -1622,8 +1625,118 @@ Page({
 			},
 		})
 	},
+	toReport() {
+		wx.navigateTo({
+			url: '/subpages/constitutionDiagnosis/constitutionDiagnosis'
+		})
+	},
+	getTzData() {
+		var that = this;
+		var userId = wx.getStorageSync("unionid");
+		wx.request({
+			url: `https://fare.somnisix.top/system/constitutionDiagnosis/user/${userId}`,
+			data: {
+				"token": "eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6Ijk5YzI3MjI2LTdkOWQtNDhiOC1hYjlhLWM4YjVjYWZiZGNkNyIsInVzZXJuYW1lIjoiYWRtaW4ifQ.zITQOINFkHs19_1RAgHS4I9YMaVxVq0Dsn3t6r_K7rv3rXvJy0sMtodejIMi_PNa_m4uQYxnU-6k3wC2LZht_Q"
+			},
+			header: {
+				'Authorization': 'Bearer ' + "eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6Ijk5YzI3MjI2LTdkOWQtNDhiOC1hYjlhLWM4YjVjYWZiZGNkNyIsInVzZXJuYW1lIjoiYWRtaW4ifQ.zITQOINFkHs19_1RAgHS4I9YMaVxVq0Dsn3t6r_K7rv3rXvJy0sMtodejIMi_PNa_m4uQYxnU-6k3wC2LZht_Q" // 在头部设置Bearer Token
+			},
+			method: 'GET',
+			success(res) {
+				try {
+					if (res && res.data && res.data.data) {
+						console.log("睡眠数据最终33=>", res.data);
+						if (res.data.data.value2) {
+							console.log("睡眠数据最终444=>", res.data.data.value2);
+							var data = JSON.parse(res.data.data.value2);
+							console.log("睡眠数据最终555=>", data);
+
+							var ratingResultsMap = {
+								A: {
+									index: 0,
+									title: "气虚型",
+									tips: "(体力和气力都低下,需要规律性的生活方式)",
+									subTitle: "累啊』『真倒霉』成了口头语",
+									desc: "一般来说气虚型的人,就是被称作生命力的“气”整体不足。因为体力和气力的整体下降,无论做什么都会感到“真倒霉”“真麻烦”,饮食和运动也是马马虎虎地应付。结果,陷入生活越不规律,“气”就越衰弱的恶性循环。特点就是免疫力降低,易患感冒,而且很难一次性治愈。\n\n为了改善气虚,最重要的就是要有规律性的生活方式。晚上早睡,早上早起。日常食物也要以应季的食材为主,促进胃肠的蠕动,尽量多食用可以提升体温的豆类、薯类等食材。\n\n适度的运动是必要的,但因体力下降,所以万不可强求大的运动量,可以从散步呀、瑜伽呀等轻负荷的运动练起。\n\n特征:驼背。显老像;稍一运动就出汗;手脚发冷;易疲劳,总有困意与疲倦感;下半身易发胖。"
+								}, B: {
+									index: 1,
+									title: "气滞型",
+									tips: "(常常紧张、焦虑~要有意识地放松自己)",
+									subTitle: "感情起伏剧烈",
+									desc: "“气”本来是在体内正常循环的,但是因紧张和压力等使气滞留,就造成了气滞型。“气’一旦滞留,就表现为腹胀、肿胀、疼痛等症状。而且,感情起伏剧烈也是其特征。一旦情绪低落,很快就会焦虑起来,给人以“易发怒”歇斯底里”的感觉。更年期出现气滞的人也不在少数。\n\n养生法无疑是减轻压力的最好办法,但暴饮暴食则会适得其反。值得注意的是体重的增加会影响气的循环。香草和香味蔬菜有促进气循环和防止暴饮暴食的作用。除此之外,每天的日常安排中应留出自我放松的时间,也可以进行深呼吸,这些都有助于改善气滞。\n\n气滞型:入睡困难;眼睛充血;肚子容易生赘肉;焦虑,易怒,皮肤油腻,发红;易打嗝,矢气。"
+								}, C: {
+									index: 2,
+									title: "血虚型",
+									tips: "(饮食生活无规律~可能也有气虚或气滞的原因)",
+									subTitle: "头发散乱,皮肤无光泽",
+									desc: "你是否为了减肥极端地限制饮食,或者光在外边吃快餐?如果一直这样,就会使营养失去平衡,引起“血”的不足,陷入血虚状态。\n\n为此,日常饮食重要的是要注意营养的平衡,特别要多食用有造血作用的羊栖菜、动物肝脏、梅干等。“血”增加了,头发散乱、皮肤无光泽这些血虚型的症状自然就消失了。夜间是人体的造血时间,因此不要熬夜。还要控制电脑和手机的使用,也要控制看电视的时间。中医学以为用眼是消耗“血”的。\n\n特征:头发脆弱,脱发;常常眩晕,站起时头晕;脸色不好,皮肤干燥;指甲偏薄,易裂;耳鸣;冷静,认真型。"
+								}, D: {
+									index: 3,
+									title: "淤血型",
+									tips: "(血流不畅~更要注意减压,慎食生冷食品)",
+									subTitle: "常常感到肩凝、头痛",
+									desc: "血流不顺畅,易在体内形成血块(瘀血)。其原因有喜食生冷食品、压力大、过劳、睡眠不足等等。也有因气虚和血虚造成的瘀血。\n\n对这个型的人,首先是必须使其血行畅通,提高代谢。要多食用牛蒡、蒟蒻(魔芋)、黑醋等有化解瘀血作用的食品,也要多食用生姜和韭菜、葱等有香味的蔬菜。饮料也要尽量选择热你,偏冷会影响血循环。\n\n要养成运动的习惯。运动可以促进血行,缓解瘀血引起的肩凝和腰痛。当然,按摩下半身也可以有效地改善脸部的气色。\n\n特征:容易被晒伤;容易长色斑,雀斑;容易出现黑眼圈;常常为肩凝和腰痛烦恼;经血中有动物肝脏样血块;基本上自制力较强,但偶尔也会感情爆发。"
+								}, E: {
+									index: 4,
+									title: "水虚型",
+									tips: "(身体如同干枯一般~避免食用香辛食物和剧烈运动)",
+									subTitle: "常为头晕眼花、身体发热而烦恼",
+									desc: "体内水分不足称为水虚。皮肤、毛发、大便干燥的入水虚的可能性较大。而且,这类人因为给身体起到降温作用的水分不足,所以,常常感到头晕眼花或者身体发热。\n\n作为养生法,就是要通过食物的摄取,有效地补充水分。其中,苹果和香蕉、白菜可以有效地滋润身体,要有意识地多多食用。而且,因为睡眠中容易出汗,水分会在不知不觉中流失,因此,要在枕边预备下温开水,醒来后先饮水。\n\n另一方面,要尽量避免食用香辛食材。因为香辛料有温暖身体的作用,可能会加重头晕眼花和身体发热的症状。水虚的人还要避免剧烈的运动。因为他们的关节水分不足,剧烈运动会引发疼痛。\n\n特征:睡眠浅,盗汗;关节运动不灵活;不明原因的消沉,情绪低落;毛发和皮肤脆弱,口腔和咽喉干燥;便秘,尿量少。"
+								}, F: {
+									index: 5,
+									title: "痰湿型",
+									tips: "(体内多余的水分~常常引发各种“不调”,要慎食味重食品)",
+									subTitle: "体型胖墩墩的",
+									desc: "现代职场女性多为痰湿型。所谓痰湿就是生活不规律、压力大等原因造成身体内形成多余的水分块(痰湿)的状态。因为我们的身体70%是由水构成的,所以痰湿的影响不容忽视,会造成我们的身心状态出现各种各样的“不调”。\n\n首先,有氧运动能够增加肌肉的弹力,促进血行和代谢。肌肉弹力的提高、血行和代谢的改善,就可以通过汗和取把多余的水分排出体外。\n\n第二要注意减少冷饮和味重食品的摄入量,因为它们会造成水分的滞留。\n\n第三要多食用黄瓜和西瓜、梨等有较好利尿作用的食物。也要多食红豆、薏米。\n\n特征:整个身体容易浮肿;容易发胖;早晨起床后脸上有枕头的痕迹;皮肤发白。胖墩墩的;爱生湿乎乎的疙瘩;性格自我,爱慕虚荣。"
+								}
+							};
+							var key = that.findKeyWithMaxValue(data);
+							console.log("睡眠数据最终555=>", ratingResultsMap[key]);
+							that.setData({
+								tzTitle: ratingResultsMap[key]?.title,
+								tzSubTitle: ratingResultsMap[key]?.subTitle,
+								isShowTz: true
+							})
+
+						}
+					}
+
+				} catch (error) {
+					console.error(error);
+				}
+
+			},
+		})
+	},
+
+	/**
+	 * A、B、C、D、E、F 最后积累的数量对比,按数量多少来判断,6个分别对应:气虚型、气滞型、血虚型、淤血型、水虚型、痰湿型
+ * 找出对象中值最大的键
+ * @param {Object} obj - 包含键值对的对象
+ * @returns {string|null} - 值最大的键,如果没有找到则返回null
+ */
+	findKeyWithMaxValue(obj) {
+		if (typeof obj !== 'object' || obj === null || Array.isArray(obj)) {
+			throw new Error('Input must be a plain object');
+		}
+
+		let maxKey = null;
+		let maxValue = -Infinity;
+
+		for (let key in obj) {
+			if (obj.hasOwnProperty(key)) {
+				if (obj[key] > maxValue) {
+					maxValue = obj[key];
+					maxKey = key;
+				}
+			}
+		}
+
+		return maxKey;
+	},
+
 	// 可选择的日期
-	getDateData: function (sn,isRefresh = true) {
+	getDateData: function (sn, isRefresh = true) {
 		var that = this;
 		var sourceFourthTemp = [];
 		wx.request({
@@ -1677,7 +1790,7 @@ Page({
 				// { "results": [{ "rpids": "459857", "durations": "14:17-17:55" }] }
 				if (!res || !res.data || !res.data.results || !res.data.results.length) {
 					that.setData({
-						isNoReportToday:true
+						isNoReportToday: true
 					})
 					return;
 				}
@@ -1692,7 +1805,7 @@ Page({
 					});
 					that.getReportData();
 				}
-				
+
 			},
 			fail: function (error) {
 				console.error('error', error);
@@ -1750,9 +1863,9 @@ Page({
 						// 	content: '无数据',
 						// 	showCancel: false
 						// });
-							that.setData({
-								isNoReportToday:true
-							})
+						that.setData({
+							isNoReportToday: true
+						})
 					}
 				} catch (error) {
 					console.error(error);
@@ -1792,7 +1905,7 @@ Page({
 							// 	showCancel: false
 							// });
 							that.setData({
-								isNoReportToday:true
+								isNoReportToday: true
 							})
 							return;
 						}

+ 13 - 8
subpages/data/data.wxml

@@ -145,16 +145,21 @@
 				</view>
 			</view>
 		</view>
-
+		<!-- <view class="text-container_c4">
+					<text class="text_c4">本次睡眠,睡眠报告得分评比描述:<text class="text_c4_1">{{rscore_desc}}</text></text>
+				</view> -->
 		<view class="container_4">
-			<view class="left-panel_c4">
-				<view class="text-container_c4_top_left">
-					<text class="text_c4_left_top">温馨提醒</text>
-				</view>
+			<view wx:if="{{!isShowTz}}" class="left-panel_c4">
 				<image class="image_c4" src="/subpages/images/left_background_c4_new.png" />
-				<view class="text-container_c4">
-					<text class="text_c4">本次睡眠,睡眠报告得分评比描述:<text class="text_c4_1">{{rscore_desc}}</text></text>
-				</view>
+				<text class="tz-title">检测您的体质状态</text>
+				<text class="tz-desc">多维分析 科学建议</text>
+				<text class="tz-btn" bindtap="toReport">立即检测</text>
+			</view>
+			<view wx:else class="left-panel_c4">
+				<image class="image_c4" src="/subpages/images/left_background_c4_new.png" />
+				<text class="tz-title">{{tzTitle}}</text>
+				<text class="tz-desc">{{tzSubTitle}}</text>
+				<text class="tz-btn" bindtap="toReport">重新检测</text>
 			</view>
 			<view class="right-panel_c4">
 				<view class="cell_c4">

+ 42 - 3
subpages/data/data.wxss

@@ -658,7 +658,7 @@ ec-canvas {
   position: relative;
   flex: 1;
   height: 230rpx;
-  background: linear-gradient(315deg, #CCC0F8 0%, #EDEAFF 100%);
+  background: linear-gradient(345deg, #C8F6EA 23%, #FFFFFF 68%);
   margin-left: 10rpx;
   border-radius: 5%;
 }
@@ -745,11 +745,50 @@ ec-canvas {
   position: absolute;
   right: 0;
   bottom: 0;
-  width: 156rpx;
-  height: 136rpx;
+  width: 138rpx;
+  height: 120rpx;
   /* 确保图片填充整个容器并保持其宽高比 */
 }
 
+.tz-title {
+  position: absolute;
+  top: 24rpx;
+  left: 20rpx;
+  font-weight: 400;
+  font-size: 28rpx;
+  color: #0BC3AA;
+}
+
+.tz-desc {
+  position: absolute;
+  top: 72rpx;
+  left: 20rpx;
+  font-weight: 400;
+  font-size: 20rpx;
+  color: #888888;
+}
+
+
+.tz-btn {
+  position: absolute;
+  bottom: 30rpx;
+  left: 20rpx;
+  width: 156rpx;
+  height: 56rpx;
+  background: linear-gradient(315deg, #0ABCA4 0%, rgba(11, 195, 170, 0.8) 100%);
+  border-radius: 292rpx 292rpx 292rpx 292rpx;
+  border: 2rpx solid #FFFFFF;
+  font-weight: 400;
+  font-size: 24rpx;
+  color: #FFFFFF;
+  text-align: center;
+  line-height: 56rpx;
+}
+
+.tz-btn:active {
+  opacity: 0.7;
+}
+
 .text-container_c4 {
   position: absolute;
   /* 绝对定位使得文字可以位于图片之上 */

+ 1 - 1
subpages/detectionResult/detectionResult.js

@@ -23,7 +23,7 @@ Page({
       title: "血虚型",
       tips: "(饮食生活无规律~可能也有气虚或气滞的原因)",
       subTitle: "头发散乱,皮肤无光泽",
-      desc:"你是否为了减肥极端地限制饮食,或者光在外边餐?如果一直这样,就会使营养失去平衡,引起“血”的不足,陷入血虚状态。\n\n为此,日常饮食重要的是要注意营养的平衡,特别要多食用有造血作用的羊栖菜、动物肝脏、梅干等。“血”增加了,头发散乱、皮肤无光泽这些血虚型的症状自然就消失了。夜间是人体的造血时间,因此不要熬夜。还要控制电脑和手机的使用,也要控制看电视的时间。中医学以为用眼是消耗“血”的。\n\n特征:头发脆弱,脱发;常常眩晕,站起时头晕;脸色不好,皮肤干燥;指甲偏薄,易裂;耳鸣;冷静,认真型。"
+      desc:"你是否为了减肥极端地限制饮食,或者光在外边吃快餐?如果一直这样,就会使营养失去平衡,引起“血”的不足,陷入血虚状态。\n\n为此,日常饮食重要的是要注意营养的平衡,特别要多食用有造血作用的羊栖菜、动物肝脏、梅干等。“血”增加了,头发散乱、皮肤无光泽这些血虚型的症状自然就消失了。夜间是人体的造血时间,因此不要熬夜。还要控制电脑和手机的使用,也要控制看电视的时间。中医学以为用眼是消耗“血”的。\n\n特征:头发脆弱,脱发;常常眩晕,站起时头晕;脸色不好,皮肤干燥;指甲偏薄,易裂;耳鸣;冷静,认真型。"
     }, {
       index: 3,
       title: "淤血型",

BIN
subpages/images/left_background_c4_new.png