Explorar o código

fix: 修复bug

zhupei@smartai.com hai 1 ano
pai
achega
71020f338c

+ 26 - 25
src/modules/conversation-dialog/format-dialog-answer-from-websocket_receive_message.js

@@ -4,7 +4,7 @@ import generateClientUniqueId from '../../utils/generate-client-unique-id';
 
 import { formatCodePython, formatCodeSql } from './format-code-string';
 import formatAnwserString from './format-anwser-string';
-import { formatFileDownloadStr } from './format-dialog-answer-custom-markdown-str';
+// import { formatFileDownloadStr } from './format-dialog-answer-custom-markdown-str';
 import { getIcon4Answer } from './get-icon-4-dialog';
 
 import {
@@ -182,6 +182,7 @@ export default function formatDialogAnswerFromWebsocketReceiveMessage(message_st
       // 智能数据可能存在此字段
       // 代码数据不能使用markdown解析器进行解析,否则会乱码
       const sql_formated = formatCodeSql(resSQL);
+      // const sql_formated = resSQL;
 
       currentMsg.client_custom_linked_sql = sql_formated;
     }
@@ -294,30 +295,30 @@ export default function formatDialogAnswerFromWebsocketReceiveMessage(message_st
    */
   currentMsg.client_custom_unique_id = generateClientUniqueId(currentMsg.answer);
 
-  if (currentMsg.answer) {
-    // 将markdown转换为html文件
-    currentMsg.answer = formatAnwserString(currentMsg.answer);
-
-    if (currentMsg.client_custom_linked_code) {
-      currentMsg.answer = currentMsg.answer + currentMsg.client_custom_linked_code;
-    }
-
-    // 由于SQL和代码不能通过markdown解析,所以此处进行字符串的拼接
-    if (currentMsg.client_custom_linked_sql) {
-      currentMsg.answer = currentMsg.answer + currentMsg.client_custom_linked_sql;
-    }
-
-    if (currentMsg.client_custom_linked_image) {
-      currentMsg.answer = currentMsg.answer + `<img src="${currentMsg.client_custom_linked_image}" />`;
-    }
-    // 拼接文件的下载链接
-    if (answer.client_custom_linked_download_files) {
-      const file_name = answer.client_custom_linked_download_files.file_name;
-      const file_url = answer.client_custom_linked_download_files.file_url;
-      const download_file_str = formatFileDownloadStr(file_name, file_url);
-      answer_string = answer_string + download_file_str;
-    }
-  }
+  // if (currentMsg.answer) {
+  //   // 将markdown转换为html文件
+  //   currentMsg.answer = formatAnwserString(currentMsg.answer);
+
+  //   if (currentMsg.client_custom_linked_code) {
+  //     currentMsg.answer = currentMsg.answer + currentMsg.client_custom_linked_code;
+  //   }
+
+  //   // 由于SQL和代码不能通过markdown解析,所以此处进行字符串的拼接
+  //   if (currentMsg.client_custom_linked_sql) {
+  //     currentMsg.answer = currentMsg.answer + currentMsg.client_custom_linked_sql;
+  //   }
+
+  //   if (currentMsg.client_custom_linked_image) {
+  //     currentMsg.answer = currentMsg.answer + `<img src="${currentMsg.client_custom_linked_image}" />`;
+  //   }
+  //   // 拼接文件的下载链接
+  //   if (currentMsg.client_custom_linked_download_files) {
+  //     const file_name = currentMsg.client_custom_linked_download_files.file_name;
+  //     const file_url = currentMsg.client_custom_linked_download_files.file_url;
+  //     const download_file_str = formatFileDownloadStr(file_name, file_url);
+  //     currentMsg.answer = currentMsg.answer + download_file_str;
+  //   }
+  // }
 
   return {
     status: chat_status, // 本轮会话的状态:0 未开始 1 进行中 2 已结束 3 错误

+ 40 - 40
src/modules/conversation-item/DialogAnswer.vue

@@ -112,46 +112,46 @@ const answer_html = computed(() => {
   const answer = props.answer;
   const str = answer.content;
 
-  return str;
-
-  // /**
-  //  * 第一步处理位于:../conversation-dialogformat-dialog-answer-from-websocket_receive_message.js
-  //  * 此处将websocket的答案数据进行第二步处理
-  //  * 使用markdown解析器进行解析,并处理一部分字符串
-  //  * 最终生成html字符串
-  //  */
-  // let answer_string = formatAnwserString(str);
-
-  // // 第二步处理已经结束,html字符串已经生成
-  // // 接下来进行最后一步:附加内容的字符串拼接
-  // // 由于SQL和代码不能通过markdown解析,所以此处进行字符串的拼接
-  // // 在markdown转换结束后,添加拼接字符串
-  // // 拼接python代码
-  // if (answer.client_custom_linked_code) {
-  //   answer_string = answer_string + answer.client_custom_linked_code;
-  // }
-  // // 拼接SQL代码
-  // if (answer.client_custom_linked_sql) {
-  //   answer_string = answer_string + answer.client_custom_linked_sql;
-  // }
-  // // 拼接生成的图片
-  // if (answer.client_custom_linked_image) {
-  //   const img_url = formatStaticAssetsUrl(answer.client_custom_linked_image);
-  //   answer_string = answer_string + `<img src="${img_url}" />`;
-  // }
-  // // 拼接文件的下载链接
-  // if (answer.client_custom_linked_download_files) {
-  //   const file_name = answer.client_custom_linked_download_files.file_name;
-  //   const file_url = answer.client_custom_linked_download_files.file_url;
-  //   const download_file_str = formatFileDownloadStr(file_name, file_url);
-  //   answer_string = answer_string + download_file_str;
-  // }
-
-  // /**
-  //  * 所有步骤已经走完
-  //  * 返回最终的html字符串
-  //  */
-  // return answer_string;
+  // return str;
+
+  /**
+   * 第一步处理位于:../conversation-dialogformat-dialog-answer-from-websocket_receive_message.js
+   * 此处将websocket的答案数据进行第二步处理
+   * 使用markdown解析器进行解析,并处理一部分字符串
+   * 最终生成html字符串
+   */
+  let answer_string = formatAnwserString(str);
+
+  // 第二步处理已经结束,html字符串已经生成
+  // 接下来进行最后一步:附加内容的字符串拼接
+  // 由于SQL和代码不能通过markdown解析,所以此处进行字符串的拼接
+  // 在markdown转换结束后,添加拼接字符串
+  // 拼接python代码
+  if (answer.client_custom_linked_code) {
+    answer_string = answer_string + answer.client_custom_linked_code;
+  }
+  // 拼接SQL代码
+  if (answer.client_custom_linked_sql) {
+    answer_string = answer_string + answer.client_custom_linked_sql;
+  }
+  // 拼接生成的图片
+  if (answer.client_custom_linked_image) {
+    const img_url = formatStaticAssetsUrl(answer.client_custom_linked_image);
+    answer_string = answer_string + `<img src="${img_url}" />`;
+  }
+  // 拼接文件的下载链接
+  if (answer.client_custom_linked_download_files) {
+    const file_name = answer.client_custom_linked_download_files.file_name;
+    const file_url = answer.client_custom_linked_download_files.file_url;
+    const download_file_str = formatFileDownloadStr(file_name, file_url);
+    answer_string = answer_string + download_file_str;
+  }
+
+  /**
+   * 所有步骤已经走完
+   * 返回最终的html字符串
+   */
+  return answer_string;
 });
 
 /**

+ 7 - 3
src/views/common/Header.vue

@@ -87,7 +87,9 @@ const formatMenuItems = (list) => {
           };
         }
       })
-      .filter((item) => item !== null); // 过滤掉null值
+      .filter((item) => {
+        return item !== null && item !== undefined;
+      }); // 过滤掉null值
   } else {
     return [];
   }
@@ -105,9 +107,11 @@ const formatPermissionItems = (permissionList) => {
 onMounted(() => {
   // 延迟渲染菜单,防止菜单渲染时还没获取到权限信息
   const routesList = JSON.parse(localST_RoutesList.getItem());
-  console.log('routesList', routesList)
   if (routesList && Array.isArray(routesList)) {
-    nav_list.value = formatMenuItems(routesList);
+    const navs = formatMenuItems(routesList);
+
+    nav_list.value = navs;
+
     const permissionList = routesList.find((item) => item.meta.title === '权限管理');
     dropdown_list.value = permissionList ? formatPermissionItems(permissionList) : [];
   }