From 1dcca14c37f7ed3467dce8523664a4a6292dba38 Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 18 Aug 2023 21:21:54 +0100 Subject: [PATCH 1/5] =?UTF-8?q?Values=20are=20not=20sortable,=20so=20don?= =?UTF-8?q?=E2=80=99t=20show=20them=20as=20sortable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: snipe --- app/Presenters/LabelPresenter.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/app/Presenters/LabelPresenter.php b/app/Presenters/LabelPresenter.php index 5ff95d2c4d..db919e659a 100644 --- a/app/Presenters/LabelPresenter.php +++ b/app/Presenters/LabelPresenter.php @@ -21,7 +21,7 @@ class LabelPresenter extends Presenter ], [ 'field' => 'name', 'searchable' => true, - 'sortable' => true, + 'sortable' => false, 'switchable' => true, 'title' => trans('general.name'), 'visible' => true, @@ -44,14 +44,14 @@ class LabelPresenter extends Presenter ], [ 'field' => 'support_fields', 'searchable' => false, - 'sortable' => true, + 'sortable' => false, 'switchable' => true, 'title' => trans('admin/labels/table.support_fields'), 'visible' => true ], [ 'field' => 'support_asset_tag', 'searchable' => false, - 'sortable' => true, + 'sortable' => false, 'switchable' => true, 'title' => trans('admin/labels/table.support_asset_tag'), 'visible' => true, @@ -59,7 +59,7 @@ class LabelPresenter extends Presenter ], [ 'field' => 'support_1d_barcode', 'searchable' => false, - 'sortable' => true, + 'sortable' => false, 'switchable' => true, 'title' => trans('admin/labels/table.support_1d_barcode'), 'visible' => true, @@ -67,7 +67,7 @@ class LabelPresenter extends Presenter ], [ 'field' => 'support_2d_barcode', 'searchable' => false, - 'sortable' => true, + 'sortable' => false, 'switchable' => true, 'title' => trans('admin/labels/table.support_2d_barcode'), 'visible' => true, @@ -75,7 +75,7 @@ class LabelPresenter extends Presenter ], [ 'field' => 'support_logo', 'searchable' => false, - 'sortable' => true, + 'sortable' => false, 'switchable' => true, 'title' => trans('admin/labels/table.support_logo'), 'visible' => true, @@ -83,7 +83,7 @@ class LabelPresenter extends Presenter ], [ 'field' => 'support_title', 'searchable' => false, - 'sortable' => true, + 'sortable' => false, 'switchable' => true, 'title' => trans('admin/labels/table.support_title'), 'visible' => true, From d12f4564e1f1372a14033ea3dade4eade39cdd81 Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 18 Aug 2023 21:44:12 +0100 Subject: [PATCH 2/5] Added Dymo Labelwriter template Signed-off-by: snipe --- app/Models/Labels/Tapes/Dymo/LabelWriter.php | 19 ++++ .../Labels/Tapes/Dymo/LabelWriter_30252.php | 90 +++++++++++++++++++ 2 files changed, 109 insertions(+) create mode 100644 app/Models/Labels/Tapes/Dymo/LabelWriter.php create mode 100644 app/Models/Labels/Tapes/Dymo/LabelWriter_30252.php diff --git a/app/Models/Labels/Tapes/Dymo/LabelWriter.php b/app/Models/Labels/Tapes/Dymo/LabelWriter.php new file mode 100644 index 0000000000..fa427fd213 --- /dev/null +++ b/app/Models/Labels/Tapes/Dymo/LabelWriter.php @@ -0,0 +1,19 @@ +getUnit()); } + public function getMarginTop() { return Helper::convertUnit(self::MARGIN_SIDES, 'in', $this->getUnit()); } + public function getMarginBottom() { return Helper::convertUnit(self::MARGIN_SIDES, 'in', $this->getUnit());} + public function getMarginLeft() { return Helper::convertUnit(self::MARGIN_ENDS, 'in', $this->getUnit()); } + public function getMarginRight() { return Helper::convertUnit(self::MARGIN_ENDS, 'in', $this->getUnit()); } +} \ No newline at end of file diff --git a/app/Models/Labels/Tapes/Dymo/LabelWriter_30252.php b/app/Models/Labels/Tapes/Dymo/LabelWriter_30252.php new file mode 100644 index 0000000000..1b34eb113a --- /dev/null +++ b/app/Models/Labels/Tapes/Dymo/LabelWriter_30252.php @@ -0,0 +1,90 @@ +getPrintableArea(); + + $currentX = $pa->x1; + $currentY = $pa->y1; + $usableWidth = $pa->w; + + $barcodeSize = $pa->h - self::TAG_SIZE; + + if ($record->has('barcode2d')) { + static::writeText( + $pdf, $record->get('tag'), + $pa->x1, $pa->y2 - self::TAG_SIZE, + 'freemono', 'b', self::TAG_SIZE, 'C', + $barcodeSize, self::TAG_SIZE, true, 0 + ); + static::write2DBarcode( + $pdf, $record->get('barcode2d')->content, $record->get('barcode2d')->type, + $currentX, $currentY, + $barcodeSize, $barcodeSize + ); + $currentX += $barcodeSize + self::BARCODE_MARGIN; + $usableWidth -= $barcodeSize + self::BARCODE_MARGIN; + } else { + static::writeText( + $pdf, $record->get('tag'), + $pa->x1, $pa->y2 - self::TAG_SIZE, + 'freemono', 'b', self::TAG_SIZE, 'R', + $usableWidth, self::TAG_SIZE, true, 0 + ); + } + + if ($record->has('title')) { + static::writeText( + $pdf, $record->get('title'), + $currentX, $currentY, + 'freesans', '', self::TITLE_SIZE, 'L', + $usableWidth, self::TITLE_SIZE, true, 0 + ); + $currentY += self::TITLE_SIZE + self::TITLE_MARGIN; + } + + foreach ($record->get('fields') as $field) { + static::writeText( + $pdf, $field['label'], + $currentX, $currentY, + 'freesans', '', self::LABEL_SIZE, 'L', + $usableWidth, self::LABEL_SIZE, true, 0, 0 + ); + $currentY += self::LABEL_SIZE + self::LABEL_MARGIN; + + static::writeText( + $pdf, $field['value'], + $currentX, $currentY, + 'freemono', 'B', self::FIELD_SIZE, 'L', + $usableWidth, self::FIELD_SIZE, true, 0, 0.3 + ); + $currentY += self::FIELD_SIZE + self::FIELD_MARGIN; + } + } +} \ No newline at end of file From 1e82c2bfadef0a43e01c3211d23f9cc704bca745 Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 18 Aug 2023 22:17:54 +0100 Subject: [PATCH 3/5] Changed example asset name Signed-off-by: snipe --- app/Http/Controllers/LabelsController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/LabelsController.php b/app/Http/Controllers/LabelsController.php index 97608cb5e2..3e29323cb5 100755 --- a/app/Http/Controllers/LabelsController.php +++ b/app/Http/Controllers/LabelsController.php @@ -30,7 +30,7 @@ class LabelsController extends Controller $exampleAsset = new Asset(); $exampleAsset->id = 999999; - $exampleAsset->name = 'AST-AB-CD-1234'; + $exampleAsset->name = 'JEN-867-5309'; $exampleAsset->asset_tag = 'TCA-00001'; $exampleAsset->serial = 'SN9876543210'; From ffc7c4e99a9e14e6a2a2ce3dc2d7543f639fd39c Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 18 Aug 2023 22:18:09 +0100 Subject: [PATCH 4/5] use number format to constrain large number displays Signed-off-by: snipe --- app/Http/Transformers/LabelsTransformer.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/Http/Transformers/LabelsTransformer.php b/app/Http/Transformers/LabelsTransformer.php index 8e0e8ca44e..0ed5a09686 100644 --- a/app/Http/Transformers/LabelsTransformer.php +++ b/app/Http/Transformers/LabelsTransformer.php @@ -26,8 +26,8 @@ class LabelsTransformer 'name' => $label->getName(), 'unit' => $label->getUnit(), - 'width' => $label->getWidth(), - 'height' => $label->getHeight(), + 'width' => number_format($label->getWidth(), 2), + 'height' => number_format($label->getHeight(), 2), 'margin_top' => $label->getMarginTop(), 'margin_bottom' => $label->getMarginBottom(), From 45898deb1a194a59c9ca150b5d77585d97afd567 Mon Sep 17 00:00:00 2001 From: snipe Date: Fri, 18 Aug 2023 22:18:38 +0100 Subject: [PATCH 5/5] =?UTF-8?q?Don=E2=80=99t=20500=20if=20the=201D=20barco?= =?UTF-8?q?de=20doesn=E2=80=99t=20match=20the=20format=20requested=20-=20l?= =?UTF-8?q?og=20an=20error=20instead?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: snipe --- app/Models/Labels/Label.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/Models/Labels/Label.php b/app/Models/Labels/Label.php index ff759ac544..9b48a7e730 100644 --- a/app/Models/Labels/Label.php +++ b/app/Models/Labels/Label.php @@ -370,7 +370,11 @@ abstract class Label */ public final function write1DBarcode(TCPDF $pdf, $value, $type, $x, $y, $width, $height) { if (empty($value)) return; - $pdf->write1DBarcode($value, $type, $x, $y, $width, $height, null, ['stretch'=>true]); + try { + $pdf->write1DBarcode($value, $type, $x, $y, $width, $height, null, ['stretch'=>true]); + } catch (\Exception $e) { + \Log::error('The 1D barcode ' . $value . ' is not compliant with the barcode type '. $type); + } } /**