upload project source code

This commit is contained in:
2026-04-30 18:49:43 +08:00
commit 9b394ba682
2277 changed files with 660945 additions and 0 deletions

View File

@@ -0,0 +1,85 @@
/**
* 测名 / 起名 / 改名:五行生克与属相适配 —— 后端约定与生成提示词
*
* 前端已在 Report JSON 根级支持(与测名详解 TestNameDetail 同字段名):
* - bazi_name_fit八字喜用 vs 姓名五行,含补益/克泄简述
* - wuxing_bagua姓名内部五行态势与生克互助
* - zodiac_sign出生年生肖与名字用字的合冲刑害、适配结论
*
* 若起名/改名当前只返回扁平字段 wuxing_analysis / zodiac_analysis建议后端合并为上述结构化模块或同时返回便于全端一致展示。
*/
/** 建议后端在「个人」相关请求中补充的上下文(用于算八字、喜用、生肖年柱) */
export const RECOMMENDED_PERSONAL_REQUEST_FIELDS = {
/** 已有surname, given_name, gender, birthday */
extra_suggested: {
/** 精确到时辰,格式与现有 birthday 一致即可,如 YYYY-MM-DD HH:mm:ss */
birth_time: "string (optional, 排盘用)",
/** 出生地或时区,用于真太阳时 / 节气(可选) */
birth_place: "string (optional)",
/** solar | lunar若只传公历可省略 */
calendar_type: "'solar' | 'lunar' (optional)",
/** 原名(改名场景必填,起名可为空) */
original_name: "string (optional, 改名)",
},
} as const;
/** 建议后端在「公司/商号」相关请求中补充的上下文 */
export const RECOMMENDED_COMPANY_REQUEST_FIELDS = {
/** 已有company_name, industry, address, target_audience, members */
extra_suggested: {
/** 核心成员生辰已可定生肖与八字;可明确每人角色便于报告人岗描述 */
member_roles: "Array<{ name: string; birthday: string; role?: string }> (optional)",
},
} as const;
/** 建议在方案详情 / 测名结果 JSON 根级返回的扩展模块(与 api/types.ts 中 TestNameDetail* 对齐) */
export const REPORT_JSON_ROOT_KEYS = {
bazi_name_fit: {
xiyongshen: "喜用神简述",
name_wuxing_profile: "姓名各字五行及组合简述",
complement_summary: "相对八字是补益还是偏枯、需注意的克泄",
fit_score: "0100与八字契合度可选",
details: "{ nodes: TextNode[] } 详文",
},
wuxing_bagua: {
wuxing_sketch: "姓名五行态势",
bagua_profile: "与卦象/宫位关联简述",
mutual_sketch: "相生 / 相克 / 制化要点(核心满足「生克」说明)",
summary: "一句话结论",
details: "{ nodes }",
},
zodiac_sign: {
animal: "生肖名,如 龙",
earthly_branch: "地支,如 辰",
trait_summary: "属相特性简述",
name_harmony: "与名之合冲刑害、是否相宜(核心满足「合不合」)",
details: "{ nodes }",
},
/** 单字五行细节:用于在“五行八卦”中展示每个字的阴阳五行与卦象 */
char_detail: {
items: "Array<{ char, element, yin_yang, yin_yang_element, bagua_trigram, bagua_trigram_symbol, hexagram_name, hexagram_code, note, details? }>",
details: "{ nodes } (optional)",
},
} as const;
/** 给后端或 LLM 的一次性中文提示:生成报告时必须覆盖的要点 */
export function buildBackendWuxingZodiacPromptZh(): string {
return [
"你是国学起名/测名报告生成服务。请在每一份「个人测名、公司测名、个人起名方案、个人改名方案、公司起名/改名方案」输出中,明确包含以下两块(可单独成章,也可写入既有模块,但内容必须可被前端独立字段映射):",
"",
"一、名字五行相生相克",
"1给出名字各字五行金木水火土及组合后的强弱、偏枯。",
"2用简短条文说明哪些五行相生相助、哪些相克或需制化可引用「金生水」「火克金」等但不要长篇堆砌。",
"3若有八字/喜用神上下文:说明姓名五行是否补益喜用、或加重忌神;给出 0100 契合度时可填 fit_score。",
"4输出 JSON 时优先使用根字段 bazi_name_fit八字与姓名五行与 wuxing_bagua五行态势与生克互助与现有 wuxing_analysis 并存时,请以结构化字段为准。",
"",
"二、属相与名字合不合",
"1根据用户或核心成员出生年确定生肖与地支。",
"2说明名字用字、读音或意象与该生肖的宜忌相合、相冲、相刑、相害等通俗表达即可。",
"3给出明确结论句如「整体相宜」「需注意某字与属相存在一定冲克建议……」。",
"4输出 JSON 时使用根字段 zodiac_sign若与 meaning_and_zodiac 并存,不要互相矛盾。",
"",
"三、请求侧参数:个人场景务必带齐 gender、birthday若有时辰请一并解析。改名须带 original_name。公司场景 members 每人须有 birthday 以便定生肖与团队五行互动。",
].join("\n");
}