|
@ -757,7 +757,7 @@ watch( |
|
|
const env = import.meta.env.VITE_ENV; |
|
|
const env = import.meta.env.VITE_ENV; |
|
|
const result20 = await dataListAPI({ |
|
|
const result20 = await dataListAPI({ |
|
|
token: |
|
|
token: |
|
|
'8Csj5VVX1UbIb4C3oxrnbZi0+fEeMx8pywnIlrmTm45Cb/EllzWACLto9J9+fCFsfdgBOvKvyY94FvqlvM0', |
|
|
|
|
|
|
|
|
"8Csj5VVX1UbIb4C3oxrnbZi0+fEeMx8pywnIlrmTm45Cb/EllzWACLto9J9+fCFsfdgBOvKvyY94FvqlvM0", |
|
|
// "8nkj4QBV1RPIb4CzoRTnbZi0+fEeMx8pywnIlrmTxdwROKkuwWqAWu9orpkpeXVqL98DPfeonNYpHv+mucA", |
|
|
// "8nkj4QBV1RPIb4CzoRTnbZi0+fEeMx8pywnIlrmTxdwROKkuwWqAWu9orpkpeXVqL98DPfeonNYpHv+mucA", |
|
|
market: codeData.value.market, |
|
|
market: codeData.value.market, |
|
|
code: codeData.value.code, |
|
|
code: codeData.value.code, |
|
@ -1212,114 +1212,122 @@ watch( |
|
|
// content: ac1, |
|
|
// content: ac1, |
|
|
// }); |
|
|
// }); |
|
|
// 添加六色罗盘 |
|
|
// 添加六色罗盘 |
|
|
const LiuSeData = JSON.parse(JSON.stringify(toRaw(HomePage))); |
|
|
|
|
|
const sz = fnGetData(LiuSeData); |
|
|
|
|
|
if (sz) { |
|
|
|
|
|
hasValidData.value = true; |
|
|
|
|
|
console.log("hasValidData设置为:", hasValidData.value); |
|
|
|
|
|
|
|
|
if (HomePage) { |
|
|
|
|
|
const LiuSeData = JSON.parse(JSON.stringify(toRaw(HomePage))); |
|
|
|
|
|
const sz = fnGetData(LiuSeData); |
|
|
|
|
|
if (sz) { |
|
|
|
|
|
hasValidData.value = true; |
|
|
|
|
|
console.log("hasValidData设置为:", hasValidData.value); |
|
|
|
|
|
} |
|
|
|
|
|
// 先推送K线图消息 |
|
|
|
|
|
const klineMessageId1 = `kline-${Date.now()}`; |
|
|
|
|
|
console.log("生成K线消息ID:", klineMessageId1); |
|
|
|
|
|
|
|
|
|
|
|
addTypingTask( |
|
|
|
|
|
{ |
|
|
|
|
|
sender: "ai", |
|
|
|
|
|
class: "content1", |
|
|
|
|
|
type: "content1", |
|
|
|
|
|
kline: true, |
|
|
|
|
|
chartData: sz, |
|
|
|
|
|
messageId: klineMessageId1, |
|
|
|
|
|
hasValidData: true, |
|
|
|
|
|
klineType: 1, |
|
|
|
|
|
}, |
|
|
|
|
|
"", |
|
|
|
|
|
50 |
|
|
|
|
|
); |
|
|
|
|
|
// chatStore.messages.push({ |
|
|
|
|
|
// sender: "ai", |
|
|
|
|
|
// class: "content1", |
|
|
|
|
|
// type: "content1", |
|
|
|
|
|
// kline: true, |
|
|
|
|
|
// chartData: sz, |
|
|
|
|
|
// messageId: klineMessageId1, |
|
|
|
|
|
// hasValidData: true, |
|
|
|
|
|
// klineType: 1, |
|
|
|
|
|
// }); |
|
|
|
|
|
|
|
|
|
|
|
// console.log("六色罗盘消息已添加到聊天列表"); |
|
|
|
|
|
|
|
|
|
|
|
// // 在渲染完成后初始化图表 |
|
|
|
|
|
// nextTick(() => { |
|
|
|
|
|
// console.log("nextTick开始 - 准备渲染图表"); |
|
|
|
|
|
// console.log("消息列表:", chatStore.messages); |
|
|
|
|
|
|
|
|
|
|
|
// // 寻找最新添加的K线消息索引 |
|
|
|
|
|
// let klineIndex = -1; |
|
|
|
|
|
// for (let i = 0; i < chatStore.messages.length; i++) { |
|
|
|
|
|
// if (chatStore.messages[i].messageId === klineMessageId1) { |
|
|
|
|
|
// klineIndex = i; |
|
|
|
|
|
// break; |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
|
|
|
// console.log("找到的K线消息索引:", klineIndex); |
|
|
|
|
|
|
|
|
|
|
|
// if (klineIndex !== -1) { |
|
|
|
|
|
// const containerId = `kline-container-${klineIndex}`; |
|
|
|
|
|
// console.log("图表容器ID:", containerId); |
|
|
|
|
|
|
|
|
|
|
|
// // 确保DOM已经渲染完成 |
|
|
|
|
|
// setTimeout(() => { |
|
|
|
|
|
// console.log("延时执行,确保DOM已渲染"); |
|
|
|
|
|
// KlineCanvsEcharts(containerId); |
|
|
|
|
|
// }, 100); // 短暂延时确保DOM已渲染 |
|
|
|
|
|
// } else { |
|
|
|
|
|
// console.warn("未找到K线消息"); |
|
|
|
|
|
// } |
|
|
|
|
|
// }); |
|
|
} |
|
|
} |
|
|
// 先推送K线图消息 |
|
|
|
|
|
const klineMessageId1 = `kline-${Date.now()}`; |
|
|
|
|
|
console.log("生成K线消息ID:", klineMessageId1); |
|
|
|
|
|
|
|
|
|
|
|
addTypingTask( |
|
|
|
|
|
{ |
|
|
|
|
|
sender: "ai", |
|
|
|
|
|
class: "content1", |
|
|
|
|
|
type: "content1", |
|
|
|
|
|
kline: true, |
|
|
|
|
|
chartData: sz, |
|
|
|
|
|
messageId: klineMessageId1, |
|
|
|
|
|
hasValidData: true, |
|
|
|
|
|
klineType: 1, |
|
|
|
|
|
}, |
|
|
|
|
|
"", |
|
|
|
|
|
50 |
|
|
|
|
|
); |
|
|
|
|
|
// chatStore.messages.push({ |
|
|
|
|
|
// sender: "ai", |
|
|
|
|
|
// class: "content1", |
|
|
|
|
|
// type: "content1", |
|
|
|
|
|
// kline: true, |
|
|
|
|
|
// chartData: sz, |
|
|
|
|
|
// messageId: klineMessageId1, |
|
|
|
|
|
// hasValidData: true, |
|
|
|
|
|
// klineType: 1, |
|
|
|
|
|
// }); |
|
|
|
|
|
|
|
|
|
|
|
// console.log("六色罗盘消息已添加到聊天列表"); |
|
|
|
|
|
|
|
|
|
|
|
// // 在渲染完成后初始化图表 |
|
|
|
|
|
// nextTick(() => { |
|
|
|
|
|
// console.log("nextTick开始 - 准备渲染图表"); |
|
|
|
|
|
// console.log("消息列表:", chatStore.messages); |
|
|
|
|
|
|
|
|
|
|
|
// // 寻找最新添加的K线消息索引 |
|
|
|
|
|
// let klineIndex = -1; |
|
|
|
|
|
// for (let i = 0; i < chatStore.messages.length; i++) { |
|
|
|
|
|
// if (chatStore.messages[i].messageId === klineMessageId1) { |
|
|
|
|
|
// klineIndex = i; |
|
|
|
|
|
// break; |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
|
|
|
// console.log("找到的K线消息索引:", klineIndex); |
|
|
|
|
|
|
|
|
|
|
|
// if (klineIndex !== -1) { |
|
|
|
|
|
// const containerId = `kline-container-${klineIndex}`; |
|
|
|
|
|
// console.log("图表容器ID:", containerId); |
|
|
|
|
|
|
|
|
|
|
|
// // 确保DOM已经渲染完成 |
|
|
|
|
|
// setTimeout(() => { |
|
|
|
|
|
// console.log("延时执行,确保DOM已渲染"); |
|
|
|
|
|
// KlineCanvsEcharts(containerId); |
|
|
|
|
|
// }, 100); // 短暂延时确保DOM已渲染 |
|
|
|
|
|
// } else { |
|
|
|
|
|
// console.warn("未找到K线消息"); |
|
|
|
|
|
// } |
|
|
|
|
|
// }); |
|
|
|
|
|
|
|
|
|
|
|
// 度牛尺K线图 |
|
|
// 度牛尺K线图 |
|
|
const AIGoldBullData = JSON.parse( |
|
|
|
|
|
JSON.stringify(toRaw(AIGoldBull)) |
|
|
|
|
|
); |
|
|
|
|
|
const HomePageData = JSON.parse( |
|
|
|
|
|
JSON.stringify(toRaw(HomePage)) |
|
|
|
|
|
); |
|
|
|
|
|
console.log("处理 K 线数据 - 开始"); |
|
|
|
|
|
console.log("AIGoldBullData", AIGoldBullData); |
|
|
|
|
|
console.log("HomePageData", HomePageData); |
|
|
|
|
|
|
|
|
|
|
|
const Kline20 = { |
|
|
|
|
|
name: HomePageData.StockInformation.Name, |
|
|
|
|
|
Kline: AIGoldBullData, |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// 打印K线数据结构 |
|
|
|
|
|
console.log("K线数据结构:", Kline20); |
|
|
|
|
|
console.log("K线数据名称:", Kline20.name); |
|
|
|
|
|
console.log("K线数据:", Kline20.Kline ? Kline20.Kline : null); |
|
|
|
|
|
|
|
|
|
|
|
// 设置数据有效标志 |
|
|
|
|
|
hasValidData.value = true; |
|
|
|
|
|
console.log("hasValidData设置为:", hasValidData.value); |
|
|
|
|
|
|
|
|
if ( |
|
|
|
|
|
AIGoldBull.DNC && |
|
|
|
|
|
AIGoldBull.FCX && |
|
|
|
|
|
AIGoldBull.JN && |
|
|
|
|
|
AIGoldBull.KLine20 && |
|
|
|
|
|
AIGoldBull.QSXH |
|
|
|
|
|
) { |
|
|
|
|
|
const AIGoldBullData = JSON.parse( |
|
|
|
|
|
JSON.stringify(toRaw(AIGoldBull)) |
|
|
|
|
|
); |
|
|
|
|
|
const HomePageData = JSON.parse( |
|
|
|
|
|
JSON.stringify(toRaw(HomePage)) |
|
|
|
|
|
); |
|
|
|
|
|
console.log("处理 K 线数据 - 开始"); |
|
|
|
|
|
console.log("AIGoldBullData", AIGoldBullData); |
|
|
|
|
|
console.log("HomePageData", HomePageData); |
|
|
|
|
|
|
|
|
|
|
|
const Kline20 = { |
|
|
|
|
|
name: HomePageData.StockInformation.Name, |
|
|
|
|
|
Kline: AIGoldBullData, |
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
// 打印K线数据结构 |
|
|
|
|
|
console.log("K线数据结构:", Kline20); |
|
|
|
|
|
console.log("K线数据名称:", Kline20.name); |
|
|
|
|
|
console.log("K线数据:", Kline20.Kline ? Kline20.Kline : null); |
|
|
|
|
|
|
|
|
|
|
|
// 设置数据有效标志 |
|
|
|
|
|
hasValidData.value = true; |
|
|
|
|
|
console.log("hasValidData设置为:", hasValidData.value); |
|
|
|
|
|
|
|
|
// chatStore.messages.pop(); |
|
|
|
|
|
|
|
|
// chatStore.messages.pop(); |
|
|
|
|
|
|
|
|
// 先推送K线图消息 |
|
|
|
|
|
const klineMessageId2 = `kline-${Date.now() + 1}`; |
|
|
|
|
|
console.log("生成K线消息ID:", klineMessageId2); |
|
|
|
|
|
|
|
|
// 先推送K线图消息 |
|
|
|
|
|
const klineMessageId2 = `kline-${Date.now() + 1}`; |
|
|
|
|
|
console.log("生成K线消息ID:", klineMessageId2); |
|
|
|
|
|
|
|
|
// chatStore.messages.push({ |
|
|
|
|
|
// sender: "ai", |
|
|
|
|
|
// class: "content2", |
|
|
|
|
|
// type: "content2", |
|
|
|
|
|
// kline: true, |
|
|
|
|
|
// chartData: Kline20, |
|
|
|
|
|
// messageId: klineMessageId2, |
|
|
|
|
|
// hasValidData: true, // 添加hasValidData标志 |
|
|
|
|
|
// klineType: 2, |
|
|
|
|
|
// }); |
|
|
|
|
|
|
|
|
// chatStore.messages.push({ |
|
|
|
|
|
// sender: "ai", |
|
|
|
|
|
// class: "content2", |
|
|
|
|
|
// type: "content2", |
|
|
|
|
|
// kline: true, |
|
|
|
|
|
// chartData: Kline20, |
|
|
|
|
|
// messageId: klineMessageId2, |
|
|
|
|
|
// hasValidData: true, // 添加hasValidData标志 |
|
|
|
|
|
// klineType: 2, |
|
|
|
|
|
// }); |
|
|
|
|
|
|
|
|
addTypingTask( |
|
|
addTypingTask( |
|
|
{ |
|
|
{ |
|
@ -1338,27 +1346,27 @@ watch( |
|
|
50 |
|
|
50 |
|
|
); |
|
|
); |
|
|
|
|
|
|
|
|
// console.log("K线消息已添加到聊天列表"); |
|
|
|
|
|
|
|
|
// console.log("K线消息已添加到聊天列表"); |
|
|
|
|
|
|
|
|
// // 在渲染完成后初始化图表 |
|
|
|
|
|
// nextTick(() => { |
|
|
|
|
|
// console.log("nextTick开始 - 准备渲染图表"); |
|
|
|
|
|
// console.log("消息列表:", chatStore.messages); |
|
|
|
|
|
|
|
|
// // 在渲染完成后初始化图表 |
|
|
|
|
|
// nextTick(() => { |
|
|
|
|
|
// console.log("nextTick开始 - 准备渲染图表"); |
|
|
|
|
|
// console.log("消息列表:", chatStore.messages); |
|
|
|
|
|
|
|
|
// // 寻找最新添加的K线消息索引 |
|
|
|
|
|
// let klineIndex = -1; |
|
|
|
|
|
// for (let i = 0; i < chatStore.messages.length; i++) { |
|
|
|
|
|
// if (chatStore.messages[i].messageId === klineMessageId2) { |
|
|
|
|
|
// klineIndex = i; |
|
|
|
|
|
// break; |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
// // 寻找最新添加的K线消息索引 |
|
|
|
|
|
// let klineIndex = -1; |
|
|
|
|
|
// for (let i = 0; i < chatStore.messages.length; i++) { |
|
|
|
|
|
// if (chatStore.messages[i].messageId === klineMessageId2) { |
|
|
|
|
|
// klineIndex = i; |
|
|
|
|
|
// break; |
|
|
|
|
|
// } |
|
|
|
|
|
// } |
|
|
|
|
|
|
|
|
// console.log("找到的K线消息索引:", klineIndex); |
|
|
|
|
|
|
|
|
// console.log("找到的K线消息索引:", klineIndex); |
|
|
|
|
|
|
|
|
// if (klineIndex !== -1) { |
|
|
|
|
|
// const containerId = `kline-container-${klineIndex}`; |
|
|
|
|
|
// console.log("图表容器ID:", containerId); |
|
|
|
|
|
|
|
|
// if (klineIndex !== -1) { |
|
|
|
|
|
// const containerId = `kline-container-${klineIndex}`; |
|
|
|
|
|
// console.log("图表容器ID:", containerId); |
|
|
|
|
|
|
|
|
// // 确保DOM已经渲染完成 |
|
|
// // 确保DOM已经渲染完成 |
|
|
// setTimeout(() => { |
|
|
// setTimeout(() => { |
|
@ -1585,7 +1593,7 @@ watch( |
|
|
const ac44 = `${arr[2]},${arr[3]}</p>`; |
|
|
const ac44 = `${arr[2]},${arr[3]}</p>`; |
|
|
const ac45 = `<p style="margin:0;color:#FFD700;font-weight:bold;display:flex;justify-content:center;font-size:22px">【时间维度】</p><p style="display:flex;justify-content:center;">`; |
|
|
const ac45 = `<p style="margin:0;color:#FFD700;font-weight:bold;display:flex;justify-content:center;font-size:22px">【时间维度】</p><p style="display:flex;justify-content:center;">`; |
|
|
const ac46 = `${result23.data.shijian}</p>`; |
|
|
const ac46 = `${result23.data.shijian}</p>`; |
|
|
const ac47 = `<p style="margin:0;color:#FFD700;font-weight:bold;display:flex;justify-content:center;font-size:22px">【能量维度】</p><p>`; |
|
|
|
|
|
|
|
|
const ac47 = `<p style="margin:0;color:#FADC0C;display:flex;justify-content:center;font-size:22px">【能量维度】</p><p style="display:flex;justify-content:center;">`; |
|
|
const ac48 = `${result23.data.nengliang}</p>`; |
|
|
const ac48 = `${result23.data.nengliang}</p>`; |
|
|
|
|
|
|
|
|
// const pc4 = marked( |
|
|
// const pc4 = marked( |
|
|