Przeglądaj źródła

feat(frontend): 统一四个Tab页面的家庭关系卡片组件 + 齿轮图进入成员维护

Xiaogang Liao 3 miesięcy temu
rodzic
commit
86fe2205e8

+ 6 - 0
cfc-frontend/components/FamilyRelationshipSection.vue

@@ -7,6 +7,7 @@
       <view class="contact-header-right">
         <text class="contact-more" @click="$emit('refresh')">刷新</text>
         <text class="contact-import-btn" @click="$emit('import')">+ 导入</text>
+        <text class="contact-manage-btn" @click="$emit('manage')">⚙️</text>
       </view>
     </view>
     <scroll-view class="contact-scroll" scroll-x enable-flex>
@@ -116,6 +117,11 @@ export default {
   color: #F97316;
   font-weight: 500;
 }
+.contact-manage-btn {
+  font-size: 30rpx;
+  color: #999;
+  padding: 4rpx;
+}
 .contact-scroll {
   white-space: nowrap;
   overflow: hidden;

+ 11 - 0
cfc-frontend/pages/body/index.vue

@@ -195,6 +195,14 @@
       </view>
     </view>
 
+    <!-- ===== 重要关系维护 + 关系健康概览 ===== -->
+    <FamilyRelationshipSection
+      :contactList="contactList"
+      :healthAlerts="healthAlerts"
+      :milestones="milestones"
+      :isLoggedIn="isLoggedIn"
+      @manage="goFamilyMembers" />
+
     <!-- 底部占位 -->
     <view class="bottom-spacer"></view>
     <AIFloatingAvatar />
@@ -540,6 +548,9 @@ export default {
         url: '/pages/member-detail/member-detail?memberId=' + member.memberId + '&memberType=' + (member.memberType || 'child') + '&entrySource=relation-graph&dimensionCode=body'
       })
     },
+    goFamilyMembers: function() {
+      uni.navigateTo({ url: '/pages/profile/family-members' })
+    },
     sectionVisible: function(key) {
       return this.visibleSections.length === 0 || this.visibleSections.indexOf(key) !== -1
     },

+ 11 - 0
cfc-frontend/pages/mind/index.vue

@@ -284,6 +284,14 @@
       </view>
     </view>
 
+    <!-- ===== 重要关系维护 + 关系健康概览 ===== -->
+    <FamilyRelationshipSection
+      :contactList="contactList"
+      :healthAlerts="healthAlerts"
+      :milestones="milestones"
+      :isLoggedIn="isLoggedIn"
+      @manage="goFamilyMembers" />
+
     <!-- 底部占位 -->
     <view class="bottom-spacer"></view>
     <AIFloatingAvatar />
@@ -899,6 +907,9 @@ export default {
         url: '/pages/member-detail/member-detail?memberId=' + member.memberId + '&entrySource=relation-graph&selfId=' + currentId + '&dimensionCode=mind'
       })
     },
+    goFamilyMembers: function() {
+      uni.navigateTo({ url: '/pages/profile/family-members' })
+    },
 
     goAssessment: function() { uni.navigateTo({ url: '/pages/assessment/apply' }) },
     goLogin: function() { uni.navigateTo({ url: '/pages/login/login' }) },

+ 11 - 0
cfc-frontend/pages/wisdom/index.vue

@@ -139,6 +139,14 @@
       </view>
     </view>
 
+    <!-- ===== 重要关系维护 + 关系健康概览 ===== -->
+    <FamilyRelationshipSection
+      :contactList="contactList"
+      :healthAlerts="healthAlerts"
+      :milestones="milestones"
+      :isLoggedIn="isLoggedIn"
+      @manage="goFamilyMembers" />
+
     <!-- 底部占位 -->
     <view class="bottom-spacer"></view>
     <AIFloatingAvatar />
@@ -402,6 +410,9 @@ export default {
     goMemberDetail: function(memberId) {
       uni.navigateTo({ url: '/pages/member-detail/member-detail?memberId=' + memberId + '&entrySource=relation-graph&dimensionCode=wisdom' })
     },
+    goFamilyMembers: function() {
+      uni.navigateTo({ url: '/pages/profile/family-members' })
+    },
     goCognitiveReport: function() {
       uni.navigateTo({ url: '/pages/wisdom-detail/cognitive-report' })
     },