Giter Club home page Giter Club logo

capstone_flower_box_deposit_app's Introduction

Johannes Osterkamp

Frontend Developer

Have a look at my repos! Feel free to contact me for any reason.

Projects:

  • Capstone-Project - login: "test" - "test" - next.js, mongoDB, mongoose, leaflet, next-auth
  • EventCMS - react, TypeScript, C#, sqlite, mui

Smaller

capstone_flower_box_deposit_app's People

Contributors

hannesoster avatar

Watchers

 avatar

capstone_flower_box_deposit_app's Issues

US 16 - Add different markers to map

Value Proposition

As a user
i want to have different coloured markers depending on when the customer got the last delivery
in order to see where i should pick up the boxes, or generally ask them why they dont order anymore.

Description

Bildschirmfoto 2023-08-05 um 15 58 52

Acceptance Criteria

  • On the map, the markers should be styled in red, yellow and green
  • the color should depend on when the customer got the last delivery
  • there should be an icon showing how much boxes are at the customers store

Tasks

  • add a function, which gets the difference of days between and day and the last entry of boxes/delivery
  • add a red, yellow and green marker to the map
  • add an if functionality, which sets the markers in the corresponding color depending on the last delivery
  • add an icon, which is shown if the boxes at the customer are higher than 10

US 5 - Add save and cancel button

Value Proposition

As a user
i want to have a save and cancel button
in order to save the boxes i have delivered/
received to the customer data or cancel the
process.

Description

Bildschirmfoto 2023-07-19 um 14 28 02

Acceptance Criteria

  • there should be a proper styled save and cancel button
  • if you use the save button, the delivered/ received boxes/buckets should be subtractet and the result should be added to the customer data
  • if you use the save button it should navigate you back to the default "Pfand"-page

Tasks

  • create a branch with a fitting name
  • in the app js create a state with an initialize value of the dummyArray
  • add the save button to the [id].js with a function, which adds the counter-data to the customer-data
  • add the cancel button to, which is a link to the "Pfand"-page

US1 - Add list

Value Proposition

As a user i want to have an overview of
my all my customers and their inventory,
in order to see how much boxes/buckets
the customers have at their store.

Description

Bildschirmfoto 2023-07-19 um 10 57 31

Acceptance Criteria

  • there should be a list, which shows how much buckets the customers have at their store
  • there should be a column for the customer name, the boxes and the buckets
  • there should be a header displaying the logo of the company

Tasks

  • create a branch with a fitting name
  • add a seperate Header component for the list view, which shows the logo of the company
  • add a list component to the project
  • for first add static customer data as an array of customer objects to the list file and put some objects with costumer data(name, boxes, buckets, id)
  • in the list component map over the static costumer data and display a list item for every entry

US 16 - Refactoring and Styling

Value Proposition

As a user
I want to have a nice styling and performance for the App im using

Acceptance Criteria

  • there are props for styled components in use
  • components are more reusable
  • the folder structure should be logical and understandable

Tasks

  • create a branch with a fitting name
  • build styled components with props for e.g. buttons
  • sort your folders in an understandable way

US 11 - Add stock functionality

Value Proposition

As a user
i want to see how much boxes are in stock
to know how much boxes i have for deliveries

Description

Bildschirmfoto 2023-07-25 um 16 55 43

Acceptance Criteria

  • there should be a button in the menu with "Lagerbestand" as text

  • clicking on the modal should open a modal showing how much boxes are in stock

  • when you add boxes to a customer, the stock should change

Tasks

  • add a new collection in the database called "stock", it should save a single number of boxes in stock
  • add the funcitonality to handleSave, which decreases the stock when there are boxes delivered to a customer
  • add the button to the menu and the modal which shows the stock

US15 - Add Map

Value Proposition

As a user
I want to have a map to see all my customers locations
in order to see where i could pick the most boxes on my route.

Description

Image

Acceptance Criteria

  • the menu contains a new button leading to a map
  • the map shows the location of all customers

Tasks

  • create a branch with a fitting name
  • add proper location data to the customers
  • add a map using open street map to display the customers stores
  • add a button to the menu which opens the map

US 6 - Add database to the project

Value Proposition

As a user
i want to use a databse
to achieve my data from different devices

Description

Bildschirmfoto 2023-07-19 um 14 37 36

Acceptance Criteria

  • there should be a database for the costumer data
  • the data for the list component is given by a database
  • the "Pfand"-page functionality should add the data to the database ​

Tasks

  • create a branch with a fitting name
  • Create a database in mongoDB(for first it would be enough to have some example data in it)
  • create a connect.js
  • create the model for the data
  • the list component should send a READ request to the database and display the data
  • in the [id].js should be a PUT request and the data of the counters should be added to the data after pushing the save button

US9 - Add a Update functionality

Value Proposition

As a user
i want to search for customers
in order pick one and change its data

Description

Bildschirmfoto 2023-07-25 um 14 47 44

Acceptance Criteria

  • in the menu.js there should be a link which leads to the edit-page
  • the edit page should display a input to search for customers
  • onChange it should search for customers and show them in a dropdown menu, which links to a form
  • in the form you can update the customers name or adress

Tasks

  • create a branch with a fitting name
  • add a link to the menu.js which leads to the search-page
  • you can copy the search function of the "pfand"-page and refactor it
  • the edit page should pick a customer dynamically and lead to a form
  • add the UPDATE request to the form to change the data in the database

US 20 - Authentification

Value Proposition

As a user
i want to be able to log myself in
so i can see how much entrys ive made and check if i have forgot a customer.

Description

Bildschirmfoto 2023-08-04 um 09 23 29

Acceptance Criteria

  • There is a login to authentify the users
  • only the admin can delete customers
  • if youre not logged in you dont have any access to the data

Tasks

  • Create a branch called "feature/authentification"
  • Add an authentification via credentials
  • let only the admin be able to delete customers
  • drivers/test users can do everything else and withoud a login you cant access data through the server

US10 - Add customer info

Value Proposition

As a user
i want to see some customer information
in order to know where to put the flowerboxes

Description


Bildschirmfoto 2023-07-25 um 16 39 58

Acceptance Criteria

  • there should be a customer info in the add-deposit page
  • the customer info should be editable by clicking on a button
  • clicking the button makes the customer area to an input and lets the button turn to a submit button

Tasks

  • create a branch with a fitting name
  • add a costumer info key to the model
  • let the customer data be displayed below the save and cancel button
  • add the edit button which calls an modal with an input to change the info

US 12 - Add timestamp

Value Proposition

As a user
i want to see when there where sombody for the last time at a customer,
to see if i should pick up the boxes, in case the customer is not going to order again,

Description

Bildschirmfoto 2023-07-26 um 12 01 08

Acceptance Criteria

  • there should be a last-delivery-date shown in the list
  • the date should change, if somebody adds boxes to a customer

Tasks

  • add a timestamp key to the Customer model (required:false)
  • add a timestamp functionality to the handleSave function which sends a "PUT" request to the database and changes the data in the database
  • change the list-page, so that it shows the date too

US3 - Search Input

Value Proposition

As a user
i want to search for customers
in order to select them for further actions

Description

Bildschirmfoto 2023-07-19 um 11 21 19

Acceptance Criteria

  • there should be an inputfield in the header of the "Pfand"-page
  • onChange the input should search for customers which are similar to the searchquery

Tasks

  • create a branch with a fitting name
  • add a new component called SearchHeader
  • copy the header component into it and put an inputfield inside of it
  • write a function, which searchs onChange for customers having a similar name to the searchquery
  • map over the filtered array and let the customers appear in a dropdown menu

US8 - Add sorted customer list

Value Proposition

As a user
i want to see the customer list in a proper sorted way
in order to see where are the most boxes to pick them up

Description

Bildschirmfoto 2023-07-25 um 14 29 11

Acceptance Criteria

-in the default view the list should be sorted
by how much boxes the customer has
-there should be other options to sort the list to: by name, by buckets

Tasks

  • create a branch with a fitting name
  • in the list component before mapping over the customer data, there should be an array created which is sorted by how much boxes are at the customers store
  • put an onclick function on the headings of the table, which sorts the list in the ways mentioned in the acceptance criteria

US 2 -Navigation Bar

Value Proposition

As a User i want to have a nice overview of
the pages of the app
in order to navigate through the app

Description

Bildschirmfoto 2023-07-19 um 11 07 56

Acceptance Criteria

  • there should be a navigation bar
  • the navigation bar contains a link to "Pfand", "Liste" and "Menü"
  • the links should navigate to the corresponding pages
  • the navigation bar should be aviable on every page and always be visible

Tasks

  • create a branch with a fitting name
  • create the links
  • add the links to the navigation
  • add pages with proper names for the different contents and make the links navigate to the corresponding pages
  • make sure the navigation has a fixed positioning and add it to the global components

US7 - Add Create functionality

Value Proposition

As a user
i want to have an interface to add customers
in order to add customers to the database

Description

Bildschirmfoto 2023-07-25 um 14 21 45

Acceptance Criteria

  • there should be a link in the menu-page which leads to the form to create a customer
  • when the form is submitted, there should be a new customer in the database (and in the list component)
  • the inputs should be required

Tasks

  • create a branch with a fitting name
  • add a menu.js to the project
  • in the menu.js add a "Kunden hinzufügen" Link
  • the link should navigate to the AddCustomer page which you have to create too
  • in the AddCustomer.js should be a form questioning for the name and the adress of the customer
  • the "Hinzufügen" button should send a CREATE request to the database and add the customer to the data
  • set the inputs as required to prevent wrong data-creation

US19 - Add Error Modals

Value Proposition

As a user
i want to be informed if something didnt work
in order to find another solution or try it again.

Description

Bildschirmfoto 2023-08-09 um 08 58 07

Acceptance Criteria

  • If you push the form button, and the API cant relate any position (longitude, latitude) to it, there should popup a modal which tells the user, that there was no location added to the customer

  • if everything worked fine, there should be a small model in the corner too

  • Same should happen in the edit form

  • If deposit cant be added there should be a modal too, also if it was added successfull, there should be a small modal

Tasks

  • build modal styles for the reasons
  • let the modals be displayed, if the mentioned errors occure/ everything was sucessfull

US14 - Add Navigation link

Value Proposition

As a user
I want to have a Link to start a navigation to my customer
In order to have a quick navigation without putting all the data into google maps manually.

Description

Bildschirmfoto 2023-08-02 um 12 15 10

Acceptance Criteria

  • there is a link called "Navigation" in the deposit-page
  • the link starts a google maps navigation to the customers store

Tasks

  • create a branch with a fitting name
  • use the customer data to build a google maps link
  • create a button/link refering to the google maps navigation

US 4 - Add counters for boxes/buckets

Value Proposition

As a user
I want to have an interface to count the
boxes/buckets i have delivered/received
in order to add them to the customer data in the list

Description

Bildschirmfoto 2023-07-19 um 14 23 03

Acceptance Criteria

  • there should be the name of the customer displayed
    as a heading
  • there should be 4 counters to set how much boxes/buckets
    you have delivered/received

Tasks

  • create a branch with a fitting name
  • add a new component, which dynamically searchs for
    the customer-id ([id].js)
  • it should display the customer name as an h2
  • add 4 states, one for each counter
  • for each counter display the actual count and an
    add and subtract button

US 18 - Add bucket attachments

Value Proposition

As a user,
i want to be able to count attachements of the buckets too,
in order to add them to the customer stock.

Description

Bildschirmfoto 2023-08-07 um 19 57 52

Acceptance Criteria

  • there should be a possibilty to add attachments to the customer
  • the list should show the attachments

Tasks

  • add the different attachments to the db model
  • add a counter state for the attachments
  • update the POST request in the handleSave function
  • update the list component and add an extended mode if the table view gets to confusing

US13 - Add cloudinary upload

Value Proposition

As a User
i want to be able to upload images
in order to let other users know where to store the flowers.

Description

Bildschirmfoto 2023-07-28 um 15 17 31

Acceptance Criteria

  • there is an upload input on the deposit page
  • if you upload an image its displayed and there is a button to edit the image

Tasks

  • create a branch with a fitting name
  • create a cloudinary access
  • add the cloudinary connection to your project
  • add the upload input to your deposit page

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.