update:登录心跳

This commit is contained in:
2025-12-16 19:40:46 +08:00
parent b11e537e7c
commit f945aac7ad
13 changed files with 53 additions and 23 deletions

View File

@@ -84,7 +84,7 @@ export const appList = [
pages: [
{
name: 'spdmTaskSponsor',
zhCn: '我发起的',
zhCn: '新增待办',
en: 'I Initiated',
path: '/spdm/task/sponsor',
component: () => import('/@/spdm/views/index.vue'),

View File

@@ -104,7 +104,7 @@ export default {
spdmProjectProjectList: '项目列表',
spdmProjectDataStatistics: '数据统计',
spdmProjectDashboard: '仿真闭环看板',
spdmTaskSponsor: '我发起的',
spdmTaskSponsor: '新增待办',
spdmTaskConfirm: '我确认的',
spdmTaskExecute: '我执行的',
spdmTaskAttention: '我关注的',

View File

@@ -1,6 +1,6 @@
export const appMap = {
spdmProject: {"name":"moduleApps.spdmProject","zhCn":"项目管理","en":"Project Management","meta":{"icon":"ele-House"},"pages":[{"name":"spdmProjectProjectList","zhCn":"项目列表","en":"Project List","path":"/spdm/project/projectList","meta":{"icon":"ele-MessageBox"}},{"name":"spdmProjectDataStatistics","zhCn":"数据统计","en":"Data Statistics","path":"/spdm/project/statistics","meta":{"icon":"ele-PieChart"}},{"name":"spdmProjectDashboard","zhCn":"仿真闭环看板","en":"Simulation Dashboard","path":"/spdm/project/dashboard","meta":{"icon":"ele-DataBoard"}}]},
spdmTask: {"name":"moduleApps.spdmTask","zhCn":"任务管理","en":"Task Management","meta":{"icon":"ele-Calendar"},"pages":[{"name":"spdmTaskSponsor","zhCn":"我发起的","en":"I Initiated","path":"/spdm/task/sponsor","meta":{"icon":"ele-Warning"}},{"name":"spdmTaskConfirm","zhCn":"我确认的","en":"I confirmed","path":"/spdm/task/confirm","meta":{"icon":"ele-DocumentChecked"}},{"name":"spdmTaskExecute","zhCn":"我执行的","en":"I executed","path":"/spdm/task/execute","meta":{"icon":"ele-SetUp"}},{"name":"spdmTaskAttention","zhCn":"我关注的","en":"I Attention","path":"/spdm/task/attention","meta":{"icon":"ele-Bell"}},{"name":"spdmTaskAll","zhCn":"所有任务","en":"All Tasks","path":"/spdm/task/all","meta":{"icon":"ele-DocumentCopy"}},{"name":"spdmTaskExecution","zhCn":"任务执行","en":"Task execution","path":"/spdm/task/execution","meta":{"icon":"ele-Operation"}}]},
spdmTask: {"name":"moduleApps.spdmTask","zhCn":"任务管理","en":"Task Management","meta":{"icon":"ele-Calendar"},"pages":[{"name":"spdmTaskSponsor","zhCn":"新增待办","en":"I Initiated","path":"/spdm/task/sponsor","meta":{"icon":"ele-Warning"}},{"name":"spdmTaskConfirm","zhCn":"我确认的","en":"I confirmed","path":"/spdm/task/confirm","meta":{"icon":"ele-DocumentChecked"}},{"name":"spdmTaskExecute","zhCn":"我执行的","en":"I executed","path":"/spdm/task/execute","meta":{"icon":"ele-SetUp"}},{"name":"spdmTaskAttention","zhCn":"我关注的","en":"I Attention","path":"/spdm/task/attention","meta":{"icon":"ele-Bell"}},{"name":"spdmTaskAll","zhCn":"所有任务","en":"All Tasks","path":"/spdm/task/all","meta":{"icon":"ele-DocumentCopy"}},{"name":"spdmTaskExecution","zhCn":"任务执行","en":"Task execution","path":"/spdm/task/execution","meta":{"icon":"ele-Operation"}}]},
spdmData: {"name":"moduleApps.spdmData","zhCn":"数据管理","en":"Data Management","meta":{"icon":"ele-TakeawayBox"},"pages":[{"name":"spdmDataOverview","zhCn":"数据总览","en":"Data Overview","path":"/spdm/data/overview","meta":{"icon":"ele-DataAnalysis"}},{"name":"spdmDataAnalysis","zhCn":"数据查询","en":"Data Query","path":"/spdm/data/analysis","meta":{"icon":"ele-Search"}},{"name":"spdmDataPermission","zhCn":"数据权限","en":"Data Permission","path":"/spdm/data/permission","meta":{"icon":"ele-Warning"}},{"name":"spdmDataTrain","zhCn":"数据训练","en":"Data Training","path":"/spdm/data/train","meta":{"icon":"ele-Cpu"}},{"name":"spdmDataForecast","zhCn":"数据预测","en":"Data Prediction","path":"/spdm/data/forecast","meta":{"icon":"ele-Paperclip"}}]},
spdmSimulation: {"name":"moduleApps.spdmSimulation","zhCn":"流程管理","en":"Process Management","meta":{"icon":"ele-Finished"},"pages":[{"name":"spdmSimulationProcess","zhCn":"仿真流程库","en":"Process Library","path":"/spdm/simulation/process","meta":{"icon":"ele-FolderChecked"}}]},
spdmCompetenceCenter: {"name":"moduleApps.spdmCompetenceCenter","zhCn":"能力中心","en":"Capability Center","meta":{"icon":"ele-Reading"},"pages":[{"name":"spdmCompetenceCenterCondition","zhCn":"仿真工况库","en":"Condition Library","path":"/spdm/competenceCenter/condition","meta":{"icon":"ele-Suitcase"}},{"name":"spdmCompetenceCenterIndicator","zhCn":"仿真指标库","en":"Indicator Library","path":"/spdm/competenceCenter/indicator","meta":{"icon":"ele-Money"}},{"name":"spdmCompetenceCenterKnowledge","zhCn":"仿真知识库","en":"Knowledge Library","path":"/spdm/competenceCenter/knowledge","meta":{"icon":"ele-Memo"}},{"name":"spdmCompetenceCenterParameter","zhCn":"仿真参数库","en":"Parameter Library","path":"/spdm/competenceCenter/parameter","meta":{"icon":"ele-Tickets"}}]},

View File

@@ -104,7 +104,7 @@ export default {
spdmProjectProjectList: '项目列表',
spdmProjectDataStatistics: '数据统计',
spdmProjectDashboard: '仿真闭环看板',
spdmTaskSponsor: '我发起的',
spdmTaskSponsor: '新增待办',
spdmTaskConfirm: '我确认的',
spdmTaskExecute: '我执行的',
spdmTaskAttention: '我关注的',

View File

@@ -21,7 +21,7 @@ service.interceptors.request.use(
service.interceptors.response.use(
(res) => {
if (res.data.code !== 200) {
if (!res.data.success) {
ElMessage.error(res.data.message);
}
return res.data;

6
src/spdm/api/spdm-log.ts Normal file
View File

@@ -0,0 +1,6 @@
import { post } from './request';
// 登录成功记录日志
export const saveLogApi = (params: any) => {
return post(`/spdm-log/saveLog`, params);
};

View File

@@ -0,0 +1,6 @@
import { post } from './request';
// 发送心跳
export const heartbeatApi = (params: any) => {
return post(`/spdm-user/heartbeat`, params);
};

View File

@@ -1,9 +0,0 @@
import { get } from '../request';
import { PREFIX_SYSTEM } from '../../config';
const PREFIX = PREFIX_SYSTEM;
// 获取用户token
export const getUserTokenApi = (params: any) => {
return get(`${PREFIX}user/getUserToken`, params);
};

View File

@@ -1,9 +1,7 @@
// 测试环境
export const SPDM_URL = 'http://192.168.65.161:3000'; // SPDM项目地址
export const PREFIX_SYSTEM = '/system/'; // system模块前缀
export const BASE_URL = '/spdmApi/simulation'; // baseUrl
export const BASE_URL = '/spdmApi/honeycom-spdm'; // baseUrl
// // 本地环境
// export const SPDM_URL = 'http://192.168.65.64:3001'; // SPDM项目地址
// export const PREFIX_SYSTEM = '/system/'; // system模块前缀
// export const BASE_URL = '/spdmApi/simulation'; // baseUrl
// export const BASE_URL = '/spdmApi/honeycom-spdm'; // baseUrl

View File

@@ -49,7 +49,7 @@ export const appList = [
pages: [
{
name: 'spdmTaskSponsor',
zhCn: '我发起的',
zhCn: '新增待办',
en: 'I Initiated',
path: '/spdm/task/sponsor',
component: () => import('/@/spdm/views/index.vue'),

19
src/spdm/utils/index.ts Normal file
View File

@@ -0,0 +1,19 @@
import { heartbeatApi } from '/@/spdm/api/spdm-user';
import Cookies from 'js-cookie';
const SET_TIME = 5 * 60 * 1000; // 5分钟发一次心跳
const heartbeatFun = () => {
const params = {
tenantId: Cookies.get('cid_tenant_id'),
userId: Cookies.get('cid_user_id'),
};
heartbeatApi(params);
};
export const loginHeartbeat = () => {
heartbeatFun();
setInterval(() => {
heartbeatFun();
}, SET_TIME);
};

View File

@@ -49,6 +49,8 @@ import {useThemeConfig} from '/@/stores/themeConfig';
import {useMessage} from '/@/hooks/message';
import {LoginTypeEnum} from '/@/api/login';
import {formatAxis} from '/@/utils/formatTime';
import { saveLogApi } from '/@/spdm/api/spdm-log'; // SPDM CODE
import Cookies from 'js-cookie'; // SPDM CODE
import {isEmpty} from 'lodash';
// 引入组件
@@ -103,8 +105,16 @@ const signInSuccess = async () => {
// window.location.href = '/home';
// // router.push('/home');
// }
window.location.href = '/home';
// 登录成功提示
useMessage().success(`${currentTimeInfo}${t('signInText')}`);
// SPDM CODE
saveLogApi({
title: '登录成功',
serviceId: 'simulation-system',
tenantId: Cookies.get('cid_tenant_id'),
createBy: Cookies.get('cid_user_id'),
}).then(() => {
window.location.href = '/home';
// 登录成功提示
useMessage().success(`${currentTimeInfo}${t('signInText')}`);
});
};
</script>

View File

@@ -123,7 +123,7 @@ const viteConfig = defineConfig((mode: ConfigEnv) => {
// rewrite: (path) => path.replace(/^\/file\/2D/, ''),
},
'/spdmApi': { // SPDM CODE
target: 'http://192.168.65.161:3000/api/', // 目标服务器地址
target: 'http://192.168.65.162:8989/', // 目标服务器地址
ws: true, // 是否启用 WebSocket
changeOrigin: true, // 是否修改请求头中的 Origin 字段
rewrite: (path) => path.replace(/^\/spdmApi/, ''),