This is a starter project for a US-based software company. We sell HR Software that runs in a SaaS environment in the cloud. We have very large enterprise customers that use our product. We would like to establish a long-term relationship with one or more freelance programmers, so this project is a relatively simple project to get to know some of the candidates. In the pipeline, we have several, larger projects using the same technology, but we want to take baby steps before we rush into a big project.
This is a simple project to display all of the active users in the system from all customers.
The tool will be used by system administrators to see who is online, and then send a broadcast message to all or some of them. The broadcast message is plain text - about 200-400 characters.
The system MUST be written using the following technologies:
1. Microsoft SQL Server
2. C#, Visual Studio version 2013
3. Visual Web GUI (see [url removed, login to view]).
4. ASP/NET runtime environment
5. .Net version 4.51
More About Visual Web GUI
Use of this tool is not negotiable. Our main product is written in this tool and we are using this project to introduce freelancers to our technology. The latest version (10) is free to download and use. There are no run-time fees or up-front costs, so this is ideal for freelance folks. The development environment is much like WinForm development, but there are some differences in how the program flows.
We will provide the database structure that you will be reading. Each customer has an Active Session table. You will be required to loop through all the databases on the database server and read the Active Session table for each customer.
Currently we have about 100 databases, so the reading process must be done in an async fashion using a timer. (We can help you with how that works in Visual Web GUI, but basically its like a timer in Windows Forms).
The main screen will be structured with a treeview on the left side and the main body of the screen will have a list of users. The list displayed will depend on the node selected in the treeview.
The tree structure will have the following nodes:
All Users -- Shows all uses, all sites
-- Staging sites
When you click on the treenode, the list of users is refreshed in the main part of the screen. This is a standard treeview/listview model.
The screen will have toolbar with the following options
[Refresh List] [Send Broadcast] [Logoff]
The send broadcast will popup a form (modelled on the current broadcast we use).
The user chooses the sites to send the broad cast to (from a list on the form), and then they enter a broadcast message and send it,