Update dependencies and fix import paths for consistency
This commit is contained in:
@ -1,8 +1,8 @@
|
||||
import { Column, Entity, ManyToMany, PrimaryGeneratedColumn } from "typeorm";
|
||||
import { Query } from "./query.enitity";
|
||||
import { Query } from "./query.entity";
|
||||
|
||||
@Entity("module")
|
||||
export class Module {
|
||||
export class VMModule {
|
||||
@PrimaryGeneratedColumn("uuid")
|
||||
id: string;
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import { Project } from "src/project/entities/project.entity";
|
||||
import { Project } from "../../project/entities/project.entity";
|
||||
import {
|
||||
Column,
|
||||
Entity,
|
||||
@ -6,7 +6,7 @@ import {
|
||||
ManyToOne,
|
||||
PrimaryGeneratedColumn,
|
||||
} from "typeorm";
|
||||
import { Module } from "./module.entity";
|
||||
import { VMModule } from "./module.entity";
|
||||
|
||||
@Entity("query")
|
||||
export class Query {
|
||||
@ -22,6 +22,6 @@ export class Query {
|
||||
@Column({ type: "tinyint", default: 1 })
|
||||
isActive: number;
|
||||
|
||||
@ManyToMany(() => Module, (module) => module.queries)
|
||||
modules: Module[];
|
||||
@ManyToMany(() => VMModule, (module) => module.queries)
|
||||
modules: VMModule[];
|
||||
}
|
||||
@ -1,9 +1,9 @@
|
||||
import { Injectable } from "@nestjs/common";
|
||||
import { InjectRepository } from "@nestjs/typeorm";
|
||||
import { Query } from "../entities/query.enitity";
|
||||
import { Query } from "../entities/query.entity";
|
||||
import { Repository } from "typeorm";
|
||||
import { Vm } from "src/vm/vm.class";
|
||||
import { Module } from "src/vm/module.class";
|
||||
import { Vm } from "../../vm/vm.class";
|
||||
import { VModule } from "../../vm/module.class";
|
||||
|
||||
@Injectable()
|
||||
export class QueryExecuterService {
|
||||
@ -23,6 +23,10 @@ export class QueryExecuterService {
|
||||
|
||||
const vm = this.createVm(query);
|
||||
|
||||
vm.setFunction("result", (result: string) => {
|
||||
console.log("Query Result:", result);
|
||||
});
|
||||
|
||||
await vm.runScript(query.source);
|
||||
|
||||
// Here you would add the logic to actually execute the query
|
||||
@ -34,7 +38,7 @@ export class QueryExecuterService {
|
||||
return new Vm({
|
||||
memoryLimit: 5,
|
||||
modules: query.modules.map((module) => {
|
||||
return new Module(module.name, module.sourcePath);
|
||||
return new VModule(module.name, module.sourcePath);
|
||||
}),
|
||||
});
|
||||
}
|
||||
|
||||
@ -1,8 +1,15 @@
|
||||
import { Module } from "@nestjs/common";
|
||||
import { TypeOrmModule } from "@nestjs/typeorm";
|
||||
import { Query } from "./entities/query.entity";
|
||||
import { VMModule } from "./entities/module.entity";
|
||||
import { QueryExecuterController } from "./executer/query.executer.controller";
|
||||
import { QueryHandlerController } from "./handler/query.handler.controller";
|
||||
import { QueryExecuterService } from "./executer/query.executer.service";
|
||||
import { QueryHandlerService } from "./handler/query.handler.service";
|
||||
|
||||
@Module({
|
||||
imports: [],
|
||||
controllers: [],
|
||||
providers: [],
|
||||
imports: [TypeOrmModule.forFeature([Query, VMModule])],
|
||||
controllers: [QueryExecuterController, QueryHandlerController],
|
||||
providers: [QueryExecuterService, QueryHandlerService],
|
||||
})
|
||||
export class QueryModule {}
|
||||
|
||||
Reference in New Issue
Block a user