mods
Some checks failed
Run Unit-Tests / test_frontend (push) Has been cancelled
Run Unit-Tests / test_backend (push) Has been cancelled

This commit is contained in:
Bastian Wagner
2026-02-16 13:07:31 +01:00
parent 9ea2229f5a
commit b4826cab2c
10 changed files with 65 additions and 20 deletions

View File

@@ -1,3 +1,6 @@
# Application
DEVELOP_MODE=false
# Database
MYSQL_USER=db_user
MYSQL_PASSWORD=PAssword123

View File

@@ -4,10 +4,11 @@ import { CylinderService } from './cylinder.service';
import { AuthModule } from '../auth/auth.module';
import { DatabaseModule } from 'src/shared/database/database.module';
import { SharedServiceModule } from 'src/shared/service/shared.service.module';
import { ConfigService } from '@nestjs/config';
@Module({
controllers: [CylinderController],
providers: [CylinderService],
providers: [CylinderService, ConfigService],
imports: [AuthModule, DatabaseModule, SharedServiceModule],
})
export class CylinderModule {}

View File

@@ -1,4 +1,5 @@
import { HttpException, HttpStatus, Injectable } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import { Cylinder, User } from 'src/model/entitites';
import { ActivityRepository, CylinderRepository, KeyRepository } from 'src/model/repositories';
import { HelperService } from 'src/shared/service/system.helper.service';
@@ -9,15 +10,24 @@ export class CylinderService {
private readonly cylinderRepo: CylinderRepository,
private readonly keyRepo: KeyRepository,
private systemActivityRepo: ActivityRepository,
private readonly helper: HelperService
private readonly helper: HelperService,
private readonly configService: ConfigService
) {}
get isDevelopMode(): boolean {
return (this.configService.get('DEVELOP_MODE') || '').toLowerCase() == 'true';
}
async getCylinders(user: User): Promise<Cylinder[]> {
const c = await this.cylinderRepo.find({
let c = await this.cylinderRepo.find({
where: { system: { managers: { id: user.id } } },
order: { name: { direction: 'ASC' } },
relations: ['system', 'keys'],
});
if (this.isDevelopMode) {
c = c.filter(c => c.name.toLowerCase().includes('develop') || c.system.name.toLocaleLowerCase().includes('develop'))
}
return c;
}

View File

@@ -4,10 +4,11 @@ import { KeyService } from './key.service';
import { DatabaseModule } from 'src/shared/database/database.module';
import { AuthModule } from '../auth/auth.module';
import { SharedServiceModule } from 'src/shared/service/shared.service.module';
import { ConfigService } from '@nestjs/config';
@Module({
controllers: [KeyController],
providers: [KeyService],
providers: [KeyService, ConfigService],
imports: [DatabaseModule, AuthModule, SharedServiceModule],
})
export class KeyModule {}

View File

@@ -8,7 +8,9 @@ import {
import { KeyHandoutRepository } from 'src/model/repositories/key-handout.repository';
import { ActivityHelperService } from 'src/shared/service/activity.logger.service';
import { HelperService } from 'src/shared/service/system.helper.service';
import { IsNull, Not } from 'typeorm';
import { FindOperator, IsNull, Not } from 'typeorm';
import { faker } from '@faker-js/faker';
import { ConfigService } from '@nestjs/config';
@Injectable()
export class KeyService {
@@ -18,27 +20,39 @@ export class KeyService {
private readonly handoverRepo: KeyHandoutRepository,
private readonly activityService: ActivityHelperService,
private readonly helper: HelperService,
private readonly configService: ConfigService
) {}
get isDevelopMode(): boolean {
return (this.configService.get('DEVELOP_MODE') || '').toLowerCase() == 'true';
}
async getUsersKeys(user: User): Promise<Key[]> {
const keys = await this.keyrepository.find({
let keys = await this.keyrepository.find({
where: { cylinder: { system: { managers: { id: user.id } } }, keyLost: IsNull() },
relations: ['cylinder', 'cylinder.system', 'customer'],
});
for (let k of keys) {
k.customer = await this.getCustomerOfLastHandout(user, k.id);
}
if (this.isDevelopMode) {
keys = keys.filter(k => k.cylinder.some(c => c.name.toLowerCase().includes('develop') || c.system.name.toLowerCase().includes('develop')))
}
return keys;
}
async getLostKeys(user: User): Promise<Key[]> {
const keys = await this.keyrepository.find({
let keys = await this.keyrepository.find({
where: { cylinder: { system: { managers: { id: user.id } } }, keyLost: Not(IsNull()) },
relations: ['cylinder', 'cylinder.system', 'customer'],
});
for (let k of keys) {
k.customer = await this.getCustomerOfLastHandout(user, k.id);
}
if (this.isDevelopMode) {
keys = keys.filter(k => k.cylinder.some(c => c.name.toLowerCase().includes('develop') || c.system.name.toLowerCase().includes('develop')))
}
return keys;
}

View File

@@ -4,10 +4,11 @@ import { SystemController } from './system.controller';
import { AuthModule } from '../auth/auth.module';
import { DatabaseModule } from 'src/shared/database/database.module';
import { MailModule } from '../mail/mail.module';
import { ConfigService } from '@nestjs/config';
@Module({
controllers: [SystemController],
providers: [SystemService],
providers: [SystemService, ConfigService],
imports: [AuthModule, DatabaseModule, MailModule],
})
export class SystemModule {}

View File

@@ -5,6 +5,7 @@ import { ActivityRepository, KeySystemRepository, UserRepository } from 'src/mod
import { User } from 'src/model/entitites';
import { IUser } from 'src/model/interface';
import { MailService } from '../mail/mail.service';
import { ConfigService } from '@nestjs/config';
@Injectable()
export class SystemService {
@@ -12,8 +13,13 @@ export class SystemService {
private systemRepo: KeySystemRepository,
private userRepo: UserRepository,
private systemActivityRepo: ActivityRepository,
private mailService: MailService
private mailService: MailService,
private readonly configService: ConfigService
) {}
get isDevelopMode(): boolean {
return (this.configService.get('DEVELOP_MODE') || '').toLowerCase() == 'true';
}
async create(user: User, createSystemDto: CreateSystemDto) {
const sys = this.systemRepo.create(createSystemDto);
@@ -34,11 +40,17 @@ export class SystemService {
}
}
findAll(user: User) {
return this.systemRepo.find({
async findAll(user: User) {
let systems = await this.systemRepo.find({
where: { managers: { id: user.id } },
order: { name: { direction: 'ASC' } },
});
if (this.isDevelopMode) {
systems = systems.filter(s => s.name.toLocaleLowerCase().includes('develop'));
}
return systems;
}
findOne(id: string) {