in use-cases/order-picking/src/main/resources/META-INF/resources/warehouse-api.js [184:210]
function drawTextForTrolley(strokeStyle, warehouseLocations, trolleyIndex, trolleyCount) {
const ctx = getWarehouseCanvasContext();
ctx.fillStyle = strokeStyle;
ctx.strokeStyle = "#000000";
let overlappingOrderTextList = [];
const SHELVING_ROW_HEIGHT = SHELVING_HEIGHT / SHELVING_ROWS;
const TEXT_SEPERATOR_HEIGHT = SHELVING_ROW_HEIGHT * 4;
const SEPERATION_PER_TROLLEY = TEXT_SEPERATOR_HEIGHT / trolleyCount;
for (let i = 0; i < warehouseLocations.length; i++) {
const location = warehouseLocations[i];
const shelving = SHELVINGS_MAP.get(location.shelvingId);
const point = location2Point(shelving, location.side, location.row, trolleyIndex, trolleyCount);
const pointFlooredRow = Math.floor(point.y / TEXT_SEPERATOR_HEIGHT) * TEXT_SEPERATOR_HEIGHT;
point.y = pointFlooredRow + SEPERATION_PER_TROLLEY * trolleyIndex;
addToOverlap(overlappingOrderTextList, i.toString(10), point);
}
for (let i = 0; i < overlappingOrderTextList.length; i++) {
const overlappingOrders = overlappingOrderTextList[i];
const text = '(' + overlappingOrders.orders.join(', ') + ')';
ctx.strokeText(text, overlappingOrders.x, overlappingOrders.y);
ctx.fillText(text, overlappingOrders.x, overlappingOrders.y);
}
}