We're looking for a solution the show the number of street/road signs within a range of ZIP codes. This must be realized as a simple online web tool. Database scheme is as simple as follows:
Client (street signs manufacture) has many an belongs to street signs catalogue
Street signs catalogue belongs to ZIP code
Each ZIP code has a number of X signs
Each street signs catalogue has a signs name (e.g. stop sign, street name sign)
Each Client has a Login/Password, a logo image, a name, a order-email-address
Process of website: the client log in and selects ZIP code range on a static graphic (may be HTML image mapped), selecting a ZIP code range points the user to a search mask with ZIP codes with checkboxes. The user selects ZIP codes he want to count. A table of the name of signs and the total count within the selected ZIP codes is shown (summed up). This all is on one single page.
If the user want to order a catalogue of the selected street signs, he can proceed to a basket. „Add to Basket“ button is required after the count of street signs is greater zero. The basket should by in database but as simple as possible. The basket can be ordered by the user by entering 5 text fields. The order will be sent by email to the order-email-address of the client.
The client can change his password, but not his name, logo email or login name.
Without login, the website shows no infos. The main page is only a login form.
Deep linking into the system without a login should by possible, but then no password change is possible.
An admin area to add new clients is needed. Only one admin is needed. The Admin can edit all data of the clients and import new street signs lists as XLS, XLSX or CSV. The data to import is structured as: zip_code;sign_name;sign_count. The import function ads or finds the belonging street signs catalogue.
See attached document for first wireframe.
Accepted technologies: CakePHP/Rails, MySQL/PostgreSQL/MongoDB, Bootstrap 3, jQuery
Complete source code is owned by the our company after milestone is payed. The get a milestone payed, source code has to be pushed into a version repository (GIT). Source code will be checked and must be valid and run without errors.