Fai Luk před 4 dny
rodič
revize
9d18acf568
2 změnil soubory, kde provedl 1412 přidání a 3 odebrání
  1. +18
    -3
      python/Bag1.py
  2. +1394
    -0
      python/Bag2.py

+ 18
- 3
python/Bag1.py Zobrazit soubor

@@ -167,6 +167,8 @@ def generate_zpl_dataflex(
batch_no: str, batch_no: str,
item_code: str, item_code: str,
item_name: str, item_name: str,
item_id: Optional[int] = None,
stock_in_line_id: Optional[int] = None,
lot_no: Optional[str] = None, lot_no: Optional[str] = None,
font_regular: str = "E:STXihei.ttf", font_regular: str = "E:STXihei.ttf",
font_bold: str = "E:STXihei.ttf", font_bold: str = "E:STXihei.ttf",
@@ -180,14 +182,18 @@ def generate_zpl_dataflex(
code = _zpl_escape((item_code or "—").strip()) code = _zpl_escape((item_code or "—").strip())
label_line = (lot_no or batch_no or "").strip() label_line = (lot_no or batch_no or "").strip()
label_esc = _zpl_escape(label_line) label_esc = _zpl_escape(label_line)
qr_value = label_line if label_line else batch_no.strip()
# QR payload: prefer JSON {"itemId":..., "stockInLineId":...} when both present; else fall back to lot/batch text
if item_id is not None and stock_in_line_id is not None:
qr_value = _zpl_escape(json.dumps({"itemId": item_id, "stockInLineId": stock_in_line_id}))
else:
qr_value = _zpl_escape(label_line if label_line else batch_no.strip())
return f"""^XA return f"""^XA
^CI28 ^CI28
^PW700 ^PW700
^LL500 ^LL500
^PO N ^PO N
^FO10,20 ^FO10,20
^BQR,4,7^FDQA,{qr_value}^FS
^BQR,4,7^FD{qr_value}^FS
^FO170,20 ^FO170,20
^A@R,72,72,{font_regular}^FD{desc}^FS ^A@R,72,72,{font_regular}^FD{desc}^FS
^FO0,290 ^FO0,290
@@ -717,8 +723,17 @@ def main() -> None:
if count is not None: if count is not None:
item_code = j.get("itemCode") or "—" item_code = j.get("itemCode") or "—"
item_name = j.get("itemName") or "—" item_name = j.get("itemName") or "—"
item_id = j.get("itemId")
stock_in_line_id = j.get("stockInLineId")
lot_no = j.get("lotNo") lot_no = j.get("lotNo")
zpl = generate_zpl_dataflex(b, item_code, item_name, lot_no=lot_no)
zpl = generate_zpl_dataflex(
b,
item_code,
item_name,
item_id=item_id,
stock_in_line_id=stock_in_line_id,
lot_no=lot_no,
)
n = 100 if count == -1 else count n = 100 if count == -1 else count
label_text = (lot_no or b).strip() label_text = (lot_no or b).strip()
try: try:


+ 1394
- 0
python/Bag2.py
Diff nebyl zobrazen, protože je příliš veliký
Zobrazit soubor


Načítá se…
Zrušit
Uložit