@colijnit/transaction 12.1.88 → 12.1.89
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.
- package/bundles/colijnit-transaction.umd.js +2606 -2097
- package/bundles/colijnit-transaction.umd.js.map +1 -1
- package/colijnit-transaction.d.ts +313 -306
- package/colijnit-transaction.metadata.json +1 -1
- package/esm2015/colijnit-transaction.js +314 -307
- package/esm2015/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +11 -9
- package/esm2015/lib/component/core/base/transaction-base.component.js +11 -1
- package/esm2015/lib/component/core/base/transaction-filter-base.component.js +1 -8
- package/esm2015/lib/component/search/search-header-buttons/search-header-buttons.component.js +6 -3
- package/esm2015/lib/component/search/search.component.js +5 -2
- package/esm2015/lib/component/transaction/transaction.component.js +10 -28
- package/esm2015/lib/component/transaction/transaction.module.js +5 -3
- package/esm2015/lib/component/transaction-allocate-goods-history/transaction-allocate-goods-history.component.js +8 -34
- package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-purchase-confirmation-button-bar-button.component.js +39 -0
- package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-purchase-receive-goods-button-bar-button.component.js +39 -0
- package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-allocation-button-bar-button.component.js +39 -0
- package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-delivery-button-bar-button.component.js +39 -0
- package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-invoice-button-bar-button.component.js +39 -0
- package/esm2015/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-purchase-button-bar-button.component.js +3 -3
- package/esm2015/lib/component/transaction-button-bar/transaction-button-bar.module.js +18 -3
- package/esm2015/lib/component/transaction-card/transaction-card/transaction-card.component.js +1 -2
- package/esm2015/lib/component/transaction-card/transaction-card-purchase-overview/transaction-card-purchase-overview.component.js +1 -2
- package/esm2015/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.js +14 -19
- package/esm2015/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.js +20 -49
- package/esm2015/lib/component/transaction-grid/transaction-available-stock-grid/transaction-available-stock-grid.component.js +8 -33
- package/esm2015/lib/component/transaction-line/transaction-goods-allocation-line/transaction-goods-allocation-line.component.js +24 -42
- package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.component.js +87 -0
- package/esm2015/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.module.js +36 -0
- package/esm2015/lib/component/transaction-line/transaction-line/transaction-line.component.js +2 -16
- package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.js +23 -59
- package/esm2015/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line.component.js +1 -2
- package/esm2015/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.js +24 -32
- package/esm2015/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.component.js +99 -0
- package/esm2015/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.module.js +41 -0
- package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.component.js +41 -53
- package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.js +5 -12
- package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.module.js +4 -2
- package/esm2015/lib/component/transaction-line-fields/transaction-line-warehouse-location.component.js +1 -1
- package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-confirmed-delivery-date.component.js +3 -1
- package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-confirmed-price.component.js +7 -3
- package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-gross-order-price.component.js +7 -3
- package/esm2015/lib/component/transaction-line-fields/transaction-purchase-portal-line-net-order-price.component.js +7 -3
- package/esm2015/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.component.js +173 -0
- package/esm2015/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.module.js +30 -0
- package/esm2015/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.component.js +223 -0
- package/esm2015/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.module.js +34 -0
- package/esm2015/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.component.js +175 -0
- package/esm2015/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.module.js +28 -0
- package/esm2015/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.js +6 -22
- package/esm2015/lib/component/transaction-line-side-panel/transaction-line-side-panel.module.js +1 -1
- package/esm2015/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.js +7 -50
- package/esm2015/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.module.js +5 -3
- package/esm2015/lib/component/transaction-line-side-panel-sales/transaction-line-side-panel-sales.component.js +7 -48
- package/esm2015/lib/component/transaction-line-side-panel-sales/transaction-line-side-panel-sales.module.js +4 -4
- package/esm2015/lib/component/transaction-line-statusbar/transaction-line-statusbar.component.js +11 -9
- package/esm2015/lib/component/transaction-lines/transaction-lines.component.js +12 -38
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access/transaction-quick-access.module.js +4 -2
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-goods-allocation/transaction-quick-access-goods-allocation.component.js +5 -7
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.component.js +128 -0
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.module.js +27 -0
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-confirmation/transaction-quick-access-order-confirmation.component.js +3 -9
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/transaction-quick-access-order-delivery.component.js +30 -22
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.js +35 -45
- package/esm2015/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.js +8 -35
- package/esm2015/lib/component/transaction-search/service/transaction-search.service.js +1 -1
- package/esm2015/lib/component/transaction-search/transaction-filter/transaction-filter/transaction-filter.component.js +7 -12
- package/esm2015/lib/component/transaction-search/transaction-search-grid/transaction-search-grid/transaction-search-grid.component.js +4 -12
- package/esm2015/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.js +1 -4
- package/esm2015/lib/component/transaction-search/transaction-search-tile/transaction-search-tile/transaction-search-tile.component.js +3 -11
- package/esm2015/lib/component/transaction-search/transaction-search.component.js +5 -16
- package/esm2015/lib/res/dictionary/dictionaries.js +3 -3
- package/esm2015/lib/service/pending-reason.service.js +176 -10
- package/esm2015/lib/service/transaction-connector-adapter.service.js +82 -1
- package/esm2015/lib/service/transaction-connector.service.js +34 -1
- package/esm2015/lib/service/transaction-event.service.js +18 -4
- package/esm2015/lib/service/transaction-mapping.service.js +16 -9
- package/esm2015/lib/service/transaction.service.js +216 -79
- package/fesm2015/colijnit-transaction.js +2361 -1863
- package/fesm2015/colijnit-transaction.js.map +1 -1
- package/lib/component/core/base/transaction-base.component.d.ts +3 -1
- package/lib/component/core/base/transaction-filter-base.component.d.ts +0 -3
- package/lib/component/search/search-header-buttons/search-header-buttons.component.d.ts +1 -1
- package/lib/component/search/search.component.d.ts +1 -0
- package/lib/component/transaction/transaction.component.d.ts +1 -1
- package/lib/component/transaction-allocate-goods-history/transaction-allocate-goods-history.component.d.ts +4 -12
- package/lib/component/transaction-button-bar/style/_layout.scss +6 -1
- package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-purchase-confirmation-button-bar-button.component.d.ts +12 -0
- package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-purchase-receive-goods-button-bar-button.component.d.ts +12 -0
- package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-allocation-button-bar-button.component.d.ts +12 -0
- package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-delivery-button-bar-button.component.d.ts +12 -0
- package/lib/component/transaction-button-bar/transaction-button-bar-button/transaction-sales-invoice-button-bar-button.component.d.ts +12 -0
- package/lib/component/transaction-card/transaction-card/transaction-card.component.d.ts +0 -1
- package/lib/component/transaction-card/transaction-card-purchase-overview/transaction-card-purchase-overview.component.d.ts +0 -1
- package/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.d.ts +4 -10
- package/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.d.ts +5 -16
- package/lib/component/transaction-grid/transaction-available-stock-grid/transaction-available-stock-grid.component.d.ts +4 -20
- package/lib/component/transaction-line/transaction-goods-allocation-line/transaction-goods-allocation-line.component.d.ts +1 -8
- package/lib/component/transaction-line/transaction-invoice-line/style/_layout.scss +44 -0
- package/lib/component/transaction-line/transaction-invoice-line/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line/transaction-invoice-line/style/_theme.scss +4 -0
- package/lib/component/{transaction-grid/transaction-received-goods-grid → transaction-line/transaction-invoice-line}/style/material.scss +0 -0
- package/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.component.d.ts +16 -0
- package/lib/component/transaction-line/transaction-invoice-line/transaction-invoice-line.module.d.ts +2 -0
- package/lib/component/transaction-line/transaction-line/transaction-line.component.d.ts +0 -1
- package/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.d.ts +1 -8
- package/lib/component/transaction-line/transaction-purchase-line/transaction-purchase-line.component.d.ts +0 -1
- package/lib/component/transaction-line/transaction-purchase-order-line/transaction-purchase-order-line.component.d.ts +1 -11
- package/lib/component/transaction-line/transaction-purchase-overview-line/style/_layout.scss +7 -0
- package/lib/component/transaction-line/transaction-purchase-overview-line/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line/transaction-purchase-overview-line/style/_theme.scss +4 -0
- package/lib/component/transaction-line/transaction-purchase-overview-line/style/material.scss +4 -0
- package/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.component.d.ts +20 -0
- package/lib/component/transaction-line/transaction-purchase-overview-line/transaction-purchase-overview-line.module.d.ts +2 -0
- package/lib/component/transaction-line/transaction-receive-goods-line/transaction-receive-goods-line.component.d.ts +8 -11
- package/lib/component/transaction-line-fields/transaction-line-warehouse-location-button.component.d.ts +1 -4
- package/lib/component/transaction-line-fields/transaction-purchase-portal-line-confirmed-price.component.d.ts +1 -0
- package/lib/component/transaction-line-fields/transaction-purchase-portal-line-gross-order-price.component.d.ts +1 -0
- package/lib/component/transaction-line-fields/transaction-purchase-portal-line-net-order-price.component.d.ts +1 -0
- package/lib/component/transaction-line-purchase-confirmation/style/_layout.scss +88 -0
- package/lib/component/transaction-line-purchase-confirmation/style/_material-definition.scss +4 -0
- package/lib/component/transaction-line-purchase-confirmation/style/_theme.scss +4 -0
- package/lib/component/transaction-line-purchase-confirmation/style/material.scss +5 -0
- package/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.component.d.ts +32 -0
- package/lib/component/transaction-line-purchase-confirmation/transaction-line-purchase-confirmation.module.d.ts +2 -0
- package/lib/component/transaction-line-purchase-receive-goods/style/_layout.scss +71 -0
- package/lib/component/{transaction-grid/transaction-received-goods-grid → transaction-line-purchase-receive-goods}/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line-purchase-receive-goods/style/_theme.scss +4 -0
- package/lib/component/{transaction-side-panel-edit-request-details → transaction-line-purchase-receive-goods}/style/material.scss +0 -0
- package/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.component.d.ts +39 -0
- package/lib/component/transaction-line-purchase-receive-goods/transaction-line-purchase-receive-goods.module.d.ts +2 -0
- package/lib/component/transaction-line-sales-allocation/style/_layout.scss +71 -0
- package/lib/component/transaction-line-sales-allocation/style/_material-definition.scss +0 -0
- package/lib/component/transaction-line-sales-allocation/style/_theme.scss +4 -0
- package/lib/component/transaction-line-sales-allocation/style/material.scss +4 -0
- package/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.component.d.ts +31 -0
- package/lib/component/transaction-line-sales-allocation/transaction-line-sales-allocation.module.d.ts +2 -0
- package/lib/component/transaction-line-side-panel/style/material.scss +3 -1
- package/lib/component/transaction-line-side-panel/transaction-line-side-panel.component.d.ts +1 -5
- package/lib/component/transaction-line-side-panel-purchase/style/material.scss +2 -1
- package/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.d.ts +0 -1
- package/lib/component/transaction-line-side-panel-sales/style/material.scss +1 -0
- package/lib/component/transaction-line-side-panel-sales/transaction-line-side-panel-sales.component.d.ts +2 -15
- package/lib/component/transaction-lines/style/material.scss +2 -0
- package/lib/component/transaction-lines/transaction-lines.component.d.ts +1 -8
- package/lib/component/transaction-navigation-button/style/_layout.scss +1 -1
- package/lib/component/transaction-navigation-button/style/_theme.scss +1 -1
- package/lib/component/transaction-quick-access/transaction-quick-access/style/material.scss +1 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-goods-allocation/transaction-quick-access-goods-allocation.component.d.ts +1 -3
- package/lib/component/transaction-quick-access/transaction-quick-access-invoice/style/_layout.scss +12 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-invoice/style/_material-definition.scss +0 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-invoice/style/_theme.scss +4 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-invoice/style/material.scss +4 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.component.d.ts +33 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-invoice/transaction-quick-access-invoice.module.d.ts +2 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-order-confirmation/transaction-quick-access-order-confirmation.component.d.ts +0 -1
- package/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/transaction-quick-access-order-delivery.component.d.ts +5 -8
- package/lib/component/transaction-quick-access/transaction-quick-access-received-goods/transaction-quick-access-received-goods.component.d.ts +6 -19
- package/lib/component/transaction-receiving-goods-history/transaction-receiving-goods-history.component.d.ts +3 -10
- package/lib/component/transaction-search/service/transaction-search.service.d.ts +4 -2
- package/lib/component/transaction-search/transaction-filter/transaction-filter/transaction-filter.component.d.ts +3 -6
- package/lib/component/transaction-search/transaction-search-grid/transaction-search-grid/transaction-search-grid.component.d.ts +0 -4
- package/lib/component/transaction-search/transaction-search-result/transaction-search-result.component.d.ts +0 -2
- package/lib/component/transaction-search/transaction-search-tile/transaction-search-tile/transaction-search-tile.component.d.ts +0 -4
- package/lib/component/transaction-search/transaction-search.component.d.ts +0 -4
- package/lib/res/dictionary/dictionaries.d.ts +8 -0
- package/lib/service/pending-reason.service.d.ts +28 -0
- package/lib/service/transaction-connector-adapter.service.d.ts +9 -0
- package/lib/service/transaction-connector.service.d.ts +9 -0
- package/lib/service/transaction-event.service.d.ts +17 -8
- package/lib/service/transaction.service.d.ts +18 -13
- package/package.json +2 -2
- package/esm2015/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.component.js +0 -155
- package/esm2015/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.module.js +0 -34
- package/esm2015/lib/component/transaction-line/transaction-goods-allocation-line/service/transaction-allocate-goods.service.js +0 -63
- package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/service/transaction-order-delivery.service.js +0 -72
- package/esm2015/lib/component/transaction-line/transaction-receive-goods-line/service/transaction-receive-goods.service.js +0 -68
- package/esm2015/lib/component/transaction-side-panel-edit-request-details/components/allocation-request.component.js +0 -139
- package/esm2015/lib/component/transaction-side-panel-edit-request-details/components/receive-goods-request.component.js +0 -194
- package/esm2015/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.component.js +0 -51
- package/esm2015/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.module.js +0 -35
- package/esm2015/lib/model/extended-transaction-line-view-model.js +0 -4
- package/esm2015/lib/model/received-goods-view-model.js +0 -11
- package/lib/component/transaction-grid/transaction-received-goods-grid/style/_layout.scss +0 -17
- package/lib/component/transaction-grid/transaction-received-goods-grid/style/_theme.scss +0 -6
- package/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.component.d.ts +0 -37
- package/lib/component/transaction-grid/transaction-received-goods-grid/transaction-received-goods-grid.module.d.ts +0 -2
- package/lib/component/transaction-line/transaction-goods-allocation-line/service/transaction-allocate-goods.service.d.ts +0 -12
- package/lib/component/transaction-line/transaction-order-delivery-line/service/transaction-order-delivery.service.d.ts +0 -17
- package/lib/component/transaction-line/transaction-receive-goods-line/service/transaction-receive-goods.service.d.ts +0 -19
- package/lib/component/transaction-side-panel-edit-request-details/components/allocation-request.component.d.ts +0 -28
- package/lib/component/transaction-side-panel-edit-request-details/components/receive-goods-request.component.d.ts +0 -43
- package/lib/component/transaction-side-panel-edit-request-details/style/_layout.scss +0 -133
- package/lib/component/transaction-side-panel-edit-request-details/style/_material-definition.scss +0 -2
- package/lib/component/transaction-side-panel-edit-request-details/style/_theme.scss +0 -4
- package/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.component.d.ts +0 -15
- package/lib/component/transaction-side-panel-edit-request-details/transaction-side-panel-edit-request-details.module.d.ts +0 -2
- package/lib/model/extended-transaction-line-view-model.d.ts +0 -11
- package/lib/model/received-goods-view-model.d.ts +0 -10
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Component, HostBinding, ViewEncapsulation } from "@angular/core";
|
|
3
|
+
import { TransactionBaseComponent } from "../core/base/transaction-base.component";
|
|
4
|
+
import { TransactionTypeCategory } from "../../enum/transaction-type-category.enum";
|
|
5
|
+
import { PurchaseOrderLineReceiptDetails } from "@colijnit/transactionapi/build/model/purchase-order-line-receipt-details.bo";
|
|
6
|
+
import { ReceiveGoodsForPurchaseOrderRequest } from "@colijnit/transactionapi/build/model/receive-goods-for-purchase-order-request.bo";
|
|
7
|
+
import { FormMasterService } from "@colijnit/corecomponents_v12";
|
|
8
|
+
import { IconCacheService } from "../../service/icon-cache.service";
|
|
9
|
+
import { TransactionService } from "../../service/transaction.service";
|
|
10
|
+
import { DialogService } from "../../service/dialog.service";
|
|
11
|
+
import { TransactionEventService } from "../../service/transaction-event.service";
|
|
12
|
+
import { ReceiveGoodsForPurchaseOrderCorrectionRequest } from "@colijnit/transactionapi/build/model/receive-goods-for-purchase-order-correction-request.bo";
|
|
13
|
+
import { PurchaseOrderLineReceiptCorrectionDetails } from "@colijnit/transactionapi/build/model/purchase-order-line-receipt-correction-details.bo";
|
|
14
|
+
export class TransactionLinePurchaseReceiveGoodsComponent extends TransactionBaseComponent {
|
|
15
|
+
constructor(iconCacheService, transactionService, _formMaster, _dialogService, _transactionEventService) {
|
|
16
|
+
super(transactionService);
|
|
17
|
+
this.iconCacheService = iconCacheService;
|
|
18
|
+
this.transactionService = transactionService;
|
|
19
|
+
this._formMaster = _formMaster;
|
|
20
|
+
this._dialogService = _dialogService;
|
|
21
|
+
this._transactionEventService = _transactionEventService;
|
|
22
|
+
this.transactionTypeCategory = TransactionTypeCategory;
|
|
23
|
+
this.request = new ReceiveGoodsForPurchaseOrderRequest();
|
|
24
|
+
this.receiptDetails = new PurchaseOrderLineReceiptDetails();
|
|
25
|
+
this.goodsReceiptHistory = [];
|
|
26
|
+
this.returnStockMode = false;
|
|
27
|
+
this.availableStockCollection = [];
|
|
28
|
+
this._subs = [];
|
|
29
|
+
this._subs.push(this._transactionEventService.transactionLineChanged.subscribe((transLine) => {
|
|
30
|
+
if (transLine.lineNr === this.transactionLine.lineNr) {
|
|
31
|
+
this._handleTransactionLineSet(transLine);
|
|
32
|
+
}
|
|
33
|
+
}));
|
|
34
|
+
}
|
|
35
|
+
showClass() {
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
ngOnDestroy() {
|
|
39
|
+
this._subs.forEach(s => s.unsubscribe());
|
|
40
|
+
}
|
|
41
|
+
submit() {
|
|
42
|
+
return this._formMaster.submitSlaves();
|
|
43
|
+
}
|
|
44
|
+
locationRequired() {
|
|
45
|
+
return this.transactionLine.isLocationRequired ||
|
|
46
|
+
this.transactionLine.isBatchNrRequired ||
|
|
47
|
+
this.transactionLine.isSerialNrRequired;
|
|
48
|
+
}
|
|
49
|
+
getGoodsReceiptStatusWithHistory() {
|
|
50
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
this.transactionService.getGoodsReceiptStatusWithHistory(this.transactionInfo.id, this.transactionLine.lineNr)
|
|
52
|
+
.then((result) => {
|
|
53
|
+
this.goodsReceiptHistory = result.goodsReceiptHistory;
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
handleSaveDetailsEdit() {
|
|
58
|
+
if (this.transactionLine.quantityToReceive === 0) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const valid = this.submit();
|
|
62
|
+
if (valid) {
|
|
63
|
+
const request = this.request;
|
|
64
|
+
this.receiptDetails.quantityToReceive = this.returnStockMode ?
|
|
65
|
+
-this.receiptDetails.quantityToReceive : this.receiptDetails.quantityToReceive;
|
|
66
|
+
request.transId = this.transactionInfo.id;
|
|
67
|
+
request.purchaseOrderLineReceiptDetailsDTOS = [this.receiptDetails];
|
|
68
|
+
this.transactionService.receiveGoodsForPurchaseOrder(this.transactionInfo.id, this.transactionInfo.version, request).then(() => {
|
|
69
|
+
if (this.returnStockMode) {
|
|
70
|
+
this._getAvailableStock();
|
|
71
|
+
this.receiptDetails.locationNr = undefined;
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
handleDeleteSelectedRow(row) {
|
|
77
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
78
|
+
if (row && row.type !== 'correction') {
|
|
79
|
+
const request = new ReceiveGoodsForPurchaseOrderCorrectionRequest();
|
|
80
|
+
const correctionDetails = new PurchaseOrderLineReceiptCorrectionDetails();
|
|
81
|
+
request.allowedToRemovePickedAllocations = false;
|
|
82
|
+
request.transId = this.transactionInfo.id;
|
|
83
|
+
request.purchaseOrderLineReceiptCorrectionDetailsDTOS = [correctionDetails];
|
|
84
|
+
correctionDetails.lineNr = this.transactionLine.lineNr;
|
|
85
|
+
correctionDetails.quantityToCorrect = row.quantity;
|
|
86
|
+
correctionDetails.documentId = row.documentId;
|
|
87
|
+
correctionDetails.documentLineNr = row.lineNumber;
|
|
88
|
+
this.transactionService.receiveGoodsForPurchaseOrderCorrection(this.transactionInfo.id, this.transactionInfo.version, request).then(() => {
|
|
89
|
+
this.getGoodsReceiptStatusWithHistory();
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
handleSelectStock(availableStock) {
|
|
95
|
+
const maxToReturn = this.transactionLine.quantityToReceive < 0 ? Math.abs(this.transactionLine.quantityToReceive) : this.transactionLine.quantityToReceive;
|
|
96
|
+
this.returnMaxToReceive = maxToReturn > availableStock.availableQuantity ? availableStock.availableQuantity : maxToReturn;
|
|
97
|
+
this.receiptDetails.quantityToReceive = this.returnMaxToReceive;
|
|
98
|
+
this.receiptDetails.warehouseNr = availableStock.warehouseNumber;
|
|
99
|
+
this.receiptDetails.locationNr = availableStock.locationNumber;
|
|
100
|
+
this.selectedLocation = this.receiptDetails.locationNr;
|
|
101
|
+
this.receiptDetails.serialNr = availableStock.serialNumber;
|
|
102
|
+
this.receiptDetails.batchNr = availableStock.batchNumber;
|
|
103
|
+
this.receiptDetails.lineNr = this.transactionLine.lineNr;
|
|
104
|
+
}
|
|
105
|
+
transactionLineSet() {
|
|
106
|
+
this._handleTransactionLineSet(this.transactionLine);
|
|
107
|
+
}
|
|
108
|
+
_handleTransactionLineSet(transLine) {
|
|
109
|
+
this.receiptDetails.warehouseNr = this.transactionLine.warehouseNumber;
|
|
110
|
+
this.receiptDetails.lineNr = this.transactionLine.lineNr;
|
|
111
|
+
this.receiptDetails.quantityToReceive = this.transactionLine.quantityToReceive;
|
|
112
|
+
this.receiptDetails.locationNr = this.transactionLine.locationNr;
|
|
113
|
+
this.returnStockMode === this.transactionLine.amount < 0;
|
|
114
|
+
this.getGoodsReceiptStatusWithHistory();
|
|
115
|
+
}
|
|
116
|
+
_getAvailableStock() {
|
|
117
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
118
|
+
this.availableStockCollection = yield this.transactionService.getAvailableStockGroupedByWLBSByTransIdLineNr(this.transactionInfo.id, this.transactionLine.lineNr);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
TransactionLinePurchaseReceiveGoodsComponent.decorators = [
|
|
123
|
+
{ type: Component, args: [{
|
|
124
|
+
selector: "co-transaction-line-purchase-receive-goods",
|
|
125
|
+
template: `
|
|
126
|
+
<co-form>
|
|
127
|
+
<div class="header-wrapper">
|
|
128
|
+
<div class="details-header" [textContent]="returnStockMode ? ('RETURN_DETAILS' | localize | uppercase) : ('RECEIPT_DETAILS' | localize | uppercase)"></div>
|
|
129
|
+
<co-transaction-line-statusbar class="status-bar-wrapper"
|
|
130
|
+
[transactionLine]="transactionLine"
|
|
131
|
+
[transactionInfo]="transactionInfo"
|
|
132
|
+
[activeCategory]="transactionTypeCategory.PurchaseOrderReceivedGoods"></co-transaction-line-statusbar>
|
|
133
|
+
</div>
|
|
134
|
+
<div class="columns-wrapper">
|
|
135
|
+
<div class="details-column">
|
|
136
|
+
<div class="transaction-line-totals-amount">
|
|
137
|
+
<co-input-number-picker class="amount-number-picker"
|
|
138
|
+
[max]="returnStockMode ? returnMaxToReceive : transactionLine.quantityToReceive"
|
|
139
|
+
[(model)]="receiptDetails.serialNr ? 1 : receiptDetails.quantityToReceive"
|
|
140
|
+
[min]="1"
|
|
141
|
+
[readonly]="!!receiptDetails.serialNr || receiptDetails.quantityToReceive === 0 || !receiptDetails.quantityToReceive || readonly"
|
|
142
|
+
[disabled]="!!receiptDetails.serialNr || receiptDetails.quantityToReceive === 0 || !receiptDetails.quantityToReceive"
|
|
143
|
+
[required]="true"
|
|
144
|
+
></co-input-number-picker>
|
|
145
|
+
</div>
|
|
146
|
+
<co-input-text class="details-input" [(model)]="receiptDetails.warehouseNr"
|
|
147
|
+
[type]="'number'"
|
|
148
|
+
[hideArrowButtons]="true"
|
|
149
|
+
[readonly]="transactionLine.warehouseNumber !== undefined || readonly || returnStockMode"
|
|
150
|
+
[disabled]="transactionLine.warehouseNumber !== undefined || returnStockMode"
|
|
151
|
+
[required]="transactionLine.isWarehouseRequired"
|
|
152
|
+
[placeholder]="'WAREHOUSE' | localize"></co-input-text>
|
|
153
|
+
<div class="location-wrapper">
|
|
154
|
+
<!-- <span *ngIf="!receiptDetails.locationNr && transactionLine.isLocationRequired" class="required" [textContent]="'*'"></span>-->
|
|
155
|
+
<co-transaction-line-warehouse-location-button
|
|
156
|
+
[locationNr]="receiptDetails.locationNr"
|
|
157
|
+
[readonly]="returnStockMode || receiptDetails.quantityToReceive === 0"
|
|
158
|
+
(locationNrChange)="receiptDetails.locationNr = $event"></co-transaction-line-warehouse-location-button>
|
|
159
|
+
</div>
|
|
160
|
+
<co-input-text class="details-input"
|
|
161
|
+
*ngIf="!returnStockMode"
|
|
162
|
+
[(model)]="request.packingSlipNr"
|
|
163
|
+
[placeholder]="'PACKING_SLIP' | localize"
|
|
164
|
+
[required]="true"
|
|
165
|
+
[readonly]="readonly"
|
|
166
|
+
></co-input-text>
|
|
167
|
+
</div>
|
|
168
|
+
<div class="divider-wrapper">
|
|
169
|
+
<div class="divider"></div>
|
|
170
|
+
</div>
|
|
171
|
+
<div class="details-column">
|
|
172
|
+
<co-input-date class="details-input"
|
|
173
|
+
[(model)]="request.receivedDate"
|
|
174
|
+
[readonly]="readonly"
|
|
175
|
+
></co-input-date>
|
|
176
|
+
<co-input-text *ngIf="transactionLine.isBatchNrRequired" class="details-input" [(model)]="receiptDetails.batchNr"
|
|
177
|
+
[type]="'number'"
|
|
178
|
+
[hideArrowButtons]="true"
|
|
179
|
+
[readonly]="readonly || returnStockMode"
|
|
180
|
+
[disabled]="returnStockMode"
|
|
181
|
+
[required]="transactionLine.isBatchNrRequired"
|
|
182
|
+
[placeholder]="'BATCH_NUMBER' | localize"></co-input-text>
|
|
183
|
+
<co-input-text *ngIf="transactionLine.isSerialNrRequired" class="details-input" [(model)]="receiptDetails.serialNr"
|
|
184
|
+
[type]="'number'"
|
|
185
|
+
[hideArrowButtons]="true"
|
|
186
|
+
[readonly]="readonly || returnStockMode"
|
|
187
|
+
[disabled]="returnStockMode"
|
|
188
|
+
[required]="transactionLine.isSerialNrRequired"
|
|
189
|
+
[placeholder]="'SERIAL_NUMBER' | localize"></co-input-text>
|
|
190
|
+
</div>
|
|
191
|
+
</div>
|
|
192
|
+
</co-form>
|
|
193
|
+
<div class="commit-button-wrapper">
|
|
194
|
+
<div class="commit-button clickable" *ngIf="!readonly" (click)="handleSaveDetailsEdit()" [class.disabled]="receiptDetails.quantityToReceive === 0">
|
|
195
|
+
<span class="commit-text" [textContent]="returnStockMode ? ('RETURN_STOCK' | localize) : ('RECEIVE' | localize)"></span>
|
|
196
|
+
</div>
|
|
197
|
+
</div>
|
|
198
|
+
<co-transaction-receiving-goods-history *ngIf="transactionLine.amount >= 0"
|
|
199
|
+
[goodsReceiptHistory]="goodsReceiptHistory"
|
|
200
|
+
(deleteRow)="handleDeleteSelectedRow($event)"
|
|
201
|
+
></co-transaction-receiving-goods-history>
|
|
202
|
+
<co-transaction-available-stock-grid *ngIf="transactionLine.amount < 0"
|
|
203
|
+
[collection]="availableStockCollection"
|
|
204
|
+
(selectStock)="handleSelectStock($event)"
|
|
205
|
+
></co-transaction-available-stock-grid>
|
|
206
|
+
`,
|
|
207
|
+
providers: [
|
|
208
|
+
FormMasterService
|
|
209
|
+
],
|
|
210
|
+
encapsulation: ViewEncapsulation.None
|
|
211
|
+
},] }
|
|
212
|
+
];
|
|
213
|
+
TransactionLinePurchaseReceiveGoodsComponent.ctorParameters = () => [
|
|
214
|
+
{ type: IconCacheService },
|
|
215
|
+
{ type: TransactionService },
|
|
216
|
+
{ type: FormMasterService },
|
|
217
|
+
{ type: DialogService },
|
|
218
|
+
{ type: TransactionEventService }
|
|
219
|
+
];
|
|
220
|
+
TransactionLinePurchaseReceiveGoodsComponent.propDecorators = {
|
|
221
|
+
showClass: [{ type: HostBinding, args: ["class.co-transaction-line-purchase-receive-goods",] }]
|
|
222
|
+
};
|
|
223
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1yZWNlaXZlLWdvb2RzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtcmVjZWl2ZS1nb29kcy90cmFuc2FjdGlvbi1saW5lLXB1cmNoYXNlLXJlY2VpdmUtZ29vZHMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRixPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSwyQ0FBMkMsQ0FBQztBQUNsRixPQUFPLEVBQUMsK0JBQStCLEVBQUMsTUFBTSw2RUFBNkUsQ0FBQztBQUM1SCxPQUFPLEVBQUMsbUNBQW1DLEVBQUMsTUFBTSxrRkFBa0YsQ0FBQztBQUVySSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFHaEYsT0FBTyxFQUFDLDZDQUE2QyxFQUFDLE1BQU0sNkZBQTZGLENBQUM7QUFDMUosT0FBTyxFQUFDLHlDQUF5QyxFQUFDLE1BQU0sd0ZBQXdGLENBQUM7QUE2RmpKLE1BQU0sT0FBTyw0Q0FBNkMsU0FBUSx3QkFBd0I7SUFrQnhGLFlBQ1MsZ0JBQWtDLEVBQy9CLGtCQUFz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QUMsV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDO1FBQ3pELElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQztRQUMvRSxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQztRQUNqRSxJQUFJLENBQUMsZUFBZSxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsZ0NBQWdDLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRWEsa0JBQWtCOztZQUM5QixJQUFJLENBQUMsd0JBQXdCLEdBQUcsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsNkNBQTZDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwSyxDQUFDO0tBQUE7OztZQWpORixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDRDQUE0QztnQkFDdEQsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpRlQ7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULGlCQUFpQjtpQkFDbEI7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQW5HTyxnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBRmxCLGlCQUFpQjtZQUdqQixhQUFhO1lBQ2IsdUJBQXVCOzs7d0JBb0c1QixXQUFXLFNBQUMsa0RBQWtEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkJhc2VDb21wb25lbnR9IGZyb20gXCIuLi9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblR5cGVDYXRlZ29yeX0gZnJvbSBcIi4uLy4uL2VudW0vdHJhbnNhY3Rpb24tdHlwZS1jYXRlZ29yeS5lbnVtXCI7XHJcbmltcG9ydCB7UHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlsc30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9wdXJjaGFzZS1vcmRlci1saW5lLXJlY2VpcHQtZGV0YWlscy5ib1wiO1xyXG5pbXBvcnQge1JlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJSZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3JlY2VpdmUtZ29vZHMtZm9yLXB1cmNoYXNlLW9yZGVyLXJlcXVlc3QuYm9cIjtcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7Rm9ybU1hc3RlclNlcnZpY2V9IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XHJcbmltcG9ydCB7SWNvbkNhY2hlU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvaWNvbi1jYWNoZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7RGlhbG9nU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZGlhbG9nLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkV2ZW50U2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24tZXZlbnQuc2VydmljZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZUluZm99IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24tbGluZS1pbmZvLmJvXCI7XHJcbmltcG9ydCB7TG9naXN0aWNhbFN0YXRlRGV0YWlsfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2xvZ2lzdGljYWwtc3RhdGUtZGV0YWlsLmJvXCI7XHJcbmltcG9ydCB7UmVjZWl2ZUdvb2RzRm9yUHVyY2hhc2VPcmRlckNvcnJlY3Rpb25SZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3JlY2VpdmUtZ29vZHMtZm9yLXB1cmNoYXNlLW9yZGVyLWNvcnJlY3Rpb24tcmVxdWVzdC5ib1wiO1xyXG5pbXBvcnQge1B1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdENvcnJlY3Rpb25EZXRhaWxzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3B1cmNoYXNlLW9yZGVyLWxpbmUtcmVjZWlwdC1jb3JyZWN0aW9uLWRldGFpbHMuYm9cIjtcclxuaW1wb3J0IHtHb29kc1JlY2VpcHRTdGF0dXNXaXRoSGlzdG9yeX0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9nb29kcy1yZWNlaXB0LXN0YXR1cy13aXRoLWhpc3RvcnkuYm9cIjtcclxuaW1wb3J0IHtBdmFpbGFibGVTdG9ja30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9hdmFpbGFibGUtc3RvY2suYm9cIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImNvLXRyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtcmVjZWl2ZS1nb29kc1wiLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8Y28tZm9ybT5cclxuICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci13cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtaGVhZGVyXCIgW3RleHRDb250ZW50XT1cInJldHVyblN0b2NrTW9kZSA/ICgnUkVUVVJOX0RFVEFJTFMnIHwgbG9jYWxpemUgfCB1cHBlcmNhc2UpIDogKCdSRUNFSVBUX0RFVEFJTFMnIHwgbG9jYWxpemUgfCB1cHBlcmNhc2UpXCI+PC9kaXY+XHJcbiAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtc3RhdHVzYmFyIGNsYXNzPVwic3RhdHVzLWJhci13cmFwcGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RyYW5zYWN0aW9uTGluZV09XCJ0cmFuc2FjdGlvbkxpbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdHJhbnNhY3Rpb25JbmZvXT1cInRyYW5zYWN0aW9uSW5mb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthY3RpdmVDYXRlZ29yeV09XCJ0cmFuc2FjdGlvblR5cGVDYXRlZ29yeS5QdXJjaGFzZU9yZGVyUmVjZWl2ZWRHb29kc1wiPjwvY28tdHJhbnNhY3Rpb24tbGluZS1zdGF0dXNiYXI+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29sdW1ucy13cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbHMtY29sdW1uXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidHJhbnNhY3Rpb24tbGluZS10b3RhbHMtYW1vdW50XCI+XHJcbiAgICAgICAgICAgIDxjby1pbnB1dC1udW1iZXItcGlja2VyIGNsYXNzPVwiYW1vdW50LW51bWJlci1waWNrZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF4XT1cInJldHVyblN0b2NrTW9kZSA/IHJldHVybk1heFRvUmVjZWl2ZSA6IHRyYW5zYWN0aW9uTGluZS5xdWFudGl0eVRvUmVjZWl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cInJlY2VpcHREZXRhaWxzLnNlcmlhbE5yID8gMSA6IHJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21pbl09XCIxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cIiEhcmVjZWlwdERldGFpbHMuc2VyaWFsTnIgfHwgcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDAgfHwgIXJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlIHx8IHJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiEhcmVjZWlwdERldGFpbHMuc2VyaWFsTnIgfHwgcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDAgfHwgIXJlY2VpcHREZXRhaWxzLnF1YW50aXR5VG9SZWNlaXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICA+PC9jby1pbnB1dC1udW1iZXItcGlja2VyPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCBjbGFzcz1cImRldGFpbHMtaW5wdXRcIiBbKG1vZGVsKV09XCJyZWNlaXB0RGV0YWlscy53YXJlaG91c2VOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZUFycm93QnV0dG9uc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJ0cmFuc2FjdGlvbkxpbmUud2FyZWhvdXNlTnVtYmVyICE9PSB1bmRlZmluZWQgfHwgcmVhZG9ubHkgfHwgcmV0dXJuU3RvY2tNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJ0cmFuc2FjdGlvbkxpbmUud2FyZWhvdXNlTnVtYmVyICE9PSB1bmRlZmluZWQgfHwgcmV0dXJuU3RvY2tNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNXYXJlaG91c2VSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRScgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2NhdGlvbi13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgIDwhLS0gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFyZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yICYmIHRyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkXCIgW3RleHRDb250ZW50XT1cIicqJ1wiPjwvc3Bhbj4tLT5cclxuICAgICAgICAgICAgPGNvLXRyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWxvY2F0aW9uLWJ1dHRvblxyXG4gICAgICAgICAgICAgIFtsb2NhdGlvbk5yXT1cInJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnJcIlxyXG4gICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZXR1cm5TdG9ja01vZGUgfHwgcmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDBcIlxyXG4gICAgICAgICAgICAgIChsb2NhdGlvbk5yQ2hhbmdlKT1cInJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnIgPSAkZXZlbnRcIj48L2NvLXRyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWxvY2F0aW9uLWJ1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIXJldHVyblN0b2NrTW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJyZXF1ZXN0LnBhY2tpbmdTbGlwTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidQQUNLSU5HX1NMSVAnIHwgbG9jYWxpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgID48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXItd3JhcHBlclwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIj48L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlscy1jb2x1bW5cIj5cclxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlIGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbKG1vZGVsKV09XCJyZXF1ZXN0LnJlY2VpdmVkRGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxyXG4gICAgICAgICAgPjwvY28taW5wdXQtZGF0ZT5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0ICpuZ0lmPVwidHJhbnNhY3Rpb25MaW5lLmlzQmF0Y2hOclJlcXVpcmVkXCIgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCIgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMuYmF0Y2hOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZUFycm93QnV0dG9uc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seSB8fCByZXR1cm5TdG9ja01vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInJldHVyblN0b2NrTW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJhbnNhY3Rpb25MaW5lLmlzQmF0Y2hOclJlcXVpcmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInQkFUQ0hfTlVNQkVSJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgKm5nSWY9XCJ0cmFuc2FjdGlvbkxpbmUuaXNTZXJpYWxOclJlcXVpcmVkXCIgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCIgWyhtb2RlbCldPVwicmVjZWlwdERldGFpbHMuc2VyaWFsTnJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiJ251bWJlcidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2hpZGVBcnJvd0J1dHRvbnNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHkgfHwgcmV0dXJuU3RvY2tNb2RlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZXR1cm5TdG9ja01vZGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlcXVpcmVkXT1cInRyYW5zYWN0aW9uTGluZS5pc1NlcmlhbE5yUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidTRVJJQUxfTlVNQkVSJyB8IGxvY2FsaXplXCI+PC9jby1pbnB1dC10ZXh0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvY28tZm9ybT5cclxuICAgIDxkaXYgY2xhc3M9XCJjb21taXQtYnV0dG9uLXdyYXBwZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbW1pdC1idXR0b24gY2xpY2thYmxlXCIgKm5nSWY9XCIhcmVhZG9ubHlcIiAoY2xpY2spPVwiaGFuZGxlU2F2ZURldGFpbHNFZGl0KClcIiBbY2xhc3MuZGlzYWJsZWRdPVwicmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPT09IDBcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImNvbW1pdC10ZXh0XCIgW3RleHRDb250ZW50XT1cInJldHVyblN0b2NrTW9kZSA/ICgnUkVUVVJOX1NUT0NLJyB8IGxvY2FsaXplKSA6ICgnUkVDRUlWRScgfCBsb2NhbGl6ZSlcIj48L3NwYW4+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8Y28tdHJhbnNhY3Rpb24tcmVjZWl2aW5nLWdvb2RzLWhpc3RvcnkgKm5nSWY9XCJ0cmFuc2FjdGlvbkxpbmUuYW1vdW50ID49IDBcIlxyXG4gICAgICBbZ29vZHNSZWNlaXB0SGlzdG9yeV09XCJnb29kc1JlY2VpcHRIaXN0b3J5XCJcclxuICAgICAgKGRlbGV0ZVJvdyk9XCJoYW5kbGVEZWxldGVTZWxlY3RlZFJvdygkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLXJlY2VpdmluZy1nb29kcy1oaXN0b3J5PlxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWF2YWlsYWJsZS1zdG9jay1ncmlkICpuZ0lmPVwidHJhbnNhY3Rpb25MaW5lLmFtb3VudCA8IDBcIlxyXG4gICAgICBbY29sbGVjdGlvbl09XCJhdmFpbGFibGVTdG9ja0NvbGxlY3Rpb25cIlxyXG4gICAgIChzZWxlY3RTdG9jayk9XCJoYW5kbGVTZWxlY3RTdG9jaygkZXZlbnQpXCJcclxuICAgID48L2NvLXRyYW5zYWN0aW9uLWF2YWlsYWJsZS1zdG9jay1ncmlkPlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lUHVyY2hhc2VSZWNlaXZlR29vZHNDb21wb25lbnQgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VDb21wb25lbnQge1xyXG4gIHB1YmxpYyByZWFkb25seSB0cmFuc2FjdGlvblR5cGVDYXRlZ29yeTogdHlwZW9mIFRyYW5zYWN0aW9uVHlwZUNhdGVnb3J5ID0gVHJhbnNhY3Rpb25UeXBlQ2F0ZWdvcnk7XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtcmVjZWl2ZS1nb29kc1wiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZXF1ZXN0OiBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCA9IG5ldyBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCgpO1xyXG4gIHB1YmxpYyByZWNlaXB0RGV0YWlsczogUHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0RGV0YWlscyA9IG5ldyBQdXJjaGFzZU9yZGVyTGluZVJlY2VpcHREZXRhaWxzKCk7XHJcbiAgcHVibGljIGdvb2RzUmVjZWlwdEhpc3Rvcnk6IExvZ2lzdGljYWxTdGF0ZURldGFpbFtdID0gW107XHJcbiAgcHVibGljIHJldHVybk1heFRvUmVjZWl2ZTogbnVtYmVyO1xyXG4gIHB1YmxpYyBzZWxlY3RlZExvY2F0aW9uOiBzdHJpbmc7XHJcbiAgcHVibGljIHJldHVyblN0b2NrTW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhdmFpbGFibGVTdG9ja0NvbGxlY3Rpb246IEF2YWlsYWJsZVN0b2NrW10gPSBbXTtcclxuXHJcbiAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSxcclxuICAgIHByb3RlY3RlZCB0cmFuc2FjdGlvblNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgX2Zvcm1NYXN0ZXI6IEZvcm1NYXN0ZXJTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcclxuICAgIHByaXZhdGUgX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlOiBUcmFuc2FjdGlvbkV2ZW50U2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIodHJhbnNhY3Rpb25TZXJ2aWNlKTtcclxuICAgIHRoaXMuX3N1YnMucHVzaChcclxuICAgICAgdGhpcy5fdHJhbnNhY3Rpb25FdmVudFNlcnZpY2UudHJhbnNhY3Rpb25MaW5lQ2hhbmdlZC5zdWJzY3JpYmUoKHRyYW5zTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbykgPT4ge1xyXG4gICAgICAgIGlmICh0cmFuc0xpbmUubGluZU5yID09PSB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnIpIHtcclxuICAgICAgICAgIHRoaXMuX2hhbmRsZVRyYW5zYWN0aW9uTGluZVNldCh0cmFuc0xpbmUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHMudW5zdWJzY3JpYmUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3VibWl0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2Zvcm1NYXN0ZXIuc3VibWl0U2xhdmVzKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9jYXRpb25SZXF1aXJlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWQgfHxcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkxpbmUuaXNCYXRjaE5yUmVxdWlyZWQgfHxcclxuICAgICAgdGhpcy50cmFuc2FjdGlvbkxpbmUuaXNTZXJpYWxOclJlcXVpcmVkO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEdvb2RzUmVjZWlwdFN0YXR1c1dpdGhIaXN0b3J5KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0R29vZHNSZWNlaXB0U3RhdHVzV2l0aEhpc3RvcnkodGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcilcclxuICAgICAgLnRoZW4oKHJlc3VsdDogR29vZHNSZWNlaXB0U3RhdHVzV2l0aEhpc3RvcnkpID0+IHtcclxuICAgICAgICB0aGlzLmdvb2RzUmVjZWlwdEhpc3RvcnkgPSByZXN1bHQuZ29vZHNSZWNlaXB0SGlzdG9yeTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2F2ZURldGFpbHNFZGl0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25MaW5lLnF1YW50aXR5VG9SZWNlaXZlID09PSAwKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHZhbGlkID0gdGhpcy5zdWJtaXQoKTtcclxuICAgIGlmICh2YWxpZCkge1xyXG4gICAgICBjb25zdCByZXF1ZXN0OiBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyUmVxdWVzdCA9IHRoaXMucmVxdWVzdDtcclxuICAgICAgdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA9IHRoaXMucmV0dXJuU3RvY2tNb2RlID9cclxuICAgICAgICAtdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA6IHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmU7XHJcbiAgICAgIHJlcXVlc3QudHJhbnNJZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgICByZXF1ZXN0LnB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdERldGFpbHNEVE9TID0gW3RoaXMucmVjZWlwdERldGFpbHNdO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5yZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uSW5mby52ZXJzaW9uLCByZXF1ZXN0KS50aGVuKCgpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5yZXR1cm5TdG9ja01vZGUpIHtcclxuICAgICAgICAgIHRoaXMuX2dldEF2YWlsYWJsZVN0b2NrKCk7XHJcbiAgICAgICAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmxvY2F0aW9uTnIgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBoYW5kbGVEZWxldGVTZWxlY3RlZFJvdyhyb3c6IExvZ2lzdGljYWxTdGF0ZURldGFpbCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKHJvdyAmJiByb3cudHlwZSAhPT0gJ2NvcnJlY3Rpb24nKSB7XHJcbiAgICAgIGNvbnN0IHJlcXVlc3Q6IFJlY2VpdmVHb29kc0ZvclB1cmNoYXNlT3JkZXJDb3JyZWN0aW9uUmVxdWVzdCA9IG5ldyBSZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyQ29ycmVjdGlvblJlcXVlc3QoKTtcclxuICAgICAgY29uc3QgY29ycmVjdGlvbkRldGFpbHM6IFB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdENvcnJlY3Rpb25EZXRhaWxzID0gbmV3IFB1cmNoYXNlT3JkZXJMaW5lUmVjZWlwdENvcnJlY3Rpb25EZXRhaWxzKCk7XHJcbiAgICAgIHJlcXVlc3QuYWxsb3dlZFRvUmVtb3ZlUGlja2VkQWxsb2NhdGlvbnMgPSBmYWxzZTtcclxuICAgICAgcmVxdWVzdC50cmFuc0lkID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICAgIHJlcXVlc3QucHVyY2hhc2VPcmRlckxpbmVSZWNlaXB0Q29ycmVjdGlvbkRldGFpbHNEVE9TID0gW2NvcnJlY3Rpb25EZXRhaWxzXTtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMubGluZU5yID0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yO1xyXG4gICAgICBjb3JyZWN0aW9uRGV0YWlscy5xdWFudGl0eVRvQ29ycmVjdCA9IHJvdy5xdWFudGl0eTtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMuZG9jdW1lbnRJZCA9IHJvdy5kb2N1bWVudElkO1xyXG4gICAgICBjb3JyZWN0aW9uRGV0YWlscy5kb2N1bWVudExpbmVOciA9IHJvdy5saW5lTnVtYmVyO1xyXG4gICAgICB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5yZWNlaXZlR29vZHNGb3JQdXJjaGFzZU9yZGVyQ29ycmVjdGlvbih0aGlzLnRyYW5zYWN0aW9uSW5mby5pZCwgdGhpcy50cmFuc2FjdGlvbkluZm8udmVyc2lvbiwgcmVxdWVzdCkudGhlbigoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5nZXRHb29kc1JlY2VpcHRTdGF0dXNXaXRoSGlzdG9yeSgpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYW5kbGVTZWxlY3RTdG9jayhhdmFpbGFibGVTdG9jazogQXZhaWxhYmxlU3RvY2spOiB2b2lkIHtcclxuICAgIGNvbnN0IG1heFRvUmV0dXJuID0gdGhpcy50cmFuc2FjdGlvbkxpbmUucXVhbnRpdHlUb1JlY2VpdmUgPCAwID8gTWF0aC5hYnModGhpcy50cmFuc2FjdGlvbkxpbmUucXVhbnRpdHlUb1JlY2VpdmUpIDogdGhpcy50cmFuc2FjdGlvbkxpbmUucXVhbnRpdHlUb1JlY2VpdmU7XHJcbiAgICB0aGlzLnJldHVybk1heFRvUmVjZWl2ZSA9IG1heFRvUmV0dXJuID4gYXZhaWxhYmxlU3RvY2suYXZhaWxhYmxlUXVhbnRpdHkgPyBhdmFpbGFibGVTdG9jay5hdmFpbGFibGVRdWFudGl0eSA6IG1heFRvUmV0dXJuO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5xdWFudGl0eVRvUmVjZWl2ZSA9IHRoaXMucmV0dXJuTWF4VG9SZWNlaXZlO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy53YXJlaG91c2VOciA9IGF2YWlsYWJsZVN0b2NrLndhcmVob3VzZU51bWJlcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMubG9jYXRpb25OciA9IGF2YWlsYWJsZVN0b2NrLmxvY2F0aW9uTnVtYmVyO1xyXG4gICAgdGhpcy5zZWxlY3RlZExvY2F0aW9uID0gdGhpcy5yZWNlaXB0RGV0YWlscy5sb2NhdGlvbk5yO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5zZXJpYWxOciA9IGF2YWlsYWJsZVN0b2NrLnNlcmlhbE51bWJlcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMuYmF0Y2hOciA9IGF2YWlsYWJsZVN0b2NrLmJhdGNoTnVtYmVyO1xyXG4gICAgdGhpcy5yZWNlaXB0RGV0YWlscy5saW5lTnIgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5saW5lTnI7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25MaW5lU2V0KCkge1xyXG4gICAgdGhpcy5faGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRoaXMudHJhbnNhY3Rpb25MaW5lKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2hhbmRsZVRyYW5zYWN0aW9uTGluZVNldCh0cmFuc0xpbmU6IFRyYW5zYWN0aW9uTGluZUluZm8pOiB2b2lkIHtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMud2FyZWhvdXNlTnIgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS53YXJlaG91c2VOdW1iZXI7XHJcbiAgICB0aGlzLnJlY2VpcHREZXRhaWxzLmxpbmVOciA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcjtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMucXVhbnRpdHlUb1JlY2VpdmUgPSB0aGlzLnRyYW5zYWN0aW9uTGluZS5xdWFudGl0eVRvUmVjZWl2ZTtcclxuICAgIHRoaXMucmVjZWlwdERldGFpbHMubG9jYXRpb25OciA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxvY2F0aW9uTnI7XHJcbiAgICB0aGlzLnJldHVyblN0b2NrTW9kZSA9PT0gdGhpcy50cmFuc2FjdGlvbkxpbmUuYW1vdW50IDwgMDtcclxuICAgIHRoaXMuZ2V0R29vZHNSZWNlaXB0U3RhdHVzV2l0aEhpc3RvcnkoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgX2dldEF2YWlsYWJsZVN0b2NrKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy5hdmFpbGFibGVTdG9ja0NvbGxlY3Rpb24gPSBhd2FpdCB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXRBdmFpbGFibGVTdG9ja0dyb3VwZWRCeVdMQlNCeVRyYW5zSWRMaW5lTnIodGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import { TransactionLinePurchaseReceiveGoodsComponent } from "./transaction-line-purchase-receive-goods.component";
|
|
4
|
+
import { FormModule, InputDatePickerModule, InputNumberPickerModule, InputTextModule } from "@colijnit/corecomponents_v12";
|
|
5
|
+
import { TransactionLineStatusbarModule } from "../transaction-line-statusbar/transaction-line-statusbar.module";
|
|
6
|
+
import { TransactionLineWarehouseLocationButtonModule } from "../transaction-line-fields/transaction-line-warehouse-location-button.module";
|
|
7
|
+
import { PipeModule } from "../../pipe/pipe.module";
|
|
8
|
+
import { TransactionReceivingGoodsHistoryModule } from "../transaction-receiving-goods-history/transaction-receiving-goods-history.module";
|
|
9
|
+
import { TransactionAvailableStockGridModule } from "../transaction-grid/transaction-available-stock-grid/transaction-available-stock-grid.module";
|
|
10
|
+
export class TransactionLinePurchaseReceiveGoodsModule {
|
|
11
|
+
}
|
|
12
|
+
TransactionLinePurchaseReceiveGoodsModule.decorators = [
|
|
13
|
+
{ type: NgModule, args: [{
|
|
14
|
+
imports: [
|
|
15
|
+
CommonModule,
|
|
16
|
+
FormModule,
|
|
17
|
+
TransactionLineStatusbarModule,
|
|
18
|
+
InputNumberPickerModule,
|
|
19
|
+
InputTextModule,
|
|
20
|
+
TransactionLineWarehouseLocationButtonModule,
|
|
21
|
+
InputDatePickerModule,
|
|
22
|
+
PipeModule,
|
|
23
|
+
TransactionReceivingGoodsHistoryModule,
|
|
24
|
+
TransactionAvailableStockGridModule
|
|
25
|
+
],
|
|
26
|
+
declarations: [
|
|
27
|
+
TransactionLinePurchaseReceiveGoodsComponent
|
|
28
|
+
],
|
|
29
|
+
exports: [
|
|
30
|
+
TransactionLinePurchaseReceiveGoodsComponent
|
|
31
|
+
]
|
|
32
|
+
},] }
|
|
33
|
+
];
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1yZWNlaXZlLWdvb2RzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtcHVyY2hhc2UtcmVjZWl2ZS1nb29kcy90cmFuc2FjdGlvbi1saW5lLXB1cmNoYXNlLXJlY2VpdmUtZ29vZHMubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyw0Q0FBNEMsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQ2pILE9BQU8sRUFBQyxVQUFVLEVBQUUscUJBQXFCLEVBQUUsdUJBQXVCLEVBQUUsZUFBZSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDekgsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0saUVBQWlFLENBQUM7QUFDL0csT0FBTyxFQUFDLDRDQUE0QyxFQUFDLE1BQU0sOEVBQThFLENBQUM7QUFDMUksT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBQyxzQ0FBc0MsRUFBQyxNQUFNLG1GQUFtRixDQUFDO0FBQ3pJLE9BQU8sRUFBQyxtQ0FBbUMsRUFBQyxNQUFNLDhGQUE4RixDQUFDO0FBc0JqSixNQUFNLE9BQU8seUNBQXlDOzs7WUFwQnJELFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixVQUFVO29CQUNWLDhCQUE4QjtvQkFDOUIsdUJBQXVCO29CQUN2QixlQUFlO29CQUNmLDRDQUE0QztvQkFDNUMscUJBQXFCO29CQUNyQixVQUFVO29CQUNWLHNDQUFzQztvQkFDdEMsbUNBQW1DO2lCQUNwQztnQkFDRCxZQUFZLEVBQUU7b0JBQ1osNENBQTRDO2lCQUM3QztnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsNENBQTRDO2lCQUM3QzthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtDb21tb25Nb2R1bGV9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVQdXJjaGFzZVJlY2VpdmVHb29kc0NvbXBvbmVudH0gZnJvbSBcIi4vdHJhbnNhY3Rpb24tbGluZS1wdXJjaGFzZS1yZWNlaXZlLWdvb2RzLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0Zvcm1Nb2R1bGUsIElucHV0RGF0ZVBpY2tlck1vZHVsZSwgSW5wdXROdW1iZXJQaWNrZXJNb2R1bGUsIElucHV0VGV4dE1vZHVsZX0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTJcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVTdGF0dXNiYXJNb2R1bGV9IGZyb20gXCIuLi90cmFuc2FjdGlvbi1saW5lLXN0YXR1c2Jhci90cmFuc2FjdGlvbi1saW5lLXN0YXR1c2Jhci5tb2R1bGVcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVXYXJlaG91c2VMb2NhdGlvbkJ1dHRvbk1vZHVsZX0gZnJvbSBcIi4uL3RyYW5zYWN0aW9uLWxpbmUtZmllbGRzL3RyYW5zYWN0aW9uLWxpbmUtd2FyZWhvdXNlLWxvY2F0aW9uLWJ1dHRvbi5tb2R1bGVcIjtcclxuaW1wb3J0IHtQaXBlTW9kdWxlfSBmcm9tIFwiLi4vLi4vcGlwZS9waXBlLm1vZHVsZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uUmVjZWl2aW5nR29vZHNIaXN0b3J5TW9kdWxlfSBmcm9tIFwiLi4vdHJhbnNhY3Rpb24tcmVjZWl2aW5nLWdvb2RzLWhpc3RvcnkvdHJhbnNhY3Rpb24tcmVjZWl2aW5nLWdvb2RzLWhpc3RvcnkubW9kdWxlXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25BdmFpbGFibGVTdG9ja0dyaWRNb2R1bGV9IGZyb20gXCIuLi90cmFuc2FjdGlvbi1ncmlkL3RyYW5zYWN0aW9uLWF2YWlsYWJsZS1zdG9jay1ncmlkL3RyYW5zYWN0aW9uLWF2YWlsYWJsZS1zdG9jay1ncmlkLm1vZHVsZVwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBGb3JtTW9kdWxlLFxyXG4gICAgVHJhbnNhY3Rpb25MaW5lU3RhdHVzYmFyTW9kdWxlLFxyXG4gICAgSW5wdXROdW1iZXJQaWNrZXJNb2R1bGUsXHJcbiAgICBJbnB1dFRleHRNb2R1bGUsXHJcbiAgICBUcmFuc2FjdGlvbkxpbmVXYXJlaG91c2VMb2NhdGlvbkJ1dHRvbk1vZHVsZSxcclxuICAgIElucHV0RGF0ZVBpY2tlck1vZHVsZSxcclxuICAgIFBpcGVNb2R1bGUsXHJcbiAgICBUcmFuc2FjdGlvblJlY2VpdmluZ0dvb2RzSGlzdG9yeU1vZHVsZSxcclxuICAgIFRyYW5zYWN0aW9uQXZhaWxhYmxlU3RvY2tHcmlkTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFRyYW5zYWN0aW9uTGluZVB1cmNoYXNlUmVjZWl2ZUdvb2RzQ29tcG9uZW50XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBUcmFuc2FjdGlvbkxpbmVQdXJjaGFzZVJlY2VpdmVHb29kc0NvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uTGluZVB1cmNoYXNlUmVjZWl2ZUdvb2RzTW9kdWxlIHtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Component, HostBinding, ViewEncapsulation } from "@angular/core";
|
|
3
|
+
import { FormMasterService } from "@colijnit/corecomponents_v12";
|
|
4
|
+
import { TransactionBaseComponent } from "../core/base/transaction-base.component";
|
|
5
|
+
import { AllocateGoodsForSalesOrderRequest } from "@colijnit/transactionapi/build/model/allocate-goods-for-sales-order-request";
|
|
6
|
+
import { SalesOrderLineAllocationDetails } from "@colijnit/transactionapi/build/model/sales-order-line-allocation-details";
|
|
7
|
+
import { IconCacheService } from "../../service/icon-cache.service";
|
|
8
|
+
import { TransactionService } from "../../service/transaction.service";
|
|
9
|
+
import { DialogService } from "../../service/dialog.service";
|
|
10
|
+
import { AllocateGoodsForSalesOrderCorrectionRequest } from "@colijnit/transactionapi/build/model/allocate-goods-for-sales-order-correction-request";
|
|
11
|
+
import { SalesOrderLineAllocationCorrectionDetails } from "@colijnit/transactionapi/build/model/sales-order-line-allocation-correction-details";
|
|
12
|
+
import { TransactionEventService } from "../../service/transaction-event.service";
|
|
13
|
+
export class TransactionLineSalesAllocationComponent extends TransactionBaseComponent {
|
|
14
|
+
constructor(iconCacheService, transactionService, _formMaster, _dialogService, _transactionEventService) {
|
|
15
|
+
super(transactionService);
|
|
16
|
+
this.iconCacheService = iconCacheService;
|
|
17
|
+
this.transactionService = transactionService;
|
|
18
|
+
this._formMaster = _formMaster;
|
|
19
|
+
this._dialogService = _dialogService;
|
|
20
|
+
this._transactionEventService = _transactionEventService;
|
|
21
|
+
this.allocationRequest = new AllocateGoodsForSalesOrderRequest();
|
|
22
|
+
this.allocationDetails = new SalesOrderLineAllocationDetails();
|
|
23
|
+
this.goodsAllocationHistory = [];
|
|
24
|
+
this._subs = [];
|
|
25
|
+
this._subs.push(this._transactionEventService.transactionLineChanged.subscribe((transLine) => {
|
|
26
|
+
if (transLine.lineNr === this.transactionLine.lineNr) {
|
|
27
|
+
this._handleTransactionLineSet(transLine);
|
|
28
|
+
}
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
showClass() {
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
ngOnDestroy() {
|
|
35
|
+
this._subs.forEach(s => s.unsubscribe());
|
|
36
|
+
}
|
|
37
|
+
submit() {
|
|
38
|
+
return this._formMaster.submitSlaves();
|
|
39
|
+
}
|
|
40
|
+
getGoodsAllocationStatusWithHistory() {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
+
this.transactionService.getGoodsAllocationStatusWithHistory(this.transactionInfo.id, this.transactionLine.lineNr)
|
|
43
|
+
.then((result) => {
|
|
44
|
+
this.goodsAllocationHistory = result.goodsAllocationHistory;
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
handleSaveDetailsEdit() {
|
|
49
|
+
if (this.transactionLine.quantityToAllocate === 0) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
const valid = this.submit();
|
|
53
|
+
if (valid) {
|
|
54
|
+
const request = this.allocationRequest;
|
|
55
|
+
request.transId = this.transactionInfo.id;
|
|
56
|
+
request.salesOrderLineAllocationDetailsDTOS = [this.allocationDetails];
|
|
57
|
+
this.transactionService.allocateGoodsForSalesOrder(this.transactionInfo.id, this.transactionInfo.version, request).then((success) => {
|
|
58
|
+
if (success) {
|
|
59
|
+
this.allocationDetails.locationNr = undefined;
|
|
60
|
+
this.getGoodsAllocationStatusWithHistory();
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
handleDeleteSelectedRow(row) {
|
|
66
|
+
if (row && row.type !== 'correction') {
|
|
67
|
+
const request = new AllocateGoodsForSalesOrderCorrectionRequest();
|
|
68
|
+
const correctionDetails = new SalesOrderLineAllocationCorrectionDetails();
|
|
69
|
+
request.allowedToRemovePickedAllocations = false;
|
|
70
|
+
request.transId = this.transactionInfo.id;
|
|
71
|
+
request.salesOrderLineAllocationCorrectionDetailsDTOS = [correctionDetails];
|
|
72
|
+
correctionDetails.lineNr = this.transactionLine.lineNr;
|
|
73
|
+
correctionDetails.quantityToCorrect = row.quantity;
|
|
74
|
+
correctionDetails.documentId = row.documentId;
|
|
75
|
+
correctionDetails.documentLineNr = row.lineNumber;
|
|
76
|
+
this.transactionService.allocateGoodsForSalesOrderCorrection(this.transactionInfo.id, this.transactionInfo.version, request).then(() => {
|
|
77
|
+
this.getGoodsAllocationStatusWithHistory();
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
openWarehouseLocationDialog() {
|
|
82
|
+
if (this.transactionLine.quantityToAllocate > 0) {
|
|
83
|
+
this._dialogService.showWarehouseLocation(this.allocationDetails.warehouseNr, true, true, true, this.transactionLine)
|
|
84
|
+
.then(() => this.allocationDetails.locationNr = this.transactionLine.locationNr);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
transactionLineSet() {
|
|
88
|
+
this._handleTransactionLineSet(this.transactionLine);
|
|
89
|
+
}
|
|
90
|
+
_handleTransactionLineSet(transLine) {
|
|
91
|
+
this.allocationDetails.quantityToAllocate = transLine.quantityToAllocate;
|
|
92
|
+
this.allocationDetails.warehouseNr = transLine.warehouseNumber;
|
|
93
|
+
this.allocationDetails.lineNr = transLine.lineNr;
|
|
94
|
+
this.getGoodsAllocationStatusWithHistory();
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
TransactionLineSalesAllocationComponent.decorators = [
|
|
98
|
+
{ type: Component, args: [{
|
|
99
|
+
selector: "co-transaction-line-sales-allocation",
|
|
100
|
+
template: `
|
|
101
|
+
<co-form>
|
|
102
|
+
<div class="details-header" [textContent]="'ALLOCATE_DETAILS' | localize | uppercase"></div>
|
|
103
|
+
<div class="columns-wrapper">
|
|
104
|
+
<div class="details-column">
|
|
105
|
+
<co-input-text class="details-input"
|
|
106
|
+
[max]="allocationDetails.quantityToAllocate"
|
|
107
|
+
[(model)]="allocationDetails.serialNr ? 1 : allocationDetails.quantityToAllocate"
|
|
108
|
+
[disabled]="!!allocationDetails.serialNr || allocationDetails.quantityToAllocate === 0"
|
|
109
|
+
[readonly]="!!allocationDetails.serialNr || allocationDetails.quantityToAllocate === 0 || readonly"
|
|
110
|
+
[required]="true"
|
|
111
|
+
[type]="'number'"
|
|
112
|
+
[min]="1"
|
|
113
|
+
[placeholder]="'AMOUNT' | localize"></co-input-text>
|
|
114
|
+
<co-input-text class="details-input" [(model)]="allocationDetails.warehouseNr"
|
|
115
|
+
[type]="'number'"
|
|
116
|
+
[hideArrowButtons]="true"
|
|
117
|
+
[readonly]="transactionLine.warehouseNumber !== undefined || readonly"
|
|
118
|
+
[disabled]="transactionLine.warehouseNumber !== undefined"
|
|
119
|
+
[required]="transactionLine.isWarehouseRequired"
|
|
120
|
+
[placeholder]="'WAREHOUSE' | localize"></co-input-text>
|
|
121
|
+
<div class="location-wrapper clickable" (click)="openWarehouseLocationDialog()">
|
|
122
|
+
<span *ngIf="!allocationDetails.locationNr && transactionLine.isLocationRequired" class="required" [textContent]="'*'"></span>
|
|
123
|
+
<co-icon *ngIf="allocationDetails.locationNr" [iconData]="iconCacheService.getIcon(icons.ShelvesLight)"></co-icon>
|
|
124
|
+
<div [textContent]="allocationDetails.locationNr ? allocationDetails.locationNr : ('LOCATION' | localize)"></div>
|
|
125
|
+
</div>
|
|
126
|
+
</div>
|
|
127
|
+
<div class="divider-wrapper">
|
|
128
|
+
<div class="divider"></div>
|
|
129
|
+
</div>
|
|
130
|
+
<div class="details-column">
|
|
131
|
+
<co-input-text *ngIf="transactionLine.isBatchNrRequired" class="details-input" [(model)]="allocationDetails.batchNr"
|
|
132
|
+
[type]="'number'"
|
|
133
|
+
[hideArrowButtons]="true"
|
|
134
|
+
[readonly]="readonly"
|
|
135
|
+
[required]="transactionLine.isBatchNrRequired"
|
|
136
|
+
[placeholder]="'BATCH_NUMBER' | localize"></co-input-text>
|
|
137
|
+
<co-input-text *ngIf="transactionLine.isSerialNrRequired" class="details-input" [(model)]="allocationDetails.serialNr"
|
|
138
|
+
[type]="'number'"
|
|
139
|
+
[hideArrowButtons]="true"
|
|
140
|
+
[readonly]="readonly"
|
|
141
|
+
[required]="transactionLine.isSerialNrRequired"
|
|
142
|
+
[placeholder]="'SERIAL_NUMBER' | localize"></co-input-text>
|
|
143
|
+
</div>
|
|
144
|
+
</div>
|
|
145
|
+
</co-form>
|
|
146
|
+
<div class="commit-button-wrapper">
|
|
147
|
+
<div class="commit-button" *ngIf="!readonly"
|
|
148
|
+
[class.clickable]="allocationDetails.quantityToAllocate > 0"
|
|
149
|
+
[class.disabled]="allocationDetails.quantityToAllocate === 0"
|
|
150
|
+
(click)="handleSaveDetailsEdit()">
|
|
151
|
+
<span class="commit-text" [textContent]="'ALLOCATE' | localize"></span>
|
|
152
|
+
</div>
|
|
153
|
+
</div>
|
|
154
|
+
<co-transaction-allocate-goods-history
|
|
155
|
+
[goodsAllocationHistory]="goodsAllocationHistory"
|
|
156
|
+
(deleteRow)="handleDeleteSelectedRow($event)"
|
|
157
|
+
></co-transaction-allocate-goods-history>
|
|
158
|
+
`,
|
|
159
|
+
providers: [
|
|
160
|
+
FormMasterService
|
|
161
|
+
],
|
|
162
|
+
encapsulation: ViewEncapsulation.None
|
|
163
|
+
},] }
|
|
164
|
+
];
|
|
165
|
+
TransactionLineSalesAllocationComponent.ctorParameters = () => [
|
|
166
|
+
{ type: IconCacheService },
|
|
167
|
+
{ type: TransactionService },
|
|
168
|
+
{ type: FormMasterService },
|
|
169
|
+
{ type: DialogService },
|
|
170
|
+
{ type: TransactionEventService }
|
|
171
|
+
];
|
|
172
|
+
TransactionLineSalesAllocationComponent.propDecorators = {
|
|
173
|
+
showClass: [{ type: HostBinding, args: ["class.co-transaction-line-sales-allocation",] }]
|
|
174
|
+
};
|
|
175
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtc2FsZXMtYWxsb2NhdGlvbi90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWFsbG9jYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBYSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNuRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUMsd0JBQXdCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUNqRixPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSw2RUFBNkUsQ0FBQztBQUM5SCxPQUFPLEVBQUMsK0JBQStCLEVBQUMsTUFBTSwwRUFBMEUsQ0FBQztBQUV6SCxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRSxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFM0QsT0FBTyxFQUFDLDJDQUEyQyxFQUFDLE1BQU0sd0ZBQXdGLENBQUM7QUFDbkosT0FBTyxFQUFDLHlDQUF5QyxFQUFDLE1BQU0scUZBQXFGLENBQUM7QUFFOUksT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFxRWhGLE1BQU0sT0FBTyx1Q0FBd0MsU0FBUSx3QkFBd0I7SUFjbkYsWUFDUyxnQkFBa0MsRUFDL0Isa0JBQXNDLEVBQ3hDLFdBQThCLEVBQzlCLGNBQTZCLEVBQzdCLHdCQUFpRDtRQUV6RCxLQUFLLENBQUMsa0JBQWtCLENB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Q0FBQyxTQUE4QjtRQUM5RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLEdBQUcsU0FBUyxDQUFDLGtCQUFrQixDQUFDO1FBQ3pFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDLGVBQWUsQ0FBQztRQUMvRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUM7UUFDakQsSUFBSSxDQUFDLG1DQUFtQyxFQUFFLENBQUM7SUFDN0MsQ0FBQzs7O1lBbktGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsc0NBQXNDO2dCQUNoRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwRFQ7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULGlCQUFpQjtpQkFDbEI7Z0JBQ0QsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztZQTNFTyxnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBTmxCLGlCQUFpQjtZQU9qQixhQUFhO1lBS2IsdUJBQXVCOzs7d0JBNEU1QixXQUFXLFNBQUMsNENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBPbkRlc3Ryb3ksIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0Zvcm1NYXN0ZXJTZXJ2aWNlfSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uQmFzZUNvbXBvbmVudH0gZnJvbSBcIi4uL2NvcmUvYmFzZS90cmFuc2FjdGlvbi1iYXNlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0FsbG9jYXRlR29vZHNGb3JTYWxlc09yZGVyUmVxdWVzdH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9hbGxvY2F0ZS1nb29kcy1mb3Itc2FsZXMtb3JkZXItcmVxdWVzdFwiO1xyXG5pbXBvcnQge1NhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkRldGFpbHN9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvc2FsZXMtb3JkZXItbGluZS1hbGxvY2F0aW9uLWRldGFpbHNcIjtcclxuaW1wb3J0IHtMb2dpc3RpY2FsU3RhdGVEZXRhaWx9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvbG9naXN0aWNhbC1zdGF0ZS1kZXRhaWwuYm9cIjtcclxuaW1wb3J0IHtJY29uQ2FjaGVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9pY29uLWNhY2hlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEaWFsb2dTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9kaWFsb2cuc2VydmljZVwiO1xyXG5pbXBvcnQge0dvb2RzQWxsb2NhdGlvblN0YXR1c1dpdGhIaXN0b3J5fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2dvb2RzLWFsbG9jYXRpb24tc3RhdHVzLXdpdGgtaGlzdG9yeS5ib1wiO1xyXG5pbXBvcnQge0FsbG9jYXRlR29vZHNGb3JTYWxlc09yZGVyQ29ycmVjdGlvblJlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvYWxsb2NhdGUtZ29vZHMtZm9yLXNhbGVzLW9yZGVyLWNvcnJlY3Rpb24tcmVxdWVzdFwiO1xyXG5pbXBvcnQge1NhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkNvcnJlY3Rpb25EZXRhaWxzfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3NhbGVzLW9yZGVyLWxpbmUtYWxsb2NhdGlvbi1jb3JyZWN0aW9uLWRldGFpbHNcIjtcclxuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25FdmVudFNlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL3RyYW5zYWN0aW9uLWV2ZW50LnNlcnZpY2VcIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvbkxpbmVJbmZvfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLWxpbmUtaW5mby5ib1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiY28tdHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxjby1mb3JtPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlscy1oZWFkZXJcIiBbdGV4dENvbnRlbnRdPVwiJ0FMTE9DQVRFX0RFVEFJTFMnIHwgbG9jYWxpemUgfCB1cHBlcmNhc2VcIj48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbnMtd3JhcHBlclwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWxzLWNvbHVtblwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgY2xhc3M9XCJkZXRhaWxzLWlucHV0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFttYXhdPVwiYWxsb2NhdGlvbkRldGFpbHMucXVhbnRpdHlUb0FsbG9jYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFsobW9kZWwpXT1cImFsbG9jYXRpb25EZXRhaWxzLnNlcmlhbE5yID8gMSA6IGFsbG9jYXRpb25EZXRhaWxzLnF1YW50aXR5VG9BbGxvY2F0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiISFhbGxvY2F0aW9uRGV0YWlscy5zZXJpYWxOciB8fCBhbGxvY2F0aW9uRGV0YWlscy5xdWFudGl0eVRvQWxsb2NhdGUgPT09IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cIiEhYWxsb2NhdGlvbkRldGFpbHMuc2VyaWFsTnIgfHwgYWxsb2NhdGlvbkRldGFpbHMucXVhbnRpdHlUb0FsbG9jYXRlID09PSAwIHx8IHJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFttaW5dPVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0FNT1VOVCcgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxjby1pbnB1dC10ZXh0IGNsYXNzPVwiZGV0YWlscy1pbnB1dFwiIFsobW9kZWwpXT1cImFsbG9jYXRpb25EZXRhaWxzLndhcmVob3VzZU5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQXJyb3dCdXR0b25zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInRyYW5zYWN0aW9uTGluZS53YXJlaG91c2VOdW1iZXIgIT09IHVuZGVmaW5lZCB8fCByZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwidHJhbnNhY3Rpb25MaW5lLndhcmVob3VzZU51bWJlciAhPT0gdW5kZWZpbmVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNXYXJlaG91c2VSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1dBUkVIT1VTRScgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsb2NhdGlvbi13cmFwcGVyIGNsaWNrYWJsZVwiIChjbGljayk9XCJvcGVuV2FyZWhvdXNlTG9jYXRpb25EaWFsb2coKVwiPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFhbGxvY2F0aW9uRGV0YWlscy5sb2NhdGlvbk5yICYmIHRyYW5zYWN0aW9uTGluZS5pc0xvY2F0aW9uUmVxdWlyZWRcIiBjbGFzcz1cInJlcXVpcmVkXCIgW3RleHRDb250ZW50XT1cIicqJ1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPGNvLWljb24gKm5nSWY9XCJhbGxvY2F0aW9uRGV0YWlscy5sb2NhdGlvbk5yXCIgW2ljb25EYXRhXT1cImljb25DYWNoZVNlcnZpY2UuZ2V0SWNvbihpY29ucy5TaGVsdmVzTGlnaHQpXCI+PC9jby1pY29uPlxyXG4gICAgICAgICAgICA8ZGl2IFt0ZXh0Q29udGVudF09XCJhbGxvY2F0aW9uRGV0YWlscy5sb2NhdGlvbk5yID8gYWxsb2NhdGlvbkRldGFpbHMubG9jYXRpb25OciA6ICgnTE9DQVRJT04nIHwgbG9jYWxpemUpXCI+PC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlci13cmFwcGVyXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlclwiPjwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWxzLWNvbHVtblwiPlxyXG4gICAgICAgICAgPGNvLWlucHV0LXRleHQgKm5nSWY9XCJ0cmFuc2FjdGlvbkxpbmUuaXNCYXRjaE5yUmVxdWlyZWRcIiBjbGFzcz1cImRldGFpbHMtaW5wdXRcIiBbKG1vZGVsKV09XCJhbGxvY2F0aW9uRGV0YWlscy5iYXRjaE5yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cIidudW1iZXInXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtoaWRlQXJyb3dCdXR0b25zXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cmFuc2FjdGlvbkxpbmUuaXNCYXRjaE5yUmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidCQVRDSF9OVU1CRVInIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICA8Y28taW5wdXQtdGV4dCAqbmdJZj1cInRyYW5zYWN0aW9uTGluZS5pc1NlcmlhbE5yUmVxdWlyZWRcIiBjbGFzcz1cImRldGFpbHMtaW5wdXRcIiBbKG1vZGVsKV09XCJhbGxvY2F0aW9uRGV0YWlscy5zZXJpYWxOclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCInbnVtYmVyJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbaGlkZUFycm93QnV0dG9uc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwidHJhbnNhY3Rpb25MaW5lLmlzU2VyaWFsTnJSZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ1NFUklBTF9OVU1CRVInIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9jby1mb3JtPlxyXG4gICAgPGRpdiBjbGFzcz1cImNvbW1pdC1idXR0b24td3JhcHBlclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiY29tbWl0LWJ1dHRvblwiICpuZ0lmPVwiIXJlYWRvbmx5XCJcclxuICAgICAgICAgICBbY2xhc3MuY2xpY2thYmxlXT1cImFsbG9jYXRpb25EZXRhaWxzLnF1YW50aXR5VG9BbGxvY2F0ZSA+IDBcIlxyXG4gICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJhbGxvY2F0aW9uRGV0YWlscy5xdWFudGl0eVRvQWxsb2NhdGUgPT09IDBcIlxyXG4gICAgICAgICAgIChjbGljayk9XCJoYW5kbGVTYXZlRGV0YWlsc0VkaXQoKVwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiY29tbWl0LXRleHRcIiBbdGV4dENvbnRlbnRdPVwiJ0FMTE9DQVRFJyB8IGxvY2FsaXplXCI+PC9zcGFuPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGNvLXRyYW5zYWN0aW9uLWFsbG9jYXRlLWdvb2RzLWhpc3RvcnlcclxuICAgICAgW2dvb2RzQWxsb2NhdGlvbkhpc3RvcnldPVwiZ29vZHNBbGxvY2F0aW9uSGlzdG9yeVwiXHJcbiAgICAgIChkZWxldGVSb3cpPVwiaGFuZGxlRGVsZXRlU2VsZWN0ZWRSb3coJGV2ZW50KVwiXHJcbiAgICA+PC9jby10cmFuc2FjdGlvbi1hbGxvY2F0ZS1nb29kcy1oaXN0b3J5PlxyXG4gIGAsXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBGb3JtTWFzdGVyU2VydmljZVxyXG4gIF0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25MaW5lU2FsZXNBbGxvY2F0aW9uQ29tcG9uZW50IGV4dGVuZHMgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgcHVibGljIGFsbG9jYXRpb25SZXF1ZXN0OiBBbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlclJlcXVlc3QgPSBuZXcgQWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJSZXF1ZXN0KCk7XHJcbiAgcHVibGljIGFsbG9jYXRpb25EZXRhaWxzOiBTYWxlc09yZGVyTGluZUFsbG9jYXRpb25EZXRhaWxzID0gbmV3IFNhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkRldGFpbHMoKTtcclxuXHJcbiAgcHVibGljIGdvb2RzQWxsb2NhdGlvbkhpc3Rvcnk6IExvZ2lzdGljYWxTdGF0ZURldGFpbFtdID0gW107XHJcblxyXG4gIEBIb3N0QmluZGluZyhcImNsYXNzLmNvLXRyYW5zYWN0aW9uLWxpbmUtc2FsZXMtYWxsb2NhdGlvblwiKVxyXG4gIHB1YmxpYyBzaG93Q2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGljb25DYWNoZVNlcnZpY2U6IEljb25DYWNoZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgdHJhbnNhY3Rpb25TZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9mb3JtTWFzdGVyOiBGb3JtTWFzdGVyU2VydmljZSxcclxuICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIF90cmFuc2FjdGlvbkV2ZW50U2VydmljZTogVHJhbnNhY3Rpb25FdmVudFNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKHRyYW5zYWN0aW9uU2VydmljZSk7XHJcbiAgICB0aGlzLl9zdWJzLnB1c2goXHJcbiAgICAgIHRoaXMuX3RyYW5zYWN0aW9uRXZlbnRTZXJ2aWNlLnRyYW5zYWN0aW9uTGluZUNoYW5nZWQuc3Vic2NyaWJlKCh0cmFuc0xpbmU6IFRyYW5zYWN0aW9uTGluZUluZm8pID0+IHtcclxuICAgICAgICBpZiAodHJhbnNMaW5lLmxpbmVOciA9PT0gdGhpcy50cmFuc2FjdGlvbkxpbmUubGluZU5yKSB7XHJcbiAgICAgICAgICB0aGlzLl9oYW5kbGVUcmFuc2FjdGlvbkxpbmVTZXQodHJhbnNMaW5lKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiBzLnVuc3Vic2NyaWJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHN1Ym1pdCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9mb3JtTWFzdGVyLnN1Ym1pdFNsYXZlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldEdvb2RzQWxsb2NhdGlvblN0YXR1c1dpdGhIaXN0b3J5KCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuZ2V0R29vZHNBbGxvY2F0aW9uU3RhdHVzV2l0aEhpc3RvcnkodGhpcy50cmFuc2FjdGlvbkluZm8uaWQsIHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcilcclxuICAgICAgLnRoZW4oKHJlc3VsdDogR29vZHNBbGxvY2F0aW9uU3RhdHVzV2l0aEhpc3RvcnkpID0+IHtcclxuICAgICAgICB0aGlzLmdvb2RzQWxsb2NhdGlvbkhpc3RvcnkgPSByZXN1bHQuZ29vZHNBbGxvY2F0aW9uSGlzdG9yeTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2F2ZURldGFpbHNFZGl0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb25MaW5lLnF1YW50aXR5VG9BbGxvY2F0ZSA9PT0gMCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBjb25zdCB2YWxpZCA9IHRoaXMuc3VibWl0KCk7XHJcbiAgICBpZiAodmFsaWQpIHtcclxuICAgICAgY29uc3QgcmVxdWVzdDogQWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJSZXF1ZXN0ID0gdGhpcy5hbGxvY2F0aW9uUmVxdWVzdDtcclxuICAgICAgcmVxdWVzdC50cmFuc0lkID0gdGhpcy50cmFuc2FjdGlvbkluZm8uaWQ7XHJcbiAgICAgIHJlcXVlc3Quc2FsZXNPcmRlckxpbmVBbGxvY2F0aW9uRGV0YWlsc0RUT1MgPSBbdGhpcy5hbGxvY2F0aW9uRGV0YWlsc107XHJcbiAgICAgIHRoaXMudHJhbnNhY3Rpb25TZXJ2aWNlLmFsbG9jYXRlR29vZHNGb3JTYWxlc09yZGVyKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uSW5mby52ZXJzaW9uLCByZXF1ZXN0KS50aGVuKChzdWNjZXNzKSA9PiB7XHJcbiAgICAgICAgaWYgKHN1Y2Nlc3MpIHtcclxuICAgICAgICAgIHRoaXMuYWxsb2NhdGlvbkRldGFpbHMubG9jYXRpb25OciA9IHVuZGVmaW5lZDtcclxuICAgICAgICAgIHRoaXMuZ2V0R29vZHNBbGxvY2F0aW9uU3RhdHVzV2l0aEhpc3RvcnkoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZURlbGV0ZVNlbGVjdGVkUm93KHJvdzogTG9naXN0aWNhbFN0YXRlRGV0YWlsKTogdm9pZCB7XHJcbiAgICBpZiAocm93ICYmIHJvdy50eXBlICE9PSAnY29ycmVjdGlvbicpIHtcclxuICAgICAgY29uc3QgcmVxdWVzdDogQWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJDb3JyZWN0aW9uUmVxdWVzdCA9IG5ldyBBbGxvY2F0ZUdvb2RzRm9yU2FsZXNPcmRlckNvcnJlY3Rpb25SZXF1ZXN0KCk7XHJcbiAgICAgIGNvbnN0IGNvcnJlY3Rpb25EZXRhaWxzOiBTYWxlc09yZGVyTGluZUFsbG9jYXRpb25Db3JyZWN0aW9uRGV0YWlscyA9IG5ldyBTYWxlc09yZGVyTGluZUFsbG9jYXRpb25Db3JyZWN0aW9uRGV0YWlscygpO1xyXG4gICAgICByZXF1ZXN0LmFsbG93ZWRUb1JlbW92ZVBpY2tlZEFsbG9jYXRpb25zID0gZmFsc2U7XHJcbiAgICAgIHJlcXVlc3QudHJhbnNJZCA9IHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkO1xyXG4gICAgICByZXF1ZXN0LnNhbGVzT3JkZXJMaW5lQWxsb2NhdGlvbkNvcnJlY3Rpb25EZXRhaWxzRFRPUyA9IFtjb3JyZWN0aW9uRGV0YWlsc107XHJcbiAgICAgIGNvcnJlY3Rpb25EZXRhaWxzLmxpbmVOciA9IHRoaXMudHJhbnNhY3Rpb25MaW5lLmxpbmVOcjtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMucXVhbnRpdHlUb0NvcnJlY3QgPSByb3cucXVhbnRpdHk7XHJcbiAgICAgIGNvcnJlY3Rpb25EZXRhaWxzLmRvY3VtZW50SWQgPSByb3cuZG9jdW1lbnRJZDtcclxuICAgICAgY29ycmVjdGlvbkRldGFpbHMuZG9jdW1lbnRMaW5lTnIgPSByb3cubGluZU51bWJlcjtcclxuICAgICAgdGhpcy50cmFuc2FjdGlvblNlcnZpY2UuYWxsb2NhdGVHb29kc0ZvclNhbGVzT3JkZXJDb3JyZWN0aW9uKHRoaXMudHJhbnNhY3Rpb25JbmZvLmlkLCB0aGlzLnRyYW5zYWN0aW9uSW5mby52ZXJzaW9uLCByZXF1ZXN0KS50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLmdldEdvb2RzQWxsb2NhdGlvblN0YXR1c1dpdGhIaXN0b3J5KCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9wZW5XYXJlaG91c2VMb2NhdGlvbkRpYWxvZygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uTGluZS5xdWFudGl0eVRvQWxsb2NhdGUgPiAwKSB7XHJcbiAgICAgIHRoaXMuX2RpYWxvZ1NlcnZpY2Uuc2hvd1dhcmVob3VzZUxvY2F0aW9uKHRoaXMuYWxsb2NhdGlvbkRldGFpbHMud2FyZWhvdXNlTnIsIHRydWUsIHRydWUsIHRydWUsIHRoaXMudHJhbnNhY3Rpb25MaW5lKVxyXG4gICAgICAgIC50aGVuKCgpID0+IHRoaXMuYWxsb2NhdGlvbkRldGFpbHMubG9jYXRpb25OciA9ICg8YW55PnRoaXMudHJhbnNhY3Rpb25MaW5lKS5sb2NhdGlvbk5yKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCB0cmFuc2FjdGlvbkxpbmVTZXQoKSB7XHJcbiAgICB0aGlzLl9oYW5kbGVUcmFuc2FjdGlvbkxpbmVTZXQodGhpcy50cmFuc2FjdGlvbkxpbmUpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFuZGxlVHJhbnNhY3Rpb25MaW5lU2V0KHRyYW5zTGluZTogVHJhbnNhY3Rpb25MaW5lSW5mbyk6IHZvaWQge1xyXG4gICAgdGhpcy5hbGxvY2F0aW9uRGV0YWlscy5xdWFudGl0eVRvQWxsb2NhdGUgPSB0cmFuc0xpbmUucXVhbnRpdHlUb0FsbG9jYXRlO1xyXG4gICAgdGhpcy5hbGxvY2F0aW9uRGV0YWlscy53YXJlaG91c2VOciA9IHRyYW5zTGluZS53YXJlaG91c2VOdW1iZXI7XHJcbiAgICB0aGlzLmFsbG9jYXRpb25EZXRhaWxzLmxpbmVOciA9IHRyYW5zTGluZS5saW5lTnI7XHJcbiAgICB0aGlzLmdldEdvb2RzQWxsb2NhdGlvblN0YXR1c1dpdGhIaXN0b3J5KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { NgModule } from "@angular/core";
|
|
2
|
+
import { CommonModule } from "@angular/common";
|
|
3
|
+
import { TransactionLineSalesAllocationComponent } from "./transaction-line-sales-allocation.component";
|
|
4
|
+
import { FormModule, IconModule } from "@colijnit/corecomponents_v12";
|
|
5
|
+
import { PipeModule } from "../../pipe/pipe.module";
|
|
6
|
+
import { InputTextModule } from "@colijnit/corecomponents_v12";
|
|
7
|
+
import { TransactionAllocateGoodsHistoryModule } from "../transaction-allocate-goods-history/transaction-allocate-goods-history.module";
|
|
8
|
+
export class TransactionLineSalesAllocationModule {
|
|
9
|
+
}
|
|
10
|
+
TransactionLineSalesAllocationModule.decorators = [
|
|
11
|
+
{ type: NgModule, args: [{
|
|
12
|
+
imports: [
|
|
13
|
+
CommonModule,
|
|
14
|
+
FormModule,
|
|
15
|
+
PipeModule,
|
|
16
|
+
InputTextModule,
|
|
17
|
+
IconModule,
|
|
18
|
+
TransactionAllocateGoodsHistoryModule
|
|
19
|
+
],
|
|
20
|
+
declarations: [
|
|
21
|
+
TransactionLineSalesAllocationComponent
|
|
22
|
+
],
|
|
23
|
+
exports: [
|
|
24
|
+
TransactionLineSalesAllocationComponent
|
|
25
|
+
]
|
|
26
|
+
},] }
|
|
27
|
+
];
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RyYW5zYWN0aW9uL3NyYy9saWIvY29tcG9uZW50L3RyYW5zYWN0aW9uLWxpbmUtc2FsZXMtYWxsb2NhdGlvbi90cmFuc2FjdGlvbi1saW5lLXNhbGVzLWFsbG9jYXRpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBQyx1Q0FBdUMsRUFBQyxNQUFNLCtDQUErQyxDQUFDO0FBQ3RHLE9BQU8sRUFBQyxVQUFVLEVBQUUsVUFBVSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDcEUsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUMscUNBQXFDLEVBQUMsTUFBTSxpRkFBaUYsQ0FBQztBQWtCdEksTUFBTSxPQUFPLG9DQUFvQzs7O1lBaEJoRCxRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osVUFBVTtvQkFDVixVQUFVO29CQUNWLGVBQWU7b0JBQ2YsVUFBVTtvQkFDVixxQ0FBcUM7aUJBQ3RDO2dCQUNELFlBQVksRUFBRTtvQkFDWix1Q0FBdUM7aUJBQ3hDO2dCQUNELE9BQU8sRUFBRTtvQkFDUCx1Q0FBdUM7aUJBQ3hDO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uTGluZVNhbGVzQWxsb2NhdGlvbkNvbXBvbmVudH0gZnJvbSBcIi4vdHJhbnNhY3Rpb24tbGluZS1zYWxlcy1hbGxvY2F0aW9uLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0Zvcm1Nb2R1bGUsIEljb25Nb2R1bGV9IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XHJcbmltcG9ydCB7UGlwZU1vZHVsZX0gZnJvbSBcIi4uLy4uL3BpcGUvcGlwZS5tb2R1bGVcIjtcclxuaW1wb3J0IHtJbnB1dFRleHRNb2R1bGV9IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25BbGxvY2F0ZUdvb2RzSGlzdG9yeU1vZHVsZX0gZnJvbSBcIi4uL3RyYW5zYWN0aW9uLWFsbG9jYXRlLWdvb2RzLWhpc3RvcnkvdHJhbnNhY3Rpb24tYWxsb2NhdGUtZ29vZHMtaGlzdG9yeS5tb2R1bGVcIjtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgRm9ybU1vZHVsZSxcclxuICAgIFBpcGVNb2R1bGUsXHJcbiAgICBJbnB1dFRleHRNb2R1bGUsXHJcbiAgICBJY29uTW9kdWxlLFxyXG4gICAgVHJhbnNhY3Rpb25BbGxvY2F0ZUdvb2RzSGlzdG9yeU1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBUcmFuc2FjdGlvbkxpbmVTYWxlc0FsbG9jYXRpb25Db21wb25lbnRcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIFRyYW5zYWN0aW9uTGluZVNhbGVzQWxsb2NhdGlvbkNvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uTGluZVNhbGVzQWxsb2NhdGlvbk1vZHVsZSB7XHJcbn1cclxuIl19
|