add foreign key service methods

This commit is contained in:
Wolfgang Hottgenroth 2021-09-08 12:39:23 +02:00
parent bb2aaa1e84
commit 01bd6877c6
Signed by: wn
GPG Key ID: 6C1E5E531E0D5D7F
2 changed files with 100 additions and 0 deletions

View File

@ -60,6 +60,8 @@ export class AccountService {
return this.http.put<Account>(`${serviceBaseUrl}/v1/accounts/${id}`, item).toPromise() return this.http.put<Account>(`${serviceBaseUrl}/v1/accounts/${id}`, item).toPromise()
} }
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -89,6 +91,13 @@ export class TenantService {
return this.http.put<Tenant>(`${serviceBaseUrl}/v1/tenants/${id}`, item).toPromise() return this.http.put<Tenant>(`${serviceBaseUrl}/v1/tenants/${id}`, item).toPromise()
} }
async getTenantsByAccount(id: number): Promise<Tenant[]> {
this.messageService.add(`TenantService: get data by Account ${id}`);
return this.http.get<Tenant[]>(`${serviceBaseUrl}/v1/tenants/account/${id}`).toPromise()
}
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -118,6 +127,8 @@ export class PremiseService {
return this.http.put<Premise>(`${serviceBaseUrl}/v1/premises/${id}`, item).toPromise() return this.http.put<Premise>(`${serviceBaseUrl}/v1/premises/${id}`, item).toPromise()
} }
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -147,6 +158,13 @@ export class FlatService {
return this.http.put<Flat>(`${serviceBaseUrl}/v1/flats/${id}`, item).toPromise() return this.http.put<Flat>(`${serviceBaseUrl}/v1/flats/${id}`, item).toPromise()
} }
async getFlatsByPremise(id: number): Promise<Flat[]> {
this.messageService.add(`FlatService: get data by Premise ${id}`);
return this.http.get<Flat[]>(`${serviceBaseUrl}/v1/flats/premise/${id}`).toPromise()
}
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -176,6 +194,8 @@ export class OverheadAdvanceService {
return this.http.put<OverheadAdvance>(`${serviceBaseUrl}/v1/overhead_advances/${id}`, item).toPromise() return this.http.put<OverheadAdvance>(`${serviceBaseUrl}/v1/overhead_advances/${id}`, item).toPromise()
} }
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -199,6 +219,18 @@ export class OverheadAdvanceFlatMappingService {
} }
async getOverheadAdvanceFlatMappingsByOverheadAdvance(id: number): Promise<OverheadAdvanceFlatMapping[]> {
this.messageService.add(`OverheadAdvanceFlatMappingService: get data by OverheadAdvance ${id}`);
return this.http.get<OverheadAdvanceFlatMapping[]>(`${serviceBaseUrl}/v1/overhead_advance_flat_mappings/overhead_advance/${id}`).toPromise()
}
async getOverheadAdvanceFlatMappingsByFlat(id: number): Promise<OverheadAdvanceFlatMapping[]> {
this.messageService.add(`OverheadAdvanceFlatMappingService: get data by Flat ${id}`);
return this.http.get<OverheadAdvanceFlatMapping[]>(`${serviceBaseUrl}/v1/overhead_advance_flat_mappings/flat/${id}`).toPromise()
}
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -228,6 +260,13 @@ export class ParkingService {
return this.http.put<Parking>(`${serviceBaseUrl}/v1/parkings/${id}`, item).toPromise() return this.http.put<Parking>(`${serviceBaseUrl}/v1/parkings/${id}`, item).toPromise()
} }
async getParkingsByPremise(id: number): Promise<Parking[]> {
this.messageService.add(`ParkingService: get data by Premise ${id}`);
return this.http.get<Parking[]>(`${serviceBaseUrl}/v1/parkings/premise/${id}`).toPromise()
}
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -257,6 +296,13 @@ export class CommercialPremiseService {
return this.http.put<CommercialPremise>(`${serviceBaseUrl}/v1/commercial_premises/${id}`, item).toPromise() return this.http.put<CommercialPremise>(`${serviceBaseUrl}/v1/commercial_premises/${id}`, item).toPromise()
} }
async getCommercialPremisesByPremise(id: number): Promise<CommercialPremise[]> {
this.messageService.add(`CommercialPremiseService: get data by Premise ${id}`);
return this.http.get<CommercialPremise[]>(`${serviceBaseUrl}/v1/commercial_premises/premise/${id}`).toPromise()
}
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -286,6 +332,28 @@ export class TenancyService {
return this.http.put<Tenancy>(`${serviceBaseUrl}/v1/tenancys/${id}`, item).toPromise() return this.http.put<Tenancy>(`${serviceBaseUrl}/v1/tenancys/${id}`, item).toPromise()
} }
async getTenancysByTenant(id: number): Promise<Tenancy[]> {
this.messageService.add(`TenancyService: get data by Tenant ${id}`);
return this.http.get<Tenancy[]>(`${serviceBaseUrl}/v1/tenancys/tenant/${id}`).toPromise()
}
async getTenancysByFlat(id: number): Promise<Tenancy[]> {
this.messageService.add(`TenancyService: get data by Flat ${id}`);
return this.http.get<Tenancy[]>(`${serviceBaseUrl}/v1/tenancys/flat/${id}`).toPromise()
}
async getTenancysByParking(id: number): Promise<Tenancy[]> {
this.messageService.add(`TenancyService: get data by Parking ${id}`);
return this.http.get<Tenancy[]>(`${serviceBaseUrl}/v1/tenancys/parking/${id}`).toPromise()
}
async getTenancysByCommercialPremise(id: number): Promise<Tenancy[]> {
this.messageService.add(`TenancyService: get data by CommercialPremise ${id}`);
return this.http.get<Tenancy[]>(`${serviceBaseUrl}/v1/tenancys/commercial_premise/${id}`).toPromise()
}
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -315,6 +383,8 @@ export class FeeService {
return this.http.put<Fee>(`${serviceBaseUrl}/v1/fees/${id}`, item).toPromise() return this.http.put<Fee>(`${serviceBaseUrl}/v1/fees/${id}`, item).toPromise()
} }
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -338,6 +408,18 @@ export class TenancyFeeMappingService {
} }
async getTenancyFeeMappingsByTenancy(id: number): Promise<TenancyFeeMapping[]> {
this.messageService.add(`TenancyFeeMappingService: get data by Tenancy ${id}`);
return this.http.get<TenancyFeeMapping[]>(`${serviceBaseUrl}/v1/tenancy_fee_mappings/tenancy/${id}`).toPromise()
}
async getTenancyFeeMappingsByFee(id: number): Promise<TenancyFeeMapping[]> {
this.messageService.add(`TenancyFeeMappingService: get data by Fee ${id}`);
return this.http.get<TenancyFeeMapping[]>(`${serviceBaseUrl}/v1/tenancy_fee_mappings/fee/${id}`).toPromise()
}
} }
@Injectable({ providedIn: 'root' }) @Injectable({ providedIn: 'root' })
@ -361,6 +443,13 @@ export class AccountEntryService {
} }
async getAccountEntrysByAccount(id: number): Promise<AccountEntry[]> {
this.messageService.add(`AccountEntryService: get data by Account ${id}`);
return this.http.get<AccountEntry[]>(`${serviceBaseUrl}/v1/account_entrys/account/${id}`).toPromise()
}
} }

View File

@ -50,6 +50,17 @@ export class ${JsNameConverter($table.name)}Service {
} }
#end if #end if
#for $column in $table.columns
#if (('foreignkey' in $column) and $column.foreignkey)
async get${JsNameConverter($table.name)}sBy${JsNameConverter($column.name)}(id: number): Promise<${JsNameConverter($table.name)}[]> {
this.messageService.add(`${JsNameConverter($table.name)}Service: get data by ${JsNameConverter($column.name)} \${id}`);
return this.http.get<${JsNameConverter($table.name)}[]>(`\${serviceBaseUrl}/v1/${table.name}s/${column.name}/\${id}`).toPromise()
}
#end if
#end for
} }
#end for #end for