落地报价模板主账与后台:合同映射、灌种 SQL/脚本、智能体填表,并补测服运维探针与合同文档对齐。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -8,8 +8,16 @@
|
||||
- 若登录报缺 `sys_user_tenant`:再跑 `restore_jeecg_tenant_tables_v1.sql`
|
||||
- 若继续缺 `sys_depart` 等系统表:从 `jeecg-boot/db/jeecgboot-mysql-5.7.sql` 批量 `CREATE TABLE IF NOT EXISTS` 补齐(本机已用脚本做过)
|
||||
2. 业务表:`inquiry_admin_v1.sql`
|
||||
3. 菜单权限 + 演示数据:优先 `inquiry_admin_menu_seed_v1.sql`(含 `url`/`component`)
|
||||
3. 报价模板表:`inquiry_quote_template_v1.sql`(逻辑头 + 版本/映射)
|
||||
4. 菜单权限 + 演示数据:优先 `inquiry_admin_menu_seed_v1.sql`(含 `url`/`component`)
|
||||
|
||||
首批模板素材目录:`海陆空报价单模板/`(非生产真相)。导入辅助:
|
||||
|
||||
```text
|
||||
python tools/seed_quote_templates.py --dry-run
|
||||
python tools/seed_quote_templates.py --upload-url http://127.0.0.1:8180/jeecgboot --token <token>
|
||||
```
|
||||
|
||||
本机验收账号:`admin` / `123456`(验证码按页面填写)。
|
||||
|
||||
验收:Jeecg 登录 → 侧栏「询价运营」→ 看板/工单/员工/报价模板/回复语可调 `/inquiry/*`;账号/角色在「询价系统配置」进系统页。报价模板可先 mock。
|
||||
验收:Jeecg 登录 → 侧栏「询价运营」→ 看板/工单/员工/报价模板/回复语可调 `/inquiry/*`;账号/角色在「询价系统配置」进系统页。报价模板走 `/inquiry/quoteTemplate/*`(黄区+映射点,非假占位符)。
|
||||
|
||||
@@ -24,6 +24,7 @@ CREATE TABLE IF NOT EXISTS `inq_ticket` (
|
||||
`demand_title` varchar(500) DEFAULT NULL COMMENT '需求标题(路线摘要)',
|
||||
`demand_detail` text COMMENT '需求详情文本',
|
||||
`goods_name` varchar(200) DEFAULT NULL COMMENT '品名',
|
||||
`quote_date` date DEFAULT NULL COMMENT '报价日期(销售询价/填表用,不是创建时间)',
|
||||
`pieces` int DEFAULT NULL COMMENT '件数',
|
||||
`weight_kg` decimal(18,3) DEFAULT NULL COMMENT '重量KG',
|
||||
`volume_cbm` decimal(18,4) DEFAULT NULL COMMENT '体积CBM',
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
-- =============================================================================
|
||||
-- 友通达新系统 · 报价模板(逻辑模板 + 版本 + 映射)
|
||||
-- 库:inquiry_robot;禁止对现网 jeecg-boot 执行。
|
||||
-- 规则:黄色固定区;mapping_json 存本版字段→单元格;改版新建 version。
|
||||
-- =============================================================================
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `inq_quote_template` (
|
||||
`id` varchar(32) NOT NULL COMMENT '逻辑模板主键',
|
||||
`name` varchar(200) NOT NULL COMMENT '模板名称',
|
||||
`biz_type` varchar(16) NOT NULL COMMENT '海运/空运/陆运',
|
||||
`category` varchar(100) NOT NULL COMMENT '分类(与后台筛选项一致)',
|
||||
`keywords_json` text COMMENT '匹配关键词 JSON 数组',
|
||||
`mode` varchar(16) NOT NULL DEFAULT 'auto' COMMENT 'auto=可自动生成;manual=仅下载人工填',
|
||||
`status` varchar(16) NOT NULL DEFAULT 'disabled' COMMENT 'enabled/disabled',
|
||||
`is_default` tinyint(1) NOT NULL DEFAULT 0 COMMENT '同业务默认模板 0/1',
|
||||
`current_version` int NOT NULL DEFAULT 0 COMMENT '当前启用版本号,0=尚未启用版本',
|
||||
`use_count` int NOT NULL DEFAULT 0 COMMENT '累计使用次数',
|
||||
`create_by` varchar(50) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_by` varchar(50) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_inq_qt_biz_status` (`biz_type`,`status`),
|
||||
KEY `idx_inq_qt_category` (`category`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='报价模板逻辑头';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `inq_quote_template_version` (
|
||||
`id` varchar(32) NOT NULL COMMENT '版本主键',
|
||||
`template_id` varchar(32) NOT NULL COMMENT '逻辑模板 id',
|
||||
`version_no` int NOT NULL COMMENT '从 1 递增',
|
||||
`file_name` varchar(255) NOT NULL COMMENT '原始文件名',
|
||||
`format` varchar(16) NOT NULL DEFAULT 'excel' COMMENT 'excel/pdf',
|
||||
`object_key` varchar(500) NOT NULL COMMENT '对象存储或本地上传相对路径',
|
||||
`sha256` varchar(64) DEFAULT NULL COMMENT '文件摘要',
|
||||
`file_size` bigint DEFAULT NULL,
|
||||
`parse_status` varchar(32) NOT NULL DEFAULT 'pending' COMMENT 'pending/parsed/failed/mapping_incomplete',
|
||||
`mapping_point_count` int NOT NULL DEFAULT 0 COMMENT '已映射字段点数(不含未映射候选)',
|
||||
`mapping_json` longtext COMMENT '本版填表计划 JSON(见 contracts/quote-template-mapping-v1.json)',
|
||||
`candidates_json` longtext COMMENT '解析出的可填候选(标签/单元格)',
|
||||
`parse_message` varchar(1000) DEFAULT NULL COMMENT '解析说明或失败原因',
|
||||
`enabled` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否为本逻辑模板当前启用版本',
|
||||
`create_by` varchar(50) DEFAULT NULL,
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`update_by` varchar(50) DEFAULT NULL,
|
||||
`update_time` datetime DEFAULT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_inq_qt_ver` (`template_id`,`version_no`),
|
||||
KEY `idx_inq_qt_ver_enabled` (`template_id`,`enabled`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='报价模板版本(版式字节 + 映射)';
|
||||
@@ -0,0 +1,26 @@
|
||||
-- =============================================================================
|
||||
-- 询价工单补列:quote_date(报价日期)
|
||||
-- 只对 inquiry_robot 执行;禁止对现网 jeecg-boot 执行。
|
||||
-- 可重复执行:已有列则跳过。
|
||||
-- =============================================================================
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
|
||||
SET @db := DATABASE();
|
||||
SET @exists := (
|
||||
SELECT COUNT(*)
|
||||
FROM information_schema.COLUMNS
|
||||
WHERE TABLE_SCHEMA = @db
|
||||
AND TABLE_NAME = 'inq_ticket'
|
||||
AND COLUMN_NAME = 'quote_date'
|
||||
);
|
||||
|
||||
SET @ddl := IF(
|
||||
@exists = 0,
|
||||
'ALTER TABLE `inq_ticket` ADD COLUMN `quote_date` date DEFAULT NULL COMMENT ''报价日期(销售询价/填表用,不是创建时间)'' AFTER `goods_name`',
|
||||
'SELECT ''quote_date already exists'' AS info'
|
||||
);
|
||||
|
||||
PREPARE stmt FROM @ddl;
|
||||
EXECUTE stmt;
|
||||
DEALLOCATE PREPARE stmt;
|
||||
Reference in New Issue
Block a user