add column numero de vivienda
This commit is contained in:
		
							parent
							
								
									9cac88f333
								
							
						
					
					
						commit
						18ab1f4700
					
				| 
						 | 
				
			
			@ -7,7 +7,7 @@ import { Tenant, TenantSchema } from './tenant.schema';
 | 
			
		|||
@Schema()
 | 
			
		||||
export class House extends Document {
 | 
			
		||||
  @Prop({ default: ' ' })
 | 
			
		||||
  number: string;
 | 
			
		||||
  number_house: string;
 | 
			
		||||
 | 
			
		||||
  @Prop({ default: 'desocupada' })
 | 
			
		||||
  state: string;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -36,6 +36,9 @@ export class User {
 | 
			
		|||
 | 
			
		||||
  @Prop()
 | 
			
		||||
  community_id?: string;
 | 
			
		||||
 | 
			
		||||
  @Prop()
 | 
			
		||||
  number_house?: string;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export const UserSchema = SchemaFactory.createForClass(User);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -127,13 +127,28 @@ export class UsersService {
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
  //find inquilinos
 | 
			
		||||
  async findTenantsCommunity(pcommunity_id: string): Promise<User[]> {
 | 
			
		||||
    let houses = await this.findCommunityHouses(pcommunity_id);
 | 
			
		||||
  async findTenantsCommunity(pcommunity_id: string) {
 | 
			
		||||
    //let tenants = await this.findCommunityTenants(pcommunity_id);
 | 
			
		||||
 | 
			
		||||
    return this.userModel.find({ community_id: pcommunity_id, user_type: 4 }).exec()
 | 
			
		||||
    .then();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    return await this.userModel.find({ community_id: pcommunity_id, user_type: 4 })
 | 
			
		||||
      .then(async (users) => {
 | 
			
		||||
        if (users) {
 | 
			
		||||
          await Promise.all(
 | 
			
		||||
            users.map(async (u) => {
 | 
			
		||||
              //buscar al usuario con el id de la comunidad anexado
 | 
			
		||||
              let number_house = await this.findNumHouseTenant(pcommunity_id, u['_id']);
 | 
			
		||||
              u['number_house'] = number_house;
 | 
			
		||||
              return u;
 | 
			
		||||
            }),
 | 
			
		||||
          )
 | 
			
		||||
        }
 | 
			
		||||
        return users;
 | 
			
		||||
      })
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  async testSendMail(user: UserDocument) {
 | 
			
		||||
    let passwordEncriptada = Md5.init(user.password);
 | 
			
		||||
    user.password = passwordEncriptada;
 | 
			
		||||
| 
						 | 
				
			
			@ -179,7 +194,7 @@ export class UsersService {
 | 
			
		|||
    });
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  async findCommunityHouses(community_id: string) {
 | 
			
		||||
  async findNumHouseTenant(community_id: string, tenant_id: string) {
 | 
			
		||||
    const pattern = { cmd: 'findOneCommunity' }
 | 
			
		||||
    const payload = { _id: community_id }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -190,8 +205,15 @@ export class UsersService {
 | 
			
		|||
      )
 | 
			
		||||
    const finalValue = await lastValueFrom(callback);
 | 
			
		||||
    const response = finalValue['response'];
 | 
			
		||||
    console.log(response['houses']);
 | 
			
		||||
    return response['houses'];
 | 
			
		||||
    const houses = response['houses'];
 | 
			
		||||
    let num_house = "";
 | 
			
		||||
    await houses.forEach(async house => {
 | 
			
		||||
        if (tenant_id == house.tenants.tenant_id) {
 | 
			
		||||
          num_house = house.number_house;
 | 
			
		||||
        }
 | 
			
		||||
    })
 | 
			
		||||
    return num_house;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -31,6 +31,7 @@ const Inquilinos = () => {
 | 
			
		|||
    password: '',
 | 
			
		||||
    community_id: '',
 | 
			
		||||
    community_name: '',
 | 
			
		||||
    number_house: 'Sin número de vivienda',
 | 
			
		||||
    user_type: '4',
 | 
			
		||||
    date_entry: new Date(),
 | 
			
		||||
    status: '1'
 | 
			
		||||
| 
						 | 
				
			
			@ -55,7 +56,15 @@ const Inquilinos = () => {
 | 
			
		|||
    await fetch(`http://localhost:4000/user/findTenants/${cookies.community_id}`, { method: 'GET' })
 | 
			
		||||
      .then((response) => response.json())
 | 
			
		||||
      .then(data => data.message)
 | 
			
		||||
      .then(data => setTenants(data));
 | 
			
		||||
      .then(data => {
 | 
			
		||||
 | 
			
		||||
        data.map((item) => {
 | 
			
		||||
          if(item.number_house ==""){
 | 
			
		||||
            item.number_house = "Sin vivienda asignada";
 | 
			
		||||
          }
 | 
			
		||||
        })
 | 
			
		||||
        setTenants(data)
 | 
			
		||||
      });
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -279,11 +288,7 @@ const Inquilinos = () => {
 | 
			
		|||
    </>
 | 
			
		||||
  )
 | 
			
		||||
 | 
			
		||||
  const headerCommuntiy = (
 | 
			
		||||
    <>
 | 
			
		||||
      <p> <FontAwesomeIcon icon={faHome} style={{ color: "#D7A86E" }} />   Comunidad</p>
 | 
			
		||||
    </>
 | 
			
		||||
  )
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  const headerNumberHouse = (
 | 
			
		||||
    <>
 | 
			
		||||
| 
						 | 
				
			
			@ -315,7 +320,7 @@ const Inquilinos = () => {
 | 
			
		|||
            </Column>
 | 
			
		||||
            <Column field="email" sortable header={headerEmail} style={{ flexGrow: 1, flexBasis: '160px', minWidth: '160px', wordBreak: 'break-word' }}></Column>
 | 
			
		||||
            <Column field="phone" header={headerPhone} style={{ flexGrow: 1, flexBasis: '160px', minWidth: '160px', wordBreak: 'break-word' }}></Column>
 | 
			
		||||
            <Column field="community_name" header={headerCommuntiy} style={{ flexGrow: 1, flexBasis: '160px', minWidth: '160px', wordBreak: 'break-word' }}></Column>
 | 
			
		||||
            <Column field="number_house" header={headerNumberHouse} style={{ flexGrow: 1, flexBasis: '160px', minWidth: '160px', wordBreak: 'break-word' }}></Column>
 | 
			
		||||
            <Column header={headerOptions} style={{ flexGrow: 1, flexBasis: '130px', minWidth: '130px' }} body={actionsTenant}></Column>
 | 
			
		||||
          </DataTable>
 | 
			
		||||
          <Dialog visible={deleteTenantDialog} style={{ width: '450px' }} header="Confirmar" modal footer={deleteTenantDialogFooter} onHide={hideDeleteTenantDialog}>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue