Added different barcodes

This commit is contained in:
2025-10-31 10:33:20 +01:00
parent a327932ff5
commit 387a1538d4
5 changed files with 97 additions and 17 deletions

View File

@@ -2,8 +2,10 @@
@using Berufsschule_HAM.Models
@model HomeIndexViewModel
@inject IViewLocalizer T
@inject IConfiguration Configuration
@{
ViewData["Title"] = T["Inventory"];
string barcodeType = Configuration["BarcodeType"] ?? "EAN13";
}
<link href="https://cdn.jsdelivr.net/npm/tom-select/dist/css/tom-select.bootstrap5.min.css" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'"/>
<script src="https://cdn.jsdelivr.net/npm/tom-select/dist/js/tom-select.complete.min.js" defer></script>
@@ -72,7 +74,34 @@
async function onScanSuccess(decodedText, decodedResult) {
const rawDecoded = decodedText;
decodedText = decodedText.substr(0,11).replace(/^0+/, '');
const BARCODE_TYPE = "@barcodeType";
switch (BARCODE_TYPE.toUpperCase()) {
case "EAN13":
decodedText = decodedText.substr(0, 11);
break;
case "EAN8":
decodedText = decodedText.substr(0, 6);
break;
case "UPC":
decodedText = decodedText.substr(0, 10);
break;
case "ITF14":
decodedText = decodedText.substr(0, 12);
break;
case "MSI10":
decodedText = decodedText.slice(0,-1);
break;
case "MSI11":
decodedText = decodedText.slice(0,-1);
break;
case "MSI1010":
decodedText = decodedText.slice(0,-2);
break;
case "MSI1110":
decodedText = decodedText.slice(0,-1);
break;
}
decodedText = decodedText.replace(/^0+/, '');
console.log(`Code matched = ${decodedText}`, decodedResult);
document.getElementById("barcodeInput").value = decodedText;
@@ -105,7 +134,7 @@
<div class="row g-3">
<h6 class="fw-bold">@T["Barcode"]</h6>
<div class="col-md-6">
<svg id="ean13" class="form-control" name="Barcode" />
<svg id="@barcodeType" class="form-control" name="Barcode" />
</div>
<div class="col-md-6">
<button id="downloadBtn" class="form-control my-2 btn btn-primary">@T["Download Barcode"]</button>
@@ -184,15 +213,15 @@
viewContent.innerHTML = html;
console.log(rawDecoded);
JsBarcode("#ean13", idToEAN13(decodedText), {
format: "EAN13",
JsBarcode("#@barcodeType", getBarcodeValue("@barcodeType", decodedText), {
format: "@barcodeType",
lineColor: "#000",
width: 2,
height: 80,
displayValue: true
});
document.getElementById("downloadBtn").addEventListener("click", () => downloadBarcode("ean13", decodedText));
document.getElementById("downloadBtn").addEventListener("click", () => downloadBarcode("@barcodeType", decodedText));
document.getElementById("printBtn").addEventListener("click", () => {
addAssetIdToBatch(asset.Cn);
showToast("@T["Successfully added barcode to print batch"]", "success");