From 9cac88f333d7c9e0e5b4baa469e37e7516aefa41 Mon Sep 17 00:00:00 2001 From: Mariela Date: Sun, 31 Jul 2022 18:34:26 -0600 Subject: [PATCH] function para obtener los numeros de casas de los inquilinos --- .../src/schemas/house.schema.ts | 2 +- servicio-usuarios/src/users/users.service.ts | 57 ++++++++++++------- 2 files changed, 39 insertions(+), 20 deletions(-) diff --git a/servicio-comunidad-viviendas/src/schemas/house.schema.ts b/servicio-comunidad-viviendas/src/schemas/house.schema.ts index d85c31c6..75aeda0f 100644 --- a/servicio-comunidad-viviendas/src/schemas/house.schema.ts +++ b/servicio-comunidad-viviendas/src/schemas/house.schema.ts @@ -7,7 +7,7 @@ import { Tenant, TenantSchema } from './tenant.schema'; @Schema() export class House extends Document { @Prop({ default: ' ' }) - number_house: string; + number: string; @Prop({ default: 'desocupada' }) state: string; diff --git a/servicio-usuarios/src/users/users.service.ts b/servicio-usuarios/src/users/users.service.ts index 2a33b593..6ff98cf6 100644 --- a/servicio-usuarios/src/users/users.service.ts +++ b/servicio-usuarios/src/users/users.service.ts @@ -25,24 +25,26 @@ export class UsersService { async createAdminCommunity(user: UserDocument) { - let password = user.password; - let passwordEncriptada = Md5.init(user.password); - user.password = passwordEncriptada; + let password = user.password; + let passwordEncriptada = Md5.init(user.password); + user.password = passwordEncriptada; - this.userModel.create(user) - + this.userModel.create(user) - let community = await this.findCommunity(user.community_id); - user.community_id = community['name']; - - const pattern = { cmd: 'emailCreateUserAdminCommunity' }; - const payload = { email: user['email'], password: password, name: user['name'], - date_entry: user['date_entry'], community_name: community['name'] }; - return this.clientNotificationtApp - .send(pattern, payload) - .pipe( - map((message: string) => ({ message })), - ); + + let community = await this.findCommunity(user.community_id); + user.community_id = community['name']; + + const pattern = { cmd: 'emailCreateUserAdminCommunity' }; + const payload = { + email: user['email'], password: password, name: user['name'], + date_entry: user['date_entry'], community_name: community['name'] + }; + return this.clientNotificationtApp + .send(pattern, payload) + .pipe( + map((message: string) => ({ message })), + ); } async findCommunity(community_id: string) { @@ -117,16 +119,19 @@ export class UsersService { return this.userModel.find({ user_type: 2 }).exec(); } - + //find inquilinos async findTenants(): Promise { return this.userModel.find({ user_type: 3 }).exec(); } - + //find inquilinos async findTenantsCommunity(pcommunity_id: string): Promise { - return this.userModel.find({ community_id: pcommunity_id, user_type: 4 }).exec(); + let houses = await this.findCommunityHouses(pcommunity_id); + + return this.userModel.find({ community_id: pcommunity_id, user_type: 4 }).exec() + .then(); } async testSendMail(user: UserDocument) { @@ -174,5 +179,19 @@ export class UsersService { }); } + async findCommunityHouses(community_id: string) { + const pattern = { cmd: 'findOneCommunity' } + const payload = { _id: community_id } + + let callback = await this.clientCommunityApp + .send(pattern, payload) + .pipe( + map((response: string) => ({ response })) + ) + const finalValue = await lastValueFrom(callback); + const response = finalValue['response']; + console.log(response['houses']); + return response['houses']; + } }