95 lines
4.8 KiB
TypeScript
95 lines
4.8 KiB
TypeScript
// import { Body, Controller, Get, Param, Put, } from "@nestjs/common";
|
|
// import { Roles as RoleEnum } from '.prisma/client';
|
|
// import { ApiBearerAuth, ApiTags } from "@nestjs/swagger";
|
|
// import { RolesAllowed } from "src/common/decorators/roles.decorators";
|
|
// import { ExpensesCommandService } from "../services/expenses-command.service";
|
|
// import { UpsertExpenseDto } from "../dtos/upsert-expense.dto";
|
|
// import { UpsertExpenseResult } from "../types and interfaces/expenses.types.interfaces";
|
|
// import { DayExpensesDto } from "src/modules/timesheets/~misc_deprecated-files/timesheet-period.dto";
|
|
// import { ExpensesQueryService } from "../services/expenses-query.service";
|
|
|
|
// @ApiTags('Expenses')
|
|
// @ApiBearerAuth('access-token')
|
|
// // @UseGuards()
|
|
// @Controller('Expenses')
|
|
// export class ExpensesController {
|
|
// constructor(
|
|
// private readonly query: ExpensesQueryService,
|
|
// private readonly command: ExpensesCommandService,
|
|
// ) {}
|
|
|
|
// @Put('upsert/:email/:date')
|
|
// async upsert_by_date(
|
|
// @Param('email') email: string,
|
|
// @Param('date') date: string,
|
|
// @Body() dto: UpsertExpenseDto,
|
|
// ): Promise<UpsertExpenseResult> {
|
|
// return this.command.upsertExpensesByDate(email, date, dto);
|
|
// }
|
|
|
|
// @Get('list/:email/:year/:period_no')
|
|
// async findExpenseListByPayPeriodAndEmail(
|
|
// @Param('email') email:string,
|
|
// @Param('year') year: number,
|
|
// @Param('period_no') period_no: number,
|
|
// ): Promise<DayExpensesDto> {
|
|
// return this.query.findExpenseListByPayPeriodAndEmail(email, year, period_no);
|
|
// }
|
|
|
|
// //_____________________________________________________________________________________________
|
|
// // Deprecated or unused methods
|
|
// //_____________________________________________________________________________________________
|
|
|
|
// // @Post()
|
|
// // //@RolesAllowed(RoleEnum.ACCOUNTING, RoleEnum.ADMIN, RoleEnum.EMPLOYEE, RoleEnum.HR, RoleEnum.SUPERVISOR)
|
|
// // @ApiOperation({ summary: 'Create expense' })
|
|
// // @ApiResponse({ status: 201, description: 'Expense created',type: CreateExpenseDto })
|
|
// // @ApiResponse({ status: 400, description: 'Incomplete task or invalid data' })
|
|
// // create(@Body() dto: CreateExpenseDto): Promise<Expenses> {
|
|
// // return this.query.create(dto);
|
|
// // }
|
|
|
|
// // @Get()
|
|
// // //@RolesAllowed(RoleEnum.ACCOUNTING, RoleEnum.ADMIN, RoleEnum.EMPLOYEE, RoleEnum.HR, RoleEnum.SUPERVISOR)
|
|
// // @ApiOperation({ summary: 'Find all expenses' })
|
|
// // @ApiResponse({ status: 201, description: 'List of expenses found',type: CreateExpenseDto, isArray: true })
|
|
// // @ApiResponse({ status: 400, description: 'List of expenses not found' })
|
|
// // @UsePipes(new ValidationPipe({ transform: true, whitelist: true }))
|
|
// // findAll(@Query() filters: SearchExpensesDto): Promise<Expenses[]> {
|
|
// // return this.query.findAll(filters);
|
|
// // }
|
|
|
|
// // @Get(':id')
|
|
// // //@RolesAllowed(RoleEnum.ACCOUNTING, RoleEnum.ADMIN, RoleEnum.EMPLOYEE, RoleEnum.HR, RoleEnum.SUPERVISOR)
|
|
// // @ApiOperation({ summary: 'Find expense' })
|
|
// // @ApiResponse({ status: 201, description: 'Expense found',type: CreateExpenseDto })
|
|
// // @ApiResponse({ status: 400, description: 'Expense not found' })
|
|
// // findOne(@Param('id', ParseIntPipe) id: number): Promise <Expenses> {
|
|
// // return this.query.findOne(id);
|
|
// // }
|
|
|
|
// // @Patch(':id')
|
|
// // //@RolesAllowed(RoleEnum.ACCOUNTING, RoleEnum.ADMIN, RoleEnum.EMPLOYEE, RoleEnum.HR, RoleEnum.SUPERVISOR)
|
|
// // @ApiOperation({ summary: 'Expense shift' })
|
|
// // @ApiResponse({ status: 201, description: 'Expense updated',type: CreateExpenseDto })
|
|
// // @ApiResponse({ status: 400, description: 'Expense not found' })
|
|
// // update(@Param('id', ParseIntPipe) id: number, @Body() dto: UpdateExpenseDto) {
|
|
// // return this.query.update(id,dto);
|
|
// // }
|
|
|
|
// // @Delete(':id')
|
|
// // //@RolesAllowed(RoleEnum.ACCOUNTING, RoleEnum.ADMIN, RoleEnum.EMPLOYEE, RoleEnum.HR, RoleEnum.SUPERVISOR)
|
|
// // @ApiOperation({ summary: 'Delete expense' })
|
|
// // @ApiResponse({ status: 201, description: 'Expense deleted',type: CreateExpenseDto })
|
|
// // @ApiResponse({ status: 400, description: 'Expense not found' })
|
|
// // remove(@Param('id', ParseIntPipe) id: number): Promise<Expenses> {
|
|
// // return this.query.remove(id);
|
|
// // }
|
|
|
|
// // @Patch('approval/:id')
|
|
// // //@RolesAllowed(RoleEnum.ACCOUNTING, RoleEnum.ADMIN, RoleEnum.HR, RoleEnum.SUPERVISOR)
|
|
// // async approve(@Param('id', ParseIntPipe) id: number, @Body('is_approved', ParseBoolPipe) isApproved: boolean) {
|
|
// // return this.command.updateApproval(id, isApproved);
|
|
// // }
|
|
|
|
// }
|