This commit is contained in:
2026-03-07 10:20:37 +03:30
parent f437485855
commit af8367340e
10 changed files with 340 additions and 0 deletions
+56
View File
@@ -0,0 +1,56 @@
import {
Body, Controller, Delete, Get, Param, Post,
Query, UseInterceptors
} from "@nestjs/common";
import { ApiHeader, ApiOperation } from "@nestjs/swagger";
import { BarnameService } from "./barname.service";
import { BillListQueryDto } from "./dto/bill-list-query.dto";
import { CreateBarnameDto } from "./dto/create-barname.dto";
import { AuthGuards } from "../../common/decorators/auth-guard.decorator";
import { BusinessDec } from "../../common/decorators/business.decorator";
import { ParamDto } from "../../common/DTO/param.dto";
import { BusinessInterceptor } from "../../core/interceptors/business.interceptor";
import { Business } from "../businesses/entities/business.entity";
import { UserDec } from "../../common/decorators/user.decorator";
@Controller("barname")
@UseInterceptors(BusinessInterceptor)
@AuthGuards()
export class BarnameController {
constructor(private readonly billsService: BarnameService) { }
@ApiOperation({ summary: "Create water bill" })
@Post("water")
@ApiHeader({ name: "x-business-id" })
createWaterBill(@Body() dto: CreateBarnameDto, @BusinessDec() business: Business, @UserDec("id") userId: string,) {
return this.billsService.createBarname(dto, business, userId);
}
@ApiOperation({ summary: "Create" })
@ApiHeader({ name: "x-business-id" })
@Post("charge")
create(@Body() dto: CreateBarnameDto, @BusinessDec() business: Business, @UserDec("id") userId: string) {
return this.billsService.createBarname(dto, business,userId);
}
@ApiOperation({ summary: "Get all bills with filters and pagination" })
@Get()
@ApiHeader({ name: "x-business-id" })
findAll(@Query() queryDto: BillListQueryDto, @BusinessDec("id") businessId: string) {
return this.billsService.findAll(queryDto, businessId);
}
@ApiOperation({ summary: "Get a bill by id" })
@Get(":id")
findOne(@Param() paramDto: ParamDto, @BusinessDec("id") businessId: string) {
return this.billsService.findOne(paramDto.id, businessId);
}
@ApiOperation({ summary: "Remove a bill" })
@Delete(":id")
remove(@Param() paramDto: ParamDto, @BusinessDec("id") businessId: string) {
return this.billsService.remove(paramDto.id, businessId);
}
}