{% load static %}
Pre-requisites: :- Countrycode is +44 everywhere, as client wants to launch in UK only. :- We are showing UK timezone in the application :- We have used Django pagination in the application :- We have used Stripe payment gateway
Login Section: URL: https://kwickdelivery.co.uk/login/ :- User can select his role (Customer or Driver) and can login through the system by entering correct credentials :- He can successfully login only, if a) He is not disabled by Admin b) His email address is verified Register Section: URL: https://kwickdelivery.co.uk/register/ :- Customers and Drivers can signup through this section. :- Earlier, drivers can signup through application only but now they can signup in web also. Forgot Password: :- User can reset his password from this section if he forgets his password
Different Types of Users: 1) Customers and Companies 2) Drivers 3) SuperAdmin 4) Admin
1) Customers/Companies Difference Customer: :- they can save their cards on the platform for the payments Company: :- They can use credits for the payments :- If no credits available, they can make a request for credits to Admin 1. Dashboard: :- We are showing recent 10 jobs placed by the customer 2. Quick Fare Estimate :- User can enter pickup address, drop address and selects any vehicle, he will get fare in response. 3. Place Order :- User can create request for parcel delivery through this page. :- There are 4 sections in this form: Sender details, Recipient details, parcel details and payment details :- Customer order can be of 2 types: Single drop or Multi-drop a) Single Drop - when customer wants to send parcels to only one recipient location b) Multi Drop - when customer wants to send parcels to multiple recipient locations :- User can enter multiple parcels also by clicking on '+ Create New Parcel' button which becomes active when user selects vehicle type for current parcel. :- We have used Stripe payment gateway 4. Customer Jobs: a) Ongoing Jobs b) Completed Jobs a) Ongoing Jobs :- It shows the list of all the pending parcels that are yet to be delivered at recipent address. :- By clicking on 'Recipient Name' hyperlink, customer will be redirected to parcel details page where sender, recipient, parcel details, payment details and driver details(if exist) are shown related to that parcel. :- QRCode will be shown on parcel details page b) Completed Jobs :- It shows the list of all the parcels that are delivered at recipent address. :- By clicking on 'Recipient Name' hyperlink, customer will be redirected to parcel details page where sender, recipient, parcel details, payment details and driver details(if exist) are shown related to that parcel. :- QRCode will be shown on parcel details page 5. Job Detail page: :- In this page, customer/company can see sender, recipient, parcel, driver assigned, data logging, etc :- QRCode will be shown in this page 6. Change Password: :- Customer can change his password through this section 7. About Us: :- Link to AboutUs page 8. Profile: :- User can change name, image and his phone number. 9. Notification: :- This page lists all the notifications to the customers
2) Drivers 1. Dashboard: There are 3 blocks: Total Jobs: Total jobs assigned to driver till now whether completed or pending. Total Earnings: Shown Static '0'. Jobs in Progress: Total pending jobs of driver. Below is the table showing recent 10 jobs assigned to driver :- We are showing recent 10 jobs assigned to driver 2. Profile: :- Driver can change name, image and his phone number. 4. My Jobs: a) Outstanding Jobs b) Completed Jobs a) Outstanding Jobs :- It shows the list of all the pending parcels that are yet to be delivered at recipent address by the driver. :- By clicking on 'Sender Name' hyperlink, driver will be redirected to parcel details page where sender, recipient, parcel details and driver details(if exist) are shown related to that parcel. :- QRCode will be shown on parcel details page b) Completed Jobs :- It shows the list of all the parcels that are delivered at recipent address. :- By clicking on 'Sender Name' hyperlink, driver will be redirected to parcel details page where sender, recipient, parcel details and driver details(if exist) are shown related to that parcel. :- QRCode will be shown on parcel details page 5. Job Detail page: :- In this page, driver can see sender, recipient, parcel, etc :- QRCode will be shown in this page 6. Change Password: :- Driver can change his password through this section 7. Admin Messages: :- Driver can chat with the SuperAdmin. 8. About Us: :- Link to AboutUs page 9. Notification: :- This page lists all the notifications to the drivers :- 'Check Job' link redirects to respective parcel details page
3/4) SUPERADMIN / ADMIN 1. Dashboard: There are 3 blocks: Total Customers: Total customers on the platform Total Drivers: Total drivers on the platform Total Customer Jobs: Total customers jobs on the platform Below is the table showing recent 10 jobs by customers 2. Admins: :- Only SuperAdmin can see this page :- All admins are listed on this page :- SuperAdmin can perform CRUD operation :- All accounts are by default approved by SuperAdmin 3. Messages: :- Only SuperAdmin can see this page :- SuperAdmin can chat with all the drivers 4. Customers: :- All customers are listed on this page whether they register themselves from app or from front-end web :- Admin can perform CRUD operation 5. Companies: :- All companies are listed on this page whether they register themselves from app or from front-end web :- Admin can perform CRUD operation :- Admin can see credit requests from companies :- Admin will approve or disapprove the credits request. :- If approved, credits will be transferred and company can place parcel order request. 6. Customer Jobs: a) Outstanding Jobs b) Completed Jobs a) Outstanding Jobs :- It shows the list of all the pending parcels that are yet to be delivered at recipent address. :- By clicking on sender name hyperlink, admin will be redirected to parcel details page where sender, recipient, parcel details, payment details and driver details(if exist) are shown related to that parcel. :- In the Action column, Admin can assign driver to the selected parcel. A popup will be opened showing the list of all drivers with their location and also their current parcels count. b) Completed Jobs :- It shows the list of all the parcels that are delivered at recipent address. :- By clicking on sender name hyperlink, admin will be redirected to parcel details page where sender, recipient, parcel details, payment details and driver details(if exist) are shown related to that parcel. 6. Drivers: :- All drivers are listed on this page whether they registers from app or by admin. Note: Drivers can't register themselves through web frontend. :- Admin can see driver documents and approve account accordingly :- Admin can perform CRUD operation :- Admin can track driver location and the path of assigned parcels. 7. Vehicle Types: :- Admin can perform CRUD operation :- These are the vehicles that will be shown to the customer at the time of vehicle selection while placing orders :- Fare calculation is easy to understand by looking at fields. For example: a) Travelling distance is 50 miles b) For a vehicle, fixed distance is 10 miles & base rate is 20 $. c) Additional rate per unit is 5 $. d) So, in this case total fare would be: 10 miles -> 20$ 40 miles -> 40 * 5 = 200$ Total fare = 220$ 8. Parcel Types: :- Admin can perform CRUD operation :- These are the parcel types(ex document, plants, ornaments, etc) that will be shown to the customer while placing orders 9. Change Password: :- Admin can change his password 10. Backend Control: :- Admin can set folowing things at the backend: a) Auto Assign algorithm b) Special Booking Charges (this will be added to fare if customer selects special booking feature) 11. Operational Areas: :- Admin can set operational areas at backend where the app will work. Suppose admin has set Chandigarh and working radius is 50 miles :- When customer books parcel, at the time of pickup address, separate api is created for this purpose which checks if address lies in operational area or not. 12. Profile: :- User can change name, image and his phone number. 13. Notification: :- This page lists all the notifications to the admin