UNPKG

youzanyun-devtool-worker

Version:

89 lines (88 loc) 3.8 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const fs_extra_1 = tslib_1.__importDefault(require("fs-extra")); const path_1 = tslib_1.__importDefault(require("path")); const spring4js_nodejs_1 = require("spring4js-nodejs"); let LocalJetbrainService = class LocalJetbrainService { constructor() { } async getAllBepImplements(projectId) { let project = await this.projectService.getProjectById(projectId); let resData = await this.requestService.get('http://127.0.0.1:9000/extension/point/local/impl/queryAll', { params: { projectName: project.proName } }); if (+resData.code !== 200) { throw new Error(resData.message); } return resData.data; } async getAllMepImplements(projectId) { let project = await this.projectService.getProjectById(projectId); let resData = await this.requestService.get('http://127.0.0.1:9000/message/impl/queryAll', { params: { projectName: project.proName } }); if (+resData.code !== 200) { throw new Error(resData.message); } return resData.data; } async generateBepCode(projectId, info) { let { bepId, packageName, className } = info; let project = await this.projectService.getProjectById(projectId); let { proPath, proName } = project; let resData = await this.requestService.dubboCallWithAuthV2("com.youzan.mock.platform.api.ImplGeneratorService", "extPointImplGenerator", [ { projectName: proName, packageName: packageName, implName: className, extensionPointId: bepId, } ], { projectName: proName, }); if (+resData.code !== 200) { throw new Error(resData.message); } let classContent = Buffer.from(resData.data.byteData, 'base64').toString('utf8'); let dir = path_1.default.resolve(proPath, `${proName}-biz/src/main/java/${packageName.replace(/\./g, '/')}`); await fs_extra_1.default.ensureDir(dir); await fs_extra_1.default.writeFile(path_1.default.resolve(dir, `${className}.java`), classContent); } async generateMepCode(projectId, info) { let { topic, packageName, className } = info; let project = await this.projectService.getProjectById(projectId); let { proPath, proName } = project; let resData = await this.requestService.dubboCallWithAuthV2("com.youzan.mock.platform.api.ImplGeneratorService", "msgPushImplGenerator", [ { projectName: proName, packageName: packageName, implName: className, topic: topic, } ], { projectName: proName, }); if (+resData.code !== 200) { throw new Error(resData.message); } let classContent = Buffer.from(resData.data.byteData, 'base64').toString('utf8'); let dir = path_1.default.resolve(proPath, `${proName}-biz/src/main/java/${packageName.replace(/\./g, '/')}`); await fs_extra_1.default.ensureDir(dir); await fs_extra_1.default.writeFile(path_1.default.resolve(dir, `${className}.java`), classContent); } }; tslib_1.__decorate([ (0, spring4js_nodejs_1.Resource)() ], LocalJetbrainService.prototype, "projectService", void 0); tslib_1.__decorate([ (0, spring4js_nodejs_1.Resource)() ], LocalJetbrainService.prototype, "requestService", void 0); LocalJetbrainService = tslib_1.__decorate([ (0, spring4js_nodejs_1.Service)() ], LocalJetbrainService); exports.default = LocalJetbrainService;