continuous-integration/drone/push Build is failing
Details
|
2 years ago | |
---|---|---|
Documentation | 2 years ago | |
Sources | 2 years ago | |
fonts | 2 years ago | |
screens | 2 years ago | |
symbols | 2 years ago | |
.drone.yml | 2 years ago | |
.gitignore | 2 years ago | |
README.md | 2 years ago |
README.md
PocketBook - Louis DUFOUR
Il veut: README.md
- lancer le projet
- trouver les docs important
- cas d'erreur connus
- Comment accéder au code noté
- dernier commit ? tag
- Préciser plateforme
TODO
Modèle
classDiagram
direction LR
class Book {
+Id : string
+Title : string
+Publishers : List~string~
+PublishDate : DateTime
+ISBN13 : string
+Series : List~string~
+NbPages : int
+Format : string
+ImageSmall : string
+ImageMedium : string
+ImageLarge : string
}
class Languages {
<<enum>>
Unknown,
French,
}
class Work {
+Id : string
+Description : string
+Title : string
+Subjects : List~string~
}
class Contributor {
+Name : string
+Role : string
}
class Author {
+Id : string
+Name : string
+ImageSmall : string
+ImageMedium : string
+ImageLarge : string
+Bio : string
+AlternateNames : List~string~
+BirthDate : DateTime?
+DeathDate : DateTime?
}
class Link {
+Title : string
+Url : string
}
class Ratings {
+Average : float
+Count : int
}
Book --> "1" Languages : Language
Book --> "*" Contributor : Contributors
Author --> "*" Link : Links
Work --> "*" Author : Authors
Work --> "1" Ratings : Ratings
Book --> "*" Author : Authors
Book --> "*" Work : Works
class Status {
<<enum>>
Unknown,
Finished,
Reading,
NotRead,
ToBeRead
}
class Contact{
+string Id;
+string FirstName;
+string LastName;
}
Services & Interfaces
classDiagram
direction LR
Book --> "1" Languages : Language
Book --> "*" Contributor : Contributors
Author --> "*" Link : Links
Work --> "1" Ratings : Ratings
Work --> "*" Author : Authors
Book --> "*" Work : Works
Book --> "*" Author : Authors
class IUserLibraryManager {
<<interface>>
+AddBook(Book book) : Task<Book>
+AddBook(string id) : Task<Book>
+AddBookByIsbn(string isbn) : Task<Book>
+RemoveBook(Book book) : Task<bool>
+RemoveBook(string id) : Task<bool>
+RemoveBook(string id) : Task<bool>
+AddToFavorites(Book book) : Task<bool>
+AddToFavorites(string bookId) : Task<bool>
+RemoveFromFavorites(Book book) : Task<bool>
+RemoveFromFavorites(string bookId) : Task<bool>
+UpdateBook(Book updatedBook) : Task<Book>
+AddContact(Contact contact) : Task<Contact>
+RemoveContact(Contact contact) : Task<bool>
+LendBook(Book book, Contact contact, DateTime? loanDate) : Task<bool>
+GetBackBook(Book book, DateTime? returnedDate) : Task<bool>
+BorrowBook(Book book, Contact owner, DateTime? borrowedDate) : Task<bool>
+GiveBackBook(Book book, DateTime? returnedDate) : Task<bool>
+GetCurrentLoans(int index, int count)
+GetPastLoans(int index, int count)
+GetCurrentBorrowings(int index, int count)
+GetPastBorrowings(int index, int count)
+GetContacts(int index, int count)
}
class ILibraryManager {
<<interface>>
+GetBookById(string id)
+GetBookByIsbn(string isbn)
+GetBooksByTitle(string title, int index, int count, string sort)
+GetBooksByAuthorId(string authorId, int index, int count, string sort)
+GetBooksByAuthor(string author, int index, int count, string sort)
+GetAuthorById(string id)
+GetAuthorsByName(string substring, int index, int count, string sort)
}
class Status {
<<enum>>
}
IUserLibraryManager ..|> ILibraryManager
IUserLibraryManager ..> Status
IUserLibraryManager ..> Contact
IUserLibraryManager ..> Book
ILibraryManager ..> Book
ILibraryManager ..> Author
Ressources
- Doc officielle MAUI
- MAUI Community Toolkit
- SF Symbols 5.0 (format SVG et PNG)
- SF Symbols 5.0 (PNG only)
Voici les captures d'écran réalisées sur iPhone.
Page Bibliothèque

- Un clic sur "Tous" permet de naviguer vers la page affichant tous les livres de notre bibliothèque,
- Un clic sur "En prêt" permet de voir à qui on a prêté un livre et à qui on a emprunté un livre
- Un clic sur "À lire plus tard" affiche tous les livres de la bibliothèque marqués comme "à lire plus tard"
- Un clic sur Statut de lecture permet de regrouper les livres en trois catégories : "Lu", "À lire", "Non lu"
- Un clic sur "Favoris" affiche seulement les livres préférés de notre bibliothèque
- Finalement, ... vous pouvez oublier "Étiquettes"
- Un clic sur "Auteur" permet de filtrer les livres par auteur (cf. plus bas)
- Un clic sur "Date de publication" permet de filtrer les livres par année de publication (cf. plus bas)
- Un clic sur "Note" permet de trier les livres par notes (données par la communauté)
- Le bouton "Modifier" ne sera pas utilisé
- Le bouton "+" permet de rentrer de nouveaux livres (cf. plus bas).
Affichage de la liste de livres

- Le bouton "+" permet de scanner un nouveau livre (cf. plus bas).
- Le bouton avec les deux flèches permet de changer l'ordre de présentation des livres.
- Note : les livres sont regroupés par auteur
Affichage d'un livre


Filtrage par auteur
Lorsqu'on clique sur un le filtre "Auteur" de la page "Mes Livres", on navigue vers la page suivante :
Un clic sur un de ces auteurs permet d'aller sur la même page que celle qui affiche la liste des livres, mais seuls les livres de cet auteur apparaitront.
Filtrage par date de publication
Lorsqu'on clique sur un le filtre "Date de publication" de la page "Mes Livres", on navigue vers la page suivante :
Un clic sur une de ces années permet d'aller sur la même page que celle qui affiche la liste des livres, mais seuls les livres publiée cette année apparaitront.
Emprunts / Prêts
Lorsqu'on clique sur le menu "En prêt" sur la page d'accueil, on peut voir la liste de nos emprunts et de nos prêts répartis par contacts. Par exemple :
Le switch permet de voir les livres qu'on a prêtés regroupés par contacts, ou les livres qu'on a empruntés regroupés par prêteurs.
Le fameux bouton "+"
Un clic sur le bouton "+" fait apparaître un sous-menu permettant d'ajouter un livre à la bibliothèque :
- en scannant un code-barres (cf. plus bas)
- en scannant plusieurs code-barres
- en recherchant en ligne (par titre ou par auteur),
- en saisissant l'ISBN

Le scan
La page Scan pourra être réalisée plus tard.
