Conceptually, I am looking for a tool, or suite of software tools that can be readily integrated to help browse data using a GIS-based map (such as Google Maps). The proposed architecture resembles, but is not limited to, the following:
The technologies shown above are not fixed. For example, if OpenGEO can eliminate many of the components while adding others that are not listed (such as authentication and authorization), that would be most helpful.
Essentially, the architecture boils down to:
Map -> Filter sites -> Select sites -> CRUD
Map -> Filter sites -> Select sites -> Summary Reports
The following sections describes these two problems in more detail, using a hypothetical (broad-brushstroke) example.
Problem - CRUD
In the first screen, the user is prompted to filter by some arbitrary criteria (team names, regions, skills, equipment, and more) and select some sites:
The sites that match the filtered options are shown on the map and the user is then presented with a number of options that can be used to edit data:
If the user chooses Personnel, the system provides a CRUD screen:
The CRUD screens can be fairly complex, having simple code tables to drive them, such as:
Problem - Report
The second part of the problem is very similar to the first, but instead of visiting CRUD screens, the user can choose to generate reports:
Note that the user has already selected the sites for reporting. If the user selects the equipment option, a report is generated with summary data:
What off-the-shelf software tool(s) can provide most (if not all) of these features?
Note: The interaction need not be exactly as shown, but the main use cases must be possible.
Use Case 1 - Populate Database
- Define regions on a map.
- Put sites [building locations] on a map.
- Insert data (for each site).
Use Case 2 - Selection
- System shows a map.
- User filters by region and other criteria.
- User selects sites.
- System provides options (maintenance or reports).
Use Case 3 - Maintenance
- User selects maintenance.
- System presents complex CRUD.
- User can add, edit, or delete data.
Use Case 4 - Reports
- User selects report.
- User selects type of report to generate.
- System generates summary report.