Răsfoiți Sursa

feat: add gut-testing product links to articles

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
Xiaogang Liao 3 luni în urmă
părinte
comite
92a757de7f

+ 10 - 0
cfc-backend/src/main/java/com/etotem/cfc/config/DatabaseInitializer.java

@@ -6187,6 +6187,16 @@ try {
     } catch (Exception e) {
     } catch (Exception e) {
         log.warn("修正主表dimension_weights JSON失败: {}", e.getMessage());
         log.warn("修正主表dimension_weights JSON失败: {}", e.getMessage());
     }
     }
+
+    // 迁移142: package_orders.user_id/family_id/package_id改为可空(匿名肠道菌群检测支付流程无用户/家庭/套餐)
+    try {
+        jdbcTemplate.execute("ALTER TABLE package_orders MODIFY COLUMN user_id BIGINT DEFAULT NULL COMMENT '购买者用户ID'");
+        jdbcTemplate.execute("ALTER TABLE package_orders MODIFY COLUMN family_id BIGINT DEFAULT NULL COMMENT '家庭ID'");
+        jdbcTemplate.execute("ALTER TABLE package_orders MODIFY COLUMN package_id BIGINT DEFAULT NULL COMMENT '套餐ID'");
+        log.info("已修改package_orders.user_id/family_id/package_id为可空");
+    } catch (Exception e) {
+        log.warn("修改package_orders可空列失败: {}", e.getMessage());
+    }
     }
     }
 
 
     private void runMigration82() {
     private void runMigration82() {

+ 16 - 0
cfc-backend/src/main/java/com/etotem/cfc/controller/guide/PaymentController.java

@@ -17,6 +17,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.*;
 
 
 import javax.imageio.ImageIO;
 import javax.imageio.ImageIO;
+import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 import java.awt.image.BufferedImage;
 import java.awt.image.BufferedImage;
 import java.net.URLEncoder;
 import java.net.URLEncoder;
@@ -129,6 +130,21 @@ public class PaymentController {
         return Result.success(result);
         return Result.success(result);
     }
     }
 
 
+    /**
+     * 微信支付v3回调(JSON格式,含签名)
+     * 接收微信支付结果通知,更新订单状态
+     */
+    @Operation(summary = "微信支付v3回调")
+    @PostMapping("/wechat/v3-notify")
+    public String handleV3Notify(@RequestBody String body, HttpServletRequest request) {
+        String signature = request.getHeader("Wechatpay-Signature");
+        Map<String, Object> result = paymentService.handleWechatNotify(body, signature);
+        if (result != null && "SUCCESS".equals(result.get("code"))) {
+            return "{\"code\":\"SUCCESS\"}";
+        }
+        return "{\"code\":\"FAIL\"}";
+    }
+
     /**
     /**
      * 处理微信支付回调
      * 处理微信支付回调
      */
      */

+ 3 - 3
cfc-backend/src/main/resources/schema.sql

@@ -619,9 +619,9 @@ CREATE TABLE IF NOT EXISTS task_plan_items (
 CREATE TABLE IF NOT EXISTS package_orders (
 CREATE TABLE IF NOT EXISTS package_orders (
     id BIGINT AUTO_INCREMENT PRIMARY KEY,
     id BIGINT AUTO_INCREMENT PRIMARY KEY,
     order_no VARCHAR(32) UNIQUE NOT NULL,
     order_no VARCHAR(32) UNIQUE NOT NULL,
-    user_id BIGINT NOT NULL COMMENT '购买者用户ID',
-    family_id BIGINT NOT NULL COMMENT '家庭ID',
-    package_id BIGINT NOT NULL COMMENT '套餐ID',
+    user_id BIGINT DEFAULT NULL COMMENT '购买者用户ID',
+    family_id BIGINT DEFAULT NULL COMMENT '家庭ID',
+    package_id BIGINT DEFAULT NULL COMMENT '套餐ID',
     package_name VARCHAR(100) COMMENT '套餐名称',
     package_name VARCHAR(100) COMMENT '套餐名称',
     price INT NOT NULL COMMENT '支付金额(分)',
     price INT NOT NULL COMMENT '支付金额(分)',
     platform_fee INT DEFAULT 0 COMMENT '平台服务费(分)',
     platform_fee INT DEFAULT 0 COMMENT '平台服务费(分)',

+ 1 - 1
web/articles/alzheimer.html

@@ -1037,7 +1037,7 @@
     <h3>1.1 认知筛查</h3>
     <h3>1.1 认知筛查</h3>
     <p>MoCA(Montreal Cognitive Assessment,比MMSE更敏感)≥60岁每年一次。</p>
     <p>MoCA(Montreal Cognitive Assessment,比MMSE更敏感)≥60岁每年一次。</p>
     
     
-    <h3>1.2 肠道菌群检测</h3>
+    <h3>1.2 <a href="../product-intro/gut-testing.html" style="color:var(--accent);text-decoration:underline;">肠道菌群检测</a></h3>
     <p>产丁酸菌丰度↓是神经炎症风险的肠道标志。</p>
     <p>产丁酸菌丰度↓是神经炎症风险的肠道标志。</p>
     
     
     <h3>1.3 Aβ/Tau生物标志物(研究级)</h3>
     <h3>1.3 Aβ/Tau生物标志物(研究级)</h3>

+ 1 - 1
web/articles/cardio-cerebro.html

@@ -1058,7 +1058,7 @@
     <!-- 菌群检测评估肠漏 -->
     <!-- 菌群检测评估肠漏 -->
     <div style="background:var(--teal-light);border:1px solid rgba(20,143,119,0.2);border-radius:12px;padding:1rem 1.2rem;margin-bottom:1.5rem;">
     <div style="background:var(--teal-light);border:1px solid rgba(20,143,119,0.2);border-radius:12px;padding:1rem 1.2rem;margin-bottom:1.5rem;">
       <p style="margin:0;font-size:0.95rem;line-height:1.8;">
       <p style="margin:0;font-size:0.95rem;line-height:1.8;">
-        <strong>🧬 为什么肠道菌群检测是炎症评估中不可缺失的一环?</strong>hsCRP反映的是"炎症已经存在"的后果,而肠道菌群检测反映的是"炎症从哪里来"的根源——肠漏风险。通过宏基因组测序评估<strong>产丁酸菌丰度、条件致病菌比例、LPS释放潜力</strong>,可以在hsCRP升高之前就识别出肠漏高风险人群(<em>van den Munckhof et al., Eur J Prev Cardiol 2024</em>)。建议将肠道菌群检测纳入常规炎症评估体系,尤其是对有消化道症状(腹胀/腹泻/便秘)、抗生素使用史、或家族心血管病史的人群。<strong>检测频率:每1-2年一次,干预后3-6个月复查评估效果。</strong>
+        <strong>🧬 为什么<a href="../product-intro/gut-testing.html" style="color:var(--accent);text-decoration:underline;">肠道菌群检测</a>是炎症评估中不可缺失的一环?</strong>hsCRP反映的是"炎症已经存在"的后果,而肠道菌群检测反映的是"炎症从哪里来"的根源——肠漏风险。通过宏基因组测序评估<strong>产丁酸菌丰度、条件致病菌比例、LPS释放潜力</strong>,可以在hsCRP升高之前就识别出肠漏高风险人群(<em>van den Munckhof et al., Eur J Prev Cardiol 2024</em>)。建议将肠道菌群检测纳入常规炎症评估体系,尤其是对有消化道症状(腹胀/腹泻/便秘)、抗生素使用史、或家族心血管病史的人群。<strong>检测频率:每1-2年一次,干预后3-6个月复查评估效果。</strong>
       </p>
       </p>
     </div>
     </div>
 
 

+ 1 - 1
web/articles/geo-faq-1-allergy.html

@@ -327,7 +327,7 @@
       <h2>三、从"对症治疗"到"对因调理"</h2>
       <h2>三、从"对症治疗"到"对因调理"</h2>
       <p>传统过敏治疗以<strong>"对症"</strong>为主——湿疹抹药膏、鼻炎喷激素、过敏吃抗组胺药。这些方法可以暂时控制症状,但无法解决根本问题,停药后容易复发。</p>
       <p>传统过敏治疗以<strong>"对症"</strong>为主——湿疹抹药膏、鼻炎喷激素、过敏吃抗组胺药。这些方法可以暂时控制症状,但无法解决根本问题,停药后容易复发。</p>
       <p>基于肠道菌群-免疫-过敏三角关系的科学认识,现代的过敏管理思路正在转向<strong>"对因调理"</strong>——从修复肠道菌群入手,重建免疫系统的正常应答机制。</p>
       <p>基于肠道菌群-免疫-过敏三角关系的科学认识,现代的过敏管理思路正在转向<strong>"对因调理"</strong>——从修复肠道菌群入手,重建免疫系统的正常应答机制。</p>
-      <p>而这一切的第一步,是<strong>了解孩子肠道菌群的真实状况</strong>——这正是菌群检测的核心价值,检测数据会沉淀到孩子的健康档案中。</p>
+      <p>而这一切的第一步,是<strong>了解孩子肠道菌群的真实状况</strong>——这正是<a href="../product-intro/gut-testing.html" style="color:var(--accent);text-decoration:underline;">菌群检测</a>的核心价值,检测数据会沉淀到孩子的健康档案中。</p>
 
 
       <h3>菌群检测能告诉你什么?</h3>
       <h3>菌群检测能告诉你什么?</h3>
       <ul>
       <ul>

+ 1 - 1
web/articles/gut-microbiome-immune.html

@@ -886,7 +886,7 @@
       <div class="card card-purple">
       <div class="card card-purple">
         <span class="card-icon">🔬</span>
         <span class="card-icon">🔬</span>
         <h3>① 评估——了解你的菌群状态</h3>
         <h3>① 评估——了解你的菌群状态</h3>
-        <p>养护的第一步是<strong>检测而非猜测</strong>。肠道菌群检测(宏基因组测序或16S rRNA测序)可以提供以下关键指标:</p>
+        <p>养护的第一步是<strong>检测而非猜测</strong>。<a href="../product-intro/gut-testing.html" style="color:var(--accent);text-decoration:underline;">肠道菌群检测(宏基因组测序或16S rRNA测序)</a>可以提供以下关键指标:</p>
         <ul class="list-styled">
         <ul class="list-styled">
           <li><strong>菌群多样性</strong>— 最核心的健康指标,多样性越低提示慢性炎症风险越高</li>
           <li><strong>菌群多样性</strong>— 最核心的健康指标,多样性越低提示慢性炎症风险越高</li>
           <li><strong>F/B比值</strong>— 肥胖/代谢综合征的风险提示</li>
           <li><strong>F/B比值</strong>— 肥胖/代谢综合征的风险提示</li>

+ 1 - 1
web/articles/leaky-gut.html

@@ -236,7 +236,7 @@
 
 
     <div class="info-card purple">
     <div class="info-card purple">
       <h3>🧪 菌群检测——了解你的肠道生态</h3>
       <h3>🧪 菌群检测——了解你的肠道生态</h3>
-      <p>修复肠漏的前提是了解导致肠漏的菌群因素。肠道菌群检测(16S rRNA测序)可以评估:</p>
+      <p>修复肠漏的前提是了解导致肠漏的菌群因素。<a href="../product-intro/gut-testing.html" style="color:var(--accent);text-decoration:underline;">肠道菌群检测(16S rRNA测序)</a>可以评估:</p>
       <p>• 菌群多样性——多样性越低,肠漏风险越高</p>
       <p>• 菌群多样性——多样性越低,肠漏风险越高</p>
       <p>• 产丁酸菌丰度——丁酸菌不足→肠上皮细胞能量供应不足→屏障受损</p>
       <p>• 产丁酸菌丰度——丁酸菌不足→肠上皮细胞能量供应不足→屏障受损</p>
       <p>• 条件致病菌丰度——某些致病菌(如克雷伯菌、变形杆菌)直接破坏紧密连接</p>
       <p>• 条件致病菌丰度——某些致病菌(如克雷伯菌、变形杆菌)直接破坏紧密连接</p>

+ 1 - 1
web/articles/memory-gut.html

@@ -184,7 +184,7 @@
 
 
     <div class="info-card teal">
     <div class="info-card teal">
       <h3>🧪 菌群检测——了解孩子的"第二基因组"</h3>
       <h3>🧪 菌群检测——了解孩子的"第二基因组"</h3>
-      <p>每个孩子的肠道菌群都是独一无二的——就像指纹一样。通过肠道菌群检测(16S rRNA测序),可以了解孩子肠道菌群的多样性、有益菌和有害菌的比例、产丁酸菌的丰度等信息。基于检测结果,可以制定针对性的饮食和营养方案,而不是"盲补"。</p>
+      <p>每个孩子的肠道菌群都是独一无二的——就像指纹一样。通过<a href="../product-intro/gut-testing.html" style="color:var(--accent);text-decoration:underline;">肠道菌群检测(16S rRNA测序)</a>,可以了解孩子肠道菌群的多样性、有益菌和有害菌的比例、产丁酸菌的丰度等信息。基于检测结果,可以制定针对性的饮食和营养方案,而不是"盲补"。</p>
     </div>
     </div>
 
 
     <div class="highlight-box">
     <div class="highlight-box">

+ 1 - 1
web/articles/metabolic-syndrome.html

@@ -847,7 +847,7 @@
         <li>饮食是否高糖高脂、低纤维?(肠道菌群失调→内毒素升高)</li>
         <li>饮食是否高糖高脂、低纤维?(肠道菌群失调→内毒素升高)</li>
         <li>有没有服用抗生素或长期PPI药物?(菌群破坏→炎症因子升高)</li>
         <li>有没有服用抗生素或长期PPI药物?(菌群破坏→炎症因子升高)</li>
       </ul>
       </ul>
-      <p style="margin-top:0.5rem;font-size:0.85rem;color:var(--text-muted);">推荐检测:肠道菌群检测(评估多样性、产丁酸菌丰度、条件致病菌比例)</p>
+      <p style="margin-top:0.5rem;font-size:0.85rem;color:var(--text-muted);">推荐检测:<a href="../product-intro/gut-testing.html" style="color:var(--accent);text-decoration:underline;">肠道菌群检测</a>(评估多样性、产丁酸菌丰度、条件致病菌比例)</p>
     </div>
     </div>
     <div class="card card-teal">
     <div class="card card-teal">
       <span class="card-icon">🦠</span>
       <span class="card-icon">🦠</span>

+ 1 - 1
web/articles/pancreatitis.html

@@ -412,7 +412,7 @@
       <p><strong>② 戒酒或限酒:</strong>酒精是胰腺炎的第二大病因。对已发作过胰腺炎的患者,<strong>完全戒酒</strong>是最重要的预防措施。即使少量饮酒也可能诱发复发。</p>
       <p><strong>② 戒酒或限酒:</strong>酒精是胰腺炎的第二大病因。对已发作过胰腺炎的患者,<strong>完全戒酒</strong>是最重要的预防措施。即使少量饮酒也可能诱发复发。</p>
       <p><strong>③ 胆结石管理:</strong>胆源性胰腺炎发作后,建议在出院前或出院后1-4周内行胆囊切除术,可有效预防复发。胆囊切除术后胆源性胰腺炎的复发率几乎为零。</p>
       <p><strong>③ 胆结石管理:</strong>胆源性胰腺炎发作后,建议在出院前或出院后1-4周内行胆囊切除术,可有效预防复发。胆囊切除术后胆源性胰腺炎的复发率几乎为零。</p>
       <p><strong>④ 修复肠道屏障:</strong>肠漏是全身慢性炎症的重要驱动因素。通过膳食纤维(益生元)、谷氨酰胺、锌等营养素修复肠道屏障,降低LPS入血,从源头减少胰腺的炎症暴露。</p>
       <p><strong>④ 修复肠道屏障:</strong>肠漏是全身慢性炎症的重要驱动因素。通过膳食纤维(益生元)、谷氨酰胺、锌等营养素修复肠道屏障,降低LPS入血,从源头减少胰腺的炎症暴露。</p>
-      <p><strong>⑤ 菌群检测与调理:</strong>胰腺炎发作后,肠道菌群往往处于失衡状态。通过16S rRNA菌群检测了解菌群状态,针对性补充膳食纤维、调整饮食结构,恢复菌群多样性,可能降低复发风险。</p>
+      <p><strong>⑤ 菌群检测与调理:</strong>胰腺炎发作后,肠道菌群往往处于失衡状态。通过<a href="../product-intro/gut-testing.html" style="color:var(--accent);text-decoration:underline;">16S rRNA菌群检测</a>了解菌群状态,针对性补充膳食纤维、调整饮食结构,恢复菌群多样性,可能降低复发风险。</p>
     </div>
     </div>
 
 
     <div class="highlight-box">
     <div class="highlight-box">