feat: users CRUD

This commit is contained in:
GitBluub
2022-06-19 23:23:16 +02:00
parent 039a53ef34
commit 5faa4dc12c
8 changed files with 31 additions and 10 deletions

View File

@@ -4,5 +4,6 @@ COPY ./package.json ./
RUN npm install
COPY . .
RUN npx prisma generate
RUN npx prisma migrate dev
RUN npm run build
CMD ["npm", "run", "start:prod"]

View File

@@ -3,5 +3,5 @@ WORKDIR /app
COPY ./package.json ./
RUN npm install
COPY . .
RUN npx prisma generate
CMD [ "npm" , "run", "start:dev"]
RUN env
CMD RUN npx prisma generate ; npx prisma migrate dev ; npm run start:dev

View File

@@ -0,0 +1,11 @@
-- CreateTable
CREATE TABLE "User" (
"id" SERIAL NOT NULL,
"email" TEXT NOT NULL,
"name" TEXT,
CONSTRAINT "User_pkey" PRIMARY KEY ("id")
);
-- CreateIndex
CREATE UNIQUE INDEX "User_email_key" ON "User"("email");

View File

@@ -0,0 +1,3 @@
# Please do not edit this file manually
# It should be added in your version-control system (i.e. Git)
provider = "postgresql"

View File

@@ -1,4 +1,4 @@
export class CreateUserDto {
mail: String;
name: String;
email: string;
name: string;
}

View File

@@ -1,4 +1,4 @@
import { Controller, Get, Post, Body, Patch, Param, Delete } from '@nestjs/common';
import { Controller, Get, Post, Body, Patch, Param, Delete, Put } from '@nestjs/common';
import { UsersService } from './users.service';
import { CreateUserDto } from './dto/create-user.dto';
import { UpdateUserDto } from './dto/update-user.dto';
@@ -9,7 +9,7 @@ export class UsersController {
@Post()
create(@Body() createUserDto: CreateUserDto) {
return this.usersService.create(createUserDto);
return this.usersService.createUser(createUserDto);
}
@Get()
@@ -18,17 +18,17 @@ export class UsersController {
}
@Get(':id')
findOne(@Param('id') id: string) {
return this.usersService.findOne(+id);
findOne(@Param('id') id: number) {
return this.usersService.user({"id": +id});
}
@Patch(':id')
update(@Param('id') id: string, @Body() updateUserDto: UpdateUserDto) {
return this.usersService.update(+id, updateUserDto);
return this.usersService.updateUser({where: {"id": +id}, data: updateUserDto});
}
@Delete(':id')
remove(@Param('id') id: string) {
return this.usersService.remove(+id);
return this.usersService.deleteUser({"id": +id});
}
}

View File

@@ -35,6 +35,7 @@ export class UsersService {
}
async createUser(data: Prisma.UserCreateInput): Promise<User> {
console.log(data)
return this.prisma.user.create({
data,
});

View File

@@ -3,6 +3,8 @@ services:
build:
context: ./back
dockerfile: Dockerfile.dev
args:
DATABASE_URL: ${DATABASE_URL}
privileged: true
ports:
- "8080:3000"
@@ -12,6 +14,9 @@ services:
- "db"
env_file:
- .env
environment:
- DATABASE_URL=${DATABASE_URL}
db:
container_name: db
image: postgres:alpine3.14