transform core api codes into this project, update modules as admin/pos context modules

This commit is contained in:
2026-03-07 11:25:11 +03:30
parent b949500482
commit 8c5f1d4d49
167 changed files with 26975 additions and 1837 deletions
@@ -0,0 +1,34 @@
import { Body, Controller, Delete, Get, Param, Post, Put } from '@nestjs/common'
import { DeviceBrandsService } from './device-brands.service'
import { CreateDeviceBrandDto } from './dto/create-device-brand.dto'
import { UpdateDeviceBrandDto } from './dto/update-device-brand.dto'
@Controller('admin/device_brands')
export class DeviceBrandsController {
constructor(private readonly deviceBrandsService: DeviceBrandsService) {}
@Get()
async findAll() {
return this.deviceBrandsService.findAll()
}
@Get(':id')
async findOne(@Param('id') id: string) {
return this.deviceBrandsService.findOne(id)
}
@Post()
async create(@Body() data: CreateDeviceBrandDto) {
return this.deviceBrandsService.create(data)
}
@Put(':id')
async update(@Param('id') id: string, @Body() data: UpdateDeviceBrandDto) {
return this.deviceBrandsService.update(id, data)
}
@Delete(':id')
async delete(@Param('id') id: string) {
return this.deviceBrandsService.delete(id)
}
}
@@ -0,0 +1,11 @@
import { PrismaModule } from '@/prisma/prisma.module'
import { Module } from '@nestjs/common'
import { DeviceBrandsController } from './device-brands.controller'
import { DeviceBrandsService } from './device-brands.service'
@Module({
imports: [PrismaModule],
controllers: [DeviceBrandsController],
providers: [DeviceBrandsService],
})
export class AdminDeviceBrandsModule {}
@@ -0,0 +1,35 @@
import { PrismaService } from '@/prisma/prisma.service'
import { Injectable } from '@nestjs/common'
import { ResponseMapper } from 'common/response/response-mapper'
@Injectable()
export class DeviceBrandsService {
constructor(private readonly prisma: PrismaService) {}
async findAll() {
const brands = await this.prisma.deviceBrand.findMany()
return ResponseMapper.list(brands)
}
async findOne(id: string) {
const brand = await this.prisma.deviceBrand.findUnique({
where: { id },
})
return ResponseMapper.single(brand)
}
async create(data: any) {
const device = await this.prisma.deviceBrand.create({ data })
return ResponseMapper.create(device)
}
async update(id: string, data: any) {
const device = await this.prisma.deviceBrand.update({ where: { id }, data })
return ResponseMapper.update(device)
}
async delete(id: string) {
await this.prisma.deviceBrand.delete({ where: { id } })
return ResponseMapper.delete()
}
}
@@ -0,0 +1,6 @@
import { IsString } from 'class-validator'
export class CreateDeviceBrandDto {
@IsString()
name: string
}
@@ -0,0 +1,4 @@
import { PartialType } from '@nestjs/swagger'
import { CreateDeviceBrandDto } from './create-device-brand.dto'
export class UpdateDeviceBrandDto extends PartialType(CreateDeviceBrandDto) {}