add lineas programaticas
This commit is contained in:
+12
-3
@@ -17,13 +17,17 @@ import { JwtModule } from '@nestjs/jwt';
|
||||
import { EjesEstrategicosService } from './ejesEstrategicos/ejesEstrategicos.service';
|
||||
import { EjesEstrategicosController } from './ejesEstrategicos/ejesEstrategicos.controller';
|
||||
import * as process from 'node:process';
|
||||
import { EjesEstrategicosModule } from "./ejesEstrategicos/ejesEstrategicos.module";
|
||||
import { EjesEstrategicosModule } from './ejesEstrategicos/ejesEstrategicos.module';
|
||||
import { LineasProgramaticasController } from './lineasProgramaticas/lineasProgramaticas.controller';
|
||||
import { LineasProgramaticasService } from './lineasProgramaticas/lineasProgramaticas.service';
|
||||
import { LineasProgramaticasModule } from './lineasProgramaticas/lineasProgramaticas.module';
|
||||
config({ path: '.env' });
|
||||
@Module({
|
||||
imports: [
|
||||
AuthModule,
|
||||
UsersModule,
|
||||
EjesEstrategicosModule,
|
||||
LineasProgramaticasModule,
|
||||
ConfigModule.forRoot({
|
||||
isGlobal: true,
|
||||
}),
|
||||
@@ -50,7 +54,12 @@ config({ path: '.env' });
|
||||
signOptions: { expiresIn: process.env.JWT_EXPIRES },
|
||||
}),
|
||||
],
|
||||
controllers: [AppController, UsuarioController, EjesEstrategicosController],
|
||||
providers: [AppService, EjesEstrategicosService],
|
||||
controllers: [
|
||||
AppController,
|
||||
UsuarioController,
|
||||
EjesEstrategicosController,
|
||||
LineasProgramaticasController,
|
||||
],
|
||||
providers: [AppService, EjesEstrategicosService, LineasProgramaticasService],
|
||||
})
|
||||
export class AppModule {}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
import { IsDefined, IsNotEmpty, IsString } from '@nestjs/class-validator';
|
||||
|
||||
export class LinearProgramaticaDTO {
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
@IsDefined()
|
||||
readonly descripcion: string;
|
||||
|
||||
@IsString()
|
||||
@IsNotEmpty()
|
||||
@IsDefined()
|
||||
readonly eje_estrategico_id: number;
|
||||
}
|
||||
@@ -18,6 +18,6 @@ export class EjesEstrategicosService {
|
||||
addEjeEstrategico(
|
||||
ejeEstrategico: EjeEstrategicoDTO,
|
||||
): Promise<EjeEstrategico> {
|
||||
return this.ejesEtrategicosRepository.save(ejeEstrategico).finally();
|
||||
return this.ejesEtrategicosRepository.save(ejeEstrategico);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,6 +16,9 @@ export class LineaProgramatica {
|
||||
() => EjeEstrategico,
|
||||
(ejeEstrategico) => ejeEstrategico.lineasProgramaticas,
|
||||
)
|
||||
@Column('int')
|
||||
eje_estrategico_id: number;
|
||||
|
||||
@JoinColumn({ name: 'eje_estrategico_id' })
|
||||
ejeEstrategico: EjeEstrategico;
|
||||
|
||||
|
||||
@@ -13,8 +13,6 @@ export class EjeEstrategico {
|
||||
@Column('text')
|
||||
objetivo: string;
|
||||
|
||||
@Column('text')
|
||||
lineas_programaticas: string;
|
||||
|
||||
@OneToMany(
|
||||
() => ComentarioEje,
|
||||
|
||||
@@ -0,0 +1,46 @@
|
||||
import {
|
||||
BadRequestException,
|
||||
Body,
|
||||
Controller,
|
||||
Get,
|
||||
Header,
|
||||
HttpCode,
|
||||
Post,
|
||||
Req,
|
||||
Res,
|
||||
UseGuards,
|
||||
} from '@nestjs/common';
|
||||
import { AuthGuard } from '../auth/auth.guard';
|
||||
import { LineasProgramaticasService } from './lineasProgramaticas.service';
|
||||
import { LinearProgramaticaDTO } from '../dtos/lineaProgramaticaDTO';
|
||||
import { isUndefined } from '@nestjs/common/utils/shared.utils';
|
||||
import Any = jasmine.Any;
|
||||
|
||||
@Controller('lineasProgramaticas')
|
||||
export class LineasProgramaticasController {
|
||||
constructor(
|
||||
private readonly lineasPogramaticasService: LineasProgramaticasService,
|
||||
) {}
|
||||
|
||||
@UseGuards(AuthGuard)
|
||||
@Header('content-type', 'application/json')
|
||||
@Get('lineasProgramaticas')
|
||||
getLineasProgramaticas(@Req() request: Request) {
|
||||
const ejeId = request.body['ejeEstrategicoId'];
|
||||
if (!isUndefined(ejeId)) {
|
||||
return this.lineasPogramaticasService.findLineasProgramaticas(ejeId);
|
||||
} else {
|
||||
throw new BadRequestException();
|
||||
}
|
||||
}
|
||||
|
||||
@UseGuards(AuthGuard)
|
||||
@Header('content-type', 'application/json')
|
||||
@Post('addLineaProgramatica')
|
||||
@HttpCode(200)
|
||||
addLineasProgramaticas(@Body() lineaProgramatica: LinearProgramaticaDTO) {
|
||||
return this.lineasPogramaticasService.addLineaProgramatica(
|
||||
lineaProgramatica,
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { TypeOrmModule } from '@nestjs/typeorm';
|
||||
import { LineaProgramatica } from '../entities/LineaProgramatica.entity';
|
||||
import { LineasProgramaticasService } from './lineasProgramaticas.service';
|
||||
import { LineasProgramaticasController } from './lineasProgramaticas.controller';
|
||||
|
||||
@Module({
|
||||
imports: [TypeOrmModule.forFeature([LineaProgramatica])],
|
||||
providers: [LineasProgramaticasService],
|
||||
controllers: [LineasProgramaticasController],
|
||||
exports: [TypeOrmModule.forFeature([LineaProgramatica])],
|
||||
})
|
||||
export class LineasProgramaticasModule {}
|
||||
@@ -0,0 +1,25 @@
|
||||
import { Injectable } from '@nestjs/common';
|
||||
import { InjectRepository } from '@nestjs/typeorm';
|
||||
import { Repository } from 'typeorm';
|
||||
import { LineaProgramatica } from '../entities/LineaProgramatica.entity';
|
||||
import { LinearProgramaticaDTO } from '../dtos/lineaProgramaticaDTO';
|
||||
|
||||
@Injectable()
|
||||
export class LineasProgramaticasService {
|
||||
constructor(
|
||||
@InjectRepository(LineaProgramatica)
|
||||
private lineasProgramaticasRepository: Repository<LineaProgramatica>,
|
||||
) {}
|
||||
|
||||
findLineasProgramaticas(
|
||||
eje_estrategico_id: number,
|
||||
): Promise<LineaProgramatica[]> {
|
||||
return this.lineasProgramaticasRepository.findBy({ eje_estrategico_id });
|
||||
}
|
||||
|
||||
addLineaProgramatica(
|
||||
lineaProgramatica: LinearProgramaticaDTO,
|
||||
): Promise<LineaProgramatica> {
|
||||
return this.lineasProgramaticasRepository.save(lineaProgramatica);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user