B2Q Dashboard and Database
For the client AA of CLS in the United Kingdom a web portal had to be made which would connect a multitude of B2Q measurement devices. These B2Q devices can test the battery health of the car battery and indicate if it needs to be replaced. At the AA about 2200 patrols are working in different locations which are each assigned to their own Teamleader. There are also Product Leads which monitor the performance of teams (where the team leader monitors individual patrols) and calculate how many customers have been serviced.
Currently this is done manually by the AA which makes management of all the different patrols too complicated. For that reason CLS was tasked with creating an online dashboard where different members of the AA (Patrols, Teamleaders and Product Leads) have different amounts of access where they can monitor the performance of themselves/others and get some insights how many customers they services during certain periods.
I had to first create a database (where I used MS SQL) to store and format the data send by these B2Q devices. Data is received in the form of CSV files which are uploaded to a server. I had to make a streaming application in .NET which periodically checks if new files have been added, formats these and send them to the SQL server. I had to do some minor modifications to the incoming data (as everything is stored as text values in a single table without any relations). This can be seen in figure 1.
After the communication between the B2Q devices and the SQL server was made, I started to work on designing the dashboard in a UX design program named ‘Figma‘. I had to make multiple revisions until the AA was satisfied with the user flow and look of the dashboard. This can be seen in figure 2 and 3.
Finally when the AA gave a greenlight on the project I started on creating the website. I made the front end in ReactJS with a component Library named ‘Ant Design’ and the backend was made with a TypeScript Library named ‘NestJS‘. I am not allowed to share source as this contains classified information, but it is possible to ask for a demo account after signing a non-disclosure agreement.