mirror of
https://github.com/crystelf/crystelf-core.git
synced 2025-10-14 05:19:19 +00:00
63 lines
1.6 KiB
TypeScript
63 lines
1.6 KiB
TypeScript
import express from 'express';
|
|
import tools from '../../core/utils/modules/tools';
|
|
import response from '../../core/utils/system/response';
|
|
import SystemService from './system.service';
|
|
|
|
class SystemController {
|
|
private readonly router: express.Router;
|
|
|
|
constructor() {
|
|
this.router = express.Router();
|
|
this.init();
|
|
}
|
|
|
|
public getRouter(): express.Router {
|
|
return this.router;
|
|
}
|
|
|
|
private init(): void {
|
|
this.router.post('/restart', this.systemRestart);
|
|
this.router.post('/getRestartTime', this.getRestartTime);
|
|
}
|
|
|
|
/**
|
|
* 系统重启路由
|
|
* @param req
|
|
* @param res
|
|
*/
|
|
private systemRestart = async (req: express.Request, res: express.Response): Promise<void> => {
|
|
try {
|
|
const token = req.body.token;
|
|
if (tools.checkToken(token.toString())) {
|
|
await response.success(res, '核心正在重启..');
|
|
await SystemService.systemRestart();
|
|
} else {
|
|
await tools.tokenCheckFailed(res, token);
|
|
}
|
|
} catch (e) {
|
|
await response.error(res);
|
|
}
|
|
};
|
|
|
|
/**
|
|
* 获取重启所需时间
|
|
* @param req
|
|
* @param res
|
|
*/
|
|
private getRestartTime = async (req: express.Request, res: express.Response): Promise<void> => {
|
|
try {
|
|
const token = req.body.token;
|
|
if (tools.checkToken(token.toString())) {
|
|
const time = await SystemService.getRestartTime();
|
|
await response.success(res, time);
|
|
} else {
|
|
await tools.tokenCheckFailed(res, token);
|
|
}
|
|
} catch (e) {
|
|
await response.error(res);
|
|
}
|
|
};
|
|
}
|
|
|
|
export default new SystemController();
|