使用新的api

This commit is contained in:
哆啦好梦
2023-03-03 11:54:49 +08:00
parent 9fed01c753
commit 2473e17de1
14 changed files with 49 additions and 126 deletions

View File

@@ -1,6 +1,7 @@
const { app } = require('electron');
const { autoUpdater } = require("electron-updater");
const is = require('electron-is');
const Log = require('ee-core/module/log');
/**
* 自动升级插件
@@ -44,13 +45,13 @@ class AutoUpdaterAddon {
const updateConfig = this.cfg;
const version = app.getVersion();
this.app.logger.info('[addon:autoUpdater] current version: ', version);
Log.info('[addon:autoUpdater] current version: ', version);
// 设置下载服务器地址
let server = updateConfig.options.url;
let lastChar = server.substring(server.length - 1);
server = lastChar === '/' ? server : server + "/";
//this.app.logger.info('[addon:autoUpdater] server: ', server);
//Log.info('[addon:autoUpdater] server: ', server);
updateConfig.options.url = server;
// 是否后台自动下载
@@ -59,7 +60,7 @@ class AutoUpdaterAddon {
try {
autoUpdater.setFeedURL(updateConfig.options);
} catch (error) {
this.app.logger.error('[addon:autoUpdater] setFeedURL error : ', error);
Log.error('[addon:autoUpdater] setFeedURL error : ', error);
}
autoUpdater.on('checking-for-update', () => {
@@ -96,7 +97,7 @@ class AutoUpdaterAddon {
totalSize: totalSize,
transferredSize: transferredSize
}
this.app.logger.info('[addon:autoUpdater] progress: ', text);
Log.info('[addon:autoUpdater] progress: ', text);
this.sendStatusToWindow(info);
})
autoUpdater.on('update-downloaded', (info) => {

View File

@@ -1,4 +1,5 @@
const electronApp = require('electron').app;
const Log = require('ee-core/module/log');
/**
* 唤醒插件
@@ -59,7 +60,7 @@ class AwakenAddon {
urlPath: pathname,
urlParams: search && search.slice(1)
}
this.app.logger.info('[addon:awaken] awakeUrlInfo:', awakeUrlInfo);
Log.info('[addon:awaken] awakeUrlInfo:', awakeUrlInfo);
}
}

View File

@@ -1,6 +1,7 @@
const getPort = require('get-port');
const server = require("./server");
const electronApp = require('electron').app;
const Log = require('ee-core/module/log');
/**
* java server插件
@@ -28,7 +29,7 @@ class JavaServerAddon {
// kill
electronApp.on("before-quit", async () => {
this.app.logger.info("[addon:javaServer] before-quit: kill-----------");
Log.info("[addon:javaServer] before-quit: kill-----------");
await this.javaServer.kill();
});

View File

@@ -6,6 +6,7 @@ const path = require("path");
const { exec, execSync } = require("child_process");
const Utils = require("ee-core").Utils;
const ps = require("./ps");
const Log = require('ee-core/module/log');
/**
* java server
@@ -53,11 +54,11 @@ class JavaServer {
// todo linux
}
this.app.logger.info("[addon:javaServer] cmdStr:", cmdStr);
Log.info("[addon:javaServer] cmdStr:", cmdStr);
exec(cmdStr);
} catch (err) {
this.app.logger.error('[addon:javaServer] throw error:', err);
Log.error('[addon:javaServer] throw error:', err);
}
}
@@ -73,7 +74,7 @@ class JavaServer {
arguments: jarName,
});
//this.app.logger.info("[addon:javaServer] resultList:", resultList);
//Log.info("[addon:javaServer] resultList:", resultList);
resultList.forEach((item) => {
ps.kill(item.pid, "SIGKILL", (err) => {
if (err) {
@@ -85,11 +86,11 @@ class JavaServer {
// const cmd = `for /f "tokens=1-5" %i in ('netstat -ano ^| findstr ":${port}"') do taskkill /F /T /PID %m`;
// const a = await execSync(cmd, {encoding: 'utf-8'});
// app.logger.info("[javaServer] kill:", a);
// Log.info("[javaServer] kill:", a);
} else if (is.macOS()) {
const cmd = `ps -ef | grep java | grep ${jarName} | grep -v grep | awk '{print $2}' | xargs kill -9`;
const result = await execSync(cmd);
this.app.logger.info("[addon:javaServer] kill:", result != null ? result.toString(): '');
Log.info("[addon:javaServer] kill:", result != null ? result.toString(): '');
} else {
// todo linux
}

View File

@@ -1,3 +1,5 @@
const Log = require('ee-core/module/log');
/**
* 安全插件
* @class
@@ -20,7 +22,7 @@ class SecurityAddon {
// 不允许远程调试
if (runWithDebug) {
this.app.logger.error('[error] Remote debugging is not allowed, runWithDebug:', runWithDebug);
Log.error('[error] Remote debugging is not allowed, runWithDebug:', runWithDebug);
this.app.appQuit();
}
}

View File

@@ -4,13 +4,16 @@ const _ = require('lodash');
const path = require('path');
const fs = require('fs');
const { exec } = require('child_process');
const { Controller, Utils } = require('ee-core');
const { Controller } = require('ee-core');
const {
app: electronApp,
dialog, shell, BrowserView, Notification,
powerMonitor, screen, nativeTheme
} = require('electron');
const dayjs = require('dayjs');
const ChildJob = require('ee-core/module/jobs/child');
const Ps = require('ee-core/module/ps');
const Log = require('ee-core/module/log');
let myTimer = null;
let browserViewObj = null;
@@ -38,14 +41,8 @@ class ExampleController extends Controller {
async test () {
const result = await this.service.example.test('electron');
let tmpDir = Utils.getLogDir();
console.log('tmpDir:', tmpDir);
// console.log('this.app.request:', this.app.request.query);
// const exampleAddon = this.app.addon.example;
// const str = exampleAddon.hello();
// console.log('str:', str);
let tmpDir = Ps.getLogDir();
Log.info('tmpDir:', tmpDir);
return result;
}
@@ -56,7 +53,7 @@ class ExampleController extends Controller {
async dbOperation(args) {
const { service } = this;
const paramsObj = args;
//console.log('eeeee paramsObj:', paramsObj);
//Log.info('eeeee paramsObj:', paramsObj);
const data = {
action: paramsObj.action,
result: null,
@@ -89,7 +86,7 @@ class ExampleController extends Controller {
async sqlitedbOperation(args) {
const { service } = this;
const paramsObj = args;
//console.log('eeeee paramsObj:', paramsObj);
//Log.info('eeeee paramsObj:', paramsObj);
const data = {
action: paramsObj.action,
result: null,
@@ -278,9 +275,9 @@ class ExampleController extends Controller {
// const chromeExtensionDir = chromeExtension.getDirectory();
// const extensionDir = path.join(chromeExtensionDir, extensionId);
// console.log("[api] [example] [loadExtension] extension id:", extensionId);
// Log.info("[api] [example] [loadExtension] extension id:", extensionId);
// unzip(crxFile, extensionDir).then(() => {
// console.log("[api] [example] [loadExtension] unzip success!");
// Log.info("[api] [example] [loadExtension] unzip success!");
// chromeExtension.load(extensionId);
// });
@@ -406,7 +403,7 @@ class ExampleController extends Controller {
// 数组,只取一个吧
res = resArr[0];
}
// console.log('[electron] [ipc] [example] [getScreen] res:', res);
// Log.info('[electron] [ipc] [example] [getScreen] res:', res);
data = [
{
title: '分辨率',
@@ -449,8 +446,8 @@ class ExampleController extends Controller {
return false;
}
let softwarePath = path.join(Utils.getExtraResourcesDir(), softName);
this.app.logger.info('[openSoftware] softwarePath:', softwarePath);
let softwarePath = path.join(Ps.getExtraResourcesDir(), softName);
Log.info('[openSoftware] softwarePath:', softwarePath);
// 检查程序是否存在
if (!fs.existsSync(softwarePath)) {
@@ -539,7 +536,7 @@ class ExampleController extends Controller {
params,
body
}
console.log('httpInfo:', httpInfo);
Log.info('httpInfo:', httpInfo);
if (!body.id) {
return false;
@@ -618,7 +615,7 @@ class ExampleController extends Controller {
* 上传文件
*/
async uploadFile() {
let tmpDir = Utils.getLogDir();
let tmpDir = Ps.getLogDir();
const files = this.app.request.files;
let file = files.file;
@@ -684,7 +681,7 @@ class ExampleController extends Controller {
* 测试接口
*/
hello (args) {
console.log('hello ', args);
Log.info('hello ', args);
}
}

View File

@@ -2,9 +2,7 @@ const Job = require('ee-core/module/jobs/baseJobClass');
const Loader = require('ee-core/module/loader');
const Log = require('ee-core/module/log');
const Ps = require('ee-core/module/ps');
const test = Loader.requireJobsModule('./test');
//tests.hello();
const test = Loader.requireJobsModule('./example/test');
/**
* 示例服务

View File

@@ -1,13 +0,0 @@
const Loader = require('ee-core/module/loader');
const Log = require('ee-core/module/log');
const Ps = require('ee-core/module/ps');
const test = Loader.requireJobsModule('./test');
module.exports = () => {
Log.info("[child-process] process type: ", Ps.processType());
Log.info("[child-process] process cwd: ", process.cwd());
test.hello();
//test.utilsMod();
};

View File

@@ -3,9 +3,6 @@
*************************************************/
const ChildJob = require('ee-core/module/jobs/child');
const Ps = require('ee-core/module/ps');
const Log = require('ee-core/module/log');
const test = require('./test');
/**
* 预加载模块入口
@@ -24,27 +21,6 @@ module.exports = async (app) => {
awakenAddon.create();
autoUpdaterAddon.create();
Log.info("[main] process type: ", Ps.processType());
Log.info("[main] process cwd: ", process.cwd());
test();
let myJob = new ChildJob();
myJob.exec('./jobs/example.js', {name: 'gsx1'});
setTimeout(function(){
myJob.exec('./jobs/example.js', {name: 'gsx2'});
}, 5000)
// let opt2 = {
// dev: true,
// type: 'child', // renderer
// path: './jobs/example.js',
// winOptions: {
// show: true
// },
// childOptions: {}
// }
// let myJob2 = new OriginJob();
// myJob2.create('exampleJob2', opt2);
let myjob = new ChildJob();
myjob.exec('./jobs/example/index');
}

View File

@@ -1,42 +0,0 @@
const Log = require('ee-core/module/log');
const Utils = require('ee-core/module/utils');
const Ps = require('ee-core/module/ps');
module.exports = async () => {
//utilsMod();
}
function utilsMod() {
let utilsApis = {
getBaseDir: Ps.getBaseDir(),
getEnv: Ps.getEnv(),
isDev: Ps.isDev(),
isRenderer: Ps.isRenderer(),
isMain: Ps.isMain(),
isForkedChild: Ps.isForkedChild(),
getHomeDir: Ps.getHomeDir(),
getStorageDir: Ps.getStorageDir(),
getLogDir: Ps.getLogDir(),
getRootDir: Ps.getRootDir(),
getBaseDir: Ps.getBaseDir(),
getAppUserDataDir: Ps.getAppUserDataDir(),
getHomeDir: Ps.getHomeDir(),
getUserHomeDir: Ps.getUserHomeDir(),
getMainPort: Ps.getMainPort(),
getSocketPort: Ps.getSocketPort(),
getHttpPort: Ps.getHttpPort(),
getExecDir: Ps.getExecDir(),
getPackage: Utils.getPackage(),
getEeConfig: Utils.getEeConfig(),
getAppVersion: Utils.getAppVersion(),
getAddonConfig: Utils.getAddonConfig(),
getMainServerConfig: Utils.getMainServerConfig(),
getHttpServerConfig: Utils.getHttpServerConfig(),
getSocketServerConfig: Utils.getSocketServerConfig(),
getSocketChannel: Utils.getSocketChannel(),
getExtraResourcesDir: Ps.getExtraResourcesDir(),
}
Log.info('[main] [test] utilsApis -------- ', utilsApis);
}

View File

@@ -1,6 +1,7 @@
'use strict';
const Service = require('ee-core').Service;
const { Service } = require('ee-core');
const Log = require('ee-core/module/log');
/**
* 示例服务
@@ -50,14 +51,14 @@ class ExampleService extends Service {
});
const result = response.data;
if (this.app.config.env === 'local') {
this.app.logger.info('[ExampleService] [uploadFileToSMMS]: info result:%j', result);
Log.info('[ExampleService] [uploadFileToSMMS]: info result:%j', result);
}
if (result.code !== 'success') {
this.app.logger.error('[ExampleService] [uploadFileToSMMS]: res error result:%j', result);
Log.error('[ExampleService] [uploadFileToSMMS]: res error result:%j', result);
}
return result;
} catch (e) {
this.app.logger.error('[ExampleService] [uploadFileToSMMS]: ERROR ', e);
Log.error('[ExampleService] [uploadFileToSMMS]: ERROR ', e);
}
return res;

View File

@@ -1,7 +1,7 @@
'use strict';
const Service = require('ee-core').Service;
const Storage = require('ee-core').Storage;
const { Service } = require('ee-core');
const Storage = require('ee-core/module/storage');
const _ = require('lodash');
const path = require('path');
@@ -15,12 +15,12 @@ class StorageService extends Service {
super(ctx);
// lowdb数据库
this.systemDB = Storage.JsonDB.connection('system');
this.systemDB = Storage.connection('system');
let lowdbOptions = {
driver: 'lowdb'
}
this.demoDB = Storage.JsonDB.connection('demo', lowdbOptions);
this.demoDB = Storage.connection('demo', lowdbOptions);
this.demoDBKey = {
test_data: 'test_data'
};
@@ -34,7 +34,7 @@ class StorageService extends Service {
verbose: console.log // 打印sql语法
}
}
this.demoSqliteDB = Storage.JsonDB.connection(this.sqliteFile, sqliteOptions);
this.demoSqliteDB = Storage.connection(this.sqliteFile, sqliteOptions);
}
/*
@@ -252,7 +252,7 @@ class StorageService extends Service {
verbose: console.log
}
}
this.demoSqliteDB = Storage.JsonDB.connection(dbFile, sqliteOptions);
this.demoSqliteDB = Storage.connection(dbFile, sqliteOptions);
return;
}

View File

@@ -1,4 +1,4 @@
const Appliaction = require('ee-core').Appliaction;
const { Appliaction } = require('ee-core');
class Main extends Appliaction {