Merge branch 'master' of ssh://dev.hostsharing.net:29418/hsadmin/hsadmin-ng
This commit is contained in:
commit
31aafd3b86
@ -14,7 +14,6 @@ entity Contact {
|
|||||||
email String required maxlength(80)
|
email String required maxlength(80)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
enum CustomerContactRole {
|
enum CustomerContactRole {
|
||||||
CONTRACTUAL,
|
CONTRACTUAL,
|
||||||
TECHNICAL,
|
TECHNICAL,
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
#H2 Server Properties
|
#H2 Server Properties
|
||||||
|
#Wed Apr 03 13:36:25 CEST 2019
|
||||||
0=JHipster H2 (Memory)|org.h2.Driver|jdbc\:h2\:mem\:hsadminng|hsadminNg
|
0=JHipster H2 (Memory)|org.h2.Driver|jdbc\:h2\:mem\:hsadminng|hsadminNg
|
||||||
webAllowOthers=true
|
webAllowOthers=true
|
||||||
webPort=8082
|
webPort=8082
|
||||||
|
@ -57,7 +57,7 @@ spring:
|
|||||||
hibernate.cache.use_query_cache: false
|
hibernate.cache.use_query_cache: false
|
||||||
hibernate.generate_statistics: true
|
hibernate.generate_statistics: true
|
||||||
liquibase:
|
liquibase:
|
||||||
contexts: dev
|
contexts: dev,sample-data
|
||||||
mail:
|
mail:
|
||||||
host: localhost
|
host: localhost
|
||||||
port: 25
|
port: 25
|
||||||
|
@ -33,5 +33,17 @@
|
|||||||
</createTable>
|
</createTable>
|
||||||
|
|
||||||
</changeSet>
|
</changeSet>
|
||||||
|
|
||||||
|
<changeSet id="20190402141612-2" author="mhoennig" context="sample-data">
|
||||||
|
<loadData encoding="UTF-8"
|
||||||
|
file="config/liquibase/sample-data/customers.csv"
|
||||||
|
separator=";"
|
||||||
|
tableName="customer">
|
||||||
|
<column name="id" type="numeric"/>
|
||||||
|
<column name="jhi_number" type="numeric"/>
|
||||||
|
<column name="prefix" type="string"/>
|
||||||
|
</loadData>
|
||||||
|
</changeSet>
|
||||||
|
|
||||||
<!-- jhipster-needle-liquibase-add-changeset - JHipster will add changesets here, do not remove-->
|
<!-- jhipster-needle-liquibase-add-changeset - JHipster will add changesets here, do not remove-->
|
||||||
</databaseChangeLog>
|
</databaseChangeLog>
|
||||||
|
@ -37,5 +37,18 @@
|
|||||||
</createTable>
|
</createTable>
|
||||||
|
|
||||||
</changeSet>
|
</changeSet>
|
||||||
|
|
||||||
|
<changeSet id="20190403083736-2" author="mhoennig" context="sample-data">
|
||||||
|
<loadData encoding="UTF-8"
|
||||||
|
file="config/liquibase/sample-data/contacts.csv"
|
||||||
|
separator=";"
|
||||||
|
tableName="contact">
|
||||||
|
<column name="id" type="numeric"/>
|
||||||
|
<column name="first_name" type="string"/>
|
||||||
|
<column name="last_name" type="string"/>
|
||||||
|
<column name="email" type="string"/>
|
||||||
|
</loadData>
|
||||||
|
</changeSet>
|
||||||
|
|
||||||
<!-- jhipster-needle-liquibase-add-changeset - JHipster will add changesets here, do not remove-->
|
<!-- jhipster-needle-liquibase-add-changeset - JHipster will add changesets here, do not remove-->
|
||||||
</databaseChangeLog>
|
</databaseChangeLog>
|
||||||
|
@ -37,5 +37,18 @@
|
|||||||
</createTable>
|
</createTable>
|
||||||
|
|
||||||
</changeSet>
|
</changeSet>
|
||||||
|
|
||||||
|
<changeSet id="20190403083737-2" author="mhoennig" context="sample-data">
|
||||||
|
<loadData encoding="UTF-8"
|
||||||
|
file="config/liquibase/sample-data/customer-contacts.csv"
|
||||||
|
separator=";"
|
||||||
|
tableName="customer_contact">
|
||||||
|
<column name="id" type="numeric"/>
|
||||||
|
<column name="customer" type="numeric"/>
|
||||||
|
<column name="role" type="string"/>
|
||||||
|
<column name="contact" type="numeric"/>
|
||||||
|
</loadData>
|
||||||
|
</changeSet>
|
||||||
|
|
||||||
<!-- jhipster-needle-liquibase-add-changeset - JHipster will add changesets here, do not remove-->
|
<!-- jhipster-needle-liquibase-add-changeset - JHipster will add changesets here, do not remove-->
|
||||||
</databaseChangeLog>
|
</databaseChangeLog>
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
id;first_name;last_name;email
|
||||||
|
1;Paule;Müller;paule.mueller@example.com
|
||||||
|
2;Helma;Schmidt;helma.schmidt@example.com
|
||||||
|
3;Vidi;Vitt;vidi.vitt@example.com
|
||||||
|
4;Saskia;Balder;saskia@balder.example.com
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
|||||||
|
id;customer_id;jhi_role;contact_id
|
||||||
|
1;1;CONTRACTUAL;1
|
||||||
|
2;1;TECHNICAL;1
|
||||||
|
3;1;FINANCIAL;1
|
||||||
|
4;2;CONTRACTUAL;1
|
||||||
|
5;2;TECHNICAL;2
|
||||||
|
6;2;FINANCIAL;3
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
|||||||
|
id;jhi_number;prefix
|
||||||
|
1;10001;aaa
|
||||||
|
2;10002;bbb
|
||||||
|
3;10003;ccc
|
||||||
|
4;10004;ddd
|
||||||
|
5;10098;abc
|
||||||
|
6;10099;bca
|
|
@ -19,6 +19,12 @@
|
|||||||
<th jhiSortBy="prefix"><span jhiTranslate="hsadminNgApp.customer.prefix">Prefix</span> <fa-icon [icon]="'sort'"></fa-icon></th>
|
<th jhiSortBy="prefix"><span jhiTranslate="hsadminNgApp.customer.prefix">Prefix</span> <fa-icon [icon]="'sort'"></fa-icon></th>
|
||||||
<th></th>
|
<th></th>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<th></th>
|
||||||
|
<th><input type="text" class="form-control" [(ngModel)]="filterValue.number" (keyup)="filter($event)"></th>
|
||||||
|
<th><input type="text" class="form-control" [(ngModel)]="filterValue.prefix" (keyup)="filter($event)"></th>
|
||||||
|
<th><button class="btn btn-primary float-left" (click)="resetFilter()">Reset Filter</button></th>
|
||||||
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody infinite-scroll (scrolled)="loadPage(page + 1)" [infiniteScrollDisabled]="page >= links['last']" [infiniteScrollDistance]="0">
|
<tbody infinite-scroll (scrolled)="loadPage(page + 1)" [infiniteScrollDisabled]="page >= links['last']" [infiniteScrollDistance]="0">
|
||||||
<tr *ngFor="let customer of customers ;trackBy: trackId">
|
<tr *ngFor="let customer of customers ;trackBy: trackId">
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { Component, OnInit, OnDestroy } from '@angular/core';
|
import { Component, OnInit, OnDestroy } from '@angular/core';
|
||||||
import { HttpErrorResponse, HttpHeaders, HttpResponse } from '@angular/common/http';
|
import { HttpErrorResponse, HttpHeaders, HttpResponse } from '@angular/common/http';
|
||||||
import { Subscription } from 'rxjs';
|
import { Subscription, Subject } from 'rxjs';
|
||||||
import { filter, map } from 'rxjs/operators';
|
import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
|
||||||
import { JhiEventManager, JhiParseLinks, JhiAlertService } from 'ng-jhipster';
|
import { JhiEventManager, JhiParseLinks, JhiAlertService } from 'ng-jhipster';
|
||||||
|
|
||||||
import { ICustomer } from 'app/shared/model/customer.model';
|
import { ICustomer } from 'app/shared/model/customer.model';
|
||||||
@ -24,6 +24,9 @@ export class CustomerComponent implements OnInit, OnDestroy {
|
|||||||
predicate: any;
|
predicate: any;
|
||||||
reverse: any;
|
reverse: any;
|
||||||
totalItems: number;
|
totalItems: number;
|
||||||
|
filterValue: any;
|
||||||
|
filterValueChanged = new Subject<string>();
|
||||||
|
subscription: Subscription;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
protected customerService: CustomerService,
|
protected customerService: CustomerService,
|
||||||
@ -40,11 +43,25 @@ export class CustomerComponent implements OnInit, OnDestroy {
|
|||||||
};
|
};
|
||||||
this.predicate = 'id';
|
this.predicate = 'id';
|
||||||
this.reverse = true;
|
this.reverse = true;
|
||||||
|
this.resetFilter();
|
||||||
|
}
|
||||||
|
|
||||||
|
resetFilter() {
|
||||||
|
this.filterValue = {
|
||||||
|
number: null,
|
||||||
|
prefix: null
|
||||||
|
};
|
||||||
|
this.loadAll();
|
||||||
}
|
}
|
||||||
|
|
||||||
loadAll() {
|
loadAll() {
|
||||||
|
const criteria = {
|
||||||
|
...(this.filterValue.number && { 'number.equals': this.filterValue.number }),
|
||||||
|
...(this.filterValue.prefix && { 'prefix.contains': this.filterValue.prefix })
|
||||||
|
};
|
||||||
this.customerService
|
this.customerService
|
||||||
.query({
|
.query({
|
||||||
|
...criteria,
|
||||||
page: this.page,
|
page: this.page,
|
||||||
size: this.itemsPerPage,
|
size: this.itemsPerPage,
|
||||||
sort: this.sort()
|
sort: this.sort()
|
||||||
@ -55,6 +72,10 @@ export class CustomerComponent implements OnInit, OnDestroy {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
filter($event) {
|
||||||
|
this.filterValueChanged.next($event.target.value);
|
||||||
|
}
|
||||||
|
|
||||||
reset() {
|
reset() {
|
||||||
this.page = 0;
|
this.page = 0;
|
||||||
this.customers = [];
|
this.customers = [];
|
||||||
@ -72,6 +93,15 @@ export class CustomerComponent implements OnInit, OnDestroy {
|
|||||||
this.currentAccount = account;
|
this.currentAccount = account;
|
||||||
});
|
});
|
||||||
this.registerChangeInCustomers();
|
this.registerChangeInCustomers();
|
||||||
|
|
||||||
|
this.subscription = this.filterValueChanged
|
||||||
|
.pipe(
|
||||||
|
debounceTime(500),
|
||||||
|
distinctUntilChanged((previous: any, current: any) => previous === current)
|
||||||
|
)
|
||||||
|
.subscribe(() => {
|
||||||
|
this.loadAll();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnDestroy() {
|
ngOnDestroy() {
|
||||||
@ -97,6 +127,8 @@ export class CustomerComponent implements OnInit, OnDestroy {
|
|||||||
protected paginateCustomers(data: ICustomer[], headers: HttpHeaders) {
|
protected paginateCustomers(data: ICustomer[], headers: HttpHeaders) {
|
||||||
this.links = this.parseLinks.parse(headers.get('link'));
|
this.links = this.parseLinks.parse(headers.get('link'));
|
||||||
this.totalItems = parseInt(headers.get('X-Total-Count'), 10);
|
this.totalItems = parseInt(headers.get('X-Total-Count'), 10);
|
||||||
|
this.page = 0;
|
||||||
|
this.customers = [];
|
||||||
for (let i = 0; i < data.length; i++) {
|
for (let i = 0; i < data.length; i++) {
|
||||||
this.customers.push(data[i]);
|
this.customers.push(data[i]);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user