Fixed the dynamic class creation
This commit is contained in:
parent
a8ec0142b0
commit
cad30c7f63
|
@ -1,25 +1,31 @@
|
|||
import { ContentType, Controller, Post, Req, UseBefore } from 'routing-controllers';
|
||||
import { Body, ContentType, Controller, Post, Req, UseBefore } from 'routing-controllers';
|
||||
import { OpenAPI } from 'routing-controllers-openapi';
|
||||
import RawBodyMiddleware from '../middlewares/RawBody';
|
||||
import { ImportSchoolRunner } from '../models/actions/ImportSchoolRunner';
|
||||
import { ResponseRunner } from '../models/responses/ResponseRunner';
|
||||
import { RunnerController } from './RunnerController';
|
||||
|
||||
@Controller()
|
||||
//@Authorized("IMPORT:read")
|
||||
export class ImportController {
|
||||
// private runnerRepository: Repository<Runner>;
|
||||
private runnerController: RunnerController;
|
||||
|
||||
/**
|
||||
* Gets the repository of this controller's model/entity.
|
||||
*/
|
||||
constructor() {
|
||||
//this.runnerRepository = getConnectionManager().get().getRepository(Runner);
|
||||
this.runnerController = new RunnerController();
|
||||
}
|
||||
|
||||
@Post('/runners/import')
|
||||
@ContentType("application.json")
|
||||
@ContentType("application/json")
|
||||
@OpenAPI({ description: "Create new runners from json" })
|
||||
postJSON(@Req() request: any) {
|
||||
console.log(request.rawBody.toString())
|
||||
return request.rawBody.toString();
|
||||
async postJSON(@Body({ validate: true, type: ImportSchoolRunner }) importRunners: ImportSchoolRunner[]) {
|
||||
let responseRunners: ResponseRunner[] = new Array<ResponseRunner>();
|
||||
for await (let runner of importRunners) {
|
||||
responseRunners.push(await this.runnerController.post(await runner.toCreateRunner(1)));
|
||||
}
|
||||
return responseRunners;
|
||||
}
|
||||
|
||||
@Post('/runners/import/csv')
|
||||
|
@ -27,6 +33,7 @@ export class ImportController {
|
|||
@UseBefore(RawBodyMiddleware)
|
||||
@OpenAPI({ description: "Create new runners from csv" })
|
||||
postCSV(@Req() request: any) {
|
||||
console.log(request.rawBody.toString())
|
||||
throw new Error("Not implemented yet.");
|
||||
}
|
||||
}
|
|
@ -25,6 +25,7 @@ export class ImportSchoolRunner extends ImportRunner {
|
|||
newRunner.middlename = this.middlename;
|
||||
newRunner.lastname = this.lastname;
|
||||
newRunner.group = (await this.getGroup(orgID)).id;
|
||||
console.log(newRunner.group)
|
||||
|
||||
return newRunner;
|
||||
}
|
||||
|
@ -44,7 +45,7 @@ export class ImportSchoolRunner extends ImportRunner {
|
|||
let newRunnerTeam: RunnerTeam = new RunnerTeam();
|
||||
newRunnerTeam.name = this.class;
|
||||
newRunnerTeam.parentGroup = org;
|
||||
team = await getConnectionManager().get().getRepository(RunnerTeam).create(newRunnerTeam);
|
||||
team = await getConnectionManager().get().getRepository(RunnerTeam).save(newRunnerTeam);
|
||||
}
|
||||
|
||||
return team;
|
||||
|
|
Loading…
Reference in New Issue