Server side of our Swanky Spirits application.
The main responsibility of the inventory management system is to be able to track the inventory levels of various items that your business needs in stock. You must keep track of the quantity of each item in stock, as well its price.
Swanky Spirits is a fictitious liquor store with a physical address. The application was created for employees to be able to interact with the company’s liquor and wine database to keep track of what’s incoming and what’s being sold at the store.
Creates a new user account and auto signs them in the first time.
Takes a credentials
parameter that is a JSON object with the following keys.email
- Required - The e-mail for the new user accountpassword
- Required - Passwordpassword_confirmation
- Required - Repeat Password
Signs in used according to credentials passed previously. Responds with a user token that is used for all other requests.email
- Required - The e-mail for the new user account.password
- Required - Current Password.
Allows user to change password once they are logged in.old
- Required - Old Password.new
- Required - New Password.
Ends the current session.
Gets the inventory and shows it on main page. Populates the table accordingly to the owner in current session. For V 10. we allowed all employees to have the same level of authority on adding and editing items.
Gets the data for an individual item in the inventory and shows it on main table.
name
- Required - Name of item to be added. If next adds have the same name, it will sum the new item to the total of items currently on the table.unit_price
- Required - Unit price of the current item. You will not be able to use same name item and change the price while creating it. Instead, update it directly in the table.quantity
- Required - Quantity of items.
Fully editable table realtime. No requirements. Once a user changes another user activity on the table, it will show them as the most updated owner of that change in the user
column.
Immediately deletes item. No confirmation required on V 1.0.
We worked the entirery of the backend as a team. After our backend was up and running, we started wit the user authentication on the frontend side of the application. After we were done with both assignments, we started working on CRUD separately to be merged in the development branch together. Once all of our CRUD items were done, we started to work on special functionalities, like limiting max currency and quantity, adding decimals and working on building a user friendly inventory management so any of the employees could make updates to the table that would be tracked back to that user. We worked developing a rich layout that would make the website even better than before.