Преглед на файлове

新增。rust仓位检查接口

hl преди 8 месеца
родител
ревизия
5a718224d3
променени са 2 файла, в които са добавени 53 реда и са изтрити 12 реда
  1. 47 1
      src/robot.js
  2. 6 11
      src/web.js

+ 47 - 1
src/robot.js

@@ -337,6 +337,41 @@ async function restartApp(param) {
     logger.info(`重启完成!!!!!`);
     logger.info(`重启完成!!!!!`);
 }
 }
 
 
+//启动- 检查程序
+async function searchPositions(param) {
+    return new Promise(async (resolve, reject) => {
+        var key = param.id
+        var appName = param.path
+        var run_mode = param.run_mode
+        var robot_id = param.robot_id
+        let newAppName = "4l_as_" + appName;
+        let configName = "config.json";        //配置文件
+        var programName = param.programName
+        var strategyName = param.strategyName
+        var app = getApp(key)
+        var config = getRustConfig()
+
+        //相对路径存放
+        var appPath = config.filePath + "/" + app.id + "/" + strategyName + "/" + programName
+
+        const args = ['--config=' + configPath, '--port=' + app.port]
+        app.childProcess = spawn(command, args)
+        const asName = appPath + "/" + newAppName
+        const configPath = appPath + "/" + configName
+        const appPort =  app.port
+        const command  = `sudo ${asName} --config=${configPath} --port==${appPort} --run_mode=${run_mode} --robot_id=${robot_id}`
+
+        exec(command, (error, stdout, stderr) => {
+            if (error) {
+                logger.error(`命令执行失败~: ${command} 错误:${error}`);
+            }
+
+            logger.info(`检查指令发送成功!`);
+        });
+        return resolve(true)
+    })
+}
+
 async function closeAppAll() {
 async function closeAppAll() {
     return new Promise(async (resolve, reject) => {
     return new Promise(async (resolve, reject) => {
 
 
@@ -491,5 +526,16 @@ function delRobot(app) {
 
 
 
 
 module.exports = {
 module.exports = {
-    run, closeApp, restartApp, delRobot, robotStatus, robotAmount, closeAppAll, appMap, getApp, getAppMap, RobotStatus
+    run,
+    closeApp,
+    restartApp,
+    delRobot,
+    robotStatus,
+    robotAmount,
+    closeAppAll,
+    searchPositions,
+    appMap,
+    getApp,
+    getAppMap,
+    RobotStatus
 };
 };

+ 6 - 11
src/web.js

@@ -62,16 +62,6 @@ function init() {
         })
         })
         res.send({'code': 200, 'data': JSON.stringify(list), "message": "SUCCESS"});
         res.send({'code': 200, 'data': JSON.stringify(list), "message": "SUCCESS"});
     });
     });
-    app.get('/app11', (req, res) => {
-        // res.send('is OK!');
-        var s = JSON.parse("{}");
-        robot.appMap.forEach((value, key) => {
-            // str.set(key,JSON.stringify(value))
-            s[key] = value
-        })
-        res.send({'code': 200, 'data': JSON.stringify(s), "message": "SUCCESS"});
-    });
-
 
 
     //简单三个接口,为了方便使用get请求
     //简单三个接口,为了方便使用get请求
     app.get('/isOK', (req, res) => {
     app.get('/isOK', (req, res) => {
@@ -132,7 +122,12 @@ function init() {
         // 回应信号(响应请求)
         // 回应信号(响应请求)
         res.send({'code': 200, 'data': "null", "message": "SUCCESS"});
         res.send({'code': 200, 'data': "null", "message": "SUCCESS"});
     })
     })
-
+    //启动-仓位检查
+    app.get('/searchPositions', (req, res) =>{
+        res.send({'code': 200, 'data': true, "message": "SUCCESS"});
+        const param = req.body;
+        robot.searchPositions(param)
+    })
     // 使服务器监听特定端口
     // 使服务器监听特定端口
     app.listen(port, () => {
     app.listen(port, () => {
         // console.log(`服务器正在监听 http://localhost:${port}`);
         // console.log(`服务器正在监听 http://localhost:${port}`);