now removing issue is possible
This commit is contained in:
parent
622b67047d
commit
1d7224ae42
@ -101,6 +101,15 @@ export class StorageService {
|
|||||||
return this.set('booksIssued', issueBook);
|
return this.set('booksIssued', issueBook);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async removeBookIssued(issue: bookIssued): Promise<void | undefined> {
|
||||||
|
let issueBook: bookIssued[] = await this.getBooksIssued();
|
||||||
|
issueBook = issueBook.filter((book) => {
|
||||||
|
return !(issue.bookId === book.bookId && issue.userId === book.userId);
|
||||||
|
});
|
||||||
|
console.log(issueBook);
|
||||||
|
return await this.set('booksIssued', issueBook);
|
||||||
|
}
|
||||||
|
|
||||||
public async getBookIssuedUsers(bookId: string): Promise<userIssue[]> {
|
public async getBookIssuedUsers(bookId: string): Promise<userIssue[]> {
|
||||||
const issueBook: bookIssued[] = await this.getBooksIssued();
|
const issueBook: bookIssued[] = await this.getBooksIssued();
|
||||||
const book: Array<bookIssued> = issueBook.filter(
|
const book: Array<bookIssued> = issueBook.filter(
|
||||||
|
@ -18,21 +18,27 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|
||||||
<ion-list *ngFor="let item of booksName; index as i">
|
<ion-list *ngFor="let item of booksName; index as i" inset>
|
||||||
<ion-item [id]="'issue' + i" lines="none" button>
|
<ion-item-sliding>
|
||||||
|
<ion-item lines="none" button>
|
||||||
|
<ion-card class="rent-card" [id]="'issue' + i">
|
||||||
|
<img class="itemImg" [alt]="item.book.volumeInfo.title" [src]="item.book.volumeInfo.imageLinks.thumbnail"/>
|
||||||
|
<ion-card-header>
|
||||||
|
<ion-card-title>{{ item.book.volumeInfo.title }}</ion-card-title>
|
||||||
|
<ion-card-subtitle>Выдан: {{ item.user?.fio }}</ion-card-subtitle>
|
||||||
|
</ion-card-header>
|
||||||
|
|
||||||
<ion-card>
|
<ion-card-content>
|
||||||
<img class="itemImg" [alt]="item.book.volumeInfo.title" [src]="item.book.volumeInfo.imageLinks.thumbnail" />
|
Книга выдана {{ dateParse(item.issue.date) }}. До {{ dateParse(item.issue.dateTo) }}
|
||||||
<ion-card-header>
|
</ion-card-content>
|
||||||
<ion-card-title>{{item.book.volumeInfo.title}}</ion-card-title>
|
<app-book-page [trigger]="'issue' + i" [item]="item.book"/>
|
||||||
<ion-card-subtitle>Выдан: {{item.user?.fio}}</ion-card-subtitle>
|
</ion-card>
|
||||||
</ion-card-header>
|
</ion-item>
|
||||||
|
<ion-item-options>
|
||||||
<ion-card-content>
|
<ion-item-option (click)="removeIssue(item.issue)" color="danger" expandable="true">
|
||||||
Книга выдана {{dateParse(item.issue.date)}}. До {{dateParse(item.issue.dateTo)}}
|
<ion-icon slot="icon-only" name="trash"></ion-icon>
|
||||||
</ion-card-content>
|
</ion-item-option>
|
||||||
</ion-card>
|
</ion-item-options>
|
||||||
<app-book-page [trigger]="'issue' + i" [item]="item.book" />
|
</ion-item-sliding>
|
||||||
</ion-item>
|
|
||||||
</ion-list>
|
</ion-list>
|
||||||
</ion-content>
|
</ion-content>
|
||||||
|
@ -4,3 +4,10 @@
|
|||||||
margin-top: 2vh;
|
margin-top: 2vh;
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.rent-card{
|
||||||
|
display: block;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
@ -51,6 +51,14 @@ export class RentPage implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public removeIssue(issue: bookIssued) {
|
||||||
|
this.storage.init().then(() => {
|
||||||
|
this.storage.removeBookIssued(issue).then(() => {
|
||||||
|
this.refresh();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
public dateParse(date: string) {
|
public dateParse(date: string) {
|
||||||
let _date = new Date(date);
|
let _date = new Date(date);
|
||||||
return _date.toLocaleDateString();
|
return _date.toLocaleDateString();
|
||||||
|
Loading…
Reference in New Issue
Block a user