@colijnit/transaction 256.1.7 → 256.1.9

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 (86) hide show
  1. package/bundles/colijnit-transaction.umd.js +352 -185
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.metadata.json +1 -1
  4. package/esm2015/lib/cache/service/transaction-business-object-cache-manager.service.js +1 -1
  5. package/esm2015/lib/cache/service/transaction-select-multiple-parameterized-cache.service.js +1 -1
  6. package/esm2015/lib/cache/service/transaction-select-single-parameterized-cache.service.js +1 -1
  7. package/esm2015/lib/component/core/base/dialog-transaction-base.component.js +2 -1
  8. package/esm2015/lib/component/core/base/transaction-base.component.js +30 -1
  9. package/esm2015/lib/component/core/base/transaction-search-tile-base.component.js +23 -4
  10. package/esm2015/lib/component/quick-send-button/quick-send-button.component.js +3 -2
  11. package/esm2015/lib/component/search/search-filter-panel/search-filter-panel.component.js +10 -4
  12. package/esm2015/lib/component/search/search-header-buttons/search-header-buttons.component.js +13 -4
  13. package/esm2015/lib/component/search/search-view-mode.service.js +1 -9
  14. package/esm2015/lib/component/search/search.component.js +28 -11
  15. package/esm2015/lib/component/transaction/transaction.component.js +6 -2
  16. package/esm2015/lib/component/transaction-button/transaction-button.component.js +8 -5
  17. package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-allocation-button-bar-button.component.js +3 -2
  18. package/esm2015/lib/component/transaction-create-wizard/transaction-create-wizard.component.js +14 -3
  19. package/esm2015/lib/component/transaction-header/transaction-header-relation/transaction-header-relation.component.js +6 -3
  20. package/esm2015/lib/component/transaction-header-fields/transaction-header-delivery-method-button/transaction-header-delivery-method-button.component.js +5 -3
  21. package/esm2015/lib/component/transaction-header-fields/transaction-header-deliverydate-definitive-button/transaction-header-deliverydate-definitive-button.component.js +4 -2
  22. package/esm2015/lib/component/transaction-header-fields/transaction-header-remaining-amount.component.js +2 -2
  23. package/esm2015/lib/component/transaction-internal/transaction-internal.component.js +19 -25
  24. package/esm2015/lib/component/transaction-line/transaction-base-line/transaction-base-line.component.js +1 -1
  25. package/esm2015/lib/component/transaction-line/transaction-line/transaction-line.component.js +11 -10
  26. package/esm2015/lib/component/transaction-line/transaction-overview-line/transaction-overview-line.component.js +4 -3
  27. package/esm2015/lib/component/transaction-line/transaction-planning-line/transaction-planning-line.component.js +100 -101
  28. package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line-base.component.js +13 -5
  29. package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line-base.component.js +4 -1
  30. package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.component.js +2 -2
  31. package/esm2015/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.component.js +8 -5
  32. package/esm2015/lib/component/transaction-line-fields/transaction-line-confirmed-delivery-date-button.component.js +5 -2
  33. package/esm2015/lib/component/transaction-line-fields/transaction-line-description.component.js +5 -3
  34. package/esm2015/lib/component/transaction-line-fields/transaction-line-drop-shipment-button.component.js +3 -14
  35. package/esm2015/lib/component/transaction-line-fields/transaction-line-supplier-button.component.js +4 -5
  36. package/esm2015/lib/component/transaction-line-side-panel-default/transaction-line-side-panel-default.component.js +2 -1
  37. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-send-method-base.component.js +7 -3
  38. package/esm2015/lib/component/transaction-search/service/transaction-search.service.js +3 -1
  39. package/esm2015/lib/component/transaction-search/transaction-filter/transaction-filter/transaction-filter.component.js +7 -3
  40. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-pos-order-tile/transaction-search-pos-order-tile.component.js +72 -70
  41. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-sales-line-select-tile/transaction-search-sales-line-select-tile.component.js +20 -17
  42. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-sales-order-tile/transaction-search-sales-order-tile.component.js +80 -70
  43. package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-sales-quotation-tile/transaction-search-sales-quotation-tile.component.js +7 -5
  44. package/esm2015/lib/component/transaction-search/transaction-search.component.js +9 -1
  45. package/esm2015/lib/component/transaction-service-overview/transaction-service-overview.component.js +95 -80
  46. package/esm2015/lib/component/transaction-tags/transaction-tags.component.js +11 -5
  47. package/esm2015/lib/component/transaction-totals/transaction-totals.component.js +7 -3
  48. package/esm2015/lib/service/article.service.js +1 -1
  49. package/esm2015/lib/service/purchase-confirmation.service.js +4 -2
  50. package/esm2015/lib/service/transaction-connector-adapter.service.js +4 -1
  51. package/esm2015/lib/service/transaction-connector.service.js +45 -35
  52. package/esm2015/lib/service/transaction-relation.service.js +5 -4
  53. package/esm2015/lib/service/transaction.service.js +3 -3
  54. package/esm2015/lib/transaction-version.js +3 -3
  55. package/fesm2015/colijnit-transaction.js +620 -452
  56. package/fesm2015/colijnit-transaction.js.map +1 -1
  57. package/lib/cache/service/transaction-business-object-cache-manager.service.d.ts +12 -14
  58. package/lib/cache/service/transaction-select-multiple-parameterized-cache.service.d.ts +2 -2
  59. package/lib/cache/service/transaction-select-single-parameterized-cache.service.d.ts +1 -2
  60. package/lib/component/core/base/transaction-search-tile-base.component.d.ts +10 -4
  61. package/lib/component/search/search-filter-panel/search-filter-panel.component.d.ts +4 -0
  62. package/lib/component/search/search-header-buttons/search-header-buttons.component.d.ts +3 -1
  63. package/lib/component/search/search-view-mode.service.d.ts +0 -1
  64. package/lib/component/search/search.component.d.ts +7 -3
  65. package/lib/component/transaction/transaction.component.d.ts +6 -1
  66. package/lib/component/transaction-button/transaction-button.component.d.ts +3 -1
  67. package/lib/component/transaction-create-wizard/transaction-create-wizard.component.d.ts +4 -1
  68. package/lib/component/transaction-internal/transaction-internal.component.d.ts +6 -1
  69. package/lib/component/transaction-line/transaction-planning-line/style/_layout.scss +0 -2
  70. package/lib/component/transaction-line/transaction-planning-line/style/_theme.scss +1 -3
  71. package/lib/component/transaction-line/transaction-planning-line/style/material.scss +1 -0
  72. package/lib/component/transaction-line/transaction-planning-line/transaction-planning-line.component.d.ts +2 -3
  73. package/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line-base.component.d.ts +2 -0
  74. package/lib/component/transaction-line-action-buttons/transaction-line-action-buttons.component.d.ts +4 -3
  75. package/lib/component/transaction-line-fields/transaction-line-confirmed-delivery-date-button.component.d.ts +1 -0
  76. package/lib/component/transaction-line-fields/transaction-line-description.component.d.ts +1 -0
  77. package/lib/component/transaction-search/transaction-filter/transaction-filter/transaction-filter.component.d.ts +3 -2
  78. package/lib/component/transaction-search/transaction-search-tile/transaction-search-pos-order-tile/transaction-search-pos-order-tile.component.d.ts +3 -1
  79. package/lib/component/transaction-search/transaction-search-tile/transaction-search-sales-line-select-tile/transaction-search-sales-line-select-tile.component.d.ts +5 -4
  80. package/lib/component/transaction-search/transaction-search-tile/transaction-search-sales-order-tile/transaction-search-sales-order-tile.component.d.ts +6 -2
  81. package/lib/component/transaction-search/transaction-search-tile/transaction-search-sales-quotation-tile/transaction-search-sales-quotation-tile.component.d.ts +3 -1
  82. package/lib/component/transaction-search/transaction-search.component.d.ts +2 -0
  83. package/lib/component/transaction-service-overview/transaction-service-overview.component.d.ts +19 -19
  84. package/lib/component/transaction-tags/transaction-tags.component.d.ts +3 -2
  85. package/lib/component/transaction-totals/transaction-totals.component.d.ts +3 -2
  86. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import { __awaiter } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
- import { Injectable, Component, ViewEncapsulation, Input, HostBinding, EventEmitter, ChangeDetectorRef, Output, Injector, ComponentFactoryResolver, ApplicationRef, Directive, ViewChild, ViewChildren, ElementRef, forwardRef, Pipe, NgModule, ContentChildren, HostListener, ChangeDetectionStrategy, Renderer2, Inject, LOCALE_ID } from '@angular/core';
3
+ import { Injectable, Component, ViewEncapsulation, Input, HostBinding, EventEmitter, ChangeDetectorRef, Output, Injector, ComponentFactoryResolver, ApplicationRef, Directive, ViewChild, ViewChildren, ElementRef, forwardRef, Pipe, NgModule, ContentChildren, ChangeDetectionStrategy, HostListener, Renderer2, ViewContainerRef, Inject, LOCALE_ID } from '@angular/core';
4
4
  import { SequenceName } from '@colijnit/transactionapi/build/enum/sequence-name.enum';
5
5
  import { BehaviorSubject, Subject, throwError } from 'rxjs';
6
6
  import { PendingReasonType } from '@colijnit/transactionapi/build/enum/pending-reason-type.enum';
@@ -278,8 +278,8 @@ class Version {
278
278
  constructor() {
279
279
  this.name = "@colijnit/transaction";
280
280
  this.description = "Colijn IT transaction package";
281
- this.symVer = "256.1.7";
282
- this.publishDate = "29-10-2024 18:11:52";
281
+ this.symVer = "256.1.9";
282
+ this.publishDate = "6-11-2024 14:22:44";
283
283
  }
284
284
  }
285
285
 
@@ -2178,6 +2178,9 @@ class TransactionConnectorAdapterService {
2178
2178
  return __awaiter(this, void 0, void 0, function* () {
2179
2179
  const result = yield this.connector.getSingleImage(nodeId, publication, includeMimetype, thumb);
2180
2180
  if (result.validationResult && result.validationResult.success) {
2181
+ if (result.resultObject && result.resultObject.fileType === 'UNITYWEB') {
2182
+ return "";
2183
+ }
2181
2184
  if (result.resultObject && result.resultObject.filePath !== null && result.resultObject.filePath !== undefined && result.resultObject.filePath !== "") {
2182
2185
  return ImageUtils.getFixedImageFilepathUrl(result.resultObject.filePath);
2183
2186
  }
@@ -6672,58 +6675,53 @@ class TransactionConnectorService {
6672
6675
  }
6673
6676
  getCommissionCodes(languageCode) {
6674
6677
  return __awaiter(this, void 0, void 0, function* () {
6675
- //const domainName: DomainName = DomainName.CommissionCode;
6676
- //return this._selectMultipleParameterizedCacheService.requestCache<CoDomainValue>(CoDomainValue, (languageCode: string, domainName: DomainName) => {
6677
- return this._adapterService.getCommissionCodes(languageCode);
6678
- //}).getValue(languageCode, domainName);
6678
+ return this._selectMultipleParameterizedCacheService.requestCache(DomainName.CommissionCode, (languageCode, domainName) => {
6679
+ return this._adapterService.getCommissionCodes(languageCode);
6680
+ }).getValue(languageCode, DomainName.CommissionCode);
6679
6681
  });
6680
6682
  }
6681
6683
  getInOutCollection(languageCode) {
6682
6684
  return __awaiter(this, void 0, void 0, function* () {
6683
- //const domainName: DomainName = DomainName.InOutCollection;
6684
- //return this._selectMultipleParameterizedCacheService.requestCache<CoDomainValue>(CoDomainValue, (languageCode: string, domainName: DomainName) => {
6685
- return this._adapterService.getInOutCollection(languageCode);
6686
- //}).getValue(languageCode, domainName);
6685
+ return this._selectMultipleParameterizedCacheService.requestCache(DomainName.InOutCollection, (languageCode, domainName) => {
6686
+ return this._adapterService.getInOutCollection(languageCode);
6687
+ }).getValue(languageCode, DomainName.InOutCollection);
6687
6688
  });
6688
6689
  }
6689
6690
  getYesNoCollection(languageCode) {
6690
6691
  return __awaiter(this, void 0, void 0, function* () {
6691
- //const domainName: DomainName = DomainName.YesNo;
6692
- //return this._selectMultipleParameterizedCacheService.requestCache<CoDomainValue>(CoDomainValue, (languageCode: string, domainName: DomainName) => {
6693
- return this._adapterService.getYesNoCollection(languageCode);
6694
- //}).getValue(languageCode, domainName);
6692
+ return this._selectMultipleParameterizedCacheService.requestCache(DomainName.YesNo, (languageCode, domainName) => {
6693
+ return this._adapterService.getYesNoCollection(languageCode);
6694
+ }).getValue(languageCode, DomainName.YesNo);
6695
6695
  });
6696
6696
  }
6697
6697
  getPriceKindCollection(languageCode) {
6698
6698
  return __awaiter(this, void 0, void 0, function* () {
6699
- //const domainName: DomainName = DomainName.PriceKind;
6700
- //return this._selectMultipleParameterizedCacheService.requestCache<CoDomainValue>(CoDomainValue, (languageCode: string, domainName: DomainName) => {
6701
- return this._adapterService.getPriceKindCollection(languageCode);
6702
- //}).getValue(languageCode, domainName);
6699
+ return this._selectMultipleParameterizedCacheService.requestCache(DomainName.PriceKind, (languageCode, domainName) => {
6700
+ return this._adapterService.getPriceKindCollection(languageCode);
6701
+ }).getValue(languageCode, DomainName.PriceKind);
6703
6702
  });
6704
6703
  }
6705
6704
  getPriorityCollection(languageCode) {
6706
6705
  return __awaiter(this, void 0, void 0, function* () {
6707
- // const domainName: DomainName = DomainName.Priority;
6708
- //return this._selectMultipleParameterizedCacheService.requestCache<CoDomainValue>(CoDomainValue, (languageCode: string, domainName: DomainName) => {
6709
- return this._adapterService.getPriorityCollection(languageCode);
6710
- // }).getValue(languageCode, domainName);
6706
+ return this._selectMultipleParameterizedCacheService.requestCache(DomainName.Priority, (languageCode, domainName) => {
6707
+ return this._adapterService.getPriorityCollection(languageCode);
6708
+ }).getValue(languageCode, DomainName.Priority);
6711
6709
  });
6712
6710
  }
6713
6711
  getEntryTypes(languageCode) {
6714
- // const domainName: DomainName = DomainName.ServiceCommunicationType;
6715
- //return this._selectMultipleParameterizedCacheService.requestCache<CoDomainValue>(CoDomainValue, (languageCode: string, domainName: DomainName) => {
6716
- return this._adapterService.getEntryTypes(languageCode);
6717
- //}).getValue(languageCode, domainName);
6712
+ return this._selectMultipleParameterizedCacheService.requestCache(DomainName.ServiceCommunicationType, (languageCode, domainName) => {
6713
+ return this._adapterService.getEntryTypes(languageCode);
6714
+ }).getValue(languageCode, DomainName.ServiceCommunicationType);
6718
6715
  }
6719
6716
  getDomainTypes(languageCode) {
6720
- // const domainName: DomainName = DomainName.TransType;
6721
- // return this._selectMultipleParameterizedCacheService.requestCache<CoDomainValue>(CoDomainValue, (languageCode: string, domainName: DomainName) => {
6722
- return this._adapterService.getDomainTypes(languageCode);
6723
- //}).getValue(languageCode, domainName);
6717
+ return this._selectMultipleParameterizedCacheService.requestCache(DomainName.TransType, (languageCode, domainName) => {
6718
+ return this._adapterService.getDomainTypes(languageCode);
6719
+ }).getValue(languageCode, DomainName.TransType);
6724
6720
  }
6725
6721
  getCauseCodes() {
6726
- return this._adapterService.getCauseCodes();
6722
+ return this._selectMultipleCacheService.requestCache(CauseCode, () => {
6723
+ return this._adapterService.getCauseCodes();
6724
+ }).getValue();
6727
6725
  }
6728
6726
  getTransactionArticleWarehouses(goodId) {
6729
6727
  return __awaiter(this, void 0, void 0, function* () {
@@ -7233,12 +7231,16 @@ class TransactionConnectorService {
7233
7231
  }
7234
7232
  getOrderConfirmationDefaultSendMethod(relationId) {
7235
7233
  return __awaiter(this, void 0, void 0, function* () {
7236
- return yield this._adapterService.getOrderConfirmationDefaultSendMethod(relationId);
7234
+ return this._selectSinlgeParameterizedCacheService.requestCache(Number, (relationId) => {
7235
+ return this._adapterService.getOrderConfirmationDefaultSendMethod(relationId);
7236
+ }).getValue(relationId);
7237
7237
  });
7238
7238
  }
7239
7239
  getDefaultEmailAddressListForOrderConfirmation(transactionUUID) {
7240
7240
  return __awaiter(this, void 0, void 0, function* () {
7241
- return yield this._adapterService.getDefaultEmailAddressListForOrderConfirmation(transactionUUID);
7241
+ return this._selectMultipleParameterizedCacheService.requestCache(String, (transactionUUID) => {
7242
+ return this._adapterService.getDefaultEmailAddressListForOrderConfirmation(transactionUUID);
7243
+ }).getValue(transactionUUID);
7242
7244
  });
7243
7245
  }
7244
7246
  printOrderConfirmation(request) {
@@ -7598,7 +7600,9 @@ class TransactionConnectorService {
7598
7600
  }
7599
7601
  getTransactionInfo(transId, lineNr) {
7600
7602
  return __awaiter(this, void 0, void 0, function* () {
7601
- return yield this._adapterService.getTransactionInfo(transId, lineNr);
7603
+ return this._selectMultipleParameterizedCacheService.requestCache(TransactionInfoHistory, ([transId, lineNr]) => {
7604
+ return this._adapterService.getTransactionInfo(transId, lineNr);
7605
+ }).getValue([transId, lineNr]);
7602
7606
  });
7603
7607
  }
7604
7608
  getRefTransactions(transId) {
@@ -7627,12 +7631,16 @@ class TransactionConnectorService {
7627
7631
  }
7628
7632
  getReportHeadersByTransIdAndLayoutCode(transId, documentCode) {
7629
7633
  return __awaiter(this, void 0, void 0, function* () {
7630
- return yield this._adapterService.getReportHeadersByTransIdAndLayoutCode(transId, documentCode);
7634
+ return this._selectMultipleParameterizedCacheService.requestCache(HistoricReport, (transId, documentCode) => {
7635
+ return this._adapterService.getReportHeadersByTransIdAndLayoutCode(transId, documentCode);
7636
+ }).getValue(transId, documentCode);
7631
7637
  });
7632
7638
  }
7633
7639
  getPackageStickerPrintLayouts() {
7634
7640
  return __awaiter(this, void 0, void 0, function* () {
7635
- return yield this._adapterService.getPackageStickerPrintLayouts();
7641
+ return this._selectMultipleCacheService.requestCache(ReportLayoutSelectionPrint, () => {
7642
+ return this._adapterService.getPackageStickerPrintLayouts();
7643
+ }).getValue();
7636
7644
  });
7637
7645
  }
7638
7646
  copySalesOrder(copyTransactionRequest) {
@@ -8258,6 +8266,7 @@ class TransactionBaseComponent {
8258
8266
  set cfgName(value) {
8259
8267
  this._cfgName = value;
8260
8268
  this.configSet();
8269
+ this.detectChanges();
8261
8270
  }
8262
8271
  get cfgName() {
8263
8272
  return this._cfgName;
@@ -8269,11 +8278,13 @@ class TransactionBaseComponent {
8269
8278
  this.headerReadonly = false;
8270
8279
  this.tooltipMessage = undefined;
8271
8280
  }
8281
+ this.detectChanges();
8272
8282
  }
8273
8283
  get forceWritable() {
8274
8284
  return this._forceWritable;
8275
8285
  }
8276
8286
  set transaction(value) {
8287
+ const shouldDetectChanges = this._transaction !== value;
8277
8288
  this._transaction = value;
8278
8289
  if (this._transaction) {
8279
8290
  if (this._transaction.transactionInfo) {
@@ -8309,11 +8320,15 @@ class TransactionBaseComponent {
8309
8320
  this.transactionLines.filter(l => l.articleLineStatus ? l.articleLineStatus.quantityToInvoice !== 0 : false).length > 0 :
8310
8321
  this.transactionLines.filter(l => l.articleLineStatus ? l.articleLineStatus.quantityToInvoice === 0 : false).length === 0;
8311
8322
  }
8323
+ if (shouldDetectChanges) {
8324
+ this.detectChanges();
8325
+ }
8312
8326
  }
8313
8327
  get transaction() {
8314
8328
  return this._transaction;
8315
8329
  }
8316
8330
  set transactionLine(value) {
8331
+ const shouldDetectChanges = this._transactionLine !== value;
8317
8332
  if (value) {
8318
8333
  this._transactionLine = value;
8319
8334
  if (this._transactionLine.salesUnitDecimals) {
@@ -8351,6 +8366,9 @@ class TransactionBaseComponent {
8351
8366
  this.lineQuantityTransportNotification = this._transactionLine.articleLineStatus && this._transactionLine.articleLineStatus.hasOwnProperty('quantityTransportNotification') ? this._transactionLine.articleLineStatus.quantityTransportNotification : 0;
8352
8367
  this.lineQuantityInvoiceControl = this._transactionLine.articleLineStatus && this._transactionLine.articleLineStatus.hasOwnProperty('quantityInvoiceControl') ? this._transactionLine.articleLineStatus.quantityInvoiceControl : 0;
8353
8368
  this.transactionLineSet();
8369
+ if (shouldDetectChanges) {
8370
+ this.detectChanges();
8371
+ }
8354
8372
  }
8355
8373
  }
8356
8374
  get transactionLine() {
@@ -8365,6 +8383,7 @@ class TransactionBaseComponent {
8365
8383
  // return this._transactionMarginInfo;
8366
8384
  // }
8367
8385
  set transactionInfo(value) {
8386
+ const shouldDetectChanges = this._transactionInfo !== value;
8368
8387
  if (value) {
8369
8388
  this.headerReadonly = false;
8370
8389
  this.tooltipMessage = "";
@@ -8385,13 +8404,20 @@ class TransactionBaseComponent {
8385
8404
  this.orderLineSets = this._transactionInfo.orderLineSets;
8386
8405
  }
8387
8406
  this.transactionInfoSet();
8407
+ if (shouldDetectChanges) {
8408
+ this.detectChanges();
8409
+ }
8388
8410
  }
8389
8411
  }
8390
8412
  get transactionInfo() {
8391
8413
  return this._transactionInfo;
8392
8414
  }
8393
8415
  set orderLineSets(value) {
8416
+ const shouldDetectChanges = this._orderLineSets !== value;
8394
8417
  this._orderLineSets = value;
8418
+ if (shouldDetectChanges) {
8419
+ this.detectChanges();
8420
+ }
8395
8421
  }
8396
8422
  get orderLineSets() {
8397
8423
  return this._orderLineSets;
@@ -8405,20 +8431,28 @@ class TransactionBaseComponent {
8405
8431
  return this._transactionServiceInfo ? this._transactionServiceInfo : new TransactionServiceInfo();
8406
8432
  }*/
8407
8433
  set transactionTotal(value) {
8434
+ const shouldDetectChanges = this._transactionTotal !== value;
8408
8435
  if (value) {
8409
8436
  this._transactionTotal = value;
8410
8437
  this.transactionTotalSet();
8438
+ if (shouldDetectChanges) {
8439
+ this.detectChanges();
8440
+ }
8411
8441
  }
8412
8442
  }
8413
8443
  get transactionTotal() {
8414
8444
  return this._transactionTotal;
8415
8445
  }
8416
8446
  set relation(value) {
8447
+ const shouldDetectChanges = this._relation !== value;
8417
8448
  if (value) {
8418
8449
  this._relation = value;
8419
8450
  this.relationKind = this._relation.relationType;
8420
8451
  this.relationType = this._relation.type;
8421
8452
  this.relationSet();
8453
+ if (shouldDetectChanges) {
8454
+ this.detectChanges();
8455
+ }
8422
8456
  }
8423
8457
  }
8424
8458
  get relation() {
@@ -8429,6 +8463,7 @@ class TransactionBaseComponent {
8429
8463
  if (this.transactionLine) {
8430
8464
  this.transactionLine.selected = this._selected;
8431
8465
  }
8466
+ this.detectChanges();
8432
8467
  }
8433
8468
  get selected() {
8434
8469
  return this._selected;
@@ -8437,6 +8472,7 @@ class TransactionBaseComponent {
8437
8472
  return this._transactionLine.hasOwnProperty('lineNr') ? this._transactionLine : this._transactionInfo;
8438
8473
  }
8439
8474
  ngOnInit() {
8475
+ this.changeDetector.markForCheck();
8440
8476
  this._baseSubs.push(this.transactionEventService.transactionLineVisibilityChange.subscribe((data) => {
8441
8477
  if (data && this.transactionLine && data.line.lineNr === this.transactionLine.lineNr) {
8442
8478
  this.visibilitySet(data.visible);
@@ -8469,6 +8505,7 @@ class TransactionBaseComponent {
8469
8505
  }
8470
8506
  visibilitySet(visible) {
8471
8507
  this.visible = visible;
8508
+ this.detectChanges();
8472
8509
  }
8473
8510
  configSet() {
8474
8511
  }
@@ -8609,6 +8646,7 @@ class DialogTransactionBaseComponent extends TransactionBaseComponent {
8609
8646
  }
8610
8647
  this.close.emit();
8611
8648
  this.onClose(type);
8649
+ this.detectChanges();
8612
8650
  }
8613
8651
  }
8614
8652
  DialogTransactionBaseComponent.decorators = [
@@ -9314,9 +9352,9 @@ class TransactionRelationService {
9314
9352
  // }).getValue();
9315
9353
  }
9316
9354
  getSupplierLightById(supplierId) {
9317
- // return this._selectSingleCacheService.requestCache<SupplierFullObject>(SupplierFullObject, relationNo, () => {
9318
- return this._adapterService.getSupplierLightById(supplierId);
9319
- // }).getValue();
9355
+ return this._selectSingleCacheService.requestCache(SupplierLightObject, supplierId, () => {
9356
+ return this._adapterService.getSupplierLightById(supplierId);
9357
+ }).getValue();
9320
9358
  }
9321
9359
  insertAddress(address) {
9322
9360
  return this._adapterService.insertAddress(address);
@@ -10303,12 +10341,12 @@ class TransactionService extends PendingReasonService {
10303
10341
  }
10304
10342
  prepareJsPickingListInternalParam() {
10305
10343
  return __awaiter(this, void 0, void 0, function* () {
10306
- this.internalParameterJsPickingList = yield this.getInternalParameter(InternalParam.PickingList);
10344
+ this.getInternalParameter(InternalParam.PickingList).then((value) => this.internalParameterJsPickingList = value);
10307
10345
  });
10308
10346
  }
10309
10347
  prepareManualSaveInternalParam() {
10310
10348
  return __awaiter(this, void 0, void 0, function* () {
10311
- this.manualSaveParam = yield this.getInternalParameter(InternalParam.TransManualSave);
10349
+ this.getInternalParameter(InternalParam.TransManualSave).then((value) => this.manualSaveParam = value);
10312
10350
  });
10313
10351
  }
10314
10352
  prepareDropShipmentInternalParam() {
@@ -15433,6 +15471,9 @@ class TransactionTotalsComponent extends TransactionBaseComponent {
15433
15471
  }
15434
15472
  });
15435
15473
  }
15474
+ transactionTotalSet() {
15475
+ this.detectChanges();
15476
+ }
15436
15477
  }
15437
15478
  TransactionTotalsComponent.decorators = [
15438
15479
  { type: Component, args: [{
@@ -15471,6 +15512,7 @@ TransactionTotalsComponent.decorators = [
15471
15512
  (close)="showDiscountDialog = false">
15472
15513
  </co-dialog-transaction-header-discount>
15473
15514
  `,
15515
+ changeDetection: ChangeDetectionStrategy.OnPush,
15474
15516
  encapsulation: ViewEncapsulation.None
15475
15517
  },] }
15476
15518
  ];
@@ -15832,8 +15874,9 @@ TransactionHeaderDiscountTransactionTotalModule.decorators = [
15832
15874
  ];
15833
15875
 
15834
15876
  class TransactionButtonComponent {
15835
- constructor(_screenConfigService) {
15877
+ constructor(_screenConfigService, _changeDetector) {
15836
15878
  this._screenConfigService = _screenConfigService;
15879
+ this._changeDetector = _changeDetector;
15837
15880
  this.statusColor = false;
15838
15881
  this.readonly = false;
15839
15882
  this.hidden = false;
@@ -15878,11 +15921,13 @@ TransactionButtonComponent.decorators = [
15878
15921
  provide: SCREEN_CONFIG_ADAPTER_COMPONENT_INTERFACE_NAME,
15879
15922
  useExisting: forwardRef(() => TransactionButtonComponent)
15880
15923
  }],
15881
- encapsulation: ViewEncapsulation.None
15924
+ encapsulation: ViewEncapsulation.None,
15925
+ changeDetection: ChangeDetectionStrategy.Default
15882
15926
  },] }
15883
15927
  ];
15884
15928
  TransactionButtonComponent.ctorParameters = () => [
15885
- { type: TransactionScreenConfigurationService }
15929
+ { type: TransactionScreenConfigurationService },
15930
+ { type: ChangeDetectorRef }
15886
15931
  ];
15887
15932
  TransactionButtonComponent.propDecorators = {
15888
15933
  label: [{ type: Input }],
@@ -15964,6 +16009,7 @@ class TransactionLineDescriptionComponent extends TransactionInputFieldBaseCompo
15964
16009
  super(...arguments);
15965
16010
  this.icons = Icon;
15966
16011
  this.showPurchaseDesc = false;
16012
+ this.customHeight = true;
15967
16013
  }
15968
16014
  set child(content) {
15969
16015
  if (content) {
@@ -16065,7 +16111,7 @@ TransactionLineDescriptionComponent.decorators = [
16065
16111
  [readonly]="readonly"
16066
16112
  [model]="getDescription()"
16067
16113
  (blur)="editMode = false"
16068
- class="custom-height"
16114
+ [class.custom-height]="customHeight"
16069
16115
  ></co-input-text>
16070
16116
  `,
16071
16117
  providers: [{
@@ -16079,7 +16125,8 @@ TransactionLineDescriptionComponent.decorators = [
16079
16125
  TransactionLineDescriptionComponent.propDecorators = {
16080
16126
  child: [{ type: ViewChild, args: ['input', { read: InputTextComponent },] }],
16081
16127
  showPurchaseDesc: [{ type: Input }],
16082
- configNames: [{ type: Input }]
16128
+ configNames: [{ type: Input }],
16129
+ customHeight: [{ type: Input }]
16083
16130
  };
16084
16131
 
16085
16132
  class TransactionLineDescriptionModule {
@@ -16658,7 +16705,9 @@ class TransactionSearchService {
16658
16705
  set transactionType(value) {
16659
16706
  if (this._transactionType !== value) {
16660
16707
  this._resetRequest();
16708
+ this.searchRequest.transactionKind = value;
16661
16709
  this.transactions.length = 0;
16710
+ this.searchRequestSet.next(this.searchRequest);
16662
16711
  }
16663
16712
  this._transactionType = value;
16664
16713
  }
@@ -17078,13 +17127,28 @@ TransactionSearchSalesOrderGridComponent.propDecorators = {
17078
17127
  };
17079
17128
 
17080
17129
  class TransactionSearchTileBaseComponent {
17081
- constructor(iconCacheService) {
17130
+ constructor(iconCacheService, changeDetection) {
17082
17131
  this.iconCacheService = iconCacheService;
17132
+ this.changeDetection = changeDetection;
17083
17133
  this.cfgNames = TransactionCfgName;
17084
17134
  this.icons = Icon;
17085
17135
  this.transactionClick = new EventEmitter();
17086
17136
  this.selectedClick = new EventEmitter();
17087
17137
  }
17138
+ set showCheckbox(value) {
17139
+ this._showCheckbox = value;
17140
+ this.detectChanges();
17141
+ }
17142
+ get showCheckbox() {
17143
+ return this._showCheckbox;
17144
+ }
17145
+ set transaction(value) {
17146
+ this._transaction = value;
17147
+ this.detectChanges();
17148
+ }
17149
+ get transaction() {
17150
+ return this._transaction;
17151
+ }
17088
17152
  showClass() {
17089
17153
  return true;
17090
17154
  }
@@ -17094,12 +17158,16 @@ class TransactionSearchTileBaseComponent {
17094
17158
  onSelectedClick(transaction) {
17095
17159
  this.selectedClick.emit(transaction);
17096
17160
  }
17161
+ detectChanges() {
17162
+ this.changeDetection.detectChanges();
17163
+ }
17097
17164
  }
17098
17165
  TransactionSearchTileBaseComponent.decorators = [
17099
17166
  { type: Directive }
17100
17167
  ];
17101
17168
  TransactionSearchTileBaseComponent.ctorParameters = () => [
17102
- { type: IconCacheService }
17169
+ { type: IconCacheService },
17170
+ { type: ChangeDetectorRef }
17103
17171
  ];
17104
17172
  TransactionSearchTileBaseComponent.propDecorators = {
17105
17173
  showCheckbox: [{ type: Input }],
@@ -17188,9 +17256,10 @@ TransactionSearchPurchaseOrderTileComponent.decorators = [
17188
17256
  ];
17189
17257
 
17190
17258
  class TransactionSearchSalesOrderTileComponent extends TransactionSearchTileBaseComponent {
17191
- constructor(iconCacheService) {
17192
- super(iconCacheService);
17259
+ constructor(iconCacheService, changeDetector) {
17260
+ super(iconCacheService, changeDetector);
17193
17261
  this.iconCacheService = iconCacheService;
17262
+ this.changeDetector = changeDetector;
17194
17263
  this.statusBarConfigNames = {
17195
17264
  statusBarBT: this.cfgNames.StatusBarBT,
17196
17265
  statusBarTG: this.cfgNames.StatusBarTG,
@@ -17202,86 +17271,95 @@ class TransactionSearchSalesOrderTileComponent extends TransactionSearchTileBase
17202
17271
  statusBarGL: this.cfgNames.StatusBarGL,
17203
17272
  statusBarGF: this.cfgNames.StatusBarGF
17204
17273
  };
17205
- this.showAvatar = true;
17274
+ this._showAvatar = true;
17275
+ }
17276
+ set showAvatar(value) {
17277
+ this._showAvatar = value;
17278
+ this.detectChanges();
17279
+ }
17280
+ get showAvatar() {
17281
+ return this._showAvatar;
17206
17282
  }
17207
17283
  }
17208
17284
  TransactionSearchSalesOrderTileComponent.decorators = [
17209
17285
  { type: Component, args: [{
17210
17286
  selector: "co-transaction-search-sales-order-tile",
17211
17287
  template: `
17212
- <div class="transaction-tile-wrapper" (click)="onTransactionClick(transaction)">
17213
- <div class="tile">
17214
- <div class="tile-header">
17215
- <div class="tile-upper-left" *ngIf="showAvatar">
17216
- <div class="transaction-tile-avatar">
17217
- <co-avatar [image]="transaction.execImage" [relationId]="transaction.handledBy"></co-avatar>
17218
- </div>
17219
- </div>
17220
- <div class="tile-upper-middle">
17221
- <div class="header">
17222
- <span [textContent]="transaction.transNr"></span>
17223
- <div class="type-indicator"><span [textContent]="transaction.transactionKind"></span></div>
17224
- </div>
17225
- <div class="text"><span [textContent]="transaction.brancheName"></span></div>
17226
- </div>
17227
- <div class="tile-upper-right">
17228
- <div class="status-bar-wrapper" (click)="$event.stopPropagation()">
17229
- <co-transaction-statusbar
17230
- [screenConfigurationObject]="cfgNames.StatusBar"
17231
- [configNames]="statusBarConfigNames"
17232
- [transaction]="transaction"></co-transaction-statusbar>
17233
- </div>
17234
- <div class="header total-price-vat"><span
17235
- [textContent]="transaction.totalPriceWithVat | currency:'EUR'"></span></div>
17236
- </div>
17237
- </div>
17238
- <div class="tile-body">
17239
- <div class="tile-middle-left">
17240
- <co-input-checkbox
17241
- *ngIf="showCheckbox"
17242
- [(model)]="transaction.selected"
17243
- (modelChange)="onSelectedClick(transaction)"
17244
- ></co-input-checkbox>
17245
- </div>
17246
- <div class="tile-middle-middle">
17247
- <div class="text"><span [textContent]="transaction.relationName"></span></div>
17248
- <div class="text"><span [textContent]="transaction.getAdres()"></span></div>
17249
- </div>
17250
- <div class="tile-middle-right"></div>
17251
- </div>
17252
- <div class="tile-footer">
17253
- <div class="tile-bottom-left order-info-section">
17254
- <div class="label"><span [textContent]="'ORDER_DATE' | localize"></span></div>
17255
- <div class="value">
17256
- <span [textContent]="transaction.getTransDate() | date:'dd MMM yyyy'"></span></div>
17257
- </div>
17258
- <div class="tile-bottom-middle order-info-section">
17259
- <div class="label"><span [textContent]="'DELIVERY_DATE' | localize"></span></div>
17260
- <div class="value">
17261
- <span [textContent]="transaction.getDeliveryDate() | date:'dd MMM yyyy'"></span>
17262
- <div *ngIf="transaction.getDeliveryDate()">
17263
- <co-icon *ngIf="transaction.deliveryDateDefinitive; else indefinite"
17264
- [iconData]="iconCacheService.getIcon(icons.Lock)" class="lock-icon"></co-icon>
17265
- <ng-template #indefinite>
17266
- <co-icon [iconData]="iconCacheService.getIcon(icons.Unlock)" class="unlock-icon"></co-icon>
17267
- </ng-template>
17288
+ <div class="transaction-tile-wrapper" (click)="onTransactionClick(transaction)">
17289
+ <div class="tile">
17290
+ <div class="tile-header">
17291
+ <div class="tile-upper-left" *ngIf="showAvatar">
17292
+ <div class="transaction-tile-avatar">
17293
+ <co-avatar [image]="transaction.execImage" [relationId]="transaction.handledBy"></co-avatar>
17294
+ </div>
17295
+ </div>
17296
+ <div class="tile-upper-middle">
17297
+ <div class="header">
17298
+ <span [textContent]="transaction.transNr"></span>
17299
+ <div class="type-indicator"><span [textContent]="transaction.transactionKind"></span></div>
17300
+ </div>
17301
+ <div class="text"><span [textContent]="transaction.brancheName"></span></div>
17302
+ </div>
17303
+ <div class="tile-upper-right">
17304
+ <div class="status-bar-wrapper" (click)="$event.stopPropagation()">
17305
+ <co-transaction-statusbar
17306
+ [screenConfigurationObject]="cfgNames.StatusBar"
17307
+ [configNames]="statusBarConfigNames"
17308
+ [transaction]="transaction"></co-transaction-statusbar>
17309
+ </div>
17310
+ <div class="header total-price-vat"><span
17311
+ [textContent]="transaction.totalPriceWithVat | currency:'EUR'"></span></div>
17312
+ </div>
17313
+ </div>
17314
+ <div class="tile-body">
17315
+ <div class="tile-middle-left">
17316
+ <co-input-checkbox
17317
+ *ngIf="showCheckbox"
17318
+ [(model)]="transaction.selected"
17319
+ (modelChange)="onSelectedClick(transaction)"
17320
+ ></co-input-checkbox>
17321
+ </div>
17322
+ <div class="tile-middle-middle">
17323
+ <div class="text"><span [textContent]="transaction.relationName"></span></div>
17324
+ <div class="text"><span [textContent]="transaction.getAdres()"></span></div>
17325
+ </div>
17326
+ <div class="tile-middle-right"></div>
17327
+ </div>
17328
+ <div class="tile-footer">
17329
+ <div class="tile-bottom-left order-info-section">
17330
+ <div class="label"><span [textContent]="'ORDER_DATE' | localize"></span></div>
17331
+ <div class="value">
17332
+ <span [textContent]="transaction.getTransDate() | date:'dd MMM yyyy'"></span></div>
17333
+ </div>
17334
+ <div class="tile-bottom-middle order-info-section">
17335
+ <div class="label"><span [textContent]="'DELIVERY_DATE' | localize"></span></div>
17336
+ <div class="value">
17337
+ <span [textContent]="transaction.getDeliveryDate() | date:'dd MMM yyyy'"></span>
17338
+ <div *ngIf="transaction.getDeliveryDate()">
17339
+ <co-icon *ngIf="transaction.deliveryDateDefinitive; else indefinite"
17340
+ [iconData]="iconCacheService.getIcon(icons.Lock)" class="lock-icon"></co-icon>
17341
+ <ng-template #indefinite>
17342
+ <co-icon [iconData]="iconCacheService.getIcon(icons.Unlock)" class="unlock-icon"></co-icon>
17343
+ </ng-template>
17344
+ </div>
17345
+ </div>
17346
+ </div>
17347
+ <div class="tile-bottom-right order-info-section">
17348
+ <div class="label"><span [textContent]="'ORDER_RULE' | localize"></span></div>
17349
+ <div class="value">
17350
+ <span [textContent]="'68/00'"></span></div>
17351
+ </div>
17268
17352
  </div>
17269
- </div>
17270
- </div>
17271
- <div class="tile-bottom-right order-info-section">
17272
- <div class="label"><span [textContent]="'ORDER_RULE' | localize"></span></div>
17273
- <div class="value">
17274
- <span [textContent]="'68/00'"></span></div>
17275
17353
  </div>
17276
- </div>
17277
17354
  </div>
17278
- </div>
17279
17355
  `,
17356
+ changeDetection: ChangeDetectionStrategy.OnPush,
17280
17357
  encapsulation: ViewEncapsulation.None
17281
17358
  },] }
17282
17359
  ];
17283
17360
  TransactionSearchSalesOrderTileComponent.ctorParameters = () => [
17284
- { type: IconCacheService }
17361
+ { type: IconCacheService },
17362
+ { type: ChangeDetectorRef }
17285
17363
  ];
17286
17364
  TransactionSearchSalesOrderTileComponent.propDecorators = {
17287
17365
  showAvatar: [{ type: Input }]
@@ -17384,7 +17462,9 @@ class PurchaseConfirmationService {
17384
17462
  const result = yield this._transactionConnectorService.getAnalyzedOrderConfirmations();
17385
17463
  if (result) {
17386
17464
  this.analyzedConfirmation = result.find(a => a.analysisId === this.confirmationAnalysisId);
17387
- this.setOrdersTotal(this.analyzedConfirmation.ordersTotal);
17465
+ if (this.analyzedConfirmation) {
17466
+ this.setOrdersTotal(this.analyzedConfirmation.ordersTotal);
17467
+ }
17388
17468
  }
17389
17469
  }
17390
17470
  });
@@ -17695,8 +17775,12 @@ class TransactionQuickAccessSendMethodBaseComponent extends TransactionBaseCompo
17695
17775
  if (this.printLayouts && this.printLayouts.length > 0) {
17696
17776
  const defaultLayout = this.printLayouts.find(p => p.isDefault);
17697
17777
  if (defaultLayout) {
17698
- this.reportDocumentPrintRequest.reportId = defaultLayout.reportId;
17699
- this.reportDocumentPdfRequest.reportId = defaultLayout.reportId;
17778
+ if (this.reportDocumentPrintRequest) {
17779
+ this.reportDocumentPrintRequest.reportId = defaultLayout.reportId;
17780
+ }
17781
+ if (this.reportDocumentPdfRequest) {
17782
+ this.reportDocumentPdfRequest.reportId = defaultLayout.reportId;
17783
+ }
17700
17784
  }
17701
17785
  }
17702
17786
  });
@@ -18398,12 +18482,13 @@ TransactionLineActionButtonsPopupComponent.propDecorators = {
18398
18482
  };
18399
18483
 
18400
18484
  class TransactionLineActionButtonsComponent {
18401
- constructor(elementRef, iconCacheService, _transactionService, _transactionEventService, _overlayService) {
18485
+ constructor(elementRef, iconCacheService, _transactionService, _transactionEventService, _overlayService, _changeDetector) {
18402
18486
  this.elementRef = elementRef;
18403
18487
  this.iconCacheService = iconCacheService;
18404
18488
  this._transactionService = _transactionService;
18405
18489
  this._transactionEventService = _transactionEventService;
18406
18490
  this._overlayService = _overlayService;
18491
+ this._changeDetector = _changeDetector;
18407
18492
  this.icons = Icon;
18408
18493
  this.isFirst = false;
18409
18494
  this.waitingForUserAction = new EventEmitter();
@@ -18515,7 +18600,8 @@ TransactionLineActionButtonsComponent.decorators = [
18515
18600
  providers: [
18516
18601
  OverlayService
18517
18602
  ],
18518
- encapsulation: ViewEncapsulation.None
18603
+ encapsulation: ViewEncapsulation.None,
18604
+ changeDetection: ChangeDetectionStrategy.OnPush
18519
18605
  },] }
18520
18606
  ];
18521
18607
  TransactionLineActionButtonsComponent.ctorParameters = () => [
@@ -18523,7 +18609,8 @@ TransactionLineActionButtonsComponent.ctorParameters = () => [
18523
18609
  { type: IconCacheService },
18524
18610
  { type: TransactionService },
18525
18611
  { type: TransactionEventService },
18526
- { type: OverlayService }
18612
+ { type: OverlayService },
18613
+ { type: ChangeDetectorRef }
18527
18614
  ];
18528
18615
  TransactionLineActionButtonsComponent.propDecorators = {
18529
18616
  configNames: [{ type: Input }],
@@ -18695,7 +18782,8 @@ TransactionOverviewLineComponent.decorators = [
18695
18782
  </ng-container>
18696
18783
  </co-transaction-base-line>
18697
18784
  `,
18698
- encapsulation: ViewEncapsulation.None
18785
+ encapsulation: ViewEncapsulation.None,
18786
+ changeDetection: ChangeDetectionStrategy.OnPush
18699
18787
  },] }
18700
18788
  ];
18701
18789
  TransactionOverviewLineComponent.ctorParameters = () => [
@@ -19126,6 +19214,9 @@ class TransactionReceiveGoodsLineBaseComponent extends TransactionBaseComponent
19126
19214
  this._subscriptions.forEach(s => s.unsubscribe());
19127
19215
  }
19128
19216
  changeLineAmount(amount) {
19217
+ if (this.transactionLine.articleLineStatus) {
19218
+ this.transactionLine.articleLineStatus.quantityToReceive = amount;
19219
+ }
19129
19220
  this.transactionLine.stickerAmount = amount * (this.transactionLine.productItemsAmount ? this.transactionLine.productItemsAmount : 1);
19130
19221
  }
19131
19222
  handleLineClicked(mouseClick) {
@@ -19239,7 +19330,7 @@ TransactionReceiveGoodsLineComponent.decorators = [
19239
19330
  <div class="transaction-line-totals-amount">
19240
19331
  <co-input-number-picker class="amount-number-picker"
19241
19332
  [screenConfigurationObject]="cfgNames.LineQuantityToReceive"
19242
- [(model)]="transactionLine.articleLineStatus.quantityToReceive"
19333
+ [model]="transactionLine.articleLineStatus?.quantityToReceive"
19243
19334
  [decimals]="decimals"
19244
19335
  [min]="1"
19245
19336
  [max]="transactionLine.amount - lineQuantityReceived"
@@ -20332,6 +20423,7 @@ class TransactionPurchaseOrderLineBaseComponent extends TransactionBaseComponent
20332
20423
  this.subs = [];
20333
20424
  }
20334
20425
  ngOnInit() {
20426
+ super.ngOnInit();
20335
20427
  this.subs.push(this.transactionEventService.orderConfirmationDropped.subscribe((data) => {
20336
20428
  if (data) {
20337
20429
  if (data.lineNr !== undefined && this.transactionLine && this.transactionLine.lineNr === data.lineNr) {
@@ -20349,7 +20441,6 @@ class TransactionPurchaseOrderLineBaseComponent extends TransactionBaseComponent
20349
20441
  }), this.transactionEventService.overwritePurchaseOrderConfirmationCompletedChanged.subscribe(() => {
20350
20442
  this._handleConfirmationOverwrite();
20351
20443
  }));
20352
- this._getPurchasePortalLine();
20353
20444
  }
20354
20445
  ngOnDestroy() {
20355
20446
  this.subs.forEach(s => s.unsubscribe());
@@ -20386,11 +20477,19 @@ class TransactionPurchaseOrderLineBaseComponent extends TransactionBaseComponent
20386
20477
  }
20387
20478
  transactionLineSet() {
20388
20479
  super.transactionLineSet();
20480
+ this._getPurchasePortalLine();
20389
20481
  this.showCheckboxForLine = this.transactionLine.articleLineStatus &&
20390
20482
  this.transactionLine.articleLineStatus.quantityPurchaseConfirmed !== this.transactionLine.amount;
20391
20483
  }
20484
+ visibilitySet(visible) {
20485
+ super.visibilitySet(visible);
20486
+ this._getPurchasePortalLine();
20487
+ }
20392
20488
  _getPurchasePortalLine() {
20393
20489
  return __awaiter(this, void 0, void 0, function* () {
20490
+ if (this._purchasePortalLinesResponse || !this.transactionInfo || !this.transactionLine || !this.visible) {
20491
+ return;
20492
+ }
20394
20493
  const getPurchasePortalLine = new GetPurchasePortalLine();
20395
20494
  const purchasePortalFilter = new PurchasePortalFilters();
20396
20495
  purchasePortalFilter.purchaseOrderNo = this.transactionInfo.transactionNr.toString();
@@ -20398,9 +20497,9 @@ class TransactionPurchaseOrderLineBaseComponent extends TransactionBaseComponent
20398
20497
  getPurchasePortalLine.transIdPurchase = this.transactionInfo.id;
20399
20498
  getPurchasePortalLine.docKind = "IB";
20400
20499
  getPurchasePortalLine.filterObject = purchasePortalFilter;
20401
- const purchasePortalLinesResponse = yield this.transactionService.getPurchasePortalLines(getPurchasePortalLine);
20402
- if (purchasePortalLinesResponse.length > 0) {
20403
- this.transactionLine.purchasePortalLine = purchasePortalLinesResponse[0];
20500
+ this._purchasePortalLinesResponse = yield this.transactionService.getPurchasePortalLines(getPurchasePortalLine);
20501
+ if (this._purchasePortalLinesResponse.length > 0) {
20502
+ this.transactionLine.purchasePortalLine = this._purchasePortalLinesResponse[0];
20404
20503
  this.transactionLine.quantityPurchaseToConfirm = +this.transactionLine.purchasePortalLine.amountOrdered - +this.transactionLine.purchasePortalLine.amountConfirmedTarget;
20405
20504
  this.transactionEventService.transactionLineChanged.next(this.transactionLine);
20406
20505
  this.detectChanges();
@@ -20777,6 +20876,7 @@ TransactionSalesAllocationButtonBarButtonComponent.decorators = [
20777
20876
  <co-icon class="co-transaction-button-bar-icon" [iconData]="iconCacheService.getIcon(iconName)"></co-icon>
20778
20877
  <span class="button-title" [textContent]="title | localize"></span>
20779
20878
  `,
20879
+ changeDetection: ChangeDetectionStrategy.OnPush,
20780
20880
  encapsulation: ViewEncapsulation.None
20781
20881
  },] }
20782
20882
  ];
@@ -22942,9 +23042,10 @@ TransactionSearchSalesQuotationGridComponent.propDecorators = {
22942
23042
  };
22943
23043
 
22944
23044
  class TransactionSearchSalesQuotationTileComponent extends TransactionSearchTileBaseComponent {
22945
- constructor(iconCacheService) {
22946
- super(iconCacheService);
23045
+ constructor(iconCacheService, changeDetector) {
23046
+ super(iconCacheService, changeDetector);
22947
23047
  this.iconCacheService = iconCacheService;
23048
+ this.changeDetector = changeDetector;
22948
23049
  }
22949
23050
  showClass() {
22950
23051
  return true;
@@ -23010,7 +23111,8 @@ TransactionSearchSalesQuotationTileComponent.decorators = [
23010
23111
  },] }
23011
23112
  ];
23012
23113
  TransactionSearchSalesQuotationTileComponent.ctorParameters = () => [
23013
- { type: IconCacheService }
23114
+ { type: IconCacheService },
23115
+ { type: ChangeDetectorRef }
23014
23116
  ];
23015
23117
  TransactionSearchSalesQuotationTileComponent.propDecorators = {
23016
23118
  showClass: [{ type: HostBinding, args: ["class.co-transaction-search-sales-quotation-tile",] }]
@@ -23371,9 +23473,10 @@ TransactionServiceServiceButtonBarButtonComponent.propDecorators = {
23371
23473
  };
23372
23474
 
23373
23475
  class TransactionSearchPosOrderTileComponent extends TransactionSearchTileBaseComponent {
23374
- constructor(iconCacheService) {
23375
- super(iconCacheService);
23476
+ constructor(iconCacheService, changeDetector) {
23477
+ super(iconCacheService, changeDetector);
23376
23478
  this.iconCacheService = iconCacheService;
23479
+ this.changeDetector = changeDetector;
23377
23480
  this.statusBarConfigNames = {
23378
23481
  statusBarBT: this.cfgNames.StatusBarBT,
23379
23482
  statusBarTG: this.cfgNames.StatusBarTG,
@@ -23391,76 +23494,77 @@ TransactionSearchPosOrderTileComponent.decorators = [
23391
23494
  { type: Component, args: [{
23392
23495
  selector: 'co-transaction-search-pos-order-tile',
23393
23496
  template: `
23394
- <div class="transaction-tile-wrapper" (click)="onTransactionClick(transaction)">
23395
- <div class="tile">
23396
- <div class="tile-header">
23397
- <div class="tile-upper-left">
23398
- <div class="transaction-tile-avatar">
23399
- <co-avatar [image]="transaction.execImage" [relationId]="transaction.handledBy"></co-avatar>
23400
- </div>
23401
- </div>
23402
- <div class="tile-upper-middle">
23403
- <div class="header">
23404
- <span [textContent]="transaction.transNr"></span>
23405
- <div class="type-indicator"><span [textContent]="transaction.transactionKind"></span></div>
23406
- </div>
23407
- <div class="text"><span [textContent]="transaction.brancheName"></span></div>
23408
- </div>
23409
- <div class="tile-upper-right">
23410
- <div class="status-bar-wrapper" (click)="$event.stopPropagation()">
23411
- <co-transaction-statusbar
23412
- [screenConfigurationObject]="cfgNames.StatusBar"
23413
- [configNames]="statusBarConfigNames"
23414
- [transaction]="transaction"></co-transaction-statusbar>
23415
- </div>
23416
- <div class="header total-price-vat"><span [textContent]="transaction.totalPriceWithVat | currency:'EUR'"></span></div>
23417
- </div>
23418
- </div>
23419
- <div class="tile-body">
23420
- <div class="tile-middle-left">
23421
- <co-input-checkbox *ngIf="showCheckbox"
23422
- [(model)]="transaction.selected"
23423
- ></co-input-checkbox>
23424
- </div>
23425
- <div class="tile-middle-middle">
23426
- <div class="text"><span [textContent]="transaction.relationName"></span></div>
23427
- <div class="text"><span [textContent]="transaction.getAdres()"></span></div>
23428
- </div>
23429
- <div class="tile-middle-right"></div>
23430
- </div>
23431
- <div class="tile-footer">
23432
- <div class="tile-bottom-left order-info-section">
23433
- <div class="label"><span [textContent]="'ORDER_DATE' | localize"></span></div>
23434
- <div class="value">
23435
- <span [textContent]="transaction.getTransDate() | date:'dd MMM yyyy'"></span></div>
23436
- </div>
23437
- <div class="tile-bottom-middle order-info-section">
23438
- <div class="label"><span [textContent]="'DELIVERY_DATE' | localize"></span></div>
23439
- <div class="value">
23440
- <span [textContent]="transaction.getDeliveryDate() | date:'dd MMM yyyy'"></span>
23441
- <div *ngIf="transaction.getDeliveryDate()">
23442
- <co-icon *ngIf="transaction.deliveryDateDefinitive; else indefinite"
23443
- [iconData]="iconCacheService.getIcon(icons.Lock)" class="lock-icon"></co-icon>
23444
- <ng-template #indefinite>
23445
- <co-icon [iconData]="iconCacheService.getIcon(icons.Unlock)" class="unlock-icon"></co-icon>
23446
- </ng-template>
23447
- </div>
23448
- </div>
23449
- </div>
23450
- <div class="tile-bottom-right order-info-section">
23451
- <div class="label"><span [textContent]="'ORDER_RULE' | localize"></span></div>
23452
- <div class="value">
23453
- <span [textContent]="'68/00'"></span></div>
23454
- </div>
23455
- </div>
23456
- </div>
23457
- </div>
23458
- `,
23497
+ <div class="transaction-tile-wrapper" (click)="onTransactionClick(transaction)">
23498
+ <div class="tile">
23499
+ <div class="tile-header">
23500
+ <div class="tile-upper-left">
23501
+ <div class="transaction-tile-avatar">
23502
+ <co-avatar [image]="transaction.execImage" [relationId]="transaction.handledBy"></co-avatar>
23503
+ </div>
23504
+ </div>
23505
+ <div class="tile-upper-middle">
23506
+ <div class="header">
23507
+ <span [textContent]="transaction.transNr"></span>
23508
+ <div class="type-indicator"><span [textContent]="transaction.transactionKind"></span></div>
23509
+ </div>
23510
+ <div class="text"><span [textContent]="transaction.brancheName"></span></div>
23511
+ </div>
23512
+ <div class="tile-upper-right">
23513
+ <div class="status-bar-wrapper" (click)="$event.stopPropagation()">
23514
+ <co-transaction-statusbar
23515
+ [screenConfigurationObject]="cfgNames.StatusBar"
23516
+ [configNames]="statusBarConfigNames"
23517
+ [transaction]="transaction"></co-transaction-statusbar>
23518
+ </div>
23519
+ <div class="header total-price-vat"><span [textContent]="transaction.totalPriceWithVat | currency:'EUR'"></span></div>
23520
+ </div>
23521
+ </div>
23522
+ <div class="tile-body">
23523
+ <div class="tile-middle-left">
23524
+ <co-input-checkbox *ngIf="showCheckbox"
23525
+ [(model)]="transaction.selected"
23526
+ ></co-input-checkbox>
23527
+ </div>
23528
+ <div class="tile-middle-middle">
23529
+ <div class="text"><span [textContent]="transaction.relationName"></span></div>
23530
+ <div class="text"><span [textContent]="transaction.getAdres()"></span></div>
23531
+ </div>
23532
+ <div class="tile-middle-right"></div>
23533
+ </div>
23534
+ <div class="tile-footer">
23535
+ <div class="tile-bottom-left order-info-section">
23536
+ <div class="label"><span [textContent]="'ORDER_DATE' | localize"></span></div>
23537
+ <div class="value">
23538
+ <span [textContent]="transaction.getTransDate() | date:'dd MMM yyyy'"></span></div>
23539
+ </div>
23540
+ <div class="tile-bottom-middle order-info-section">
23541
+ <div class="label"><span [textContent]="'DELIVERY_DATE' | localize"></span></div>
23542
+ <div class="value">
23543
+ <span [textContent]="transaction.getDeliveryDate() | date:'dd MMM yyyy'"></span>
23544
+ <div *ngIf="transaction.getDeliveryDate()">
23545
+ <co-icon *ngIf="transaction.deliveryDateDefinitive; else indefinite"
23546
+ [iconData]="iconCacheService.getIcon(icons.Lock)" class="lock-icon"></co-icon>
23547
+ <ng-template #indefinite>
23548
+ <co-icon [iconData]="iconCacheService.getIcon(icons.Unlock)" class="unlock-icon"></co-icon>
23549
+ </ng-template>
23550
+ </div>
23551
+ </div>
23552
+ </div>
23553
+ <div class="tile-bottom-right order-info-section">
23554
+ <div class="label"><span [textContent]="'ORDER_RULE' | localize"></span></div>
23555
+ <div class="value">
23556
+ <span [textContent]="'68/00'"></span></div>
23557
+ </div>
23558
+ </div>
23559
+ </div>
23560
+ </div>
23561
+ `,
23459
23562
  encapsulation: ViewEncapsulation.None
23460
23563
  },] }
23461
23564
  ];
23462
23565
  TransactionSearchPosOrderTileComponent.ctorParameters = () => [
23463
- { type: IconCacheService }
23566
+ { type: IconCacheService },
23567
+ { type: ChangeDetectorRef }
23464
23568
  ];
23465
23569
  TransactionSearchPosOrderTileComponent.propDecorators = {
23466
23570
  showClass: [{ type: HostBinding, args: ['class.co-transaction-search-pos-order-tile',] }]
@@ -24149,6 +24253,7 @@ class TransactionPlanningLineComponent extends TransactionBaseComponent {
24149
24253
  super.ngOnInit();
24150
24254
  this._subscriptions.push(this.transactionEventService.selectAllSalesOrderLinesToBePicked.subscribe((value) => {
24151
24255
  this.transactionLine.selected = value && !this.transactionLineToBePickedCompleted;
24256
+ this.detectChanges();
24152
24257
  }));
24153
24258
  }
24154
24259
  ngOnDestroy() {
@@ -24163,6 +24268,7 @@ class TransactionPlanningLineComponent extends TransactionBaseComponent {
24163
24268
  this.hasOpenedSidePanel = true;
24164
24269
  }
24165
24270
  this.transactionLine.selected = value;
24271
+ this.detectChanges();
24166
24272
  }
24167
24273
  handleLineClicked(mouseClick) {
24168
24274
  var _a, _b;
@@ -24176,7 +24282,7 @@ class TransactionPlanningLineComponent extends TransactionBaseComponent {
24176
24282
  }
24177
24283
  dragStarted(ev) {
24178
24284
  this._deliveryPlanningService.currentTransId = this.transaction.transactionInfo.id;
24179
- ev.dataTransfer.setData("text", "lines");
24285
+ ev.dataTransfer.setData('text', 'lines');
24180
24286
  }
24181
24287
  get linePlanned() {
24182
24288
  var _a, _b;
@@ -24185,112 +24291,109 @@ class TransactionPlanningLineComponent extends TransactionBaseComponent {
24185
24291
  }
24186
24292
  return !((_b = (_a = this._deliveryPlanningService.linesPlanOrder) === null || _a === void 0 ? void 0 : _a.lines) === null || _b === void 0 ? void 0 : _b.find(line => line.originalLineNr === this.transactionLine.lineNr));
24187
24293
  }
24188
- allowPartialDelivery() {
24189
- var _a;
24190
- return (_a = this.transactionInfo) === null || _a === void 0 ? void 0 : _a.allowPartialDelivery;
24191
- }
24192
24294
  }
24193
24295
  TransactionPlanningLineComponent.decorators = [
24194
24296
  { type: Component, args: [{
24195
- selector: "co-planning-overview-line",
24297
+ selector: 'co-transaction-planning-line',
24196
24298
  template: `
24197
- <co-transaction-base-line
24198
- [transactionInfo]="transactionInfo"
24199
- [transactionLine]="transactionLine"
24200
- [preview]="preview"
24201
- [isFirst]="isFirst"
24202
- [draggable]="!linePlanned"
24203
- (dragstart)="dragStarted($event)"
24204
- [checkbox]="!linePlanned && allowPartialDelivery()"
24205
- [checkboxValue]="transactionLine.selected"
24206
- [checkboxReadonly]="false"
24207
- (checkboxValueChanged)="handleCheckBoxValueChanged($event, transactionLine)"
24208
- (click)="handleLineClicked($event)"
24209
- observeVisibility #observer=visibilityObserve
24210
- (visibilityChange)="handleVisibilityChange(transactionLine, $event)">
24211
- <ng-container *ngIf="transactionLine.isArticle">
24212
- <div class="transaction-line-wrapper">
24213
- <div *ngIf=!preview class="transaction-line-extended-wrapper">
24214
- <div class="column1">
24215
- <span class="transaction-field-label" [textContent]="'COMMISSION_CODE' | localize" *ngIf="isFirst"></span>
24216
- <co-transaction-line-commission-button
24217
- [screenConfigurationObject]="cfgNames.LineCommission"
24218
- [transactionLine]="transactionLine"
24219
- [transactionInfo]="transactionInfo"
24220
- ></co-transaction-line-commission-button>
24221
- </div>
24222
- <div class="column2">
24299
+ <co-transaction-base-line
24300
+ [transactionInfo]="transactionInfo"
24301
+ [transactionLine]="transactionLine"
24302
+ [preview]="preview"
24303
+ [isFirst]="isFirst"
24304
+ [draggable]="!linePlanned"
24305
+ (dragstart)="dragStarted($event)"
24306
+ [checkbox]="true"
24307
+ [checkboxValue]="transactionLine.selected || !transactionInfo?.allowPartialDelivery"
24308
+ [checkboxReadonly]="!transactionInfo?.allowPartialDelivery"
24309
+ (checkboxValueChanged)="handleCheckBoxValueChanged($event, transactionLine)"
24310
+ (click)="handleLineClicked($event)"
24311
+ observeVisibility #observer=visibilityObserve
24312
+ (visibilityChange)="handleVisibilityChange(transactionLine, $event)">
24313
+ <ng-container *ngIf="transactionLine.isArticle">
24314
+ <div class="transaction-line-wrapper">
24315
+ <div *ngIf=!preview class="transaction-line-extended-wrapper">
24316
+ <div class="column1">
24317
+ <span class="transaction-field-label" [textContent]="'COMMISSION_CODE' | localize" *ngIf="isFirst"></span>
24318
+ <co-transaction-line-commission-button
24319
+ [screenConfigurationObject]="cfgNames.LineCommission"
24320
+ [transactionLine]="transactionLine"
24321
+ [transactionInfo]="transactionInfo"
24322
+ ></co-transaction-line-commission-button>
24323
+ </div>
24324
+ <div class="column2">
24223
24325
  <span class="transaction-field-label" [textContent]="'WAREHOUSE_AND_STATUS' | localize"
24224
24326
  *ngIf="isFirst"></span>
24225
- <co-transaction-line-warehouse-button
24226
- [screenConfigurationObject]="cfgNames.LineWarehouse"
24227
- [transactionLine]="transactionLine"
24228
- [transactionInfo]="transactionInfo"
24229
- ></co-transaction-line-warehouse-button>
24230
- <co-transaction-line-statusbar
24231
- [screenConfigurationObject]="cfgNames.StatusBar"
24232
- [configNames]="statusBarConfigNames"
24233
- [transactionInfo]="transactionInfo"
24234
- [transactionLine]="transactionLine"
24235
- [activeCategory]="category.SalesOrderPlanning"></co-transaction-line-statusbar>
24236
- </div>
24237
- <div class="column3">
24327
+ <co-transaction-line-warehouse-button
24328
+ [screenConfigurationObject]="cfgNames.LineWarehouse"
24329
+ [transactionLine]="transactionLine"
24330
+ [transactionInfo]="transactionInfo"
24331
+ ></co-transaction-line-warehouse-button>
24332
+ <co-transaction-line-statusbar
24333
+ [screenConfigurationObject]="cfgNames.StatusBar"
24334
+ [configNames]="statusBarConfigNames"
24335
+ [transactionInfo]="transactionInfo"
24336
+ [transactionLine]="transactionLine"
24337
+ [activeCategory]="category.SalesOrderPlanning"></co-transaction-line-statusbar>
24338
+ </div>
24339
+ <div class="column3">
24238
24340
  <span class="transaction-field-label" [textContent]="'DELIVERY_INFORMATION' | localize"
24239
24341
  *ngIf="isFirst"></span>
24240
- <co-transaction-line-delivery-button
24241
- [screenConfigurationObject]="cfgNames.LineDeliveryMethod"
24242
- [transactionLine]="transactionLine"
24243
- [transactionInfo]="transactionInfo"
24244
- ></co-transaction-line-delivery-button>
24245
- <co-transaction-line-delivery-date-button class="transaction-line-delivery-date two-column"
24246
- [screenConfigurationObject]="cfgNames.LineDeliveryDate"
24247
- [transactionInfo]="transactionInfo"
24248
- [transactionLine]="transactionLine"
24249
- ></co-transaction-line-delivery-date-button>
24250
- </div>
24251
- </div>
24252
- <div class="transaction-line-section">
24342
+ <co-transaction-line-delivery-button
24343
+ [screenConfigurationObject]="cfgNames.LineDeliveryMethod"
24344
+ [transactionLine]="transactionLine"
24345
+ [transactionInfo]="transactionInfo"
24346
+ ></co-transaction-line-delivery-button>
24347
+ <co-transaction-line-delivery-date-button class="transaction-line-delivery-date two-column"
24348
+ [screenConfigurationObject]="cfgNames.LineDeliveryDate"
24349
+ [transactionInfo]="transactionInfo"
24350
+ [transactionLine]="transactionLine"
24351
+ ></co-transaction-line-delivery-date-button>
24352
+ </div>
24353
+ </div>
24354
+ <div class="transaction-line-section">
24253
24355
  <span class="transaction-field-label" [textContent]="'TOTALS_AND_DISCOUNT' | localize"
24254
24356
  *ngIf="isFirst"></span>
24255
- <co-transaction-line-vat-button *ngIf="!preview"
24256
- [screenConfigurationObject]="cfgNames.LineVat"
24257
- [transactionLine]="transactionLine"
24258
- [transactionInfo]="transactionInfo"
24259
- ></co-transaction-line-vat-button>
24260
- <div class="transaction-line-totals">
24261
- <co-transaction-line-price class="transaction-line-totals-price price"
24262
- [screenConfigurationObject]="cfgNames.LinePrice"
24263
- [transactionInfo]="transactionInfo"
24264
- [transactionLine]="transactionLine"
24265
- [showLabel]="false"
24266
- [defaultEditMode]="false"
24267
- ></co-transaction-line-price>
24268
- <co-transaction-line-discount-button *ngIf="!preview"
24269
- [screenConfigurationObject]="cfgNames.LineDiscount"
24270
- [configNames]="discountConfigNames"
24271
- [transactionLine]="transactionLine"
24272
- [transactionInfo]="transactionInfo"
24273
- ></co-transaction-line-discount-button>
24274
- <div class="transaction-line-totals-amount">
24275
- <co-transaction-line-amount class="amount-number-picker"
24276
- [screenConfigurationObject]="cfgNames.LineAmount"
24277
- [transactionLine]="transactionLine"
24278
- [transactionInfo]="transactionInfo"
24279
- ></co-transaction-line-amount>
24357
+ <co-transaction-line-vat-button *ngIf="!preview"
24358
+ [screenConfigurationObject]="cfgNames.LineVat"
24359
+ [transactionLine]="transactionLine"
24360
+ [transactionInfo]="transactionInfo"
24361
+ ></co-transaction-line-vat-button>
24362
+ <div class="transaction-line-totals">
24363
+ <co-transaction-line-price class="transaction-line-totals-price price"
24364
+ [screenConfigurationObject]="cfgNames.LinePrice"
24365
+ [transactionInfo]="transactionInfo"
24366
+ [transactionLine]="transactionLine"
24367
+ [showLabel]="false"
24368
+ [defaultEditMode]="false"
24369
+ ></co-transaction-line-price>
24370
+ <co-transaction-line-discount-button *ngIf="!preview"
24371
+ [screenConfigurationObject]="cfgNames.LineDiscount"
24372
+ [configNames]="discountConfigNames"
24373
+ [transactionLine]="transactionLine"
24374
+ [transactionInfo]="transactionInfo"
24375
+ ></co-transaction-line-discount-button>
24376
+ <div class="transaction-line-totals-amount">
24377
+ <co-transaction-line-amount class="amount-number-picker"
24378
+ [screenConfigurationObject]="cfgNames.LineAmount"
24379
+ [transactionLine]="transactionLine"
24380
+ [transactionInfo]="transactionInfo"
24381
+ ></co-transaction-line-amount>
24382
+ </div>
24383
+ <co-editable-label class="transaction-line-totals-total price"
24384
+ [screenConfigurationObject]="cfgNames.LineNetLineTotal"
24385
+ [model]="transactionLine.displayNetLineTotal | coCurrency: true"
24386
+ [editModel]="transactionLine.displayNetLineTotal"
24387
+ [commit]="!readonly"
24388
+ ></co-editable-label>
24389
+ </div>
24390
+ </div>
24280
24391
  </div>
24281
- <co-editable-label class="transaction-line-totals-total price"
24282
- [screenConfigurationObject]="cfgNames.LineNetLineTotal"
24283
- [model]="transactionLine.displayNetLineTotal | coCurrency: true"
24284
- [editModel]="transactionLine.displayNetLineTotal"
24285
- [commit]="!readonly"
24286
- ></co-editable-label>
24287
- </div>
24288
- </div>
24289
- </div>
24290
- </ng-container>
24291
- </co-transaction-base-line>
24392
+ </ng-container>
24393
+ </co-transaction-base-line>
24292
24394
  `,
24293
- encapsulation: ViewEncapsulation.None
24395
+ encapsulation: ViewEncapsulation.None,
24396
+ changeDetection: ChangeDetectionStrategy.OnPush
24294
24397
  },] }
24295
24398
  ];
24296
24399
  TransactionPlanningLineComponent.ctorParameters = () => [
@@ -24307,9 +24410,9 @@ TransactionPlanningLineComponent.ctorParameters = () => [
24307
24410
  TransactionPlanningLineComponent.propDecorators = {
24308
24411
  transactionLineActionButtons: [{ type: ViewChild, args: [TransactionLineActionButtonsComponent,] }],
24309
24412
  descriptionDblClick: [{ type: Output }],
24310
- showClass: [{ type: HostBinding, args: ["class.co-transaction-overview-line",] }],
24311
- handleMouseOver: [{ type: HostListener, args: ["mouseover", ["$event"],] }],
24312
- handleMouseLeave: [{ type: HostListener, args: ["mouseleave", ["$event"],] }]
24413
+ showClass: [{ type: HostBinding, args: ['class.co-transaction-planning-line',] }],
24414
+ handleMouseOver: [{ type: HostListener, args: ['mouseover', ['$event'],] }],
24415
+ handleMouseLeave: [{ type: HostListener, args: ['mouseleave', ['$event'],] }]
24313
24416
  };
24314
24417
 
24315
24418
  class TransactionQuickAccessPlanningComponent extends TransactionBaseComponent {
@@ -25683,14 +25786,15 @@ class TransactionLineComponent extends TransactionBaseComponent {
25683
25786
  if (!componentClass) {
25684
25787
  return;
25685
25788
  }
25686
- this._componentRef = this._compFactoryResolver
25687
- .resolveComponentFactory(componentClass)
25688
- .create(this.injector);
25689
- this.appRef.attachView(this._componentRef.hostView);
25789
+ const factory = this._compFactoryResolver.resolveComponentFactory(componentClass);
25790
+ this._transactionLineContainer.clear();
25791
+ this._componentRef = this._transactionLineContainer.createComponent(factory);
25690
25792
  this._prepareProps();
25691
- const domElem = this._componentRef.hostView
25692
- .rootNodes[0];
25693
- this._transactionLineContainer.nativeElement.appendChild(domElem);
25793
+ this.changeDetector.markForCheck();
25794
+ // const domElem = (this._componentRef.hostView as EmbeddedViewRef<any>)
25795
+ // .rootNodes[0] as HTMLElement;
25796
+ //
25797
+ // this._transactionLineContainer.nativeElement.appendChild(domElem);
25694
25798
  this._componentRef.onDestroy(() => {
25695
25799
  this.appRef.detachView(this._componentRef.hostView);
25696
25800
  });
@@ -25734,7 +25838,7 @@ TransactionLineComponent.ctorParameters = () => [
25734
25838
  { type: Injector }
25735
25839
  ];
25736
25840
  TransactionLineComponent.propDecorators = {
25737
- container: [{ type: ViewChild, args: ['transactionLine', { read: ElementRef },] }],
25841
+ container: [{ type: ViewChild, args: ['transactionLine', { read: ViewContainerRef },] }],
25738
25842
  activeCategory: [{ type: Input }],
25739
25843
  preview: [{ type: Input }],
25740
25844
  isFirst: [{ type: Input }],
@@ -28784,10 +28888,9 @@ class TransactionLineSupplierButtonComponent extends TransactionBaseComponent {
28784
28888
  this._getSupplierDescription();
28785
28889
  }
28786
28890
  _getSupplierDescription() {
28787
- if (this.transactionLine && this.transactionLine.isArticle && this.transactionLine.supplierDescription === undefined) {
28788
- this._relationService.getRelationById(this.transactionLine.supplierId).then((relations) => {
28789
- const relation = relations && relations.length > 0 ? relations[0] : null;
28790
- this.transactionLine.supplierDescription = relation ? relation.displayName : "";
28891
+ if (this.transactionLine && this.transactionLine.isArticle && this.transactionLine.supplierDescription === undefined && this.visible) {
28892
+ this._relationService.getSupplierLightById(this.transactionLine.supplierId).then((supplier) => {
28893
+ this.transactionLine.supplierDescription = supplier ? supplier.supplierName : "";
28791
28894
  this.detectChanges();
28792
28895
  });
28793
28896
  this.readonly = !this.transactionLine.articleFreeSupplier;
@@ -29145,21 +29248,10 @@ class TransactionLineDropShipmentButtonComponent extends TransactionBaseComponen
29145
29248
  }
29146
29249
  _getSupplierAllowsDropShipmentParameter() {
29147
29250
  if (this.transactionLine && this.visible) {
29148
- this._relationService.getSupplierLightById(this.transactionLine.supplierId).then(result => {
29149
- this.supplierAllowsDropShipment = result.dropshipment;
29251
+ this._relationService.getSupplierLightById(this.transactionLine.supplierId).then((supplier) => {
29252
+ this.supplierAllowsDropShipment = supplier.dropshipment;
29150
29253
  this.detectChanges();
29151
29254
  });
29152
- // this._relationService.getRelationById(this.transactionLine.supplierId).then((relations: RelationListObject[]) => {
29153
- // const relation: RelationListObject = relations && relations.length > 0 ? relations[0] : null;
29154
- // if (relation) {
29155
- // this._relationService.getSupplierFullObject(+relation.relationNr).then((result) => {
29156
- // if (result) {
29157
- // this.supplierAllowsDropShipment = result.dropshipment;
29158
- // this.detectChanges();
29159
- // }
29160
- // });
29161
- // }
29162
- // });
29163
29255
  }
29164
29256
  }
29165
29257
  }
@@ -29339,6 +29431,7 @@ class TransactionLineConfirmedDeliveryDateButtonComponent extends TransactionBas
29339
29431
  this.showConfirmedDeliveryDate = false;
29340
29432
  this.isConfirmedDateLater = false;
29341
29433
  this._subs = [];
29434
+ this._handled = false;
29342
29435
  }
29343
29436
  showClass() {
29344
29437
  return true;
@@ -29362,7 +29455,8 @@ class TransactionLineConfirmedDeliveryDateButtonComponent extends TransactionBas
29362
29455
  this._checkDates();
29363
29456
  }
29364
29457
  _checkConfirmedDeliveryDate(line) {
29365
- if (line && line.refTransactions && line.refTransactions.length === 1 && !this.confirmedDeliveryDate) {
29458
+ if (line && line.lineNr === this.transactionLine.lineNr && line.refTransactions && line.refTransactions.length === 1 &&
29459
+ !this.confirmedDeliveryDate && this.visible && !this._handled) {
29366
29460
  if (line.refTransactions[0].refTransactionType === TransactionKind.PurchaseOrder) {
29367
29461
  this.service.getMaxConfirmedDeliveryDateForPurchaseOrder(line.refTransactions[0].refTransactionId).then((date) => {
29368
29462
  if (date) {
@@ -29370,6 +29464,7 @@ class TransactionLineConfirmedDeliveryDateButtonComponent extends TransactionBas
29370
29464
  this.showConfirmedDeliveryDate = true;
29371
29465
  this._checkDates();
29372
29466
  }
29467
+ this._handled = true;
29373
29468
  });
29374
29469
  }
29375
29470
  }
@@ -35945,6 +36040,7 @@ class TransactionHeaderDeliveryMethodButtonComponent extends TransactionBaseComp
35945
36040
  event.stopImmediatePropagation();
35946
36041
  if (yield this.lockTransaction()) {
35947
36042
  this.showDialog = true;
36043
+ this.detectChanges();
35948
36044
  }
35949
36045
  });
35950
36046
  }
@@ -35983,7 +36079,8 @@ TransactionHeaderDeliveryMethodButtonComponent.decorators = [
35983
36079
  useExisting: forwardRef(() => TransactionHeaderDeliveryMethodButtonComponent)
35984
36080
  }
35985
36081
  ],
35986
- encapsulation: ViewEncapsulation.None
36082
+ encapsulation: ViewEncapsulation.None,
36083
+ changeDetection: ChangeDetectionStrategy.OnPush
35987
36084
  },] }
35988
36085
  ];
35989
36086
  TransactionHeaderDeliveryMethodButtonComponent.ctorParameters = () => [
@@ -36104,13 +36201,15 @@ class TransactionHeaderDeliverydateDefinitiveButtonComponent extends Transaction
36104
36201
  event.preventDefault();
36105
36202
  event.stopPropagation();
36106
36203
  if (yield this.lockTransaction()) {
36107
- this.transactionService.updateHeaderTransactionDeliveryDateDefinitive(this.transactionInfo.uuid, definitive, this.lockAndSave);
36204
+ yield this.transactionService.updateHeaderTransactionDeliveryDateDefinitive(this.transactionInfo.uuid, definitive, this.lockAndSave);
36205
+ this.detectChanges();
36108
36206
  }
36109
36207
  });
36110
36208
  }
36111
36209
  configSet() {
36112
36210
  if (this.screenConfigService.configObjects && this.cfgName) {
36113
36211
  this.hidden = this.screenConfigService.getObjectConfigurationFor(this.cfgName).immediatelyHidden();
36212
+ this.detectChanges();
36114
36213
  }
36115
36214
  }
36116
36215
  }
@@ -38109,14 +38208,6 @@ class SearchViewModeService {
38109
38208
  get collapsed() {
38110
38209
  return this.activeSearchBarViewMode === SearchbarViewMode.Collapsed;
38111
38210
  }
38112
- calculateClasses() {
38113
- return {
38114
- 'fullscreen': this.fullscreen,
38115
- 'sidebar': !this.fullscreen,
38116
- 'collapsed': this.collapsed,
38117
- 'expanded': !this.collapsed,
38118
- };
38119
- }
38120
38211
  toggleFilter() {
38121
38212
  this.showFilterSidebar = !this.showFilterSidebar;
38122
38213
  }
@@ -38170,6 +38261,8 @@ class SearchFilterPanelComponent {
38170
38261
  constructor(iconCacheService, searchViewModeService) {
38171
38262
  this.iconCacheService = iconCacheService;
38172
38263
  this.searchViewModeService = searchViewModeService;
38264
+ this.viewMode = SearchViewMode;
38265
+ this.barViewMode = SearchbarViewMode;
38173
38266
  this.align = ColumnAlign;
38174
38267
  this.icon = Icon;
38175
38268
  this.resetFilterClick = new EventEmitter();
@@ -38206,9 +38299,11 @@ SearchFilterPanelComponent.decorators = [
38206
38299
  </div>
38207
38300
 
38208
38301
  <!--filter-content-->
38209
- <div class="search-filter-wrapper narrow-scrollbar"
38210
- [ngClass]="searchViewModeService.calculateClasses()"
38211
- *ngIf=" searchViewModeService.showFilterSidebar">
38302
+ <div class="search-filter-wrapper narrow-scrollbar" *ngIf=" searchViewModeService.showFilterSidebar"
38303
+ [class.fullscreen]="searchViewModeService.activeSearchViewMode === viewMode.FullScreen"
38304
+ [class.sidebar]="searchViewModeService.activeSearchViewMode !== viewMode.FullScreen"
38305
+ [class.collapsed]="searchViewModeService.activeSearchBarViewMode === barViewMode.Collapsed"
38306
+ [class.expanced]="searchViewModeService.activeSearchBarViewMode !== barViewMode.Collapsed">
38212
38307
  <ng-content></ng-content>
38213
38308
  </div>
38214
38309
 
@@ -38246,11 +38341,12 @@ SearchFilterPanelModule.decorators = [
38246
38341
  ];
38247
38342
 
38248
38343
  class TransactionFilterComponent {
38249
- constructor(_mappingService, _compFactoryResolver, appRef, injector, searchService) {
38344
+ constructor(_mappingService, _compFactoryResolver, appRef, injector, _changeDetector, searchService) {
38250
38345
  this._mappingService = _mappingService;
38251
38346
  this._compFactoryResolver = _compFactoryResolver;
38252
38347
  this.appRef = appRef;
38253
38348
  this.injector = injector;
38349
+ this._changeDetector = _changeDetector;
38254
38350
  this.searchService = searchService;
38255
38351
  }
38256
38352
  set container(content) {
@@ -38291,6 +38387,7 @@ class TransactionFilterComponent {
38291
38387
  const domElem = this._componentRef.hostView
38292
38388
  .rootNodes[0];
38293
38389
  this._transactionFilterContainer.nativeElement.appendChild(domElem);
38390
+ this._changeDetector.detectChanges();
38294
38391
  this._componentRef.onDestroy(() => {
38295
38392
  this.appRef.detachView(this._componentRef.hostView);
38296
38393
  });
@@ -38303,6 +38400,7 @@ TransactionFilterComponent.decorators = [
38303
38400
  <div #transactionFilter class="transaction-filter-wrapper">
38304
38401
  </div>
38305
38402
  `,
38403
+ changeDetection: ChangeDetectionStrategy.OnPush,
38306
38404
  encapsulation: ViewEncapsulation.None
38307
38405
  },] }
38308
38406
  ];
@@ -38311,6 +38409,7 @@ TransactionFilterComponent.ctorParameters = () => [
38311
38409
  { type: ComponentFactoryResolver },
38312
38410
  { type: ApplicationRef },
38313
38411
  { type: Injector },
38412
+ { type: ChangeDetectorRef },
38314
38413
  { type: TransactionSearchService }
38315
38414
  ];
38316
38415
  TransactionFilterComponent.propDecorators = {
@@ -38526,10 +38625,11 @@ TransactionSearchSalesOrderTileModule.decorators = [
38526
38625
  ];
38527
38626
 
38528
38627
  class TransactionSearchSalesLineSelectTileComponent extends TransactionSearchTileBaseComponent {
38529
- constructor(iconCacheService, transactionService) {
38530
- super(iconCacheService);
38628
+ constructor(iconCacheService, transactionService, changeDetector) {
38629
+ super(iconCacheService, changeDetector);
38531
38630
  this.iconCacheService = iconCacheService;
38532
38631
  this.transactionService = transactionService;
38632
+ this.changeDetector = changeDetector;
38533
38633
  this.lineClicked = new EventEmitter();
38534
38634
  }
38535
38635
  showClass() {
@@ -38548,28 +38648,30 @@ class TransactionSearchSalesLineSelectTileComponent extends TransactionSearchTil
38548
38648
  }
38549
38649
  TransactionSearchSalesLineSelectTileComponent.decorators = [
38550
38650
  { type: Component, args: [{
38551
- selector: "co-transaction-search-sales-line-select-tile",
38651
+ selector: 'co-transaction-search-sales-line-select-tile',
38552
38652
  template: `
38553
- <div class="co-transaction-search-sales-line-select-tile-wrapper " observeVisibility #observer=visibilityObserve (visibilityChange)="handleVisibilityChange($event)">
38554
- <co-transaction-search-sales-order-tile [transaction]="transaction" [showAvatar]="true">
38555
- </co-transaction-search-sales-order-tile>
38556
- <div class="vertical-line "></div>
38557
- <div class="order-lines-container co-small-scrollbar">
38558
- <div *ngFor="let line of lines" >
38559
- <co-transaction-line-tile [line]="line" (click)="tileClicked(line)"></co-transaction-line-tile>
38560
- </div>
38653
+ <div class="co-transaction-search-sales-line-select-tile-wrapper " observeVisibility #observer=visibilityObserve
38654
+ (visibilityChange)="handleVisibilityChange($event)">
38655
+ <co-transaction-search-sales-order-tile [transaction]="transaction" [showAvatar]="true">
38656
+ </co-transaction-search-sales-order-tile>
38657
+ <div class="vertical-line "></div>
38658
+ <div class="order-lines-container co-small-scrollbar">
38659
+ <div *ngFor="let line of lines">
38660
+ <co-transaction-line-tile [line]="line" (click)="tileClicked(line)"></co-transaction-line-tile>
38661
+ </div>
38662
+ </div>
38561
38663
  </div>
38562
- </div>
38563
38664
  `,
38564
38665
  encapsulation: ViewEncapsulation.None
38565
38666
  },] }
38566
38667
  ];
38567
38668
  TransactionSearchSalesLineSelectTileComponent.ctorParameters = () => [
38568
38669
  { type: IconCacheService },
38569
- { type: TransactionService }
38670
+ { type: TransactionService },
38671
+ { type: ChangeDetectorRef }
38570
38672
  ];
38571
38673
  TransactionSearchSalesLineSelectTileComponent.propDecorators = {
38572
- showClass: [{ type: HostBinding, args: ["class.co-transaction-search-sales-line-select-tile",] }],
38674
+ showClass: [{ type: HostBinding, args: ['class.co-transaction-search-sales-line-select-tile',] }],
38573
38675
  lineClicked: [{ type: Output }]
38574
38676
  };
38575
38677
 
@@ -39732,6 +39834,8 @@ class TransactionInternalComponent {
39732
39834
  this.transactionPlanning = false;
39733
39835
  this.cashRegistersDirty = false;
39734
39836
  this.relationChange = new EventEmitter();
39837
+ //This output exists for bundle purposes.
39838
+ this.serviceRequested = new EventEmitter();
39735
39839
  this.showQuickAccess = true;
39736
39840
  this.showButtonBar = true;
39737
39841
  this.activeViewMode = ContentViewMode.List;
@@ -39933,6 +40037,8 @@ class TransactionInternalComponent {
39933
40037
  /*this._transactionConnectorService.createServiceOrderWithSourceTransactionLine(request).then((result: TransactionInfoResponse) => {
39934
40038
  if(result) {*/
39935
40039
  this._transactionEventService.requestCreateServiceOrderFromTransactionLine.next({ transaction: this.transaction, lineNr: lineNr });
40040
+ //added for bundle purposes so we can pass the value along without the event service. Use the event service in all other cases.
40041
+ this.serviceRequested.emit({ transactionNr: this.transaction.transactionInfo.transactionNr, transactionId: this.transaction.transactionInfo.id, lineNr: lineNr });
39936
40042
  /* }
39937
40043
  });*/
39938
40044
  }
@@ -40087,8 +40193,7 @@ TransactionInternalComponent.decorators = [
40087
40193
  [screenConfigurationObject]="cfgNames.HeaderBranch"
40088
40194
  screenConfigNativeElement>
40089
40195
  </co-avatar>
40090
- <co-view-mode-buttons
40091
- *ngIf="!shouldShowTiles() && showViewModeButtons"
40196
+ <co-view-mode-buttons *ngIf="!shouldShowTiles() && showViewModeButtons"
40092
40197
  [showViewModes]="[viewModes.List, viewModes.Tiles]"
40093
40198
  (viewModeChange)="handleViewModeChange($event)">
40094
40199
  </co-view-mode-buttons>
@@ -40125,9 +40230,8 @@ TransactionInternalComponent.decorators = [
40125
40230
  activeCategory === categories.SalesOrderQuotation ||
40126
40231
  activeCategory === categories.ServiceOrderOverview">
40127
40232
  </co-add-product>
40128
- <co-transaction-button
40233
+ <co-transaction-button *ngIf="activeCategory !== categories.ServiceOrderService"
40129
40234
  class="custom-width text-rule"
40130
- *ngIf="activeCategory !== categories.ServiceOrderService"
40131
40235
  [iconData]="iconCacheService.getIcon(icons.TextSolid)"
40132
40236
  (click)="handleTransactionText()">
40133
40237
  </co-transaction-button>
@@ -40138,9 +40242,7 @@ TransactionInternalComponent.decorators = [
40138
40242
  [transactionInfo]="transaction.transactionInfo"
40139
40243
  ></co-transaction-margin>
40140
40244
  </div>
40141
-
40142
- <co-transaction-totals
40143
- *ngIf="activeCategory !== category.ServiceOrderService"
40245
+ <co-transaction-totals *ngIf="activeCategory !== category.ServiceOrderService"
40144
40246
  [transactionInfo]="transaction.transactionInfo"
40145
40247
  [transactionTotal]="transaction.transactionTotal"
40146
40248
  [showDiscount]="true">
@@ -40148,16 +40250,12 @@ TransactionInternalComponent.decorators = [
40148
40250
  </div>
40149
40251
  </div>
40150
40252
 
40151
- <co-transaction-lines-side-panel
40152
- *ngIf="
40153
- transaction &&
40154
- (transaction.transactionInfo.transactionKind === transactionKind.CashDesk && !fullyInvoiced())"
40253
+ <co-transaction-lines-side-panel *ngIf="transaction && (transaction.transactionInfo.transactionKind === transactionKind.CashDesk && !fullyInvoiced())"
40155
40254
  [posOrderData]="posOrderData"
40156
40255
  [transaction]="transaction">
40157
40256
  </co-transaction-lines-side-panel>
40158
40257
 
40159
- <co-transaction-line-side-panel
40160
- *ngIf="showSidePanel"
40258
+ <co-transaction-line-side-panel *ngIf="showSidePanel"
40161
40259
  [transaction]="transaction"
40162
40260
  [transactionInfo]="transaction.transactionInfo"
40163
40261
  [transactionLine]="sidePanelTransactionLine"
@@ -40166,8 +40264,7 @@ TransactionInternalComponent.decorators = [
40166
40264
  </co-transaction-line-side-panel>
40167
40265
 
40168
40266
  <!--Popup voor wijzigen volgorde van tekstregels-->
40169
- <co-transaction-article-text-overview
40170
- *ngIf="showArticleTextOverview"
40267
+ <co-transaction-article-text-overview *ngIf="showArticleTextOverview"
40171
40268
  [transactionInfo]="transaction.transactionInfo"
40172
40269
  [transactionLine]="transactionLine"
40173
40270
  (closeClick)="closeArticleTextOverview()"
@@ -40175,8 +40272,7 @@ TransactionInternalComponent.decorators = [
40175
40272
  </co-transaction-article-text-overview>
40176
40273
 
40177
40274
  <!--Popup voor aanmaken en updaten transactietekstregels-->
40178
- <co-transaction-article-text
40179
- *ngIf="showTransactionText"
40275
+ <co-transaction-article-text *ngIf="showTransactionText"
40180
40276
  [header]="'ORDER_TEXT_LINE' | localize"
40181
40277
  [transactionUuid]="transaction.transactionInfo.uuid"
40182
40278
  [editText]="textToEdit"
@@ -40189,8 +40285,7 @@ TransactionInternalComponent.decorators = [
40189
40285
  </co-transaction-article-text>
40190
40286
 
40191
40287
  <!--Popup voor aanmaken en updaten artikeltekstregels-->
40192
- <co-transaction-article-text
40193
- *ngIf="showArticleText"
40288
+ <co-transaction-article-text *ngIf="showArticleText"
40194
40289
  [header]="'PRODUCT_DESCRIPTION_AND_TEXTS' | localize"
40195
40290
  [transactionUuid]="transaction.transactionInfo.uuid"
40196
40291
  [showArticleImageDescription]="transactionLine.articleBound"
@@ -40204,15 +40299,15 @@ TransactionInternalComponent.decorators = [
40204
40299
  (cancelClick)="closeArticleText()">
40205
40300
  </co-transaction-article-text>
40206
40301
 
40207
- <co-transaction-copy-order
40208
- *ngIf="showCopyOrderDialog"
40302
+ <co-transaction-copy-order *ngIf="showCopyOrderDialog"
40209
40303
  [transaction]="transaction"
40210
40304
  (closeDialog)="showCopyOrderDialog = false">
40211
40305
  </co-transaction-copy-order>
40212
40306
  </div>
40213
40307
  </ng-container>
40214
40308
  `,
40215
- encapsulation: ViewEncapsulation.None
40309
+ encapsulation: ViewEncapsulation.None,
40310
+ changeDetection: ChangeDetectionStrategy.OnPush
40216
40311
  },] }
40217
40312
  ];
40218
40313
  TransactionInternalComponent.ctorParameters = () => [
@@ -40241,6 +40336,7 @@ TransactionInternalComponent.propDecorators = {
40241
40336
  transactionPlanning: [{ type: Input }],
40242
40337
  cashRegistersDirty: [{ type: Input }],
40243
40338
  relationChange: [{ type: Output }],
40339
+ serviceRequested: [{ type: Output }],
40244
40340
  showQuickAccess: [{ type: HostBinding, args: ['class.show-quick-access',] }, { type: Input }],
40245
40341
  showButtonBar: [{ type: HostBinding, args: ['class.show-button-bar',] }, { type: Input }],
40246
40342
  showClass: [{ type: HostBinding, args: ['class.co-transaction-internal',] }],
@@ -40348,6 +40444,7 @@ class TransactionHeaderRelationComponent extends TransactionBaseComponent {
40348
40444
  }), this.transactionService.relationUpdated.subscribe(relation => {
40349
40445
  if (relation !== undefined) {
40350
40446
  this.loaded = true;
40447
+ this.changeDetector.markForCheck();
40351
40448
  }
40352
40449
  }));
40353
40450
  }
@@ -40358,6 +40455,7 @@ class TransactionHeaderRelationComponent extends TransactionBaseComponent {
40358
40455
  relationSet() {
40359
40456
  super.relationSet();
40360
40457
  this._setRelationAddress();
40458
+ this.changeDetector.markForCheck();
40361
40459
  }
40362
40460
  transactionInfoSet() {
40363
40461
  super.transactionInfoSet();
@@ -40432,7 +40530,8 @@ TransactionHeaderRelationComponent.decorators = [
40432
40530
  useExisting: forwardRef(() => TransactionHeaderRelationComponent)
40433
40531
  }
40434
40532
  ],
40435
- encapsulation: ViewEncapsulation.None
40533
+ encapsulation: ViewEncapsulation.None,
40534
+ changeDetection: ChangeDetectionStrategy.OnPush
40436
40535
  },] }
40437
40536
  ];
40438
40537
  TransactionHeaderRelationComponent.propDecorators = {
@@ -40846,7 +40945,7 @@ class TransactionHeaderRemainingAmountComponent {
40846
40945
  }
40847
40946
  ngOnInit() {
40848
40947
  this._subs.push(this._transactionEventService.quantitySelectedLineChanged.subscribe((changed) => {
40849
- if (changed) {
40948
+ if (changed && !this.transactionService.manualSaveParam) {
40850
40949
  const request = new CalculateAmountToPayRequest();
40851
40950
  request.transactionUuid = this.transactionUuid;
40852
40951
  this._paymentConnectorService.calculateAmountToPayWithLineSelection(request).then((data) => {
@@ -41098,6 +41197,7 @@ QuickSendButtonComponent.decorators = [
41098
41197
  </div>
41099
41198
  </div>
41100
41199
  `,
41200
+ changeDetection: ChangeDetectionStrategy.OnPush,
41101
41201
  encapsulation: ViewEncapsulation.None
41102
41202
  },] }
41103
41203
  ];
@@ -42482,6 +42582,7 @@ TransactionLineSidePanelDefaultComponent.decorators = [
42482
42582
  <div class="collapsible-content-wrapper">
42483
42583
  <div class="side-panel-input-row">
42484
42584
  <co-transaction-line-description class="side-panel-input"
42585
+ [customHeight]="false"
42485
42586
  [transactionLine]="transactionLine"></co-transaction-line-description>
42486
42587
  </div>
42487
42588
  <div class="side-panel-input-row">
@@ -45560,7 +45661,8 @@ class SearchHeaderButtonsComponent {
45560
45661
  this.searchViewModeService = searchViewModeService;
45561
45662
  this.icon = Icon;
45562
45663
  this.contentViewModes = ContentViewMode;
45563
- this.searchViewModes = SearchViewMode;
45664
+ this.viewMode = SearchViewMode;
45665
+ this.barViewMode = SearchbarViewMode;
45564
45666
  this.iconSlideIn = this.iconCacheService.getIcon(this.icon.SlideIn);
45565
45667
  this.iconResize = this.iconCacheService.getIcon(this.icon.ExpandSolid);
45566
45668
  this.iconCancel = this.iconCacheService.getIcon(this.icon.XSolid);
@@ -45599,7 +45701,10 @@ SearchHeaderButtonsComponent.decorators = [
45599
45701
  <div class="upper-header">
45600
45702
  <div class="header-buttons-wrapper">
45601
45703
  <div class="close-search-button-wrapper button-wrapper" *ngIf="!fullscreen"
45602
- [ngClass]="searchViewModeService.calculateClasses()">
45704
+ [class.fullscreen]="searchViewModeService.activeSearchViewMode === viewMode.FullScreen"
45705
+ [class.sidebar]="searchViewModeService.activeSearchViewMode !== viewMode.FullScreen"
45706
+ [class.collapsed]="searchViewModeService.activeSearchBarViewMode === barViewMode.Collapsed"
45707
+ [class.expanced]="searchViewModeService.activeSearchBarViewMode !== barViewMode.Collapsed">
45603
45708
  <co-button [iconData]="iconResize"
45604
45709
  class="toggle-sidebar-button transparent"
45605
45710
  (click)="onResizeClick()"></co-button>
@@ -45616,7 +45721,11 @@ SearchHeaderButtonsComponent.decorators = [
45616
45721
  <co-button class="add-button transparent" [iconData]="iconCacheService.getIcon(icon.PlusSimple)"
45617
45722
  (click)="onAddButtonClick()"></co-button>
45618
45723
 
45619
- <div class="search-header-content-wrapper" [ngClass]="searchViewModeService.calculateClasses()">
45724
+ <div class="search-header-content-wrapper"
45725
+ [class.fullscreen]="searchViewModeService.activeSearchViewMode === viewMode.FullScreen"
45726
+ [class.sidebar]="searchViewModeService.activeSearchViewMode !== viewMode.FullScreen"
45727
+ [class.collapsed]="searchViewModeService.activeSearchBarViewMode === barViewMode.Collapsed"
45728
+ [class.expanced]="searchViewModeService.activeSearchBarViewMode !== barViewMode.Collapsed">
45620
45729
  <ng-content></ng-content>
45621
45730
  </div>
45622
45731
 
@@ -45685,6 +45794,8 @@ SearchHeaderButtonsModule.decorators = [
45685
45794
  class SearchComponent {
45686
45795
  constructor(searchViewModeService) {
45687
45796
  this.searchViewModeService = searchViewModeService;
45797
+ this.viewMode = SearchViewMode;
45798
+ this.barViewMode = SearchbarViewMode;
45688
45799
  this.icon = Icon;
45689
45800
  this.headerLabel = '';
45690
45801
  this.addClick = new EventEmitter();
@@ -45709,12 +45820,18 @@ SearchComponent.decorators = [
45709
45820
  selector: 'co-search',
45710
45821
  template: `
45711
45822
  <div class="search-main-wrapper">
45712
- <div class="search-wrapper" [ngClass]=searchViewModeService.calculateClasses()>
45823
+ <div class="search-wrapper"
45824
+ [class.fullscreen]="searchViewModeService.activeSearchViewMode === viewMode.FullScreen"
45825
+ [class.sidebar]="searchViewModeService.activeSearchViewMode !== viewMode.FullScreen"
45826
+ [class.collapsed]="searchViewModeService.activeSearchBarViewMode === barViewMode.Collapsed"
45827
+ [class.expanced]="searchViewModeService.activeSearchBarViewMode !== barViewMode.Collapsed">
45713
45828
 
45714
45829
  <!--filter panel-->
45715
- <div class="search-filter-panel narrow-scrollbar"
45716
- [ngClass]="searchViewModeService.calculateClasses()"
45717
- *ngIf="searchViewModeService.showFilterSidebar" @showHideFilterSidebar>
45830
+ <div class="search-filter-panel narrow-scrollbar" *ngIf="searchViewModeService.showFilterSidebar" @showHideFilterSidebar
45831
+ [class.fullscreen]="searchViewModeService.activeSearchViewMode === viewMode.FullScreen"
45832
+ [class.sidebar]="searchViewModeService.activeSearchViewMode !== viewMode.FullScreen"
45833
+ [class.collapsed]="searchViewModeService.activeSearchBarViewMode === barViewMode.Collapsed"
45834
+ [class.expanced]="searchViewModeService.activeSearchBarViewMode !== barViewMode.Collapsed">
45718
45835
  <co-search-filter-panel (resetFilterClick)="onResetFilterClick()">
45719
45836
  <ng-content select="[search-filter-panel]"></ng-content>
45720
45837
  </co-search-filter-panel>
@@ -45731,7 +45848,11 @@ SearchComponent.decorators = [
45731
45848
  </div>
45732
45849
 
45733
45850
  <!--search result-->
45734
- <div class="search-result" [ngClass]="searchViewModeService.calculateClasses()">
45851
+ <div class="search-result"
45852
+ [class.fullscreen]="searchViewModeService.activeSearchViewMode === viewMode.FullScreen"
45853
+ [class.sidebar]="searchViewModeService.activeSearchViewMode !== viewMode.FullScreen"
45854
+ [class.collapsed]="searchViewModeService.activeSearchBarViewMode === barViewMode.Collapsed"
45855
+ [class.expanced]="searchViewModeService.activeSearchBarViewMode !== barViewMode.Collapsed">
45735
45856
  <ng-content select="[search-result]"></ng-content>
45736
45857
  </div>
45737
45858
  </div>
@@ -45739,7 +45860,10 @@ SearchComponent.decorators = [
45739
45860
 
45740
45861
  <!--routing content-->
45741
45862
  <div class="search-content-wrapper"
45742
- [ngClass]="searchViewModeService.calculateClasses()">
45863
+ [class.fullscreen]="searchViewModeService.activeSearchViewMode === viewMode.FullScreen"
45864
+ [class.sidebar]="searchViewModeService.activeSearchViewMode !== viewMode.FullScreen"
45865
+ [class.collapsed]="searchViewModeService.activeSearchBarViewMode === barViewMode.Collapsed"
45866
+ [class.expanced]="searchViewModeService.activeSearchBarViewMode !== barViewMode.Collapsed">
45743
45867
  <!--routing content?-->
45744
45868
  <ng-content></ng-content>
45745
45869
  </div>
@@ -48258,6 +48382,13 @@ class TransactionSearchComponent {
48258
48382
  this._subs = [];
48259
48383
  this._subs.push(this._transactionEventService.createTransaction.subscribe(() => this.addTransactionClick.emit()));
48260
48384
  }
48385
+ //Only use this for bundle purposes please!
48386
+ set overrideSearchType(kind) {
48387
+ if (!(kind === null || kind === undefined)) {
48388
+ this.transactionSearchService.transactionType = kind;
48389
+ this.transactionSearchService.searchTransactions();
48390
+ }
48391
+ }
48261
48392
  showClass() {
48262
48393
  return true;
48263
48394
  }
@@ -48326,6 +48457,7 @@ TransactionSearchComponent.ctorParameters = () => [
48326
48457
  ];
48327
48458
  TransactionSearchComponent.propDecorators = {
48328
48459
  draggableTransactions: [{ type: Input }],
48460
+ overrideSearchType: [{ type: Input }],
48329
48461
  transactionClick: [{ type: Output }],
48330
48462
  addTransactionClick: [{ type: Output }],
48331
48463
  showClass: [{ type: HostBinding, args: ["class.co-transaction-search",] }]
@@ -53543,9 +53675,9 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53543
53675
  }
53544
53676
  ngOnInit() {
53545
53677
  return __awaiter(this, void 0, void 0, function* () {
53546
- this.priorityDomainColl = yield this.transactionService.getPriority("NL");
53678
+ this.priorityDomainColl = yield this.transactionService.getPriority('NL');
53547
53679
  this.causeCodeColl = yield this.transactionService.getCauseCodes();
53548
- this.entryTypeColl = yield this.transactionService.getEntryTypes("NL");
53680
+ this.entryTypeColl = yield this.transactionService.getEntryTypes('NL');
53549
53681
  this.priorityModel = this.priorityDomainColl.find(p => p.codeAsNumber === this.transactionServiceInfo.priority);
53550
53682
  this.causeCodeModel = this.causeCodeColl.find(c => c.causeCode === this.transactionServiceInfo.causeCode);
53551
53683
  this.entryTypeModel = this.entryTypeColl.find(e => e.code === this.transactionServiceInfo.entryType);
@@ -53564,6 +53696,7 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53564
53696
  getActivities() {
53565
53697
  return __awaiter(this, void 0, void 0, function* () {
53566
53698
  this.activities = yield this.transactionService.getHistoricActivities(this.transactionInfo.id);
53699
+ this.detectChanges();
53567
53700
  });
53568
53701
  }
53569
53702
  finishedActivitiesRefreshRequested() {
@@ -53571,12 +53704,15 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53571
53704
  }
53572
53705
  fullActivitiesRefreshRequested() {
53573
53706
  this.getActivities();
53574
- this.openActivities.getActivities();
53707
+ this.openActivities.getActivities().then(() => {
53708
+ this.detectChanges();
53709
+ });
53575
53710
  }
53576
53711
  fetchDocuments() {
53577
53712
  this.transactionService.loadDocumentsOfTransaction(this.transactionInfo.id.toString()).then((fetchedDocuments) => {
53578
53713
  this.documents = fetchedDocuments;
53579
53714
  this.documents.forEach((d) => __awaiter(this, void 0, void 0, function* () { return d.documentBody = yield this.transactionService.loadDocumentContent(d.documentId, false); }));
53715
+ this.detectChanges();
53580
53716
  });
53581
53717
  }
53582
53718
  setPriority(priority) {
@@ -53589,6 +53725,7 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53589
53725
  this.priorityModel = null;
53590
53726
  }
53591
53727
  yield this.transactionService.updateServiceHeaderPriority(this.transactionServiceInfo.priority, true);
53728
+ this.detectChanges();
53592
53729
  });
53593
53730
  }
53594
53731
  setCauseCode(causeCode) {
@@ -53601,6 +53738,7 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53601
53738
  this.causeCodeModel = null;
53602
53739
  }
53603
53740
  yield this.transactionService.updateServiceHeaderCauseCode(this.transactionServiceInfo.causeCode, true);
53741
+ this.detectChanges();
53604
53742
  });
53605
53743
  }
53606
53744
  setEntryType(entryType) {
@@ -53613,6 +53751,7 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53613
53751
  this.entryTypeModel = null;
53614
53752
  }
53615
53753
  yield this.transactionService.updateServiceHeaderEntryType(this.transactionServiceInfo.entryType, true);
53754
+ this.detectChanges();
53616
53755
  });
53617
53756
  }
53618
53757
  upsertDocument(doc) {
@@ -53620,7 +53759,7 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53620
53759
  const response = yield this.transactionService.mergeDocumentOnTransaction(this.transactionInfo.id.toString(), doc);
53621
53760
  if (response) {
53622
53761
  this.fetchDocuments();
53623
- yield this._dialogService.showToast("DATA_SAVED", true);
53762
+ yield this._dialogService.showToast('DATA_SAVED', true);
53624
53763
  }
53625
53764
  });
53626
53765
  }
@@ -53629,7 +53768,7 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53629
53768
  const response = yield this.transactionService.deleteDocument(doc.documentId);
53630
53769
  if (response && response.success) {
53631
53770
  this.fetchDocuments();
53632
- yield this._dialogService.showToast("DATA_SAVED", true);
53771
+ yield this._dialogService.showToast('DATA_SAVED', true);
53633
53772
  }
53634
53773
  });
53635
53774
  }
@@ -53649,7 +53788,7 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53649
53788
  }
53650
53789
  sortDocumentList() {
53651
53790
  SortUtils.SortObjectArray(this.documents, [{
53652
- property: "documentId",
53791
+ property: 'documentId',
53653
53792
  direction: SortDirection.Ascending,
53654
53793
  type: SortType.Number
53655
53794
  }]);
@@ -53657,64 +53796,72 @@ class TransactionServiceOverviewComponent extends TransactionBaseComponent {
53657
53796
  }
53658
53797
  TransactionServiceOverviewComponent.decorators = [
53659
53798
  { type: Component, args: [{
53660
- selector: "co-transaction-service-overview",
53661
- template: `
53662
- <div class="service-overview-wrapper">
53663
- <div class="message-and-task-wrapper">
53664
- <div class="service-message-and-image-wrapper">
53665
- <div class="service-message-wrapper">
53666
- <div class="service-message">
53667
- <label class="label service-label" [textContent]="'SERVICE_REPORT'| localize"></label>
53668
- <span *ngIf="transactionServiceInfo && transactionServiceInfo.wizardQuestionsAndAnswers"
53669
- [textContent]="transactionServiceInfo.wizardQuestionsAndAnswers" [screenConfigurationObject]="cfgNames.ServiceWizardMessage" screenConfigNativeElement
53670
- ></span> <!---->
53671
- <co-transaction-service-message class="transaction-service-message" [transaction]="transaction">
53672
- </co-transaction-service-message>
53673
- </div>
53674
- <co-files-upload (documentChangeEvent)="upsertDocument($event)" [screenConfigurationObject]="cfgNames.ServiceOverviewImage"
53675
- (documentDeleted)="deleteDocument($event)"
53676
- [label]="'ADD_IMAGES' | localize"
53677
- [documents]="documents"
53678
- [isEditable]="false" > <!---->
53679
- </co-files-upload>
53680
- </div>
53681
- <div class="service-order-lines-wrapper">
53682
- <div class="service-message-extra-wrapper">
53683
- <co-list-of-values [label]="'PRIORITY'| localize" displayField="description" [model]="priorityModel"
53684
- [collection]="priorityDomainColl" [screenConfigurationObject]="cfgNames.ServicePriority"
53685
- (modelChange)="setPriority($event)"></co-list-of-values> <!---->
53686
- <co-list-of-values [label]="'CAUSE_CODE' | localize" displayField="description" [model]="causeCodeModel"
53687
- [collection]="causeCodeColl" [screenConfigurationObject]="cfgNames.ServiceCauseCode"
53688
- (modelChange)="setCauseCode($event)"></co-list-of-values> <!---->
53689
- <co-list-of-values [label]="'ENTRY_TYPE' | localize" displayField="description" [model]="entryTypeModel"
53690
- [collection]="entryTypeColl" [screenConfigurationObject]="cfgNames.ServiceEntryType"
53691
- (modelChange)="setEntryType($event)"></co-list-of-values> <!---->
53692
- </div>
53693
- <co-transaction-lines-side-panel
53694
- class="higher-max-width"
53695
- [posOrderData]="posOrderData"
53696
- [transaction]="transaction">
53697
- </co-transaction-lines-side-panel>
53698
- </div>
53799
+ selector: 'co-transaction-service-overview',
53800
+ template: `
53801
+ <div class="service-overview-wrapper">
53802
+ <div class="message-and-task-wrapper">
53803
+ <div class="service-message-and-image-wrapper">
53804
+ <div class="service-message-wrapper">
53805
+ <div class="service-message">
53806
+ <label class="label service-label" [textContent]="'SERVICE_REPORT'| localize"></label>
53807
+ <span *ngIf="transactionServiceInfo && transactionServiceInfo.wizardQuestionsAndAnswers"
53808
+ [textContent]="transactionServiceInfo.wizardQuestionsAndAnswers"
53809
+ [screenConfigurationObject]="cfgNames.ServiceWizardMessage" screenConfigNativeElement
53810
+ ></span>
53811
+ <co-transaction-service-message class="transaction-service-message" [transaction]="transaction">
53812
+ </co-transaction-service-message>
53813
+ </div>
53814
+ <co-files-upload (documentChangeEvent)="upsertDocument($event)"
53815
+ [screenConfigurationObject]="cfgNames.ServiceOverviewImage"
53816
+ (documentDeleted)="deleteDocument($event)"
53817
+ [label]="'ADD_IMAGES' | localize"
53818
+ [documents]="documents"
53819
+ [isEditable]="false">
53820
+ </co-files-upload>
53821
+ </div>
53822
+ <div class="service-order-lines-wrapper">
53823
+ <div class="service-message-extra-wrapper">
53824
+ <co-list-of-values [label]="'PRIORITY'| localize" displayField="description" [model]="priorityModel"
53825
+ [collection]="priorityDomainColl" [screenConfigurationObject]="cfgNames.ServicePriority"
53826
+ (modelChange)="setPriority($event)"></co-list-of-values>
53827
+ <co-list-of-values [label]="'CAUSE_CODE' | localize" displayField="description" [model]="causeCodeModel"
53828
+ [collection]="causeCodeColl" [screenConfigurationObject]="cfgNames.ServiceCauseCode"
53829
+ (modelChange)="setCauseCode($event)"></co-list-of-values>
53830
+ <co-list-of-values [label]="'ENTRY_TYPE' | localize" displayField="description" [model]="entryTypeModel"
53831
+ [collection]="entryTypeColl" [screenConfigurationObject]="cfgNames.ServiceEntryType"
53832
+ (modelChange)="setEntryType($event)"></co-list-of-values>
53833
+ </div>
53834
+ <co-transaction-lines-side-panel
53835
+ class="higher-max-width"
53836
+ [posOrderData]="posOrderData"
53837
+ [transaction]="transaction">
53838
+ </co-transaction-lines-side-panel>
53839
+ </div>
53699
53840
 
53700
- </div>
53701
- <div class="activity-list-component-wrapper">
53702
- <div class="activity-task-creator-wrapper">
53703
- <co-component-activity-list #openActivities [showActivityHeader]="showActivityHeader" [screenConfigurationObject]="cfgNames.HeaderActivityList"
53704
- [table]="TableName.Transactions" [key]="transactionInfo.id.toString()" (refreshRequested)="finishedActivitiesRefreshRequested()">
53705
- </co-component-activity-list>
53706
- <co-task-creator [table]="TableName.Transactions" [remarkAndWorkKey]="transactionInfo.id.toString()" [taskKey]="transactionInfo.transactionNr.toString()"
53707
- [author]="transactionService.loggedInUser" [branchNo]="transactionInfo.branch.relationNr.toString()"
53708
- [workflowCategoryType]="WorkflowCategoryType.ServiceOrder" [screenConfigurationObject]="cfgNames.HeaderTaskCreator"
53709
- (activityCreated)="fullActivitiesRefreshRequested()"></co-task-creator>
53710
- </div>
53711
- <div class="activity-list-conv-wrapper">
53712
- <label class="label history-label" [textContent]="'HISTORIC_ACTIVITY_CHAT'| localize" [screenConfigurationObject]="cfgNames.HeaderHistActivities" screenConfigNativeElement></label>
53713
- <co-activity-list [activities]="activities" [screenConfigurationObject]="cfgNames.HeaderHistActivities"></co-activity-list>
53841
+ </div>
53842
+ <div class="activity-list-component-wrapper">
53843
+ <div class="activity-task-creator-wrapper">
53844
+ <co-component-activity-list #openActivities [showActivityHeader]="showActivityHeader"
53845
+ [screenConfigurationObject]="cfgNames.HeaderActivityList"
53846
+ [table]="TableName.Transactions" [key]="transactionInfo.id.toString()"
53847
+ (refreshRequested)="finishedActivitiesRefreshRequested()">
53848
+ </co-component-activity-list>
53849
+ <co-task-creator [table]="TableName.Transactions" [remarkAndWorkKey]="transactionInfo.id.toString()"
53850
+ [taskKey]="transactionInfo.transactionNr.toString()"
53851
+ [author]="transactionService.loggedInUser" [branchNo]="transactionInfo.branch.relationNr.toString()"
53852
+ [workflowCategoryType]="WorkflowCategoryType.ServiceOrder"
53853
+ [screenConfigurationObject]="cfgNames.HeaderTaskCreator"
53854
+ (activityCreated)="fullActivitiesRefreshRequested()"></co-task-creator>
53855
+ </div>
53856
+ <div class="activity-list-conv-wrapper">
53857
+ <label class="label history-label" [textContent]="'HISTORIC_ACTIVITY_CHAT'| localize"
53858
+ [screenConfigurationObject]="cfgNames.HeaderHistActivities" screenConfigNativeElement></label>
53859
+ <co-activity-list [activities]="activities"
53860
+ [screenConfigurationObject]="cfgNames.HeaderHistActivities"></co-activity-list>
53861
+ </div>
53862
+ </div>
53714
53863
  </div>
53715
- </div>
53716
53864
  </div>
53717
- </div>
53718
53865
 
53719
53866
  `,
53720
53867
  providers: [{
@@ -53737,7 +53884,7 @@ TransactionServiceOverviewComponent.ctorParameters = () => [
53737
53884
  ];
53738
53885
  TransactionServiceOverviewComponent.propDecorators = {
53739
53886
  openActivities: [{ type: ViewChild, args: [ComponentActivityListComponent,] }],
53740
- showClass: [{ type: HostBinding, args: ["class.co-transaction-service-overview",] }],
53887
+ showClass: [{ type: HostBinding, args: ['class.co-transaction-service-overview',] }],
53741
53888
  posOrderData: [{ type: Input }]
53742
53889
  };
53743
53890
 
@@ -55289,6 +55436,8 @@ class TransactionComponent {
55289
55436
  this.saveCancelMovable = false;
55290
55437
  this.transactionPlanning = false;
55291
55438
  this.cashRegistersDirty = false;
55439
+ //This output exists for bundle purposes.
55440
+ this.serviceRequested = new EventEmitter();
55292
55441
  this.screenConfigLoaded = false;
55293
55442
  this._fetching = false;
55294
55443
  }
@@ -55392,6 +55541,7 @@ TransactionComponent.decorators = [
55392
55541
  [posOrderData]="posOrderData"
55393
55542
  [transactionPlanning]="transactionPlanning"
55394
55543
  [cashRegistersDirty] = cashRegistersDirty
55544
+ (serviceRequested)="this.serviceRequested.emit($event)"
55395
55545
  ></co-transaction-internal>
55396
55546
  `,
55397
55547
  providers: [
@@ -55425,6 +55575,7 @@ TransactionComponent.propDecorators = {
55425
55575
  saveCancelMovable: [{ type: Input }],
55426
55576
  transactionPlanning: [{ type: Input }],
55427
55577
  cashRegistersDirty: [{ type: Input }],
55578
+ serviceRequested: [{ type: Output }],
55428
55579
  showClass: [{ type: HostBinding, args: ['class.co-transaction',] }],
55429
55580
  checkTransaction: [{ type: HostListener, args: ['window:beforeunload',] }],
55430
55581
  checkRollBack: [{ type: HostListener, args: ['window:unload',] }]
@@ -56237,10 +56388,11 @@ TransactionLineGridModule.decorators = [
56237
56388
  ];
56238
56389
 
56239
56390
  class TransactionTagsComponent {
56240
- constructor(_transactionService, _transactionEventService, _transactionConnectorService, iconCacheService) {
56391
+ constructor(_transactionService, _transactionEventService, _transactionConnectorService, _changeDetector, iconCacheService) {
56241
56392
  this._transactionService = _transactionService;
56242
56393
  this._transactionEventService = _transactionEventService;
56243
56394
  this._transactionConnectorService = _transactionConnectorService;
56395
+ this._changeDetector = _changeDetector;
56244
56396
  this.iconCacheService = iconCacheService;
56245
56397
  this.icons = Icon;
56246
56398
  this.tags = [];
@@ -56277,6 +56429,7 @@ class TransactionTagsComponent {
56277
56429
  this._transactionService.getJoinedTags(this._table, this._key).then((tags) => {
56278
56430
  this.tags = tags;
56279
56431
  this.editingTags = [...tags];
56432
+ this._changeDetector.detectChanges();
56280
56433
  });
56281
56434
  }
56282
56435
  }
@@ -56294,6 +56447,7 @@ class TransactionTagsComponent {
56294
56447
  return __awaiter(this, void 0, void 0, function* () {
56295
56448
  if (this.allTags.length === 0) {
56296
56449
  this.allTags = yield this._transactionService.getTagsFullTree(this._getTabCategory(), true);
56450
+ this._changeDetector.detectChanges();
56297
56451
  }
56298
56452
  this.showEditTagsDialog = true;
56299
56453
  });
@@ -56307,12 +56461,14 @@ class TransactionTagsComponent {
56307
56461
  else {
56308
56462
  tag.image.thumbnailBody = null;
56309
56463
  }
56464
+ this._changeDetector.detectChanges();
56310
56465
  }
56311
56466
  return tag;
56312
56467
  });
56313
56468
  this._transactionService.mergeJoinedTags(this._table, this._key, tagsToMerge).then((success) => {
56314
56469
  if (success) {
56315
56470
  this.tags = this.editingTags;
56471
+ this._changeDetector.detectChanges();
56316
56472
  }
56317
56473
  });
56318
56474
  }
@@ -56329,8 +56485,7 @@ TransactionTagsComponent.decorators = [
56329
56485
  ></co-button>
56330
56486
  </div>
56331
56487
  <co-transaction-tag *ngFor="let tag of tags" [tag]="tag"></co-transaction-tag>
56332
- <co-simple-tags
56333
- *ngIf="showEditTagsDialog"
56488
+ <co-simple-tags *ngIf="showEditTagsDialog"
56334
56489
  [tags]="allTags"
56335
56490
  [linkedTags]="editingTags"
56336
56491
  (saveClick)="handleSaveTags($event)"
@@ -56338,6 +56493,7 @@ TransactionTagsComponent.decorators = [
56338
56493
  ></co-simple-tags>
56339
56494
  </div>
56340
56495
  `,
56496
+ changeDetection: ChangeDetectionStrategy.OnPush,
56341
56497
  encapsulation: ViewEncapsulation.None
56342
56498
  },] }
56343
56499
  ];
@@ -56345,6 +56501,7 @@ TransactionTagsComponent.ctorParameters = () => [
56345
56501
  { type: TransactionService },
56346
56502
  { type: TransactionEventService },
56347
56503
  { type: TransactionConnectorService },
56504
+ { type: ChangeDetectorRef },
56348
56505
  { type: IconCacheService }
56349
56506
  ];
56350
56507
  TransactionTagsComponent.propDecorators = {
@@ -56762,6 +56919,8 @@ class TransactionCreateWizardComponent {
56762
56919
  this.transactionType = TransactionKind.ServiceOrder;
56763
56920
  this.noLockOnCustomerSet = false;
56764
56921
  this._externallyProvidedTransaction = null;
56922
+ //for bundle puroses where an new, non transaction based, service should always start with the customer already set
56923
+ this._externallyProvidedCustomer = null;
56765
56924
  }
56766
56925
  set externallyProvidedTransaction(transaction) {
56767
56926
  this._externallyProvidedTransaction = transaction;
@@ -56769,6 +56928,9 @@ class TransactionCreateWizardComponent {
56769
56928
  set externallyProvidedLineNr(lineNr) {
56770
56929
  this._externallyProvidedLineNr = lineNr;
56771
56930
  }
56931
+ set externallyProvidedCustomer(customer) {
56932
+ this._externallyProvidedCustomer = customer;
56933
+ }
56772
56934
  showClass() {
56773
56935
  return true;
56774
56936
  }
@@ -56777,7 +56939,7 @@ class TransactionCreateWizardComponent {
56777
56939
  yield this.transactionScreenConfigurationService.loadConfig(['S']);
56778
56940
  this.createService.transactionKind = this.transactionType;
56779
56941
  this.createService.createNewRelation();
56780
- this._processExternalTransactionLine();
56942
+ this._processExternalSettings();
56781
56943
  });
56782
56944
  }
56783
56945
  handleRelationValidation() {
@@ -56886,7 +57048,7 @@ class TransactionCreateWizardComponent {
56886
57048
  return valid;
56887
57049
  });
56888
57050
  }
56889
- _processExternalTransactionLine() {
57051
+ _processExternalSettings() {
56890
57052
  return __awaiter(this, void 0, void 0, function* () {
56891
57053
  if (this._externallyProvidedTransaction && !isNaN(this._externallyProvidedLineNr)) {
56892
57054
  //fetch relation and create needed transaction first.
@@ -56905,6 +57067,11 @@ class TransactionCreateWizardComponent {
56905
57067
  this.stepper.openToIndex(3);
56906
57068
  }
56907
57069
  }
57070
+ else if (this._externallyProvidedCustomer) {
57071
+ this.noLockOnCustomerSet = true;
57072
+ this.createService.relation = this._externallyProvidedCustomer;
57073
+ this.stepper.openToIndex(2);
57074
+ }
56908
57075
  });
56909
57076
  }
56910
57077
  }
@@ -56959,6 +57126,7 @@ TransactionCreateWizardComponent.propDecorators = {
56959
57126
  serviceFieldsSection: [{ type: ViewChild, args: ["serviceFieldsSection",] }],
56960
57127
  externallyProvidedTransaction: [{ type: Input }],
56961
57128
  externallyProvidedLineNr: [{ type: Input }],
57129
+ externallyProvidedCustomer: [{ type: Input }],
56962
57130
  transactionFinished: [{ type: Output }],
56963
57131
  showClass: [{ type: HostBinding, args: ["class.co-transaction-create-wizard",] }]
56964
57132
  };