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

352 lines
8.8 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);
}
}