|
|
@@ -147,7 +147,7 @@ import RadarChart from '../../components/RadarChart.vue'
|
|
|
import FloatingAvatar from '../../components/AIFloatingAvatar.vue'
|
|
|
import DimensionIntroCard from '../../components/DimensionIntroCard.vue'
|
|
|
import FamilyMemberStrip from '../../components/FamilyMemberStrip.vue'
|
|
|
-import { getVisibleSections, getEnergyOverview, getChildren, getFamilyEnergySandbox, getEnergySandbox, getFamilyMemberList, getDimensionOverview, getGutFloraIndicators } from '../../utils/api.js'
|
|
|
+import { getVisibleSections, getEnergyOverview, getChildren, getFamilyEnergySandbox, getEnergySandbox, getFamilyMemberList, getDimensionOverview, getGutFloraIndicators, getBodyAbnormalIndicators } from '../../utils/api.js'
|
|
|
|
|
|
export default {
|
|
|
components: { TabTransition, PageBanner, FamilyEnergyBar, RadarChart, FloatingAvatar, FamilyMemberStrip, DimensionIntroCard },
|
|
|
@@ -169,6 +169,7 @@ export default {
|
|
|
bodyIndicators: [],
|
|
|
gutFloraIndicators: [],
|
|
|
hasGutReport: false,
|
|
|
+ diseaseRisks: [],
|
|
|
sandboxData: null,
|
|
|
currentView: 'self', // 'self' | 'family'
|
|
|
dualDimension: null,
|
|
|
@@ -364,6 +365,8 @@ export default {
|
|
|
self.loadBodyIndicators(memberId)
|
|
|
// 加载菌群指标
|
|
|
self.loadGutFlora(memberId)
|
|
|
+ // 加载疾病风险
|
|
|
+ self.loadDiseaseRisks(memberId)
|
|
|
},
|
|
|
loadBodyIndicators: function(memberId) {
|
|
|
var self = this
|
|
|
@@ -488,6 +491,14 @@ export default {
|
|
|
}
|
|
|
uni.navigateTo({ url: '/pages/health/nutrition-profile?memberId=' + id })
|
|
|
},
|
|
|
+ loadDiseaseRisks: function(memberId) {
|
|
|
+ var self = this
|
|
|
+ getBodyAbnormalIndicators(memberId).then(function(res) {
|
|
|
+ if (res.code === 200 && res.data && res.data.diseaseRisks) {
|
|
|
+ self.diseaseRisks = res.data.diseaseRisks
|
|
|
+ }
|
|
|
+ }).catch(function(e) { console.log('[body] loadDiseaseRisks failed', e) })
|
|
|
+ },
|
|
|
goToBodyDetail: function() {
|
|
|
var id = this.activeChildId || uni.getStorageSync('currentChildId')
|
|
|
if (!id) return
|
|
|
@@ -643,6 +654,20 @@ export default {
|
|
|
.gut-empty-hint { text-align: center; padding: 30rpx; color: #999; font-size: 26rpx; background: #fff; border-radius: 16rpx; margin-bottom: 16rpx; }
|
|
|
.gut-upload-link { color: #3B82F6; margin-left: 8rpx; }
|
|
|
|
|
|
+/* ===== 疾病风险 ===== */
|
|
|
+.risk-section { margin: 20rpx 30rpx; }
|
|
|
+.risk-list { background: #fff; border-radius: 16rpx; padding: 8rpx 0; box-shadow: 0 2rpx 12rpx rgba(0,0,0,0.06); }
|
|
|
+.risk-item { display: flex; align-items: center; justify-content: space-between; padding: 20rpx 24rpx; border-bottom: 1rpx solid #F3F4F6; }
|
|
|
+.risk-item:last-child { border-bottom: none; }
|
|
|
+.risk-item.risk-高风险 { background: #FEF2F2; }
|
|
|
+.risk-item.risk-需注意 { background: #FFFBEB; }
|
|
|
+.risk-name { font-size: 28rpx; font-weight: 500; color: #333; flex: 1; }
|
|
|
+.risk-right { display: flex; align-items: center; gap: 12rpx; }
|
|
|
+.risk-value { font-size: 24rpx; color: #666; }
|
|
|
+.risk-level { font-size: 22rpx; padding: 4rpx 12rpx; border-radius: 20rpx; }
|
|
|
+.risk-level.高风险 { background: #FEE2E2; color: #DC2626; }
|
|
|
+.risk-level.需注意 { background: #FEF3C7; color: #D97706; }
|
|
|
+
|
|
|
.bottom-spacer {
|
|
|
height: 120rpx;
|
|
|
}
|