@things-factory/product-ui 4.1.28 → 4.1.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,24 @@
1
+ import { i18next } from '@things-factory/i18n-base'
2
+
3
+ export const PICKING_STRATEGIES = [
4
+ {
5
+ name: i18next.t('label.fifo'),
6
+ value: 'FIFO'
7
+ },
8
+ {
9
+ name: i18next.t('label.fefo'),
10
+ value: 'FEFO'
11
+ },
12
+ {
13
+ name: i18next.t('label.fmfo'),
14
+ value: 'FMFO'
15
+ },
16
+ {
17
+ name: i18next.t('label.lifo'),
18
+ value: 'LIFO'
19
+ },
20
+ {
21
+ name: i18next.t('label.location'),
22
+ value: 'LOCATION'
23
+ }
24
+ ]
@@ -13,6 +13,8 @@ import { client, CustomAlert, gqlContext, PageView } from '@things-factory/shell
13
13
  import { CommonButtonStyles, ScrollbarStyles } from '@things-factory/styles'
14
14
  import { isMobileDevice } from '@things-factory/utils'
15
15
 
16
+ import { PICKING_STRATEGIES } from './constants/picking-strategy'
17
+
16
18
  class ProductList extends localize(i18next)(PageView) {
17
19
  static get properties() {
18
20
  return {
@@ -364,8 +366,16 @@ class ProductList extends localize(i18next)(PageView) {
364
366
  },
365
367
  {
366
368
  type: 'boolean',
367
- name: 'isRequireSerialNumberScanning',
368
- header: i18next.t('field.require_serial_number_scanning'),
369
+ name: 'isRequireSerialNumberScanningInbound',
370
+ header: i18next.t('field.require_serial_number_scanning_inbound'),
371
+ record: { editable: true, align: 'center' },
372
+ sortable: true,
373
+ width: 120
374
+ },
375
+ {
376
+ type: 'boolean',
377
+ name: 'isRequireSerialNumberScanningOutbound',
378
+ header: i18next.t('field.require_serial_number_scanning_outbound'),
369
379
  record: { editable: true, align: 'center' },
370
380
  sortable: true,
371
381
  width: 120
@@ -638,6 +648,22 @@ class ProductList extends localize(i18next)(PageView) {
638
648
  header: `${i18next.t('field.aux_value')} 5`,
639
649
  width: 100
640
650
  },
651
+ {
652
+ type: 'select',
653
+ name: 'pickingStrategy',
654
+ record: {
655
+ editable: true,
656
+ options: PICKING_STRATEGIES.map(strategy => strategy.value)
657
+ },
658
+ imex: {
659
+ header: `${i18next.t('field.picking_strategy')}`,
660
+ key: 'pickingStrategy',
661
+ width: 20,
662
+ type: 'string'
663
+ },
664
+ header: `${i18next.t('field.picking_strategy')}`,
665
+ width: 100
666
+ },
641
667
  {
642
668
  type: 'object',
643
669
  name: 'updater',
@@ -695,6 +721,8 @@ class ProductList extends localize(i18next)(PageView) {
695
721
  expirationPeriod
696
722
  isRequiredCheckExpiry
697
723
  isRequireSerialNumberScanning
724
+ isRequireSerialNumberScanningInbound
725
+ isRequireSerialNumberScanningOutbound
698
726
  weightUnit
699
727
  nettWeight
700
728
  grossWeight
@@ -729,6 +757,7 @@ class ProductList extends localize(i18next)(PageView) {
729
757
  brand
730
758
  subBrand
731
759
  gtin
760
+ pickingStrategy
732
761
  updater {
733
762
  name
734
763
  description
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/product-ui",
3
- "version": "4.1.28",
3
+ "version": "4.1.38",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -29,8 +29,8 @@
29
29
  "@things-factory/i18n-base": "^4.1.28",
30
30
  "@things-factory/import-ui": "^4.1.28",
31
31
  "@things-factory/layout-base": "^4.1.28",
32
- "@things-factory/product-base": "^4.1.28",
32
+ "@things-factory/product-base": "^4.1.38",
33
33
  "@things-factory/shell": "^4.1.28"
34
34
  },
35
- "gitHead": "3f902602b38074b6e4a2188ab16b2a486f812877"
35
+ "gitHead": "eb948e4d5022d89a2950aeb71f82bbf8d5607d74"
36
36
  }
@@ -2,6 +2,7 @@
2
2
  "button.add_new_product": "add new product",
3
3
  "button.back": "back",
4
4
  "button.cancel": "cancel",
5
+ "button.check_missing_x": "check missing {state.x}",
5
6
  "button.delete": "delete",
6
7
  "button.link_product": "link product",
7
8
  "button.restore": "restore",
@@ -40,10 +41,13 @@
40
41
  "field.nett_weight": "nett weight",
41
42
  "field.packing_size": "packing size",
42
43
  "field.packing_type": "packing type",
44
+ "field.picking_strategy": "picking strategy",
43
45
  "field.product_info": "product info",
44
46
  "field.product_ref": "product ref",
45
47
  "field.product_set_info": "product set info",
46
48
  "field.ref_code": "ref code",
49
+ "field.require_serial_number_scanning_inbound": "require serial number scanning inbound",
50
+ "field.require_serial_number_scanning_outbound": "require serial number scanning outbound",
47
51
  "field.require_serial_number_scanning": "require serial number scanning",
48
52
  "field.required_checking_expiry": "required checking expiry",
49
53
  "field.sku": "SKU",
@@ -61,7 +65,6 @@
61
65
  "text.data_import_successfully": "data import successfully",
62
66
  "text.data_restore_successfully": "data restore successfully",
63
67
  "text.invalid_bundle_qty_for_item_number": "invalid bundle qty for item number",
64
- "button.check_missing_x": "check missing {state.x}",
65
68
  "text.invalid_qty_for_item_number_x": "invalid qty for item #{state.x}",
66
69
  "text.there_is_nothing_to_restore": "there is nothing to restore",
67
70
  "title.combination_sets": "combination sets",
@@ -1,4 +1,5 @@
1
1
  {
2
+ "field.picking_strategy": "[ko]picking strategy",
2
3
  "field.require_serial_number_scanning": "[ko]require serial number scanning",
3
4
  "field.packing_size": "[ko]packing size",
4
5
  "field.deleted": "[ko]deleted",
@@ -50,6 +51,8 @@
50
51
  "field.product_set_info": "[ko]product set info",
51
52
  "field.ref_code": "[ko] ref code",
52
53
  "field.required_checking_expiry": "[ko]required checking expiry",
54
+ "field.require_serial_number_scanning_inbound": "[ko] require serial number scanning inbound",
55
+ "field.require_serial_number_scanning_outbound": "[ko] require serial number scanning outbound",
53
56
  "field.sku": "[ko]SKU",
54
57
  "field.sub_brand": "[ko]sub brand",
55
58
  "field.threshold_qty": "[ko]threshold qty",
@@ -1,4 +1,5 @@
1
1
  {
2
+ "field.picking_strategy": "[ms]picking strategy",
2
3
  "field.require_serial_number_scanning": "[ms]require serial number scanning",
3
4
  "field.packing_size": "[ms]packing size",
4
5
  "field.deleted": "[ms]deleted",
@@ -50,6 +51,8 @@
50
51
  "field.product_set_info": "[ms]product set info",
51
52
  "field.ref_code": "[ms]ref code",
52
53
  "field.required_checking_expiry": "[ms]required checking expiry",
54
+ "field.require_serial_number_scanning_inbound": "[ms]require serial number scanning inbound",
55
+ "field.require_serial_number_scanning_outbound": "[ms]require serial number scanning outbound",
53
56
  "field.sku": "[ms]SKU",
54
57
  "field.sub_brand": "[ms]sub brand",
55
58
  "field.threshold_qty": "[ms]threshold qty",
@@ -1,4 +1,5 @@
1
1
  {
2
+ "field.picking_strategy": "[zh]picking strategy",
2
3
  "field.require_serial_number_scanning": "[zh]require serial number scanning",
3
4
  "button.restore": "[zh]restore",
4
5
  "text.there_is_nothing_to_restore": "[zh]there is nothing to restore",
@@ -52,6 +53,8 @@
52
53
  "field.product_set_info": "[zh]product set info",
53
54
  "field.ref_code": "[zh]ref code",
54
55
  "field.required_checking_expiry": "[zh]required checking expiry",
56
+ "field.require_serial_number_scanning_inbound": "[zh]require serial number scanning inbound",
57
+ "field.require_serial_number_scanning_outbound": "[zh]require serial number scanning outbound",
55
58
  "field.sku": "[zh]SKU",
56
59
  "field.sub_brand": "[zh]sub brand",
57
60
  "field.threshold_qty": "[zh]threshold qty",