From 9db9e2673c2206356a082bf7d69c818531803d9f Mon Sep 17 00:00:00 2001 From: LD-Reborn Date: Sat, 18 Oct 2025 16:05:44 +0200 Subject: [PATCH 1/4] Added print batch management --- src/Views/Home/Assets.cshtml | 401 ++++++++++++++++++++++++++++++++++- 1 file changed, 397 insertions(+), 4 deletions(-) diff --git a/src/Views/Home/Assets.cshtml b/src/Views/Home/Assets.cshtml index a5f6fa9..4efb650 100644 --- a/src/Views/Home/Assets.cshtml +++ b/src/Views/Home/Assets.cshtml @@ -7,6 +7,15 @@ } + +

@T["Assets"]

@@ -779,7 +788,7 @@ document.addEventListener('DOMContentLoaded', () => {
- +
@@ -852,7 +861,6 @@ document.addEventListener('DOMContentLoaded', () => {
` : ''} `; viewContent.innerHTML = html; - console.log(idToEAN13(asset.Cn)); JsBarcode("#ean13", idToEAN13(asset.Cn), { format: "EAN13", lineColor: "#000", @@ -864,7 +872,8 @@ document.addEventListener('DOMContentLoaded', () => { downloadBarcode("ean13", idToEAN13(asset.Cn)); }); document.getElementById("printBtn").addEventListener("click", () => { - printBarcode("ean13"); + addAssetIdToBatch(asset.Cn); + showToast("@T["Successfully added barcode to print batch"]", "success"); }); } catch (err) { console.error(err); @@ -873,4 +882,388 @@ document.addEventListener('DOMContentLoaded', () => { }); }); }); - \ No newline at end of file + + + + + + From ee60a348d7061e0fc84b986f532a7bf0b315808c Mon Sep 17 00:00:00 2001 From: LD-Reborn Date: Sat, 18 Oct 2025 16:15:34 +0200 Subject: [PATCH 2/4] Fixed potential display bug in print --- src/Views/Home/Assets.cshtml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/Views/Home/Assets.cshtml b/src/Views/Home/Assets.cshtml index 4efb650..f0753e2 100644 --- a/src/Views/Home/Assets.cshtml +++ b/src/Views/Home/Assets.cshtml @@ -1184,7 +1184,7 @@ document.addEventListener('DOMContentLoaded', () => { border: 1px solid #ccc; padding: 4mm; width: 100%; - height: 3.2cm; + height: 3.6cm; box-sizing: border-box; } .barcode-label { @@ -1199,9 +1199,7 @@ document.addEventListener('DOMContentLoaded', () => { height: 60px; } @@media print { - .barcode-grid { - gap: 5mm; - } + .barcode-cell { border: none; } From 2e5a3703950875e7ff240a06a70c691225e9e5f2 Mon Sep 17 00:00:00 2001 From: LD-Reborn Date: Sat, 18 Oct 2025 16:20:32 +0200 Subject: [PATCH 3/4] Improved padding value in batch print preview --- src/Views/Home/Assets.cshtml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Views/Home/Assets.cshtml b/src/Views/Home/Assets.cshtml index f0753e2..a7b52e2 100644 --- a/src/Views/Home/Assets.cshtml +++ b/src/Views/Home/Assets.cshtml @@ -1182,7 +1182,7 @@ document.addEventListener('DOMContentLoaded', () => { } .barcode-cell { border: 1px solid #ccc; - padding: 4mm; + padding: 6mm; width: 100%; height: 3.6cm; box-sizing: border-box; @@ -1199,7 +1199,6 @@ document.addEventListener('DOMContentLoaded', () => { height: 60px; } @@media print { - .barcode-cell { border: none; } From 7193e2b78b64a59b52d8257fae81c64faa147e01 Mon Sep 17 00:00:00 2001 From: LD-Reborn Date: Sat, 18 Oct 2025 17:04:19 +0200 Subject: [PATCH 4/4] Added modal hiding on add asset to batch, added batch clear functionality, fixed responsive --- src/Views/Home/Assets.cshtml | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/src/Views/Home/Assets.cshtml b/src/Views/Home/Assets.cshtml index a7b52e2..2c614e5 100644 --- a/src/Views/Home/Assets.cshtml +++ b/src/Views/Home/Assets.cshtml @@ -874,6 +874,7 @@ document.addEventListener('DOMContentLoaded', () => { document.getElementById("printBtn").addEventListener("click", () => { addAssetIdToBatch(asset.Cn); showToast("@T["Successfully added barcode to print batch"]", "success"); + bootstrap.Modal.getInstance('#viewAssetModal').hide(); }); } catch (err) { console.error(err); @@ -915,10 +916,13 @@ document.addEventListener('DOMContentLoaded', () => { -
+
-
+
+

@T["Layout"]
@@ -1023,6 +1027,8 @@ document.addEventListener('DOMContentLoaded', () => { const cell = document.createElement("div"); cell.className = "barcode-cell border rounded p-1 d-flex flex-column align-items-center justify-content-center"; cell.style.minHeight = "120px"; + var isMobileM = window.innerWidth < 992 && window.innerWidth >= 576; + var isMobileS = window.innerWidth < 576; const assetId = batch[i]; if (!assetId) { @@ -1037,7 +1043,7 @@ document.addEventListener('DOMContentLoaded', () => { const asset = json.assetsModel; const label = document.createElement("div"); - label.className = "small fw-bold text-truncate"; + label.className = "small fw-bold"; label.textContent = asset?.Name || assetId; const svg = document.createElementNS("http://www.w3.org/2000/svg", "svg"); @@ -1049,12 +1055,11 @@ document.addEventListener('DOMContentLoaded', () => { cell.appendChild(svg); grid.appendChild(cell); - JsBarcode(svg, idToEAN13(asset.Cn), { format: "EAN13", lineColor: "#000", - width: 2, - height: 40, + width: isMobileM ? 1 : (isMobileS ? 0.5 : 2), + height: isMobileM ? 20 : (isMobileS ? 20 : 40), displayValue: true, fontSize: 12, }); @@ -1263,4 +1268,10 @@ document.addEventListener('DOMContentLoaded', () => { printWindow.print(); } + + function clearBatch() { + localStorage.setItem("printBatch", JSON.stringify([])); + showToast("@T["Batch cleared successfully"]", "success"); + bootstrap.Modal.getInstance('#printModal').hide(); + }