|
|
@ -339,7 +339,6 @@ public class DatabaseInitConfig { |
|
|
name VARCHAR(100) NOT NULL, |
|
|
name VARCHAR(100) NOT NULL, |
|
|
description TEXT, |
|
|
description TEXT, |
|
|
prompt TEXT, |
|
|
prompt TEXT, |
|
|
sort_order INTEGER DEFAULT 0 NOT NULL, |
|
|
|
|
|
enabled BOOLEAN DEFAULT TRUE NOT NULL, |
|
|
enabled BOOLEAN DEFAULT TRUE NOT NULL, |
|
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, |
|
|
create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, |
|
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, |
|
|
update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, |
|
|
@ -347,7 +346,7 @@ public class DatabaseInitConfig { |
|
|
) |
|
|
) |
|
|
"""; |
|
|
"""; |
|
|
jdbcTemplate.execute(sql); |
|
|
jdbcTemplate.execute(sql); |
|
|
jdbcTemplate.execute("CREATE INDEX IF NOT EXISTS idx_customer_service_role_enabled ON customer_service_role (enabled, sort_order)"); |
|
|
|
|
|
|
|
|
jdbcTemplate.execute("CREATE INDEX IF NOT EXISTS idx_customer_service_role_enabled ON customer_service_role (enabled)"); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private void createCustomerServiceRoleCategoryTable() { |
|
|
private void createCustomerServiceRoleCategoryTable() { |
|
|
@ -464,17 +463,17 @@ public class DatabaseInitConfig { |
|
|
""" |
|
|
""" |
|
|
职责:回答用户关于业务办理、服务流程、常见问题、问题受理和进度说明的问题。 |
|
|
职责:回答用户关于业务办理、服务流程、常见问题、问题受理和进度说明的问题。 |
|
|
要求:优先依据知识库回答;资料不足时说明无法确认,并引导用户补充必要信息;涉及财务、行政制度细节时不要猜测,应提示转对应角色处理。 |
|
|
要求:优先依据知识库回答;资料不足时说明无法确认,并引导用户补充必要信息;涉及财务、行政制度细节时不要猜测,应提示转对应角色处理。 |
|
|
""", 10); |
|
|
|
|
|
|
|
|
"""); |
|
|
upsertDefaultRole("finance", "财务", "付款、退款、发票、对账、报销、结算与费用规则", |
|
|
upsertDefaultRole("finance", "财务", "付款、退款、发票、对账、报销、结算与费用规则", |
|
|
""" |
|
|
""" |
|
|
职责:回答付款、退款、发票、对账、报销、结算、费用规则相关问题。 |
|
|
职责:回答付款、退款、发票、对账、报销、结算、费用规则相关问题。 |
|
|
要求:金额、账户、票据、时间节点必须严谨;知识库没有依据时不得编造政策;需要用户提供单号、金额、日期、发票抬头等关键信息。 |
|
|
要求:金额、账户、票据、时间节点必须严谨;知识库没有依据时不得编造政策;需要用户提供单号、金额、日期、发票抬头等关键信息。 |
|
|
""", 20); |
|
|
|
|
|
|
|
|
"""); |
|
|
upsertDefaultRole("administration", "行政", "办公制度、行政流程、资产、会议、考勤、用章、采购与后勤", |
|
|
upsertDefaultRole("administration", "行政", "办公制度、行政流程、资产、会议、考勤、用章、采购与后勤", |
|
|
""" |
|
|
""" |
|
|
职责:回答办公制度、行政流程、资产、会议、考勤、入职、用章、采购、后勤等问题。 |
|
|
职责:回答办公制度、行政流程、资产、会议、考勤、入职、用章、采购、后勤等问题。 |
|
|
要求:优先依据公司制度和流程文件回答;涉及审批权限、特殊例外或未覆盖场景时提示按制度提交申请或联系行政负责人。 |
|
|
要求:优先依据公司制度和流程文件回答;涉及审批权限、特殊例外或未覆盖场景时提示按制度提交申请或联系行政负责人。 |
|
|
""", 30); |
|
|
|
|
|
|
|
|
"""); |
|
|
|
|
|
|
|
|
retireObsoleteDefaultRoles(); |
|
|
retireObsoleteDefaultRoles(); |
|
|
} |
|
|
} |
|
|
@ -485,19 +484,18 @@ public class DatabaseInitConfig { |
|
|
upsertDefaultAccount("administration", "行政账号", "默认行政账号", "administration"); |
|
|
upsertDefaultAccount("administration", "行政账号", "默认行政账号", "administration"); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private void upsertDefaultRole(String roleKey, String name, String description, String prompt, int sortOrder) { |
|
|
|
|
|
|
|
|
private void upsertDefaultRole(String roleKey, String name, String description, String prompt) { |
|
|
jdbcTemplate.update(""" |
|
|
jdbcTemplate.update(""" |
|
|
INSERT INTO customer_service_role (role_key, name, description, prompt, sort_order) |
|
|
|
|
|
VALUES (?, ?, ?, ?, ?) |
|
|
|
|
|
|
|
|
INSERT INTO customer_service_role (role_key, name, description, prompt) |
|
|
|
|
|
VALUES (?, ?, ?, ?) |
|
|
ON CONFLICT (role_key) |
|
|
ON CONFLICT (role_key) |
|
|
DO UPDATE SET name = EXCLUDED.name, |
|
|
DO UPDATE SET name = EXCLUDED.name, |
|
|
description = EXCLUDED.description, |
|
|
description = EXCLUDED.description, |
|
|
prompt = EXCLUDED.prompt, |
|
|
prompt = EXCLUDED.prompt, |
|
|
sort_order = EXCLUDED.sort_order, |
|
|
|
|
|
enabled = true, |
|
|
enabled = true, |
|
|
is_delete = false, |
|
|
is_delete = false, |
|
|
update_time = CURRENT_TIMESTAMP |
|
|
update_time = CURRENT_TIMESTAMP |
|
|
""", roleKey, name, description, prompt, sortOrder); |
|
|
|
|
|
|
|
|
""", roleKey, name, description, prompt); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private void upsertDefaultAccount(String accountKey, String name, String description, String roleKey) { |
|
|
private void upsertDefaultAccount(String accountKey, String name, String description, String roleKey) { |
|
|
@ -1122,7 +1120,6 @@ public class DatabaseInitConfig { |
|
|
executeComment("COLUMN customer_service_role.name", "角色名称"); |
|
|
executeComment("COLUMN customer_service_role.name", "角色名称"); |
|
|
executeComment("COLUMN customer_service_role.description", "角色描述"); |
|
|
executeComment("COLUMN customer_service_role.description", "角色描述"); |
|
|
executeComment("COLUMN customer_service_role.prompt", "系统提示词(角色人设与行为规范)"); |
|
|
executeComment("COLUMN customer_service_role.prompt", "系统提示词(角色人设与行为规范)"); |
|
|
executeComment("COLUMN customer_service_role.sort_order", "排序权重"); |
|
|
|
|
|
executeComment("COLUMN customer_service_role.enabled", "是否启用"); |
|
|
executeComment("COLUMN customer_service_role.enabled", "是否启用"); |
|
|
executeComment("COLUMN customer_service_role.create_time", "创建时间"); |
|
|
executeComment("COLUMN customer_service_role.create_time", "创建时间"); |
|
|
executeComment("COLUMN customer_service_role.update_time", "更新时间"); |
|
|
executeComment("COLUMN customer_service_role.update_time", "更新时间"); |
|
|
|