format on save, resolve compile errors, functionality 1. stage

This commit is contained in:
2024-04-23 17:32:21 +02:00
parent 7f0f21b598
commit 9e03620be7
32 changed files with 1506 additions and 1389 deletions

View File

@@ -1,4 +1,4 @@
import { Body, Controller, Get, Inject, Param, Post, Put } from '@nestjs/common';
import { Body, Controller, Get, Inject, Param, Post, Put, Query, Req } from '@nestjs/common';
import { UserService } from './user.service.js';
import { WINSTON_MODULE_PROVIDER } from 'nest-winston';
import { Logger } from 'winston';
@@ -9,6 +9,13 @@ export class UserController {
constructor(private userService: UserService, @Inject(WINSTON_MODULE_PROVIDER) private readonly logger: Logger) {}
@Get()
findByMail(@Query('mail') mail: string): any {
this.logger.info(`Searching for user with EMail: ${mail}`);
const user = this.userService.getUserByMail(mail);
this.logger.info(`Found user: ${JSON.stringify(user)}`);
return user;
}
@Get(':id')
findById(@Param('id') id: string): any {
this.logger.info(`Searching for user with ID: ${id}`);
@@ -16,7 +23,6 @@ export class UserController {
this.logger.info(`Found user: ${JSON.stringify(user)}`);
return user;
}
@Post()
save(@Body() user: any): Promise<User> {
this.logger.info(`Saving user: ${JSON.stringify(user)}`);

View File

@@ -20,10 +20,17 @@ export class UserService {
private getConditions(criteria: ListingCriteria): any[] {
const conditions = [];
if (criteria.state) {
conditions.push();
conditions.push(sql`EXISTS (SELECT 1 FROM unnest(users."areasServed") AS area WHERE area LIKE '%' || ${criteria.state} || '%')`);
}
return conditions;
}
async getUserByMail( id:string){
const users = await this.conn.select().from(schema.users).where(sql`email = ${id}`) as User[]
const user = users[0]
user.hasCompanyLogo=this.fileService.hasCompanyLogo(id);
user.hasProfile=this.fileService.hasProfile(id);
return user;
}
async getUserById( id:string){
const users = await this.conn.select().from(schema.users).where(sql`id = ${id}`) as User[]
const user = users[0]
@@ -41,8 +48,11 @@ export class UserService {
}
}
async findUser(criteria:ListingCriteria){
const users = await this.conn.execute(sql`SELECT * FROM users WHERE EXISTS (SELECT 1 FROM unnest(users."areasServed") AS area WHERE area LIKE '%' || ${criteria.state} || '%')`)
return users.rows
const start = criteria.start ? criteria.start : 0;
const length = criteria.length ? criteria.length : 12;
const conditions = this.getConditions(criteria)
const users = await this.conn.select().from(schema.users).where(and(...conditions)).offset(start).limit(length)
return users
}
}