-
Notifications
You must be signed in to change notification settings - Fork 0
Clothing Article Browsing
The goal of the function is to provide the possibility to the user the explore the available clothing articles of the webshop.
The clothing article browsing feature set contains the following screens:
-
Featured Clothing Article Screen
- The screen is accessible from the top level navigation component.
- On this screen the user can see its recommended clothing articles.
- The recommendation pages are loaded into the infinite scrolling list.
- If the article loading fails, the user is notified with a non-dismissive snackbar. The snackbar contains retry action.
- From here the user can navigate to "Search Clothing Article Screen" using the trailing icon on the top app bar.
- From here the user can navigate to "Clothing Article Details Screen" by choosing any clothing article.
-
Search Clothing Article Screen
- The screen is accessible from the "Featured Clothing Article Screen".
- On this screen, the user can specify what kind of clothing articles it is searching.
- The user can choose from the options below:
- The user can specify the name or its part of the article it is looking for.
- The user can specify the name or its part of the brand of the article it is looking for.
- The user can specify the minimum and maximum amount of price of the search clothing articles.
- The user can select what kind of categorical attributes (color, shade, graphical appearance, index name, garment group name) must have the searched clothing articles.
- The user can navigate back to "Featured Clothing Article Screen" using the back button on the top app bar.
- The user can navigate to the "Clothing Article Search Results Screen" after clicking the search button
- The button is inactive by default, and becomes active after the user enters valid filter options.
- If the user enters invalid filtering options, it must be shown on the screen on the input field or using snackbars, and the button becomes inactive.
- If the user navigates back from the "Clothing Article Search Results Screen", the previous filtering options must be displayed
-
Clothing Article Search Results Screen
- The user can find on this screen the results of its previously initiated clothing article search operation.
- If the query has many results, the result pages are loaded into the infinite scrolling list.
- If the article loading fails, the user is notified with a non-dismissive snackbar. The snackbar contains retry action.
- The user can navigate back from here to "Search Clothing Article Screen" by using the back button on the top app bar.
- From here the user can navigate to "Clothing Article Details Screen" by choosing any clothing article.
-
Clothing Article Details Screen
- In this screen the user can see every detail of a clothing article.
- Using the back button on the top app bar, the user can navigate back to the previous screen.
- If the article loading fails, the user is notified with a non-dismissive snackbar. The snackbar contains retry action.
- Using the FAB on the screen, it can add the clothing article to its shopping basket. After the clothing article is added to the basket, the user is navigated to the "Shopping Basket Screen". If the user navigates back from the "Shopping Basket Screen", it is navigated to the "Featured Clothing Article Screen".
- If the "Add to basket operation fails" (that can be initiated with the FAB), the user is notified with a dismissive snackbar, and no navigation happens.
erDiagram
CLOTHING_ARTICLE {
string name PK "Must be at least 1 character, maximum 64 characters long. Can contain the letters of Hungarian ABC (it includes English ABC), numbers, whitespace and the following characters: comma,;,.,?,!, single and double quote,#,&,@,(,),-,+,%,=,/.."
int price "The price of the article in HUF. Minimum value is 500, maximum value is 250.000."
string brand PK "Must be at least 1 character, maximum 64 characters long. Can contain the letters of Hungarian ABC (it includes English ABC), numbers and whitespace."
string color "Categorical variable."
string shade "Categorical variable."
string graphicalAppearance "Categorical variable."
string indexName "Categorical variable."
string garmentGroupName "Categorical variable."
string description "It can be maximum 4096 characters. Can contain the letters of Hungarian ABC (it includes English ABC), numbers, whitespace, and the following characters: new line, comma,;,.,?,!, single and double quote,#,&,@,(,),-,+,%,=,/. Can't start and end with newline, and two new line characters cannot be adjacent."
string imageUrl "Contains the article's image's URL. Its origin and the beginning of its path always the same for every entity."
}
CLOTHING_ARTICLE_SEARCH_PARAMETER {
string namePart "Can contain only such characters, that clothing article name can contain, and its maximum possible length is the same as the clothing article name attribute's maximum length."
string brandPart "Can contain only such characters, that clothing article brand can contain, and its maximum possible length is the same as the clothing article brand attribute's maximum length."
nullableInt minimumPrice "Its minimum and maximum value is the same as the price attribute of clothing article. If maximumPrice is specified, it must be lower or same."
nullableInt minimumPrice "Its minimum and maximum value is the same as the price attribute of clothing article. If minimumPrice is specified, it must be higher or same."
string[] colors "Must contain valid color values of the color attribute of clothing article."
string[] shades "Must contain valid color values of the shade attribute of clothing article."
string[] graphicalApperances "Must contain valid color values of the graphicalApperance attribute of clothing article."
string[] indexNames "Must contain valid color values of the indexName attribute of clothing article."
string[] garmentGroupNames "Must contain valid color values of the garmentGroupName attribute of clothing article."
}
Possible values of color attribute:
- Beige
- Black
- Blue
- Bluish Green
- Brown
- Green
- Grey
- Khaki Green
- Lilac Purple
- Metal
- Mole
- Orange
- Pink
- Red
- Turquoise
- White
- Yellow
- Yellowish Green
- Other
Possible values of shade attribute:
- Bright
- Dark
- Dusty Light
- Light
- Medium
- Medium Dusty
- Other
Possible values of graphicalAppearance attribute:
- All over pattern
- Application/3D
- Argyle
- Chambray
- Check
- Colour blocking
- Contrast
- Denim
- Dot
- Embroidery
- Front print
- Glittering/Metallic
- Hologram
- Jacquard
- Lace
- Melange
- Mesh
- Metallic
- Mixed solid/pattern
- Neps
- Other pattern
- Other structure
- Placement print
- Sequin
- Slub
- Solid
- Stripe
- Transparent
- Treatment
Possible values of indexName attribute:
- Baby Sizes 50-98
- Children Accessories
- Swimwear
- Children Sizes 134-170
- Children Sizes 92-140
- Divided
- Ladies Accessories
- Ladieswear
- Lingeries/Tights
- Menswear
- Sport
- Other
Possible values of garmentGroupName attribute:
- Accessories
- Blouses
- Dressed
- Dresses Ladies
- Dresses/Skirts girls
- Jersey Basic
- Jersey Fancy
- Knitwear
- Outdoor
- Shirts
- Shoes
- Shorts
- Skirts
- Socks and Tights
- Special Offers
- Swimwear
- Trousers
- Trousers Denim
- Under
- Nightwear
- Woven/Jersey/Knitted mix Baby
- Other
Identifier | English value | Hungarian value |
---|---|---|
featured_clothing_article_screen_top_app_bar_title | Featured articles | Kiemelt árucikkek |
featured_clothing_article_screen_clothing_article_list_loading_failure_snackbar_text | Failed to load articles | Sikertelen árucikk betöltés |
Identifier | English value | Hungarian value |
---|---|---|
search_clothing_article_screen_top_app_bar_title | Search | Keresés |
search_clothing_article_screen_name_text_field_label | Name | Név |
search_clothing_article_screen_brand_text_field_label | Brand | Márka |
search_clothing_article_screen_minimum_price_text_field_label | Minimum price | Minimális ár |
search_clothing_article_screen_maximum_price_text_field_label | Maximum price | Maximális ár |
search_clothing_article_screen_search_button_text | Search | Keresés |
Identifier | English value | Hungarian value |
---|---|---|
clothing_article_search_results_screen_top_app_bar_title | Results | Találatok |
clothing_article_search_results_screen_no_results_text | No appropriate clothing article was found. | Nem találtunk a keresési feltételeknek megfelelő ruházati árucikket. |
clothing_article_search_results_screen_results_list_loading_failure_snackbar_text | Failed to load results | Nem sikerült betölteni a találatokat |
clothing_article_search_results_screen_no_results_description | No appropriate clothing article was found. | Nem találtunk megfelelő ruházati árucikket. |
clothing_article_search_results_screen_no_results_back_button_text | Change filter | Szűrés megváltoztatása |
Identifier | English value | Hungarian value |
---|---|---|
clothing_article_details_screen_top_app_bar_title | Details | Részletek |
clothing_article_details_screen_brand_name_text | by | által |
clothing_article_details_screen_price_text | HUF | Ft |
clothing_article_details_screen_description_label | Description | Részletek |
Identifier | English value | Hungarian value |
---|---|---|
clothing_article_card_component_button_text | More details | Részletek |
Identifier | English value | Hungarian value |
---|---|---|
common_action_name_retry | Retry | Újra |
Identifier | English value | Hungarian value |
---|---|---|
common_clothing_article_attribute_name_color_label | Color | Szín |
common_clothing_article_attribute_name_shade_label | Shade | Árnyalat |
common_clothing_article_attribute_name_graphic_apperance_label | Graphic apperance | Megjelenés típus |
common_clothing_article_attribute_name_index_name_label | Index name | Részleg |
common_clothing_article_attribute_name_garment_group_name_label | Garment group | Ruhacsoport |
Identifier | English value | Hungarian value |
---|---|---|
clothing_article_colors_beige | Beige | Bézs |
clothing_article_colors_black | Black | Fekete |
clothing_article_colors_blue | Blue | Kék |
clothing_article_colors_bluish_green | Bluish Green | Kékes Zöld |
clothing_article_colors_brown | Brown | Barna |
clothing_article_colors_green | Green | Zöld |
clothing_article_colors_grey | Grey | Szürke |
clothing_article_colors_khaki_green | Khaki Green | Khaki Zöld |
clothing_article_colors_lilac_purple | Lilac Purple | Lila |
clothing_article_colors_metal | Metal | Fém |
clothing_article_colors_mole | Mole | Mole |
clothing_article_colors_orange | Orange | Narancssárga |
clothing_article_colors_pink | Pink | Rózsaszín |
clothing_article_colors_red | Red | Piros |
clothing_article_colors_turquoise | Turquoise | Tükörkék |
clothing_article_colors_white | White | Fehér |
clothing_article_colors_yellow | Yellow | Sárga |
clothing_article_colors_yellowish_green | Yellowish Green | Sárgás Zöld |
clothing_article_colors_other | Other | Egyéb |
Identifier | English value | Hungarian value |
---|---|---|
clothing_article_shades_bright | Bright | Világos |
clothing_article_shades_dark | Dark | Sötét |
clothing_article_shades_dusty_light | Dusty Light | Poros Világos |
clothing_article_shades_light | Light | Világos |
clothing_article_shades_medium | Medium | Közepes |
clothing_article_shades_medium_dusty | Medium Dusty | Közepes Poros |
clothing_article_shades_other | Other | Egyéb |
Identifier | English value | Hungarian value |
---|---|---|
clothing_article_graphical_appearance_all_over_pattern | All over pattern | Összes minta |
clothing_article_graphical_appearance_application_3d | Application/3D | Alkalmazás/3D |
clothing_article_graphical_appearance_argyle | Argyle | Argyle |
clothing_article_graphical_appearance_chambray | Chambray | Chambray |
clothing_article_graphical_appearance_check | Check | Kockás |
clothing_article_graphical_appearance_colour_blocking | Colour blocking | Szín blokkolás |
clothing_article_graphical_appearance_contrast | Contrast | Kontraszt |
clothing_article_graphical_appearance_denim | Denim | Farmer |
clothing_article_graphical_appearance_dot | Dot | Pöttyös |
clothing_article_graphical_appearance_embroidery | Embroidery | Hímzés |
clothing_article_graphical_appearance_front_print | Front print | Első nyomtatás |
clothing_article_graphical_appearance_glittering_metallic | Glittering/Metallic | Csillámló/Fém |
clothing_article_graphical_appearance_hologram | Hologram | Hologram |
clothing_article_graphical_appearance_jacquard | Jacquard | Jacquard |
clothing_article_graphical_appearance_lace | Lace | Csipke |
clothing_article_graphical_appearance_melange | Melange | Melange |
clothing_article_graphical_appearance_mesh | Mesh | Háló |
clothing_article_graphical_appearance_metallic | Metallic | Fémek |
clothing_article_graphical_appearance_mixed_solid_pattern | Mixed solid/pattern | Vegyes szilárd/minta |
clothing_article_graphical_appearance_neps | Neps | Neps |
clothing_article_graphical_appearance_other_pattern | Other pattern | Egyéb minta |
clothing_article_graphical_appearance_other_structure | Other structure | Egyéb szerkezet |
clothing_article_graphical_appearance_placement_print | Placement print | Helyezési nyomtatás |
clothing_article_graphical_appearance_sequin | Sequin | Flitter |
clothing_article_graphical_appearance_slub | Slub | Slub |
clothing_article_graphical_appearance_solid | Solid | Szilárd |
clothing_article_graphical_appearance_stripe | Stripe | Csík |
clothing_article_graphical_appearance_transparent | Transparent | Átlátszó |
clothing_article_graphical_appearance_treatment | Treatment | Kezelés |
Identifier | English value | Hungarian value |
---|---|---|
clothing_article_index_name_baby_sizes_50_98 | Baby Sizes 50-98 | Baba Méretek 50-98 |
clothing_article_index_name_children_accessories | Children Accessories | Gyermek Kiegészítők |
clothing_article_index_name_swimwear | Swimwear | Fürdőruha |
clothing_article_index_name_children_sizes_134_170 | Children Sizes 134-170 | Gyermek Méretek 134-170 |
clothing_article_index_name_children_sizes_92_140 | Children Sizes 92-140 | Gyermek Méretek 92-140 |
clothing_article_index_name_divided | Divided | Osztott |
clothing_article_index_name_ladies_accessories | Ladies Accessories | Női Kiegészítők |
clothing_article_index_name_ladieswear | Ladieswear | Női Ruházat |
clothing_article_index_name_lingeries_tights | Lingeries/Tights | Alsónemű/Harisnya |
clothing_article_index_name_menswear | Menswear | Férfiruházat |
clothing_article_index_name_sport | Sport | Sport |
clothing_article_index_name_other | Other | Egyéb |
Identifier | English value | Hungarian value |
---|---|---|
clothing_article_garment_group_name_accessories | Accessories | Kiegészítők |
clothing_article_garment_group_name_blouses | Blouses | Blúzok |
clothing_article_garment_group_name_dressed | Dressed | Ruha |
clothing_article_garment_group_name_dresses_ladies | Dresses Ladies | Női Ruha |
clothing_article_garment_group_name_dresses_skirts_girls | Dresses/Skirts girls | Lány Ruha/Szoknya |
clothing_article_garment_group_name_jersey_basic | Jersey Basic | Alapvető Jersey |
clothing_article_garment_group_name_jersey_fancy | Jersey Fancy | Divatos Jersey |
clothing_article_garment_group_name_knitwear | Knitwear | Kötött Ruha |
clothing_article_garment_group_name_outdoor | Outdoor | Kültéri |
clothing_article_garment_group_name_shirts | Shirts | Ing |
clothing_article_garment_group_name_shoes | Shoes | Cipő |
clothing_article_garment_group_name_shorts | Shorts | Rövidnadrág |
clothing_article_garment_group_name_skirts | Skirts | Szoknya |
clothing_article_garment_group_name_socks_and_tights | Socks and Tights | Zokni és Harisnya |
clothing_article_garment_group_name_special_offers | Special Offers | Különleges Ajánlatok |
clothing_article_garment_group_name_swimwear | Swimwear | Fürdőruha |
clothing_article_garment_group_name_trousers | Trousers | Nadrág |
clothing_article_garment_group_name_trousers_denim | Trousers Denim | Farmer Nadrág |
clothing_article_garment_group_name_under | Under | Alsónemű |
clothing_article_garment_group_name_nightwear | Nightwear | Éjjeli Ruha |
clothing_article_garment_group_name_woven_jersey_knitted_mix_baby | Woven/Jersey/Knitted mix Baby | Szövött/Jersey/Kötött keverék Baba |
clothing_article_garment_group_name_other | Other | Egyéb |
* the parts marked between <> characters must be replaced with appropriate dynamic values on the client
The backend provides the following operations:
-
Get recommended clothing articles
- pagination is supported (last item's ID must be sent)
- the results are sent in descending order of recommendation score.
-
Search articles
- pagination is supported (last item's ID must be sent)
- the results are sent in descending order of article creation date.
Every operation of the backend is available using GraphQL.
The backend must support different page sizes, it is the responsibility of the client to send the page size. For now, the client will use 20 as page size for every operation in the feature set.
When the user almost reaches the bottom of the list, and it is possible based on the last response (no response was sent, or the previous response contained a response with the requested page size), a request must be sent to the backend to retrieve the next page.
If any of the operation fails on the backend, an appropriate response is sent, so the error field is used, and the message contains the identifier of the error from the localization table.
- Support available sizes
- Support sharing clothing articles