diff --git a/package-lock.json b/package-lock.json
index 81b082e..12044b7 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -11,6 +11,7 @@
"axios": "^1.8.4",
"core-js": "^3.8.3",
"echarts": "^5.6.0",
+ "echarts-gl": "^2.0.9",
"element-plus": "^2.9.7",
"pinia": "^3.0.1",
"qwebchannel": "^6.2.0",
@@ -5155,6 +5156,11 @@
"node": ">=6.0"
}
},
+ "node_modules/claygl": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/claygl/-/claygl-1.3.0.tgz",
+ "integrity": "sha512-+gGtJjT6SSHD2l2yC3MCubW/sCV40tZuSs5opdtn79vFSGUgp/lH139RNEQ6Jy078/L0aV8odCw8RSrUcMfLaQ=="
+ },
"node_modules/clean-css": {
"version": "5.3.3",
"resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz",
@@ -6519,6 +6525,18 @@
"zrender": "5.6.1"
}
},
+ "node_modules/echarts-gl": {
+ "version": "2.0.9",
+ "resolved": "https://registry.npmjs.org/echarts-gl/-/echarts-gl-2.0.9.tgz",
+ "integrity": "sha512-oKeMdkkkpJGWOzjgZUsF41DOh6cMsyrGGXimbjK2l6Xeq/dBQu4ShG2w2Dzrs/1bD27b2pLTGSaUzouY191gzA==",
+ "dependencies": {
+ "claygl": "^1.2.1",
+ "zrender": "^5.1.1"
+ },
+ "peerDependencies": {
+ "echarts": "^5.1.2"
+ }
+ },
"node_modules/echarts/node_modules/tslib": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz",
diff --git a/package.json b/package.json
index 079b89b..3b713d7 100644
--- a/package.json
+++ b/package.json
@@ -10,6 +10,7 @@
"axios": "^1.8.4",
"core-js": "^3.8.3",
"echarts": "^5.6.0",
+ "echarts-gl": "^2.0.9",
"element-plus": "^2.9.7",
"pinia": "^3.0.1",
"qwebchannel": "^6.2.0",
diff --git a/src/api/account.js b/src/api/account.js
index 2728f24..d69ea4d 100644
--- a/src/api/account.js
+++ b/src/api/account.js
@@ -2,7 +2,7 @@ import { getAxios, postAxios, downFile } from '@/utils/axios.js'
//登录
export function login(data) {
- return postAxios({ url: 'api/user/doLogin', data })
+ return postAxios({ url: 'account/login', data })
}
//ai
diff --git a/src/router/index.js b/src/router/index.js
index 9539606..56a9a24 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -4,40 +4,39 @@ import HomeView from '../views/HomeView.vue'
const routes = [
{
path: '/',
- name: 'home',
+ name: 'login',
component: HomeView
},
-
{
path: '/nav',
name: 'nav',
- redirect: '/nav/Home', // 默认跳转
- component: () => import(/* webpackChunkName: "hostsList" */ '../views/nav.vue'),
+ redirect: '/nav/home', // 默认跳转
+ component: () => import( '../views/nav.vue'),
children: [
{
- path: 'Home',
- name: 'Home',
- component: () => import(/* webpackChunkName: "hostsList" */ '../views/hosts/Home.vue'),
+ path: 'home',
+ name: 'home',
+ component: () => import( '../views/hosts/Home.vue'),
},
{
path: 'scriptManagement',
name: 'scriptManagement',
- component: () => import(/* webpackChunkName: "hostsList" */ '../views/hosts/ai/scriptManagement.vue'),
+ component: () => import( '../views/hosts/ai/scriptManagement.vue'),
},
{
path: 'LanguageManagement',
name: 'LanguageManagement',
- component: () => import(/* webpackChunkName: "hostsList" */ '../views/hosts/ai/LanguageManagement.vue'),
+ component: () => import( '../views/hosts/ai/LanguageManagement.vue'),
},
{
path: 'miniAM',
name: 'miniAM',
- component: () => import(/* webpackChunkName: "hostsList" */ '../views/hosts/mini/miniAM.vue'),
+ component: () => import( '../views/hosts/mini/miniAM.vue'),
},
{
path: 'miniIntegral',
name: 'miniIntegral',
- component: () => import(/* webpackChunkName: "hostsList" */ '../views/hosts/mini/miniIntegral.vue'),
+ component: () => import( '../views/hosts/mini/miniIntegral.vue'),
},
]
}
@@ -47,4 +46,22 @@ const router = createRouter({
routes
})
+// 添加导航守卫
+router.beforeEach((to, from, next) => {
+ // 假设你有一个方法来检查用户是否已登录
+ const isAuthenticated = () => {
+ return localStorage.getItem('token') == 1;
+ };
+
+ // 定义需要登录才能访问的路由
+ const requiresAuth = ['nav','home', 'scriptManagement', 'LanguageManagement', 'miniAM', 'miniIntegral'];
+
+ // 如果需要登录且用户未登录,则重定向到登录页面
+ if (requiresAuth.includes(to.name) && !isAuthenticated()) {
+ next({ name: 'login' });
+ } else {
+ next();
+ }
+});
+
export default router
diff --git a/src/utils/axios.js b/src/utils/axios.js
index 987f6d0..8eb37af 100644
--- a/src/utils/axios.js
+++ b/src/utils/axios.js
@@ -30,9 +30,6 @@ if (process.env.NODE_ENV === 'development') {
// 请求拦截器
axios.interceptors.request.use((config) => {
const url = sliceUrl(config.url)
- // if (!(config.url == 'templateList' || config.url == 'languageList')) {
- // config.headers['vvtoken'] = getToken();
- // }
// 请求超时时间 - 毫秒
config.timeout = 60000
@@ -49,10 +46,9 @@ axios.interceptors.response.use((response) => {
if (response.data.code == '200') {
return response.data.data
} else {
- router.push('/')
- ElMessage.error(response.data.code + '' + response.data.message);
+ ElMessage.error(response.data.code + '' + response.data.msg);
+ return Promise.reject(response.data.msg);
}
-
}, (error) => {
// 可添加请求失败后的处理逻辑
return Promise.reject(error)
diff --git a/src/views/HomeView.vue b/src/views/HomeView.vue
index 64a9332..b707812 100644
--- a/src/views/HomeView.vue
+++ b/src/views/HomeView.vue
@@ -69,10 +69,9 @@
diff --git a/src/views/hosts/Home.vue b/src/views/hosts/Home.vue
index e94e903..5b7f867 100644
--- a/src/views/hosts/Home.vue
+++ b/src/views/hosts/Home.vue
@@ -1,31 +1,59 @@
-
\ No newline at end of file
+.noData{
+ font-size: 20px;
+ color: #999999;
+}
+.main{
+ width: 40%;
+ height: 40%;
+}
+
diff --git a/src/views/hosts/ai/scriptManagement.vue b/src/views/hosts/ai/scriptManagement.vue
index e6b1990..f146374 100644
--- a/src/views/hosts/ai/scriptManagement.vue
+++ b/src/views/hosts/ai/scriptManagement.vue
@@ -157,13 +157,13 @@ function handleSaveWordsAdd() {
});
return;
}
+ wordsAddStatus.value = false;
addDialog(wordsAddData.value)
.then(() => {
ElMessage({
type: "success",
message: "添加成功",
});
- wordsAddStatus.value = false;
getLanguageListDataFn();
})
.catch(() => {
@@ -224,8 +224,7 @@ function handleDelete(id) {
function getLanguageListDataFn() {
getDialogList().then((res) => {
getDialogListData.value = res;
- });
- getLanguageList().then((res) => {
+ getLanguageList().then((res) => {
getLanguageListData.value = res;
LanguageData.value = mergeArrays(
getDialogListData.value,
@@ -233,6 +232,7 @@ function getLanguageListDataFn() {
);
console.log("LanguageData", LanguageData.value);
});
+ });
}
watch(refname, async (newQuestion, oldQuestion) => {
// 变化后执行
diff --git a/src/views/hosts/mini/miniAM.vue b/src/views/hosts/mini/miniAM.vue
index 98374c1..e4472d9 100644
--- a/src/views/hosts/mini/miniAM.vue
+++ b/src/views/hosts/mini/miniAM.vue
@@ -1,6 +1,8 @@
@@ -33,6 +35,13 @@ onUnmounted(() => {
height: 100%;
background-color: #ffffff;
border-radius: 10px;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+.noData{
+ font-size: 20px;
+ color: #999999;
}
/* 样式定义 */
\ No newline at end of file
diff --git a/src/views/nav.vue b/src/views/nav.vue
index 63f4be1..944bc79 100644
--- a/src/views/nav.vue
+++ b/src/views/nav.vue
@@ -44,7 +44,7 @@
Ai管理
- Ai
+ Ai
话术管理
语言管理
@@ -56,7 +56,7 @@
小程序管理
- 小程序
+ 小程序
账号管理
积分配置