@colijnit/transaction 262.1.31 → 262.1.32

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.
@@ -355,8 +355,8 @@ import { DateField } from '@colijnit/ioneconnector/build/factory/decorators/date
355
355
  class Version {
356
356
  name = "@colijnit/transaction";
357
357
  description = "Colijn IT transaction package";
358
- symVer = "262.1.31";
359
- publishDate = "7/13/2026, 8:47:17 AM";
358
+ symVer = "262.1.32";
359
+ publishDate = "16-7-2026, 12:54:31";
360
360
  }
361
361
 
362
362
  class CheckoutModuleService extends BaseModuleService {
@@ -6856,6 +6856,7 @@ class TransactionConnectorAdapterService {
6856
6856
  async updatePlanTransportWeek(planTransportWeek) {
6857
6857
  const response = await this.connector.updatePlanTransportWeek(planTransportWeek);
6858
6858
  if (response && response.validationResult && response.validationResult.success) {
6859
+ await this.connector.commit();
6859
6860
  return true;
6860
6861
  }
6861
6862
  else {
@@ -10134,9 +10135,6 @@ class TransactionBaseService extends BaseModuleService {
10134
10135
  this.transactionEventService.transactionCommitted.next(true);
10135
10136
  return this.connector.commit();
10136
10137
  }
10137
- commitGeneral() {
10138
- return this.connector.commit();
10139
- }
10140
10138
  async rollback(refresh = false, force = false) {
10141
10139
  if (!this.transactionLocked) {
10142
10140
  return true;
@@ -15672,58 +15670,58 @@ class TransactionTextLineComponent extends TransactionLineBaseComponent {
15672
15670
  }
15673
15671
  }
15674
15672
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TransactionTextLineComponent, deps: [{ token: OrderLineSetService }, { token: TransactionHeaderService }, { token: TransactionLineService }, { token: TransactionEventService }, { token: IconCacheService }, { token: TransactionScreenConfigurationService }, { token: TransactionImageService }, { token: DictionaryService }, { token: TransactionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
15675
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: TransactionTextLineComponent, isStandalone: false, selector: "co-transaction-text-line", inputs: { activeCategory: "activeCategory" }, outputs: { descriptionDblClick: "descriptionDblClick" }, host: { properties: { "class.co-transaction-text-line": "this.showClass" } }, usesInheritance: true, ngImport: i0, template: `
15676
- @if (transactionLine.color) {
15677
- <div class="color-block" [style.background-color]="transactionLine.color"></div>
15678
- }
15679
- <div class="transaction-line-text" [innerHTML]="transactionLine.text | safeHtml"
15680
- (dblclick)="descriptionDblClick.emit()"></div>
15681
- @if (!preview) {
15682
- <div class="transaction-line-delete">
15683
- <co-icon
15684
- class="delete-icon"
15685
- [iconData]="iconCacheService.getIcon(icons.TrashCanLight)"
15686
- (click)="deleteTransactionLineClick($event)">
15687
- </co-icon>
15688
- @if (showButtons && transactionLine.orderLineSetCode && (activeCategory === category.SalesOrderOverview || activeCategory == category.SalesOrderQuotation)) {
15689
- <co-icon
15690
- class="link-icon"
15691
- [iconData]="iconCacheService.getIcon(icons.LinkSimpleSolid)"
15692
- [class.active]="transactionLine.orderLineSetCode && transactionLine.orderLineSetCode === orderLineSetService.currentOrderLineSetCode"
15693
- (click)="orderLineSetButtonClicked()">
15694
- </co-icon>
15695
- }
15696
- </div>
15697
- }
15673
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: TransactionTextLineComponent, isStandalone: false, selector: "co-transaction-text-line", inputs: { activeCategory: "activeCategory" }, outputs: { descriptionDblClick: "descriptionDblClick" }, host: { properties: { "class.co-transaction-text-line": "this.showClass" } }, usesInheritance: true, ngImport: i0, template: `
15674
+ @if (transactionLine.color) {
15675
+ <div class="color-block" [style.background-color]="transactionLine.color"></div>
15676
+ }
15677
+ <div class="transaction-line-text" [innerHTML]="transactionLine.text | safeHtml"
15678
+ (dblclick)="descriptionDblClick.emit()"></div>
15679
+ @if (!preview) {
15680
+ <div class="transaction-line-delete">
15681
+ <co-icon
15682
+ class="delete-icon"
15683
+ [iconData]="iconCacheService.getIcon(icons.TrashCanLight)"
15684
+ (click)="deleteTransactionLineClick($event)">
15685
+ </co-icon>
15686
+ @if (showButtons && transactionLine.orderLineSetCode && (activeCategory === category.ServiceOrderOverview || activeCategory === category.SalesOrderOverview || activeCategory == category.SalesOrderQuotation)) {
15687
+ <co-icon
15688
+ class="link-icon"
15689
+ [iconData]="iconCacheService.getIcon(icons.LinkSimpleSolid)"
15690
+ [class.active]="transactionLine.orderLineSetCode && transactionLine.orderLineSetCode === orderLineSetService.currentOrderLineSetCode"
15691
+ (click)="orderLineSetButtonClicked()">
15692
+ </co-icon>
15693
+ }
15694
+ </div>
15695
+ }
15698
15696
  `, isInline: true, dependencies: [{ kind: "component", type: i1$1.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "pipe", type: SafeHtmlPipe, name: "safeHtml" }], encapsulation: i0.ViewEncapsulation.None });
15699
15697
  }
15700
15698
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TransactionTextLineComponent, decorators: [{
15701
15699
  type: Component,
15702
15700
  args: [{
15703
15701
  selector: 'co-transaction-text-line',
15704
- template: `
15705
- @if (transactionLine.color) {
15706
- <div class="color-block" [style.background-color]="transactionLine.color"></div>
15707
- }
15708
- <div class="transaction-line-text" [innerHTML]="transactionLine.text | safeHtml"
15709
- (dblclick)="descriptionDblClick.emit()"></div>
15710
- @if (!preview) {
15711
- <div class="transaction-line-delete">
15712
- <co-icon
15713
- class="delete-icon"
15714
- [iconData]="iconCacheService.getIcon(icons.TrashCanLight)"
15715
- (click)="deleteTransactionLineClick($event)">
15716
- </co-icon>
15717
- @if (showButtons && transactionLine.orderLineSetCode && (activeCategory === category.SalesOrderOverview || activeCategory == category.SalesOrderQuotation)) {
15718
- <co-icon
15719
- class="link-icon"
15720
- [iconData]="iconCacheService.getIcon(icons.LinkSimpleSolid)"
15721
- [class.active]="transactionLine.orderLineSetCode && transactionLine.orderLineSetCode === orderLineSetService.currentOrderLineSetCode"
15722
- (click)="orderLineSetButtonClicked()">
15723
- </co-icon>
15724
- }
15725
- </div>
15726
- }
15702
+ template: `
15703
+ @if (transactionLine.color) {
15704
+ <div class="color-block" [style.background-color]="transactionLine.color"></div>
15705
+ }
15706
+ <div class="transaction-line-text" [innerHTML]="transactionLine.text | safeHtml"
15707
+ (dblclick)="descriptionDblClick.emit()"></div>
15708
+ @if (!preview) {
15709
+ <div class="transaction-line-delete">
15710
+ <co-icon
15711
+ class="delete-icon"
15712
+ [iconData]="iconCacheService.getIcon(icons.TrashCanLight)"
15713
+ (click)="deleteTransactionLineClick($event)">
15714
+ </co-icon>
15715
+ @if (showButtons && transactionLine.orderLineSetCode && (activeCategory === category.ServiceOrderOverview || activeCategory === category.SalesOrderOverview || activeCategory == category.SalesOrderQuotation)) {
15716
+ <co-icon
15717
+ class="link-icon"
15718
+ [iconData]="iconCacheService.getIcon(icons.LinkSimpleSolid)"
15719
+ [class.active]="transactionLine.orderLineSetCode && transactionLine.orderLineSetCode === orderLineSetService.currentOrderLineSetCode"
15720
+ (click)="orderLineSetButtonClicked()">
15721
+ </co-icon>
15722
+ }
15723
+ </div>
15724
+ }
15727
15725
  `,
15728
15726
  encapsulation: ViewEncapsulation.None,
15729
15727
  standalone: false
@@ -24166,242 +24164,242 @@ class DeliveryPlanningOverviewTileLineComponent {
24166
24164
  this.deliveryPlanningService.transactionNavigation.next({ transactionNr: transNr, transactionKind: this.order.type });
24167
24165
  }
24168
24166
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DeliveryPlanningOverviewTileLineComponent, deps: [{ token: IconCacheService }, { token: DeliveryPlanningService }], target: i0.ɵɵFactoryTarget.Component });
24169
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: DeliveryPlanningOverviewTileLineComponent, isStandalone: false, selector: "co-delivery-planning-overview-tile-line", inputs: { order: "order", isActive: "isActive", linesActive: "linesActive" }, outputs: { deleteOrderEvent: "deleteOrderEvent", deleteOrderLineEvent: "deleteOrderLineEvent", editOrderEvent: "editOrderEvent", moveOrderUpEvent: "moveOrderUpEvent", moveOrderDownEvent: "moveOrderDownEvent", transactionClick: "transactionClick" }, host: { properties: { "class.co-delivery-planning-overview-tile-line": "this.showClass" } }, ngImport: i0, template: `
24170
- <div class="planning-line-wrapper"
24171
- [class.normal-mode]="isActive"
24172
- [class.active-lines]="linesActive"
24173
- [ngClass]="'color-' + (order?.type || 'unknown')">
24174
- <div class="planning-line-content">
24175
- <div class="planning-line-left">
24176
- <div class="line-expand-icon" (click)="showNormalOrderLines($event)">
24177
- @if (!linesActive) {
24178
- <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronDownRegular)"></co-icon>
24179
- }
24180
- @if (linesActive) {
24181
- <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronUpRegular)"></co-icon>
24182
- }
24183
- </div>
24184
- <div class="line-content-left">
24185
- <div class="line-content-link">
24186
- <co-icon
24187
- [iconData]="iconCacheService.getIcon(icons.DetailView)"
24188
- (click)="handleTransactionNavigationClick($event, order?.transactionNr?.toString())"
24189
- ></co-icon>
24190
- </div>
24191
- <div class="line-content-data">
24192
- <div class="planning-address">
24193
- <span [textContent]="order?.shortAddress"></span>
24194
- </div>
24195
- <div class="planning-relation">
24196
- <span [textContent]="order?.relationName"></span>
24197
- </div>
24198
- </div>
24199
- </div>
24200
- </div>
24201
- <div class="planning-line-right">
24202
- <div class="line-content-right">
24203
- <div class="planning-time" (click)="handleEditOrderEvent(order)">
24204
- <co-icon (click)="handleEditOrderEvent(order)" [iconData]="iconCacheService.getIcon(icons.DetailView)"></co-icon>
24205
- <span [textContent]="(order?.startTime | date: 'HH:mm') + ' - ' + (order?.endTime | date: 'HH:mm')"></span>
24206
- </div>
24207
- <div class="planning-order">
24208
- <co-icon [iconData]="iconCacheService.getIcon(icons.CartShoppingRegular)"></co-icon>
24209
- <span [textContent]="order?.transactionNr"></span>
24210
- </div>
24211
- </div>
24212
- <div class="planning-line-actions">
24213
- <co-icon (click)="handleDeleteOrderClick($event, order)"
24214
- [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"></co-icon>
24215
- </div>
24216
- </div>
24217
- </div>
24218
- @if (linesActive) {
24219
- <div class="order-line-list-wrapper">
24220
- <div class="top-order-lines">
24221
- <span class="products"
24222
- [class.active]="viewMode === 'products'"
24223
- (click)="switchViewMode('products', $event)"
24224
- [textContent]="'PRODUCTS' | localize"></span>
24225
- <span class="tasks"
24226
- [class.active]="viewMode === 'tasks'"
24227
- (click)="switchViewMode('tasks', $event)"
24228
- [textContent]="'TASKS' | localize"></span>
24229
- </div>
24230
- @if (viewMode === 'products') {
24231
- <div class="order-lines-wrapper products">
24232
- <div class="lines-header">
24233
- <span class="desc" [textContent]="'DESCRIPTION' | localize"></span>
24234
- <span class="qty" [textContent]="'QUANTITY' | localize"></span>
24235
- <span class="mnt" [textContent]="'ASSEMBLY' | localize"></span>
24236
- <span class="vlm" [textContent]="'VOLUME' | localize"></span>
24237
- </div>
24238
- @for (line of getPlannedLines(order?.lines); track line) {
24239
- <div class="order-lines">
24240
- <div class="lines-content">
24241
- <span class="desc" [textContent]="line.description"></span>
24242
- <span class="qty" [textContent]="line.amountPlanned"></span>
24243
- <span class="mnt" [textContent]="line.deliveryFactor"></span>
24244
- <span class="vlm" [textContent]="line.volume"></span>
24245
- @if (linesActive || isActive) {
24246
- <co-icon class="remove-line" (click)="handleDeleteOrderLineClick(order, line)"
24247
- [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"></co-icon>
24248
- }
24249
- </div>
24250
- </div>
24251
- }
24252
- </div>
24253
- }
24254
- @if (viewMode === 'tasks') {
24255
- <div class="order-lines-wrapper tasks">
24256
- <div class="lines-header">
24257
- <span class="desc" [textContent]="'DESCRIPTION' | localize"></span>
24258
- <span class="qty" [textContent]="'ID' | localize"></span>
24259
- <span class="mnt" [textContent]="'STATE' | localize"></span>
24260
- <span class="vlm" [textContent]="'DATE' | localize"></span>
24261
- </div>
24262
- @for (task of getPlannedTasks(order?.tasks); track task) {
24263
- <div class="order-lines">
24264
- <div class="lines-content">
24265
- <span class="desc" [textContent]="task.name"></span>
24266
- <span class="qty" [textContent]="task.taskId"></span>
24267
- <span class="mnt" [textContent]="task.state"></span>
24268
- <span class="vlm" [textContent]="task.creationDate"></span>
24269
- </div>
24270
- </div>
24271
- }
24272
- </div>
24273
- }
24274
- </div>
24275
- }
24276
-
24277
- </div>
24278
- @if (linesActive) {
24279
- <div class="reorder-buttons">
24280
- <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronUpRegular)" (click)="handleMoveOrderUp()"></co-icon>
24281
- <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronDownRegular)" (click)="handleMoveOrderDown()"></co-icon>
24282
- </div>
24283
- }
24167
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: DeliveryPlanningOverviewTileLineComponent, isStandalone: false, selector: "co-delivery-planning-overview-tile-line", inputs: { order: "order", isActive: "isActive", linesActive: "linesActive" }, outputs: { deleteOrderEvent: "deleteOrderEvent", deleteOrderLineEvent: "deleteOrderLineEvent", editOrderEvent: "editOrderEvent", moveOrderUpEvent: "moveOrderUpEvent", moveOrderDownEvent: "moveOrderDownEvent", transactionClick: "transactionClick" }, host: { properties: { "class.co-delivery-planning-overview-tile-line": "this.showClass" } }, ngImport: i0, template: `
24168
+ <div class="planning-line-wrapper"
24169
+ [class.normal-mode]="isActive"
24170
+ [class.active-lines]="linesActive"
24171
+ [ngClass]="'color-' + (order?.type || 'unknown')">
24172
+ <div class="planning-line-content">
24173
+ <div class="planning-line-left">
24174
+ <div class="line-expand-icon" (click)="showNormalOrderLines($event)">
24175
+ @if (!linesActive) {
24176
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronDownRegular)"></co-icon>
24177
+ }
24178
+ @if (linesActive) {
24179
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronUpRegular)"></co-icon>
24180
+ }
24181
+ </div>
24182
+ <div class="line-content-left">
24183
+ <div class="line-content-link">
24184
+ <co-icon
24185
+ [iconData]="iconCacheService.getIcon(icons.DetailView)"
24186
+ (click)="handleTransactionNavigationClick($event, order?.transactionNr?.toString())"
24187
+ ></co-icon>
24188
+ </div>
24189
+ <div class="line-content-data">
24190
+ <div class="planning-address">
24191
+ <span [textContent]="order?.shortAddress"></span>
24192
+ </div>
24193
+ <div class="planning-relation">
24194
+ <span [textContent]="order?.relationName"></span>
24195
+ </div>
24196
+ </div>
24197
+ </div>
24198
+ </div>
24199
+ <div class="planning-line-right">
24200
+ <div class="line-content-right">
24201
+ <div class="planning-time" (click)="handleEditOrderEvent(order)">
24202
+ <co-icon (click)="handleEditOrderEvent(order)" [iconData]="iconCacheService.getIcon(icons.DetailView)"></co-icon>
24203
+ <span [textContent]="(order?.startTime | date: 'HH:mm') + ' - ' + (order?.endTime | date: 'HH:mm')"></span>
24204
+ </div>
24205
+ <div class="planning-order">
24206
+ <co-icon [iconData]="iconCacheService.getIcon(icons.CartShoppingRegular)"></co-icon>
24207
+ <span [textContent]="order?.transactionNr"></span>
24208
+ </div>
24209
+ </div>
24210
+ <div class="planning-line-actions">
24211
+ <co-icon (click)="handleDeleteOrderClick($event, order)"
24212
+ [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"></co-icon>
24213
+ </div>
24214
+ </div>
24215
+ </div>
24216
+ @if (linesActive) {
24217
+ <div class="order-line-list-wrapper">
24218
+ <div class="top-order-lines">
24219
+ <span class="products"
24220
+ [class.active]="viewMode === 'products'"
24221
+ (click)="switchViewMode('products', $event)"
24222
+ [textContent]="'PRODUCTS' | localize"></span>
24223
+ <span class="tasks"
24224
+ [class.active]="viewMode === 'tasks'"
24225
+ (click)="switchViewMode('tasks', $event)"
24226
+ [textContent]="'TASKS' | localize"></span>
24227
+ </div>
24228
+ @if (viewMode === 'products') {
24229
+ <div class="order-lines-wrapper products">
24230
+ <div class="lines-header">
24231
+ <span class="desc" [textContent]="'DESCRIPTION' | localize"></span>
24232
+ <span class="qty" [textContent]="'QUANTITY' | localize"></span>
24233
+ <span class="mnt" [textContent]="'ASSEMBLY' | localize"></span>
24234
+ <span class="vlm" [textContent]="'VOLUME' | localize"></span>
24235
+ </div>
24236
+ @for (line of getPlannedLines(order?.lines); track line) {
24237
+ <div class="order-lines">
24238
+ <div class="lines-content">
24239
+ <span class="desc" [textContent]="line.description"></span>
24240
+ <span class="qty" [textContent]="line.amountPlanned"></span>
24241
+ <span class="mnt" [textContent]="line.deliveryFactor"></span>
24242
+ <span class="vlm" [textContent]="line.volume"></span>
24243
+ @if (linesActive || isActive) {
24244
+ <co-icon class="remove-line" (click)="handleDeleteOrderLineClick(order, line)"
24245
+ [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"></co-icon>
24246
+ }
24247
+ </div>
24248
+ </div>
24249
+ }
24250
+ </div>
24251
+ }
24252
+ @if (viewMode === 'tasks') {
24253
+ <div class="order-lines-wrapper tasks">
24254
+ <div class="lines-header">
24255
+ <span class="desc" [textContent]="'DESCRIPTION' | localize"></span>
24256
+ <span class="qty" [textContent]="'ID' | localize"></span>
24257
+ <span class="mnt" [textContent]="'STATE' | localize"></span>
24258
+ <span class="vlm" [textContent]="'DATE' | localize"></span>
24259
+ </div>
24260
+ @for (task of getPlannedTasks(order?.tasks); track task) {
24261
+ <div class="order-lines">
24262
+ <div class="lines-content">
24263
+ <span class="desc" [textContent]="task.name"></span>
24264
+ <span class="qty" [textContent]="task.taskId"></span>
24265
+ <span class="mnt" [textContent]="task.state"></span>
24266
+ <span class="vlm" [textContent]="task.creationDate"></span>
24267
+ </div>
24268
+ </div>
24269
+ }
24270
+ </div>
24271
+ }
24272
+ </div>
24273
+ }
24274
+
24275
+ </div>
24276
+ @if (linesActive) {
24277
+ <div class="reorder-buttons">
24278
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronUpRegular)" (click)="handleMoveOrderUp()"></co-icon>
24279
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronDownRegular)" (click)="handleMoveOrderDown()"></co-icon>
24280
+ </div>
24281
+ }
24284
24282
  `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i1$1.IconComponent, selector: "co-icon", inputs: ["icon", "iconData"] }, { kind: "pipe", type: i2$1.DatePipe, name: "date" }, { kind: "pipe", type: LocalizePipe, name: "localize" }], encapsulation: i0.ViewEncapsulation.None });
24285
24283
  }
24286
24284
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DeliveryPlanningOverviewTileLineComponent, decorators: [{
24287
24285
  type: Component,
24288
24286
  args: [{
24289
24287
  selector: "co-delivery-planning-overview-tile-line",
24290
- template: `
24291
- <div class="planning-line-wrapper"
24292
- [class.normal-mode]="isActive"
24293
- [class.active-lines]="linesActive"
24294
- [ngClass]="'color-' + (order?.type || 'unknown')">
24295
- <div class="planning-line-content">
24296
- <div class="planning-line-left">
24297
- <div class="line-expand-icon" (click)="showNormalOrderLines($event)">
24298
- @if (!linesActive) {
24299
- <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronDownRegular)"></co-icon>
24300
- }
24301
- @if (linesActive) {
24302
- <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronUpRegular)"></co-icon>
24303
- }
24304
- </div>
24305
- <div class="line-content-left">
24306
- <div class="line-content-link">
24307
- <co-icon
24308
- [iconData]="iconCacheService.getIcon(icons.DetailView)"
24309
- (click)="handleTransactionNavigationClick($event, order?.transactionNr?.toString())"
24310
- ></co-icon>
24311
- </div>
24312
- <div class="line-content-data">
24313
- <div class="planning-address">
24314
- <span [textContent]="order?.shortAddress"></span>
24315
- </div>
24316
- <div class="planning-relation">
24317
- <span [textContent]="order?.relationName"></span>
24318
- </div>
24319
- </div>
24320
- </div>
24321
- </div>
24322
- <div class="planning-line-right">
24323
- <div class="line-content-right">
24324
- <div class="planning-time" (click)="handleEditOrderEvent(order)">
24325
- <co-icon (click)="handleEditOrderEvent(order)" [iconData]="iconCacheService.getIcon(icons.DetailView)"></co-icon>
24326
- <span [textContent]="(order?.startTime | date: 'HH:mm') + ' - ' + (order?.endTime | date: 'HH:mm')"></span>
24327
- </div>
24328
- <div class="planning-order">
24329
- <co-icon [iconData]="iconCacheService.getIcon(icons.CartShoppingRegular)"></co-icon>
24330
- <span [textContent]="order?.transactionNr"></span>
24331
- </div>
24332
- </div>
24333
- <div class="planning-line-actions">
24334
- <co-icon (click)="handleDeleteOrderClick($event, order)"
24335
- [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"></co-icon>
24336
- </div>
24337
- </div>
24338
- </div>
24339
- @if (linesActive) {
24340
- <div class="order-line-list-wrapper">
24341
- <div class="top-order-lines">
24342
- <span class="products"
24343
- [class.active]="viewMode === 'products'"
24344
- (click)="switchViewMode('products', $event)"
24345
- [textContent]="'PRODUCTS' | localize"></span>
24346
- <span class="tasks"
24347
- [class.active]="viewMode === 'tasks'"
24348
- (click)="switchViewMode('tasks', $event)"
24349
- [textContent]="'TASKS' | localize"></span>
24350
- </div>
24351
- @if (viewMode === 'products') {
24352
- <div class="order-lines-wrapper products">
24353
- <div class="lines-header">
24354
- <span class="desc" [textContent]="'DESCRIPTION' | localize"></span>
24355
- <span class="qty" [textContent]="'QUANTITY' | localize"></span>
24356
- <span class="mnt" [textContent]="'ASSEMBLY' | localize"></span>
24357
- <span class="vlm" [textContent]="'VOLUME' | localize"></span>
24358
- </div>
24359
- @for (line of getPlannedLines(order?.lines); track line) {
24360
- <div class="order-lines">
24361
- <div class="lines-content">
24362
- <span class="desc" [textContent]="line.description"></span>
24363
- <span class="qty" [textContent]="line.amountPlanned"></span>
24364
- <span class="mnt" [textContent]="line.deliveryFactor"></span>
24365
- <span class="vlm" [textContent]="line.volume"></span>
24366
- @if (linesActive || isActive) {
24367
- <co-icon class="remove-line" (click)="handleDeleteOrderLineClick(order, line)"
24368
- [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"></co-icon>
24369
- }
24370
- </div>
24371
- </div>
24372
- }
24373
- </div>
24374
- }
24375
- @if (viewMode === 'tasks') {
24376
- <div class="order-lines-wrapper tasks">
24377
- <div class="lines-header">
24378
- <span class="desc" [textContent]="'DESCRIPTION' | localize"></span>
24379
- <span class="qty" [textContent]="'ID' | localize"></span>
24380
- <span class="mnt" [textContent]="'STATE' | localize"></span>
24381
- <span class="vlm" [textContent]="'DATE' | localize"></span>
24382
- </div>
24383
- @for (task of getPlannedTasks(order?.tasks); track task) {
24384
- <div class="order-lines">
24385
- <div class="lines-content">
24386
- <span class="desc" [textContent]="task.name"></span>
24387
- <span class="qty" [textContent]="task.taskId"></span>
24388
- <span class="mnt" [textContent]="task.state"></span>
24389
- <span class="vlm" [textContent]="task.creationDate"></span>
24390
- </div>
24391
- </div>
24392
- }
24393
- </div>
24394
- }
24395
- </div>
24396
- }
24397
-
24398
- </div>
24399
- @if (linesActive) {
24400
- <div class="reorder-buttons">
24401
- <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronUpRegular)" (click)="handleMoveOrderUp()"></co-icon>
24402
- <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronDownRegular)" (click)="handleMoveOrderDown()"></co-icon>
24403
- </div>
24404
- }
24288
+ template: `
24289
+ <div class="planning-line-wrapper"
24290
+ [class.normal-mode]="isActive"
24291
+ [class.active-lines]="linesActive"
24292
+ [ngClass]="'color-' + (order?.type || 'unknown')">
24293
+ <div class="planning-line-content">
24294
+ <div class="planning-line-left">
24295
+ <div class="line-expand-icon" (click)="showNormalOrderLines($event)">
24296
+ @if (!linesActive) {
24297
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronDownRegular)"></co-icon>
24298
+ }
24299
+ @if (linesActive) {
24300
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronUpRegular)"></co-icon>
24301
+ }
24302
+ </div>
24303
+ <div class="line-content-left">
24304
+ <div class="line-content-link">
24305
+ <co-icon
24306
+ [iconData]="iconCacheService.getIcon(icons.DetailView)"
24307
+ (click)="handleTransactionNavigationClick($event, order?.transactionNr?.toString())"
24308
+ ></co-icon>
24309
+ </div>
24310
+ <div class="line-content-data">
24311
+ <div class="planning-address">
24312
+ <span [textContent]="order?.shortAddress"></span>
24313
+ </div>
24314
+ <div class="planning-relation">
24315
+ <span [textContent]="order?.relationName"></span>
24316
+ </div>
24317
+ </div>
24318
+ </div>
24319
+ </div>
24320
+ <div class="planning-line-right">
24321
+ <div class="line-content-right">
24322
+ <div class="planning-time" (click)="handleEditOrderEvent(order)">
24323
+ <co-icon (click)="handleEditOrderEvent(order)" [iconData]="iconCacheService.getIcon(icons.DetailView)"></co-icon>
24324
+ <span [textContent]="(order?.startTime | date: 'HH:mm') + ' - ' + (order?.endTime | date: 'HH:mm')"></span>
24325
+ </div>
24326
+ <div class="planning-order">
24327
+ <co-icon [iconData]="iconCacheService.getIcon(icons.CartShoppingRegular)"></co-icon>
24328
+ <span [textContent]="order?.transactionNr"></span>
24329
+ </div>
24330
+ </div>
24331
+ <div class="planning-line-actions">
24332
+ <co-icon (click)="handleDeleteOrderClick($event, order)"
24333
+ [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"></co-icon>
24334
+ </div>
24335
+ </div>
24336
+ </div>
24337
+ @if (linesActive) {
24338
+ <div class="order-line-list-wrapper">
24339
+ <div class="top-order-lines">
24340
+ <span class="products"
24341
+ [class.active]="viewMode === 'products'"
24342
+ (click)="switchViewMode('products', $event)"
24343
+ [textContent]="'PRODUCTS' | localize"></span>
24344
+ <span class="tasks"
24345
+ [class.active]="viewMode === 'tasks'"
24346
+ (click)="switchViewMode('tasks', $event)"
24347
+ [textContent]="'TASKS' | localize"></span>
24348
+ </div>
24349
+ @if (viewMode === 'products') {
24350
+ <div class="order-lines-wrapper products">
24351
+ <div class="lines-header">
24352
+ <span class="desc" [textContent]="'DESCRIPTION' | localize"></span>
24353
+ <span class="qty" [textContent]="'QUANTITY' | localize"></span>
24354
+ <span class="mnt" [textContent]="'ASSEMBLY' | localize"></span>
24355
+ <span class="vlm" [textContent]="'VOLUME' | localize"></span>
24356
+ </div>
24357
+ @for (line of getPlannedLines(order?.lines); track line) {
24358
+ <div class="order-lines">
24359
+ <div class="lines-content">
24360
+ <span class="desc" [textContent]="line.description"></span>
24361
+ <span class="qty" [textContent]="line.amountPlanned"></span>
24362
+ <span class="mnt" [textContent]="line.deliveryFactor"></span>
24363
+ <span class="vlm" [textContent]="line.volume"></span>
24364
+ @if (linesActive || isActive) {
24365
+ <co-icon class="remove-line" (click)="handleDeleteOrderLineClick(order, line)"
24366
+ [iconData]="iconCacheService.getIcon(icons.TrashCanRegular)"></co-icon>
24367
+ }
24368
+ </div>
24369
+ </div>
24370
+ }
24371
+ </div>
24372
+ }
24373
+ @if (viewMode === 'tasks') {
24374
+ <div class="order-lines-wrapper tasks">
24375
+ <div class="lines-header">
24376
+ <span class="desc" [textContent]="'DESCRIPTION' | localize"></span>
24377
+ <span class="qty" [textContent]="'ID' | localize"></span>
24378
+ <span class="mnt" [textContent]="'STATE' | localize"></span>
24379
+ <span class="vlm" [textContent]="'DATE' | localize"></span>
24380
+ </div>
24381
+ @for (task of getPlannedTasks(order?.tasks); track task) {
24382
+ <div class="order-lines">
24383
+ <div class="lines-content">
24384
+ <span class="desc" [textContent]="task.name"></span>
24385
+ <span class="qty" [textContent]="task.taskId"></span>
24386
+ <span class="mnt" [textContent]="task.state"></span>
24387
+ <span class="vlm" [textContent]="task.creationDate"></span>
24388
+ </div>
24389
+ </div>
24390
+ }
24391
+ </div>
24392
+ }
24393
+ </div>
24394
+ }
24395
+
24396
+ </div>
24397
+ @if (linesActive) {
24398
+ <div class="reorder-buttons">
24399
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronUpRegular)" (click)="handleMoveOrderUp()"></co-icon>
24400
+ <co-icon [iconData]="iconCacheService.getIcon(icons.ChevronDownRegular)" (click)="handleMoveOrderDown()"></co-icon>
24401
+ </div>
24402
+ }
24405
24403
  `,
24406
24404
  encapsulation: ViewEncapsulation.None,
24407
24405
  standalone: false
@@ -24621,32 +24619,32 @@ class DeliveryPlanningOverviewTileDropdownComponent {
24621
24619
  this.actionClicked.emit(action);
24622
24620
  }
24623
24621
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DeliveryPlanningOverviewTileDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
24624
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: DeliveryPlanningOverviewTileDropdownComponent, isStandalone: false, selector: "co-delivery-planning-overview-tile-dropdown", outputs: { actionClicked: "actionClicked" }, host: { properties: { "class.co-delivery-planning-overview-tile-dropdown": "this.showClass" } }, ngImport: i0, template: `
24625
- <div class="dropdown-panel">
24626
- <button class="dropdown-action" type="button" (click)="onActionClicked('ORDER_PICKING')">
24627
- <span [textContent]="'ORDER_PICKING' | localize"></span>
24628
- </button>
24629
-
24630
- <button class="dropdown-action" type="button" (click)="onActionClicked('DELIVERY_SLIP')">
24631
- <span [textContent]="'DELIVERY_SLIP' | localize"></span>
24632
- </button>
24633
- </div>
24622
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: DeliveryPlanningOverviewTileDropdownComponent, isStandalone: false, selector: "co-delivery-planning-overview-tile-dropdown", outputs: { actionClicked: "actionClicked" }, host: { properties: { "class.co-delivery-planning-overview-tile-dropdown": "this.showClass" } }, ngImport: i0, template: `
24623
+ <div class="dropdown-panel">
24624
+ <button class="dropdown-action" type="button" (click)="onActionClicked('ORDER_PICKING')">
24625
+ <span [textContent]="'ORDER_PICKING' | localize"></span>
24626
+ </button>
24627
+
24628
+ <button class="dropdown-action" type="button" (click)="onActionClicked('DELIVERY_SLIP')">
24629
+ <span [textContent]="'DELIVERY_SLIP' | localize"></span>
24630
+ </button>
24631
+ </div>
24634
24632
  `, isInline: true, dependencies: [{ kind: "pipe", type: LocalizePipe, name: "localize" }], encapsulation: i0.ViewEncapsulation.None });
24635
24633
  }
24636
24634
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DeliveryPlanningOverviewTileDropdownComponent, decorators: [{
24637
24635
  type: Component,
24638
24636
  args: [{
24639
24637
  selector: 'co-delivery-planning-overview-tile-dropdown',
24640
- template: `
24641
- <div class="dropdown-panel">
24642
- <button class="dropdown-action" type="button" (click)="onActionClicked('ORDER_PICKING')">
24643
- <span [textContent]="'ORDER_PICKING' | localize"></span>
24644
- </button>
24645
-
24646
- <button class="dropdown-action" type="button" (click)="onActionClicked('DELIVERY_SLIP')">
24647
- <span [textContent]="'DELIVERY_SLIP' | localize"></span>
24648
- </button>
24649
- </div>
24638
+ template: `
24639
+ <div class="dropdown-panel">
24640
+ <button class="dropdown-action" type="button" (click)="onActionClicked('ORDER_PICKING')">
24641
+ <span [textContent]="'ORDER_PICKING' | localize"></span>
24642
+ </button>
24643
+
24644
+ <button class="dropdown-action" type="button" (click)="onActionClicked('DELIVERY_SLIP')">
24645
+ <span [textContent]="'DELIVERY_SLIP' | localize"></span>
24646
+ </button>
24647
+ </div>
24650
24648
  `,
24651
24649
  standalone: false,
24652
24650
  encapsulation: ViewEncapsulation.None
@@ -26843,8 +26841,7 @@ class DeliveryPlanningMainComponent {
26843
26841
  this._deliveryPlanningService.deletingOrder.dateResetNeeded = true;
26844
26842
  await this._transactionConn.restoreDeliverySettings([this._deliveryPlanningService.deletingOrder]);
26845
26843
  }
26846
- if (this._transaction.currentTransaction.transactionInfo.id) {
26847
- await this._transaction.commit();
26844
+ if (this._transaction.currentTransaction.transactionInfo.id && this._deliveryPlanningService.currentPlanningMode === DeliveryPlanningModes.Transaction) {
26848
26845
  await this._transaction.getTransactionById(this._transaction.currentTransaction?.transactionInfo?.id);
26849
26846
  this._transaction.currentPlanOrder = await this._transaction.getPlanOrder(this._transaction.currentTransaction.transactionInfo.id);
26850
26847
  }
@@ -26859,7 +26856,6 @@ class DeliveryPlanningMainComponent {
26859
26856
  }
26860
26857
  }
26861
26858
  this._changeDetector.detectChanges();
26862
- await this._transactionBaseService.commitGeneral();
26863
26859
  if (updateData.action === DeliveryPlanningUpdateActions.DeleteOrderReplan && updateData.resolve) {
26864
26860
  updateData.resolve();
26865
26861
  }
@@ -57116,15 +57112,13 @@ class TransactionLineConfirmedDeliveryDateButtonComponent extends TransactionLin
57116
57112
  }
57117
57113
  }
57118
57114
  _checkDates() {
57119
- if (this.transactionInfo && this.transactionLine && this.confirmedDeliveryDate) {
57120
- if (this.transactionInfo.allowPartialDelivery) {
57121
- this.isConfirmedDateLater = this.confirmedDeliveryDate >= this.transactionLine.deliveryDate;
57122
- }
57123
- else {
57124
- this.isConfirmedDateLater = this.confirmedDeliveryDate >= this.transactionInfo.deliveryDate;
57125
- }
57126
- this.changeDetector.detectChanges();
57115
+ if (!this.transactionInfo || !this.transactionLine || !this.confirmedDeliveryDate) {
57116
+ return;
57127
57117
  }
57118
+ const confirmedDeliveryDate = new Date(this.confirmedDeliveryDate);
57119
+ const deliveryDate = this.transactionInfo.allowPartialDelivery ? new Date(this.transactionLine.deliveryDate) : new Date(this.transactionInfo.deliveryDate);
57120
+ this.isConfirmedDateLater = confirmedDeliveryDate.getTime() > deliveryDate.getTime();
57121
+ this.changeDetector.detectChanges();
57128
57122
  }
57129
57123
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TransactionLineConfirmedDeliveryDateButtonComponent, deps: [{ token: TransactionHeaderService }, { token: TransactionLineService }, { token: TransactionEventService }, { token: TransactionService }, { token: IconCacheService }, { token: TransactionScreenConfigurationService }, { token: DictionaryService }, { token: TransactionImageService }, { token: i0.ChangeDetectorRef }, { token: i1$1.OverlayService }], target: i0.ɵɵFactoryTarget.Component });
57130
57124
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: TransactionLineConfirmedDeliveryDateButtonComponent, isStandalone: false, selector: "co-transaction-line-confirmed-delivery-date-button", inputs: { inputLabel: "inputLabel" }, outputs: { showConfirmedDeliveryDateChange: "showConfirmedDeliveryDateChange" }, host: { properties: { "class.co-transaction-line-confirmed-delivery-date-button": "this.showClass" } }, providers: [
@@ -57148,7 +57142,7 @@ class TransactionLineConfirmedDeliveryDateButtonComponent extends TransactionLin
57148
57142
  [rightIconData]="iconCacheService.getIcon(icons.CalendarDayRegular)"
57149
57143
  ></co-transaction-button>
57150
57144
  </div>
57151
-
57145
+
57152
57146
  `, isInline: true, dependencies: [{ kind: "component", type: TransactionButtonComponent, selector: "co-transaction-button", inputs: ["label", "title", "statusColor", "readonly", "hidden", "forceReadonly", "iconData", "rightIconData", "showCheckMarkLoader", "checkMarkOverlayVisible", "inputLabel", "insideLabel"], outputs: ["iconClicked"] }, { kind: "component", type: TransactionLineLabelComponent, selector: "co-transaction-line-label", inputs: ["insideLabel"] }, { kind: "pipe", type: i2$1.DatePipe, name: "date" }, { kind: "pipe", type: LocalizePipe, name: "localize" }], encapsulation: i0.ViewEncapsulation.None });
57153
57147
  }
57154
57148
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TransactionLineConfirmedDeliveryDateButtonComponent, decorators: [{
@@ -57170,7 +57164,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
57170
57164
  [rightIconData]="iconCacheService.getIcon(icons.CalendarDayRegular)"
57171
57165
  ></co-transaction-button>
57172
57166
  </div>
57173
-
57167
+
57174
57168
  `,
57175
57169
  providers: [
57176
57170
  OverlayService,
@@ -88553,6 +88547,7 @@ class TransactionInternalComponent {
88553
88547
  if (value) {
88554
88548
  this._transaction = value;
88555
88549
  }
88550
+ this._fetchPlanOrderIfNeeded();
88556
88551
  }
88557
88552
  get transaction() {
88558
88553
  return this._transaction;
@@ -88561,9 +88556,7 @@ class TransactionInternalComponent {
88561
88556
  showViewModeButtons = true;
88562
88557
  set transactionPlanning(value) {
88563
88558
  this._transactionPlanning = value;
88564
- if (value) {
88565
- this.activeCategory = TransactionTypeCategory.SalesOrderPlanning;
88566
- }
88559
+ this._fetchPlanOrderIfNeeded();
88567
88560
  }
88568
88561
  get transactionPlanning() {
88569
88562
  return this._transactionPlanning;
@@ -88762,7 +88755,9 @@ class TransactionInternalComponent {
88762
88755
  this.service.commitAndRefreshTransaction();
88763
88756
  }));
88764
88757
  this.screenWidth = window.innerWidth;
88765
- if (this.resetActiveRubric) {
88758
+ //transactionPlanning is only ever set when we are working within the planning module.
88759
+ //We should never be able to switch to another tab in that mode.
88760
+ if (this.resetActiveRubric && !this.transactionPlanning) {
88766
88761
  this._transactionBaseService.setDefaultActiveRubricFromTransactionKind();
88767
88762
  }
88768
88763
  this.kassaPersnr = await this.service.getInternalParameter(InternalParam.KassaPersnr);
@@ -89039,6 +89034,25 @@ class TransactionInternalComponent {
89039
89034
  this.showSalesPersonInput = false;
89040
89035
  return true;
89041
89036
  }
89037
+ //A special method necessary to ensure we correctly fetch the PlanOrder object when we summon the transaction component within the palnning module.
89038
+ //Not ideal but necessary until we have our new middletier planning code set up and are no longer dependent on workarounds for old plsql code.
89039
+ _fetchPlanOrderIfNeeded() {
89040
+ //Check if we have an order for which we can plan.
89041
+ if (this.transaction.transactionInfo.id) {
89042
+ //if we are in the specific transaction display inside planning module mode and there is an active reason to load the planOrder, then do so.
89043
+ if (this.transactionPlanning && ((!this.service.currentPlanOrder.transId) || (this.service.currentPlanOrder.transId !== this.transaction.transactionInfo.id))) {
89044
+ this._transactionConnectorService.getPlanOrder(this.transaction.transactionInfo.id).then((planOrder) => {
89045
+ this.service.currentPlanOrder = planOrder;
89046
+ this._transactionEventService.newPlanOrderEvent.next();
89047
+ this.checkPreferredPlanning();
89048
+ });
89049
+ }
89050
+ }
89051
+ else {
89052
+ //No transId, no planning possible, reset the PlanOrder to reduce the chance of lingering data causing issues.
89053
+ this.service.currentPlanOrder = new PlanOrder();
89054
+ }
89055
+ }
89042
89056
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TransactionInternalComponent, deps: [{ token: IconCacheService }, { token: TransactionService }, { token: DeliveryPlanningService }, { token: TransactionConnectorService }, { token: TransactionEventService }, { token: TransactionScreenConfigurationService }, { token: TransactionDialogService }, { token: PurchaseConfirmationService }, { token: TransactionBaseService }, { token: i0.ChangeDetectorRef }, { token: TransactionHeaderService }, { token: i1$1.OverlayService }, { token: LineSelectionService }], target: i0.ɵɵFactoryTarget.Component });
89043
89057
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: TransactionInternalComponent, isStandalone: false, selector: "co-transaction-internal", inputs: { confirmationAnalysisId: "confirmationAnalysisId", posOrderData: "posOrderData", transaction: "transaction", showHeader: "showHeader", showViewModeButtons: "showViewModeButtons", transactionPlanning: "transactionPlanning", customerPortal: "customerPortal", resetActiveRubric: "resetActiveRubric", showQuickAccess: "showQuickAccess", showButtonBar: "showButtonBar" }, outputs: { serviceRequested: "serviceRequested" }, host: { listeners: { "window:resize": "onResize($event)" }, properties: { "class.show-quick-access": "this.showQuickAccess", "class.show-button-bar": "this.showButtonBar", "class.co-transaction-internal": "this.showClass" } }, providers: [
89044
89058
  TransactionHeaderService,
@@ -94026,6 +94040,7 @@ class TransactionQuickAccessPlanningComponent extends TransactionHeaderBaseCompo
94026
94040
  changeDetector;
94027
94041
  _connector;
94028
94042
  _deliveryPlanningService;
94043
+ _dialogService;
94029
94044
  sendDocumentsComponent;
94030
94045
  buttonType = AppPopupButtonType;
94031
94046
  showLspPopup = false;
@@ -94040,7 +94055,7 @@ class TransactionQuickAccessPlanningComponent extends TransactionHeaderBaseCompo
94040
94055
  showClass() {
94041
94056
  return true;
94042
94057
  }
94043
- constructor(transactionHeaderService, transactionEventService, iconCacheService, screenConfigService, imageService, dictionaryService, transactionService, changeDetector, _connector, _deliveryPlanningService) {
94058
+ constructor(transactionHeaderService, transactionEventService, iconCacheService, screenConfigService, imageService, dictionaryService, transactionService, changeDetector, _connector, _deliveryPlanningService, _dialogService) {
94044
94059
  super(transactionHeaderService, transactionEventService, iconCacheService, screenConfigService, imageService, dictionaryService, transactionService, changeDetector);
94045
94060
  this.transactionHeaderService = transactionHeaderService;
94046
94061
  this.transactionEventService = transactionEventService;
@@ -94052,6 +94067,7 @@ class TransactionQuickAccessPlanningComponent extends TransactionHeaderBaseCompo
94052
94067
  this.changeDetector = changeDetector;
94053
94068
  this._connector = _connector;
94054
94069
  this._deliveryPlanningService = _deliveryPlanningService;
94070
+ this._dialogService = _dialogService;
94055
94071
  }
94056
94072
  ngOnInit() {
94057
94073
  super.ngOnInit();
@@ -94085,10 +94101,15 @@ class TransactionQuickAccessPlanningComponent extends TransactionHeaderBaseCompo
94085
94101
  }
94086
94102
  }
94087
94103
  async openPlanningSidePanel() {
94088
- if (this.transactionService.currentTransaction.transactionInfo.id && this.transactionService.currentPlanOrder) {
94089
- this._deliveryPlanningService.planOrderDate = this.transactionService.currentPlanOrder.deliveryDate;
94104
+ if (!this.transactionService.transactionLocked) {
94105
+ if (this.transactionService.currentTransaction.transactionInfo.id && this.transactionService.currentPlanOrder) {
94106
+ this._deliveryPlanningService.planOrderDate = this.transactionService.currentPlanOrder.deliveryDate;
94107
+ }
94108
+ this.transactionEventService.openSidePanel.next(new TransactionLineInfo());
94109
+ }
94110
+ else {
94111
+ await this._dialogService.showInformation('MESSAGE_SAVE_TRANSACTION_FIRST', true);
94090
94112
  }
94091
- this.transactionEventService.openSidePanel.next(new TransactionLineInfo());
94092
94113
  }
94093
94114
  allowPartialDelivery() {
94094
94115
  if (this.transactionInfo) {
@@ -94123,7 +94144,7 @@ class TransactionQuickAccessPlanningComponent extends TransactionHeaderBaseCompo
94123
94144
  handleClose() {
94124
94145
  this.showLspPopup = false;
94125
94146
  }
94126
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TransactionQuickAccessPlanningComponent, deps: [{ token: TransactionHeaderService }, { token: TransactionEventService }, { token: IconCacheService }, { token: TransactionScreenConfigurationService }, { token: TransactionImageService }, { token: DictionaryService }, { token: TransactionService }, { token: i0.ChangeDetectorRef }, { token: TransactionConnectorService }, { token: DeliveryPlanningService }], target: i0.ɵɵFactoryTarget.Component });
94147
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: TransactionQuickAccessPlanningComponent, deps: [{ token: TransactionHeaderService }, { token: TransactionEventService }, { token: IconCacheService }, { token: TransactionScreenConfigurationService }, { token: TransactionImageService }, { token: DictionaryService }, { token: TransactionService }, { token: i0.ChangeDetectorRef }, { token: TransactionConnectorService }, { token: DeliveryPlanningService }, { token: DialogService }], target: i0.ɵɵFactoryTarget.Component });
94127
94148
  static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: TransactionQuickAccessPlanningComponent, isStandalone: false, selector: "co-transaction-quick-access-planning", host: { properties: { "class.co-transaction-quick-access-planning": "this.showClass" } }, viewQueries: [{ propertyName: "sendDocumentsComponent", first: true, predicate: TransactionSendDocumentsComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: `
94128
94149
  <div class="planning-buttons">
94129
94150
  <span class="planning-lsp-button" [class.selected]="lspMode" (click)="toggleLspMode()"><co-icon
@@ -94196,7 +94217,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
94196
94217
  encapsulation: ViewEncapsulation.None,
94197
94218
  standalone: false
94198
94219
  }]
94199
- }], ctorParameters: () => [{ type: TransactionHeaderService }, { type: TransactionEventService }, { type: IconCacheService }, { type: TransactionScreenConfigurationService }, { type: TransactionImageService }, { type: DictionaryService }, { type: TransactionService }, { type: i0.ChangeDetectorRef }, { type: TransactionConnectorService }, { type: DeliveryPlanningService }], propDecorators: { sendDocumentsComponent: [{
94220
+ }], ctorParameters: () => [{ type: TransactionHeaderService }, { type: TransactionEventService }, { type: IconCacheService }, { type: TransactionScreenConfigurationService }, { type: TransactionImageService }, { type: DictionaryService }, { type: TransactionService }, { type: i0.ChangeDetectorRef }, { type: TransactionConnectorService }, { type: DeliveryPlanningService }, { type: DialogService }], propDecorators: { sendDocumentsComponent: [{
94200
94221
  type: ViewChild,
94201
94222
  args: [TransactionSendDocumentsComponent]
94202
94223
  }], showClass: [{