@@ -197,12 +203,6 @@ const data = ref({
loading: true
}
})
-const items = ref([])
-const query = ref({title: "", created_at: []})
-const total = ref(0)
-const page = ref(1)
-const pageSize = ref(15)
-const loading = ref(true)
const activeName = ref("chat")
onMounted(() => {
@@ -284,11 +284,33 @@ const removeMessage = function (row) {
})
}
+const mathjaxPlugin = require('markdown-it-mathjax3')
+const md = require('markdown-it')({
+ breaks: true,
+ html: true,
+ linkify: true,
+ typographer: true,
+ highlight: function (str, lang) {
+ if (lang && hl.getLanguage(lang)) {
+ // 处理代码高亮
+ const preCode = hl.highlight(lang, str, true).value
+ // 将代码包裹在 pre 中
+ return `
${preCode}
`
+ }
+
+ // 处理代码高亮
+ const preCode = md.utils.escapeHtml(str)
+ // 将代码包裹在 pre 中
+ return `
${preCode}
`
+ }
+});
+md.use(mathjaxPlugin)
+
const showContentDialog = ref(false)
const dialogContent = ref("")
const showContent = (content) => {
showContentDialog.value = true
- dialogContent.value = processContent(content)
+ dialogContent.value = md.render(processContent(content))
}
const showChatItemDialog = ref(false)
@@ -309,7 +331,7 @@ const showMessages = (row) => {
\ No newline at end of file
+
diff --git a/web/src/views/admin/ImageList.vue b/web/src/views/admin/ImageList.vue
new file mode 100644
index 00000000..0595ec80
--- /dev/null
+++ b/web/src/views/admin/ImageList.vue
@@ -0,0 +1,485 @@
+
+
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+ {{taskTypeTheme[scope.row.type].text}}
+
+
+
+
+ {{scope.row.progress}}%
+ 已失败
+
+
+
+
+
+ 预览图片
+
+
+
+
+
+
+ {{ substr(scope.row.prompt, 20) }}
+
+
+
+
+
+
+ {{ dateFormat(scope.row['created_at']) }}
+
+
+
+
+
+
+ {{ substr(scope.row.err_msg, 20) }}
+
+
+ 无
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+ {{scope.row.progress}}%
+ 已失败
+
+
+
+
+
+ 预览图片
+
+
+
+
+
+
+ {{ substr(scope.row.prompt, 20) }}
+
+
+
+
+
+
+ {{ dateFormat(scope.row['created_at']) }}
+
+
+
+
+
+
+ {{ substr(scope.row.err_msg, 20) }}
+
+
+ 无
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 搜索
+
+
+
+
+
+
+
+
+ {{scope.row.progress}}%
+ 已失败
+
+
+
+
+
+ 预览图片
+
+
+
+
+
+
+ {{ substr(scope.row.prompt, 20) }}
+
+
+
+
+
+
+ {{ dateFormat(scope.row['created_at']) }}
+
+
+
+
+
+
+ {{ substr(scope.row.err_msg, 20) }}
+
+
+ 无
+
+
+
+
+
+
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/views/admin/Login.vue b/web/src/views/admin/Login.vue
index aa0ee49d..eff9fcbc 100644
--- a/web/src/views/admin/Login.vue
+++ b/web/src/views/admin/Login.vue
@@ -1,39 +1,42 @@
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 登录
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 登录
-
-
+
+
-
-
-
@@ -42,7 +45,7 @@
import {ref} from "vue";
import {Lock, UserFilled} from "@element-plus/icons-vue";
-import {httpGet, httpPost} from "@/utils/http";
+import {httpPost} from "@/utils/http";
import {ElMessage} from "element-plus";
import {useRouter} from "vue-router";
import FooterBar from "@/components/FooterBar.vue";
@@ -105,14 +108,33 @@ const doLogin = function (verifyData) {
\ No newline at end of file
diff --git a/web/src/views/admin/Product.vue b/web/src/views/admin/Product.vue
index 0666c5b0..96c0f719 100644
--- a/web/src/views/admin/Product.vue
+++ b/web/src/views/admin/Product.vue
@@ -15,8 +15,8 @@
-
-
+
+
长期有效
@@ -56,15 +56,15 @@
:close-on-click-modal="false"
>
-
+
-
+
-
+
diff --git a/web/src/views/admin/SysConfig.vue b/web/src/views/admin/SysConfig.vue
index 8c7105e2..8d252698 100644
--- a/web/src/views/admin/SysConfig.vue
+++ b/web/src/views/admin/SysConfig.vue
@@ -403,11 +403,11 @@
-
有些版本升级的时候更新了数据库的结构,比如字段名字改了,需要把之前的字段的值转移到其他字段,这些无法通过简单的 SQL 语句可以实现的,需要手动写程序修正数据。
+
-
当前版本 v4.1.4 需要修正用户数据,增加了 mobile 和 email 字段,需要把之前用手机号或者邮箱注册的用户的 username 字段数据初始化到 mobile 或者 email 字段。另外,需要把订单的支付渠道从名字称修正为 key。
+
-
请注意:在修复数据前,请先备份好数据库,以免数据丢失!
+
立即修复
diff --git a/web/src/views/mobile/Profile.vue b/web/src/views/mobile/Profile.vue
index a6b4c606..f7729e6d 100644
--- a/web/src/views/mobile/Profile.vue
+++ b/web/src/views/mobile/Profile.vue
@@ -75,7 +75,7 @@
- ¥{{ (item.price - item.discount).toFixed(2) }}
+ ¥{{ item.discount }}
(
¥{{ item.price }}