@colijnit/transaction 12.1.15 → 12.1.16

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.
Files changed (148) hide show
  1. package/bundles/colijnit-transaction.umd.js +2752 -471
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.d.ts +109 -100
  4. package/colijnit-transaction.metadata.json +1 -1
  5. package/esm2015/colijnit-transaction.js +110 -101
  6. package/esm2015/lib/assets/dictionary/text.properties.js +22 -2
  7. package/esm2015/lib/component/avatar/avatar.component.js +9 -6
  8. package/esm2015/lib/component/checkout/checkout.component.js +8 -7
  9. package/esm2015/lib/component/core/base/transaction-grid-base.component.js +5 -2
  10. package/esm2015/lib/component/core/relation/customer-groups.component.js +3 -3
  11. package/esm2015/lib/component/payment/payment.component.js +112 -30
  12. package/esm2015/lib/component/payment/payment.module.js +7 -3
  13. package/esm2015/lib/component/payment-tile/payment-tile.component.js +4 -2
  14. package/esm2015/lib/component/relation-address/relation-address.component.js +3 -3
  15. package/esm2015/lib/component/transaction/transaction.component.js +7 -3
  16. package/esm2015/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.js +2 -2
  17. package/esm2015/lib/component/transaction-grid/transaction-base-grid/transaction-base-grid.component.js +7 -2
  18. package/esm2015/lib/component/transaction-grid/transaction-grid/transaction-grid.component.js +3 -1
  19. package/esm2015/lib/component/transaction-grid/transaction-history-grid/transaction-history-grid.component.js +31 -14
  20. package/esm2015/lib/component/transaction-grid/transaction-history-grid/transaction-history-grid.module.js +4 -3
  21. package/esm2015/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.component.js +131 -17
  22. package/esm2015/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.module.js +5 -3
  23. package/esm2015/lib/component/transaction-header/transaction-header-delivery/transaction-header-delivery.component.js +2 -2
  24. package/esm2015/lib/component/transaction-header/transaction-header-order/transaction-header-order.component.js +6 -2
  25. package/esm2015/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.component.js +19 -2
  26. package/esm2015/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.module.js +6 -3
  27. package/esm2015/lib/component/transaction-history-grid-status/transaction-history-grid-status.component.js +16 -3
  28. package/esm2015/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.js +19 -7
  29. package/esm2015/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.js +49 -6
  30. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access/transaction-quick-access.component.js +1 -1
  31. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.js +48 -10
  32. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.module.js +4 -3
  33. package/esm2015/lib/component/transaction-receiving-goods-details/transaction-receiving-goods-details.component.js +131 -19
  34. package/esm2015/lib/component/transaction-receiving-goods-details/transaction-receiving-goods-details.module.js +5 -2
  35. package/esm2015/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.js +57 -11
  36. package/esm2015/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.module.js +6 -3
  37. package/esm2015/lib/component/transaction-search/service/filter-request.service.js +79 -21
  38. package/esm2015/lib/component/transaction-search/service/transaction-search.service.js +1 -1
  39. package/esm2015/lib/component/transaction-search/transaction-filter/transaction-filter.component.js +4 -7
  40. package/esm2015/lib/component/transaction-search/transaction-filter-content-article/transaction-filter-content-article.component.js +53 -37
  41. package/esm2015/lib/component/transaction-search/transaction-filter-content-logistics/transaction-filter-content-logistics.component.js +79 -76
  42. package/esm2015/lib/component/transaction-search/transaction-filter-content-order/transaction-filter-content-order.component.js +67 -66
  43. package/esm2015/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.js +16 -6
  44. package/esm2015/lib/component/transaction-search/transaction-search-result/transaction-search-result.module.js +4 -2
  45. package/esm2015/lib/component/transaction-search/transaction-search.component.js +5 -6
  46. package/esm2015/lib/component/transaction-search/transaction-tile/transaction-tile.component.js +2 -5
  47. package/esm2015/lib/component/transaction-search-grid/transaction-search-grid.component.js +86 -0
  48. package/esm2015/lib/component/transaction-search-grid/transaction-search-grid.module.js +26 -0
  49. package/esm2015/lib/component/view-mode-buttons/view-mode-buttons.component.js +5 -3
  50. package/esm2015/lib/enum/icon.enum.js +3 -1
  51. package/esm2015/lib/enum/position-grid-row.enum.js +6 -0
  52. package/esm2015/lib/enum/status-type.enum.js +3 -1
  53. package/esm2015/lib/model/icon-svg.js +3 -1
  54. package/esm2015/lib/model/payment.viewmodel.js +6 -0
  55. package/esm2015/lib/model/received-goods-view-model.js +11 -0
  56. package/esm2015/lib/service/article-connector.service.js +60 -0
  57. package/esm2015/lib/service/article.service.js +25 -0
  58. package/esm2015/lib/service/ione-connector-adapter.service.js +48 -13
  59. package/esm2015/lib/service/options.service.js +3 -1
  60. package/esm2015/lib/service/payment.service.js +51 -0
  61. package/esm2015/lib/service/pending-reason.service.js +5 -5
  62. package/esm2015/lib/service/shared-connector.service.js +53 -0
  63. package/esm2015/lib/service/shared.service.js +38 -0
  64. package/esm2015/lib/service/transaction-connector.service.js +1015 -0
  65. package/esm2015/lib/service/transaction-event.service.js +29 -0
  66. package/esm2015/lib/service/transaction-image.service.js +5 -5
  67. package/esm2015/lib/service/transaction.service.js +25 -8
  68. package/fesm2015/colijnit-transaction.js +2464 -479
  69. package/fesm2015/colijnit-transaction.js.map +1 -1
  70. package/lib/component/avatar/avatar.component.d.ts +4 -2
  71. package/lib/component/core/base/components/transaction-header-block/style/_layout.scss +3 -3
  72. package/lib/component/core/base/components/transaction-header-block/style/_material-definition.scss +2 -2
  73. package/lib/component/core/base/transaction-grid-base.component.d.ts +2 -0
  74. package/lib/component/core/relation/customer-groups.component.d.ts +2 -2
  75. package/lib/component/payment/payment.component.d.ts +22 -5
  76. package/lib/component/payment/style/_layout.scss +23 -1
  77. package/lib/component/payment/style/_material-definition.scss +0 -1
  78. package/lib/component/payment/style/_theme.scss +24 -0
  79. package/lib/component/payment-tile/payment-tile.component.d.ts +1 -0
  80. package/lib/component/payment-tile/style/_layout.scss +2 -1
  81. package/lib/component/relation-address/relation-address.component.d.ts +2 -2
  82. package/lib/component/transaction/style/_material-definition.scss +1 -1
  83. package/lib/component/transaction/transaction.component.d.ts +2 -2
  84. package/lib/component/transaction-button-bar/style/_layout.scss +6 -3
  85. package/lib/component/transaction-button-bar/style/_material-definition.scss +4 -3
  86. package/lib/component/transaction-grid/transaction-base-grid/style/_theme.scss +6 -0
  87. package/lib/component/transaction-grid/transaction-grid/transaction-grid.component.d.ts +1 -0
  88. package/lib/component/transaction-grid/transaction-history-grid/style/_layout.scss +8 -0
  89. package/lib/component/transaction-grid/transaction-history-grid/style/_material-definition.scss +1 -0
  90. package/lib/component/transaction-grid/transaction-history-grid/transaction-history-grid.component.d.ts +10 -5
  91. package/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.component.d.ts +34 -1
  92. package/lib/component/transaction-header/transaction-header-delivery/style/_layout.scss +5 -0
  93. package/lib/component/transaction-header/transaction-header-delivery/style/_material-definition.scss +1 -0
  94. package/lib/component/transaction-header/transaction-header-delivery/style/_theme.scss +8 -0
  95. package/lib/component/transaction-header/transaction-header-order/style/_layout.scss +5 -0
  96. package/lib/component/transaction-header/transaction-header-payment/style/_layout.scss +1 -0
  97. package/lib/component/transaction-header/transaction-header-payment/transaction-header-payment.component.d.ts +2 -0
  98. package/lib/component/transaction-history-grid-status/style/_layout.scss +7 -7
  99. package/lib/component/transaction-history-grid-status/style/_material-definition.scss +8 -0
  100. package/lib/component/transaction-history-grid-status/transaction-history-grid-status.component.d.ts +2 -0
  101. package/lib/component/transaction-line/style/_layout.scss +2 -1
  102. package/lib/component/transaction-line/style/_material-definition.scss +4 -3
  103. package/lib/component/transaction-line/style/_theme.scss +5 -0
  104. package/lib/component/transaction-line-side-panel/style/_layout.scss +1 -0
  105. package/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.d.ts +8 -3
  106. package/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.d.ts +14 -1
  107. package/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.d.ts +24 -1
  108. package/lib/component/transaction-receiving-goods-details/style/_layout.scss +4 -4
  109. package/lib/component/transaction-receiving-goods-details/style/_material-definition.scss +3 -1
  110. package/lib/component/transaction-receiving-goods-details/transaction-receiving-goods-details.component.d.ts +27 -3
  111. package/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.d.ts +14 -1
  112. package/lib/component/transaction-search/service/filter-request.service.d.ts +17 -5
  113. package/lib/component/transaction-search/style/_material-definition.scss +2 -0
  114. package/lib/component/transaction-search/transaction-filter-content-article/transaction-filter-content-article.component.d.ts +19 -9
  115. package/lib/component/transaction-search/transaction-filter-content-logistics/transaction-filter-content-logistics.component.d.ts +10 -12
  116. package/lib/component/transaction-search/transaction-filter-content-order/transaction-filter-content-order.component.d.ts +15 -19
  117. package/lib/component/transaction-search/transaction-search-result/style/_layout.scss +4 -0
  118. package/lib/component/transaction-search/transaction-search-result/style/_theme.scss +4 -0
  119. package/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.d.ts +6 -2
  120. package/lib/component/transaction-search-grid/style/_layout.scss +6 -0
  121. package/lib/component/transaction-search-grid/style/_material-definition.scss +1 -0
  122. package/lib/component/transaction-search-grid/style/_theme.scss +6 -0
  123. package/lib/component/transaction-search-grid/style/material.scss +7 -0
  124. package/lib/component/transaction-search-grid/transaction-search-grid.component.d.ts +13 -0
  125. package/lib/component/transaction-search-grid/transaction-search-grid.module.d.ts +2 -0
  126. package/lib/component/view-mode-buttons/style/_material-definition.scss +1 -1
  127. package/lib/component/view-mode-buttons/view-mode-buttons.component.d.ts +4 -3
  128. package/lib/enum/icon.enum.d.ts +2 -0
  129. package/lib/enum/position-grid-row.enum.d.ts +4 -0
  130. package/lib/enum/status-type.enum.d.ts +3 -1
  131. package/lib/model/payment.viewmodel.d.ts +6 -0
  132. package/lib/model/received-goods-view-model.d.ts +10 -0
  133. package/lib/service/article-connector.service.d.ts +13 -0
  134. package/lib/service/article.service.d.ts +6 -0
  135. package/lib/service/ione-connector-adapter.service.d.ts +4 -1
  136. package/lib/service/options.service.d.ts +1 -0
  137. package/lib/service/payment.service.d.ts +9 -0
  138. package/lib/service/pending-reason.service.d.ts +3 -3
  139. package/lib/service/shared-connector.service.d.ts +12 -0
  140. package/lib/service/shared.service.d.ts +13 -0
  141. package/lib/service/transaction-connector.service.d.ts +119 -0
  142. package/lib/service/transaction-event.service.d.ts +65 -0
  143. package/lib/service/transaction-image.service.d.ts +2 -2
  144. package/lib/service/transaction.service.d.ts +8 -2
  145. package/lib/style/transaction-globals.scss +2 -0
  146. package/package.json +3 -3
  147. package/esm2015/lib/enum/tab-category.enum.js +0 -10
  148. package/lib/enum/tab-category.enum.d.ts +0 -8
@@ -7,7 +7,7 @@ import { SequenceName } from '@colijnit/transactionapi/build/enum/sequence-name.
7
7
  import { TransactionKind } from '@colijnit/transactionapi/build/enum/transaction-kind.enum';
8
8
  import { TransactionLineType } from '@colijnit/transactionapi/build/enum/transaction-line-type.enum';
9
9
  import { NULL_CUSTOMER_FULL_OBJECT, NULL_RELATION_OBJECT, NULL_RELATION_LIST_OBJECT } from '@colijnit/transactionapi/build/model/nul-relation-object';
10
- import { BehaviorSubject, throwError } from 'rxjs';
10
+ import { BehaviorSubject, throwError, Subject } from 'rxjs';
11
11
  import { TransactionInfoResponse } from '@colijnit/transactionapi/build/model/transaction-info-response.bo';
12
12
  import { CustomerFullObject } from '@colijnit/transactionapi/build/model/customer-full-object.bo';
13
13
  import { RelationPrivacySetting } from '@colijnit/transactionapi/build/model/relation-privacy-setting.bo';
@@ -42,9 +42,10 @@ import { Tag } from '@colijnit/transactionapi/build/model/tag';
42
42
  import { OnHoldCode } from '@colijnit/transactionapi/build/model/on-hold-code.bo';
43
43
  import { Warehouse } from '@colijnit/transactionapi/build/model/warehouse.bo';
44
44
  import { CodeDescription } from '@colijnit/transactionapi/build/model/code-description';
45
+ import { GoodsReceiptStatusWithHistory } from '@colijnit/transactionapi/build/model/goods-receipt-status-with-history.bo';
45
46
  import { RelationStatus } from '@colijnit/transactionapi/build/enum/relation-status.enum';
46
47
  import { ResolveLinePendingReasonRequest } from '@colijnit/transactionapi/build/model/resolve-pending-reason-request.bo';
47
- import { FormMasterService, FormComponent, CoDialogModule, ButtonModule, InputComboBoxModule, InputTextModule, FormModule, InputRadioButtonModule, IconModule, InputCheckboxModule, InputListboxModule, DropDownModule, InputNumberPickerModule, PriceDisplayPipeModule, InputDatePickerModule, CoDialogPromptModule, MultiSelectListModule, PopupModule, CoSidebarModule, CoGridModule, CoRichTextEditorModule, Carousel3dModule, InputTextareaModule, CollapsibleModule, ColumnAlign, SimpleGridColumnDirective, InputTextComponent, SimpleGridModule, InputSearchModule, FilterItemModule, InputDateRangePickerModule } from '@colijnit/corecomponents_v12';
48
+ import { FormMasterService, FormComponent, CoDialogModule, ButtonModule, InputComboBoxModule, InputTextModule, FormModule, InputRadioButtonModule, IconModule, InputCheckboxModule, InputListboxModule, DropDownModule, InputNumberPickerModule, PriceDisplayPipeModule, InputDatePickerModule, CoDialogPromptModule, MultiSelectListModule, PopupModule, CoSidebarModule, CoGridModule, CoRichTextEditorModule, Carousel3dModule, InputTextareaModule, CollapsibleModule, ColumnAlign, SimpleGridColumnDirective, InputTextComponent, SimpleGridModule, GridToolbarButtonModule, InputSearchModule, FilterItemModule, InputDateRangePickerModule } from '@colijnit/corecomponents_v12';
48
49
  import { FlexModule } from '@angular/flex-layout';
49
50
  import { CommunicationType } from '@colijnit/transactionapi/build/enum/communication-type.enum';
50
51
  import { ContactOption } from '@colijnit/transactionapi/build/model/contact-option.bo';
@@ -56,14 +57,26 @@ import { Address } from '@colijnit/transactionapi/build/model/address.bo';
56
57
  import { trigger, state, style, transition, animate } from '@angular/animations';
57
58
  import * as i1 from '@angular/platform-browser';
58
59
  import { DomSanitizer } from '@angular/platform-browser';
59
- import { CommonModule } from '@angular/common';
60
+ import { CommonModule, DatePipe } from '@angular/common';
60
61
  import { FormsModule, ReactiveFormsModule } from '@angular/forms';
61
62
  import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
62
63
  import { TransactionAddTextLineRequest } from '@colijnit/transactionapi/build/model/transaction-add-text-line-request.bo';
63
64
  import { StockStatus } from '@colijnit/transactionapi/build/enum/refcode/stock-status.enum';
64
65
  import { RelationRequest } from '@colijnit/transactionapi/build/model/relation-request';
66
+ import { Sharedapi } from '@colijnit/sharedapi/build/sharedapi';
67
+ import { CoDocument } from '@colijnit/sharedapi/build/model/co-document.bo';
68
+ import { PaymentMethod } from '@colijnit/transactionapi/build/model/payment-method.bo';
69
+ import { KeyPadModule } from '@colijnit/sharedcomponents';
65
70
  import { DiscountType } from '@colijnit/transactionapi/build/enum/discount-type.enum';
71
+ import { ReceiveGoodsForPurchaseOrderCorrectionRequest } from '@colijnit/transactionapi/build/model/receive-goods-for-purchase-order-correction-request.bo';
72
+ import { PurchaseOrderLineReceiptCorrectionDetails } from '@colijnit/transactionapi/build/model/purchase-order-line-receipt-correction-details.bo';
73
+ import { PurchaseOrderLineReceiptDetails } from '@colijnit/transactionapi/build/model/purchase-order-line-receipt-details.bo';
74
+ import { ReceiveGoodsForPurchaseOrderRequest } from '@colijnit/transactionapi/build/model/receive-goods-for-purchase-order-request.bo';
75
+ import { Articles } from '@colijnit/articleapi/build/articles';
76
+ import { StockLocation } from '@colijnit/articleapi/build/model/stock-location.bo';
77
+ import { GoodsReceiptStatus } from '@colijnit/transactionapi/build/model/goods-receipt-status.bo';
66
78
  import { TransactionSearchViewRequest } from '@colijnit/transactionapi/build/model/transaction-search-view-request';
79
+ import { RelationKind } from '@colijnit/transactionapi/build/enum/relation-kind.enum';
67
80
 
68
81
  var LanguageCode;
69
82
  (function (LanguageCode) {
@@ -144,6 +157,7 @@ class Dictionary {
144
157
  "ACCOUNT_DETAILS": "Accountgegevens",
145
158
  "ACCOUNT_EXPLANATION": "Het e-mailadres en wachtwoord zijn nodig om toegang te krijgen tot de gegevens. " +
146
159
  "Ook zullen we je via dit e-mailadres op de hoogte houden van de status van bestellingen.",
160
+ "ACTIVE": "Actief",
147
161
  "ADD_ARTICLE_LINE_UP": "Artikelregel boven toevoegen",
148
162
  "ADD_ARTICLE_LINE_DOWN": "Artikelregel onder toevoegen",
149
163
  "ADD_ARTICLE_TEXT_LINE_UP": "Tekstregel boven toevoegen",
@@ -206,6 +220,7 @@ class Dictionary {
206
220
  "CUSTOMER_NAME": "Klantnaam",
207
221
  "DATE": "Datum",
208
222
  "DATE_OF_BIRTH": "Geboortedatum",
223
+ "DEFINITIVE": "Definitief",
209
224
  "DELETE_TRANSACTION_LINE": "verwijderen",
210
225
  "DELETE_TRANSACTION_LINE_HINT": "Verwijderen transactieregel",
211
226
  "DELETE_TRANSACTION_LINE_FAILED": "Het verwijderen van de transactieregel is mislukt",
@@ -218,6 +233,7 @@ class Dictionary {
218
233
  "DELIVERY_COSTS": "Bezorgkosten",
219
234
  "DELIVERY_DATA": "Levergegevens",
220
235
  "DELIVERY_DATE": "Leverdatum",
236
+ "DELIVERY_DATE_DEFINITIVE": "Leverdatum definitief",
221
237
  "DELIVERY_DATE_FINAL": "Definitieve leverdatum",
222
238
  "DELIVERY_DIRECT": "Direct leverbaar",
223
239
  "DELIVERY_LOCATION": "Bezorgingslocatie",
@@ -250,6 +266,7 @@ class Dictionary {
250
266
  "FABRICATION_COST_LINE_TOTAL": "Fabricageprijs regeltotaal",
251
267
  "FEMALE": "Vrouw",
252
268
  "FIRST_NAME": "Voornaam",
269
+ "FREE": "Gratis",
253
270
  "GROSS_PRICE": "Bruto prijs",
254
271
  "GOOD_DESCRIPTION": "Artikelomschrijving",
255
272
  "HANDLED_BY": "Verkoper",
@@ -305,6 +322,7 @@ class Dictionary {
305
322
  "ORDER_RULESET": "Orderregelset",
306
323
  "ORDER_TOTAL": "Ordertotaal",
307
324
  "ORDER_TYPE": "Type bestelling",
325
+ "ORDERED": "Besteld",
308
326
  "OTHER": "Overig",
309
327
  "OVERVIEW": "Overzicht",
310
328
  "OWN_REFERENCE": "Eigen referentie",
@@ -315,6 +333,7 @@ class Dictionary {
315
333
  "PASSWORD": "Wachtwoord",
316
334
  "PAY": "Betalen",
317
335
  "PAYMENT": "Betaling",
336
+ "PAYMENT_METHOD": "Betaalmethode",
318
337
  "PERSONAL_DATA": "Basisgegevens",
319
338
  "PICKED": "Gepickt",
320
339
  "PHONE_NO": "Telefoonnummer",
@@ -354,6 +373,8 @@ class Dictionary {
354
373
  "SEARCH_IN_COLLECTION": "Zoek binnen collectie...",
355
374
  "SEARCH_ADD_ARTICLE": "Zoeken en toevoegen artikel",
356
375
  "SELECT": "Selecteren",
376
+ "SELECT_A": "Selecteer een",
377
+ "SELECT_CASH_REGISTER": "Selecteer kassa",
357
378
  "SELECT_DATE": "Selecteer een start- en einddatum",
358
379
  "SERIAL_NUMBER": "Serienummer",
359
380
  "SERVICE_NUMBER": "Servicenummer",
@@ -378,13 +399,15 @@ class Dictionary {
378
399
  "STREET": "Straatnaam",
379
400
  "TAGS": "Tags",
380
401
  "TEXT_ARTICLE_BOUND": "Text bij artikel |~",
402
+ "TO_REPORT_IN": 'Binnen te melden',
381
403
  "TO_BE_PICKED": "Te picken",
382
404
  "TO_DELIVER": "Te leveren",
405
+ "TO_PAY": "Te betalen",
383
406
  "TOTAL_AMOUNT": "Totaalbedrag",
384
407
  "TOTAL_ASSEMBLY_TIME": "Totale montagetijd",
385
408
  "TOTAL_GROSS": "Totaal bruto",
386
409
  "TOTAL_LINE_DISCOUNT": "Totale regelkorting",
387
- "TRANSACTION_DATE": "Transactiedatum",
410
+ "TRANSACTION_DATE": "Orderdatum",
388
411
  "TRANSACTION_DISCOUNT": "Totale transactie korting",
389
412
  "TRANSACTION_DISCOUNT_PERC": "% Trans. korting",
390
413
  "TRANSACTION_PRICE_DECLARATION": "Order prijsverklaring",
@@ -414,6 +437,7 @@ class Dictionary {
414
437
  "en": {
415
438
  "ACCOUNT_DETAILS": "Account details",
416
439
  "ACCOUNT_EXPLANATION": "E-mailaddress and password are needed to gain access to the data. We also notify you on this e-mailaddress about the order status",
440
+ "ACTIVE": "Active",
417
441
  "ADD_ARTICLE_LINE_UP": "Add article line up",
418
442
  "ADD_ARTICLE_LINE_DOWN": "Add article line down",
419
443
  "ADD_ARTICLE_TEXT_LINE_UP": "Add text line up",
@@ -474,6 +498,7 @@ class Dictionary {
474
498
  "CUSTOMER_NAME": "Customer name",
475
499
  "DATE": "Date",
476
500
  "DATE_OF_BIRTH": "Date of birth",
501
+ "DEFINITIVE": "Definitive",
477
502
  "DELETE_TRANSACTION_LINE": "Delete transaction line verwijderen?",
478
503
  "DELETE_TRANSACTION_LINE_HINT": "Delete transaction line",
479
504
  "DELETE_TRANSACTION_LINE_FAILED": "Deletion of transaction line has failed",
@@ -485,6 +510,7 @@ class Dictionary {
485
510
  "DELIVERY_COSTS": "Delivery costs",
486
511
  "DELIVERY_DATA": "Deliverydata",
487
512
  "DELIVERY_DATE": "Delivery date",
513
+ "DELIVERY_DATE_DEFINITIVE": "Delivery date definitive",
488
514
  "DELIVERY_DATE_FINAL": "Final delivery date",
489
515
  "DELIVERY_DIRECT": "Direct delivery",
490
516
  "DELIVERY_LOCATION": "Delivery location",
@@ -516,6 +542,7 @@ class Dictionary {
516
542
  "FABRICATION_COST_LINE_TOTAL": "Fabricationcost linetotal",
517
543
  "FEMALE": "Female",
518
544
  "FIRST_NAME": "First name",
545
+ "FREE": "Free",
519
546
  "GOOD_DESCRIPTION": "Article description",
520
547
  "GROSS_PRICE": "Gross price",
521
548
  "HANDLED_BY": "Handled by",
@@ -571,6 +598,7 @@ class Dictionary {
571
598
  "ORDER_RULESET": "Orderruleset",
572
599
  "ORDER_TOTAAL": "Order total",
573
600
  "ORDER_TYPE": "Order type",
601
+ "ORDERED": "Ordered",
574
602
  "OTHER": "Other",
575
603
  "OVERVIEW": "Overview",
576
604
  "OWN_REFERENCE": "Own reference",
@@ -581,6 +609,7 @@ class Dictionary {
581
609
  "PASSWORD": "Password",
582
610
  "PAY": "Pay",
583
611
  "PAYMENT": "Payment",
612
+ "PAYMENT_METHOD": "Payment method",
584
613
  "PERSONAL_DATA": "Personal data",
585
614
  "PHONE_NO": "Telephone number",
586
615
  "PLANNING": "Planning",
@@ -611,6 +640,8 @@ class Dictionary {
611
640
  "SEARCH_ADD_ARTICLE": "Search and add article",
612
641
  "SEARCH_IN_COLLECTION": "Search in collection...",
613
642
  "SELECT": "Select",
643
+ "SELECT_A": "Select a",
644
+ "SELECT_CASH_REGISTER": "Select cash register",
614
645
  "SELECT_DATE_RANGE": "Select a date range",
615
646
  "SERIAL_NUMBER": "Serial number",
616
647
  "SERVICE_NUMBER": "Service number",
@@ -634,8 +665,10 @@ class Dictionary {
634
665
  "STATE": "STATUS",
635
666
  "STREET": "Streetname",
636
667
  "TAGS": "Tags",
668
+ "TO_REPORT_IN": 'To report in',
637
669
  "TO_BE_PICKED": "Te be picked",
638
670
  "TO_DELIVER": "To deliver",
671
+ "TO_PAY": "To pay",
639
672
  "TOTAL_AMOUNT": "Total amount",
640
673
  "TOTAL_ASSEMBLY_TIME": "Total assembly time",
641
674
  "TOTAL_GROSS": "Gross total",
@@ -742,6 +775,7 @@ DictionaryService.ctorParameters = () => [];
742
775
  class OptionsService {
743
776
  constructor(_dictionary) {
744
777
  this._dictionary = _dictionary;
778
+ this.optionsInitialized = new BehaviorSubject(false);
745
779
  this.optionsLoaded = new BehaviorSubject(false);
746
780
  }
747
781
  set options(value) {
@@ -788,6 +822,7 @@ class OptionsService {
788
822
  if (options) {
789
823
  yield this.createSettingsFromObject(options);
790
824
  yield this._dictionary.setDictionary(this.options.languageCode);
825
+ this.optionsInitialized.next(true);
791
826
  }
792
827
  });
793
828
  }
@@ -1497,7 +1532,7 @@ CollectionCacheService.decorators = [
1497
1532
  },] }
1498
1533
  ];
1499
1534
 
1500
- class IOneConnectorAdapterService {
1535
+ class TransactionConnectorService {
1501
1536
  constructor(_optionsService, _collectionService) {
1502
1537
  this._optionsService = _optionsService;
1503
1538
  this._collectionService = _collectionService;
@@ -2425,14 +2460,58 @@ class IOneConnectorAdapterService {
2425
2460
  }
2426
2461
  });
2427
2462
  }
2463
+ getGoodsReceiptStatus(transId, lineNr) {
2464
+ return __awaiter(this, void 0, void 0, function* () {
2465
+ const response = yield this.connector.getGoodsReceiptStatus(transId, lineNr);
2466
+ if (response && response.validationResult && response.validationResult.success) {
2467
+ return this._boFactory.makeWithRawBackendData(GoodsReceiptStatusWithHistory, response.resultObject);
2468
+ }
2469
+ else {
2470
+ return Promise.reject(response.validationMessagesAsString);
2471
+ }
2472
+ });
2473
+ }
2474
+ getGoodsReceiptStatusWithHistory(transId, lineNr) {
2475
+ return __awaiter(this, void 0, void 0, function* () {
2476
+ const response = yield this.connector.getGoodsReceiptStatusWithHistory(transId, lineNr);
2477
+ if (response && response.validationResult && response.validationResult.success) {
2478
+ return this._boFactory.makeWithRawBackendData(GoodsReceiptStatusWithHistory, response.resultObject);
2479
+ }
2480
+ else {
2481
+ return Promise.reject(response.validationMessagesAsString);
2482
+ }
2483
+ });
2484
+ }
2485
+ receiveGoodsForPurchaseOrder(request) {
2486
+ return __awaiter(this, void 0, void 0, function* () {
2487
+ const response = yield this.connector.receiveGoodsForPurchaseOrder(request);
2488
+ if (response && response.validationResult && response.validationResult.success) {
2489
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
2490
+ }
2491
+ else {
2492
+ return Promise.reject(response.validationMessagesAsString);
2493
+ }
2494
+ });
2495
+ }
2496
+ receiveGoodsForPurchaseOrderCorrection(request) {
2497
+ return __awaiter(this, void 0, void 0, function* () {
2498
+ const response = yield this.connector.receiveGoodsForPurchaseOrderCorrection(request);
2499
+ if (response && response.validationResult && response.validationResult.success) {
2500
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
2501
+ }
2502
+ else {
2503
+ return Promise.reject(response.validationMessagesAsString);
2504
+ }
2505
+ });
2506
+ }
2428
2507
  }
2429
- IOneConnectorAdapterService.ɵprov = i0.ɵɵdefineInjectable({ factory: function IOneConnectorAdapterService_Factory() { return new IOneConnectorAdapterService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(CollectionCacheService)); }, token: IOneConnectorAdapterService, providedIn: "root" });
2430
- IOneConnectorAdapterService.decorators = [
2508
+ TransactionConnectorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionConnectorService_Factory() { return new TransactionConnectorService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(CollectionCacheService)); }, token: TransactionConnectorService, providedIn: "root" });
2509
+ TransactionConnectorService.decorators = [
2431
2510
  { type: Injectable, args: [{
2432
2511
  providedIn: "root"
2433
2512
  },] }
2434
2513
  ];
2435
- IOneConnectorAdapterService.ctorParameters = () => [
2514
+ TransactionConnectorService.ctorParameters = () => [
2436
2515
  { type: OptionsService },
2437
2516
  { type: CollectionCacheService }
2438
2517
  ];
@@ -2715,7 +2794,7 @@ class PendingReasonService {
2715
2794
  });
2716
2795
  }
2717
2796
  }
2718
- PendingReasonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PendingReasonService_Factory() { return new PendingReasonService(i0.ɵɵinject(DialogService), i0.ɵɵinject(OptionsService), i0.ɵɵinject(IOneConnectorAdapterService)); }, token: PendingReasonService, providedIn: "root" });
2797
+ PendingReasonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PendingReasonService_Factory() { return new PendingReasonService(i0.ɵɵinject(DialogService), i0.ɵɵinject(OptionsService), i0.ɵɵinject(TransactionConnectorService)); }, token: PendingReasonService, providedIn: "root" });
2719
2798
  PendingReasonService.decorators = [
2720
2799
  { type: Injectable, args: [{
2721
2800
  providedIn: "root"
@@ -2724,7 +2803,7 @@ PendingReasonService.decorators = [
2724
2803
  PendingReasonService.ctorParameters = () => [
2725
2804
  { type: DialogService },
2726
2805
  { type: OptionsService },
2727
- { type: IOneConnectorAdapterService }
2806
+ { type: TransactionConnectorService }
2728
2807
  ];
2729
2808
 
2730
2809
  class TransactionService extends PendingReasonService {
@@ -3207,6 +3286,26 @@ class TransactionService extends PendingReasonService {
3207
3286
  // const response: boolean = await this.connector.setRelationByUser(this.currentTransaction.uuid, username, password);
3208
3287
  // return response;
3209
3288
  // }
3289
+ getGoodsReceiptStatus(transId, lineNr) {
3290
+ return __awaiter(this, void 0, void 0, function* () {
3291
+ return yield this.connector.getGoodsReceiptStatus(transId, lineNr);
3292
+ });
3293
+ }
3294
+ getGoodsReceiptStatusWithHistory(transId, lineNr) {
3295
+ return __awaiter(this, void 0, void 0, function* () {
3296
+ return yield this.connector.getGoodsReceiptStatusWithHistory(transId, lineNr);
3297
+ });
3298
+ }
3299
+ receiveGoodsForPurchaseOrder(request) {
3300
+ return __awaiter(this, void 0, void 0, function* () {
3301
+ return yield this.connector.receiveGoodsForPurchaseOrder(request);
3302
+ });
3303
+ }
3304
+ receiveGoodsForPurchaseOrderCorrection(request) {
3305
+ return __awaiter(this, void 0, void 0, function* () {
3306
+ return yield this.connector.receiveGoodsForPurchaseOrderCorrection(request);
3307
+ });
3308
+ }
3210
3309
  getTextTypes(languageCode) {
3211
3310
  return this.connector.getTextTypes(languageCode);
3212
3311
  }
@@ -3216,17 +3315,14 @@ class TransactionService extends PendingReasonService {
3216
3315
  getArticleFullObject(goodId) {
3217
3316
  return this.connector.getArticleFullObject(goodId);
3218
3317
  }
3219
- getDocumentContent(id) {
3220
- return this.connector.getDocumentContent(id);
3221
- }
3222
3318
  getGoodIdFromArticleNr(sku) {
3223
3319
  return this.connector.getGoodIdFromArticleNr(sku);
3224
3320
  }
3225
3321
  getCountry(countryCode) {
3226
3322
  return this.connector.getCountry(countryCode);
3227
3323
  }
3228
- getCashRegisters() {
3229
- return this.connector.getCashRegisters(undefined, 1);
3324
+ getCashRegisters(branch, group) {
3325
+ return this.connector.getCashRegisters(branch, group);
3230
3326
  }
3231
3327
  getRelationNumber(relationId) {
3232
3328
  return this.connector.getRelationNumber(relationId);
@@ -3285,7 +3381,7 @@ class TransactionService extends PendingReasonService {
3285
3381
  });
3286
3382
  }
3287
3383
  }
3288
- TransactionService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionService_Factory() { return new TransactionService(i0.ɵɵinject(DialogService), i0.ɵɵinject(OptionsService), i0.ɵɵinject(IOneConnectorAdapterService)); }, token: TransactionService, providedIn: "root" });
3384
+ TransactionService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionService_Factory() { return new TransactionService(i0.ɵɵinject(DialogService), i0.ɵɵinject(OptionsService), i0.ɵɵinject(TransactionConnectorService)); }, token: TransactionService, providedIn: "root" });
3289
3385
  TransactionService.decorators = [
3290
3386
  { type: Injectable, args: [{
3291
3387
  providedIn: "root"
@@ -3313,7 +3409,7 @@ class CheckoutComponent {
3313
3409
  return __awaiter(this, void 0, void 0, function* () {
3314
3410
  if (this.checkoutRelation && this.stepRelation) {
3315
3411
  const valid = this.checkoutRelation.submit();
3316
- this.stepRelation.completed = yield this.saveRelation();
3412
+ this.stepRelation.completed = true; // await this.saveRelation();
3317
3413
  // if (valid) {
3318
3414
  // this.saveRelation();
3319
3415
  // }
@@ -3324,7 +3420,7 @@ class CheckoutComponent {
3324
3420
  return __awaiter(this, void 0, void 0, function* () {
3325
3421
  if (this.checkoutDelivery && this.stepDelivery) {
3326
3422
  const valid = this.checkoutDelivery.submit();
3327
- this.stepDelivery.completed = yield this.handleSaveDelivery();
3423
+ this.stepDelivery.completed = true; // await this.handleSaveDelivery();
3328
3424
  // if (valid) {
3329
3425
  // this.handleSaveDelivery();
3330
3426
  // }
@@ -3382,12 +3478,13 @@ CheckoutComponent.decorators = [
3382
3478
  [transaction]="service.currentTransaction"
3383
3479
  ></co-checkout-overview-delivery-edit>
3384
3480
  </co-stepper-step>
3385
- <co-stepper-step #stepPayment [index]="3" [label]="'PAYMENT' | localize" (validateStep)="handlePaymentValidation()">
3386
- <co-payment #checkoutPayment *ngIf="stepPayment.show" [amount]="service.currentTransaction.transactionTotal.netAmount"></co-payment>
3387
- </co-stepper-step>
3388
3481
  <co-stepper-step #stepOverview [index]="4" [label]="'OVERVIEW' | localize" (validateStep)="handleOverviewValidation()">
3389
3482
  </co-stepper-step>
3390
- <co-stepper-step #stepPay [index]="5" [label]="'PAY' | localize">
3483
+ <co-stepper-step #stepPayment [index]="3" [label]="'PAYMENT' | localize" (validateStep)="handlePaymentValidation()">
3484
+ <co-payment #checkoutPayment *ngIf="stepPayment.show"
3485
+ [transactionUuid]="service.currentTransaction.transactionInfo.uuid"
3486
+ [amount]="service.currentTransaction.transactionTotal.netAmount"
3487
+ ></co-payment>
3391
3488
  </co-stepper-step>
3392
3489
  <div class="co-checkout-right-panel">
3393
3490
  <div class="co-checkout-right-panel-relation">
@@ -3428,6 +3525,7 @@ var Icon;
3428
3525
  Icon["Article"] = "article";
3429
3526
  Icon["Barcode"] = "barcode";
3430
3527
  Icon["BarcodeSolid"] = "barcode_solid";
3528
+ Icon["BarsFilter"] = "bars_filter";
3431
3529
  Icon["CalendarDay"] = "calendar_day";
3432
3530
  Icon["Cancel"] = "cancel";
3433
3531
  Icon["CartFlatbedBoxesSolid"] = "cart_flatbed_boxes_solid";
@@ -3452,6 +3550,7 @@ var Icon;
3452
3550
  Icon["Tag"] = "tag";
3453
3551
  Icon["ThickLines"] = "thick_lines";
3454
3552
  Icon["ThinLines"] = "thin_lines";
3553
+ Icon["TrashBin"] = "trash_bin";
3455
3554
  Icon["TriangleDown"] = "triangle_down";
3456
3555
  Icon["TriangleUp"] = "triangle_up";
3457
3556
  Icon["Truck"] = "truck";
@@ -3989,6 +4088,7 @@ const IconSvg = {
3989
4088
  "article": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><path d=\"M37.43,15.14H12.57A2.57,2.57,0,0,0,10,17.71V32.29a2.57,2.57,0,0,0,2.57,2.57H37.43A2.57,2.57,0,0,0,40,32.29V17.71A2.57,2.57,0,0,0,37.43,15.14ZM14.29,32.71H12.15V17.29h2.14Zm2,0H15V17.29h1.29Zm2.57,0H17.54V17.29h1.29Zm3.52,0H20.2V17.29h2.15Zm2,0H23.11V17.29H24.4Zm2.06,0H25.17V17.29h1.29Zm2.66,0H27.83V17.29h1.29Zm3.51,0H31.34V17.29h1.29Zm3.34,0H33.4V17.29H36Zm2.32,0H37V17.29h1.29Z\" fill=\"#484f60\"/></svg>",
3990
4089
  "barcode": "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\"><svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"><path d=\"M2,6H4V18H2V6M5,6H6V18H5V6M7,6H10V18H7V6M11,6H12V18H11V6M14,6H16V18H14V6M17,6H20V18H17V6M21,6H22V18H21V6Z\" /></svg>",
3991
4090
  "barcode_solid": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path d=\"M40 32C53.25 32 64 42.75 64 56V456C64 469.3 53.25 480 40 480H24C10.75 480 0 469.3 0 456V56C0 42.75 10.75 32 24 32H40zM128 48V464C128 472.8 120.8 480 112 480C103.2 480 96 472.8 96 464V48C96 39.16 103.2 32 112 32C120.8 32 128 39.16 128 48zM200 32C213.3 32 224 42.75 224 56V456C224 469.3 213.3 480 200 480H184C170.7 480 160 469.3 160 456V56C160 42.75 170.7 32 184 32H200zM296 32C309.3 32 320 42.75 320 56V456C320 469.3 309.3 480 296 480H280C266.7 480 256 469.3 256 456V56C256 42.75 266.7 32 280 32H296zM448 56C448 42.75 458.7 32 472 32H488C501.3 32 512 42.75 512 56V456C512 469.3 501.3 480 488 480H472C458.7 480 448 469.3 448 456V56zM384 48C384 39.16 391.2 32 400 32C408.8 32 416 39.16 416 48V464C416 472.8 408.8 480 400 480C391.2 480 384 472.8 384 464V48z\"/></svg>",
4091
+ "bars_filter": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><path d=\"M264 392H183.1C170.8 392 160 402.8 160 415.1C160 429.2 170.8 440 183.1 440h80C277.2 440 288 429.2 288 416C288 402.8 277.2 392 264 392zM424 72H23.1C10.8 72 0 82.8 0 95.1S10.8 120 23.1 120H424c13.2 0 24-10.8 24-23.1S437.2 72 424 72zM360 232H87.1C74.8 232 64 242.8 64 255.1C64 269.2 74.8 280 87.1 280h272C373.2 280 384 269.2 384 256C384 242.8 373.2 232 360 232z\"/></svg>",
3992
4092
  "calendar_day": "<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" x=\"0px\" y=\"0px\" viewBox=\"0 0 50 50\" enable-background=\"new 0 0 50 50\" ><g><path fill=\"#022D42\" d=\"M35.4,13.7H14.6c-0.6,0-1,0.5-1,1V20h22.9v-5.2C36.4,14.2,36,13.7,35.4,13.7z M19,18.8c-1,0-1.8-0.8-1.8-1.8c0-1,0.8-1.8,1.8-1.8c1,0,1.8,0.8,1.8,1.8C20.8,18,20,18.8,19,18.8z M31,18.8c-1,0-1.8-0.8-1.8-1.8c0-1,0.8-1.8,1.8-1.8s1.8,0.8,1.8,1.8C32.7,18,32,18.8,31,18.8z\"/><path fill=\"#022D42\" d=\"M35.4,22.3v12.6L31.3,39H14.6c0,0,0,0,0,0V22.3H35.4 M36.4,21.3H13.6V39c0,0.6,0.5,1,1,1h17.2l4.7-4.7V21.3L36.4,21.3z\"/><rect x=\"18.2\" y=\"10\" fill=\"#022D42\" width=\"1.6\" height=\"5.2\"/><rect x=\"30.2\" y=\"10\" fill=\"#022D42\" width=\"1.6\" height=\"5.2\"/><rect x=\"18.6\" y=\"30.5\" fill=\"#022D42\" width=\"3.4\" height=\"3.4\"/><rect x=\"19.1\" y=\"24.8\" opacity=\"0.1\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"19.1\" y=\"27.9\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"19.1\" y=\"34.1\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"22.2\" y=\"24.8\" opacity=\"0.1\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"22.2\" y=\"27.9\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"22.2\" y=\"31\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"22.2\" y=\"34.1\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"25.4\" y=\"31\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"25.4\" y=\"24.8\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"25.4\" y=\"27.9\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"25.4\" y=\"34.1\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"31.6\" y=\"31\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"31.6\" y=\"24.8\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"31.6\" y=\"27.9\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"28.5\" y=\"27.9\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"28.5\" y=\"24.8\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"28.5\" y=\"31\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"28.5\" y=\"34.1\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"16\" y=\"24.8\" opacity=\"0.1\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"16\" y=\"27.9\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"16\" y=\"31\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/><rect x=\"16\" y=\"34.1\" opacity=\"0.25\" fill=\"#022D42\" width=\"2.4\" height=\"2.4\"/></g></svg>",
3993
4093
  "cancel": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><polygon points=\"36 35.16 30.45 35.16 14 14.84 19.55 14.84 36 35.16\" fill=\"#484f60\"/><polygon points=\"14 35.16 19.55 35.16 36 14.84 30.45 14.84 14 35.16\" fill=\"#484f60\"/></svg>",
3994
4094
  "cart_flatbed_boxes_solid": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 512\"><path d=\"M448 160h64c17.6 0 32-14.4 32-32V64c0-17.6-14.4-32-32-32h-64c-17.6 0-32 14.4-32 32v64C416 145.6 430.4 160 448 160zM448 320h128c17.6 0 32-14.4 32-32V224c0-17.6-14.4-32-32-32h-128c-17.6 0-32 14.4-32 32v64C416 305.6 430.4 320 448 320zM224 320h128c17.6 0 32-14.4 32-32V64c0-17.6-14.4-32-32-32H224C206.4 32 192 46.4 192 64v224C192 305.6 206.4 320 224 320zM640 415.1c0 17.6-14.4 32-32 31.1l-66.88-.0011c1.787 5.027 2.907 10.36 2.907 16c0 26.51-21.5 48-48.01 48c-26.51 0-47.99-21.49-47.99-48c0-5.641 1.141-10.97 2.928-16H253.1C254.9 453 256 458.4 256 464C256 490.5 234.5 512 208 512S160 490.5 160 464c0-5.641 1.13-10.97 2.917-16l-66.92 .0011C78.4 448 64 433.6 64 415.1V80C64 71.16 56.84 64 48 64H31.1C14.4 64 0 49.6 0 32S14.4 0 31.1 0H64c35.2 0 64 28.8 64 64v320h480C625.6 384 640 398.4 640 415.1z\"/></svg>",
@@ -4013,6 +4113,7 @@ const IconSvg = {
4013
4113
  "tag": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><path d=\"M40,29.15v-.68a5.28,5.28,0,0,0-1.34-3.25L24.78,11.34A5.34,5.34,0,0,0,21.53,10H11.9A1.91,1.91,0,0,0,10,11.9v9.63a5.28,5.28,0,0,0,1.34,3.25L25.22,38.66A5.28,5.28,0,0,0,28.47,40h.68a5.28,5.28,0,0,0,3.24-1.34l6.27-6.27A5.28,5.28,0,0,0,40,29.15ZM13.13,16.72a2.54,2.54,0,1,1,3.59,0A2.55,2.55,0,0,1,13.13,16.72Zm15.9,19L17.84,24.55l1.34-1.34L30.37,34.4Zm2.69-2.69L20.52,21.87l1.35-1.35,11.19,11.2Zm2.68-2.69L23.21,19.18l1.34-1.34L35.75,29Z\" fill=\"#484f60\"/></svg>",
4014
4114
  "thick_lines": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><rect x=\"10\" y=\"12.67\" width=\"30\" height=\"7\" fill=\"#484f60\"/><rect x=\"10\" y=\"21.67\" width=\"30\" height=\"7\" fill=\"#484f60\"/><rect x=\"10\" y=\"30.67\" width=\"30\" height=\"7\" fill=\"#484f60\"/></svg>",
4015
4115
  "thin_lines": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><rect x=\"10\" y=\"14.17\" width=\"30\" height=\"4\" fill=\"#484f60\"/><rect x=\"10\" y=\"20.17\" width=\"30\" height=\"4\" fill=\"#484f60\"/><rect x=\"10\" y=\"26.17\" width=\"30\" height=\"4\" fill=\"#484f60\"/><rect x=\"10\" y=\"32.17\" width=\"30\" height=\"4\" fill=\"#484f60\"/></svg>",
4116
+ "trash_bin": "<svg preserveAspectRatio=\"none\" version=\"1.1\" viewBox=\"0 0 50 50\" x=\"0px\" xmlns=\"http://www.w3.org/2000/svg\" y=\"0px\"><g transform=\" translate(14 10)\"><path d=\"M 0 0 L 0 18.215 C 0 19.99 1.439 21.429 3.215 21.429 L 15 21.429 C 16.775 21.429 18.215 19.99 18.215 18.215 L 18.215 0 L 0 0 Z M 4.287 19.286 L 2.143 19.286 L 2.143 2.143 L 4.287 2.143 L 4.287 19.286 Z M 10.18 19.286 L 8.037 19.286 L 8.037 2.143 L 10.18 2.143 L 10.18 19.286 Z M 16.072 19.286 L 13.93 19.286 L 13.93 2.143 L 16.072 2.143 L 16.072 19.286 Z\" fill=\"#1E2930\" transform=\" translate(1.891 8.571)\" /><path d=\"M 18.213 2.143 L 10.713 2.143 C 11.305 2.143 11.785 1.664 11.785 1.071 C 11.785 0.479 11.305 0 10.713 0 L 9.643 0 C 9.051 0 8.57 0.479 8.57 1.071 C 8.57 1.664 9.051 2.143 9.643 2.143 L 2.143 2.143 C 0.959 2.143 0 3.103 0 4.286 L 0 5.357 C 0 6.541 0.959 6.429 2.143 6.429 L 18.213 6.429 C 19.397 6.429 20.357 6.541 20.357 5.357 L 20.357 4.286 C 20.357 3.103 19.397 2.143 18.213 2.143 Z\" fill=\"#1E2930\" transform=\" translate(0.821 0)\" /></g></svg>",
4016
4117
  "triangle_down": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><polygon points=\"29.06 18.75 37.5 18.75 25 31.25 12.5 18.75 20.95 18.75 29.06 18.75\" fill=\"#484f60\"/></svg>",
4017
4118
  "triangle_up": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><polygon points=\"20.94 31.25 12.5 31.25 25 18.75 37.5 31.25 29.05 31.25 20.94 31.25\" fill=\"#484f60\"/></svg>",
4018
4119
  "truck": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\"><rect x=\"10\" y=\"14.75\" width=\"17.47\" height=\"12.62\" fill=\"#484f60\"/><path d=\"M37,18.11h-8V28.84H20.22a4.42,4.42,0,0,1,1.41,2.73H30a4.41,4.41,0,0,1,8.76,0H40V24.63Zm-.26,6.73H32.25a.57.57,0,0,1-.57-.57V20a.57.57,0,0,1,.57-.58h2.63a.58.58,0,0,1,.52.35L37.31,24A.58.58,0,0,1,36.78,24.84Z\" fill=\"#484f60\"/><path d=\"M14.28,28.84a4.39,4.39,0,0,0-1.42,2.73H12l-2-1.26V28.84Z\" fill=\"#484f60\"/><path d=\"M31.25,32.1a3.16,3.16,0,1,0,3.16-3.16A3.16,3.16,0,0,0,31.25,32.1Z\" fill=\"#484f60\"/><path d=\"M14.09,32.1a3.16,3.16,0,1,0,3.16-3.16A3.15,3.15,0,0,0,14.09,32.1Z\" fill=\"#484f60\"/></svg>",
@@ -4629,7 +4730,7 @@ CustomerGroupsComponent.decorators = [
4629
4730
  },] }
4630
4731
  ];
4631
4732
  CustomerGroupsComponent.ctorParameters = () => [
4632
- { type: IOneConnectorAdapterService }
4733
+ { type: TransactionConnectorService }
4633
4734
  ];
4634
4735
  CustomerGroupsComponent.propDecorators = {
4635
4736
  required: [{ type: Input }],
@@ -5193,7 +5294,7 @@ RelationAddressComponent.decorators = [
5193
5294
  ];
5194
5295
  RelationAddressComponent.ctorParameters = () => [
5195
5296
  { type: DictionaryService },
5196
- { type: IOneConnectorAdapterService },
5297
+ { type: TransactionConnectorService },
5197
5298
  { type: FormMasterService }
5198
5299
  ];
5199
5300
  RelationAddressComponent.propDecorators = {
@@ -5801,14 +5902,14 @@ class TransactionImageService {
5801
5902
  });
5802
5903
  }
5803
5904
  }
5804
- TransactionImageService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionImageService_Factory() { return new TransactionImageService(i0.ɵɵinject(IOneConnectorAdapterService)); }, token: TransactionImageService, providedIn: "root" });
5905
+ TransactionImageService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionImageService_Factory() { return new TransactionImageService(i0.ɵɵinject(TransactionConnectorService)); }, token: TransactionImageService, providedIn: "root" });
5805
5906
  TransactionImageService.decorators = [
5806
5907
  { type: Injectable, args: [{
5807
5908
  providedIn: "root"
5808
5909
  },] }
5809
5910
  ];
5810
5911
  TransactionImageService.ctorParameters = () => [
5811
- { type: IOneConnectorAdapterService }
5912
+ { type: TransactionConnectorService }
5812
5913
  ];
5813
5914
 
5814
5915
  class TransactionLineComponent {
@@ -6471,9 +6572,87 @@ ShoppingCartPreviewModule.decorators = [
6471
6572
  },] }
6472
6573
  ];
6473
6574
 
6575
+ class SharedConnectorService {
6576
+ constructor(_optionsService) {
6577
+ this._optionsService = _optionsService;
6578
+ this._boFactory = new BusinessObjectFactory();
6579
+ }
6580
+ connect() {
6581
+ return __awaiter(this, void 0, void 0, function* () {
6582
+ this.connector = new Sharedapi(this._optionsService.options);
6583
+ });
6584
+ }
6585
+ selectDocsByTableKey(table, key) {
6586
+ return new Promise((resolve, reject) => {
6587
+ return this.connector.selectDocsByTableKey(table, key).then((result) => {
6588
+ if (result.validationResult && result.validationResult.success) {
6589
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(CoDocument, result.resultObjects));
6590
+ }
6591
+ else {
6592
+ reject(result.validationMessagesAsString);
6593
+ }
6594
+ });
6595
+ });
6596
+ }
6597
+ getDocumentContent(id, thumbnail = true) {
6598
+ return new Promise((resolve, reject) => {
6599
+ return this.connector.getDocumentContent(id, thumbnail).then((result) => {
6600
+ if (result.validationResult && result.validationResult.success) {
6601
+ resolve(result.resultObject.documentContent);
6602
+ }
6603
+ else {
6604
+ reject(result.validationMessagesAsString);
6605
+ }
6606
+ });
6607
+ });
6608
+ }
6609
+ }
6610
+ SharedConnectorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SharedConnectorService_Factory() { return new SharedConnectorService(i0.ɵɵinject(OptionsService)); }, token: SharedConnectorService, providedIn: "root" });
6611
+ SharedConnectorService.decorators = [
6612
+ { type: Injectable, args: [{
6613
+ providedIn: "root"
6614
+ },] }
6615
+ ];
6616
+ SharedConnectorService.ctorParameters = () => [
6617
+ { type: OptionsService }
6618
+ ];
6619
+
6620
+ class SharedService {
6621
+ constructor(_optionsService, _connector) {
6622
+ this._optionsService = _optionsService;
6623
+ this._connector = _connector;
6624
+ this._subs = [];
6625
+ this._subs.push(this._optionsService.optionsLoaded.subscribe((loaded) => {
6626
+ if (loaded) {
6627
+ this._connector.connect();
6628
+ }
6629
+ }));
6630
+ }
6631
+ ngOnDestroy() {
6632
+ this._subs.forEach(s => s.unsubscribe());
6633
+ }
6634
+ selectDocsByTableKey(table, key) {
6635
+ return this._connector.selectDocsByTableKey(table, key);
6636
+ }
6637
+ getDocumentContent(docId, thumbnail = true) {
6638
+ return this._connector.getDocumentContent(docId, thumbnail);
6639
+ }
6640
+ }
6641
+ SharedService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SharedService_Factory() { return new SharedService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(SharedConnectorService)); }, token: SharedService, providedIn: "root" });
6642
+ SharedService.decorators = [
6643
+ { type: Injectable, args: [{
6644
+ providedIn: "root"
6645
+ },] }
6646
+ ];
6647
+ SharedService.ctorParameters = () => [
6648
+ { type: OptionsService },
6649
+ { type: SharedConnectorService }
6650
+ ];
6651
+
6474
6652
  class AvatarComponent {
6475
- constructor(_service) {
6476
- this._service = _service;
6653
+ constructor(_transactionService, _sharedService) {
6654
+ this._transactionService = _transactionService;
6655
+ this._sharedService = _sharedService;
6477
6656
  }
6478
6657
  set relationId(value) {
6479
6658
  this._relationId = value;
@@ -6489,11 +6668,11 @@ class AvatarComponent {
6489
6668
  if (!isNaN(this._relationId)) {
6490
6669
  const request = new RelationRequest();
6491
6670
  request.relationId = this._relationId;
6492
- this._service.getRelationListObjects(request).then((data) => {
6671
+ this._transactionService.getRelationListObjects(request).then((data) => {
6493
6672
  if (data && data.length > 0) {
6494
6673
  this.relation = data[0];
6495
6674
  if (this.relation && this.relation.image && this.relation.image.documentId) {
6496
- this._service.getDocumentContent(this.relation.image.documentId)
6675
+ this._sharedService.getDocumentContent(this.relation.image.documentId)
6497
6676
  .then((content) => {
6498
6677
  this.image = content;
6499
6678
  })
@@ -6521,7 +6700,8 @@ AvatarComponent.decorators = [
6521
6700
  },] }
6522
6701
  ];
6523
6702
  AvatarComponent.ctorParameters = () => [
6524
- { type: TransactionService }
6703
+ { type: TransactionService },
6704
+ { type: SharedService }
6525
6705
  ];
6526
6706
  AvatarComponent.propDecorators = {
6527
6707
  relationId: [{ type: Input }],
@@ -6602,102 +6782,1208 @@ DeliveryTypeTileModule.decorators = [
6602
6782
  },] }
6603
6783
  ];
6604
6784
 
6605
- class PaymentComponent {
6606
- constructor(_transactionService) {
6607
- this._transactionService = _transactionService;
6608
- this.icons = Icon;
6609
- this.amount = 0;
6610
- this.paymentMethodIdx = 0;
6611
- this.paymentMethods = [
6612
- { icon: this.icons.Truck, description: 'Contant' },
6613
- { icon: this.icons.IdealLogo, description: 'iDeal' },
6614
- { icon: this.icons.Truck, description: 'Creditcard' },
6615
- { icon: this.icons.Truck, description: 'Overschrijving' }
6616
- ];
6617
- this.cashRegisters = [];
6785
+ class IOneConnectorAdapterService {
6786
+ constructor(_optionsService, _collectionService) {
6787
+ this._optionsService = _optionsService;
6788
+ this._collectionService = _collectionService;
6789
+ this._boFactory = new BusinessObjectFactory();
6790
+ this._countryList = [];
6618
6791
  }
6619
- showClass() {
6620
- return true;
6792
+ connect() {
6793
+ return __awaiter(this, void 0, void 0, function* () {
6794
+ this.connector = new Transaction(this._optionsService.options);
6795
+ });
6621
6796
  }
6622
- ngOnInit() {
6623
- this._getCashRegisters();
6797
+ getArticleFullObject(goodId) {
6798
+ return __awaiter(this, void 0, void 0, function* () {
6799
+ return new Promise((resolve, reject) => {
6800
+ return this.connector.getArticleFullObject(goodId).then((result) => {
6801
+ if (result.validationResult && result.validationResult.success) {
6802
+ if (result.resultObject) {
6803
+ resolve(this._boFactory.makeWithRawBackendData(ArticleFullObject, result.resultObject));
6804
+ }
6805
+ }
6806
+ else {
6807
+ reject(result.validationMessagesAsString);
6808
+ }
6809
+ });
6810
+ });
6811
+ });
6624
6812
  }
6625
- _getCashRegisters() {
6626
- this._transactionService.getCashRegisters().then((cashRegisters) => {
6627
- this.cashRegisters = cashRegisters;
6813
+ getGoodIdFromArticleNr(articleNr) {
6814
+ return new Promise((resolve, reject) => {
6815
+ return this.connector.getGoodIdFromArticleNr(articleNr).then((result) => {
6816
+ if (result.validationResult && result.validationResult.success) {
6817
+ resolve(result.resultObject);
6818
+ }
6819
+ else {
6820
+ reject(result.validationMessagesAsString);
6821
+ }
6822
+ });
6628
6823
  });
6629
6824
  }
6630
- }
6631
- PaymentComponent.decorators = [
6632
- { type: Component, args: [{
6633
- selector: "co-payment",
6634
- template: `
6635
- <div class="payment-wrapper">
6636
- <div class="payment-methods-header">
6637
- <span class="payment-header-title" [textContent]="'Selecteer een' | localize"></span>
6638
- <span class="payment-header-title extra" [textContent]="'gratis' | localize:false"></span>
6639
- <span class="payment-header-title" [textContent]="'betaalmethode' | localize:false"></span>
6640
- </div>
6641
- <div class="payment-methods">
6642
- <co-payment-tile *ngFor="let paymentMethod of paymentMethods; let index = index"
6643
- [icon]="paymentMethod.icon"
6644
- [description]="paymentMethod.description"
6645
- [selected]="paymentMethodIdx === index"
6646
- (selectedChange)="paymentMethodIdx = index"
6647
- ></co-payment-tile>
6648
- </div>
6649
- <div class="payment-cash-register-header">
6650
- <span class="payment-header-title" [textContent]="'Selecteer kassa' | localize"></span>
6651
- </div>
6652
- <div class="payment-methods">
6653
- <co-payment-tile *ngFor="let cashRegister of cashRegisters"
6654
- [icon]="cashRegister.icon"
6655
- [description]="cashRegister.description"
6656
- ></co-payment-tile>
6657
- </div>
6658
- <div class="payment-to-pay">
6659
- <div [textContent]="'Te betalen' | localize"></div>
6660
- <div class="payment-amount" [textContent]="amount | priceDisplay"></div>
6661
- </div>
6662
- </div>
6663
- `,
6664
- encapsulation: ViewEncapsulation.None
6665
- },] }
6666
- ];
6667
- PaymentComponent.ctorParameters = () => [
6668
- { type: TransactionService }
6669
- ];
6670
- PaymentComponent.propDecorators = {
6671
- amount: [{ type: Input }],
6672
- showClass: [{ type: HostBinding, args: ["class.co-payment",] }]
6673
- };
6674
-
6675
- class PaymentTileComponent {
6676
- constructor() {
6677
- this.selected = false;
6678
- this.selectedChange = new EventEmitter();
6825
+ getSingleImage(nodeId, publication, includeMimetype, thumb) {
6826
+ return new Promise((resolve, reject) => {
6827
+ return this.connector.getSingleImage(nodeId, publication, includeMimetype, thumb).then((result) => {
6828
+ if (result.validationResult && result.validationResult.success) {
6829
+ if (result.resultObject && result.resultObject.filePath !== null && result.resultObject.filePath !== undefined && result.resultObject.filePath !== "") {
6830
+ return resolve(ImageUtils.getFixedImageFilepathUrl(result.resultObject.filePath));
6831
+ }
6832
+ else {
6833
+ if (result.resultObject) {
6834
+ if (includeMimetype) {
6835
+ return resolve(ImageUtils.getDocBodyWithMimeTypeDefinition(result.resultObject.fileName, thumb ? result.resultObject.thumbnailBody : result.resultObject.documentBody));
6836
+ }
6837
+ return resolve(thumb ? result.resultObject.thumbnailBody : result.resultObject.documentBody);
6838
+ }
6839
+ else { // no image
6840
+ resolve("");
6841
+ }
6842
+ }
6843
+ }
6844
+ else {
6845
+ reject(result.validationMessagesAsString);
6846
+ }
6847
+ });
6848
+ });
6679
6849
  }
6680
- showClass() {
6681
- return true;
6850
+ getCountries() {
6851
+ if (this._countryList.length > 0) {
6852
+ return new Promise((resolve) => {
6853
+ resolve(this._countryList);
6854
+ });
6855
+ }
6856
+ return new Promise((resolve, reject) => {
6857
+ return this.connector.getCountries().then((result) => {
6858
+ if (result.validationResult && result.validationResult.success) {
6859
+ this._countryList = result.resultObjects;
6860
+ resolve(result.resultObjects);
6861
+ }
6862
+ else {
6863
+ reject(result.validationMessagesAsString);
6864
+ }
6865
+ });
6866
+ });
6682
6867
  }
6683
- }
6684
- PaymentTileComponent.decorators = [
6685
- { type: Component, args: [{
6686
- selector: "co-payment-tile",
6687
- template: `
6688
- <co-tile [selected]="selected" (selectedChange)="selectedChange.emit($event)">
6689
- <div class="payment-tile-wrapper">
6690
- <icon class="payment-tile-icon" [icon]="icon"></icon>
6691
- <span class="payment-tile-description" [textContent]="description | localize"></span>
6692
- </div>
6693
- </co-tile>
6694
- `,
6695
- encapsulation: ViewEncapsulation.None
6696
- },] }
6697
- ];
6698
- PaymentTileComponent.propDecorators = {
6699
- selected: [{ type: Input }],
6868
+ getCustomerGroups() {
6869
+ return __awaiter(this, void 0, void 0, function* () {
6870
+ const response = yield this.connector.getCustomerGroups();
6871
+ if (response && response.validationResult && response.validationResult.success) {
6872
+ return response.resultObjects;
6873
+ }
6874
+ else {
6875
+ return [];
6876
+ }
6877
+ });
6878
+ }
6879
+ getCountry(countryCode) {
6880
+ return __awaiter(this, void 0, void 0, function* () {
6881
+ yield this.getCountries();
6882
+ return this._countryList.find(country => country.code === countryCode);
6883
+ });
6884
+ }
6885
+ getPrivacySettings() {
6886
+ return new Promise((resolve, reject) => {
6887
+ return this.connector.getPrivacySettings().then((result) => {
6888
+ if (result.validationResult && result.validationResult.success) {
6889
+ resolve(result.resultObjects);
6890
+ }
6891
+ else {
6892
+ reject(result.validationMessagesAsString);
6893
+ }
6894
+ });
6895
+ });
6896
+ }
6897
+ getRelationPrivacySettings() {
6898
+ return __awaiter(this, void 0, void 0, function* () {
6899
+ const privacySettings = [];
6900
+ const basePrivacySettings = yield this.getPrivacySettings();
6901
+ for (let i = 0, len = basePrivacySettings.length; i < len; i++) {
6902
+ const basePrivSetting = basePrivacySettings[i];
6903
+ const newRelPrivSet = this._boFactory.instantiateNewBo(RelationPrivacySetting);
6904
+ newRelPrivSet.applyBasePrivacySettingValues(basePrivSetting);
6905
+ privacySettings.push(newRelPrivSet);
6906
+ }
6907
+ return privacySettings;
6908
+ });
6909
+ }
6910
+ getMarketingCodes() {
6911
+ return new Promise((resolve, reject) => {
6912
+ return this.connector.getMarketingCodes().then((result) => {
6913
+ if (result.validationResult && result.validationResult.success) {
6914
+ resolve(result.resultObjects);
6915
+ }
6916
+ else {
6917
+ reject(result.validationMessagesAsString);
6918
+ }
6919
+ });
6920
+ });
6921
+ }
6922
+ createTransaction(kind, branchNr) {
6923
+ return new Promise((resolve, reject) => {
6924
+ return this.connector.createTransaction(kind, branchNr).then((result) => {
6925
+ if (result.validationResult && result.validationResult.success) {
6926
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
6927
+ }
6928
+ else {
6929
+ reject(result.validationMessagesAsString);
6930
+ }
6931
+ });
6932
+ });
6933
+ }
6934
+ getArticleBoundTextLinesOfArticleLine(articleLineUuid) {
6935
+ return __awaiter(this, void 0, void 0, function* () {
6936
+ const result = yield this.connector.getArticleBoundTextLinesOfArticleLine(articleLineUuid);
6937
+ if (result.validationResult && result.validationResult.success) {
6938
+ return this._boFactory.makeBOArrayFromRawBackendDataArray(TransactionLineInfo, result.resultObject);
6939
+ }
6940
+ else {
6941
+ return [];
6942
+ }
6943
+ });
6944
+ }
6945
+ getTransactionByNrAndKind(kind, transactionNo) {
6946
+ return new Promise((resolve, reject) => {
6947
+ return this.connector.getTransactionByNrAndKind(kind, transactionNo).then((result) => {
6948
+ if (result.validationResult && result.validationResult.success) {
6949
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
6950
+ }
6951
+ else {
6952
+ reject(result.validationMessagesAsString);
6953
+ }
6954
+ });
6955
+ });
6956
+ }
6957
+ getTransactionById(transactionId) {
6958
+ return new Promise((resolve, reject) => {
6959
+ return this.connector.getTransactionById(transactionId).then((result) => {
6960
+ if (result.validationResult && result.validationResult.success) {
6961
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
6962
+ }
6963
+ else {
6964
+ reject(result.validationMessagesAsString);
6965
+ }
6966
+ });
6967
+ });
6968
+ }
6969
+ commit() {
6970
+ return this.connector.commit();
6971
+ }
6972
+ saveTransaction(uuid) {
6973
+ return new Promise((resolve, reject) => {
6974
+ return this.connector.saveTransaction(uuid).then((result) => {
6975
+ if (result.validationResult && result.validationResult.success) {
6976
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
6977
+ }
6978
+ else {
6979
+ reject(result.validationMessagesAsString);
6980
+ }
6981
+ });
6982
+ });
6983
+ }
6984
+ getCustomerFullObject(relationNo) {
6985
+ return new Promise((resolve, reject) => {
6986
+ return this.connector.getCustomerFullObject(relationNo).then((result) => {
6987
+ if (result.validationResult && result.validationResult.success) {
6988
+ resolve(this._boFactory.makeWithRawBackendData(CustomerFullObject, result.resultObject));
6989
+ }
6990
+ else {
6991
+ reject(result.validationMessagesAsString);
6992
+ }
6993
+ });
6994
+ });
6995
+ }
6996
+ getCashRegisters(branch, group) {
6997
+ return __awaiter(this, void 0, void 0, function* () {
6998
+ const response = yield this.connector.getCashRegister(branch, group);
6999
+ if (response.validationResult && response.validationResult.success) {
7000
+ return this._boFactory.makeBOArrayFromRawBackendDataArray(CashRegister, response.resultObjects);
7001
+ }
7002
+ else {
7003
+ return [];
7004
+ }
7005
+ });
7006
+ }
7007
+ getRelationNumber(relationId) {
7008
+ return __awaiter(this, void 0, void 0, function* () {
7009
+ return new Promise((resolve, reject) => {
7010
+ return this.connector.getRelationNumber(relationId).then((result) => {
7011
+ if (result.validationResult && result.validationResult.success) {
7012
+ resolve(result.resultObject);
7013
+ }
7014
+ else {
7015
+ reject(result.validationMessagesAsString);
7016
+ }
7017
+ });
7018
+ });
7019
+ });
7020
+ }
7021
+ getPriceLists(code) {
7022
+ return __awaiter(this, void 0, void 0, function* () {
7023
+ const response = yield this.connector.getPriceLists(code);
7024
+ if (response.validationResult && response.validationResult.success) {
7025
+ return this._boFactory.makeBOArrayFromRawBackendDataArray(PriceList, response.resultObjects);
7026
+ }
7027
+ else {
7028
+ return []; // todo: handle error messages in a good way
7029
+ }
7030
+ });
7031
+ }
7032
+ getVatList(onlyValid = false) {
7033
+ return __awaiter(this, void 0, void 0, function* () {
7034
+ const response = yield this.connector.getVatList(onlyValid);
7035
+ if (response.validationResult && response.validationResult.success) {
7036
+ return this._boFactory.makeBOArrayFromRawBackendDataArray(Vat, response.resultObjects);
7037
+ }
7038
+ else {
7039
+ return []; // todo: handle error messages in a good way
7040
+ }
7041
+ });
7042
+ }
7043
+ searchTransactions(request) {
7044
+ return __awaiter(this, void 0, void 0, function* () {
7045
+ const response = yield this.connector.searchTransactions(request);
7046
+ if (response.validationResult && response.validationResult.success) {
7047
+ return this._boFactory.makeBOArrayFromRawBackendDataArray(TransactionSearchView, response.resultObjects);
7048
+ }
7049
+ else {
7050
+ return []; // todo: handle error messages in a good way
7051
+ }
7052
+ });
7053
+ }
7054
+ getSequenceValue(sequenceName) {
7055
+ return __awaiter(this, void 0, void 0, function* () {
7056
+ return new Promise((resolve, reject) => {
7057
+ return this.connector.getSequenceValue(sequenceName).then((result) => {
7058
+ if (result.validationResult && result.validationResult.success) {
7059
+ resolve(result.resultObject);
7060
+ }
7061
+ else {
7062
+ reject(result.validationMessagesAsString);
7063
+ }
7064
+ });
7065
+ });
7066
+ });
7067
+ }
7068
+ insertCustomer(relation) {
7069
+ return __awaiter(this, void 0, void 0, function* () {
7070
+ return new Promise((resolve, reject) => {
7071
+ return this.connector.insertCustomer(relation).then((result) => {
7072
+ if (result.validationResult && result.validationResult.success) {
7073
+ resolve(this._boFactory.makeWithRawBackendData(CustomerFullObject, result.resultObject));
7074
+ }
7075
+ else {
7076
+ reject(result.validationMessagesAsString);
7077
+ }
7078
+ });
7079
+ });
7080
+ });
7081
+ }
7082
+ updateCustomer(relation) {
7083
+ return __awaiter(this, void 0, void 0, function* () {
7084
+ return new Promise((resolve, reject) => {
7085
+ return this.connector.updateCustomer(relation).then((result) => {
7086
+ if (result.validationResult && result.validationResult.success) {
7087
+ resolve(this._boFactory.makeWithRawBackendData(CustomerFullObject, result.resultObject));
7088
+ }
7089
+ else {
7090
+ reject(result.validationMessagesAsString);
7091
+ }
7092
+ });
7093
+ });
7094
+ });
7095
+ }
7096
+ getDeliveryMethods() {
7097
+ return __awaiter(this, void 0, void 0, function* () {
7098
+ return new Promise((resolve, reject) => {
7099
+ return this.connector.getDeliveryMethods().then((result) => {
7100
+ if (result.validationResult && result.validationResult.success) {
7101
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(DeliveryMethod, result.resultObjects));
7102
+ }
7103
+ else {
7104
+ reject(result.validationMessagesAsString);
7105
+ }
7106
+ });
7107
+ });
7108
+ });
7109
+ }
7110
+ getDeliveryOptions() {
7111
+ return __awaiter(this, void 0, void 0, function* () {
7112
+ return new Promise((resolve, reject) => {
7113
+ return this.connector.getDeliveryOptions().then((result) => {
7114
+ if (result.validationResult && result.validationResult.success) {
7115
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(DeliveryMethod, result.resultObjects));
7116
+ }
7117
+ else {
7118
+ reject(result.validationMessagesAsString);
7119
+ }
7120
+ });
7121
+ });
7122
+ });
7123
+ }
7124
+ addRelationToTransaction(uuid, relationId) {
7125
+ return __awaiter(this, void 0, void 0, function* () {
7126
+ return new Promise((resolve, reject) => {
7127
+ return this.connector.addRelationToTransaction(uuid, relationId).then((result) => {
7128
+ if (result.validationResult && result.validationResult.success) {
7129
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7130
+ }
7131
+ else {
7132
+ reject(result.validationMessagesAsString);
7133
+ }
7134
+ });
7135
+ });
7136
+ });
7137
+ }
7138
+ setTransactionDeliveryOptions(transactionDeliveryOptionsRequest) {
7139
+ return __awaiter(this, void 0, void 0, function* () {
7140
+ return new Promise((resolve, reject) => {
7141
+ return this.connector.setTransactionDeliveryOptions(transactionDeliveryOptionsRequest).then((result) => {
7142
+ if (result.validationResult && result.validationResult.success) {
7143
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7144
+ }
7145
+ else {
7146
+ reject(result.validationMessagesAsString);
7147
+ }
7148
+ });
7149
+ });
7150
+ });
7151
+ }
7152
+ getPostalCodeRetrieval(postcalCode, houseNo) {
7153
+ return __awaiter(this, void 0, void 0, function* () {
7154
+ return new Promise((resolve, reject) => {
7155
+ return this.connector.getPostalCodeRetrieval(postcalCode, houseNo).then((result) => {
7156
+ if (result.validationResult && result.validationResult.success) {
7157
+ const outputParams = new GetPostalCodeRetrievalOutputParams();
7158
+ outputParams.city = result.resultObject.city;
7159
+ outputParams.street = result.resultObject.street;
7160
+ outputParams.status = result.resultObject.status;
7161
+ outputParams.netNumber = result.resultObject.netNumber;
7162
+ resolve(outputParams);
7163
+ }
7164
+ else {
7165
+ reject(result.validationMessagesAsString);
7166
+ }
7167
+ });
7168
+ });
7169
+ });
7170
+ }
7171
+ getRelationListObjects(relationRequest) {
7172
+ return __awaiter(this, void 0, void 0, function* () {
7173
+ return new Promise((resolve, reject) => {
7174
+ return this.connector.getRelationListObjects(relationRequest).then((result) => {
7175
+ if (result.validationResult && result.validationResult.success) {
7176
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(RelationListObject, result.resultObjects));
7177
+ }
7178
+ else {
7179
+ reject(result.validationMessagesAsString);
7180
+ }
7181
+ });
7182
+ });
7183
+ });
7184
+ }
7185
+ addTransactionLine(uuid, articleLine, articleNo, amount, warehouseNo, commissionCode, isReturn, aboveLineNr, belowLineNr) {
7186
+ return __awaiter(this, void 0, void 0, function* () {
7187
+ return new Promise((resolve, reject) => {
7188
+ return this.connector.addTransactionLine(uuid, articleLine, articleNo, amount, warehouseNo, commissionCode, isReturn, aboveLineNr, belowLineNr).then((result) => {
7189
+ if (result.validationResult && result.validationResult.success) {
7190
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7191
+ }
7192
+ else {
7193
+ reject(result.validationMessagesAsString);
7194
+ }
7195
+ });
7196
+ });
7197
+ });
7198
+ }
7199
+ addTextLineToTransaction(uuid, showOnDocuments, text, amount, articleBound, refArticleLineNr, aboveLineNr, belowLineNr) {
7200
+ return __awaiter(this, void 0, void 0, function* () {
7201
+ return new Promise((resolve, reject) => {
7202
+ return this.connector.addTextLineToTransaction(uuid, showOnDocuments, text, amount, articleBound, refArticleLineNr, aboveLineNr, belowLineNr).then((result) => {
7203
+ if (result.validationResult && result.validationResult.success) {
7204
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7205
+ }
7206
+ else {
7207
+ reject(result.validationMessagesAsString);
7208
+ }
7209
+ });
7210
+ });
7211
+ });
7212
+ }
7213
+ changeLineSequence(uuid, lineUuid, aboveLineNr, belowLineNr) {
7214
+ return __awaiter(this, void 0, void 0, function* () {
7215
+ return new Promise((resolve, reject) => {
7216
+ const request = {
7217
+ transactionUuid: uuid,
7218
+ lineUuid: lineUuid,
7219
+ aboveLineNr: aboveLineNr,
7220
+ belowLineNr: belowLineNr
7221
+ };
7222
+ return this.connector.changeLineSequence(request).then((result) => {
7223
+ if (result.validationResult && result.validationResult.success) {
7224
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7225
+ }
7226
+ else {
7227
+ reject(result.validationMessagesAsString);
7228
+ }
7229
+ });
7230
+ });
7231
+ });
7232
+ }
7233
+ cancelAddTransactionLine(lineUuid) {
7234
+ return __awaiter(this, void 0, void 0, function* () {
7235
+ return new Promise((resolve, reject) => {
7236
+ return this.connector.cancelAddTransactionLine(lineUuid).then((result) => {
7237
+ if (result.validationResult && result.validationResult.success) {
7238
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7239
+ }
7240
+ else {
7241
+ reject(result.validationMessagesAsString);
7242
+ }
7243
+ });
7244
+ });
7245
+ });
7246
+ }
7247
+ deleteTransactionLine(uuid, lineUuid) {
7248
+ return __awaiter(this, void 0, void 0, function* () {
7249
+ return new Promise((resolve, reject) => {
7250
+ return this.connector.deleteTransactionLine(uuid, lineUuid).then((result) => {
7251
+ if (result.validationResult && result.validationResult.success) {
7252
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7253
+ }
7254
+ else {
7255
+ reject(result.validationMessagesAsString);
7256
+ }
7257
+ });
7258
+ });
7259
+ });
7260
+ }
7261
+ changeTransactionLineQuantity(uuid, lineUuid, newQuantity) {
7262
+ return __awaiter(this, void 0, void 0, function* () {
7263
+ return new Promise((resolve, reject) => {
7264
+ const request = {
7265
+ transactionUuid: uuid,
7266
+ lineUuid: lineUuid,
7267
+ newQuantity: newQuantity
7268
+ };
7269
+ return this.connector.changeTransactionLineQuantity(request).then((result) => {
7270
+ if (result.validationResult && result.validationResult.success) {
7271
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7272
+ }
7273
+ else {
7274
+ reject(result.validationMessagesAsString);
7275
+ }
7276
+ });
7277
+ });
7278
+ });
7279
+ }
7280
+ resolvePendingLineReason(pendingLineValues) {
7281
+ return __awaiter(this, void 0, void 0, function* () {
7282
+ return new Promise((resolve, reject) => {
7283
+ return this.connector.resolvePendingLineReason(pendingLineValues).then((result) => {
7284
+ if (result.validationResult && result.validationResult.success) {
7285
+ resolve(this._boFactory.makeWithRawBackendData(TransactionInfoResponse, result.resultObject));
7286
+ }
7287
+ else {
7288
+ reject(result.validationMessagesAsString);
7289
+ }
7290
+ });
7291
+ });
7292
+ });
7293
+ }
7294
+ getCommissionCodes(languageCode) {
7295
+ return __awaiter(this, void 0, void 0, function* () {
7296
+ return new Promise((resolve, reject) => {
7297
+ return this.connector.getCommissionCodes(languageCode).then((result) => {
7298
+ if (result.validationResult && result.validationResult.success) {
7299
+ resolve(result.resultObjects);
7300
+ }
7301
+ else {
7302
+ reject(result.validationMessagesAsString);
7303
+ }
7304
+ });
7305
+ });
7306
+ });
7307
+ }
7308
+ getInOutCollection(languageCode) {
7309
+ return __awaiter(this, void 0, void 0, function* () {
7310
+ return new Promise((resolve, reject) => {
7311
+ return this.connector.getInOutCollection(languageCode).then((result) => {
7312
+ if (result.validationResult && result.validationResult.success) {
7313
+ resolve(result.resultObjects);
7314
+ }
7315
+ else {
7316
+ reject(result.validationMessagesAsString);
7317
+ }
7318
+ });
7319
+ });
7320
+ });
7321
+ }
7322
+ getTransactionArticleWarehouses(goodId) {
7323
+ return __awaiter(this, void 0, void 0, function* () {
7324
+ return new Promise((resolve, reject) => {
7325
+ return this.connector.getTransactionArticleWarehouses(goodId).then((result) => {
7326
+ if (result.validationResult && result.validationResult.success) {
7327
+ resolve(result.resultObjects);
7328
+ }
7329
+ else {
7330
+ reject(result.validationMessagesAsString);
7331
+ }
7332
+ });
7333
+ });
7334
+ });
7335
+ }
7336
+ setRelationByUser(uuid, username, password) {
7337
+ return __awaiter(this, void 0, void 0, function* () {
7338
+ return new Promise((resolve, reject) => {
7339
+ return this.connector.setRelationByUser(uuid, username, password).then((result) => {
7340
+ if (result.validationResult && result.validationResult.success) {
7341
+ resolve(result.validationResult.success);
7342
+ }
7343
+ else {
7344
+ reject(result.validationMessagesAsString);
7345
+ }
7346
+ });
7347
+ });
7348
+ });
7349
+ }
7350
+ getTextTypes(languageCode) {
7351
+ return __awaiter(this, void 0, void 0, function* () {
7352
+ return new Promise((resolve, reject) => {
7353
+ return this.connector.getTextTypes(languageCode).then((result) => {
7354
+ if (result.validationResult && result.validationResult.success) {
7355
+ const texts = this._boFactory.makeBOArrayFromRawBackendDataArray(CoDomainValue, result.resultObjects);
7356
+ texts.sort((a, b) => a.sequence > b.sequence ? 1 : -1);
7357
+ resolve(texts);
7358
+ }
7359
+ else {
7360
+ reject(result.validationMessagesAsString);
7361
+ }
7362
+ });
7363
+ });
7364
+ });
7365
+ }
7366
+ getStandardTexts(languageCode) {
7367
+ return __awaiter(this, void 0, void 0, function* () {
7368
+ return new Promise((resolve, reject) => {
7369
+ return this.connector.getStandardTexts(languageCode).then((result) => {
7370
+ if (result.validationResult && result.validationResult.success) {
7371
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(StandardText, result.resultObject));
7372
+ }
7373
+ else {
7374
+ reject(result.validationMessagesAsString);
7375
+ }
7376
+ });
7377
+ });
7378
+ });
7379
+ }
7380
+ getBranches(branchNr) {
7381
+ return __awaiter(this, void 0, void 0, function* () {
7382
+ return new Promise((resolve, reject) => {
7383
+ return this.connector.getBranches(branchNr).then((result) => {
7384
+ if (result.validationResult && result.validationResult.success) {
7385
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(BranchLov, result.resultObjects));
7386
+ }
7387
+ else {
7388
+ reject(result.validationMessagesAsString);
7389
+ }
7390
+ });
7391
+ });
7392
+ });
7393
+ }
7394
+ getSalesPersons(date) {
7395
+ return __awaiter(this, void 0, void 0, function* () {
7396
+ return new Promise((resolve, reject) => {
7397
+ return this.connector.getSalesPersons(date).then((result) => {
7398
+ if (result.validationResult && result.validationResult.success) {
7399
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(SalesPerson, result.resultObjects));
7400
+ }
7401
+ else {
7402
+ reject(result.validationMessagesAsString);
7403
+ }
7404
+ });
7405
+ });
7406
+ });
7407
+ }
7408
+ getTags(category) {
7409
+ return __awaiter(this, void 0, void 0, function* () {
7410
+ return new Promise((resolve, reject) => {
7411
+ const collection = this._collectionService.getCollection(Tag.name, [category]);
7412
+ if (collection) {
7413
+ return resolve(collection);
7414
+ }
7415
+ return this.connector.getTags(category).then((result) => {
7416
+ if (result.validationResult && result.validationResult.success) {
7417
+ const collection = this._boFactory.makeBOArrayFromRawBackendDataArray(Tag, result.resultObjects);
7418
+ this._collectionService.cacheCollection(Tag.name, collection, [category]);
7419
+ resolve(collection);
7420
+ }
7421
+ else {
7422
+ reject(result.validationMessagesAsString);
7423
+ }
7424
+ });
7425
+ });
7426
+ });
7427
+ }
7428
+ getOnHoldCodes() {
7429
+ return __awaiter(this, void 0, void 0, function* () {
7430
+ return new Promise((resolve, reject) => {
7431
+ const collection = this._collectionService.getCollection(OnHoldCode.name);
7432
+ if (collection) {
7433
+ return resolve(collection);
7434
+ }
7435
+ return this.connector.getOnHoldCodes().then((result) => {
7436
+ if (result.validationResult && result.validationResult.success) {
7437
+ const collection = this._boFactory.makeBOArrayFromRawBackendDataArray(OnHoldCode, result.resultObjects);
7438
+ this._collectionService.cacheCollection(OnHoldCode.name, collection);
7439
+ resolve(collection);
7440
+ }
7441
+ else {
7442
+ reject(result.validationMessagesAsString);
7443
+ }
7444
+ });
7445
+ });
7446
+ });
7447
+ }
7448
+ getWarehouses(branchNr) {
7449
+ return __awaiter(this, void 0, void 0, function* () {
7450
+ return new Promise((resolve, reject) => {
7451
+ return this.connector.getWarehouses(branchNr).then((result) => {
7452
+ if (result.validationResult && result.validationResult.success) {
7453
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(Warehouse, result.resultObjects));
7454
+ }
7455
+ else {
7456
+ reject(result.validationMessagesAsString);
7457
+ }
7458
+ });
7459
+ });
7460
+ });
7461
+ }
7462
+ getHistoricStateValues() {
7463
+ return __awaiter(this, void 0, void 0, function* () {
7464
+ return new Promise((resolve, reject) => {
7465
+ const result = this.connector.getHistoricStateValues();
7466
+ if (result.validationResult && result.validationResult.success) {
7467
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(CodeDescription, result.resultObjects));
7468
+ }
7469
+ else {
7470
+ reject(result.validationMessagesAsString);
7471
+ }
7472
+ });
7473
+ });
7474
+ }
7475
+ getPaymentMethods() {
7476
+ return __awaiter(this, void 0, void 0, function* () {
7477
+ return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
7478
+ const result = yield this.connector.getPaymentMethods();
7479
+ if (result.validationResult && result.validationResult.success) {
7480
+ resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(PaymentMethod, result.resultObjects));
7481
+ }
7482
+ else {
7483
+ reject(result.validationMessagesAsString);
7484
+ }
7485
+ }));
7486
+ });
7487
+ }
7488
+ changeTransactionLineCommissionCode(uuid, lineUuid, code) {
7489
+ return __awaiter(this, void 0, void 0, function* () {
7490
+ const request = {
7491
+ transactionUuid: uuid,
7492
+ lineUuid: lineUuid,
7493
+ newCommissionCode: code
7494
+ };
7495
+ const response = yield this.connector.changeTransactionLineCommissionCode(request);
7496
+ if (response && response.validationResult && response.validationResult.success) {
7497
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7498
+ }
7499
+ else {
7500
+ return Promise.reject(response.validationMessagesAsString);
7501
+ }
7502
+ });
7503
+ }
7504
+ changeTransactionLineWarehouse(uuid, lineUuid, warehouseNumber) {
7505
+ return __awaiter(this, void 0, void 0, function* () {
7506
+ const request = {
7507
+ transactionUuid: uuid,
7508
+ lineUuid: lineUuid,
7509
+ newWarehouseNumber: warehouseNumber
7510
+ };
7511
+ const response = yield this.connector.changeTransactionLineWarehouse(request);
7512
+ if (response && response.validationResult && response.validationResult.success) {
7513
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7514
+ }
7515
+ else {
7516
+ return Promise.reject(response.validationMessagesAsString);
7517
+ }
7518
+ });
7519
+ }
7520
+ changeTransactionLinePrice(uuid, lineUuid, price) {
7521
+ return __awaiter(this, void 0, void 0, function* () {
7522
+ const request = {
7523
+ transactionUuid: uuid,
7524
+ lineUuid: lineUuid,
7525
+ newPrice: price
7526
+ };
7527
+ const response = yield this.connector.changeTransactionLinePrice(request);
7528
+ if (response && response.validationResult && response.validationResult.success) {
7529
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7530
+ }
7531
+ else {
7532
+ return Promise.reject(response.validationMessagesAsString);
7533
+ }
7534
+ });
7535
+ }
7536
+ changeTransactionLinePriceList(uuid, lineUuid, priceList) {
7537
+ return __awaiter(this, void 0, void 0, function* () {
7538
+ const request = {
7539
+ transactionUuid: uuid,
7540
+ lineUuid: lineUuid,
7541
+ newPriceListCode: priceList
7542
+ };
7543
+ const response = yield this.connector.changeTransactionLinePriceList(request);
7544
+ if (response && response.validationResult && response.validationResult.success) {
7545
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7546
+ }
7547
+ else {
7548
+ return Promise.reject(response.validationMessagesAsString);
7549
+ }
7550
+ });
7551
+ }
7552
+ changeTransactionLineVat(uuid, lineUuid, id) {
7553
+ return __awaiter(this, void 0, void 0, function* () {
7554
+ const request = {
7555
+ transactionUuid: uuid,
7556
+ lineUuid: lineUuid,
7557
+ newVatId: id
7558
+ };
7559
+ const response = yield this.connector.changeTransactionLineVat(request);
7560
+ if (response && response.validationResult && response.validationResult.success) {
7561
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7562
+ }
7563
+ else {
7564
+ return Promise.reject(response.validationMessagesAsString);
7565
+ }
7566
+ });
7567
+ }
7568
+ changeTransactionLineLineDiscount(uuid, lineUuid, type, discount, reason, code) {
7569
+ return __awaiter(this, void 0, void 0, function* () {
7570
+ const request = {
7571
+ transactionUuid: uuid,
7572
+ lineUuid: lineUuid,
7573
+ discountType: type,
7574
+ newDiscount: discount,
7575
+ newDiscountReason: reason,
7576
+ newDiscountCode: code
7577
+ };
7578
+ const response = yield this.connector.changeTransactionLineDiscount(request);
7579
+ if (response && response.validationResult && response.validationResult.success) {
7580
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7581
+ }
7582
+ else {
7583
+ return Promise.reject(response.validationMessagesAsString);
7584
+ }
7585
+ });
7586
+ }
7587
+ changeTransactionLineDeliveryMethod(uuid, lineUuid, method) {
7588
+ return __awaiter(this, void 0, void 0, function* () {
7589
+ const request = {
7590
+ transactionUuid: uuid,
7591
+ lineUuid: lineUuid,
7592
+ newDeliveryMethodCode: method
7593
+ };
7594
+ const response = yield this.connector.changeTransactionLineDeliveryMethod(request);
7595
+ if (response && response.validationResult && response.validationResult.success) {
7596
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7597
+ }
7598
+ else {
7599
+ return Promise.reject(response.validationMessagesAsString);
7600
+ }
7601
+ });
7602
+ }
7603
+ changeTransactionLineDeliveryDate(uuid, lineUuid, date) {
7604
+ return __awaiter(this, void 0, void 0, function* () {
7605
+ const request = {
7606
+ transactionUuid: uuid,
7607
+ lineUuid: lineUuid,
7608
+ newDeliveryDate: date
7609
+ };
7610
+ const response = yield this.connector.changeTransactionLineDeliveryDate(request);
7611
+ if (response && response.validationResult && response.validationResult.success) {
7612
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7613
+ }
7614
+ else {
7615
+ return Promise.reject(response.validationMessagesAsString);
7616
+ }
7617
+ });
7618
+ }
7619
+ changeTransactionLineAssemblyTime(uuid, lineUuid, time) {
7620
+ return __awaiter(this, void 0, void 0, function* () {
7621
+ const request = {
7622
+ transactionUuid: uuid,
7623
+ lineUuid: lineUuid,
7624
+ newAssemblyTime: time
7625
+ };
7626
+ const response = yield this.connector.changeTransactionLineAssemblyTime(request);
7627
+ if (response && response.validationResult && response.validationResult.success) {
7628
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7629
+ }
7630
+ else {
7631
+ return Promise.reject(response.validationMessagesAsString);
7632
+ }
7633
+ });
7634
+ }
7635
+ changeTransactionLineEditTime(uuid, lineUuid, time) {
7636
+ return __awaiter(this, void 0, void 0, function* () {
7637
+ const request = {
7638
+ transactionUuid: uuid,
7639
+ lineUuid: lineUuid,
7640
+ newEditTime: time
7641
+ };
7642
+ const response = yield this.connector.changeTransactionLineEditTime(request);
7643
+ if (response && response.validationResult && response.validationResult.success) {
7644
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7645
+ }
7646
+ else {
7647
+ return Promise.reject(response.validationMessagesAsString);
7648
+ }
7649
+ });
7650
+ }
7651
+ changeTransactionLineSupplierArticleNumber(uuid, lineUuid, articleNumber) {
7652
+ return __awaiter(this, void 0, void 0, function* () {
7653
+ const request = {
7654
+ transactionUuid: uuid,
7655
+ lineUuid: lineUuid,
7656
+ newSupplierArticleNumber: articleNumber
7657
+ };
7658
+ const response = yield this.connector.changeTransactionLineSupplierArticleNumber(request);
7659
+ if (response && response.validationResult && response.validationResult.success) {
7660
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7661
+ }
7662
+ else {
7663
+ return Promise.reject(response.validationMessagesAsString);
7664
+ }
7665
+ });
7666
+ }
7667
+ changeTransactionLineReference(uuid, lineUuid, reference) {
7668
+ return __awaiter(this, void 0, void 0, function* () {
7669
+ const request = {
7670
+ transactionUuid: uuid,
7671
+ lineUuid: lineUuid,
7672
+ newReference: reference
7673
+ };
7674
+ const response = yield this.connector.changeTransactionLineReference(request);
7675
+ if (response && response.validationResult && response.validationResult.success) {
7676
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7677
+ }
7678
+ else {
7679
+ return Promise.reject(response.validationMessagesAsString);
7680
+ }
7681
+ });
7682
+ }
7683
+ changeHeaderTransactionDefinitive(uuid, definitive) {
7684
+ return __awaiter(this, void 0, void 0, function* () {
7685
+ const request = {
7686
+ transactionUuid: uuid,
7687
+ newTransactionDefinitive: definitive
7688
+ };
7689
+ const response = yield this.connector.changeHeaderTransactionDefinitive(request);
7690
+ if (response && response.validationResult && response.validationResult.success) {
7691
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7692
+ }
7693
+ else {
7694
+ return Promise.reject(response.validationMessagesAsString);
7695
+ }
7696
+ });
7697
+ }
7698
+ changeTransactionLineCollectionCode(uuid, lineUuid, code) {
7699
+ return __awaiter(this, void 0, void 0, function* () {
7700
+ const request = {
7701
+ transactionUuid: uuid,
7702
+ lineUuid: lineUuid,
7703
+ newCollectionCode: code
7704
+ };
7705
+ const response = yield this.connector.changeTransactionLineCollectionCode(request);
7706
+ if (response && response.validationResult && response.validationResult.success) {
7707
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
7708
+ }
7709
+ else {
7710
+ return Promise.reject(response.validationMessagesAsString);
7711
+ }
7712
+ });
7713
+ }
7714
+ createOutstandingEntry(uuid, amount) {
7715
+ return __awaiter(this, void 0, void 0, function* () {
7716
+ const request = {
7717
+ transUUID: uuid,
7718
+ amount: amount
7719
+ };
7720
+ const response = yield this.connector.createOutstandingEntry(request);
7721
+ if (response && response.validationResult && response.validationResult.success) {
7722
+ console.log(response);
7723
+ }
7724
+ else {
7725
+ return Promise.reject(response.validationMessagesAsString);
7726
+ }
7727
+ });
7728
+ }
7729
+ registerSalesOrderPayment(uuid, amount, currencyCode, paymentMethod, cashRegisterGroupId) {
7730
+ return __awaiter(this, void 0, void 0, function* () {
7731
+ const request = {
7732
+ transUUID: uuid,
7733
+ amount: amount,
7734
+ currencyCode: currencyCode,
7735
+ paymentMethodCode: paymentMethod,
7736
+ cashRegisterGroupId: cashRegisterGroupId
7737
+ };
7738
+ const response = yield this.connector.registerSalesOrderPayment(request);
7739
+ if (response && response.validationResult && response.validationResult.success) {
7740
+ console.log(response);
7741
+ }
7742
+ else {
7743
+ return Promise.reject(response.validationMessagesAsString);
7744
+ }
7745
+ });
7746
+ }
7747
+ }
7748
+ IOneConnectorAdapterService.ɵprov = i0.ɵɵdefineInjectable({ factory: function IOneConnectorAdapterService_Factory() { return new IOneConnectorAdapterService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(CollectionCacheService)); }, token: IOneConnectorAdapterService, providedIn: "root" });
7749
+ IOneConnectorAdapterService.decorators = [
7750
+ { type: Injectable, args: [{
7751
+ providedIn: "root"
7752
+ },] }
7753
+ ];
7754
+ IOneConnectorAdapterService.ctorParameters = () => [
7755
+ { type: OptionsService },
7756
+ { type: CollectionCacheService }
7757
+ ];
7758
+
7759
+ class PaymentService {
7760
+ constructor(_connector) {
7761
+ this._connector = _connector;
7762
+ }
7763
+ createOutstandingEntry(uuid, amount) {
7764
+ return __awaiter(this, void 0, void 0, function* () {
7765
+ const response = yield this._connector.createOutstandingEntry(uuid, amount)
7766
+ .catch((error) => {
7767
+ // todo: do something with the error
7768
+ return false;
7769
+ });
7770
+ if (response) {
7771
+ return true;
7772
+ }
7773
+ return false;
7774
+ });
7775
+ }
7776
+ registerSalesOrderPayment(uuid, amount, currencyCode, paymentMethod, cashRegisterGroupId) {
7777
+ return __awaiter(this, void 0, void 0, function* () {
7778
+ const response = yield this._connector.registerSalesOrderPayment(uuid, amount, currencyCode, paymentMethod, cashRegisterGroupId);
7779
+ // .catch((error) => {
7780
+ // // todo: do something with the error
7781
+ // // return;
7782
+ // });
7783
+ if (response) {
7784
+ return true;
7785
+ }
7786
+ return false;
7787
+ });
7788
+ }
7789
+ getPaymentMethods() {
7790
+ return __awaiter(this, void 0, void 0, function* () {
7791
+ return this._connector.getPaymentMethods();
7792
+ });
7793
+ }
7794
+ }
7795
+ PaymentService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PaymentService_Factory() { return new PaymentService(i0.ɵɵinject(IOneConnectorAdapterService)); }, token: PaymentService, providedIn: "root" });
7796
+ PaymentService.decorators = [
7797
+ { type: Injectable, args: [{
7798
+ providedIn: "root"
7799
+ },] }
7800
+ ];
7801
+ PaymentService.ctorParameters = () => [
7802
+ { type: IOneConnectorAdapterService }
7803
+ ];
7804
+
7805
+ class PaymentViewmodel {
7806
+ constructor(method) {
7807
+ this.payment = method;
7808
+ }
7809
+ }
7810
+
7811
+ class PaymentComponent {
7812
+ constructor(_transactionService, _sharedService, _paymentService) {
7813
+ this._transactionService = _transactionService;
7814
+ this._sharedService = _sharedService;
7815
+ this._paymentService = _paymentService;
7816
+ this.icons = Icon;
7817
+ this.amount = 0;
7818
+ this.paymentMethodIdx = 0;
7819
+ this.cashRegisterIdx = 0;
7820
+ this.paymentMethods = [];
7821
+ this.cashRegisters = [];
7822
+ this.showCashRegisters = false;
7823
+ this.showKeyPad = false;
7824
+ }
7825
+ showClass() {
7826
+ return true;
7827
+ }
7828
+ ngOnInit() {
7829
+ this._paymentService.createOutstandingEntry(this.transactionUuid, this.amount).then(() => {
7830
+ this._getPaymentMethods().then(() => {
7831
+ this._prepareCashRegisters();
7832
+ });
7833
+ });
7834
+ }
7835
+ paymentMethodSelected(method, index) {
7836
+ this.paymentMethodIdx = index;
7837
+ this._prepareCashRegisters();
7838
+ }
7839
+ handlePayment() {
7840
+ const currentPaymentMethod = this.paymentMethods[this.paymentMethodIdx];
7841
+ const currentCashRegister = this.cashRegisters[this.cashRegisterIdx];
7842
+ this._paymentService.registerSalesOrderPayment(this.transactionUuid, this.amount, this.currencyCode, currentPaymentMethod.payment.code, currentCashRegister.group).then(() => {
7843
+ this.showKeyPad = false;
7844
+ });
7845
+ }
7846
+ handleKeyPadModelChange(model) {
7847
+ this.amount = model;
7848
+ console.log(model);
7849
+ }
7850
+ /**
7851
+ *
7852
+ * @private
7853
+ */
7854
+ _prepareCashRegisters() {
7855
+ const paymentMethod = this.paymentMethods[this.paymentMethodIdx].payment;
7856
+ if (paymentMethod && !paymentMethod.externalSourceId) {
7857
+ this.cashRegisters.length = 0;
7858
+ paymentMethod.posGroups.forEach(crg => {
7859
+ this._getCashRegisters(crg.branchNo, crg.id);
7860
+ });
7861
+ this.showCashRegisters = true;
7862
+ }
7863
+ else {
7864
+ this.showCashRegisters = false;
7865
+ }
7866
+ }
7867
+ _getCashRegisters(branch, group) {
7868
+ this._transactionService.getCashRegisters(branch, group).then((cashRegisters) => {
7869
+ this.cashRegisters.push(...cashRegisters);
7870
+ });
7871
+ }
7872
+ _getPaymentMethods() {
7873
+ this.paymentMethods.length = 0;
7874
+ return this._paymentService.getPaymentMethods().then((methods) => {
7875
+ methods.forEach((m) => __awaiter(this, void 0, void 0, function* () {
7876
+ const paymentViewModel = new PaymentViewmodel(m);
7877
+ const imageDocs = m.documents.filter(d => d.isImageDocument());
7878
+ if (imageDocs && imageDocs.length) {
7879
+ const image = imageDocs[0];
7880
+ if (image.filePath) {
7881
+ paymentViewModel.image = image.filePath;
7882
+ }
7883
+ else {
7884
+ if (!image.thumbnailBody) {
7885
+ const content = yield this._sharedService.getDocumentContent(image.documentId);
7886
+ image.thumbnailBody = content;
7887
+ }
7888
+ paymentViewModel.image = image.thumbnailBodyAsDataUri;
7889
+ }
7890
+ }
7891
+ this.paymentMethods.push(paymentViewModel);
7892
+ }));
7893
+ });
7894
+ }
7895
+ }
7896
+ PaymentComponent.decorators = [
7897
+ { type: Component, args: [{
7898
+ selector: "co-payment",
7899
+ template: `
7900
+ <div class="payment-wrapper">
7901
+ <div class="payment-methods-header">
7902
+ <span class="payment-header-title" [textContent]="'SELECT_A' | localize"></span>
7903
+ <span class="payment-header-title extra" [textContent]="'FREE' | localize:false"></span>
7904
+ <span class="payment-header-title" [textContent]="'PAYMENT_METHOD' | localize:false"></span>
7905
+ </div>
7906
+ <div class="payment-methods">
7907
+ <co-payment-tile *ngFor="let paymentMethod of paymentMethods; let index = index"
7908
+ [image]="paymentMethod.image"
7909
+ [description]="paymentMethod.payment.description"
7910
+ [selected]="paymentMethodIdx === index"
7911
+ (selectedChange)="paymentMethodSelected(paymentMethod.payment, index)"
7912
+ ></co-payment-tile>
7913
+ </div>
7914
+ <div class="payment-cash-register-wrapper" *ngIf="showCashRegisters">
7915
+ <div class="payment-cash-register-header">
7916
+ <span class="payment-header-title" [textContent]="'SELECT_CASH_REGISTER' | localize"></span>
7917
+ </div>
7918
+ <div class="payment-methods">
7919
+ <co-payment-tile *ngFor="let cashRegister of cashRegisters; let index = index"
7920
+ [icon]="cashRegister.icon"
7921
+ [description]="cashRegister.description"
7922
+ [selected]="cashRegisterIdx === index"
7923
+ ></co-payment-tile>
7924
+ </div>
7925
+ </div>
7926
+ <div class="payment-to-pay-wrapper">
7927
+ <div class="payment-to-pay">
7928
+ <div [textContent]="'TO_PAY' | localize"></div>
7929
+ <div class="payment-amount" [textContent]="amount | priceDisplay"></div>
7930
+ </div>
7931
+ <div class="payment-to-pay-button">
7932
+ <co-button [label]="'PAY' | localize" (click)="handlePayment()"></co-button>
7933
+ </div>
7934
+ <co-key-pad class="payment-to-pay-keypad"
7935
+ [showValue]="false"
7936
+ [emitModelChangeOnEnter]="false"
7937
+ [model]="amount"
7938
+ (modelChange)="handleKeyPadModelChange($event)"
7939
+ (enterClick)="handlePayment()"
7940
+ ></co-key-pad>
7941
+ </div>
7942
+ </div>
7943
+ `,
7944
+ encapsulation: ViewEncapsulation.None
7945
+ },] }
7946
+ ];
7947
+ PaymentComponent.ctorParameters = () => [
7948
+ { type: TransactionService },
7949
+ { type: SharedService },
7950
+ { type: PaymentService }
7951
+ ];
7952
+ PaymentComponent.propDecorators = {
7953
+ transactionUuid: [{ type: Input }],
7954
+ amount: [{ type: Input }],
7955
+ currencyCode: [{ type: Input }],
7956
+ showClass: [{ type: HostBinding, args: ["class.co-payment",] }]
7957
+ };
7958
+
7959
+ class PaymentTileComponent {
7960
+ constructor() {
7961
+ this.selected = false;
7962
+ this.selectedChange = new EventEmitter();
7963
+ }
7964
+ showClass() {
7965
+ return true;
7966
+ }
7967
+ }
7968
+ PaymentTileComponent.decorators = [
7969
+ { type: Component, args: [{
7970
+ selector: "co-payment-tile",
7971
+ template: `
7972
+ <co-tile [selected]="selected" (selectedChange)="selectedChange.emit($event)">
7973
+ <div class="payment-tile-wrapper">
7974
+ <icon *ngIf="icon" class="payment-tile-icon" [icon]="icon"></icon>
7975
+ <img *ngIf="image" class="payment-tile-image" [src]="image"/>
7976
+ <span class="payment-tile-description" [textContent]="description | localize"></span>
7977
+ </div>
7978
+ </co-tile>
7979
+ `,
7980
+ encapsulation: ViewEncapsulation.None
7981
+ },] }
7982
+ ];
7983
+ PaymentTileComponent.propDecorators = {
7984
+ selected: [{ type: Input }],
6700
7985
  icon: [{ type: Input }],
7986
+ image: [{ type: Input }],
6701
7987
  description: [{ type: Input }],
6702
7988
  selectedChange: [{ type: Output }],
6703
7989
  showClass: [{ type: HostBinding, args: ["class.co-payment-tile",] }]
@@ -6731,7 +8017,10 @@ PaymentModule.decorators = [
6731
8017
  CoreModule,
6732
8018
  PipeModule,
6733
8019
  PaymentTileModule,
6734
- PriceDisplayPipeModule
8020
+ PriceDisplayPipeModule,
8021
+ KeyPadModule,
8022
+ CoDialogModule,
8023
+ ButtonModule
6735
8024
  ],
6736
8025
  declarations: [
6737
8026
  PaymentComponent
@@ -6873,22 +8162,11 @@ var ContentViewMode;
6873
8162
  ContentViewMode[ContentViewMode["Tiles"] = 5] = "Tiles";
6874
8163
  })(ContentViewMode || (ContentViewMode = {}));
6875
8164
 
6876
- var TabCategory;
6877
- (function (TabCategory) {
6878
- TabCategory[TabCategory["Overview"] = 0] = "Overview";
6879
- TabCategory[TabCategory["OrderConfirmation"] = 1] = "OrderConfirmation";
6880
- TabCategory[TabCategory["Transport"] = 2] = "Transport";
6881
- TabCategory[TabCategory["ReceivedGoods"] = 3] = "ReceivedGoods";
6882
- TabCategory[TabCategory["InvoiceCheck"] = 4] = "InvoiceCheck";
6883
- TabCategory[TabCategory["Menu"] = 5] = "Menu";
6884
- })(TabCategory || (TabCategory = {}));
6885
-
6886
8165
  class TransactionComponent {
6887
8166
  constructor(iconCacheService, _service) {
6888
8167
  this.iconCacheService = iconCacheService;
6889
8168
  this._service = _service;
6890
8169
  this.viewModes = ContentViewMode;
6891
- this.tabCategory = TabCategory;
6892
8170
  this.icons = Icon;
6893
8171
  this.showHeader = true;
6894
8172
  this.showQuickAccess = true;
@@ -6912,9 +8190,13 @@ class TransactionComponent {
6912
8190
  }
6913
8191
  set transactionId(value) {
6914
8192
  if (value) {
8193
+ this._transactionId = value;
6915
8194
  this._service.getTransactionById(value).catch(() => { });
6916
8195
  }
6917
8196
  }
8197
+ get transactionId() {
8198
+ return this._transactionId;
8199
+ }
6918
8200
  showClass() {
6919
8201
  return true;
6920
8202
  }
@@ -6978,6 +8260,7 @@ TransactionComponent.decorators = [
6978
8260
  <div class="transaction-lines-grid-wrapper" *ngIf="activeViewMode === viewModes.Grid">
6979
8261
  <co-transaction-grid
6980
8262
  [transactionLines]="transaction.transactionLines"
8263
+ [transactionId]="transactionId"
6981
8264
  [transactionType]="transaction.transactionInfo.transactionKind"
6982
8265
  [activeCategory]="activeCategory"
6983
8266
  (sidePanelClicked)="handleShowSidePanel($event)"
@@ -7000,6 +8283,7 @@ TransactionComponent.decorators = [
7000
8283
  [transactionType]="transaction.transactionInfo.transactionKind"
7001
8284
  [activeCategory]="activeCategory"
7002
8285
  [transactionLine]="sidePanelTransactionLine"
8286
+ [transactionId]="transactionId"
7003
8287
  (cancelClick)="handleCloseSidePanel($event)"
7004
8288
  ></co-transaction-line-side-panel>
7005
8289
  `,
@@ -7290,7 +8574,7 @@ TransactionHeaderDeliveryComponent.decorators = [
7290
8574
  </co-transaction-header-block>
7291
8575
  <ng-template #headerBlock>
7292
8576
  <div class="header-delivery-method">
7293
- <co-icon [iconData]="iconService.getIcon(icons.DeliveryTruck)"></co-icon>
8577
+ <co-icon class="header-delivery-truck-icon" [iconData]="iconService.getIcon(icons.DeliveryTruck)"></co-icon>
7294
8578
  <span [textContent]="deliveryMethod?.description"></span>
7295
8579
  </div>
7296
8580
  <co-icon class="planning-request-button" [class.co-transaction-check]="transactionInfo.deliveryDateDefinitive"
@@ -7358,11 +8642,11 @@ TransactionHeaderOrderComponent.decorators = [
7358
8642
  [headerBlockTemplate]="headerBlock"
7359
8643
  [firstBlockTemplate]="firstBlock"
7360
8644
  [secondBlockTemplate]="secondBlock"
8645
+ [thirdBlockTemplate]="thirdBlock"
7361
8646
  >
7362
8647
  </co-transaction-header-block>
7363
8648
  <ng-template #headerBlock>
7364
8649
  <div class="header-block-label" [textContent]="transactionInfo.branch?.familyName"></div>
7365
- <co-input-checkbox [model]="true"></co-input-checkbox>
7366
8650
  </ng-template>
7367
8651
  <ng-template #firstBlock>
7368
8652
  <span class="header-order-total-label co-transaction-label" [textContent]="'ORDER_TOTAL' | localize"></span>
@@ -7372,6 +8656,10 @@ TransactionHeaderOrderComponent.decorators = [
7372
8656
  <span class="header-order-line-amount-label co-transaction-label" [textContent]="'ORDER_LINES' | localize"></span>
7373
8657
  <div class="header-order-line-amount" [textContent]="transactionLines.length"></div>
7374
8658
  </ng-template>
8659
+ <ng-template #thirdBlock>
8660
+ <div class="header-order-definitive-label co-transaction-label" [textContent]="'DEFINITIVE' | localize"></div>
8661
+ <co-input-checkbox [model]="true"></co-input-checkbox>
8662
+ </ng-template>
7375
8663
  `,
7376
8664
  encapsulation: ViewEncapsulation.None
7377
8665
  },] }
@@ -7401,9 +8689,16 @@ TransactionHeaderOrderModule.decorators = [
7401
8689
  ];
7402
8690
 
7403
8691
  class TransactionHeaderPaymentComponent extends TransactionBaseComponent {
8692
+ constructor() {
8693
+ super(...arguments);
8694
+ this.showPaymentDialog = false;
8695
+ }
7404
8696
  showClass() {
7405
8697
  return true;
7406
8698
  }
8699
+ openPayment() {
8700
+ this.showPaymentDialog = true;
8701
+ }
7407
8702
  }
7408
8703
  TransactionHeaderPaymentComponent.decorators = [
7409
8704
  { type: Component, args: [{
@@ -7417,7 +8712,7 @@ TransactionHeaderPaymentComponent.decorators = [
7417
8712
  </co-transaction-header-block>
7418
8713
  <ng-template #headerBlock>
7419
8714
  <div class="header-block-label" [textContent]="'BALANCE' | localize"></div>
7420
- <div class="header-block-balance">
8715
+ <div class="header-block-balance" (click)="openPayment()">
7421
8716
  <span class="payment-paid" [textContent]="200 | priceDisplay"></span>
7422
8717
  <span class="payment-divider" [textContent]="'/'"></span>
7423
8718
  <span class="payment-to-pay" [textContent]="100 | priceDisplay"></span>
@@ -7431,6 +8726,16 @@ TransactionHeaderPaymentComponent.decorators = [
7431
8726
  <div class="header-downpayment-label co-transaction-label" [textContent]="'DOWNPAYMENT_AMOUNT' | localize"></div>
7432
8727
  <div class="header-downpayment" [textContent]="'NOT_IMPLEMENTED'"></div>
7433
8728
  </ng-template>
8729
+ <co-dialog class="payment-dialog" *ngIf="showPaymentDialog"
8730
+ [modal]="true"
8731
+ (closeClick)="showPaymentDialog = false"
8732
+ >
8733
+ <co-payment
8734
+ [transactionUuid]="transactionInfo.uuid"
8735
+ [amount]="transactionTotal.netAmount"
8736
+ [currencyCode]="transactionInfo.currencyId"
8737
+ ></co-payment>
8738
+ </co-dialog>
7434
8739
  `,
7435
8740
  encapsulation: ViewEncapsulation.None
7436
8741
  },] }
@@ -7447,7 +8752,9 @@ TransactionHeaderPaymentModule.decorators = [
7447
8752
  CommonModule,
7448
8753
  TransactionHeaderBlockModule,
7449
8754
  PipeModule,
7450
- PriceDisplayPipeModule
8755
+ PriceDisplayPipeModule,
8756
+ CoDialogModule,
8757
+ PaymentModule
7451
8758
  ],
7452
8759
  declarations: [
7453
8760
  TransactionHeaderPaymentComponent
@@ -7485,6 +8792,7 @@ class TransactionGridBaseComponent {
7485
8792
  this.icons = Icon;
7486
8793
  this.align = ColumnAlign;
7487
8794
  this.sidePanelClicked = new EventEmitter();
8795
+ this.rowVisible = new EventEmitter();
7488
8796
  this.extraColumns = [];
7489
8797
  this._transactionLines = [];
7490
8798
  }
@@ -7521,8 +8829,10 @@ TransactionGridBaseComponent.ctorParameters = () => [
7521
8829
  ];
7522
8830
  TransactionGridBaseComponent.propDecorators = {
7523
8831
  content: [{ type: ContentChildren, args: [SimpleGridColumnDirective,] }],
8832
+ transactionId: [{ type: Input }],
7524
8833
  transactionLines: [{ type: Input }],
7525
- sidePanelClicked: [{ type: Output }]
8834
+ sidePanelClicked: [{ type: Output }],
8835
+ rowVisible: [{ type: Output }]
7526
8836
  };
7527
8837
 
7528
8838
  class TransactionLinesGridComponent extends TransactionGridBaseComponent {
@@ -7609,7 +8919,12 @@ TransactionBaseGridComponent.decorators = [
7609
8919
  { type: Component, args: [{
7610
8920
  selector: "co-transaction-base-grid",
7611
8921
  template: `
7612
- <co-simple-grid [data]="transactionLines" [extraColumns]="extraColumns" [dragDropEnabled]="true" [emitDragDrop]="true" (onDrop)="handleDrop($event)">
8922
+ <co-simple-grid [data]="transactionLines"
8923
+ [extraColumns]="extraColumns"
8924
+ [dragDropEnabled]="true"
8925
+ [emitDragDrop]="true"
8926
+ (onDrop)="handleDrop($event)"
8927
+ (rowVisible)="rowVisible.next($event)">
7613
8928
  <co-simple-grid-column [headerText]="'DESCRIPTION' | localize" [width]="300" [order]="10">
7614
8929
  <ng-template #template let-row = "row">
7615
8930
  <div class="transaction-grid-article-description" [textContent]="row.goodDescription"></div>
@@ -7640,11 +8955,55 @@ TransactionBaseGridComponent.propDecorators = {
7640
8955
  showClass: [{ type: HostBinding, args: ['class.co-transaction-base-grid',] }]
7641
8956
  };
7642
8957
 
8958
+ var TransactionTypeCategory;
8959
+ (function (TransactionTypeCategory) {
8960
+ TransactionTypeCategory["PurchaseOrderOverview"] = "purchaseOrderOverview";
8961
+ TransactionTypeCategory["PurchaseOrderOrderConfirmation"] = "purchaseOrderOrderConfirmation";
8962
+ TransactionTypeCategory["PurchaseOrderTransport"] = "purchaseOrderTransport";
8963
+ TransactionTypeCategory["PurchaseOrderReceivedGoods"] = "purchaseOrderReceivedGoods";
8964
+ TransactionTypeCategory["PurchaseOrderInvoiceCheck"] = "purchaseOrderInvoiceCheck";
8965
+ TransactionTypeCategory["PurchaseOrderMenu"] = "purchaseOrderMenu";
8966
+ TransactionTypeCategory["SalesOrderOverview"] = "salesOrderOverview";
8967
+ TransactionTypeCategory["SalesOrderPurchase"] = "salesOrderPurchase";
8968
+ TransactionTypeCategory["SalesOrderLogistics"] = "salesOrderLogistics";
8969
+ TransactionTypeCategory["SalesOrderPlanning"] = "salesOrderPlanning";
8970
+ TransactionTypeCategory["SalesOrderDeliveryNote"] = "salesOrderDeliveryNote";
8971
+ TransactionTypeCategory["SalesOrderInvoice"] = "salesOrderInvoice";
8972
+ })(TransactionTypeCategory || (TransactionTypeCategory = {}));
8973
+
8974
+ class TransactionEventService {
8975
+ constructor() {
8976
+ this.addToCartBySku = new Subject();
8977
+ this.addToCartBySelectorResult = new Subject();
8978
+ this.openShoppingCartModule = new Subject();
8979
+ this.loggedIn = new Subject();
8980
+ this.addNewUserToShoppingCartModule = new Subject();
8981
+ this.addUserRelationShoppingCartModule = new Subject();
8982
+ this.addArticleLine = new Subject();
8983
+ this.addTextLine = new Subject();
8984
+ this.addArticleLineAt = new Subject();
8985
+ this.addTextLineAt = new Subject();
8986
+ this.changeLineSequence = new Subject();
8987
+ this.transactionLineClicked = new Subject();
8988
+ this.rightSidebarClose = new Subject();
8989
+ this.scrollContent = new Subject();
8990
+ this.receivedPurchaseOrderCommit = new Subject();
8991
+ this.commitReceivePurchaseOrders = new Subject();
8992
+ this.transactionLineChanged = new Subject();
8993
+ }
8994
+ }
8995
+ TransactionEventService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionEventService_Factory() { return new TransactionEventService(); }, token: TransactionEventService, providedIn: "root" });
8996
+ TransactionEventService.decorators = [
8997
+ { type: Injectable, args: [{ providedIn: "root" },] }
8998
+ ];
8999
+
7643
9000
  class TransactionLineSidePanelComponent {
7644
- constructor(iconService) {
9001
+ constructor(iconService, _service, _transactionEventService) {
7645
9002
  this.iconService = iconService;
9003
+ this._service = _service;
9004
+ this._transactionEventService = _transactionEventService;
7646
9005
  this.icons = Icon;
7647
- this.tabCategory = TabCategory;
9006
+ this.categories = TransactionTypeCategory;
7648
9007
  this.transactionTypes = TransactionKind;
7649
9008
  this.transactionLine = new TransactionLineInfo();
7650
9009
  this.cancelClick = new EventEmitter();
@@ -7677,8 +9036,10 @@ TransactionLineSidePanelComponent.decorators = [
7677
9036
  </div>
7678
9037
  <div class="side-panel-header-divider"></div>
7679
9038
  <div class="transaction-line-side-panel-header-item">
7680
- <span class="side-panel-header-label" [textContent]="'PRICE'| localize"></span>
7681
- <span class="side-panel-header-field" [textContent]="transactionLine.price | priceDisplay"></span>
9039
+ <span class="side-panel-header-label"
9040
+ [textContent]="activeCategory === categories.PurchaseOrderReceivedGoods ? ('TO_REPORT_IN' | localize) : ('PRICE' | localize)"></span>
9041
+ <span class="side-panel-header-field"
9042
+ [textContent]="activeCategory === categories.PurchaseOrderReceivedGoods ? quantityToReceive : (transactionLine.price | priceDisplay)"></span>
7682
9043
  </div>
7683
9044
  <icon (click)="handleCancelClick($event)" [icon]="icons.Cancel" class="close-button"></icon>
7684
9045
  </div>
@@ -7692,7 +9053,10 @@ TransactionLineSidePanelComponent.decorators = [
7692
9053
  <ng-container [ngSwitch]="transactionType">
7693
9054
  <ng-container *ngSwitchCase="transactionTypes.PurchaseOrder">
7694
9055
  <co-transaction-line-side-panel-purchase
9056
+ [transactionLine]="transactionLine"
9057
+ [transactionId]="transactionId"
7695
9058
  [category]="activeCategory"
9059
+ (quantityToReceiveChange)="quantityToReceive = $event"
7696
9060
  ></co-transaction-line-side-panel-purchase>
7697
9061
  </ng-container>
7698
9062
  <ng-container *ngSwitchDefault>
@@ -7707,11 +9071,14 @@ TransactionLineSidePanelComponent.decorators = [
7707
9071
  },] }
7708
9072
  ];
7709
9073
  TransactionLineSidePanelComponent.ctorParameters = () => [
7710
- { type: IconCacheService }
9074
+ { type: IconCacheService },
9075
+ { type: TransactionService },
9076
+ { type: TransactionEventService }
7711
9077
  ];
7712
9078
  TransactionLineSidePanelComponent.propDecorators = {
7713
9079
  transactionType: [{ type: Input }],
7714
9080
  transactionLine: [{ type: Input }],
9081
+ transactionId: [{ type: Input }],
7715
9082
  activeCategory: [{ type: Input }],
7716
9083
  cancelClick: [{ type: Output }],
7717
9084
  showClass: [{ type: HostBinding, args: ["class.co-transaction-line-side-panel",] }]
@@ -8694,42 +10061,19 @@ TransactionLineSidePanelDefaultModule.decorators = [
8694
10061
  },] }
8695
10062
  ];
8696
10063
 
8697
- class TransactionReceivingGoodsHistoryComponent {
8698
- constructor() {
8699
- this.transactionLines = [];
8700
- }
8701
- showClass() {
8702
- return true;
8703
- }
8704
- }
8705
- TransactionReceivingGoodsHistoryComponent.decorators = [
8706
- { type: Component, args: [{
8707
- selector: "co-transaction-receiving-goods-history",
8708
- template: `
8709
- <div class="history-grid-wrapper">
8710
- <co-transaction-history-grid [transactionLines]="transactionLines">
8711
- <co-simple-grid-column [headerText]="'WAREHOUSE' | localize" [field]="'warehouseNumber'" [order]="40"></co-simple-grid-column>
8712
- <co-simple-grid-column [headerText]="'LOCATION' | localize" [field]="'warehouseLocation'" [order]="60"></co-simple-grid-column>
8713
- </co-transaction-history-grid>
8714
- </div>
8715
- `,
8716
- encapsulation: ViewEncapsulation.None
8717
- },] }
8718
- ];
8719
- TransactionReceivingGoodsHistoryComponent.propDecorators = {
8720
- transactionLines: [{ type: Input }],
8721
- showClass: [{ type: HostBinding, args: ["class.co-transaction-receiving-goods-history",] }]
8722
- };
8723
-
8724
10064
  var StatusType;
8725
10065
  (function (StatusType) {
8726
10066
  StatusType["Unknown"] = "UNKNOWN";
10067
+ StatusType["BG"] = "RECEIVED";
10068
+ StatusType["BT"] = "ORDERED";
8727
10069
  })(StatusType || (StatusType = {}));
8728
10070
 
8729
10071
  class TransactionHistoryGridComponent {
8730
- constructor() {
8731
- this.tabCategory = TabCategory;
10072
+ constructor(iconsService) {
10073
+ this.iconsService = iconsService;
8732
10074
  this.statusType = StatusType;
10075
+ this.icons = Icon;
10076
+ this.deleteSelectedRow = new EventEmitter();
8733
10077
  this.extraColumns = [];
8734
10078
  }
8735
10079
  set content(columnComponents) {
@@ -8739,7 +10083,10 @@ class TransactionHistoryGridComponent {
8739
10083
  return true;
8740
10084
  }
8741
10085
  handleSelectRow(row) {
8742
- //
10086
+ this.selectedRow = row;
10087
+ }
10088
+ handleDeleteClick() {
10089
+ this.deleteSelectedRow.next(this.selectedRow);
8743
10090
  }
8744
10091
  }
8745
10092
  TransactionHistoryGridComponent.decorators = [
@@ -8747,36 +10094,59 @@ TransactionHistoryGridComponent.decorators = [
8747
10094
  selector: "co-transaction-history-grid",
8748
10095
  template: `
8749
10096
  <div class="history-grid-wrapper">
8750
- <co-simple-grid [data]="transactionLines" [extraColumns]="extraColumns" (selectRow)="handleSelectRow($event)">
8751
- <co-simple-grid-column [headerText]="'STATE' | localize" [field]="'status'" [order]="10">
10097
+ <div class="delete-button-wrapper">
10098
+ <co-grid-toolbar-button
10099
+ (buttonClick)="handleDeleteClick()"
10100
+ [iconData]="iconsService.getIcon(icons.TrashBin)"
10101
+ [disabled]="!selectedRow"
10102
+ ></co-grid-toolbar-button>
10103
+ </div>
10104
+ <co-simple-grid [data]="collection" [extraColumns]="extraColumns" (selectRow)="handleSelectRow($event)">
10105
+ <co-simple-grid-column [headerText]="'STATE' | localize" [field]="'status'" [order]="10" [width]="150">
8752
10106
  <ng-template #template let-row="row">
8753
- <co-transaction-history-grid-status [statusType]="statusType.Unknown"></co-transaction-history-grid-status>
10107
+ <co-transaction-history-grid-status [statusType]="row.status" [subType]="row.type"></co-transaction-history-grid-status>
8754
10108
  </ng-template>
8755
10109
  </co-simple-grid-column>
8756
- <co-simple-grid-column [headerText]="'DELIVERY_DATE' | localize" [field]="'deliveryDate'" [order]="20"></co-simple-grid-column>
8757
- <co-simple-grid-column [headerText]="'AMOUNT' | localize" [field]="'amount'" [order]="30"></co-simple-grid-column>
8758
- <co-simple-grid-column [headerText]="'REFERENCE' | localize" [field]="'referenceNumber'" [order]="50"></co-simple-grid-column>
8759
- <co-simple-grid-column [headerText]="'USER' | localize" [field]="'user'" [order]="70"></co-simple-grid-column>
10110
+ <co-simple-grid-column [headerText]="'DELIVERY_DATE' | localize" [field]="'receiptDate'" [order]="20" [width]="100"></co-simple-grid-column>
10111
+ <co-simple-grid-column [headerText]="'AMOUNT' | localize" [field]="'quantity'" [order]="30" [width]="70"></co-simple-grid-column>
10112
+ <co-simple-grid-column [headerText]="'REFERENCE' | localize" [field]="'reference'" [order]="50"></co-simple-grid-column>
10113
+ <co-simple-grid-column [headerText]="'USER' | localize" [field]="'username'" [order]="70"></co-simple-grid-column>
8760
10114
  </co-simple-grid>
8761
10115
  </div>
8762
10116
  `,
8763
10117
  encapsulation: ViewEncapsulation.None
8764
10118
  },] }
8765
10119
  ];
10120
+ TransactionHistoryGridComponent.ctorParameters = () => [
10121
+ { type: IconCacheService }
10122
+ ];
8766
10123
  TransactionHistoryGridComponent.propDecorators = {
8767
10124
  content: [{ type: ContentChildren, args: [SimpleGridColumnDirective,] }],
8768
- transactionLines: [{ type: Input }],
10125
+ collection: [{ type: Input }],
10126
+ deleteSelectedRow: [{ type: Output }],
8769
10127
  showClass: [{ type: HostBinding, args: ["class.co-transaction-history-grid",] }]
8770
10128
  };
8771
10129
 
8772
10130
  class TransactionHistoryGridStatusComponent {
10131
+ constructor() {
10132
+ this.type = StatusType;
10133
+ }
8773
10134
  showClass() {
8774
10135
  return true;
8775
10136
  }
8776
10137
  _getStatusIndicatorColor() {
8777
- switch (this.statusType) {
10138
+ switch (this.type[this.statusType]) {
8778
10139
  case StatusType.Unknown:
8779
10140
  return '#dce4ea';
10141
+ case StatusType.BG:
10142
+ if (this.subType && this.subType === 'correction') {
10143
+ return '#f19826';
10144
+ }
10145
+ else {
10146
+ return '#48d521';
10147
+ }
10148
+ case StatusType.BT:
10149
+ return '#f19826';
8780
10150
  }
8781
10151
  }
8782
10152
  ngAfterViewInit() {
@@ -8791,7 +10161,7 @@ TransactionHistoryGridStatusComponent.decorators = [
8791
10161
  template: `
8792
10162
  <div class="transaction-status-indication">
8793
10163
  <div #statusIndicator class="status-color-circle"></div>
8794
- <span class="status-text" [textContent]="statusType | localize"></span>
10164
+ <span class="status-text" [textContent]="type[statusType] | localize"></span>
8795
10165
  </div>
8796
10166
  `,
8797
10167
  encapsulation: ViewEncapsulation.None
@@ -8799,6 +10169,7 @@ TransactionHistoryGridStatusComponent.decorators = [
8799
10169
  ];
8800
10170
  TransactionHistoryGridStatusComponent.propDecorators = {
8801
10171
  statusType: [{ type: Input }],
10172
+ subType: [{ type: Input }],
8802
10173
  statusIndicator: [{ type: ViewChild, args: ["statusIndicator", { read: ElementRef },] }],
8803
10174
  showClass: [{ type: HostBinding, args: ["class.co-transaction-history-grid-status",] }]
8804
10175
  };
@@ -8830,7 +10201,8 @@ TransactionHistoryGridModule.decorators = [
8830
10201
  CoreModule,
8831
10202
  SimpleGridModule,
8832
10203
  PipeModule,
8833
- TransactionHistoryGridStatusModule
10204
+ TransactionHistoryGridStatusModule,
10205
+ GridToolbarButtonModule
8834
10206
  ],
8835
10207
  declarations: [
8836
10208
  TransactionHistoryGridComponent
@@ -8841,6 +10213,74 @@ TransactionHistoryGridModule.decorators = [
8841
10213
  },] }
8842
10214
  ];
8843
10215
 
10216
+ class TransactionReceivingGoodsHistoryComponent {
10217
+ constructor(_service, _datePipe) {
10218
+ this._service = _service;
10219
+ this._datePipe = _datePipe;
10220
+ this.reloadReceivingGoodsHistory = new EventEmitter();
10221
+ }
10222
+ set goodsReceiptHistory(value) {
10223
+ if (value) {
10224
+ this._goodsReceiptHistory = value.reverse();
10225
+ }
10226
+ }
10227
+ get goodsReceiptHistory() {
10228
+ return this._goodsReceiptHistory.map((receipt) => {
10229
+ receipt.receiptDate = this._datePipe.transform(receipt.receiptDate);
10230
+ return receipt;
10231
+ });
10232
+ }
10233
+ showClass() {
10234
+ return true;
10235
+ }
10236
+ handleDeleteSelectedRow(row) {
10237
+ return __awaiter(this, void 0, void 0, function* () {
10238
+ if (row && row.type !== 'correction') {
10239
+ const request = new ReceiveGoodsForPurchaseOrderCorrectionRequest();
10240
+ const correctionDetails = new PurchaseOrderLineReceiptCorrectionDetails();
10241
+ request.allowedToRemovePickedAllocations = false;
10242
+ request.transId = this.transactionId;
10243
+ request.purchaseOrderLineReceiptCorrectionDetailsDTOS = [correctionDetails];
10244
+ correctionDetails.lineNr = this.transactionLine.lineNr;
10245
+ correctionDetails.quantityToCorrect = row.quantity;
10246
+ correctionDetails.documentId = row.documentId;
10247
+ correctionDetails.documentLineNr = row.lineNumber;
10248
+ yield this._service.receiveGoodsForPurchaseOrderCorrection(request).then(() => {
10249
+ this.reloadReceivingGoodsHistory.next();
10250
+ });
10251
+ }
10252
+ });
10253
+ }
10254
+ }
10255
+ TransactionReceivingGoodsHistoryComponent.decorators = [
10256
+ { type: Component, args: [{
10257
+ selector: "co-transaction-receiving-goods-history",
10258
+ template: `
10259
+ <co-transaction-history-grid
10260
+ [collection]="goodsReceiptHistory"
10261
+ (deleteSelectedRow)="handleDeleteSelectedRow($event)"
10262
+ >
10263
+ <co-simple-grid-column [headerText]="'WAREHOUSE' | localize" [field]="'warehouseNumber'"
10264
+ [order]="40"></co-simple-grid-column>
10265
+ <co-simple-grid-column [headerText]="'LOCATION' | localize" [field]="'locationNumber'"
10266
+ [order]="60"></co-simple-grid-column>
10267
+ </co-transaction-history-grid>
10268
+ `,
10269
+ encapsulation: ViewEncapsulation.None
10270
+ },] }
10271
+ ];
10272
+ TransactionReceivingGoodsHistoryComponent.ctorParameters = () => [
10273
+ { type: TransactionService },
10274
+ { type: DatePipe }
10275
+ ];
10276
+ TransactionReceivingGoodsHistoryComponent.propDecorators = {
10277
+ goodsReceiptHistory: [{ type: Input }],
10278
+ transactionLine: [{ type: Input }],
10279
+ transactionId: [{ type: Input }],
10280
+ reloadReceivingGoodsHistory: [{ type: Output }],
10281
+ showClass: [{ type: HostBinding, args: ["class.co-transaction-receiving-goods-history",] }]
10282
+ };
10283
+
8844
10284
  class TransactionReceivingGoodsHistoryModule {
8845
10285
  }
8846
10286
  TransactionReceivingGoodsHistoryModule.decorators = [
@@ -8857,20 +10297,150 @@ TransactionReceivingGoodsHistoryModule.decorators = [
8857
10297
  ],
8858
10298
  exports: [
8859
10299
  TransactionReceivingGoodsHistoryComponent
10300
+ ],
10301
+ providers: [
10302
+ DatePipe
8860
10303
  ]
8861
10304
  },] }
8862
10305
  ];
8863
10306
 
10307
+ class ArticleConnectorService {
10308
+ constructor(_optionsService, _collectionService) {
10309
+ this._optionsService = _optionsService;
10310
+ this._collectionService = _collectionService;
10311
+ this._boFactory = new BusinessObjectFactory();
10312
+ this._optionsService.optionsInitialized.subscribe((initialized) => {
10313
+ if (initialized) {
10314
+ this.connect();
10315
+ }
10316
+ });
10317
+ }
10318
+ connect() {
10319
+ return __awaiter(this, void 0, void 0, function* () {
10320
+ this.connector = new Articles(this._optionsService.options);
10321
+ });
10322
+ }
10323
+ getWarehouseLocations(warehouseNr) {
10324
+ return __awaiter(this, void 0, void 0, function* () {
10325
+ return new Promise((resolve, reject) => {
10326
+ const collection = this._collectionService.getCollection(StockLocation.name, [warehouseNr]);
10327
+ if (collection) {
10328
+ resolve(collection);
10329
+ }
10330
+ else {
10331
+ return this.connector.getStockManagementLocations(warehouseNr).then((response) => {
10332
+ if (response && response.validationResult && response.validationResult.success) {
10333
+ const collection = this._boFactory.makeBOArrayFromRawBackendDataArray(StockLocation, response.resultObjects);
10334
+ this._collectionService.cacheCollection(StockLocation.name, collection, [warehouseNr]);
10335
+ resolve(collection);
10336
+ }
10337
+ else {
10338
+ reject(response.validationMessagesAsString);
10339
+ }
10340
+ });
10341
+ }
10342
+ });
10343
+ });
10344
+ }
10345
+ }
10346
+ ArticleConnectorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ArticleConnectorService_Factory() { return new ArticleConnectorService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(CollectionCacheService)); }, token: ArticleConnectorService, providedIn: "root" });
10347
+ ArticleConnectorService.decorators = [
10348
+ { type: Injectable, args: [{
10349
+ providedIn: "root"
10350
+ },] }
10351
+ ];
10352
+ ArticleConnectorService.ctorParameters = () => [
10353
+ { type: OptionsService },
10354
+ { type: CollectionCacheService }
10355
+ ];
10356
+
10357
+ class ArticleService {
10358
+ constructor(_articleConnectorService) {
10359
+ this._articleConnectorService = _articleConnectorService;
10360
+ }
10361
+ getWarehouseLocations(warehouseNr) {
10362
+ return __awaiter(this, void 0, void 0, function* () {
10363
+ return yield this._articleConnectorService.getWarehouseLocations(warehouseNr);
10364
+ });
10365
+ }
10366
+ }
10367
+ ArticleService.ɵprov = i0.ɵɵdefineInjectable({ factory: function ArticleService_Factory() { return new ArticleService(i0.ɵɵinject(ArticleConnectorService)); }, token: ArticleService, providedIn: "root" });
10368
+ ArticleService.decorators = [
10369
+ { type: Injectable, args: [{
10370
+ providedIn: "root"
10371
+ },] }
10372
+ ];
10373
+ ArticleService.ctorParameters = () => [
10374
+ { type: ArticleConnectorService }
10375
+ ];
10376
+
8864
10377
  class TransactionReceivingGoodsDetailsComponent {
8865
- constructor() {
8866
- this.transactionLineInfo = new TransactionLineInfo();
10378
+ constructor(_formMaster, _service, _articleService) {
10379
+ this._formMaster = _formMaster;
10380
+ this._service = _service;
10381
+ this._articleService = _articleService;
10382
+ this.reloadReceivingGoodsHistory = new EventEmitter();
10383
+ this.receiptDetails = new PurchaseOrderLineReceiptDetails();
10384
+ this.request = new ReceiveGoodsForPurchaseOrderRequest();
10385
+ this.saveButtonDisabled = false;
10386
+ this.locationDropdownFields = { text: "locationNo", value: "locationNo" };
10387
+ this.request.purchaseOrderLineReceiptDetailsDTOS = [this.receiptDetails];
10388
+ const timeElapsed = Date.now();
10389
+ this.request.receivedDate = new Date(timeElapsed);
10390
+ }
10391
+ set amountLeftToReceive(value) {
10392
+ this._amountLeftToReceive = value;
10393
+ this.receiptDetails.quantityToReceive = value;
10394
+ }
10395
+ set transactionLine(value) {
10396
+ this._transactionLine = value;
10397
+ this.receiptDetails.warehouseNr = value.warehouseNumber;
10398
+ this.receiptDetails.lineNr = value.lineNr;
8867
10399
  }
8868
10400
  showClass() {
8869
10401
  return true;
8870
10402
  }
10403
+ get amountLeftToReceive() {
10404
+ return this._amountLeftToReceive;
10405
+ }
10406
+ get transactionLine() {
10407
+ return this._transactionLine;
10408
+ }
10409
+ submit() {
10410
+ return this._formMaster.submitSlaves();
10411
+ }
10412
+ locationRequired() {
10413
+ return this._transactionLine.isLocationRequired ||
10414
+ this._transactionLine.isBatchNrRequired ||
10415
+ this._transactionLine.isSerialNrRequired;
10416
+ }
8871
10417
  handleSaveDetailsEdit() {
10418
+ return __awaiter(this, void 0, void 0, function* () {
10419
+ const valid = this.submit();
10420
+ if (valid) {
10421
+ this.saveButtonDisabled = true;
10422
+ const request = this.request;
10423
+ request.transId = this.transactionId;
10424
+ yield this._service.receiveGoodsForPurchaseOrder(request).then((result) => __awaiter(this, void 0, void 0, function* () {
10425
+ this.reloadReceivingGoodsHistory.next();
10426
+ })).catch((e) => {
10427
+ this.saveButtonDisabled = false;
10428
+ });
10429
+ this.saveButtonDisabled = false;
10430
+ }
10431
+ });
8872
10432
  }
8873
10433
  handleCancelDetailsEdit() {
10434
+ // Velden resetten
10435
+ }
10436
+ handleDropDownSelected(warehouseNr) {
10437
+ return __awaiter(this, void 0, void 0, function* () {
10438
+ if (!this.locations) {
10439
+ yield this._articleService.getWarehouseLocations(warehouseNr).then((result) => {
10440
+ this.locations = result;
10441
+ });
10442
+ }
10443
+ });
8874
10444
  }
8875
10445
  }
8876
10446
  TransactionReceivingGoodsDetailsComponent.decorators = [
@@ -8878,20 +10448,62 @@ TransactionReceivingGoodsDetailsComponent.decorators = [
8878
10448
  selector: 'co-transaction-receiving-goods-details',
8879
10449
  template: `
8880
10450
  <div class="receipt-details-wrapper">
8881
- <span class="details-header" [textContent]="'RECEIPT_DETAILS' | localize | uppercase"></span>
8882
- <div class="columns-wrapper">
8883
- <div class="details-column">
8884
- <co-input-text class="details-input" [(model)]="transactionLineInfo.amount" [placeholder]="'AMOUNT' | localize"></co-input-text>
8885
- <co-input-text class="details-input" [(model)]="transactionLineInfo.warehouseNumber" [placeholder]="'WAREHOUSE' | localize"></co-input-text>
8886
- <co-input-text class="details-input" [(model)]="valuePlaceholder" [placeholder]="'LOCATION' | localize"></co-input-text>
8887
- </div>
8888
- <div class="divider-wrapper"><div class="divider"></div></div>
8889
- <div class="details-column">
8890
- <co-input-text class="details-input" [(model)]="valuePlaceholder" [placeholder]="'BATCH_NUMBER' | localize"></co-input-text>
8891
- <co-input-text class="details-input" [(model)]="valuePlaceholder" [placeholder]="'SERIAL_NUMBER' | localize"></co-input-text>
8892
- <co-input-text class="details-input" [(model)]="transactionLineInfo.refLineNr" [placeholder]="'REFERENCE_ID' | localize"></co-input-text>
10451
+ <co-form>
10452
+ <div class="details-header" [textContent]="'RECEIPT_DETAILS' | localize | uppercase"></div>
10453
+ <div class="columns-wrapper">
10454
+ <div class="details-column">
10455
+ <co-input-text class="details-input"
10456
+ [max]="amountLeftToReceive"
10457
+ [(model)]="receiptDetails.serialNr ? 1 : receiptDetails.quantityToReceive"
10458
+ [disabled]="!!receiptDetails.serialNr || receiptDetails.quantityToReceive === 0"
10459
+ [readonly]="!!receiptDetails.serialNr || receiptDetails.quantityToReceive === 0"
10460
+ [required]="true"
10461
+ [type]="'number'"
10462
+ [min]="1"
10463
+ [placeholder]="'AMOUNT' | localize"></co-input-text>
10464
+ <co-input-text class="details-input" [(model)]="receiptDetails.warehouseNr"
10465
+ [type]="'number'"
10466
+ [hideArrowButtons]="true"
10467
+ [readonly]="transactionLine.warehouseNumber !== undefined"
10468
+ [disabled]="transactionLine.warehouseNumber !== undefined"
10469
+ [required]="transactionLine.isWarehouseRequired"
10470
+ [placeholder]="'WAREHOUSE' | localize"></co-input-text>
10471
+ <co-drop-down-list class="details-input"
10472
+ noTriangleGraphic
10473
+ (focus)="handleDropDownSelected(receiptDetails.warehouseNr)"
10474
+ [collection]="locations"
10475
+ [fields]="locationDropdownFields"
10476
+ [(model)]="receiptDetails.locationNr"
10477
+ [required]="locationRequired()"
10478
+ [readonly]="receiptDetails.quantityToReceive === 0"
10479
+ [disabled]="receiptDetails.quantityToReceive === 0"
10480
+ [placeholder]="'LOCATION' | localize"
10481
+ ></co-drop-down-list>
10482
+ <co-input-text class="details-input" [(model)]="request.packingSlipNr"
10483
+ [placeholder]="'PACKING_SLIP' | localize"></co-input-text>
10484
+ </div>
10485
+ <div class="divider-wrapper">
10486
+ <div class="divider"></div>
10487
+ </div>
10488
+ <div class="details-column">
10489
+ <co-input-date class="details-input" [(model)]="request.receivedDate"
10490
+ ></co-input-date>
10491
+ <co-input-text class="details-input" [(model)]="receiptDetails.batchNr"
10492
+ [type]="'number'"
10493
+ [hideArrowButtons]="true"
10494
+ [required]="transactionLine.isBatchNrRequired"
10495
+ [placeholder]="'BATCH_NUMBER' | localize"></co-input-text>
10496
+ <co-input-text class="details-input" [(model)]="receiptDetails.serialNr"
10497
+ [type]="'number'"
10498
+ [hideArrowButtons]="true"
10499
+ [required]="transactionLine.isSerialNrRequired"
10500
+ [placeholder]="'SERIAL_NUMBER' | localize"></co-input-text>
10501
+ <!-- <co-input-text class="details-input" [(model)]="receiptDetails.refLineNr"-->
10502
+ <!-- [placeholder]="'REFERENCE_ID' | localize"></co-input-text>-->
10503
+ </div>
8893
10504
  </div>
8894
- </div>
10505
+ </co-form>
10506
+
8895
10507
  <div class="save-cancel-wrapper">
8896
10508
  <co-button class="button-wrapper" [label]="'SAVE' | localize" (click)="handleSaveDetailsEdit()"></co-button>
8897
10509
  <co-button class="button-wrapper" [label]="'CANCEL' | localize" (click)="handleCancelDetailsEdit()"></co-button>
@@ -8901,8 +10513,16 @@ TransactionReceivingGoodsDetailsComponent.decorators = [
8901
10513
  encapsulation: ViewEncapsulation.None
8902
10514
  },] }
8903
10515
  ];
10516
+ TransactionReceivingGoodsDetailsComponent.ctorParameters = () => [
10517
+ { type: FormMasterService },
10518
+ { type: TransactionService },
10519
+ { type: ArticleService }
10520
+ ];
8904
10521
  TransactionReceivingGoodsDetailsComponent.propDecorators = {
8905
- transactionLineInfo: [{ type: Input }],
10522
+ amountLeftToReceive: [{ type: Input }],
10523
+ transactionId: [{ type: Input }],
10524
+ transactionLine: [{ type: Input }],
10525
+ reloadReceivingGoodsHistory: [{ type: Output }],
8906
10526
  showClass: [{ type: HostBinding, args: ["class.co-transaction-receiving-goods-details",] }]
8907
10527
  };
8908
10528
 
@@ -8915,7 +10535,10 @@ TransactionReceivingGoodsDetailsModule.decorators = [
8915
10535
  CoreModule,
8916
10536
  PipeModule,
8917
10537
  InputTextModule,
10538
+ FormModule,
10539
+ InputDatePickerModule,
8918
10540
  ButtonModule,
10541
+ DropDownModule,
8919
10542
  ],
8920
10543
  declarations: [
8921
10544
  TransactionReceivingGoodsDetailsComponent
@@ -8926,22 +10549,6 @@ TransactionReceivingGoodsDetailsModule.decorators = [
8926
10549
  },] }
8927
10550
  ];
8928
10551
 
8929
- var TransactionTypeCategory;
8930
- (function (TransactionTypeCategory) {
8931
- TransactionTypeCategory["PurchaseOrderOverview"] = "purchaseOrderOverview";
8932
- TransactionTypeCategory["PurchaseOrderOrderConfirmation"] = "purchaseOrderOrderConfirmation";
8933
- TransactionTypeCategory["PurchaseOrderTransport"] = "purchaseOrderTransport";
8934
- TransactionTypeCategory["PurchaseOrderReceivedGoods"] = "purchaseOrderReceivedGoods";
8935
- TransactionTypeCategory["PurchaseOrderInvoiceCheck"] = "purchaseOrderInvoiceCheck";
8936
- TransactionTypeCategory["PurchaseOrderMenu"] = "purchaseOrderMenu";
8937
- TransactionTypeCategory["SalesOrderOverview"] = "salesOrderOverview";
8938
- TransactionTypeCategory["SalesOrderPurchase"] = "salesOrderPurchase";
8939
- TransactionTypeCategory["SalesOrderLogistics"] = "salesOrderLogistics";
8940
- TransactionTypeCategory["SalesOrderPlanning"] = "salesOrderPlanning";
8941
- TransactionTypeCategory["SalesOrderDeliveryNote"] = "salesOrderDeliveryNote";
8942
- TransactionTypeCategory["SalesOrderInvoice"] = "salesOrderInvoice";
8943
- })(TransactionTypeCategory || (TransactionTypeCategory = {}));
8944
-
8945
10552
  class TransactionQuickAccessOrderConfirmationComponent extends TransactionBaseComponent {
8946
10553
  showClass() {
8947
10554
  return true;
@@ -8969,27 +10576,63 @@ TransactionQuickAccessOrderConfirmationComponent.propDecorators = {
8969
10576
  };
8970
10577
 
8971
10578
  class TransactionQuickAccessReceivedGoodsComponent extends TransactionBaseComponent {
10579
+ constructor(_transactionService, _transactionEventService) {
10580
+ super(_transactionService);
10581
+ this._transactionService = _transactionService;
10582
+ this._transactionEventService = _transactionEventService;
10583
+ // Route through event service instead
10584
+ this.checkboxValueChanged = new EventEmitter();
10585
+ this.commitCheckboxState = false;
10586
+ this._subscriptions = [];
10587
+ }
8972
10588
  showClass() {
8973
10589
  return true;
8974
10590
  }
10591
+ ngOnInit() {
10592
+ const timeElapsed = Date.now();
10593
+ this.commitDate = new Date(timeElapsed);
10594
+ this._subscriptions.push(this._transactionEventService.receivedPurchaseOrderCommit.subscribe((value) => {
10595
+ this.commitCheckboxState = value;
10596
+ }));
10597
+ }
10598
+ ngOnDestroy() {
10599
+ this._subscriptions.forEach((subscription) => subscription.unsubscribe());
10600
+ }
10601
+ handleCommitEvent(value) {
10602
+ this._transactionEventService.commitReceivePurchaseOrders.next(value);
10603
+ }
8975
10604
  }
8976
10605
  TransactionQuickAccessReceivedGoodsComponent.decorators = [
8977
10606
  { type: Component, args: [{
8978
10607
  selector: "co-transaction-quick-access-received-goods",
8979
10608
  template: `
8980
- <co-input-text
8981
- [placeholder]="'RECEIVED_DATE' | localize"
8982
- ></co-input-text>
8983
- <co-input-text
8984
- [placeholder]="'PACKING_SLIP' | localize"
8985
- ></co-input-text>
8986
- <co-input-checkbox
8987
- ></co-input-checkbox>
10609
+ <co-input-date
10610
+ [placeholder]="'CONFIRMED_DATE' | localize"
10611
+ [(model)]="this.commitDate"
10612
+ ></co-input-date>
10613
+ <co-input-text
10614
+ [placeholder]="'PACKING_SLIP' | localize"
10615
+ [(model)]="this.commitReferenceId"
10616
+ ></co-input-text>
10617
+ <co-input-checkbox
10618
+ class="checkbox-wrapper"
10619
+ [(model)]="commitCheckboxState"
10620
+ [disabled]="commitCheckboxState"
10621
+ (modelChange)="handleCommitEvent({checkboxValue: $event, date: this.commitDate, id: this.commitReferenceId})"
10622
+ ></co-input-checkbox>
8988
10623
  `,
8989
10624
  encapsulation: ViewEncapsulation.None
8990
10625
  },] }
8991
10626
  ];
10627
+ TransactionQuickAccessReceivedGoodsComponent.ctorParameters = () => [
10628
+ { type: TransactionService },
10629
+ { type: TransactionEventService }
10630
+ ];
8992
10631
  TransactionQuickAccessReceivedGoodsComponent.propDecorators = {
10632
+ commitDate: [{ type: Input }],
10633
+ commitReferenceId: [{ type: Input }],
10634
+ packingSlipId: [{ type: Input }],
10635
+ checkboxValueChanged: [{ type: Output }],
8993
10636
  showClass: [{ type: HostBinding, args: ["class.co-transaction-quick-access-received-goods",] }]
8994
10637
  };
8995
10638
 
@@ -9063,35 +10706,145 @@ TransactionOrderConfirmationGridComponent.propDecorators = {
9063
10706
  showClass: [{ type: HostBinding, args: ["class.co-transaction-order-confirmation-grid",] }]
9064
10707
  };
9065
10708
 
10709
+ class ReceiveGoodsViewModel {
10710
+ constructor(transactionLine, goodsReceiptStatus, selected, toReceive) {
10711
+ this.toReceive = 0;
10712
+ this.location = '';
10713
+ this.transactionLine = transactionLine;
10714
+ this.goodsReceiptStatus = goodsReceiptStatus;
10715
+ this.selected = selected;
10716
+ this.toReceive = toReceive;
10717
+ }
10718
+ }
10719
+
9066
10720
  class TransactionReceivedGoodsGridComponent extends TransactionGridBaseComponent {
10721
+ constructor(_imageService, _transactionService, _transactionEventService, _articleService) {
10722
+ super(_imageService);
10723
+ this._imageService = _imageService;
10724
+ this._transactionService = _transactionService;
10725
+ this._transactionEventService = _transactionEventService;
10726
+ this._articleService = _articleService;
10727
+ this.locationDropdownFields = { text: "locationNo", value: "locationNo" };
10728
+ this.rowViewModels = new Map();
10729
+ this._subscriptions = [];
10730
+ this._subscriptions.push(this._transactionEventService.commitReceivePurchaseOrders.subscribe((value => {
10731
+ this.handleReceiveSelectedPurchaseOrders(value);
10732
+ })), this._transactionEventService.transactionLineChanged.subscribe((value) => {
10733
+ this.handleTransactionLineChanged(value);
10734
+ }));
10735
+ }
9067
10736
  showClass() {
9068
10737
  return true;
9069
10738
  }
10739
+ ngOnInit() {
10740
+ this.transactionLines.forEach((line) => {
10741
+ this.rowViewModels.set(line, new ReceiveGoodsViewModel(line, new GoodsReceiptStatus(), false));
10742
+ });
10743
+ }
10744
+ ngOnDestroy() {
10745
+ this._subscriptions.forEach((subscription) => subscription.unsubscribe());
10746
+ }
10747
+ handleRowVisible(row) {
10748
+ return __awaiter(this, void 0, void 0, function* () {
10749
+ yield this._transactionService.getGoodsReceiptStatus(this.transactionId, row.lineNr)
10750
+ .then((result) => {
10751
+ this.rowViewModels.set(row, new ReceiveGoodsViewModel(row, result, result.quantityToReceive === 0, result.quantityToReceive));
10752
+ });
10753
+ });
10754
+ }
10755
+ locationRequired(row) {
10756
+ return row.isLocationRequired || row.isBatchNrRequired || row.isSerialNrRequired;
10757
+ }
10758
+ handleDropDownSelected(warehouseNr) {
10759
+ return __awaiter(this, void 0, void 0, function* () {
10760
+ if (!this.locations) {
10761
+ yield this._articleService.getWarehouseLocations(warehouseNr).then((result) => {
10762
+ this.locations = result;
10763
+ });
10764
+ }
10765
+ });
10766
+ }
10767
+ getRowViewModel(row) {
10768
+ return this.rowViewModels.get(row);
10769
+ }
10770
+ handleReceiveSelectedPurchaseOrders(value) {
10771
+ return __awaiter(this, void 0, void 0, function* () {
10772
+ const selectedRows = [...this.rowViewModels.values()]
10773
+ .filter((row) => row.selected && row.toReceive !== 0);
10774
+ if (value.checkboxValue && selectedRows.length > 0) {
10775
+ const receivedGoodsRequest = new ReceiveGoodsForPurchaseOrderRequest();
10776
+ receivedGoodsRequest.transId = this.transactionId;
10777
+ receivedGoodsRequest.receivedDate = value.date;
10778
+ receivedGoodsRequest.packingSlipNr = value.id;
10779
+ receivedGoodsRequest.purchaseOrderLineReceiptDetailsDTOS = [];
10780
+ selectedRows.forEach((row) => {
10781
+ const detail = new PurchaseOrderLineReceiptDetails();
10782
+ detail.lineNr = row.transactionLine.lineNr;
10783
+ detail.quantityToReceive = row.toReceive;
10784
+ detail.warehouseNr = row.transactionLine.warehouseNumber;
10785
+ detail.locationNr = row.location;
10786
+ receivedGoodsRequest.purchaseOrderLineReceiptDetailsDTOS.push(detail);
10787
+ });
10788
+ yield this._transactionService.receiveGoodsForPurchaseOrder(receivedGoodsRequest).then(() => {
10789
+ this._handleAfterCommitReceivedOrders(selectedRows);
10790
+ });
10791
+ }
10792
+ });
10793
+ }
10794
+ _handleAfterCommitReceivedOrders(selectedRows) {
10795
+ selectedRows.forEach((row) => {
10796
+ row.goodsReceiptStatus.quantityToReceive = row.goodsReceiptStatus.quantityToReceive -= row.toReceive;
10797
+ row.toReceive = row.goodsReceiptStatus.quantityToReceive;
10798
+ if (row.goodsReceiptStatus.quantityToReceive !== 0) {
10799
+ row.selected = false;
10800
+ }
10801
+ });
10802
+ this._transactionEventService.receivedPurchaseOrderCommit.next(false);
10803
+ }
10804
+ handleTransactionLineChanged(change) {
10805
+ const receiveGoodsViewModel = this.rowViewModels.get(change.transactionLine);
10806
+ receiveGoodsViewModel.goodsReceiptStatus.quantityToReceive = change.goodsReceiptStatus.quantityToReceive;
10807
+ receiveGoodsViewModel.toReceive = change.goodsReceiptStatus.quantityToReceive;
10808
+ }
9070
10809
  }
9071
10810
  TransactionReceivedGoodsGridComponent.decorators = [
9072
10811
  { type: Component, args: [{
9073
10812
  selector: "co-transaction-received-goods-grid",
9074
10813
  template: `
9075
- <co-transaction-base-grid [transactionLines]="transactionLines" (sidePanelClicked)="openSidePanel($event)">
9076
- <co-simple-grid-column [width]="100" [field]="'warehouseNumber'" [textAlign]="align.Center" [order]="40">
9077
- <ng-template #headerTemplate let-row="row">
9078
- <icon class="transaction-grid-header-icon" [icon]="icons.Warehouse"></icon>
10814
+ <co-transaction-base-grid [transactionLines]="transactionLines" (sidePanelClicked)="openSidePanel($event)" (rowVisible)="handleRowVisible($event)">
10815
+ <co-simple-grid-column [headerText]="'WAREHOUSE' | localize" [field]="'warehouseNumber'" [order]="40"></co-simple-grid-column>
10816
+ <co-simple-grid-column [headerText]="'LOCATION' | localize" [order]="45">
10817
+ <ng-template #template let-row = "row">
10818
+ <co-drop-down-list
10819
+ noTriangleGraphic
10820
+ (focus)="handleDropDownSelected(row.warehouseNumber)"
10821
+ [required]="locationRequired(row) && getRowViewModel(row).goodsReceiptStatus.quantityToReceive > 0"
10822
+ [collection]="locations"
10823
+ [fields]="locationDropdownFields"
10824
+ [(model)]="getRowViewModel(row).location"
10825
+ [disabled]="getRowViewModel(row).goodsReceiptStatus.quantityToReceive === 0"
10826
+ ></co-drop-down-list>
9079
10827
  </ng-template>
9080
10828
  </co-simple-grid-column>
9081
- <co-simple-grid-column [field]="'location'" [order]="50">
9082
- <ng-template #headerTemplate let-row="row">
9083
- <icon class="transaction-grid-header-icon" [icon]="icons.LocationDotSolid"></icon>
10829
+ <co-simple-grid-column [headerText]="'IN_ORDER' | localize" [field]="'amount'" [order]="50"></co-simple-grid-column>
10830
+ <co-simple-grid-column [headerText]="'RECEIVED' | localize" [order]="51">
10831
+ <ng-template #template let-row = "row">
10832
+ <co-input-number-picker
10833
+ [min]="getRowViewModel(row).goodsReceiptStatus.quantityToReceive > 0 ? 1 : 0"
10834
+ [max]="getRowViewModel(row).goodsReceiptStatus.quantityToReceive"
10835
+ [(model)]="getRowViewModel(row).toReceive"
10836
+ [disabled]="getRowViewModel(row).goodsReceiptStatus.quantityToReceive === 0"
10837
+ [readonly]="getRowViewModel(row).goodsReceiptStatus.quantityToReceive === 0"
10838
+ ></co-input-number-picker>
9084
10839
  </ng-template>
9085
10840
  </co-simple-grid-column>
9086
- <co-simple-grid-column [headerText]="'IN_ORDER' | localize" [field]="'amount'" [order]="51"></co-simple-grid-column>
9087
- <co-simple-grid-column [headerText]="'RECEIVED' | localize" [field]="'amount'" [order]="52"></co-simple-grid-column>
9088
- <co-simple-grid-column [headerText]="'BATCH' | localize" [field]="'nettoPrice'" [order]="53"></co-simple-grid-column>
9089
- <co-simple-grid-column [field]="'commitButton'" [order]="55" [textAlign]="align.Center">
9090
- <ng-template #headerTemplate let-row="row">
9091
- <co-input-checkbox></co-input-checkbox>
9092
- </ng-template>
9093
- <ng-template #template let-row="row">
9094
- <co-input-checkbox></co-input-checkbox>
10841
+ <co-simple-grid-column [headerText]="'BATCH' | localize" [field]="'inOrder'" [order]="52"></co-simple-grid-column>
10842
+ <co-simple-grid-column [headerText]="'Commit button'" [field]="'commitButton'" [order]="55">
10843
+ <ng-template #template let-row = "row">
10844
+ <co-input-checkbox
10845
+ [(model)]="getRowViewModel(row).selected"
10846
+ [disabled]="getRowViewModel(row).goodsReceiptStatus.quantityToReceive === 0"
10847
+ ></co-input-checkbox>
9095
10848
  </ng-template>
9096
10849
  </co-simple-grid-column>
9097
10850
  </co-transaction-base-grid>
@@ -9099,6 +10852,12 @@ TransactionReceivedGoodsGridComponent.decorators = [
9099
10852
  encapsulation: ViewEncapsulation.None
9100
10853
  },] }
9101
10854
  ];
10855
+ TransactionReceivedGoodsGridComponent.ctorParameters = () => [
10856
+ { type: TransactionImageService },
10857
+ { type: TransactionService },
10858
+ { type: TransactionEventService },
10859
+ { type: ArticleService }
10860
+ ];
9102
10861
  TransactionReceivedGoodsGridComponent.propDecorators = {
9103
10862
  showClass: [{ type: HostBinding, args: ["class.co-transaction-received-goods-grid",] }]
9104
10863
  };
@@ -9289,7 +11048,7 @@ TransactionConfirmationHistoryComponent.decorators = [
9289
11048
  selector: "co-transaction-confirmation-history",
9290
11049
  template: `
9291
11050
  <div class="history-grid-wrapper">
9292
- <co-transaction-history-grid [transactionLines]="transactionLines">
11051
+ <co-transaction-history-grid [collection]="transactionLines">
9293
11052
  <co-simple-grid-column [headerText]="'PRICE' | localize" [field]="'price'" [order]="40"></co-simple-grid-column>
9294
11053
  <co-simple-grid-column [headerText]="'DATE' | localize" [field]="'date'" [order]="60"></co-simple-grid-column>
9295
11054
  </co-transaction-history-grid>
@@ -9324,13 +11083,36 @@ TransactionConfirmationHistoryModule.decorators = [
9324
11083
  ];
9325
11084
 
9326
11085
  class TransactionLineSidePanelPurchaseComponent {
9327
- constructor() {
11086
+ constructor(_service, _transactionEventService) {
11087
+ this._service = _service;
11088
+ this._transactionEventService = _transactionEventService;
9328
11089
  this.categories = TransactionTypeCategory;
9329
11090
  this.transactionLine = new TransactionLineInfo();
11091
+ this.quantityToReceiveChange = new EventEmitter();
11092
+ this.goodsReceiptStatus = new GoodsReceiptStatusWithHistory();
11093
+ }
11094
+ set transactionId(value) {
11095
+ if (value) {
11096
+ this._transactionId = value;
11097
+ this.getGoodsReceiptStatusWithHistory();
11098
+ }
11099
+ }
11100
+ get transactionId() {
11101
+ return this._transactionId;
9330
11102
  }
9331
11103
  showClass() {
9332
11104
  return true;
9333
11105
  }
11106
+ getGoodsReceiptStatusWithHistory() {
11107
+ return __awaiter(this, void 0, void 0, function* () {
11108
+ yield this._service.getGoodsReceiptStatusWithHistory(this._transactionId, this.transactionLine.lineNr)
11109
+ .then((result) => {
11110
+ this.goodsReceiptStatus = result;
11111
+ this._transactionEventService.transactionLineChanged.next({ transactionLine: this.transactionLine, goodsReceiptStatus: result });
11112
+ this.quantityToReceiveChange.next(result.quantityToReceive);
11113
+ });
11114
+ });
11115
+ }
9334
11116
  }
9335
11117
  TransactionLineSidePanelPurchaseComponent.decorators = [
9336
11118
  { type: Component, args: [{
@@ -9344,8 +11126,18 @@ TransactionLineSidePanelPurchaseComponent.decorators = [
9344
11126
  </ng-container>
9345
11127
 
9346
11128
  <ng-container *ngSwitchCase="categories.PurchaseOrderReceivedGoods">
9347
- <co-transaction-receiving-goods-details></co-transaction-receiving-goods-details>
9348
- <co-transaction-receiving-goods-history></co-transaction-receiving-goods-history>
11129
+ <co-transaction-receiving-goods-details
11130
+ [transactionId]="transactionId"
11131
+ [transactionLine]="transactionLine"
11132
+ [amountLeftToReceive]="goodsReceiptStatus.quantityToReceive"
11133
+ (reloadReceivingGoodsHistory)="getGoodsReceiptStatusWithHistory()"
11134
+ ></co-transaction-receiving-goods-details>
11135
+ <co-transaction-receiving-goods-history
11136
+ [transactionId]="transactionId"
11137
+ [transactionLine]="transactionLine"
11138
+ [goodsReceiptHistory]="goodsReceiptStatus.goodsReceiptHistory"
11139
+ (reloadReceivingGoodsHistory)="getGoodsReceiptStatusWithHistory()"
11140
+ ></co-transaction-receiving-goods-history>
9349
11141
  </ng-container>
9350
11142
 
9351
11143
  <ng-container *ngSwitchDefault>
@@ -9358,9 +11150,15 @@ TransactionLineSidePanelPurchaseComponent.decorators = [
9358
11150
  encapsulation: ViewEncapsulation.None
9359
11151
  },] }
9360
11152
  ];
11153
+ TransactionLineSidePanelPurchaseComponent.ctorParameters = () => [
11154
+ { type: TransactionService },
11155
+ { type: TransactionEventService }
11156
+ ];
9361
11157
  TransactionLineSidePanelPurchaseComponent.propDecorators = {
9362
- category: [{ type: Input }],
9363
11158
  transactionLine: [{ type: Input }],
11159
+ transactionId: [{ type: Input }],
11160
+ category: [{ type: Input }],
11161
+ quantityToReceiveChange: [{ type: Output }],
9364
11162
  showClass: [{ type: HostBinding, args: ["class.co-transaction-line-side-panel-purchase",] }]
9365
11163
  };
9366
11164
 
@@ -9688,7 +11486,8 @@ TransactionQuickAccessReceivedGoodsModule.decorators = [
9688
11486
  CommonModule,
9689
11487
  InputTextModule,
9690
11488
  PipeModule,
9691
- InputCheckboxModule
11489
+ InputCheckboxModule,
11490
+ InputDatePickerModule
9692
11491
  ],
9693
11492
  declarations: [
9694
11493
  TransactionQuickAccessReceivedGoodsComponent
@@ -9770,7 +11569,6 @@ class ViewModeButtonsComponent {
9770
11569
  this.viewModes = ContentViewMode;
9771
11570
  this.showViewModes = [this.viewModes.List, this.viewModes.Grid, this.viewModes.Tiles];
9772
11571
  this.viewModeChange = new EventEmitter();
9773
- this._activeViewMode = ContentViewMode.List;
9774
11572
  }
9775
11573
  showClass() {
9776
11574
  return true;
@@ -9782,6 +11580,9 @@ class ViewModeButtonsComponent {
9782
11580
  get activeViewMode() {
9783
11581
  return this._activeViewMode;
9784
11582
  }
11583
+ ngOnInit() {
11584
+ this.activeViewMode = this.showViewModes.includes(ContentViewMode.List) ? ContentViewMode.List : this.showViewModes[0];
11585
+ }
9785
11586
  }
9786
11587
  ViewModeButtonsComponent.decorators = [
9787
11588
  { type: Component, args: [{
@@ -9883,6 +11684,7 @@ class TransactionGridComponent {
9883
11684
  .create(this.injector);
9884
11685
  this.appRef.attachView(this._componentRef.hostView);
9885
11686
  this._componentRef.instance.transactionLines = this.transactionLines;
11687
+ this._componentRef.instance.transactionId = this.transactionId;
9886
11688
  this._componentRef.instance.sidePanelClicked = this.sidePanelClicked;
9887
11689
  const domElem = this._componentRef.hostView
9888
11690
  .rootNodes[0];
@@ -9912,6 +11714,7 @@ TransactionGridComponent.propDecorators = {
9912
11714
  container: [{ type: ViewChild, args: ['transactionGrid', { read: ElementRef },] }],
9913
11715
  transactionType: [{ type: Input }],
9914
11716
  activeCategory: [{ type: Input }],
11717
+ transactionId: [{ type: Input }],
9915
11718
  transactionLines: [{ type: Input }],
9916
11719
  sidePanelClicked: [{ type: Output }],
9917
11720
  showClass: [{ type: HostBinding, args: ["class.co-transaction-grid",] }]
@@ -9943,7 +11746,9 @@ TransactionReceivedGoodsGridModule.decorators = [
9943
11746
  TransactionBaseGridModule,
9944
11747
  SimpleGridModule,
9945
11748
  PipeModule,
9946
- InputCheckboxModule
11749
+ InputCheckboxModule,
11750
+ DropDownModule,
11751
+ InputNumberPickerModule
9947
11752
  ],
9948
11753
  declarations: [
9949
11754
  TransactionReceivedGoodsGridComponent
@@ -10024,10 +11829,8 @@ class TransactionSearchComponent {
10024
11829
  this.showFilterSidebar = false;
10025
11830
  }
10026
11831
  handleResetFilter() {
10027
- this.handleHideFilter();
10028
- setTimeout(() => {
10029
- this.handleShowFilter();
10030
- }, 10);
11832
+ this.showFilterSidebar = false;
11833
+ setTimeout(() => { this.showFilterSidebar = true; }, 10);
10031
11834
  }
10032
11835
  onTransactionClick(transaction) {
10033
11836
  this.transactionClick.emit(transaction);
@@ -10043,7 +11846,8 @@ TransactionSearchComponent.decorators = [
10043
11846
  (resetFilterClick)="handleResetFilter()"></co-transaction-filter>
10044
11847
  </div>
10045
11848
  <div class="transaction-search-result-wrapper">
10046
- <co-transaction-search-result (filterButtonClick)="handleShowFilter()" (transactionClick)="onTransactionClick($event)"></co-transaction-search-result>
11849
+ <co-transaction-search-result (filterButtonClick)="handleShowFilter()"
11850
+ (transactionClick)="onTransactionClick($event)"></co-transaction-search-result>
10047
11851
  </div>
10048
11852
  </div>
10049
11853
  `,
@@ -10063,6 +11867,110 @@ TransactionSearchComponent.propDecorators = {
10063
11867
  showClass: [{ type: HostBinding, args: ["class.co-transaction-search",] }]
10064
11868
  };
10065
11869
 
11870
+ class TransactionSearchGridComponent {
11871
+ constructor() {
11872
+ this.align = ColumnAlign;
11873
+ this.transactions = [];
11874
+ this.transactionClick = new EventEmitter();
11875
+ this.extraColumns = [];
11876
+ }
11877
+ set content(columnComponents) {
11878
+ this.extraColumns = columnComponents.toArray();
11879
+ }
11880
+ showClass() {
11881
+ return true;
11882
+ }
11883
+ onTransactionClick(transaction) {
11884
+ this.transactionClick.emit(transaction);
11885
+ }
11886
+ }
11887
+ TransactionSearchGridComponent.decorators = [
11888
+ { type: Component, args: [{
11889
+ selector: "co-transaction-search-grid",
11890
+ template: `
11891
+ <div>
11892
+ <co-simple-grid [data]="transactions" [extraColumns]="extraColumns" [dragDropEnabled]="true" [emitDragDrop]="false"
11893
+ (selectRow)="onTransactionClick($event)">
11894
+ <co-simple-grid-column [headerText]="'ACTIVE' | localize"
11895
+ [order]="10" [textAlign]="align.Center">
11896
+ <ng-template #template let-row= "row">
11897
+ <co-input-checkbox [model]="row.active" readonly></co-input-checkbox>
11898
+ </ng-template>
11899
+ </co-simple-grid-column>
11900
+ <co-simple-grid-column [headerText]="'NR' | localize" [field]="'transNr'" [order]="20"></co-simple-grid-column>
11901
+ <co-simple-grid-column [headerText]="'NAME' | localize" [field]="'relationName'"
11902
+ [order]="30"></co-simple-grid-column>
11903
+ <co-simple-grid-column [headerText]="'RELATION_NUMBER' | localize" [field]="'relationNr'"
11904
+ [order]="40"></co-simple-grid-column>
11905
+ <co-simple-grid-column [headerText]="'BRANCH' | localize" [field]="'brancheName'"
11906
+ [order]="50"></co-simple-grid-column>
11907
+ <co-simple-grid-column [headerText]="'ADDRESS' | localize" [field]="'adres'"
11908
+ [order]="70"></co-simple-grid-column>
11909
+ <co-simple-grid-column [headerText]="'REFERENCE_RELATION' | localize" [field]="'relationReference'" [order]="80"></co-simple-grid-column>
11910
+ <co-simple-grid-column [headerText]="'PREFERRED_DATE' | localize"
11911
+ [order]="90" [textAlign]="align.Right" [resizable]="false">
11912
+ <ng-template #template let-row = "row">
11913
+ <div [textContent]=""></div> <!--todo: wachten op aanpassing api-->
11914
+ </ng-template>
11915
+ </co-simple-grid-column>
11916
+ <co-simple-grid-column [headerText]="'TRANSACTION_DATE' | localize"
11917
+ [order]="100" [textAlign]="align.Right" [resizable]="false">
11918
+ <ng-template #template let-row = "row">
11919
+ <div [textContent]="row.transDate | date:'dd MMM yyyy'"></div>
11920
+ </ng-template>
11921
+ </co-simple-grid-column>
11922
+ <co-simple-grid-column [headerText]="'ORDER_DEFINITIVE' | localize"
11923
+ [order]="105" [textAlign]="align.Center">
11924
+ <ng-template #template let-row= "row">
11925
+ <co-input-checkbox [model]="row.transactionDefinitive" readonly></co-input-checkbox>
11926
+ </ng-template>
11927
+ </co-simple-grid-column>
11928
+ <co-simple-grid-column [headerText]="'DELIVERY_DATE' | localize"
11929
+ [order]="110" [textAlign]="align.Right" [resizable]="false" >
11930
+ <ng-template #template let-row = "row">
11931
+ <div [textContent]="row.deliveryDate | date:'dd MMM yyyy'"></div>
11932
+ </ng-template>
11933
+ </co-simple-grid-column>
11934
+ <co-simple-grid-column [headerText]="'DELIVERY_DATE_DEFINITIVE' | localize"
11935
+ [order]="115" [textAlign]="align.Center">
11936
+ <ng-template #template let-row= "row">
11937
+ <co-input-checkbox [model]="row.deliveryDateDefinitive" readonly></co-input-checkbox>
11938
+ </ng-template>
11939
+ </co-simple-grid-column>
11940
+ </co-simple-grid>
11941
+ </div>
11942
+ `,
11943
+ encapsulation: ViewEncapsulation.None
11944
+ },] }
11945
+ ];
11946
+ TransactionSearchGridComponent.ctorParameters = () => [];
11947
+ TransactionSearchGridComponent.propDecorators = {
11948
+ content: [{ type: ContentChildren, args: [SimpleGridColumnDirective,] }],
11949
+ showClass: [{ type: HostBinding, args: ["class.co-transaction-search-grid",] }],
11950
+ transactions: [{ type: Input }],
11951
+ transactionClick: [{ type: Output }]
11952
+ };
11953
+
11954
+ class TransactionSearchGridModule {
11955
+ }
11956
+ TransactionSearchGridModule.decorators = [
11957
+ { type: NgModule, args: [{
11958
+ imports: [
11959
+ CommonModule,
11960
+ CoreModule,
11961
+ PipeModule,
11962
+ SimpleGridModule,
11963
+ InputCheckboxModule
11964
+ ],
11965
+ declarations: [
11966
+ TransactionSearchGridComponent
11967
+ ],
11968
+ exports: [
11969
+ TransactionSearchGridComponent
11970
+ ]
11971
+ },] }
11972
+ ];
11973
+
10066
11974
  class TransactionTileComponent {
10067
11975
  constructor(iconCacheService) {
10068
11976
  this.iconCacheService = iconCacheService;
@@ -10095,10 +12003,7 @@ TransactionTileComponent.decorators = [
10095
12003
  </div>
10096
12004
  </div>
10097
12005
  <div class="transaction-tile-order-summary">
10098
- <div class="header"><span [textContent]="'€32.519'"></span></div>
10099
- <div>
10100
- <co-button [textContent]="'Besteld'"></co-button>
10101
- </div>
12006
+ <div class="header"><span [textContent]="'€12.345'"></span></div> <!--todo: vullen als api aanpassing gedaan is-->
10102
12007
  </div>
10103
12008
  </div>
10104
12009
  <div class="transaction-tile-footer">
@@ -10190,8 +12095,10 @@ TransactionSearchService.ctorParameters = () => [
10190
12095
  ];
10191
12096
 
10192
12097
  class TransactionSearchResultComponent {
10193
- constructor(searchService) {
12098
+ constructor(searchService, iconCacheService) {
10194
12099
  this.searchService = searchService;
12100
+ this.iconCacheService = iconCacheService;
12101
+ this.icon = Icon;
10195
12102
  this.viewModes = ContentViewMode;
10196
12103
  this.filterButtonClick = new EventEmitter();
10197
12104
  this.transactionClick = new EventEmitter();
@@ -10202,7 +12109,7 @@ class TransactionSearchResultComponent {
10202
12109
  }
10203
12110
  ngOnInit() {
10204
12111
  }
10205
- onTileClick(transaction) {
12112
+ onTransactionClick(transaction) {
10206
12113
  this.transactionClick.emit(transaction);
10207
12114
  }
10208
12115
  }
@@ -10215,22 +12122,28 @@ TransactionSearchResultComponent.decorators = [
10215
12122
  [(model)]="searchService.searchRequest.general"
10216
12123
  [placeholder]="'Waar ben je naar op zoek?'"
10217
12124
  (search)="searchService.searchTransactions()"></co-input-search>
10218
- <co-button class="transaction-search-filter-button" [label]="'Filter'"
12125
+ <co-button class="transaction-search-filter-button" [iconData]="iconCacheService.getIcon(icon.BarsFilter)"
10219
12126
  (click)="filterButtonClick.emit()"></co-button>
10220
12127
  </div>
10221
12128
  <co-view-mode-buttons [showViewModes]="[viewModes.Tiles, viewModes.Grid]"
10222
12129
  (viewModeChange)="activeViewMode = $event"></co-view-mode-buttons>
10223
12130
  <div class="transaction-search-result-content-tiles-wrapper" *ngIf="activeViewMode === viewModes.Tiles">
10224
12131
  <div class="transaction-tile" *ngFor="let transaction of searchService.transactions">
10225
- <co-transaction-tile [transaction]="transaction" (tileClick)="onTileClick(transaction)"></co-transaction-tile>
12132
+ <co-transaction-tile [transaction]="transaction"
12133
+ (tileClick)="onTransactionClick(transaction)"></co-transaction-tile>
10226
12134
  </div>
10227
12135
  </div>
12136
+ <div class="transaction-search-result-content-grid-wrapper" *ngIf="activeViewMode === viewModes.Grid">
12137
+ <co-transaction-search-grid [transactions]="searchService.transactions"
12138
+ (transactionClick)="onTransactionClick($event)"></co-transaction-search-grid>
12139
+ </div>
10228
12140
  `,
10229
12141
  encapsulation: ViewEncapsulation.None
10230
12142
  },] }
10231
12143
  ];
10232
12144
  TransactionSearchResultComponent.ctorParameters = () => [
10233
- { type: TransactionSearchService }
12145
+ { type: TransactionSearchService },
12146
+ { type: IconCacheService }
10234
12147
  ];
10235
12148
  TransactionSearchResultComponent.propDecorators = {
10236
12149
  filterButtonClick: [{ type: Output }],
@@ -10248,7 +12161,8 @@ TransactionSearchResultModule.decorators = [
10248
12161
  ButtonModule,
10249
12162
  ViewModeButtonsModule,
10250
12163
  AvatarModule,
10251
- TransactionTileModule
12164
+ TransactionTileModule,
12165
+ TransactionSearchGridModule
10252
12166
  ],
10253
12167
  declarations: [
10254
12168
  TransactionSearchResultComponent
@@ -10259,11 +12173,70 @@ TransactionSearchResultModule.decorators = [
10259
12173
  },] }
10260
12174
  ];
10261
12175
 
12176
+ class FilterItemViewmodel {
12177
+ constructor(code, description, checked, count) {
12178
+ this.checked = false;
12179
+ this.code = code;
12180
+ this.description = description === null || description === void 0 ? void 0 : description.toString();
12181
+ this.count = count;
12182
+ }
12183
+ }
12184
+
12185
+ class FilterViewmodel {
12186
+ constructor(collection, fields) {
12187
+ this.filterItems = [];
12188
+ collection.forEach((item) => {
12189
+ var _a, _b;
12190
+ this.filterItems.push(new FilterItemViewmodel(item[fields.value], item[fields.text], (_a = item.checked) !== null && _a !== void 0 ? _a : false, (_b = item.count) !== null && _b !== void 0 ? _b : null));
12191
+ });
12192
+ }
12193
+ }
12194
+
10262
12195
  class FilterRequestService {
10263
- constructor(_transactionService) {
12196
+ constructor(searchService, _transactionService) {
12197
+ this.searchService = searchService;
10264
12198
  this._transactionService = _transactionService;
10265
12199
  }
10266
- getFilterRequestForCollectionRange(collection) {
12200
+ handleCollectionChangeForRange(collection, modelName) {
12201
+ this.searchService.searchRequest[modelName] = this._getFilterRequestForCollectionRange(collection);
12202
+ }
12203
+ handleCollectionChangeForArray(collection, modelName) {
12204
+ this.searchService.searchRequest[modelName] = this._getFilterRequestForCollectionArray(collection);
12205
+ }
12206
+ //todo: tijdelijk totdat filter-item single select ondersteunt
12207
+ handleCollectionChangeForSingleValue(collection, modelName) {
12208
+ this.searchService.searchRequest[modelName] = this._getFilterRequestForSingleCollectionValue(collection);
12209
+ }
12210
+ //todo: tijdelijk totdat filter-item single select ondersteunt
12211
+ handleCollectionChangeForSingleNumber(collection, modelName) {
12212
+ this.searchService.searchRequest[modelName] = collection ? this._getFilterRequestForSingleCollectionNumber(collection) : -1;
12213
+ }
12214
+ handleCheckboxValueChangeForString(value, modelName) {
12215
+ this.searchService.searchRequest[modelName] = this._getFilterRequestForBooleanToString(value);
12216
+ }
12217
+ handleCheckboxValueChangeForNumber(value, modelName) {
12218
+ this.searchService.searchRequest[modelName] = value ? 1 : 0;
12219
+ }
12220
+ handleDateRangeChange(dates, modelName) {
12221
+ if (dates) {
12222
+ let startDate = dates[0];
12223
+ let endDate = dates[1];
12224
+ this.searchService.searchRequest[modelName] = this._getFilterRequestForDateRange(startDate, endDate);
12225
+ }
12226
+ }
12227
+ getDateFromFilterRequestRange(filterRequestRange, index) {
12228
+ if (filterRequestRange) {
12229
+ const datePattern = new RegExp('\\d{2}\\-\\d{2}\\-\\d{4}');
12230
+ let dateString = filterRequestRange
12231
+ .split(',')[index]
12232
+ .match(datePattern)[0];
12233
+ const day = Number(dateString.match('^\\d{2}')[0]);
12234
+ const month = Number(dateString.match('(?<=\\-)(\\d{2})(?=\\-)')[0]) - 1;
12235
+ const year = Number(dateString.match('\\d{4}')[0]);
12236
+ return new Date(year, month, day);
12237
+ }
12238
+ }
12239
+ _getFilterRequestForCollectionRange(collection) {
10267
12240
  let filterRequest = '';
10268
12241
  collection === null || collection === void 0 ? void 0 : collection.forEach(item => {
10269
12242
  if (item.checked) {
@@ -10273,78 +12246,101 @@ class FilterRequestService {
10273
12246
  });
10274
12247
  return filterRequest;
10275
12248
  }
10276
- getFilterRequestForCollectionArray(collection) {
12249
+ _getFilterRequestForBooleanToString(value) {
12250
+ let filterRequest = '';
12251
+ if (value) {
12252
+ filterRequest = "?='J'";
12253
+ }
12254
+ else {
12255
+ filterRequest = "?='N'";
12256
+ }
12257
+ return filterRequest;
12258
+ }
12259
+ _getFilterRequestForCollectionArray(collection) {
10277
12260
  let filterRequest = [];
10278
12261
  collection === null || collection === void 0 ? void 0 : collection.forEach(item => {
10279
12262
  if (item.checked) {
12263
+ filterRequest.push(item.code.toString());
10280
12264
  }
10281
- filterRequest.push(item.code.toString());
10282
12265
  });
10283
12266
  return filterRequest;
10284
12267
  }
10285
- getFilterRequestForDateRange(startDate, endDate) {
10286
- const startDateRequest = startDate ? this.formatDate(startDate) : '';
10287
- const endDateRequest = endDate ? this.formatDate(endDate) : '';
10288
- return `?=\'${startDateRequest}\',\'${endDateRequest}\'`;
10289
- }
10290
- getDateFromFilterRequestRange(filterRequestRange, index) {
10291
- if (filterRequestRange) {
10292
- let dateRange = filterRequestRange.replace("?=", "");
10293
- let date = Number(dateRange
10294
- .split(",")[index]
10295
- .replace("'", "")
10296
- .replace("'", ""));
10297
- return new Date(date);
12268
+ //todo: tijdelijk totdat filter-item single select ondersteunt
12269
+ _getFilterRequestForSingleCollectionValue(collection) {
12270
+ let filterRequest = '';
12271
+ const firstValue = collection.find(item => item.checked).code.toString();
12272
+ if (firstValue) {
12273
+ filterRequest = `?=\'${firstValue}\'`;
10298
12274
  }
12275
+ return filterRequest;
10299
12276
  }
10300
- formatDate(date) {
12277
+ //todo: tijdelijk totdat filter-item single select ondersteunt
12278
+ _getFilterRequestForSingleCollectionNumber(collection) {
12279
+ var _a;
12280
+ const firstValue = Number((_a = collection.find(item => item.checked)) === null || _a === void 0 ? void 0 : _a.code);
12281
+ return firstValue !== null && firstValue !== void 0 ? firstValue : -1;
12282
+ }
12283
+ _getFilterRequestForDateRange(startDate, endDate) {
12284
+ const startDateRequest = startDate ? this._formatDateToString(startDate) : '';
12285
+ const endDateRequest = endDate ? this._formatDateToString(endDate) : '';
12286
+ return `?>=\'${startDateRequest}\'& ?<=\'${endDateRequest}\'`;
12287
+ }
12288
+ _formatDateToString(date) {
10301
12289
  let day = date.getDate().toString().padStart(2, '0');
10302
12290
  let month = (date.getMonth() + 1).toString().padStart(2, '0');
10303
12291
  let year = date.getFullYear();
10304
12292
  return `${day}-${month}-${year}`;
10305
12293
  }
10306
12294
  }
10307
- FilterRequestService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FilterRequestService_Factory() { return new FilterRequestService(i0.ɵɵinject(TransactionService)); }, token: FilterRequestService, providedIn: "root" });
12295
+ FilterRequestService.ɵprov = i0.ɵɵdefineInjectable({ factory: function FilterRequestService_Factory() { return new FilterRequestService(i0.ɵɵinject(TransactionSearchService), i0.ɵɵinject(TransactionService)); }, token: FilterRequestService, providedIn: "root" });
10308
12296
  FilterRequestService.decorators = [
10309
12297
  { type: Injectable, args: [{
10310
12298
  providedIn: "root"
10311
12299
  },] }
10312
12300
  ];
10313
12301
  FilterRequestService.ctorParameters = () => [
12302
+ { type: TransactionSearchService },
10314
12303
  { type: TransactionService }
10315
12304
  ];
10316
12305
 
10317
12306
  class TransactionFilterContentArticleComponent {
10318
- constructor(searchService, _transactionService, _filterRequestService) {
12307
+ constructor(searchService, filterRequestService, _transactionService) {
10319
12308
  this.searchService = searchService;
12309
+ this.filterRequestService = filterRequestService;
10320
12310
  this._transactionService = _transactionService;
10321
- this._filterRequestService = _filterRequestService;
10322
- this.searchRequestChange = new EventEmitter();
12311
+ this.searchRequest = this.searchService.searchRequest;
10323
12312
  this.searchPlaceholder = "SEARCH_IN_COLLECTION";
12313
+ this.showMoreLabel = "SHOW_MORE";
12314
+ this.showLessLabel = "SHOW_LESS";
10324
12315
  this.articleNumberFields = { text: "description", value: "code" };
12316
+ this.exceedanceCodeFields = { text: "description", value: "code" };
12317
+ this.supplierFields = { text: "displayName", value: "relationId" };
10325
12318
  }
10326
12319
  showClass() {
10327
12320
  return true;
10328
12321
  }
10329
12322
  ngOnInit() {
10330
- this._getArticleNumbers();
10331
- }
10332
- //Artikelnummer
10333
- _getArticleNumbers() {
12323
+ this._setArticleNumbers();
12324
+ this._setExceedanceCodes();
12325
+ this._setSuppliers();
10334
12326
  }
10335
- handleCollectionChangeForRange(collection, model) {
10336
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForCollectionRange(collection);
12327
+ onFilterButtonClick() {
12328
+ this.searchService.searchTransactions();
10337
12329
  }
10338
- handleCollectionChangeForArray(collection, model) {
10339
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForCollectionArray(collection);
12330
+ //Artikelnummer
12331
+ _setArticleNumbers() {
10340
12332
  }
10341
- handleDateRangeChange(dates, model) {
10342
- let startDate = dates[0];
10343
- let endDate = dates[1];
10344
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForDateRange(startDate, endDate);
12333
+ _setExceedanceCodes() {
12334
+ this._transactionService.getInOutCollection("NL").then((exceedanceCodes) => {
12335
+ this.exceedanceCodes = new FilterViewmodel(exceedanceCodes, this.exceedanceCodeFields).filterItems;
12336
+ });
10345
12337
  }
10346
- onFilterButtonClick() {
10347
- this.searchService.searchTransactions();
12338
+ _setSuppliers() {
12339
+ const request = new RelationRequest();
12340
+ request.relationType = RelationKind.Supplier;
12341
+ this._transactionService.getRelationListObjects(request).then((relationListObjects) => {
12342
+ this.suppliers = new FilterViewmodel(relationListObjects, this.supplierFields).filterItems;
12343
+ });
10348
12344
  }
10349
12345
  }
10350
12346
  TransactionFilterContentArticleComponent.decorators = [
@@ -10353,15 +12349,17 @@ TransactionFilterContentArticleComponent.decorators = [
10353
12349
  template: `
10354
12350
  <div class="transaction-filter-content-article-wrapper">
10355
12351
 
10356
- <!--Artikelnummer: nog geen call in de API? -->
12352
+ <!--Artikelnummer: todo: wachten op API call -->
10357
12353
  <co-filter-item
10358
12354
  [placeholder]="'ARTICLE_NR' | localize"
10359
12355
  [expanded]="true"
12356
+ [customContent]="true"
10360
12357
  >
10361
-
12358
+ <co-input-text [(model)]="searchRequest.mainArticleNrRange"
12359
+ [placeholder]="'ARTICLE_NR' | localize"></co-input-text>
10362
12360
  </co-filter-item>
10363
12361
 
10364
- <!--Omzetgroep: nog geen call in de API? -->
12362
+ <!--Omzetgroep: todo: wachten op API call -->
10365
12363
  <co-filter-item
10366
12364
  [placeholder]="'TURNOVER_GROUP' | localize"
10367
12365
  [customContent]="true"
@@ -10370,7 +12368,7 @@ TransactionFilterContentArticleComponent.decorators = [
10370
12368
  [placeholder]="'TURNOVER_GROUP' | localize"></co-input-text>
10371
12369
  </co-filter-item>
10372
12370
 
10373
- <!--Hoofdartikel: nog geen call in de API? -->
12371
+ <!--Hoofdartikel: todo: wachten op API call -->
10374
12372
  <co-filter-item
10375
12373
  [placeholder]="'MAIN_ARTICLE' | localize"
10376
12374
  [customContent]="true"
@@ -10379,22 +12377,28 @@ TransactionFilterContentArticleComponent.decorators = [
10379
12377
  [placeholder]="'MAIN_ARTICLE' | localize"></co-input-text>
10380
12378
  </co-filter-item>
10381
12379
 
10382
- <!--Uitloopcode: nog geen call in de API? -->
12380
+ <!--Uitloopcode -->
10383
12381
  <co-filter-item
10384
12382
  [placeholder]="'EXCEEDENCE_CODE' | localize"
10385
- [customContent]="true"
10386
- [expanded]="true">
10387
- <co-input-text [(model)]="searchRequest.exceedanceCodes"
10388
- [placeholder]="'EXCEEDENCE_CODE' | localize"></co-input-text>
12383
+ [expanded]="true"
12384
+ [collection]="exceedanceCodes"
12385
+ [searchPlaceholder]="searchPlaceholder | localize"
12386
+ [showMoreLabel]="showMoreLabel | localize"
12387
+ [showLessLabel]="showLessLabel | localize"
12388
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForArray($event, 'exceedanceCodes')"
12389
+ >
10389
12390
  </co-filter-item>
10390
12391
 
10391
- <!--Leverancier: nog geen call in de API? -->
12392
+ <!--Leverancier-->
10392
12393
  <co-filter-item
10393
12394
  [placeholder]="'SUPPLIER' | localize"
10394
- [customContent]="true"
10395
- [expanded]="true">
10396
- <co-input-text [(model)]="searchRequest.rangeSupplier"
10397
- [placeholder]="'SUPPLIER' | localize"></co-input-text>
12395
+ [expanded]="true"
12396
+ [collection]="suppliers"
12397
+ [searchPlaceholder]="searchPlaceholder | localize"
12398
+ [showMoreLabel]="showMoreLabel | localize"
12399
+ [showLessLabel]="showLessLabel | localize"
12400
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForRange($event, 'rangeSupplier')"
12401
+ >
10398
12402
  </co-filter-item>
10399
12403
  <div class="filter-button-container">
10400
12404
  <co-button class="clickable" [label]="'Filter'" (click)="onFilterButtonClick()"></co-button>
@@ -10405,12 +12409,10 @@ TransactionFilterContentArticleComponent.decorators = [
10405
12409
  ];
10406
12410
  TransactionFilterContentArticleComponent.ctorParameters = () => [
10407
12411
  { type: TransactionSearchService },
10408
- { type: TransactionService },
10409
- { type: FilterRequestService }
12412
+ { type: FilterRequestService },
12413
+ { type: TransactionService }
10410
12414
  ];
10411
12415
  TransactionFilterContentArticleComponent.propDecorators = {
10412
- searchRequest: [{ type: Input }],
10413
- searchRequestChange: [{ type: Output }],
10414
12416
  showClass: [{ type: HostBinding, args: ["class.co-transaction-filter-content-article",] }]
10415
12417
  };
10416
12418
 
@@ -10434,35 +12436,17 @@ TransactionFilterContentArticleModule.decorators = [
10434
12436
  },] }
10435
12437
  ];
10436
12438
 
10437
- class FilterItemViewmodel {
10438
- constructor(code, description, checked, count) {
10439
- this.checked = false;
10440
- this.code = code;
10441
- this.description = description === null || description === void 0 ? void 0 : description.toString();
10442
- this.count = count;
10443
- }
10444
- }
10445
-
10446
- class FilterViewmodel {
10447
- constructor(collection, fields) {
10448
- this.filterItems = [];
10449
- collection.forEach((item) => {
10450
- var _a, _b;
10451
- this.filterItems.push(new FilterItemViewmodel(item[fields.value], item[fields.text], (_a = item.checked) !== null && _a !== void 0 ? _a : false, (_b = item.count) !== null && _b !== void 0 ? _b : null));
10452
- });
10453
- }
10454
- }
10455
-
10456
12439
  class TransactionFilterContentLogisticsComponent {
10457
- constructor(searchService, _transactionService, _filterRequestService) {
12440
+ constructor(searchService, filterRequestService, _transactionService) {
10458
12441
  this.searchService = searchService;
12442
+ this.filterRequestService = filterRequestService;
10459
12443
  this._transactionService = _transactionService;
10460
- this._filterRequestService = _filterRequestService;
10461
- this.searchRequestChange = new EventEmitter();
12444
+ this.searchRequest = this.searchService.searchRequest;
10462
12445
  this.searchPlaceholder = "SEARCH_IN_COLLECTION";
12446
+ this.showMoreLabel = "SHOW_MORE";
12447
+ this.showLessLabel = "SHOW_LESS";
10463
12448
  this.deliveryMethods = [];
10464
12449
  this.deliveryMethodFields = { text: "description", value: "code" };
10465
- this.warehouses = [];
10466
12450
  this.warehouseFields = { text: "description", value: "warehouseNo" };
10467
12451
  }
10468
12452
  showClass() {
@@ -10470,41 +12454,30 @@ class TransactionFilterContentLogisticsComponent {
10470
12454
  }
10471
12455
  ngOnInit() {
10472
12456
  this._setRangeDates();
10473
- this._getDeliveryMethods();
10474
- this._getWarehouses();
12457
+ this._setDeliveryMethods();
12458
+ this._setWarehouses();
12459
+ }
12460
+ onFilterButtonClick() {
12461
+ this.searchService.searchTransactions();
10475
12462
  }
10476
12463
  _setRangeDates() {
10477
- this.confirmedDeliveryStartDate = this._filterRequestService.getDateFromFilterRequestRange(this.searchRequest.confirmedDeliveryDateRange, 0);
10478
- this.confirmedDeliveryEndDate = this._filterRequestService.getDateFromFilterRequestRange(this.searchRequest.confirmedDeliveryDateRange, 1);
10479
- this.arrivalStartDate = this._filterRequestService.getDateFromFilterRequestRange(this.searchRequest.arrivalDateRange, 0);
10480
- this.arrivalEndDate = this._filterRequestService.getDateFromFilterRequestRange(this.searchRequest.arrivalDateRange, 1);
12464
+ this.confirmedDeliveryStartDate = this.filterRequestService.getDateFromFilterRequestRange(this.searchRequest.confirmedDeliveryDateRange, 0);
12465
+ this.confirmedDeliveryEndDate = this.filterRequestService.getDateFromFilterRequestRange(this.searchRequest.confirmedDeliveryDateRange, 1);
12466
+ this.arrivalStartDate = this.filterRequestService.getDateFromFilterRequestRange(this.searchRequest.arrivalDateRange, 0);
12467
+ this.arrivalEndDate = this.filterRequestService.getDateFromFilterRequestRange(this.searchRequest.arrivalDateRange, 1);
10481
12468
  }
10482
12469
  //Delivery Methods
10483
- _getDeliveryMethods() {
12470
+ _setDeliveryMethods() {
10484
12471
  this._transactionService.getDeliveryMethods().then((deliveryMethods) => {
10485
12472
  this.deliveryMethods = new FilterViewmodel(deliveryMethods, this.deliveryMethodFields).filterItems;
10486
12473
  });
10487
12474
  }
10488
12475
  //Warehouses
10489
- _getWarehouses() {
12476
+ _setWarehouses() {
10490
12477
  this._transactionService.getWarehouses().then((warehouses) => {
10491
- this.warehouses = warehouses;
12478
+ this.warehouses = new FilterViewmodel(warehouses, this.warehouseFields).filterItems;
10492
12479
  });
10493
12480
  }
10494
- handleCollectionChangeForRange(collection, model) {
10495
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForCollectionRange(collection);
10496
- }
10497
- handleCollectionChangeForArray(collection, model) {
10498
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForCollectionArray(collection);
10499
- }
10500
- handleDateRangeChange(dates, model) {
10501
- let startDate = dates[0];
10502
- let endDate = dates[1];
10503
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForDateRange(startDate, endDate);
10504
- }
10505
- onFilterButtonClick() {
10506
- this.searchService.searchTransactions();
10507
- }
10508
12481
  }
10509
12482
  TransactionFilterContentLogisticsComponent.decorators = [
10510
12483
  { type: Component, args: [{
@@ -10512,27 +12485,30 @@ TransactionFilterContentLogisticsComponent.decorators = [
10512
12485
  template: `
10513
12486
  <div class="transaction-filter-content-logistics-wrapper">
10514
12487
 
10515
- <!--Levermethode (werkt)-->
12488
+ <!--Levermethode-->
10516
12489
  <co-filter-item
10517
12490
  [placeholder]="'DELIVERY_METHOD' | localize"
10518
12491
  [expanded]="true"
10519
12492
  [collection]="deliveryMethods"
10520
12493
  [searchPlaceholder]="searchPlaceholder | localize"
10521
- (collectionChange)="handleCollectionChangeForRange($event, 'rangeDeliveryMethod')">
12494
+ [showMoreLabel]="showMoreLabel | localize"
12495
+ [showLessLabel]="showLessLabel | localize"
12496
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForRange($event, 'rangeDeliveryMethod')">
10522
12497
  </co-filter-item>
10523
12498
 
10524
12499
 
10525
- <!--Leverdatum definitief: werkt nog niet: waarde uit domein moet boolean zijn?-->
12500
+ <!--Leverdatum definitief-->
10526
12501
  <co-filter-item
10527
12502
  [placeholder]="'DELIVERY_DATE_FINAL' | localize"
10528
12503
  [customContent]="true"
10529
12504
  [expanded]="true">
10530
12505
  <co-input-checkbox
10531
- [(model)]="!!searchRequest.deliveryDateDefinitive"
12506
+ [model]="searchRequest.deliveryDateDefinitive === 'J'"
12507
+ (modelChange)="this.filterRequestService.handleCheckboxValueChangeForString($event, 'deliveryDateDefinitive')"
10532
12508
  [label]="'DELIVERY_DATE_FINAL' | localize"></co-input-checkbox>
10533
12509
  </co-filter-item>
10534
12510
 
10535
- <!--Toegewezen: dit is een quantity in het domain. Zoeken met range oid?-->
12511
+ <!--Toegewezen: todo: enum uizoeken en verwerken-->
10536
12512
  <co-filter-item
10537
12513
  [placeholder]="'ALLOCATED' | localize"
10538
12514
  [customContent]="true"
@@ -10541,7 +12517,7 @@ TransactionFilterContentLogisticsComponent.decorators = [
10541
12517
  [placeholder]="'ALLOCATED' | localize"></co-input-text>
10542
12518
  </co-filter-item>
10543
12519
 
10544
- <!--Geleverd: dit is een quantity in het domain. Zoeken met range oid?-->
12520
+ <!--Geleverd: todo: enum uizoeken en verwerken-->
10545
12521
  <co-filter-item
10546
12522
  [placeholder]="'DELIVERED' | localize"
10547
12523
  [customContent]="true"
@@ -10550,15 +12526,17 @@ TransactionFilterContentLogisticsComponent.decorators = [
10550
12526
  [placeholder]="'DELIVERED' | localize"></co-input-text>
10551
12527
  </co-filter-item>
10552
12528
 
10553
- <!--Gefactureerd: dit is een quantity in het domain. Zoeken met range oid?-->
12529
+ <!--Gefactureerd: todo: enum uizoeken en verwerken-->
10554
12530
  <co-filter-item
10555
12531
  [placeholder]="'INVOICED' | localize"
10556
12532
  [customContent]="true"
10557
12533
  [expanded]="true">
10558
- <co-input-text [(model)]="searchRequest.quantityInvoiced" [placeholder]="'INVOICED' | localize"></co-input-text>
12534
+ <co-input-text
12535
+ [(model)]="searchRequest.quantityInvoiced"
12536
+ [placeholder]="'INVOICED' | localize"></co-input-text>
10559
12537
  </co-filter-item>
10560
12538
 
10561
- <!--Te picken: dit is een quantity in het domain. Zoeken met range oid?-->
12539
+ <!--Te picken: todo: enum uizoeken en verwerken-->
10562
12540
  <co-filter-item
10563
12541
  [placeholder]="'TO_BE_PICKED' | localize"
10564
12542
  [customContent]="true"
@@ -10567,15 +12545,17 @@ TransactionFilterContentLogisticsComponent.decorators = [
10567
12545
  [placeholder]="'TO_BE_PICKED' | localize"></co-input-text>
10568
12546
  </co-filter-item>
10569
12547
 
10570
- <!--Gepicked: dit is een quantity in het domain. Zoeken met range oid?-->
12548
+ <!--Gepicked: todo: enum uizoeken en verwerken-->
10571
12549
  <co-filter-item
10572
12550
  [placeholder]="'PICKED' | localize"
10573
12551
  [customContent]="true"
10574
12552
  [expanded]="true">
10575
- <co-input-text [(model)]="searchRequest.quantityPicked" [placeholder]="'PICED' | localize"></co-input-text>
12553
+ <co-input-text
12554
+ [(model)]="searchRequest.quantityPicked"
12555
+ [placeholder]="'PICKED' | localize"></co-input-text>
10576
12556
  </co-filter-item>
10577
12557
 
10578
- <!--Bevestigde leverdatum: range picker werkt, alleen output filter niet goed? -->
12558
+ <!--Bevestigde leverdatum-->
10579
12559
  <co-filter-item
10580
12560
  [placeholder]="'CONFIRMED_DELIVERY_DATE' | localize"
10581
12561
  [customContent]="true"
@@ -10583,12 +12563,12 @@ TransactionFilterContentLogisticsComponent.decorators = [
10583
12563
  <co-input-date-range
10584
12564
  [startDate]="confirmedDeliveryStartDate"
10585
12565
  [endDate]="confirmedDeliveryEndDate"
10586
- (dateRangeChange)="handleDateRangeChange($event, 'confirmedDeliveryDateRange')"
12566
+ (dateRangeChange)="this.filterRequestService.handleDateRangeChange($event, 'confirmedDeliveryDateRange')"
10587
12567
  [placeholder]="'SELECT_DATE' | localize">
10588
12568
  </co-input-date-range>
10589
12569
  </co-filter-item>
10590
12570
 
10591
- <!--Aankomstdatum: range picker werkt, alleen output filter niet goed? -->
12571
+ <!--Aankomstdatum-->
10592
12572
  <co-filter-item
10593
12573
  [placeholder]="'ARRIVAL_DATE' | localize"
10594
12574
  [customContent]="true"
@@ -10596,39 +12576,46 @@ TransactionFilterContentLogisticsComponent.decorators = [
10596
12576
  <co-input-date-range
10597
12577
  [startDate]="arrivalStartDate"
10598
12578
  [endDate]="arrivalEndDate"
10599
- (dateRangeChange)="handleDateRangeChange($event, 'arrivalDateRange')"
12579
+ (dateRangeChange)="this.filterRequestService.handleDateRangeChange($event, 'arrivalDateRange')"
10600
12580
  [placeholder]="'SELECT_DATE' | localize">
10601
12581
  </co-input-date-range>
10602
12582
  </co-filter-item>
10603
12583
 
10604
- <!--Deellevering: Kan ik niet vinden in de transaction service. Zit dat in deliveryoptions???-->
12584
+ <!--Deellevering-->
10605
12585
  <co-filter-item
10606
12586
  [placeholder]="'PART_DELIVERY' | localize"
10607
12587
  [customContent]="true"
10608
12588
  [expanded]="true">
10609
- <co-input-text [(model)]="searchRequest.partialDelivery"
10610
- [placeholder]="'PART_DELIVERY' | localize"></co-input-text>
12589
+ <co-input-checkbox
12590
+ [model]="searchRequest.partialDelivery === 'J'"
12591
+ (modelChange)="this.filterRequestService.handleCheckboxValueChangeForString($event, 'partialDelivery')"
12592
+ [label]="'PART_DELIVERY' | localize">
12593
+ </co-input-checkbox>
10611
12594
  </co-filter-item>
10612
12595
 
10613
12596
  <!--Magazijn -->
10614
- <!--<co-filter-item
12597
+ <co-filter-item
10615
12598
  [placeholder]="'WAREHOUSE' | localize"
10616
12599
  [expanded]="true"
10617
12600
  [collection]="warehouses"
10618
-
10619
12601
  [searchPlaceholder]="searchPlaceholder | localize"
10620
- (collectionChange)="handlecollectionChange($event, 'deliveryMethod', warehouseFields)">
10621
- </co-filter-item>-->
12602
+ [showMoreLabel]="showMoreLabel | localize"
12603
+ [showLessLabel]="showLessLabel | localize"
12604
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForSingleNumber($event, 'warehouse')">
12605
+ </co-filter-item>
10622
12606
 
10623
12607
 
10624
- <!--Bron magazijn: collectie zelfde als warehouses? -->
10625
- <!-- <co-filter-item
10626
- [placeholder]="'SOURCE_WAREHOUSE' | localize"
10627
- [expanded]="true"
10628
- [collection]="warehouses"
10629
- [searchPlaceholder]="searchPlaceholder | localize"
10630
- (collectionChange)="handlecollectionChanged($event, 'sourceWarehouse', warehouseFields)">
10631
- </co-filter-item>-->
12608
+ <!--Bron magazijn-->
12609
+ <co-filter-item
12610
+ [placeholder]="'SOURCE_WAREHOUSE' | localize"
12611
+ [expanded]="true"
12612
+ [collection]="warehouses"
12613
+ [searchPlaceholder]="searchPlaceholder | localize"
12614
+ [showMoreLabel]="showMoreLabel | localize"
12615
+ [showLessLabel]="showLessLabel | localize"
12616
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForSingleNumber($event, 'sourceWarehouse')">
12617
+ </co-filter-item>
12618
+
10632
12619
 
10633
12620
  <!--Serienummer -->
10634
12621
  <co-filter-item
@@ -10647,43 +12634,42 @@ TransactionFilterContentLogisticsComponent.decorators = [
10647
12634
  <co-input-text [(model)]="searchRequest.batchNumber" [placeholder]="'BATCH_NUMBER' | localize"></co-input-text>
10648
12635
  </co-filter-item>
10649
12636
 
10650
- <!--Inclusief retouren: is een number in het domein, moet boolean zijn?-->
12637
+ <!--Inclusief retouren-->
10651
12638
  <co-filter-item
10652
12639
  [placeholder]="'INCLUDING_RETURNS' | localize"
10653
12640
  [customContent]="true"
10654
12641
  [expanded]="true">
10655
12642
  <co-input-checkbox
10656
12643
  [label]="'INCLUDING_RETURNS' | localize"
10657
- ><!--[(model)]="searchRequest.includingReturns"-->
10658
- </co-input-checkbox>
10659
- </co-filter-item>
10660
-
10661
- <!--Levermethode op (regel/header): waar moet hier precies op gefilterd worden?-->
10662
- <co-filter-item
10663
- [placeholder]="'Levermethode op regel/header'"
10664
- [customContent]="true"
10665
- [expanded]="true">
10666
- <co-input-checkbox
10667
- [label]="'Levermethode op regel/header'"
12644
+ [model]="searchRequest.includingReturns === 1"
12645
+ (modelChange)="this.filterRequestService.handleCheckboxValueChangeForNumber($event, 'includingReturns')"
10668
12646
  >
10669
12647
  </co-input-checkbox>
10670
12648
  </co-filter-item>
12649
+
12650
+ <!--Levermethode op (regel/header): todo: nog uitzoeken welke filter dit is-->
12651
+ <!-- <co-filter-item
12652
+ [placeholder]="'Levermethode op regel/header'"
12653
+ [customContent]="true"
12654
+ [expanded]="true">
12655
+ <co-input-checkbox
12656
+ [label]="'Levermethode op regel/header'"
12657
+ >
12658
+ </co-input-checkbox>
12659
+ </co-filter-item>-->
10671
12660
  <div class="filter-button-container">
10672
12661
  <co-button class="clickable" [label]="'Filter'" (click)="onFilterButtonClick()"></co-button>
10673
12662
  </div>
10674
12663
  </div>
10675
-
10676
12664
  `
10677
12665
  },] }
10678
12666
  ];
10679
12667
  TransactionFilterContentLogisticsComponent.ctorParameters = () => [
10680
12668
  { type: TransactionSearchService },
10681
- { type: TransactionService },
10682
- { type: FilterRequestService }
12669
+ { type: FilterRequestService },
12670
+ { type: TransactionService }
10683
12671
  ];
10684
12672
  TransactionFilterContentLogisticsComponent.propDecorators = {
10685
- searchRequest: [{ type: Input }],
10686
- searchRequestChange: [{ type: Output }],
10687
12673
  showClass: [{ type: HostBinding, args: ["class.co-transaction-filter-content-logistics",] }]
10688
12674
  };
10689
12675
 
@@ -10711,13 +12697,14 @@ TransactionFilterContentLogisticsModule.decorators = [
10711
12697
  ];
10712
12698
 
10713
12699
  class TransactionFilterContentOrderComponent {
10714
- constructor(_transactionService, searchService, _filterRequestService) {
10715
- this._transactionService = _transactionService;
12700
+ constructor(searchService, filterRequestService, _transactionService) {
10716
12701
  this.searchService = searchService;
10717
- this._filterRequestService = _filterRequestService;
10718
- this.searchRequestChange = new EventEmitter();
10719
- this.booleanTextDecorator = BooleanTextDecorator;
12702
+ this.filterRequestService = filterRequestService;
12703
+ this._transactionService = _transactionService;
12704
+ this.searchRequest = this.searchService.searchRequest;
10720
12705
  this.searchPlaceholder = "SEARCH_IN_COLLECTION";
12706
+ this.showMoreLabel = "SHOW_MORE";
12707
+ this.showLessLabel = "SHOW_LESS";
10721
12708
  this.salesPersonsFields = { text: "name", value: "relationId" };
10722
12709
  this.tagsFields = { text: "description", value: "tagValueId" };
10723
12710
  this.branchFields = { text: "description", value: "relationId" };
@@ -10730,69 +12717,58 @@ class TransactionFilterContentOrderComponent {
10730
12717
  }
10731
12718
  ngOnInit() {
10732
12719
  this._setRangeDates();
10733
- this._getSalesPersons();
10734
- this._getTags();
10735
- this._getBranches();
10736
- this._getOnHoldCodes();
10737
- this._getCommissionCodes();
10738
- this._getCustomerGroups();
12720
+ this._setSalesPersons();
12721
+ this._setTags();
12722
+ this._setBranches();
12723
+ this._setOnHoldCodes();
12724
+ this._setCommissionCodes();
12725
+ this._setCustomerGroups();
12726
+ }
12727
+ onFilterButtonClick() {
12728
+ this.searchService.searchTransactions();
10739
12729
  }
10740
12730
  _setRangeDates() {
10741
- this.transStartDate = this._filterRequestService.getDateFromFilterRequestRange(this.searchRequest.rangeTransDate, 0);
10742
- this.transEndDate = this._filterRequestService.getDateFromFilterRequestRange(this.searchRequest.rangeTransDate, 1);
10743
- this.deliveryStartDate = this._filterRequestService.getDateFromFilterRequestRange(this.searchRequest.deliveryDateRange, 0);
10744
- this.deliveryEndDate = this._filterRequestService.getDateFromFilterRequestRange(this.searchRequest.deliveryDateRange, 1);
12731
+ this.transStartDate = this.filterRequestService.getDateFromFilterRequestRange(this.searchRequest.rangeTransDate, 0);
12732
+ this.transEndDate = this.filterRequestService.getDateFromFilterRequestRange(this.searchRequest.rangeTransDate, 1);
12733
+ this.deliveryStartDate = this.filterRequestService.getDateFromFilterRequestRange(this.searchRequest.deliveryDateRange, 0);
12734
+ this.deliveryEndDate = this.filterRequestService.getDateFromFilterRequestRange(this.searchRequest.deliveryDateRange, 1);
10745
12735
  }
10746
12736
  //Verkoper
10747
- _getSalesPersons() {
12737
+ _setSalesPersons() {
10748
12738
  this._transactionService.getSalesPersons().then((salesPersons) => {
10749
12739
  this.salesPersons = new FilterViewmodel(salesPersons, this.salesPersonsFields).filterItems;
10750
12740
  });
10751
12741
  }
10752
12742
  // Tags
10753
- _getTags() {
12743
+ _setTags() {
10754
12744
  this._transactionService.getTags(1).then((tags) => {
10755
12745
  this.tags = new FilterViewmodel(tags, this.tagsFields).filterItems;
10756
12746
  });
10757
12747
  }
10758
12748
  //Branches
10759
- _getBranches() {
12749
+ _setBranches() {
10760
12750
  this._transactionService.getBranches().then((branches) => {
10761
12751
  this.branches = new FilterViewmodel(branches, this.branchFields).filterItems;
10762
12752
  });
10763
12753
  }
10764
12754
  //OnHoldCodes
10765
- _getOnHoldCodes() {
12755
+ _setOnHoldCodes() {
10766
12756
  this._transactionService.getOnHoldCodes().then((onHoldCodes) => {
10767
12757
  this.onHoldCodes = new FilterViewmodel(onHoldCodes, this.onHoldCodeFields).filterItems;
10768
12758
  });
10769
12759
  }
10770
12760
  //CommissionCodes
10771
- _getCommissionCodes() {
12761
+ _setCommissionCodes() {
10772
12762
  this._transactionService.getCommissionCodes("NL").then((commissionCodes) => {
10773
12763
  this.commissionCodes = new FilterViewmodel(commissionCodes, this.commissionCodeFields).filterItems;
10774
12764
  });
10775
12765
  }
10776
12766
  //CustomerGroups
10777
- _getCustomerGroups() {
12767
+ _setCustomerGroups() {
10778
12768
  this._transactionService.getCustomerGroups().then((customerGroups) => {
10779
12769
  this.customerGroups = new FilterViewmodel(customerGroups, this.customerGroupFields).filterItems;
10780
12770
  });
10781
12771
  }
10782
- handleCollectionChangeForRange(collection, model) {
10783
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForCollectionRange(collection);
10784
- }
10785
- handleCollectionChangeForArray(collection, model) {
10786
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForCollectionArray(collection);
10787
- }
10788
- handleDateRangeChange(dates, model) {
10789
- let startDate = dates[0];
10790
- let endDate = dates[1];
10791
- this.searchRequest[model] = this._filterRequestService.getFilterRequestForDateRange(startDate, endDate);
10792
- }
10793
- onFilterButtonClick() {
10794
- this.searchService.searchTransactions();
10795
- }
10796
12772
  }
10797
12773
  TransactionFilterContentOrderComponent.decorators = [
10798
12774
  { type: Component, args: [{
@@ -10800,7 +12776,7 @@ TransactionFilterContentOrderComponent.decorators = [
10800
12776
  template: `
10801
12777
  <div class="transaction-filter-content-order-wrapper">
10802
12778
 
10803
- <!--Orderdatum: range picker werkt, alleen output filter niet goed?-->
12779
+ <!--Orderdatum-->
10804
12780
  <co-filter-item
10805
12781
  [placeholder]="'ORDER_DATE' | localize"
10806
12782
  [expanded]="true"
@@ -10808,45 +12784,49 @@ TransactionFilterContentOrderComponent.decorators = [
10808
12784
  <co-input-date-range
10809
12785
  [startDate]="transStartDate"
10810
12786
  [endDate]="transEndDate"
10811
- (dateRangeChange)="handleDateRangeChange($event, 'rangeTransDate')"
12787
+ (dateRangeChange)="this.filterRequestService.handleDateRangeChange($event, 'rangeTransDate')"
10812
12788
  [placeholder]="'SELECT_DATE' | localize">
10813
12789
  </co-input-date-range>
10814
12790
  </co-filter-item>
10815
12791
 
10816
- <!--Leverdatum: range picker werkt, alleen output filter niet goed?-->
12792
+ <!--Leverdatum-->
10817
12793
  <co-filter-item
10818
12794
  [placeholder]="'DELIVERY_DATE' | localize"
10819
12795
  [expanded]="true"
10820
12796
  [customContent]="true">
10821
12797
  <co-input-date-range
10822
- [startDate]="transStartDate"
10823
- [endDate]="transEndDate"
10824
- (dateRangeChange)="handleDateRangeChange($event, 'deliveryDateRange')"
12798
+ [startDate]="deliveryStartDate"
12799
+ [endDate]="deliveryEndDate"
12800
+ (dateRangeChange)="this.filterRequestService.handleDateRangeChange($event, 'deliveryDateRange')"
10825
12801
  [placeholder]="'SELECT_DATE' | localize">
10826
12802
  </co-input-date-range>
10827
12803
  </co-filter-item>
10828
12804
 
10829
- <!--Filiaal (werkt)-->
12805
+ <!--Filiaal-->
10830
12806
  <co-filter-item
10831
12807
  [placeholder]="'BRANCH' | localize"
10832
12808
  [expanded]="true"
10833
12809
  [collection]="branches"
10834
12810
  [searchPlaceholder]="searchPlaceholder | localize"
10835
- (collectionChange)="handleCollectionChangeForRange($event, 'rangeBranchId')"
12811
+ [showMoreLabel]="showMoreLabel | localize"
12812
+ [showLessLabel]="showLessLabel | localize"
12813
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForRange($event, 'rangeBranchId')"
10836
12814
  >
10837
12815
  </co-filter-item>
10838
12816
 
10839
- <!--Verkoper (werkt)-->
12817
+ <!--Verkoper-->
10840
12818
  <co-filter-item
10841
12819
  [placeholder]="'HANDLED_BY' | localize"
10842
12820
  [expanded]="true"
10843
12821
  [collection]="salesPersons"
10844
12822
  [searchPlaceholder]="searchPlaceholder | localize"
10845
- (collectionChange)="handleCollectionChangeForRange($event, 'rangeSalesPerson')"
12823
+ [showMoreLabel]="showMoreLabel | localize"
12824
+ [showLessLabel]="showLessLabel | localize"
12825
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForRange($event, 'rangeSalesPerson')"
10846
12826
  >
10847
12827
  </co-filter-item>
10848
12828
 
10849
- <!--Eigen referentie (werkt)-->
12829
+ <!--Eigen referentie-->
10850
12830
  <co-filter-item
10851
12831
  [placeholder]="'OWN_REFERENCE' | localize"
10852
12832
  [customContent]="true"
@@ -10855,60 +12835,68 @@ TransactionFilterContentOrderComponent.decorators = [
10855
12835
  [placeholder]="'OWN_REFERENCE' | localize"></co-input-text>
10856
12836
  </co-filter-item>
10857
12837
 
10858
- <!--Tags (kan niet testen, geen data met tags)-->
12838
+ <!--Tags-->
10859
12839
  <co-filter-item
10860
12840
  [placeholder]="'TAGS' | localize"
10861
12841
  [expanded]="true"
10862
12842
  [collection]="tags"
10863
12843
  [searchPlaceholder]="searchPlaceholder | localize"
10864
- (collectionChange)="handleCollectionChangeForRange($event, 'tagRange')"
12844
+ [showMoreLabel]="showMoreLabel | localize"
12845
+ [showLessLabel]="showLessLabel | localize"
12846
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForRange($event, 'tagRange')"
10865
12847
  >
10866
12848
  <co-input-text [(model)]="searchRequest.tagRange" [placeholder]="'TAGS' | localize"></co-input-text>
10867
12849
  </co-filter-item>
10868
12850
 
10869
- <!--On hold codes (kan niet testen. kan niet terugvinden in API output)-->
12851
+ <!--On hold codes-->
10870
12852
  <co-filter-item
10871
12853
  [placeholder]="'ON_HOLD' | localize"
10872
12854
  [expanded]="true"
10873
12855
  [collection]="onHoldCodes"
10874
12856
  [searchPlaceholder]="searchPlaceholder | localize"
10875
- (collectionChange)="handleCollectionChangeForRange($event,'rangeOnHoldCodes')"
12857
+ [showMoreLabel]="showMoreLabel | localize"
12858
+ [showLessLabel]="showLessLabel | localize"
12859
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForRange($event,'rangeOnHoldCodes')"
10876
12860
  >
10877
12861
  <co-input-text [(model)]="searchRequest.tagRange" [placeholder]="'TAGS' | localize"></co-input-text>
10878
12862
  </co-filter-item>
10879
12863
 
10880
- <!--Order definitief (werkt nog niet. aanpassen wanneer domain een boolean heeft)-->
12864
+ <!--Order definitief-->
10881
12865
  <co-filter-item
10882
12866
  [placeholder]="'ORDER_DEFINITIVE' | localize"
10883
12867
  [customContent]="true"
10884
12868
  [expanded]="true">
10885
12869
  <co-input-checkbox
10886
- [(model)]="!!searchRequest.transactionDefinitive"
12870
+ [model]="searchRequest.transactionDefinitive === 'J'"
12871
+ (modelChange)="this.filterRequestService.handleCheckboxValueChangeForString($event, 'transactionDefinitive')"
10887
12872
  [label]="'ORDER_DEFINITIVE' | localize"></co-input-checkbox>
10888
12873
  </co-filter-item>
10889
12874
 
10890
- <!--Commissiecode (kan niet testen, commissiecode niet terug te vinden in data)-->
12875
+ <!--Commissiecode-->
10891
12876
  <co-filter-item
10892
12877
  [placeholder]="'COMMISSION_CODE' | localize"
10893
12878
  [expanded]="true"
10894
12879
  [collection]="commissionCodes"
10895
12880
  [searchPlaceholder]="searchPlaceholder | localize"
10896
- (collectionChange)="handleCollectionChangeForArray($event, 'commissionCodes')"
12881
+ [showMoreLabel]="showMoreLabel | localize"
12882
+ [showLessLabel]="showLessLabel | localize"
12883
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForArray($event, 'commissionCodes')"
10897
12884
  >
10898
12885
  </co-filter-item>
10899
12886
 
10900
- <!--Inactieve transacties (kan niet testen. geen inactieve transacties in data)-->
12887
+ <!--Inactieve transacties-->
10901
12888
  <co-filter-item
10902
12889
  [placeholder]="'INACTIVE_TRANSACTIONS' | localize"
10903
12890
  [customContent]="true"
10904
12891
  [expanded]="true">
10905
12892
  <co-input-checkbox
10906
- [(model)]="searchRequest.transactionShowInactive"
12893
+ [model]="searchRequest.active === false"
12894
+ (modelChange)="searchRequest.active = !$event"
10907
12895
  [label]="'INACTIVE_TRANSACTIONS' | localize"
10908
12896
  ></co-input-checkbox>
10909
12897
  </co-filter-item>
10910
12898
 
10911
- <!--Klantnaam: nog niet af: geen API call?-->
12899
+ <!--Klantnaam: voorlopig met input-text. todo: aanpassen als er een collection API is-->
10912
12900
  <co-filter-item
10913
12901
  [placeholder]="'CUSTOMER_NAME' | localize"
10914
12902
  [customContent]="true"
@@ -10917,13 +12905,15 @@ TransactionFilterContentOrderComponent.decorators = [
10917
12905
  [placeholder]="'CUSTOMER_NAME' | localize"></co-input-text>
10918
12906
  </co-filter-item>
10919
12907
 
10920
- <!--Klantgroep: (werkt nog niet, customergroups niet terug te vinden in data)-->
12908
+ <!--Klantgroep-->
10921
12909
  <co-filter-item
10922
12910
  [placeholder]="'CUSTOMER_GROUP' | localize"
10923
12911
  [expanded]="true"
10924
12912
  [collection]="customerGroups"
10925
12913
  [searchPlaceholder]="searchPlaceholder | localize"
10926
- (collectionChange)="handleCollectionChangeForRange($event, 'customerGroupId')">
12914
+ [showMoreLabel]="showMoreLabel | localize"
12915
+ [showLessLabel]="showLessLabel | localize"
12916
+ (collectionChange)="this.filterRequestService.handleCollectionChangeForSingleValue($event, 'customerGroupId')">
10927
12917
  </co-filter-item>
10928
12918
  <div class="filter-button-container">
10929
12919
  <co-button class="clickable" [label]="'Filter'" (click)="onFilterButtonClick()"></co-button>
@@ -10933,13 +12923,11 @@ TransactionFilterContentOrderComponent.decorators = [
10933
12923
  },] }
10934
12924
  ];
10935
12925
  TransactionFilterContentOrderComponent.ctorParameters = () => [
10936
- { type: TransactionService },
10937
12926
  { type: TransactionSearchService },
10938
- { type: FilterRequestService }
12927
+ { type: FilterRequestService },
12928
+ { type: TransactionService }
10939
12929
  ];
10940
12930
  TransactionFilterContentOrderComponent.propDecorators = {
10941
- searchRequest: [{ type: Input }],
10942
- searchRequestChange: [{ type: Output }],
10943
12931
  showClass: [{ type: HostBinding, args: ["class.co-transaction-filter-content-order",] }]
10944
12932
  };
10945
12933
 
@@ -11024,16 +13012,13 @@ TransactionFilterComponent.decorators = [
11024
13012
  </div>
11025
13013
  <div #filterItems class="transaction-category-filter-wrapper" data-ride="carousel">
11026
13014
  <div #orderFilter class="transaction-filter-category-content">
11027
- <co-transaction-filter-content-order [(searchRequest)]="searchService.searchRequest"
11028
- (searchRequestChange)="searchService.searchRequest = $event"></co-transaction-filter-content-order>
13015
+ <co-transaction-filter-content-order></co-transaction-filter-content-order>
11029
13016
  </div>
11030
13017
  <div #logisticsFilter class="transaction-filter-category-content">
11031
- <co-transaction-filter-content-logistics [(searchRequest)]="searchService.searchRequest"
11032
- (searchRequestChange)="searchService.searchRequest = $event"></co-transaction-filter-content-logistics>
13018
+ <co-transaction-filter-content-logistics></co-transaction-filter-content-logistics>
11033
13019
  </div>
11034
13020
  <div #articleFilter class="transaction-filter-category-content">
11035
- <co-transaction-filter-content-article [(searchRequest)]="searchService.searchRequest"
11036
- (searchRequestChange)="searchService.searchRequest = $event"></co-transaction-filter-content-article>
13021
+ <co-transaction-filter-content-article></co-transaction-filter-content-article>
11037
13022
  </div>
11038
13023
  </div>
11039
13024
  `,
@@ -11257,5 +13242,5 @@ TransactionLineGridModule.decorators = [
11257
13242
  * Generated bundle index. Do not edit.
11258
13243
  */
11259
13244
 
11260
- export { CheckoutComponent, CheckoutModule, ShoppingCartComponent, ShoppingCartModule, ShoppingCartPreviewComponent, ShoppingCartPreviewModule, TransactionComponent, TransactionHeaderComponent, TransactionHeaderDeliveryComponent, TransactionHeaderDeliveryModule, TransactionHeaderModule, TransactionHeaderOrderComponent, TransactionHeaderOrderModule, TransactionHeaderRelationComponent, TransactionHeaderRelationModule, TransactionLineComponent, TransactionLineGridComponent, TransactionLineGridModule, TransactionLineModule, TransactionLinesComponent, TransactionLinesModule, TransactionModule, TransactionQuickAccessComponent, TransactionQuickAccessModule, TransactionQuickAccessOrderConfirmationComponent, TransactionQuickAccessOrderConfirmationModule, TransactionQuickAccessReceivedGoodsComponent, TransactionQuickAccessReceivedGoodsModule, TransactionSearchComponent, TransactionSearchModule, TransactionService, TransactionTotalsComponent, TransactionTotalsModule, PendingReasonService as ɵa, DialogService as ɵb, RelationAddressTileModule as ɵba, TileModule as ɵbb, TileComponent as ɵbc, RelationAddressTileComponent as ɵbd, RelationAddressSelectComponent as ɵbe, BusinessObjectFactory as ɵbf, StepperModule as ɵbg, StepperComponent as ɵbh, StepperStepComponent as ɵbi, TransactionArticleTextModule as ɵbj, TransactionArticleTextComponent as ɵbk, TransactionArticleTextOverviewModule as ɵbl, TransactionArticleTextOverviewComponent as ɵbm, TransactionImageService as ɵbn, AvatarModule as ɵbo, AvatarComponent as ɵbp, DeliveryTypeTileModule as ɵbq, DeliveryTypeTileComponent as ɵbr, PaymentModule as ɵbs, PaymentTileModule as ɵbt, PaymentTileComponent as ɵbu, PaymentComponent as ɵbv, CheckoutOverviewRelationEditComponent as ɵbw, CheckoutOverviewDeliveryEditComponent as ɵbx, CheckoutOverviewDeliveryAddressComponent as ɵby, CheckOutRelationSuggestionsListComponent as ɵbz, OptionsService as ɵc, CheckOutRelationSuggestionsListItemComponent as ɵca, CheckoutLoginComponent as ɵcb, TransactionHeaderModule$1 as ɵcc, TransactionHeaderBlockModule as ɵcd, TransactionHeaderBlockComponent as ɵce, TransactionBaseComponent as ɵcf, TransactionHeaderPaymentModule as ɵcg, TransactionHeaderPaymentComponent as ɵch, TransactionHeaderComponent$1 as ɵci, TransactionLinesGridModule as ɵcj, TransactionBaseGridModule as ɵck, TransactionLineSidePanelModule as ɵcl, TransactionLineSidePanelDefaultModule as ɵcm, TransactionLinePriceModule as ɵcn, TransactionLinePriceComponent as ɵco, TransactionLineFieldsBaseComponent as ɵcp, TransactionLinePriceListModule as ɵcq, TransactionLinePriceListComponent as ɵcr, TransactionLineVatModule as ɵcs, TransactionLineVatComponent as ɵct, TransactionLineQuantityModule as ɵcu, TransactionLineQuantityComponent as ɵcv, TransactionLineLineDiscountModule as ɵcw, TransactionLineLineDiscountComponent as ɵcx, TransactionLineDeliveryMethodModule as ɵcy, TransactionLineDeliveryMethodComponent as ɵcz, DictionaryService as ɵd, TransactionLineDeliveryDateModule as ɵda, TransactionLineDeliveryDateComponent as ɵdb, TransactionLineReferenceModule as ɵdc, TransactionLineReferenceComponent as ɵdd, TransactionLineCommissionCodeModule as ɵde, TransactionLineCommissionCodeComponent as ɵdf, TransactionLineWarehouseModule as ɵdg, TransactionLineWarehouseComponent as ɵdh, TransactionLineDiscountAmountModule as ɵdi, TransactionLineDiscountAmountComponent as ɵdj, TransactionLineQuantumDiscountModule as ɵdk, TransactionLineQuantumDiscountComponent as ɵdl, TransactionLineSpecialDiscountModule as ɵdm, TransactionLineSpecialDiscountComponent as ɵdn, TransactionLineSidePanelDefaultComponent as ɵdo, TransactionReceivingGoodsHistoryModule as ɵdp, TransactionHistoryGridModule as ɵdq, TransactionHistoryGridStatusModule as ɵdr, TransactionHistoryGridStatusComponent as ɵds, TransactionHistoryGridComponent as ɵdt, TransactionReceivingGoodsHistoryComponent as ɵdu, TransactionReceivingGoodsDetailsModule as ɵdv, TransactionReceivingGoodsDetailsComponent as ɵdw, TransactionButtonBarModule as ɵdx, TransactionButtonBarComponent as ɵdy, TransactionMappingService as ɵdz, IOneConnectorAdapterService as ɵe, TransactionButtonBarButtonComponent as ɵea, TransactionConfirmationHistoryModule as ɵeb, TransactionConfirmationHistoryComponent as ɵec, TransactionLineSidePanelPurchaseModule as ɵed, TransactionLineSidePanelPurchaseComponent as ɵee, TransactionLineSidePanelComponent as ɵef, TransactionBaseGridComponent as ɵeg, TransactionGridBaseComponent as ɵeh, TransactionLinesGridComponent as ɵei, DiscountModule as ɵej, DiscountComponent as ɵek, TransactionQuickAccessOverviewModule as ɵel, TransactionQuickAccessOverviewComponent as ɵem, TransactionOrderConfirmationGridModule as ɵen, TransactionOrderConfirmationGridComponent as ɵeo, TransactionReceivedGoodsGridModule as ɵep, TransactionReceivedGoodsGridComponent as ɵeq, ViewModeButtonsModule as ɵer, ViewModeButtonsComponent as ɵes, TransactionGridModule as ɵet, TransactionGridComponent as ɵeu, TransactionSearchResultModule as ɵev, TransactionTileModule as ɵew, TransactionTileComponent as ɵex, TransactionSearchResultComponent as ɵey, TransactionSearchService as ɵez, CollectionCacheService as ɵf, TransactionFilterModule as ɵfa, TransactionFilterCategoriesModule as ɵfb, TransactionFilterCategoriesComponent as ɵfc, TransactionFilterContentOrderModule as ɵfd, TransactionFilterContentOrderComponent as ɵfe, FilterRequestService as ɵff, TransactionFilterContentLogisticsModule as ɵfg, TransactionFilterContentLogisticsComponent as ɵfh, TransactionFilterContentArticleModule as ɵfi, TransactionFilterContentArticleComponent as ɵfj, TransactionFilterComponent as ɵfk, CoreModule as ɵg, ConfirmationDialogModule as ɵh, PipeModule as ɵi, AppendPipe as ɵj, DeliveryTimePipe as ɵk, DateDurationPipe as ɵl, LocalizePipe as ɵm, CoCurrencyPipe as ɵn, SafeStylePipe as ɵo, SafeHtmlPipe as ɵp, ConfirmationDialogComponent as ɵq, DialogBaseComponent as ɵr, ImageDisplayComponent as ɵs, IconComponent as ɵt, IconCacheService as ɵu, CustomerGroupsComponent as ɵv, StockStatusIndicatorComponent as ɵw, RelationAddressModule as ɵx, RelationAddressComponent as ɵy, RelationAddressSelectModule as ɵz };
13245
+ export { CheckoutComponent, CheckoutModule, ShoppingCartComponent, ShoppingCartModule, ShoppingCartPreviewComponent, ShoppingCartPreviewModule, TransactionComponent, TransactionHeaderComponent, TransactionHeaderDeliveryComponent, TransactionHeaderDeliveryModule, TransactionHeaderModule, TransactionHeaderOrderComponent, TransactionHeaderOrderModule, TransactionHeaderRelationComponent, TransactionHeaderRelationModule, TransactionLineComponent, TransactionLineGridComponent, TransactionLineGridModule, TransactionLineModule, TransactionLinesComponent, TransactionLinesModule, TransactionModule, TransactionQuickAccessComponent, TransactionQuickAccessModule, TransactionQuickAccessOrderConfirmationComponent, TransactionQuickAccessOrderConfirmationModule, TransactionQuickAccessReceivedGoodsComponent, TransactionQuickAccessReceivedGoodsModule, TransactionSearchComponent, TransactionSearchModule, TransactionService, TransactionTotalsComponent, TransactionTotalsModule, PendingReasonService as ɵa, DialogService as ɵb, RelationAddressTileModule as ɵba, TileModule as ɵbb, TileComponent as ɵbc, RelationAddressTileComponent as ɵbd, RelationAddressSelectComponent as ɵbe, BusinessObjectFactory as ɵbf, StepperModule as ɵbg, StepperComponent as ɵbh, StepperStepComponent as ɵbi, TransactionArticleTextModule as ɵbj, TransactionArticleTextComponent as ɵbk, TransactionArticleTextOverviewModule as ɵbl, TransactionArticleTextOverviewComponent as ɵbm, TransactionImageService as ɵbn, AvatarModule as ɵbo, AvatarComponent as ɵbp, SharedService as ɵbq, SharedConnectorService as ɵbr, DeliveryTypeTileModule as ɵbs, DeliveryTypeTileComponent as ɵbt, PaymentModule as ɵbu, PaymentTileModule as ɵbv, PaymentTileComponent as ɵbw, PaymentComponent as ɵbx, PaymentService as ɵby, IOneConnectorAdapterService as ɵbz, OptionsService as ɵc, CheckoutOverviewRelationEditComponent as ɵca, CheckoutOverviewDeliveryEditComponent as ɵcb, CheckoutOverviewDeliveryAddressComponent as ɵcc, CheckOutRelationSuggestionsListComponent as ɵcd, CheckOutRelationSuggestionsListItemComponent as ɵce, CheckoutLoginComponent as ɵcf, TransactionHeaderModule$1 as ɵcg, TransactionHeaderBlockModule as ɵch, TransactionHeaderBlockComponent as ɵci, TransactionBaseComponent as ɵcj, TransactionHeaderPaymentModule as ɵck, TransactionHeaderPaymentComponent as ɵcl, TransactionHeaderComponent$1 as ɵcm, TransactionLinesGridModule as ɵcn, TransactionBaseGridModule as ɵco, TransactionLineSidePanelModule as ɵcp, TransactionLineSidePanelDefaultModule as ɵcq, TransactionLinePriceModule as ɵcr, TransactionLinePriceComponent as ɵcs, TransactionLineFieldsBaseComponent as ɵct, TransactionLinePriceListModule as ɵcu, TransactionLinePriceListComponent as ɵcv, TransactionLineVatModule as ɵcw, TransactionLineVatComponent as ɵcx, TransactionLineQuantityModule as ɵcy, TransactionLineQuantityComponent as ɵcz, DictionaryService as ɵd, TransactionLineLineDiscountModule as ɵda, TransactionLineLineDiscountComponent as ɵdb, TransactionLineDeliveryMethodModule as ɵdc, TransactionLineDeliveryMethodComponent as ɵdd, TransactionLineDeliveryDateModule as ɵde, TransactionLineDeliveryDateComponent as ɵdf, TransactionLineReferenceModule as ɵdg, TransactionLineReferenceComponent as ɵdh, TransactionLineCommissionCodeModule as ɵdi, TransactionLineCommissionCodeComponent as ɵdj, TransactionLineWarehouseModule as ɵdk, TransactionLineWarehouseComponent as ɵdl, TransactionLineDiscountAmountModule as ɵdm, TransactionLineDiscountAmountComponent as ɵdn, TransactionLineQuantumDiscountModule as ɵdo, TransactionLineQuantumDiscountComponent as ɵdp, TransactionLineSpecialDiscountModule as ɵdq, TransactionLineSpecialDiscountComponent as ɵdr, TransactionLineSidePanelDefaultComponent as ɵds, TransactionReceivingGoodsHistoryModule as ɵdt, TransactionHistoryGridModule as ɵdu, TransactionHistoryGridStatusModule as ɵdv, TransactionHistoryGridStatusComponent as ɵdw, TransactionHistoryGridComponent as ɵdx, TransactionReceivingGoodsHistoryComponent as ɵdy, TransactionReceivingGoodsDetailsModule as ɵdz, TransactionConnectorService as ɵe, TransactionReceivingGoodsDetailsComponent as ɵea, ArticleService as ɵeb, ArticleConnectorService as ɵec, TransactionButtonBarModule as ɵed, TransactionButtonBarComponent as ɵee, TransactionMappingService as ɵef, TransactionButtonBarButtonComponent as ɵeg, TransactionConfirmationHistoryModule as ɵeh, TransactionConfirmationHistoryComponent as ɵei, TransactionLineSidePanelPurchaseModule as ɵej, TransactionLineSidePanelPurchaseComponent as ɵek, TransactionEventService as ɵel, TransactionLineSidePanelComponent as ɵem, TransactionBaseGridComponent as ɵen, TransactionGridBaseComponent as ɵeo, TransactionLinesGridComponent as ɵep, DiscountModule as ɵeq, DiscountComponent as ɵer, TransactionQuickAccessOverviewModule as ɵes, TransactionQuickAccessOverviewComponent as ɵet, TransactionOrderConfirmationGridModule as ɵeu, TransactionOrderConfirmationGridComponent as ɵev, TransactionReceivedGoodsGridModule as ɵew, TransactionReceivedGoodsGridComponent as ɵex, ViewModeButtonsModule as ɵey, ViewModeButtonsComponent as ɵez, CollectionCacheService as ɵf, TransactionGridModule as ɵfa, TransactionGridComponent as ɵfb, TransactionSearchResultModule as ɵfc, TransactionTileModule as ɵfd, TransactionTileComponent as ɵfe, TransactionSearchGridModule as ɵff, TransactionSearchGridComponent as ɵfg, TransactionSearchResultComponent as ɵfh, TransactionSearchService as ɵfi, TransactionFilterModule as ɵfj, TransactionFilterCategoriesModule as ɵfk, TransactionFilterCategoriesComponent as ɵfl, TransactionFilterContentOrderModule as ɵfm, TransactionFilterContentOrderComponent as ɵfn, FilterRequestService as ɵfo, TransactionFilterContentLogisticsModule as ɵfp, TransactionFilterContentLogisticsComponent as ɵfq, TransactionFilterContentArticleModule as ɵfr, TransactionFilterContentArticleComponent as ɵfs, TransactionFilterComponent as ɵft, CoreModule as ɵg, ConfirmationDialogModule as ɵh, PipeModule as ɵi, AppendPipe as ɵj, DeliveryTimePipe as ɵk, DateDurationPipe as ɵl, LocalizePipe as ɵm, CoCurrencyPipe as ɵn, SafeStylePipe as ɵo, SafeHtmlPipe as ɵp, ConfirmationDialogComponent as ɵq, DialogBaseComponent as ɵr, ImageDisplayComponent as ɵs, IconComponent as ɵt, IconCacheService as ɵu, CustomerGroupsComponent as ɵv, StockStatusIndicatorComponent as ɵw, RelationAddressModule as ɵx, RelationAddressComponent as ɵy, RelationAddressSelectModule as ɵz };
11261
13246
  //# sourceMappingURL=colijnit-transaction.js.map