feat: complete admin panel and backend admin api migration

This commit is contained in:
s.esmaeili
2026-09-13 21:02:25 +03:30
parent 03119cd655
commit 267fc7b7d1
239 changed files with 25431 additions and 935 deletions
@@ -0,0 +1,22 @@
import { Controller, HttpCode, Post } from '@nestjs/common';
import { PrismaService } from '../../prisma/prisma.service';
/**
* Legacy `POST cities/list` — the city lookup the table filters use.
* Returns `{ rows }`, matching what the users store's setCities() reads.
*
* Deliberately NOT permission-gated: legacy called this from table models at
* module load, before any rid check, and it exposes nothing sensitive.
*/
@Controller('admin/cities')
export class AdminCitiesController {
constructor(private readonly prisma: PrismaService) {}
@Post('list')
@HttpCode(200)
async list() {
const cities = await this.prisma.city.findMany({ orderBy: { name: 'asc' } });
// legacy shape: { id, title }
return { rows: cities.map((c) => ({ id: c.id, title: c.name, province: c.province })) };
}
}
@@ -0,0 +1,9 @@
import { Module } from '@nestjs/common';
import { PrismaModule } from '../../prisma/prisma.module';
import { AdminCitiesController } from './admin-cities.controller';
@Module({
imports: [PrismaModule],
controllers: [AdminCitiesController],
})
export class AdminCitiesModule {}