Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time

Domestic Repairs

You have been asked to develop a website for a company that specialises in the repair of domestic white goods such as washing machines and cookers.

Stage 1

The core functionality consists of three screens:

  1. When a customer logs in they should see a list of all the issues they have reported and their status. The customer should be able to change the status of a job between unassigned, in progress and resolved.
  2. There should be a link or button to take them to a screen to report a new issue, this should include:
    1. The type of appliance (from a fixed list).
    2. The age of the appliance in years (max age 10).
    3. The appliance manufacturer (from a fixed list).
    4. A multi-line description of the fault.
  3. When a customer has added a fault they should be shown a screen listing all the trades people who have knowledge of dealing with that type of appliance together with their address and phone number.

Stage 2

The intermediate tasks require you to make changes to the functionality. You will be implementing a feature to allow the technicians to log in and manage their own workload.

  1. There should be some accounts flagged as technician accounts. They will log in using the same screen but will see a different set of screens:
    1. The home screen will display a list of unassigned jobs
    2. Each job links to a details screen which has a link or button to allow the technician to pick that job
    3. They can have one job per morning or afternoon so they will need to assign any new job to a free slot
    4. Once this is done, when the customer logs in they will see that the status is changed to assigned and the details screen will include the date of visit, whether am or pm and the name of the technician
  2. The system should send a nicely-formatted html email:
    1. To the user when a technical assigns themselves the job, this should include a summary plus link to the job details page
    2. To the technician at a specified time each day with a list of the jobs they have for the following day and a list of any unallocated work, this should include links to the appropriate web pages

Stage 3

  1. A technician should be able to see a list of all the new jobs added by users over the last 3 days and multiple technicans should be able to submit blind quotes for the work including a comment.
  2. At the end of the 3 days the user should be able to see a list of the quotes provided and choose the one they want to go with.
  3. The chosen technician should then be able to schedule the work at a date and time convenient to the customer.
  4. Once the jobs has been marked as completed by the technican the customer should receive an email that takes them to the payment page.