73 lines
2.3 KiB
JavaScript
73 lines
2.3 KiB
JavaScript
const express = require('express');
|
|
const router = express.Router();
|
|
const {
|
|
interfaceGenStep1InitParams,
|
|
interfaceGenStep2GetInterfaceData,
|
|
interfaceGenStep3CreateConfigDir,
|
|
interfaceGenStep4GenerateIDL,
|
|
interfaceGenStep5GenerateFastDDS,
|
|
interfaceGenStep6GenerateDDSInterface,
|
|
interfaceGenStep7GenerateCMakeLists,
|
|
interfaceGenStep8BuildAndInstall,
|
|
interfaceGenStep9SudoLdconfig
|
|
} = require('../utils/xnCoreService');
|
|
|
|
// Step1: 初始化接口生成参数
|
|
router.post('/step1', (req, res) => {
|
|
const { configID } = req.body;
|
|
if (!configID) {
|
|
return res.status(400).json({ success: false, message: '缺少configID参数' });
|
|
}
|
|
const result = interfaceGenStep1InitParams(configID);
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
// Step2: 获取接口数据
|
|
router.post('/step2', (req, res) => {
|
|
const result = interfaceGenStep2GetInterfaceData();
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
// Step3: 创建构型接口目录
|
|
router.post('/step3', (req, res) => {
|
|
const result = interfaceGenStep3CreateConfigDir();
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
// Step4: 生成IDL文件
|
|
router.post('/step4', (req, res) => {
|
|
const result = interfaceGenStep4GenerateIDL();
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
// Step5: 生成FastDDS接口代码
|
|
router.post('/step5', (req, res) => {
|
|
const result = interfaceGenStep5GenerateFastDDS();
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
// Step6: 生成DDS接口代码
|
|
router.post('/step6', (req, res) => {
|
|
const result = interfaceGenStep6GenerateDDSInterface();
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
// Step7: 生成CMakeLists文件
|
|
router.post('/step7', (req, res) => {
|
|
const result = interfaceGenStep7GenerateCMakeLists();
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
// Step8: CMake构建并安装
|
|
router.post('/step8', (req, res) => {
|
|
const result = interfaceGenStep8BuildAndInstall();
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
// Step9: 执行sudo ldconfig
|
|
router.post('/step9', (req, res) => {
|
|
const result = interfaceGenStep9SudoLdconfig();
|
|
res.json({ success: result.includes('成功'), message: result });
|
|
});
|
|
|
|
module.exports = router;
|