fix: 移除损坏的 Claude gitlink 并同步业务与文档更新
- 从索引移除误记录的 .claude/worktrees gitlink(旧绝对路径会导致 git 命令失败) - 新增根目录 .gitignore 忽略 .claude/worktrees 与 .DS_Store - 后端:Coze/知识库、ResultAdvice、应用配置 - 前端 uniapp:AI 营养、食物百科等页面与 API - 更新 README、测试文档与 shop-msh.sql Made-with: Cursor
This commit is contained in:
@@ -1,23 +1,42 @@
|
||||
# 手动测试问题
|
||||
|
||||
## 页面(pages/tool/food-encyclopedia)测试
|
||||
- 1. **已修复**页面(pages/tool/food-encyclopedia)报错:
|
||||
- 2. **已修复**页面(pages/tool/food-encyclopedia)中class="category-badge"改成显示中文
|
||||
- 3. **已修复**页面(pages/tool/food-encyclopedia)点击进入详情页
|
||||
|
||||
## 页面(pages/tool/nutrient-detail?name=%E9%92%BE)
|
||||
|
||||
- 1. **已修复**显示空白页,返回数据为空,如果是因为v2_knowledge 表尚无营养素数据,通过ai生成需要的数据可以插入到v2_knowledge表中
|
||||
|
||||
|
||||
## 页面(pages/tool/ai-nutritionist)
|
||||
|
||||
- 1. 优化方案:/Users/a123/msh-system/docs/功能开发详细设计_2026-03-25.md
|
||||
- 2. 对话响应还是很慢,是否可以使用SSE流式对话来优化响应速度?
|
||||
- 3. **已修复** 会话错误:"发起对话失败:未返回会话或对话ID"
|
||||
- 1. 请求后页面显示:"未能获取到有效回复。"
|
||||
fetch("http://127.0.0.1:20822/api/front/coze/chat/stream", {
|
||||
"headers": {
|
||||
"accept": "*/*",
|
||||
"authori-zation": "6f6767b2edc64949b0e4888c199ac0bb",
|
||||
"content-type": "application/json",
|
||||
"sec-fetch-dest": "empty",
|
||||
"sec-fetch-mode": "cors",
|
||||
"sec-fetch-site": "same-site"
|
||||
},
|
||||
"referrer": "https://servicewechat.com/wx7ecf3e3699353c69/devtools/page-frame.html",
|
||||
"referrerPolicy": "strict-origin-when-cross-origin",
|
||||
"body": "{\"botId\":\"7591133240535449654\",\"userId\":11,\"additionalMessages\":[{\"role\":\"user\",\"content\":\"透析患者可以喝牛奶吗?\",\"content_type\":\"text\"}],\"stream\":true,\"autoSaveHistory\":true}",
|
||||
"method": "POST",
|
||||
"mode": "cors",
|
||||
"credentials": "omit"
|
||||
});
|
||||
|
||||
|
||||
## 修复记录
|
||||
|
||||
### 问题 1 修复:流式对话显示"未能获取到有效回复"
|
||||
|
||||
**根因分析**:两个问题导致前端无法正确接收流式数据:
|
||||
|
||||
1. **Delta 事件过滤条件过严** — `ai-nutritionist.vue` 中 `sendToAIStream()` 对 `conversation.message.delta` 事件要求 `evt.role === 'assistant' && evt.type === 'answer'`。但 Coze SDK 在流式增量事件中可能不返回 `role` 和 `type` 字段(后端发送的精简 JSON 仅在字段非 null 时才包含),导致所有增量内容被静默丢弃。
|
||||
|
||||
2. **未处理非分块响应降级** — `cozeChatStream()` 中 `success` 回调未处理响应体。在微信开发者工具或某些不支持 `onChunkReceived` 的环境下,流式数据仅在 `res.data` 中一次性返回,但被完全忽略。
|
||||
|
||||
**修复内容**:
|
||||
- `ai-nutritionist.vue`:将 delta 过滤改为 `const role = evt.role || 'assistant'`,缺失字段时默认为预期值。
|
||||
- `models-api.js`:增加 `_gotChunks` 标记,当 `onChunkReceived` 未触发时,在 `success` 回调中解析 `res.data` 作为降级处理;增加 `responseType: 'text'` 确保响应体为字符串。
|
||||
|
||||
# 参考文档
|
||||
|
||||
- 3. /Users/a123/msh-system/.cursor/plans/optimize_ai_nutritionist_speed_b6e9a618.plan.md
|
||||
- 1. /Users/a123/msh-system/docs/测试问题分析报告_2026-03-22.md
|
||||
- 2. /Users/a123/msh-system/docs/功能开发详细设计_2026-03-25.md
|
||||
@@ -11,7 +11,7 @@
|
||||
Target Server Version : 80022 (8.0.22)
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 01/02/2026 22:29:26
|
||||
Date: 25/03/2026 11:49:10
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
@@ -158,7 +158,7 @@ CREATE TABLE `eb_article` (
|
||||
KEY `idx_post_id` (`post_id`),
|
||||
KEY `idx_check_in_record_id` (`check_in_record_id`),
|
||||
KEY `idx_type_status_task` (`type`,`status_task`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='文章管理表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='文章管理表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_category
|
||||
@@ -195,7 +195,7 @@ CREATE TABLE `eb_exception_log` (
|
||||
`exp_detail` longtext COMMENT '异常详细信息',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=109 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='异常信息表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=2581 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='异常信息表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_express
|
||||
@@ -577,7 +577,7 @@ CREATE TABLE `eb_product_day_record` (
|
||||
`order_success_product_fee` decimal(8,2) DEFAULT NULL COMMENT '销售额',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `date` (`date`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=14056 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='商品日记录表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=14119 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='商品日记录表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_schedule_job
|
||||
@@ -611,7 +611,7 @@ CREATE TABLE `eb_schedule_job_log` (
|
||||
`times` int NOT NULL COMMENT '耗时(单位:毫秒)',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
PRIMARY KEY (`log_id`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=4624947 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='定时任务日志';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=4625316 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='定时任务日志';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_sensitive_method_log
|
||||
@@ -705,7 +705,7 @@ CREATE TABLE `eb_shopping_product_day_record` (
|
||||
`order_success_product_num` int DEFAULT NULL COMMENT '交易成功商品数',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `date` (`date`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=271 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='商城商品日记录表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=272 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='商城商品日记录表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_sms_record
|
||||
@@ -1448,7 +1448,7 @@ CREATE TABLE `eb_system_attachment` (
|
||||
`create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
PRIMARY KEY (`att_id`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1494 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='附件管理表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1581 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='附件管理表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_system_city
|
||||
@@ -1693,7 +1693,7 @@ CREATE TABLE `eb_trading_day_record` (
|
||||
`brokerage_fee` decimal(8,2) DEFAULT NULL COMMENT '支付佣金金额(用户确认到账佣金)',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `date` (`date`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=271 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='商城交易日记录表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=272 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='商城交易日记录表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_user
|
||||
@@ -1747,7 +1747,7 @@ CREATE TABLE `eb_user` (
|
||||
KEY `level` (`level`) USING BTREE,
|
||||
KEY `status` (`status`) USING BTREE,
|
||||
KEY `is_promoter` (`is_promoter`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_user_address
|
||||
@@ -1853,7 +1853,7 @@ CREATE TABLE `eb_user_experience_record` (
|
||||
KEY `add_time` (`create_time`) USING BTREE,
|
||||
KEY `type` (`type`) USING BTREE,
|
||||
KEY `type_link` (`type`,`link_id`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户经验记录表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户经验记录表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_user_extract
|
||||
@@ -1921,7 +1921,7 @@ CREATE TABLE `eb_user_integral_record` (
|
||||
KEY `type` (`type`) USING BTREE,
|
||||
KEY `type_link` (`type`,`link_id`) USING BTREE,
|
||||
KEY `idx_source_detail` (`source_detail`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户积分记录表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户积分记录表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_user_level
|
||||
@@ -1942,7 +1942,7 @@ CREATE TABLE `eb_user_level` (
|
||||
`expired_time` timestamp NULL DEFAULT NULL COMMENT '过期时间',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
UNIQUE KEY `id` (`id`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户等级记录表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户等级记录表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_user_recharge
|
||||
@@ -2020,7 +2020,7 @@ CREATE TABLE `eb_user_sign` (
|
||||
KEY `idx_report_id` (`report_id`),
|
||||
KEY `idx_nutrition_score` (`nutrition_score`),
|
||||
KEY `idx_copied_from` (`copied_from_sign_id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='签到记录表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=70 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='签到记录表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_user_tag
|
||||
@@ -2046,7 +2046,7 @@ CREATE TABLE `eb_user_token` (
|
||||
`login_ip` varchar(32) DEFAULT NULL COMMENT '登录ip',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
UNIQUE KEY `type+token` (`type`,`token`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_user_visit_record
|
||||
@@ -2059,7 +2059,7 @@ CREATE TABLE `eb_user_visit_record` (
|
||||
`visit_type` int DEFAULT NULL COMMENT '访问类型',
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
KEY `date` (`date`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1470 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户访问记录表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1807 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='用户访问记录表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_wechat_callback
|
||||
@@ -2090,7 +2090,7 @@ CREATE TABLE `eb_wechat_exceptions` (
|
||||
`create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1311456 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='微信异常表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=1311767 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='微信异常表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for eb_wechat_pay_info
|
||||
@@ -2186,6 +2186,179 @@ CREATE TABLE `eb_wechat_reply` (
|
||||
KEY `status` (`status`) USING BTREE
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='微信关键字回复表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_blob_triggers
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_blob_triggers`;
|
||||
CREATE TABLE `qrtz_blob_triggers` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`TRIGGER_NAME` varchar(200) NOT NULL,
|
||||
`TRIGGER_GROUP` varchar(200) NOT NULL,
|
||||
`BLOB_DATA` blob,
|
||||
PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`) USING BTREE,
|
||||
CONSTRAINT `QRTZ_BLOB_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `qrtz_triggers` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_calendars
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_calendars`;
|
||||
CREATE TABLE `qrtz_calendars` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`CALENDAR_NAME` varchar(200) NOT NULL,
|
||||
`CALENDAR` blob NOT NULL,
|
||||
PRIMARY KEY (`SCHED_NAME`,`CALENDAR_NAME`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_cron_triggers
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_cron_triggers`;
|
||||
CREATE TABLE `qrtz_cron_triggers` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`TRIGGER_NAME` varchar(200) NOT NULL,
|
||||
`TRIGGER_GROUP` varchar(200) NOT NULL,
|
||||
`CRON_EXPRESSION` varchar(200) NOT NULL,
|
||||
`TIME_ZONE_ID` varchar(80) DEFAULT NULL,
|
||||
PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`) USING BTREE,
|
||||
CONSTRAINT `QRTZ_CRON_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `qrtz_triggers` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_fired_triggers
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_fired_triggers`;
|
||||
CREATE TABLE `qrtz_fired_triggers` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`ENTRY_ID` varchar(95) NOT NULL,
|
||||
`TRIGGER_NAME` varchar(200) NOT NULL,
|
||||
`TRIGGER_GROUP` varchar(200) NOT NULL,
|
||||
`INSTANCE_NAME` varchar(200) NOT NULL,
|
||||
`FIRED_TIME` bigint NOT NULL,
|
||||
`SCHED_TIME` bigint NOT NULL,
|
||||
`PRIORITY` int NOT NULL,
|
||||
`STATE` varchar(16) NOT NULL,
|
||||
`JOB_NAME` varchar(200) DEFAULT NULL,
|
||||
`JOB_GROUP` varchar(200) DEFAULT NULL,
|
||||
`IS_NONCONCURRENT` varchar(1) DEFAULT NULL,
|
||||
`REQUESTS_RECOVERY` varchar(1) DEFAULT NULL,
|
||||
PRIMARY KEY (`SCHED_NAME`,`ENTRY_ID`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_job_details
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_job_details`;
|
||||
CREATE TABLE `qrtz_job_details` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`JOB_NAME` varchar(200) NOT NULL,
|
||||
`JOB_GROUP` varchar(200) NOT NULL,
|
||||
`DESCRIPTION` varchar(250) DEFAULT NULL,
|
||||
`JOB_CLASS_NAME` varchar(250) NOT NULL,
|
||||
`IS_DURABLE` varchar(1) NOT NULL,
|
||||
`IS_NONCONCURRENT` varchar(1) NOT NULL,
|
||||
`IS_UPDATE_DATA` varchar(1) NOT NULL,
|
||||
`REQUESTS_RECOVERY` varchar(1) NOT NULL,
|
||||
`JOB_DATA` blob,
|
||||
PRIMARY KEY (`SCHED_NAME`,`JOB_NAME`,`JOB_GROUP`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_locks
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_locks`;
|
||||
CREATE TABLE `qrtz_locks` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`LOCK_NAME` varchar(40) NOT NULL,
|
||||
PRIMARY KEY (`SCHED_NAME`,`LOCK_NAME`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_paused_trigger_grps
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_paused_trigger_grps`;
|
||||
CREATE TABLE `qrtz_paused_trigger_grps` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`TRIGGER_GROUP` varchar(200) NOT NULL,
|
||||
PRIMARY KEY (`SCHED_NAME`,`TRIGGER_GROUP`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_scheduler_state
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_scheduler_state`;
|
||||
CREATE TABLE `qrtz_scheduler_state` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`INSTANCE_NAME` varchar(200) NOT NULL,
|
||||
`LAST_CHECKIN_TIME` bigint NOT NULL,
|
||||
`CHECKIN_INTERVAL` bigint NOT NULL,
|
||||
PRIMARY KEY (`SCHED_NAME`,`INSTANCE_NAME`) USING BTREE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_simple_triggers
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_simple_triggers`;
|
||||
CREATE TABLE `qrtz_simple_triggers` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`TRIGGER_NAME` varchar(200) NOT NULL,
|
||||
`TRIGGER_GROUP` varchar(200) NOT NULL,
|
||||
`REPEAT_COUNT` bigint NOT NULL,
|
||||
`REPEAT_INTERVAL` bigint NOT NULL,
|
||||
`TIMES_TRIGGERED` bigint NOT NULL,
|
||||
PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`) USING BTREE,
|
||||
CONSTRAINT `QRTZ_SIMPLE_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `qrtz_triggers` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_simprop_triggers
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_simprop_triggers`;
|
||||
CREATE TABLE `qrtz_simprop_triggers` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`TRIGGER_NAME` varchar(200) NOT NULL,
|
||||
`TRIGGER_GROUP` varchar(200) NOT NULL,
|
||||
`STR_PROP_1` varchar(512) DEFAULT NULL,
|
||||
`STR_PROP_2` varchar(512) DEFAULT NULL,
|
||||
`STR_PROP_3` varchar(512) DEFAULT NULL,
|
||||
`INT_PROP_1` int DEFAULT NULL,
|
||||
`INT_PROP_2` int DEFAULT NULL,
|
||||
`LONG_PROP_1` bigint DEFAULT NULL,
|
||||
`LONG_PROP_2` bigint DEFAULT NULL,
|
||||
`DEC_PROP_1` decimal(13,4) DEFAULT NULL,
|
||||
`DEC_PROP_2` decimal(13,4) DEFAULT NULL,
|
||||
`BOOL_PROP_1` varchar(1) DEFAULT NULL,
|
||||
`BOOL_PROP_2` varchar(1) DEFAULT NULL,
|
||||
PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`) USING BTREE,
|
||||
CONSTRAINT `QRTZ_SIMPROP_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `qrtz_triggers` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for qrtz_triggers
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `qrtz_triggers`;
|
||||
CREATE TABLE `qrtz_triggers` (
|
||||
`SCHED_NAME` varchar(120) NOT NULL,
|
||||
`TRIGGER_NAME` varchar(200) NOT NULL,
|
||||
`TRIGGER_GROUP` varchar(200) NOT NULL,
|
||||
`JOB_NAME` varchar(200) NOT NULL,
|
||||
`JOB_GROUP` varchar(200) NOT NULL,
|
||||
`DESCRIPTION` varchar(250) DEFAULT NULL,
|
||||
`NEXT_FIRE_TIME` bigint DEFAULT NULL,
|
||||
`PREV_FIRE_TIME` bigint DEFAULT NULL,
|
||||
`PRIORITY` int DEFAULT NULL,
|
||||
`TRIGGER_STATE` varchar(16) NOT NULL,
|
||||
`TRIGGER_TYPE` varchar(8) NOT NULL,
|
||||
`START_TIME` bigint NOT NULL,
|
||||
`END_TIME` bigint DEFAULT NULL,
|
||||
`CALENDAR_NAME` varchar(200) DEFAULT NULL,
|
||||
`MISFIRE_INSTR` smallint DEFAULT NULL,
|
||||
`JOB_DATA` blob,
|
||||
PRIMARY KEY (`SCHED_NAME`,`TRIGGER_NAME`,`TRIGGER_GROUP`) USING BTREE,
|
||||
KEY `SCHED_NAME` (`SCHED_NAME`,`JOB_NAME`,`JOB_GROUP`) USING BTREE,
|
||||
CONSTRAINT `QRTZ_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) REFERENCES `qrtz_job_details` (`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_ai_conversations
|
||||
-- ----------------------------
|
||||
@@ -2260,7 +2433,7 @@ CREATE TABLE `v2_calculator_results` (
|
||||
KEY `idx_user_id` (`user_id`),
|
||||
KEY `idx_is_adopted` (`is_adopted`),
|
||||
KEY `idx_created_at` (`created_at`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='食谱计算器结果表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=48 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='食谱计算器结果表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_community_comments
|
||||
@@ -2280,7 +2453,7 @@ CREATE TABLE `v2_community_comments` (
|
||||
KEY `idx_post_id` (`post_id`),
|
||||
KEY `idx_user_id` (`user_id`),
|
||||
KEY `idx_parent_comment_id` (`parent_comment_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社区评论表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社区评论表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_community_follows
|
||||
@@ -2295,7 +2468,7 @@ CREATE TABLE `v2_community_follows` (
|
||||
UNIQUE KEY `uk_follower_followee` (`follower_id`,`followee_id`),
|
||||
KEY `idx_follower_id` (`follower_id`),
|
||||
KEY `idx_followee_id` (`followee_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='关注关系表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='关注关系表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_community_interactions
|
||||
@@ -2311,7 +2484,7 @@ CREATE TABLE `v2_community_interactions` (
|
||||
UNIQUE KEY `uk_user_post_type` (`user_id`,`post_id`,`interaction_type`),
|
||||
KEY `idx_post_id` (`post_id`),
|
||||
KEY `idx_user_id` (`user_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社区互动表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社区互动表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_community_posts
|
||||
@@ -2355,7 +2528,24 @@ CREATE TABLE `v2_community_posts` (
|
||||
KEY `idx_created_at` (`created_at`),
|
||||
KEY `idx_recommend_score` (`recommend_score`),
|
||||
KEY `idx_hot_score` (`hot_score`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=303 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社区内容表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=306 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='社区内容表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_dish_image_cache
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `v2_dish_image_cache`;
|
||||
CREATE TABLE `v2_dish_image_cache` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`dish_name` varchar(100) NOT NULL COMMENT '菜品名称',
|
||||
`original_url` varchar(500) DEFAULT NULL COMMENT '原始图片URL',
|
||||
`oss_url` varchar(500) NOT NULL COMMENT 'OSS有效图片URL',
|
||||
`ai_provider` varchar(50) DEFAULT 'kieai' COMMENT 'AI生成来源',
|
||||
`task_id` varchar(100) DEFAULT NULL COMMENT 'KieAI任务ID',
|
||||
`created_at` datetime DEFAULT CURRENT_TIMESTAMP,
|
||||
`updated_at` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_dish_name` (`dish_name`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='菜品图片缓存表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_foods
|
||||
@@ -2461,7 +2651,7 @@ CREATE TABLE `v2_nutrition_plans` (
|
||||
KEY `idx_user_id` (`user_id`),
|
||||
KEY `idx_status` (`status`),
|
||||
KEY `idx_start_date` (`start_date`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='营养计划表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='营养计划表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_nutritionist_consultations
|
||||
@@ -2560,6 +2750,8 @@ CREATE TABLE `v2_recipes` (
|
||||
`is_recommend` tinyint(1) DEFAULT '0' COMMENT '是否推荐:0=否,1=是',
|
||||
`is_official` tinyint(1) DEFAULT '0' COMMENT '是否官方食谱:0=否,1=是',
|
||||
`sort_order` int DEFAULT '0' COMMENT '排序',
|
||||
`source` varchar(20) DEFAULT 'manual' COMMENT '来源:manual(手动)/calculator(计算器)/ai(AI生成)',
|
||||
`source_id` bigint DEFAULT NULL COMMENT '来源ID(如计算器结果ID)',
|
||||
`created_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`updated_at` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
PRIMARY KEY (`recipe_id`),
|
||||
@@ -2569,7 +2761,7 @@ CREATE TABLE `v2_recipes` (
|
||||
KEY `idx_status` (`status`),
|
||||
KEY `idx_is_recommend` (`is_recommend`),
|
||||
KEY `idx_created_at` (`created_at`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='食谱表';
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='食谱表';
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for v2_user_points
|
||||
|
||||
Reference in New Issue
Block a user