Ver Fonte

Merge remote changes - resolve DatabaseInitializer conflict (keep both migration 144 + 145)

asus há 1 mês atrás
pai
commit
ab861c2b32

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

@@ -7311,5 +7311,22 @@ private void runMigration100() {
 		} catch (Exception e) {
 			log.warn("添加users.session_key字段失败: {}", e.getMessage());
 		}
+
+		// 迁移145: 创建家庭天盘周报导出记录表(ReportSummaryService 全量同步依赖,此前从未建表)
+		try {
+			jdbcTemplate.execute("CREATE TABLE IF NOT EXISTS family_fortune_report (" +
+					"id BIGINT AUTO_INCREMENT PRIMARY KEY, " +
+					"family_id INT NOT NULL COMMENT '家庭ID', " +
+					"element VARCHAR(32) COMMENT '主导五行元素', " +
+					"lucky_direction VARCHAR(64) COMMENT '本周吉位', " +
+					"pdf_path VARCHAR(255) COMMENT 'PDF周报文件路径', " +
+					"file_size BIGINT COMMENT '文件大小(字节)', " +
+					"created_at DATETIME DEFAULT CURRENT_TIMESTAMP, " +
+					"INDEX idx_family_id (family_id)" +
+					") ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='家庭天盘周报导出记录'");
+			log.info("已创建family_fortune_report表");
+		} catch (Exception e) {
+			log.warn("创建family_fortune_report表失败: {}", e.getMessage());
+		}
 	}
 }

+ 18 - 3
cfc-backend/src/main/java/com/etotem/cfc/controller/admin/AdminArticleController.java

@@ -166,9 +166,24 @@ public class AdminArticleController {
         } else if (rd instanceof String) {
             article.setRelatedDimensions((String) rd);
         }
-        article.setVisibility((String) body.get("visibility"));
-        article.setVisibleTo((String) body.get("visibleTo"));
-        article.setArticleType((String) body.get("articleType"));
+        Object visibilityVal = body.get("visibility");
+        if (visibilityVal instanceof List) {
+            article.setVisibility(String.join(",", (List<String>) visibilityVal));
+        } else if (visibilityVal instanceof String) {
+            article.setVisibility((String) visibilityVal);
+        }
+        Object visibleToVal = body.get("visibleTo");
+        if (visibleToVal instanceof List) {
+            article.setVisibleTo(String.join(",", (List<String>) visibleToVal));
+        } else if (visibleToVal instanceof String) {
+            article.setVisibleTo((String) visibleToVal);
+        }
+        Object articleTypeVal = body.get("articleType");
+        if (articleTypeVal instanceof List) {
+            article.setArticleType(String.join(",", (List<String>) articleTypeVal));
+        } else if (articleTypeVal instanceof String) {
+            article.setArticleType((String) articleTypeVal);
+        }
         articleService.update(article);
 
         return Result.success("更新成功");

+ 3 - 2
cfc-backend/src/main/java/com/etotem/cfc/controller/family/FamilyMembersController.java

@@ -51,12 +51,13 @@ public Result<List<FamilyMemberVO>> listMembers(@RequestAttribute("userId") Long
 
 @Operation(summary = "切换到家庭成员视图")
 @PostMapping("/switch")
-public Result<SwitchMemberVO> switchToMember(@RequestBody Map<String, Long> body,
+public Result<SwitchMemberVO> switchToMember(@RequestBody Map<String, Object> body,
  @RequestAttribute("userId") Long userId) {
  if (userId == null) {
    return Result.error("请先登录");
  }
- Long memberId = body.get("memberId");
+ Long memberId = body.get("memberId") != null
+ ? Long.valueOf(body.get("memberId").toString()) : null;
  if (memberId == null) {
    return Result.error("缺少成员ID");
  }

+ 14 - 0
cfc-backend/src/main/resources/schema.sql

@@ -3702,3 +3702,17 @@ CREATE TABLE IF NOT EXISTS virtual_goods_config (
     update_time DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
     UNIQUE KEY uk_goods_type_biz (goods_type, biz_key)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='小程序虚拟支付道具映射';
+
+-- ============================================================
+-- 家庭天盘周报导出记录表(迁移144)
+-- ============================================================
+CREATE TABLE IF NOT EXISTS family_fortune_report (
+    id BIGINT AUTO_INCREMENT PRIMARY KEY,
+    family_id INT NOT NULL COMMENT '家庭ID',
+    element VARCHAR(32) COMMENT '主导五行元素',
+    lucky_direction VARCHAR(64) COMMENT '本周吉位',
+    pdf_path VARCHAR(255) COMMENT 'PDF周报文件路径',
+    file_size BIGINT COMMENT '文件大小(字节)',
+    created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
+    INDEX idx_family_id (family_id)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='家庭天盘周报导出记录';

+ 1 - 1
cfc-web/.last_build_commit

@@ -1 +1 @@
-87b1303c873d1dff96e83beb45f6377a2a2401e8
+c697fb7b723e245a536174a42bd85251153f842b

+ 1 - 1
cfc-web/package.json

@@ -1,6 +1,6 @@
 {
   "name": "cfc-web",
-  "version": "1.0.739",
+  "version": "1.0.741",
   "private": true,
   "scripts": {
     "dev": "vue-cli-service serve",

+ 31 - 0
cfc-web/public/CHANGELOG-v1.0.md

@@ -4,6 +4,37 @@
 
 ---
 
+## v1.0.741 (2026-08-02)
+
+### Bug 修复
+- wangEditor v5 上传图片改用customInsert+限制5M+错误提示
+- 图片上传multipart大小限制+微信安全检测超过1M跳过
+- 文章详情页封面图和正文图片拼接 API_BASE_URL,修复未登录时相对路径图片加载失败
+
+### 其他
+- Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
+- 
+- Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
+- 
+- - content 富文本内 /uploads/ 相对图片路径替换为完整 URL
+- - 后端 FileStorageService 存储相对路径,前端渲染时需拼接 baseURL
+- 
+
+
+## v1.0.740 (2026-08-02)
+
+### 新功能
+- 商城入口统一指向商品商城/移除积分商城+推荐商品文案统一+商城标题'浠艾福商城'
+
+### Bug 修复
+- 新建商品时显示SKU维护入口
+
+### 其他
+- - ProductSkuEditor: 支持新建时暂存 SKU,商品创建后自动提交
+- - handleSave: 创建后更新 form.id,触发 SKU 编辑器 watch
+- 
+
+
 ## v1.0.739 (2026-08-02)
 
 ### 新功能

+ 32 - 1
cfc-web/public/CHANGELOG.md

@@ -1,6 +1,6 @@
 # 更新日志
 
-> 当前版本: v1.0.739
+> 当前版本: v1.0.741
 
 ## 历史版本
 
@@ -8,6 +8,37 @@
 
 ---
 
+## v1.0.741 (2026-08-02)
+
+### Bug 修复
+- wangEditor v5 上传图片改用customInsert+限制5M+错误提示
+- 图片上传multipart大小限制+微信安全检测超过1M跳过
+- 文章详情页封面图和正文图片拼接 API_BASE_URL,修复未登录时相对路径图片加载失败
+
+### 其他
+- Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
+- 
+- Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
+- 
+- - content 富文本内 /uploads/ 相对图片路径替换为完整 URL
+- - 后端 FileStorageService 存储相对路径,前端渲染时需拼接 baseURL
+- 
+
+
+## v1.0.740 (2026-08-02)
+
+### 新功能
+- 商城入口统一指向商品商城/移除积分商城+推荐商品文案统一+商城标题'浠艾福商城'
+
+### Bug 修复
+- 新建商品时显示SKU维护入口
+
+### 其他
+- - ProductSkuEditor: 支持新建时暂存 SKU,商品创建后自动提交
+- - handleSave: 创建后更新 form.id,触发 SKU 编辑器 watch
+- 
+
+
 ## v1.0.739 (2026-08-02)
 
 ### 新功能