@colijnit/transaction 257.1.61 → 257.1.63

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.
@@ -295,8 +295,8 @@ class Version {
295
295
  constructor() {
296
296
  this.name = "@colijnit/transaction";
297
297
  this.description = "Colijn IT transaction package";
298
- this.symVer = "257.1.61";
299
- this.publishDate = "27/05/2025, 17:45:36";
298
+ this.symVer = "257.1.63";
299
+ this.publishDate = "29/05/2025, 16:40:43";
300
300
  }
301
301
  }
302
302
 
@@ -11114,7 +11114,7 @@ class TransactionBaseService extends BaseModuleService {
11114
11114
  return __awaiter(this, void 0, void 0, function* () {
11115
11115
  this.transactionEventService.transactionLineAdded.next(undefined); // reset line added
11116
11116
  const transactionInfoResponse = yield this.connector.getTransactionById(transactionId);
11117
- if (transactionInfoResponse.isSuccess) {
11117
+ if (transactionInfoResponse && transactionInfoResponse.isSuccess) {
11118
11118
  yield this.rememberCurrentTransaction(transactionInfoResponse);
11119
11119
  }
11120
11120
  });
@@ -11131,7 +11131,7 @@ class TransactionBaseService extends BaseModuleService {
11131
11131
  });
11132
11132
  const transactionInfoResponse = yield this.connector.getTransactionByNrAndKind(transactionKind, transactionNr);
11133
11133
  finished = true;
11134
- if (transactionInfoResponse.isSuccess) {
11134
+ if (transactionInfoResponse && transactionInfoResponse.isSuccess) {
11135
11135
  yield this.rememberCurrentTransaction(transactionInfoResponse);
11136
11136
  }
11137
11137
  return transactionInfoResponse;
@@ -15568,20 +15568,21 @@ class CustomerGroupsComponent {
15568
15568
  return __awaiter(this, void 0, void 0, function* () {
15569
15569
  this._connector.getCustomerGroups().then((groups) => {
15570
15570
  this.customerGroups = groups;
15571
- this._setSelectedCustomerGroup();
15571
+ if (!this._model && this.defaultValue !== null) {
15572
+ this.handleCustomerGroupChange(this.customerGroups.find(c => c.groepsnummer === this.defaultValue.toString()));
15573
+ }
15572
15574
  });
15573
15575
  });
15574
15576
  }
15575
15577
  handleCustomerGroupChange(customerGroup) {
15576
15578
  this.selectedCustomerGroup = customerGroup;
15577
- this.modelChange.emit(this.selectedCustomerGroup.groepsnummer);
15579
+ this._model = this.selectedCustomerGroup.groepsnummer;
15580
+ this.modelChange.emit(this._model);
15578
15581
  }
15579
15582
  _setSelectedCustomerGroup() {
15580
- var _a, _b;
15581
15583
  if (!this.customerGroups) {
15582
15584
  return;
15583
15585
  }
15584
- (_a = this._model) !== null && _a !== void 0 ? _a : (this._model = (_b = this.defaultValue) === null || _b === void 0 ? void 0 : _b.toString());
15585
15586
  this.selectedCustomerGroup = this.customerGroups.find(c => c.groepsnummer === this.model);
15586
15587
  }
15587
15588
  }
@@ -30165,11 +30166,15 @@ class DialogTransactionLineWarehouseComponent extends DialogTransactionLineBaseC
30165
30166
  let warehouseUpdateSuccess = true;
30166
30167
  if (this.transactionLine.warehouseNumber !== this.warehouse) {
30167
30168
  const oldWarehouse = this.transactionLine.warehouseNumber;
30168
- const warehouseSuccess = yield this.transactionService.updateWarehouseTransactionLine(this.transactionService.currentTransaction.transactionInfo.uuid, this.transactionLine.uuid, this.warehouse);
30169
- if (!warehouseSuccess) {
30170
- this.transactionLine.warehouseNumber = oldWarehouse;
30171
- warehouseUpdateSuccess = false;
30172
- }
30169
+ this.transactionService.tryToLockTransaction(this.transactionInfo.id, this.transactionInfo.version).then((locked) => __awaiter(this, void 0, void 0, function* () {
30170
+ if (locked) {
30171
+ const warehouseSuccess = yield this.transactionService.updateWarehouseTransactionLine(this.transactionService.currentTransaction.transactionInfo.uuid, this.transactionLine.uuid, this.warehouse);
30172
+ if (!warehouseSuccess) {
30173
+ this.transactionLine.warehouseNumber = oldWarehouse;
30174
+ warehouseUpdateSuccess = false;
30175
+ }
30176
+ }
30177
+ }));
30173
30178
  }
30174
30179
  if (this.transactionLine.interBranchSourceWarehouseNr !== this.sourceWarehouse) {
30175
30180
  const oldSourceWarehouse = this.transactionLine.interBranchSourceWarehouseNr;
@@ -30206,55 +30211,55 @@ class DialogTransactionLineWarehouseComponent extends DialogTransactionLineBaseC
30206
30211
  }
30207
30212
  DialogTransactionLineWarehouseComponent.decorators = [
30208
30213
  { type: Component, args: [{
30209
- selector: "co-dialog-transaction-line-warehouse",
30214
+ selector: 'co-dialog-transaction-line-warehouse',
30210
30215
  template: `
30211
- <co-dialog [headerTemplate]="dialogHeader" [footerTemplate]="footerTemplate" [showCloseIcon]="useModel" (closeClick)="handleCloseDialog($event, buttonType.Cancel)">
30216
+ <co-dialog [headerTemplate]="dialogHeader" [footerTemplate]="footerTemplate" [showCloseIcon]="useModel" (closeClick)="handleCloseDialog($event, buttonType.Cancel)">
30212
30217
 
30213
- <div class="warehouse-tabs">
30214
- <div class="warehouse-tab" [textContent]="'SOURCE_WAREHOUSE' | localize" [class.active]="activeTab === tab.Source"
30215
- (click)="showTab(tab.Source)"></div>
30216
- <div class="warehouse-tab" [textContent]="'TARGET_WAREHOUSE' | localize" [class.active]="activeTab === tab.Target"
30217
- (click)="showTab(tab.Target)"></div>
30218
- </div>
30218
+ <div class="warehouse-tabs">
30219
+ <div class="warehouse-tab" [textContent]="'SOURCE_WAREHOUSE' | localize" [class.active]="activeTab === tab.Source"
30220
+ (click)="showTab(tab.Source)"></div>
30221
+ <div class="warehouse-tab" [textContent]="'TARGET_WAREHOUSE' | localize" [class.active]="activeTab === tab.Target"
30222
+ (click)="showTab(tab.Target)"></div>
30223
+ </div>
30219
30224
 
30220
- <co-transaction-line-warehouse *ngIf="activeTab === tab.Source"
30221
- [useModel]="false"
30222
- [value]="sourceWarehouse"
30223
- [searchText]="searchText"
30224
- (valueChange)="handleSourceValueChange($event)"
30225
- ></co-transaction-line-warehouse>
30226
- <co-transaction-line-warehouse *ngIf="activeTab === tab.Target"
30227
- [useModel]="false"
30228
- [value]="warehouse"
30229
- [searchText]="searchText"
30230
- (valueChange)="handleTargetValueChange($event)"
30231
- ></co-transaction-line-warehouse>
30225
+ <co-transaction-line-warehouse *ngIf="activeTab === tab.Source"
30226
+ [useModel]="false"
30227
+ [value]="sourceWarehouse"
30228
+ [searchText]="searchText"
30229
+ (valueChange)="handleSourceValueChange($event)"
30230
+ ></co-transaction-line-warehouse>
30231
+ <co-transaction-line-warehouse *ngIf="activeTab === tab.Target"
30232
+ [useModel]="false"
30233
+ [value]="warehouse"
30234
+ [searchText]="searchText"
30235
+ (valueChange)="handleTargetValueChange($event)"
30236
+ ></co-transaction-line-warehouse>
30232
30237
 
30233
- </co-dialog>
30234
- <ng-template #dialogHeader>
30235
- <co-dialog-header-search [title]="'WAREHOUSE'" (search)="handleSearch($event)"></co-dialog-header-search>
30236
- </ng-template>
30238
+ </co-dialog>
30239
+ <ng-template #dialogHeader>
30240
+ <co-dialog-header-search [title]="'WAREHOUSE'" (search)="handleSearch($event)"></co-dialog-header-search>
30241
+ </ng-template>
30237
30242
 
30238
- <ng-template #footerTemplate>
30243
+ <ng-template #footerTemplate>
30239
30244
 
30240
- <div class="transaction-line-warehouse-cc-section">
30241
- <div class="transaction-line-warehouse-cc-warehouses-section">
30242
- <co-icon class="icon" [iconData]="iconCacheService.getIcon(icons.RegularWarehouseCircleArrowRight)"></co-icon>
30243
- <co-input-text [readonly]="true" [placeholder]="'SOURCE_WAREHOUSE' | localize" [model]="interBranchSourceWarehouseDescription" ></co-input-text>
30244
- <co-icon class="icon" [iconData]="iconCacheService.getIcon(icons.RegularWarehouseCircleArrowLeft)"></co-icon>
30245
- <co-input-text [readonly]="true" [placeholder]="'TARGET_WAREHOUSE' | localize" [model]="warehouseDescription"></co-input-text>
30246
- </div>
30247
- </div>
30248
- <div class="co-dialog-footer-button-wrapper">
30249
- <co-button [label]="'OK' | localize" (click)="handleOkClick()"></co-button>
30250
- </div>
30251
- </ng-template>
30245
+ <div class="transaction-line-warehouse-cc-section">
30246
+ <div class="transaction-line-warehouse-cc-warehouses-section">
30247
+ <co-icon class="icon" [iconData]="iconCacheService.getIcon(icons.RegularWarehouseCircleArrowRight)"></co-icon>
30248
+ <co-input-text [readonly]="true" [placeholder]="'SOURCE_WAREHOUSE' | localize" [model]="interBranchSourceWarehouseDescription"></co-input-text>
30249
+ <co-icon class="icon" [iconData]="iconCacheService.getIcon(icons.RegularWarehouseCircleArrowLeft)"></co-icon>
30250
+ <co-input-text [readonly]="true" [placeholder]="'TARGET_WAREHOUSE' | localize" [model]="warehouseDescription"></co-input-text>
30251
+ </div>
30252
+ </div>
30253
+ <div class="co-dialog-footer-button-wrapper">
30254
+ <co-button [label]="'OK' | localize" (click)="handleOkClick()"></co-button>
30255
+ </div>
30256
+ </ng-template>
30252
30257
  `,
30253
30258
  encapsulation: ViewEncapsulation.None
30254
30259
  },] }
30255
30260
  ];
30256
30261
  DialogTransactionLineWarehouseComponent.propDecorators = {
30257
- showClass: [{ type: HostBinding, args: ["class.co-dialog-transaction-line-warehouse",] }]
30262
+ showClass: [{ type: HostBinding, args: ['class.co-dialog-transaction-line-warehouse',] }]
30258
30263
  };
30259
30264
 
30260
30265
  class TransactionLineWarehouseComponent extends TransactionFilterPopupLineBaseComponent {
@@ -33436,7 +33441,7 @@ class TransactionLineSidePanelArticleDetailsComponent {
33436
33441
  }
33437
33442
  _getAlternateSuppliers() {
33438
33443
  this.alternateSuppliers = [];
33439
- if (!this.suppliers || this.suppliers.length === 0) {
33444
+ if (!this.suppliers || this.suppliers.length === 0 || !this.purchaseAdviceLine) {
33440
33445
  return;
33441
33446
  }
33442
33447
  this.selectedSupplierId = this.purchaseAdviceLine.supplierId;
@@ -33943,34 +33948,39 @@ class TransactionLineDropShipmentButtonComponent extends TransactionLineBaseComp
33943
33948
  }
33944
33949
  TransactionLineDropShipmentButtonComponent.decorators = [
33945
33950
  { type: Component, args: [{
33946
- selector: "co-transaction-line-drop-shipment-button",
33951
+ selector: 'co-transaction-line-drop-shipment-button',
33947
33952
  template: `
33948
- <div class="inside-field">
33949
- <co-transaction-line-label *ngIf="transactionService.internalParameterAllowsDropShipment && supplierAllowsDropShipment && inputLabel"
33950
- [insideLabel]="'DROPSHIPMENT'"></co-transaction-line-label>
33951
- <co-transaction-button *ngIf="transactionService.internalParameterAllowsDropShipment && supplierAllowsDropShipment"
33952
- [hidden]="hidden"
33953
- [readonly]="readonly"
33954
- [label]="'DROPSHIPMENT' | localize"
33955
- (click)="handleToggleDropShipment($event)"
33956
- ></co-transaction-button>
33957
- <co-transaction-button *ngIf="!transactionService.internalParameterAllowsDropShipment || !supplierAllowsDropShipment"
33958
- class="disabled-button"
33959
- [hidden]="hidden"
33960
- [readonly]="readonly"
33961
- [label]="'DROPSHIPMENT_NO' | localize"
33962
- ></co-transaction-button>
33963
- </div>
33964
- <co-dialog-transaction-line-warehouse *ngIf="showDialogWarehouse && !readonly"
33965
- [autoClose]="true"
33966
- (close)="showDialogWarehouse = false"
33967
- ></co-dialog-transaction-line-warehouse>
33953
+ <div class="inside-field">
33954
+ <co-transaction-line-label
33955
+ *ngIf="transactionService.internalParameterAllowsDropShipment && supplierAllowsDropShipment && inputLabel"
33956
+ [insideLabel]="'DROPSHIPMENT'">
33957
+ </co-transaction-line-label>
33958
+ <co-transaction-button
33959
+ *ngIf="transactionService.internalParameterAllowsDropShipment && supplierAllowsDropShipment"
33960
+ [hidden]="hidden"
33961
+ [readonly]="readonly"
33962
+ [label]="'DROPSHIPMENT' | localize"
33963
+ (click)="handleToggleDropShipment($event)">
33964
+ </co-transaction-button>
33965
+ <co-transaction-button
33966
+ *ngIf="!transactionService.internalParameterAllowsDropShipment || !supplierAllowsDropShipment"
33967
+ class="disabled-button"
33968
+ [hidden]="hidden"
33969
+ [readonly]="readonly"
33970
+ [label]="'DROPSHIPMENT_NO' | localize">
33971
+ </co-transaction-button>
33972
+ </div>
33973
+
33974
+ <co-dialog-transaction-line-warehouse
33975
+ *ngIf="showDialogWarehouse && !readonly"
33976
+ [autoClose]="true"
33977
+ (close)="showDialogWarehouse = false">
33978
+ </co-dialog-transaction-line-warehouse>
33968
33979
  `,
33969
33980
  providers: [{
33970
33981
  provide: SCREEN_CONFIG_ADAPTER_COMPONENT_INTERFACE_NAME,
33971
33982
  useExisting: forwardRef(() => TransactionLineDropShipmentButtonComponent)
33972
- }
33973
- ],
33983
+ }],
33974
33984
  encapsulation: ViewEncapsulation.None
33975
33985
  },] }
33976
33986
  ];
@@ -33989,7 +33999,7 @@ TransactionLineDropShipmentButtonComponent.ctorParameters = () => [
33989
33999
  TransactionLineDropShipmentButtonComponent.propDecorators = {
33990
34000
  showLabel: [{ type: Input }],
33991
34001
  inputLabel: [{ type: Input }],
33992
- showClass: [{ type: HostBinding, args: ["class.co-transaction-line-drop-shipment-button",] }]
34002
+ showClass: [{ type: HostBinding, args: ['class.co-transaction-line-drop-shipment-button',] }]
33993
34003
  };
33994
34004
 
33995
34005
  class TransactionLineDropShipmentButtonModule {
@@ -47882,6 +47892,12 @@ class TransactionLinesComponent extends TransactionLinesBaseComponent {
47882
47892
  this._subs.forEach(s => s.unsubscribe());
47883
47893
  super.ngOnDestroy();
47884
47894
  }
47895
+ getDisplayIndex(i, lines) {
47896
+ return lines
47897
+ .slice(0, i + 1)
47898
+ .filter(line => !line.isText)
47899
+ .length;
47900
+ }
47885
47901
  transactionSet() {
47886
47902
  super.transactionSet();
47887
47903
  this._checkActiveLine();
@@ -47898,9 +47914,9 @@ TransactionLinesComponent.decorators = [
47898
47914
  selector: "co-transaction-lines",
47899
47915
  template: `
47900
47916
  <div *ngIf="customerPortal">
47901
- <div class="draggable-transaction-line" *ngFor="let line of (historicTransactionLines ? historicTransactionLines : transactionLines); let i = index">
47917
+ <div class="draggable-transaction-line" *ngFor="let line of (historicTransactionLines ? historicTransactionLines : transactionLines) as lines; let i = index">
47902
47918
  <co-transaction-line
47903
- [lineIndex]="i+1"
47919
+ [lineIndex]="getDisplayIndex(i, lines)"
47904
47920
  [transactionLine]="line"
47905
47921
  [activeCategory]="category.SalesCustomerPortal"
47906
47922
  [preview]="preview"
@@ -47921,7 +47937,7 @@ TransactionLinesComponent.decorators = [
47921
47937
  (cdkDropListEntered)="handleDropListEntered($event)"
47922
47938
  >
47923
47939
  <div class="draggable-transaction-line"
47924
- *ngFor="let line of (historicTransactionLines ? historicTransactionLines : transactionLines);let isFirst = first; let i = index; trackBy:trackByFn;"
47940
+ *ngFor="let line of (historicTransactionLines ? historicTransactionLines : transactionLines) as lines;let isFirst = first; let i = index; trackBy:trackByFn;"
47925
47941
  [cdkDragDisabled]="activeCategory !== category.SalesOrderOverview && activeCategory !== category.SalesOrderQuotation &&
47926
47942
  activeCategory !== category.PurchaseOrderOverview && activeCategory !== category.ServiceOrderOverview"
47927
47943
  cdkDrag>
@@ -47931,7 +47947,7 @@ TransactionLinesComponent.decorators = [
47931
47947
  [iconData]="iconCacheService.getIcon(icons.GripDotsVerticalSolid)">
47932
47948
  </co-icon>
47933
47949
  <co-transaction-line
47934
- [lineIndex]="i+1"
47950
+ [lineIndex]="getDisplayIndex(i, lines)"
47935
47951
  [draggedOver]="lineDraggedOver === line.lineNr"
47936
47952
  [transactionLine]="line"
47937
47953
  [activeCategory]="activeCategory"
@@ -47946,13 +47962,13 @@ TransactionLinesComponent.decorators = [
47946
47962
  ></co-transaction-line>
47947
47963
  </div>
47948
47964
  <ng-container *ngIf="activeCategory === category.SalesOrderDeliveryNote || activeCategory === category.SalesOrderInvoice || activeCategory === category.SalesOrderPlanning">
47949
- <div class="draggable-transaction-line" *ngFor="let line of deliveryCostLines; let i = index; trackBy:trackByFn;" cdkDrag>
47965
+ <div class="draggable-transaction-line" *ngFor="let line of deliveryCostLines as lines; let i = index; trackBy:trackByFn;" cdkDrag>
47950
47966
  <co-icon *ngIf="!preview" class="transaction-line-drag-handle"
47951
47967
  [class.show]="line === selectedTransactionLine" cdkDragHandle
47952
47968
  [iconData]="iconCacheService.getIcon(icons.GripDotsVerticalSolid)">
47953
47969
  </co-icon>
47954
47970
  <co-transaction-line
47955
- [lineIndex]="i+1"
47971
+ [lineIndex]="getDisplayIndex(i, lines)"
47956
47972
  [transactionLine]="line"
47957
47973
  [activeCategory]="activeCategory"
47958
47974
  [preview]="preview"
@@ -48717,80 +48733,83 @@ PaymentComponent.decorators = [
48717
48733
  { type: Component, args: [{
48718
48734
  selector: "co-payment",
48719
48735
  template: `
48720
- <div class="payment-wrapper">
48721
- <div class="payment-methods-register-wrapper">
48722
- <div class="payment-methods-wrapper">
48723
- <div class="payment-methods-header">
48724
- <span class="payment-header-title" [textContent]="'SELECT' | localize"></span>
48725
- <!--span class="payment-header-title extra" [textContent]="'FREE' | localize:false"></span-->
48726
- <span class="payment-header-title" [textContent]="'PAYMENT_METHOD' | localize:false"></span>
48727
- </div>
48728
- <div class="payment-methods co-small-scrollbar">
48729
- <co-loader class="loader" *ngIf="showLoader"></co-loader>
48730
- <ng-container *ngIf="!showLoader">
48731
- <co-payment-tile *ngFor="let paymentMethod of paymentMethods; let index = index"
48732
- [image]="paymentMethod.image"
48733
- [description]="paymentMethod.payment.description"
48734
- [selected]="paymentMethodIdx === index"
48735
- (selectedChange)="paymentMethodSelected(paymentMethod.payment, index)"
48736
- ></co-payment-tile>
48737
- </ng-container>
48738
- </div>
48739
- </div>
48740
- <div class="payment-cash-register-wrapper" *ngIf="showCashRegisters">
48741
- <div class="payment-cash-register-header">
48742
- <span class="payment-header-title" [textContent]="'SELECT_CASH_REGISTER' | localize"></span>
48743
- </div>
48744
- <div class="payment-methods">
48745
- <co-payment-tile *ngFor="let cashRegister of cashRegisters; let index = index"
48746
- [icon]="cashRegister.icon"
48747
- [description]="cashRegister.description"
48748
- [selected]="cashRegisterIdx === index"
48749
- (selectedChange)="cashRegisterSelected(cashRegister, index)"
48750
- ></co-payment-tile>
48751
- </div>
48752
- </div>
48753
- </div>
48754
- <div class="payment-to-pay-wrapper">
48755
- <div class="payment-to-pay-total">
48756
- <div class="payment-to-pay-header">
48757
- <span class="payment-header-title" [textContent]="'TOTAL_AMOUNT_TO_PAY' | localize"></span>
48758
- <span class="payment-total-pay" [textContent]="amount === 0 ? amount : (amount | coCurrency)"></span>
48759
- </div>
48760
- <div class="payment-input-button-wrapper">
48761
- <div class="payment-input-button">
48762
- <co-payment-to-pay
48763
- [amountToPay]="paymentService.amountToPay"></co-payment-to-pay>
48764
- <div class="payment-to-pay-button">
48765
- <co-button [iconData]="iconCacheService.getIcon(icons.CheckDuotone)" (click)="handlePayment()"
48766
- [disabled]="paymentService.amountToPay === 0"></co-button>
48736
+ <div class="payment-wrapper">
48737
+ <div class="payment-methods-register-wrapper">
48738
+ <div class="payment-methods-wrapper">
48739
+ <div class="payment-methods-header">
48740
+ <span class="payment-header-title" [textContent]="'SELECT' | localize"></span>
48741
+ <!--span class="payment-header-title extra" [textContent]="'FREE' | localize:false"></span-->
48742
+ <span class="payment-header-title" [textContent]="'PAYMENT_METHOD' | localize:false"></span>
48743
+ </div>
48744
+ <div class="payment-methods co-small-scrollbar">
48745
+ <co-loader class="loader" *ngIf="showLoader"></co-loader>
48746
+ <ng-container *ngIf="!showLoader">
48747
+ <co-payment-tile *ngFor="let paymentMethod of paymentMethods; let index = index"
48748
+ [image]="paymentMethod.image"
48749
+ [description]="paymentMethod.payment.description"
48750
+ [selected]="paymentMethodIdx === index"
48751
+ (selectedChange)="paymentMethodSelected(paymentMethod.payment, index)"
48752
+ ></co-payment-tile>
48753
+ </ng-container>
48754
+ </div>
48755
+ </div>
48756
+ <div class="payment-cash-register-wrapper" *ngIf="showCashRegisters">
48757
+ <div class="payment-cash-register-header">
48758
+ <span class="payment-header-title" [textContent]="'SELECT_CASH_REGISTER' | localize"></span>
48759
+ </div>
48760
+ <div class="payment-methods">
48761
+ <co-payment-tile *ngFor="let cashRegister of cashRegisters; let index = index"
48762
+ [icon]="cashRegister.icon"
48763
+ [description]="cashRegister.description"
48764
+ [selected]="cashRegisterIdx === index"
48765
+ (selectedChange)="cashRegisterSelected(cashRegister, index)"
48766
+ ></co-payment-tile>
48767
+ </div>
48767
48768
  </div>
48768
- </div>
48769
- <div class="payment-bookdate" *ngIf="showPaymentDate">
48770
- <co-input-date [(model)]="paymentDate"></co-input-date>
48771
- </div>
48772
- <div class="payment-error-message" *ngIf="paymentService.statusMessage"
48773
- [textContent]="paymentService.statusMessage"></div>
48774
48769
  </div>
48775
- </div>
48770
+ <div class="payment-to-pay-wrapper">
48771
+ <div class="payment-to-pay-total">
48772
+ <div class="payment-to-pay-header">
48773
+ <span class="payment-header-title" [textContent]="'TOTAL_AMOUNT_TO_PAY' | localize"></span>
48774
+ <span class="payment-total-pay" [textContent]="amount === 0 ? amount : (amount | coCurrency)"></span>
48775
+ </div>
48776
+ <div class="payment-input-button-wrapper">
48777
+ <div class="payment-input-button">
48778
+ <co-payment-to-pay
48779
+ [amountToPay]="paymentService.amountToPay"></co-payment-to-pay>
48780
+ <div class="payment-to-pay-button">
48781
+ <co-button
48782
+ [iconData]="iconCacheService.getIcon(icons.CheckDuotone)"
48783
+ [disabled]="paymentService.amountToPay === 0"
48784
+ (click)="handlePayment()">
48785
+ </co-button>
48786
+ </div>
48787
+ </div>
48788
+ <div class="payment-bookdate" *ngIf="showPaymentDate">
48789
+ <co-input-date [(model)]="paymentDate"></co-input-date>
48790
+ </div>
48791
+ <div class="payment-error-message" *ngIf="paymentService.statusMessage"
48792
+ [textContent]="paymentService.statusMessage"></div>
48793
+ </div>
48794
+ </div>
48776
48795
 
48777
- <div class="payment-deposit">
48778
- <co-deposit-payment [branch]="branch" [transactionUuid]="transactionUuid"></co-deposit-payment>
48779
- </div>
48780
- <co-key-pad class="payment-to-pay-keypad" *ngIf="showKeyPad"
48781
- [showValue]="false"
48782
- [emitModelChangeOnEnter]="false"
48783
- [model]="paymentService.amountToPay"
48784
- (modelChange)="handleKeyPadModelChange($event)"
48785
- (enterClick)="handlePayment()"
48786
- ></co-key-pad>
48796
+ <div class="payment-deposit">
48797
+ <co-deposit-payment [branch]="branch" [transactionUuid]="transactionUuid"></co-deposit-payment>
48798
+ </div>
48799
+ <co-key-pad class="payment-to-pay-keypad" *ngIf="showKeyPad"
48800
+ [showValue]="false"
48801
+ [emitModelChangeOnEnter]="false"
48802
+ [model]="paymentService.amountToPay"
48803
+ (modelChange)="handleKeyPadModelChange($event)"
48804
+ (enterClick)="handlePayment()"
48805
+ ></co-key-pad>
48806
+ </div>
48787
48807
  </div>
48788
- </div>
48789
- <co-dialog *ngIf="paymentService.showPspQrCode" (closeClick)="paymentService.showPspQrCode = false">
48790
- <co-payment-qr-code
48791
- [qrCodeImage]="paymentService.qrCodeImage"
48792
- ></co-payment-qr-code>
48793
- </co-dialog>
48808
+ <co-dialog *ngIf="paymentService.showPspQrCode" (closeClick)="paymentService.showPspQrCode = false">
48809
+ <co-payment-qr-code
48810
+ [qrCodeImage]="paymentService.qrCodeImage"
48811
+ ></co-payment-qr-code>
48812
+ </co-dialog>
48794
48813
  `,
48795
48814
  providers: [
48796
48815
  TransactionPaymentService
@@ -51871,6 +51890,7 @@ class TransactionHeaderPopupPaymentComponent extends TransactionHeaderPopupBaseC
51871
51890
  this._paymentSubs.push(this.transactionEventService.transactionPaymentDone.subscribe(() => {
51872
51891
  this._getDepositInfo();
51873
51892
  this._getOutstandingAmounts();
51893
+ this.handleCloseDialog();
51874
51894
  }), this.screenConfigService.configSet.subscribe((configObjects) => this._getObjectConfiguration(configObjects)));
51875
51895
  this.showCashOnDelivery = yield this.transactionService.getInternalParameter(InternalParam.SellDirectlyFromSuppl);
51876
51896
  });
@@ -51902,7 +51922,7 @@ class TransactionHeaderPopupPaymentComponent extends TransactionHeaderPopupBaseC
51902
51922
  this.cashOnDelivery = value;
51903
51923
  }
51904
51924
  showPaymentButton() {
51905
- return this.orderPaymentAnalysis.some(t => t.outstandingAmount > 0) && this.chosenAmountToPay > 0;
51925
+ return this.orderPaymentAnalysis.some(t => t.outstandingAmount !== 0) && this.chosenAmountToPay !== 0;
51906
51926
  }
51907
51927
  openPayment(event) {
51908
51928
  var _a;
@@ -52210,9 +52230,9 @@ TransactionHeaderPopupPaymentComponent.decorators = [
52210
52230
 
52211
52231
  <co-dialog
52212
52232
  class="payment-dialog"
52233
+ *ngIf="showPaymentDialog"
52213
52234
  [modal]="true"
52214
52235
  [headerTemplate]="headerTemplate"
52215
- *ngIf="showPaymentDialog"
52216
52236
  (closeClick)="handleCloseDialog()">
52217
52237
  <ng-template #headerTemplate>
52218
52238
  <div class="co-dialog-wrapper-popup-title">
@@ -52228,8 +52248,8 @@ TransactionHeaderPopupPaymentComponent.decorators = [
52228
52248
  [remainingPayment]="true"
52229
52249
  [currencyId]="transactionInfo.currencyId"
52230
52250
  [doNotFetchAmountToPayForRemaining]="true"
52231
- [showPaymentDate]="true"
52232
- ></co-payment>
52251
+ [showPaymentDate]="true">
52252
+ </co-payment>
52233
52253
  </co-dialog>
52234
52254
  `,
52235
52255
  encapsulation: ViewEncapsulation.None