katoikia-app/api-gateway/src/app.controller.ts

375 lines
9.0 KiB
TypeScript

import { Controller, Get, Post, Body, Param, Delete } from '@nestjs/common';
import { AppService } from './app.service';
@Controller()
export class AppController {
constructor(private readonly appService: AppService) {}
// #==== API Users
@Post('user/createAdminSystem')
createAdminSystem(
@Body('dni') dni: string,
@Body('name') name: string,
@Body('last_name') last_name: string,
@Body('email') email: string,
@Body('phone') phone: number,
@Body('password') password: string,
@Body('user_type') user_type: string,
@Body('status') status: string,
@Body('date_entry') date_entry: Date,
) {
return this.appService.createAdminSystem(
dni,
name,
last_name,
email,
phone,
password,
user_type,
status,
date_entry,
);
}
@Post('user/createGuard')
createGuard(
//Nombre, Apellidos, Correo electrónico, Cédula, Teléfono, Contraseña
@Body('dni') dni: string,
@Body('name') name: string,
@Body('last_name') last_name: string,
@Body('email') email: string,
@Body('phone') phone: number,
@Body('password') password: string,
@Body('user_type') user_type: string,
@Body('status') status: string,
@Body('date_entry') date_entry: Date,
@Body('community_id') community_id: string,
) {
return this.appService.createGuard(
dni,
name,
last_name,
email,
phone,
password,
user_type,
status,
date_entry,
community_id,
);
}
@Post('user/createUser')
createUser(
@Body('dni') dni: string,
@Body('name') name: string,
@Body('last_name') last_name: string,
@Body('email') email: string,
@Body('phone') phone: number,
@Body('password') password: string,
@Body('user_type') user_type: string,
@Body('status') status: string,
@Body('date_entry') date_entry: Date,
@Body('community_id') community_id: string,
) {
return this.appService.createUser(
dni,
name,
last_name,
email,
phone,
password,
user_type,
status,
date_entry,
community_id,
);
}
@Get('user/allUsers')
allUsers() {
return this.appService.allUsers();
}
@Post('user/loginUser')
inicioSesion(
@Body('email') pEmail: string,
@Body('password') pPassword: string,
) {
return this.appService.inicioSesion(pEmail, pPassword);
}
@Get('user/findAdminSistema')
allUsersAdminSistema() {
return this.appService.allUsersAdminSistema();
}
@Get('user/findAdminComunidad')
allUsersAdminComunidad() {
return this.appService.allUsersAdminComunidad();
}
@Get('user/findGuards/:community')
findGuardsCommunity(@Param('community_id') community_id: string) {
return this.appService.findGuardsCommunity(community_id);
}
@Get('user/find/:dni')
findUser(@Param('dni') paramUserDNI: string) {
return this.appService.findUser(paramUserDNI);
}
@Delete('user/deleteAdminSystem/:id')
deleteAdminSystem(@Param('id') id: string) {
return this.appService.deleteAdminSystem(id);
}
// #==== API Communities
@Post('community/createCommunity')
createCommunity(
@Body('name') name: string,
@Body('province') province: string,
@Body('canton') canton: string,
@Body('district') district: string,
@Body('num_houses') num_houses: number,
@Body('phone') phone: string,
@Body('status') status: string,
@Body('date_entry') date_entry: Date,
@Body('houses') houses: [],
) {
return this.appService.createCommunity(
name,
province,
canton,
district,
num_houses,
phone,
status,
date_entry,
houses,
);
}
@Get('community/allCommunities')
allcommunities() {
return this.appService.allCommunities();
}
@Get('community/findCommunity/:id')
findCommunity(@Param('id') paramCommunityId: string) {
return this.appService.findCommunity(paramCommunityId);
}
@Get('community/findCommunityName/:id')
findCommunityName(@Param('id') paramCommunityId: string) {
return this.appService.findCommunityName(paramCommunityId);
}
@Post('community/findCommunityAdmin')
findCommunityAdmin(@Body('community_id') community_id: string) {
return this.appService.findCommunityAdmin(community_id);
}
// #==== API Common Areas
@Post('commonArea/createCommonArea')
createCommonArea(
@Body('name') name: string,
@Body('hourMin') hourMin: string,
@Body('hourMax') hourMax: string,
@Body('bookable') bookable: number,
@Body('community_id') community_id: string,
) {
return this.appService.createCommonArea(
name,
hourMin,
hourMax,
bookable,
community_id,
);
}
@Get('commonArea/allCommonAreas')
allCommonAreas() {
return this.appService.allCommonAreas();
}
@Get('commonArea/findCommonArea/:id')
findCommonArea(@Param('id') paramCommonAreaId: string) {
return this.appService.findCommonArea(paramCommonAreaId);
}
// #==== API GUEST
//#API userService - create user
@Post('guest/createGuest')
createGuest(
@Body('name') name: string,
@Body('last_name') last_name: string,
@Body('dni') dni: string,
@Body('number_plate') number_plate: string,
@Body('phone') phone: number,
@Body('status') status: string,
@Body('date_entry') date_entry: Date,
) {
return this.appService.createGuest(
name,
last_name,
dni,
number_plate,
phone,
status,
date_entry,
);
}
@Get('guest/allGuests')
allGuests() {
return this.appService.allGuests();
}
@Get('guest/find/:dni')
findGuest(@Param('dni') paramGuestDNI: string) {
return this.appService.findGuest(paramGuestDNI);
}
// #==== API Payment
@Post('payment/createPayment')
createPayment(
@Body('date_payment') date_payment: Date,
@Body('mount') mount: number,
@Body('description') description: string,
@Body('period') period: string,
@Body('status') status: string,
@Body('user_id') user_id: string,
@Body('communty_id') communty_id: string,
) {
return this.appService.createPayment(
date_payment,
mount,
description,
period,
status,
user_id,
communty_id,
);
}
@Get('payment/allPayments')
allPayments() {
return this.appService.allPayments();
}
@Get('payment/find/:dni')
findPayment(@Param('dni') paramPaymentDNI: string) {
return this.appService.findPayment(paramPaymentDNI);
}
// #==== API Reservation
@Post('reservation/createReservation')
createReservation(
@Body('start_time') start_time: string,
@Body('finish_time') finish_time: string,
@Body('status') status: string,
@Body('date_entry') date_entry: Date,
@Body('user_id') user_id: string,
@Body('common_area_id') common_area_id: string,
) {
return this.appService.createReservation(
start_time,
finish_time,
status,
date_entry,
user_id,
common_area_id,
);
}
@Get('reservation/allReservations')
allReservations() {
return this.appService.allReservations();
}
@Get('reservation/find/:id')
findReservation(@Param('id') paramReservation: string) {
return this.appService.findReservation(paramReservation);
}
// #==== API Post
@Post('post/createPost')
createPost(
@Body('post') post: string,
@Body('date_entry') date_entry: Date,
@Body('user_id') user_id: string,
@Body('community_id') community_id: string,
) {
return this.appService.createPost(post, date_entry, user_id, community_id);
}
@Get('post/allPosts')
allPosts() {
return this.appService.allPosts();
}
@Get('post/find/:id')
findPost(@Param('id') paramPost: string) {
return this.appService.findPost(paramPost);
}
// #==== API Comment
@Post('post/createComment')
createComment(
@Body('comment') comment: string,
@Body('date_entry') date_entry: Date,
@Body('user_id') user_id: string,
@Body('post_id') post_id: string,
) {
return this.appService.createComment(comment, date_entry, user_id, post_id);
}
@Get('post/allComments')
allComments() {
return this.appService.allComments();
}
@Get('post/findComment/:id')
findComment(@Param('id') paramComment: string) {
return this.appService.findComment(paramComment);
}
// #==== API Report
@Post('report/createReport')
createReport(
@Body('action') action: string,
@Body('description') description: string,
@Body('date_entry') date_entry: Date,
@Body('user_id') user_id: string,
) {
return this.appService.createReport(
action,
description,
date_entry,
user_id,
);
}
@Get('report/allReports')
allReports() {
return this.appService.allReports();
}
@Get('report/find/:id')
findReport(@Param('id') paramReport: string) {
return this.appService.findReport(paramReport);
}
@Post('email/sendMail')
senMail(@Body('email') email: string) {
return this.appService.sendMail(email);
}
@Post('email/html')
html(@Body('email') email: string, @Body('name') name: string) {
return this.appService.html(email, name);
}
}