Project’s implications (S.T.A.R.) - AHgPIK/PharmacyNetworkSystem GitHub Wiki
Project’s implications
Connection to database
Situation: The project must be writing with the ADO.NET technique.
Task: Learn how to connect application to DB.
Action: I took authentication user example (which is basically already connected to DB) and build application covering it.
Result: The application has connection to DB
Different employee’s interfaces
Situation: There are two different types of users which has different task in working with application.
Task: The admins can calculate salary for each employee. And worker is the user which can selling the medicaments without any other possibility to updating DB.
Action: When user is enter to application with his login name the DB returned the type of current user (to open different interfaces) and shop id in which this employee working.
Result: Worker and admins has different interfaces.
Possibility of selling the products to client
Situation: Worker can updating DB only in case to selling medicaments from current pharmacy shop.
Task: Create some bucket in which worker can insert existing medicaments and sell them to the client.
Action: Create the table with all available medicaments (and even with those which is already sold) and create the mechanism to transfer possible number of current medicaments to the client cart.
Result: Worker can’t change directly data in DB and selling the medicaments only from current pharmacy shop.
Selling transaction
Situation: Worker can sell the products only in case when each medicaments in cart can be selling simultaneously.
Task: Create transaction selling technique.
Action: Add transaction which is trying deleting number of current medicaments in current shop and print the bill with some discount. Also create possibility updating if needed client discount.
Result: Transaction solving all this problem.
Show catalog
Situation: We must get all available catalog with unique medicament’s name.
Task: Write some stored procedure which is getting all available medicaments from current shop and add the other medicament’s names from the whole pharmacy network.
Action: The current procedure can take all names in network but with duplicates in existing medicaments in current shop. In a few days I found the way to delete duplicates from other shops.
Result: The procedure working great. The table consist of the available number of each medicaments in network.
Destination from current pharmacy shop
Situation: I imagine the idea to show destination from current pharmacy shop.
Task: Show all available number of current medicament for all pharmacy shops in ascending by the destination from current shop to each of them.
Action: I wrote the stored procedure which get all available number of current medicament in whole network and calculate the destination between two points in the plane (current and each shops).
Result: We have the great possibility to find nearest shop with current searching medicament.
Calculation salary
Situation: The admin must have the possibility to calculate salary for each employee for all periods he want.
Task: Create procedure which is can get all orders done by current worker (even in different shops) in current period.
Action: There is no problem to calculate sum of all orders
Result: Admin can calculate salary of all employees.