Browse Source

refactor(frontend): 报告详情快速分析合并到有疑问或建议入口

Sisyphus Agent 2 ngày trước cách đây
mục cha
commit
6151e2b7de
1 tập tin đã thay đổi với 22 bổ sung28 xóa
  1. 22 28
      cfc-frontend/pages/health/gut-flora-detail.vue

+ 22 - 28
cfc-frontend/pages/health/gut-flora-detail.vue

@@ -219,7 +219,7 @@
       </view>
 
 
-      <view class="feedback-section" @tap="openFeedback">
+      <view class="feedback-section" @tap="openQuickAnalyze">
         <text class="feedback-icon">💬</text>
         <text class="feedback-text">对这个报告有疑问或建议?告诉我们</text>
         <text class="feedback-arrow">›</text>
@@ -228,18 +228,15 @@
       <view class="bottom-spacer"></view>
     </scroll-view>
 
-    <!-- 报告快速分析入口(仅查看模式,reportId 或 draftId 存在) -->
-    <view class="quick-analyze-fab" v-if="!isEditing && (reportId || draftId)" @tap="openQuickAnalyze">
-      <text class="quick-analyze-fab-icon">🎯</text>
-      <text class="quick-analyze-fab-text">快速分析</text>
-    </view>
-
-    <!-- 快速分析浮层 -->
+    <!-- 快速分析浮层(由「有疑问或建议」入口唤起) -->
     <view class="quick-analyze-overlay" v-if="quickAnalyze.show" @tap="closeQuickAnalyze"></view>
     <view class="quick-analyze-panel" v-if="quickAnalyze.show">
       <view class="quick-analyze-header">
         <text class="quick-analyze-title">报告快速分析</text>
-        <text class="quick-analyze-close" @tap="closeQuickAnalyze">✕</text>
+        <view class="quick-analyze-header-right">
+          <text class="quick-analyze-feedback" @tap="openFeedbackFromAnalyze">提交反馈</text>
+          <text class="quick-analyze-close" @tap="closeQuickAnalyze">✕</text>
+        </view>
       </view>
       <view class="quick-analyze-hint" v-if="quickAnalyze.usedToday">免费版今日次数已用完,升级会员解锁更多分析</view>
       <scroll-view class="quick-analyze-messages" scroll-y>
@@ -983,12 +980,13 @@ applyDraftPayload: function(payload) {
       this.knowledgeVisible = false
       this.knowledgeData = {}
     },
-    openFeedback: function() {
-      this.feedbackVisible = true
-    },
     closeFeedback: function() {
       this.feedbackVisible = false
     },
+    openFeedbackFromAnalyze: function() {
+      this.quickAnalyze.show = false
+      this.feedbackVisible = true
+    },
     toggleEdit: function() {
       this.isEditing = true
     },
@@ -1469,22 +1467,6 @@ applyDraftPayload: function(payload) {
   line-height: 1.5;
 }
 /* ===== 报告快速分析 ===== */
-.quick-analyze-fab {
-  position: fixed;
-  right: 30rpx;
-  bottom: 60rpx;
-  display: flex;
-  flex-direction: row;
-  align-items: center;
-  background: linear-gradient(135deg, #5B9BD5, #3B82F6);
-  border-radius: 44rpx;
-  padding: 18rpx 30rpx;
-  box-shadow: 0 4rpx 16rpx rgba(59, 130, 246, 0.4);
-  z-index: 90;
-}
-.quick-analyze-fab-icon { font-size: 32rpx; margin-right: 10rpx; }
-.quick-analyze-fab-text { font-size: 28rpx; color: #fff; font-weight: 500; }
-.quick-analyze-fab:active { opacity: 0.85; }
 .quick-analyze-overlay {
   position: fixed;
   top: 0; left: 0; right: 0; bottom: 0;
@@ -1511,6 +1493,18 @@ applyDraftPayload: function(payload) {
   margin-bottom: 16rpx;
 }
 .quick-analyze-title { font-size: 30rpx; font-weight: bold; color: #333; }
+.quick-analyze-header-right {
+  display: flex;
+  flex-direction: row;
+  align-items: center;
+  gap: 16rpx;
+}
+.quick-analyze-feedback {
+  font-size: 24rpx;
+  color: #5B9BD5;
+  padding: 8rpx;
+}
+.quick-analyze-feedback:active { opacity: 0.7; }
 .quick-analyze-close { font-size: 32rpx; color: #999; padding: 8rpx; }
 .quick-analyze-hint {
   font-size: 24rpx;