Quality Panel Web Interface
The Quality Panel Web Interface is a web application that runs alongside the main Commander4j desktop application. It provides a browser-based interface, designed for use on tablets or desktop browsers, through which quality technicians and panellists can manage and record the results of panel-based quality inspections.
The web service is deployed to Apache Tomcat as c4j_web_WS.war and communicates with the same database as the Commander4j desktop application. It exposes a REST API that returns JSON, allowing it to be driven from any browser without requiring a locally installed application.
Purpose
Panel inspections are used in food and drink manufacturing to assess the sensory quality of products — appearance, texture, taste, aroma, and similar attributes. A panel typically involves several trained assessors evaluating samples drawn from a production run. The Quality Panel Web Interface supports the full lifecycle of a panel session, from initial setup through to result recording and closure.
Panel Lifecycle
A panel moves through three states:
| Status | Meaning |
|---|---|
| Panel | The panel is open and in progress. Samples and results can be added. |
| Complete | Assessment is finished but results have not yet been posted back to the main QM module. |
| Closed | Results have been posted. The panel record is read-only. |
Structure
The system organises panel data in a hierarchy:
- Panel — the top-level record, associated with a process order, date, and shift
- Tray — a physical tray of samples presented to the panel; a panel may have multiple trays
- Sample — an individual product sample within a tray
- Result — one or more scored results recorded against each sample
- Sample — an individual product sample within a tray
- Tray — a physical tray of samples presented to the panel; a panel may have multiple trays
REST API Endpoints
The web service provides the following endpoints. All responses are JSON.
Panels
| Method | Path | Description |
|---|---|---|
| GET | /Panels?panelID={id} | Retrieve a single panel by ID |
| GET | /Panels?status={status} | Retrieve all panels with a given status (Panel, Complete, Closed) |
| POST | /Panels | Create a new panel |
| PUT | /Panels | Update an existing panel (e.g. change status) |
Trays
| Method | Path | Description |
|---|---|---|
| GET | /Trays?panelID={id} | Retrieve all trays for a panel |
| GET | /Trays?panelID={id}&queryType=TrayID&trayID={id} | Retrieve a specific tray by ID |
| GET | /Trays?panelID={id}&queryType=TraySequence&traySequence={n} | Retrieve a tray by its sequence number within the panel |
| POST | /Trays | Create a new tray |
| PUT | /Trays | Update a tray |
Tray Samples
| Method | Path | Description |
|---|---|---|
| GET | /TraySamples?panelID={id} | Retrieve all samples for a panel |
| POST | /TraySamples | Add a sample to a tray |
| PUT | /TraySamples | Update a sample record |
Results
| Method | Path | Description |
|---|---|---|
| POST | /TrayResults | Record a result against a sample |
| PUT | /TrayResults | Update a previously recorded result |
Supporting Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /Users | Retrieve the list of active Commander4j users (used to populate operator dropdowns) |
| GET | /Controls | Retrieve system control values |
| GET | /SelectLists | Retrieve selection list values used for grading dropdowns |
Configuration
The web application reads its database connection from a hosts.xml file located in the application's xml/hosts/ folder within the deployed WAR. This file is in the same format as the hosts.xml used by the Commander4j desktop and Setup4j. The credentials stored in this file are AES-encrypted.
The selectedHostID setting in the application determines which database connection entry is used at runtime.
Relationship to the Desktop QM Module
The Quality Panel Web Interface works alongside the desktop Quality Management module. Inspection definitions, test dictionaries, and select lists are configured through the desktop application. Panel results recorded via the web interface are stored in the same database tables and are visible in the desktop Results Analysis and Reporting screen once a panel is closed.
See also: Inspections, Dictionary, Update Samples, Results Analysis and Reporting, Quality Control Sample