Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: THEend8_
MIS 380N
Program requirements:
1. Define a class to store inventory information. Please refer to the UML for class design details.
2. Define a class to store information about each item purchased or returned. Refer to the UML for class
design details. This class is called TransactionItem.
3. Your program MUST read all of the information about the inventory from Inventory.txt and store each
item in an instance of the Inventory class. It is strongly recommended that you use a list of objects to
keep track of all inventory.
4. Your program MUST store information about an item purchased or returned in an instance of the
TransactionItem class. It is strongly recommended that you use a list of objects to keep track of all items
purchased or returned.
5. Customers can purchase more than one item before the invoice is generated. They can also return
more than one item. They can also purchase and return items in the same session. (i.e., your program
needs to process more than one item at a time. It should NOT just process one item, display the invoice
and then quit.
6. Your program MUST define and call the following user-defined functions, in addition to the main
function, in a class that is different from Inventory and TransactionItem (e.g.
LastName_FirstName_FP.py). You may create additional functions, but the following functions in the
main program are required for full credit:
• Process the inventory file HINT: Open the input file, create the inventory instances and add them
to the inventory list
• Print inventory menu HINT: Use the inventory data from the inventory list to create the menu.
• Get item id from the user. Verify the id is a valid item number or 0. If they enter 0, it means that
they would like to quit the program.
• Write updated inventory information to an output file (UpdatedInventory.txt). Please make sure
that your output file has a different name from the input file so that we can run the program
multiple times.
• Print an invoice. This function should print the details of the items purchased or returned (id,
name, quantity, total price for the item) as well as the total of all items, tax, and total amount due.