Florian Eisenmenger 2 лет назад
Родитель
Сommit
aa241864de
4 измененных файлов: 59 добавлений и 13 удалений
  1. +8
    -6
      matsen-tool/src/app/partners/partners-detail/partners-detail.component.html
  2. +43
    -1
      matsen-tool/src/app/partners/partners-detail/partners-detail.component.ts
  3. +1
    -1
      matsen-tool/src/app/partners/partners.component.html
  4. +7
    -5
      matsen-tool/src/app/partners/partners.component.ts

+ 8
- 6
matsen-tool/src/app/partners/partners-detail/partners-detail.component.html Просмотреть файл

@@ -1,10 +1,10 @@
<div class="card">
<div class="card-body row">
<div class="col-4">
<h1>spawntree GmbH</h1>
<p>Bauernvogtskoppel 6c<br/>
21465 Wentorf<br/>
Deutschland</p>
<h1>{{partner.name}}</h1>
<p>{{partner.street}} {{partner.streetNo}}<br/>
{{partner.zip}} {{partner.city}}<br/>
{{partner.country}}</p>
<p>Sprache: Deutsch</p>
</div>
<div class="col-4">
@@ -12,6 +12,8 @@
<dl>
<dt>Telefon:</dt>
<dd>0177 289 23 02</dd>
<dt>Website:</dt>
<dd><a href="{{partner.website}}" target="_blank">{{partner.website}}</a></dd>
<dt>Streckenpunkt:</dt>
<dd>AT-Salzburg</dd>
<dt>Geschäftsbuchungsgruppe:</dt>
@@ -23,8 +25,8 @@
</dl>
</div>
<div class="col-4">
<img src="./assets/images/specific/matsen_logo.svg" width="247" height="94"
alt="{{'basic.company-name' | translate}}"/>
<img src="{{environment.basePath}}{{partnerLogo}}" width="247" height="94"
alt="{{partner.name}}" title="{{partner.name}}" />
</div>
</div>
</div>


+ 43
- 1
matsen-tool/src/app/partners/partners-detail/partners-detail.component.ts Просмотреть файл

@@ -3,6 +3,9 @@ import {NgbModal} from "@ng-bootstrap/ng-bootstrap";
import {ModalComponent} from "@app/_components/modal/modal.component";
import {NewContactComponent} from "@app/partners/new-contact/new-contact.component";
import {ActivatedRoute} from "@angular/router";
import {MediaObjectService, PartnerJsonld, PartnerService} from "@app/core/api/v1";
import {Subscription} from "rxjs";
import {environment} from "@environments/environment";

@Component({
selector: 'app-partners-detail',
@@ -13,12 +16,23 @@ export class PartnersDetailComponent implements OnInit {
private closeResult = '';
protected id: string;

protected partnerDetailSub: Subscription;
protected partner: PartnerJsonld;
protected partnerLogoSub: Subscription;
protected partnerLogo: string|null|undefined;

protected readonly ModalComponent = ModalComponent;
constructor(
private modalService: NgbModal,
private route: ActivatedRoute
private route: ActivatedRoute,
private partnerService: PartnerService,
private mediaObjectService: MediaObjectService
) {
this.id = "";
this.partnerDetailSub = new Subscription();
this.partner = {};
this.partnerLogoSub = new Subscription();
this.partnerLogo = "";
}
openModalNewContact() {
const modalRef = this.modalService.open(ModalComponent);
@@ -30,5 +44,33 @@ export class PartnersDetailComponent implements OnInit {
this.id = params['id'];
// Hier kannst du die Logik für die Anzeige der Details für den bestimmten Partner implementieren
});
this.getData();
}

getData()
{
this.partnerDetailSub = this.partnerService.partnersIdGet(
"1"
).subscribe(
data => {
console.log(data);
this.partner = data;
// TODO: logoUrl ist hier falsch, wir müssten nur die ID des logos haben...
let logoUrl: string = typeof data.logo === 'string' ? data.logo : "";
this.partnerLogoSub = this.mediaObjectService.mediaObjectsIdGet(
// logoUrl
"4"
).subscribe(
data => {
this.partnerLogo = data.contentUrl;
console.log(this.partnerLogo);
}
);


}
);
}

protected readonly environment = environment;
}

+ 1
- 1
matsen-tool/src/app/partners/partners.component.html Просмотреть файл

@@ -14,7 +14,7 @@
<th mat-header-cell *matHeaderCellDef mat-sort-header sortActionDescription="Nach Partner sortieren">
Partner
</th>
<td mat-cell *matCellDef="let element"><a [routerLink]="['/customers', element.name]">{{ element.name }}</a></td>
<td mat-cell *matCellDef="let element"><span (click)="navigateToDetails(element)">{{ element.name }}</span></td>
</ng-container>

<ng-container matColumnDef="address">


+ 7
- 5
matsen-tool/src/app/partners/partners.component.ts Просмотреть файл

@@ -1,12 +1,10 @@
import {AfterViewInit, ChangeDetectorRef, Component, OnInit, ViewChild} from '@angular/core';
import {MatSort, Sort, MatSortModule} from "@angular/material/sort";
import {LiveAnnouncer} from "@angular/cdk/a11y";
import {MatTableDataSource, MatTableModule} from "@angular/material/table";
import {ActivatedRoute, RouterLink, RouterLinkActive} from "@angular/router";
import {ActivatedRoute, Router, RouterLink, RouterLinkActive} from "@angular/router";
import {Subscription} from "rxjs";
import {PartnerJsonld, PartnerService} from "@app/core/api/v1";
import {MatPaginator, MatPaginatorIntl, MatPaginatorModule, PageEvent} from "@angular/material/paginator";
import {NumberInput} from "@angular/cdk/coercion";
import {OrderFilter} from "@app/_models/orderFilter";

@Component({
@@ -37,7 +35,8 @@ export class PartnersComponent implements OnInit, AfterViewInit {

constructor(
private route: ActivatedRoute,
private partnerService: PartnerService
private partnerService: PartnerService,
private router: Router
) {
this.sort = new MatSort();
this.paginator = new MatPaginator(new MatPaginatorIntl(), ChangeDetectorRef.prototype);
@@ -125,5 +124,8 @@ export class PartnersComponent implements OnInit, AfterViewInit {
this.getData();
}

protected readonly Number = Number;
navigateToDetails(partner: any) {
// this.partnerService.setPartnerData(partner);
this.router.navigate(['/customers', partner.name]);
}
}

Загрузка…
Отмена
Сохранить