@colijnit/transaction 12.1.72 → 12.1.74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/bundles/colijnit-transaction.umd.js +448 -178
  2. package/bundles/colijnit-transaction.umd.js.map +1 -1
  3. package/colijnit-transaction.metadata.json +1 -1
  4. package/esm2015/lib/assets/dictionary/text.properties.js +37 -1
  5. package/esm2015/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +22 -5
  6. package/esm2015/lib/component/checkout/checkout.component.js +11 -6
  7. package/esm2015/lib/component/core/base/transaction-filter-content-base.component.js +3 -2
  8. package/esm2015/lib/component/core/base/transaction-line-base.component.js +4 -3
  9. package/esm2015/lib/component/relation/relation-base.component.js +4 -1
  10. package/esm2015/lib/component/relation/relation-general/relation-general.component.js +4 -2
  11. package/esm2015/lib/component/transaction/transaction.component.js +7 -2
  12. package/esm2015/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.js +4 -23
  13. package/esm2015/lib/component/transaction-confirmation-history/transaction-confirmation-history.component.js +2 -4
  14. package/esm2015/lib/component/transaction-header/transaction-header-delivery/transaction-header-delivery.component.js +10 -3
  15. package/esm2015/lib/component/transaction-line-fields/transaction-line-supplier-button.component.js +14 -4
  16. package/esm2015/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.js +1 -4
  17. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-purchase-order-overview/transaction-quick-access-purchase-order-overview.component.js +49 -1
  18. package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-purchase-order-overview/transaction-quick-access-purchase-order-overview.module.js +8 -2
  19. package/esm2015/lib/component/transaction-search/transaction-filter-content/enum/search-placeholder.enum.js +27 -0
  20. package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-article/transaction-purchase-order-filter-content-article.component.js +7 -3
  21. package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-logistics/transaction-purchase-order-filter-content-logistics.component.js +6 -3
  22. package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-order/transaction-purchase-order-filter-content-order.component.js +8 -3
  23. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-article/transaction-sales-order-filter-content-article.component.js +23 -18
  24. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-logistics/transaction-sales-order-filter-content-logistics.component.js +133 -130
  25. package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.js +44 -38
  26. package/esm2015/lib/component/transaction-search/transaction-filter-item/transaction-filter-item.component.js +3 -2
  27. package/esm2015/lib/service/error.service.js +17 -1
  28. package/esm2015/lib/service/pending-reason.service.js +17 -11
  29. package/esm2015/lib/service/relation-connector.service.js +31 -1
  30. package/esm2015/lib/service/relation.service.js +40 -2
  31. package/esm2015/lib/service/transaction-connector-adapter.service.js +17 -1
  32. package/esm2015/lib/service/transaction-connector.service.js +6 -1
  33. package/esm2015/lib/service/transaction-mapping.service.js +2 -1
  34. package/esm2015/lib/service/transaction.service.js +14 -5
  35. package/fesm2015/colijnit-transaction.js +677 -396
  36. package/fesm2015/colijnit-transaction.js.map +1 -1
  37. package/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.d.ts +8 -4
  38. package/lib/component/checkout/checkout.component.d.ts +2 -0
  39. package/lib/component/core/base/transaction-filter-content-base.component.d.ts +2 -1
  40. package/lib/component/relation/relation-base.component.d.ts +3 -1
  41. package/lib/component/relation/relation-general/relation-general.component.d.ts +2 -0
  42. package/lib/component/relation/relation-general/style/_layout.scss +1 -0
  43. package/lib/component/transaction-confirmation-details/style/_layout.scss +0 -16
  44. package/lib/component/transaction-confirmation-details/transaction-confirmation-details.component.d.ts +0 -4
  45. package/lib/component/transaction-confirmation-history/style/_layout.scss +0 -4
  46. package/lib/component/transaction-header/transaction-header-delivery/transaction-header-delivery.component.d.ts +1 -0
  47. package/lib/component/transaction-line-fields/transaction-line-supplier-button.component.d.ts +1 -0
  48. package/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.d.ts +0 -1
  49. package/lib/component/transaction-quick-access/transaction-quick-access/style/material.scss +1 -1
  50. package/lib/component/transaction-quick-access/transaction-quick-access-purchase-order-overview/style/_layout.scss +21 -0
  51. package/lib/component/transaction-quick-access/transaction-quick-access-purchase-order-overview/style/_material-definition.scss +2 -0
  52. package/lib/component/transaction-quick-access/transaction-quick-access-purchase-order-overview/transaction-quick-access-purchase-order-overview.component.d.ts +10 -0
  53. package/lib/component/transaction-search/transaction-filter-content/enum/search-placeholder.enum.d.ts +25 -0
  54. package/lib/component/transaction-search/transaction-filter-item/transaction-filter-item.component.d.ts +1 -1
  55. package/lib/service/pending-reason.service.d.ts +8 -7
  56. package/lib/service/relation-connector.service.d.ts +2 -0
  57. package/lib/service/relation.service.d.ts +7 -0
  58. package/lib/service/transaction-connector-adapter.service.d.ts +1 -0
  59. package/lib/service/transaction-connector.service.d.ts +1 -0
  60. package/lib/service/transaction.service.d.ts +1 -0
  61. package/lib/style/transaction-globals.scss +3 -43
  62. package/package.json +3 -3
@@ -63,16 +63,20 @@ import { SharedService as SharedService$1, sendMethodsWithIcon, KeyPadModule, St
63
63
  import { CustomerFullObject } from '@colijnit/relationapi/build/model/customer-full-object.bo';
64
64
  import { RelationStatus } from '@colijnit/articleapi/build/enum/relation-status.enum';
65
65
  import { RelationKind } from '@colijnit/articleapi/build/enum/relation-kind.enum';
66
+ import { TransactionKind } from '@colijnit/transactionapi/build/enum/transaction-kind.enum';
66
67
  import { RelationApi } from '@colijnit/relationapi';
67
68
  import { SupplierFullObject } from '@colijnit/relationapi/build/model/supplier-full-object.bo';
68
69
  import { RelationListObject } from '@colijnit/relationapi/build/model/relation-list-object.bo';
69
70
  import { BranchLov } from '@colijnit/relationapi/build/model/branch-lov.bo';
70
- import { TransactionKind } from '@colijnit/transactionapi/build/enum/transaction-kind.enum';
71
+ import { ValidationResult } from '@colijnit/ioneconnector/build/model/validation-result';
72
+ import { Relation } from '@colijnit/relationapi/build/model/relation.bo';
71
73
  import { CreateTransactionRequest } from '@colijnit/transactionapi/build/model/create-transaction-request';
72
74
  import { FormMasterService, CoDialogModule, ButtonModule, CollapsibleModule, InputCheckboxModule, InputTextModule, InputComboBoxModule, FormModule, InputRadioButtonModule, IconModule, InputTextComponent, InputListboxModule, DropDownModule, InputSearchModule, ColumnAlign, SimpleGridColumnDirective, ObserveVisibilityModule, ColorSequenceService, PriceDisplayPipeModule, InputDatePickerModule, Carousel3dModule, CarouselModule, FilterPipeModule, InputDatePickerComponent, InputTextareaComponent, InputTextareaModule, InputNumberPickerModule, CoDialogPromptModule, MultiSelectListModule, PopupModule, CoSidebarModule, CoGridModule, CoRichTextEditorModule, SimpleGridModule, GridToolbarButtonModule, InputDateRangePickerModule, ClickoutsideModule, CheckmarkOverlayModule, CoOrientation, CoDirection, FilterItemModule, PaginationModule, PaginationBarModule, IconCollapseHandleModule } from '@colijnit/corecomponents_v12';
73
75
  import { FlexModule } from '@angular/flex-layout';
74
76
  import { trigger, state, style, transition, animate } from '@angular/animations';
77
+ import { RelationKind as RelationKind$1 } from '@colijnit/relationapi/build/enum/relation-kind.enum';
75
78
  import { AddressType } from '@colijnit/relationapi/build/enum/address-type.enum';
79
+ import { RelationNameKind } from '@colijnit/relationapi/build/enum/relation-name-kind.enum';
76
80
  import { CommonModule, DatePipe } from '@angular/common';
77
81
  import { DateUtils } from '@colijnit/ioneconnector/build/utils/date-utils';
78
82
  import { NumberUtils } from '@colijnit/ioneconnector/build/utils/number-utils';
@@ -102,16 +106,12 @@ import { PrintPurchaseOrderRequest } from '@colijnit/mainapi/build/model/print-p
102
106
  import { PdfPurchaseOrderRequest } from '@colijnit/mainapi/build/model/pdf-purchase-order-request';
103
107
  import { RelationRequest } from '@colijnit/relationapi/build/model/relation-request';
104
108
  import { CoDocument } from '@colijnit/sharedapi/build/model/co-document.bo';
105
- import { ValidationResult } from '@colijnit/ioneconnector/build/model/validation-result';
106
- import { Relation } from '@colijnit/relationapi/build/model/relation.bo';
107
- import { RelationNameKind } from '@colijnit/relationapi/build/enum/relation-name-kind.enum';
108
109
  import { GenderType } from '@colijnit/relationapi/build/enum/gender-type.enum';
109
110
  import { FunctionUtils } from '@colijnit/ioneconnector/build/utils/function-utils';
110
111
  import { ContactOption } from '@colijnit/relationapi/build/model/contact-option.bo';
111
112
  import { BusinessObjectUtils } from '@colijnit/ioneconnector/build/utils/business-object-utils';
112
113
  import { ScrollingModule } from '@angular/cdk/scrolling';
113
114
  import { RelationSmallObject } from '@colijnit/relationapi/build/model/relation-small-object.bo';
114
- import { RelationKind as RelationKind$1 } from '@colijnit/relationapi/build/enum/relation-kind.enum';
115
115
  import { ReceiveGoodsForPurchaseOrderCorrectionRequest } from '@colijnit/transactionapi/build/model/receive-goods-for-purchase-order-correction-request.bo';
116
116
  import { PurchaseOrderLineReceiptCorrectionDetails } from '@colijnit/transactionapi/build/model/purchase-order-line-receipt-correction-details.bo';
117
117
  import { GetPurchasePortalLine } from '@colijnit/transactionapi/build/model/get-purchase-portal-line';
@@ -426,6 +426,24 @@ class Dictionary {
426
426
  "SEARCH_NUMBER_SUPPLIER_OR_DATE": "Zoeken op nummer, leverancier of datum",
427
427
  "SEARCH_PRICE_LIST": "Zoek prijslijst",
428
428
  "SEARCH_VAT": "Zoek btw",
429
+ "SEARCH_ARTICLE_NR": "Zoek artikelnummer",
430
+ "SEARCH_BATCH_NUMBER": "Zoek batchnummer",
431
+ "SEARCH_BRANCH": "Zoek filiaal",
432
+ "SEARCH_COMMISSION_CODE": "Zoek commissiecode",
433
+ "SEARCH_CUSTOMER_GROUP": "Zoek klantgroep",
434
+ "SEARCH_CUSTOMER_NAME": "Zoek klantnaam",
435
+ "SEARCH_EXCEEDENCE_CODE": "Zoek uitloopcode",
436
+ "SEARCH_MAIN_ARTICLE": "Zoek hoofdartikel",
437
+ "SEARCH_ONHOLD": "Zoek gepauzeerd",
438
+ "SEARCH_OWN_REFERENCE": "Zoek eigen referentie",
439
+ "SEARCH_PURCHASENUMBER": "Zoek inkoopnummer",
440
+ "SEARCH_PURCHASEPERSON": "Zoek inkoper",
441
+ "SEARCH_SALESPERSON": "Zoek verkoper",
442
+ "SEARCH_SERIAL_NUMBER": "Zoek serienummer",
443
+ "SEARCH_SOURCE_WAREHOUSE": "Zoek bronmagazijn",
444
+ "SEARCH_SUPPLIER": "Zoek leverancier",
445
+ "SEARCH_TAGS": "Zoek tags",
446
+ "SEARCH_TURNOVER_GROUP": "Zoek omzetgroep",
429
447
  "SEARCH_WAREHOUSE": "Zoek magazijn",
430
448
  "SELECT": "Selecteren",
431
449
  "SELECT_A": "Selecteer een",
@@ -773,6 +791,24 @@ class Dictionary {
773
791
  "SEARCH_NUMBER_SUPPLIER_OR_DATE": "Search for number, supplier or date",
774
792
  "SEARCH_PRICE_LIST": "Search pricelist",
775
793
  "SEARCH_VAT": "Search vat",
794
+ "SEARCH_ARTICLE_NR": "Search article number",
795
+ "SEARCH_BATCH_NUMBER": "Search batch number",
796
+ "SEARCH_BRANCH": "Search branch",
797
+ "SEARCH_COMMISSION_CODE": "Search commission code",
798
+ "SEARCH_CUSTOMER_GROUP": "Search customer group",
799
+ "SEARCH_CUSTOMER_NAME": "Search customer name",
800
+ "SEARCH_EXCEEDENCE_CODE": "Search exceedence code",
801
+ "SEARCH_MAIN_ARTICLE": "Search main article",
802
+ "SEARCH_ONHOLD": "Search on hold",
803
+ "SEARCH_OWN_REFERENCE": "Search own reference",
804
+ "SEARCH_PURCHASENUMBER": "Search purchase number",
805
+ "SEARCH_PURCHASEPERSON": "Search purchase person",
806
+ "SEARCH_SALESPERSON": "Search sales person",
807
+ "SEARCH_SERIAL_NUMBER": "Search serial number",
808
+ "SEARCH_SOURCE_WAREHOUSE": "Search source warehouse",
809
+ "SEARCH_SUPPLIER": "Search supplier",
810
+ "SEARCH_TAGS": "Search tags",
811
+ "SEARCH_TURNOVER_GROUP": "Search turnover group",
776
812
  "SEARCH_WAREHOUSE": "Search warehouse",
777
813
  "SELECT": "Select",
778
814
  "SELECT_A": "Select a",
@@ -1753,7 +1789,8 @@ TransactionLineBaseComponent.decorators = [
1753
1789
  ];
1754
1790
  TransactionLineBaseComponent.propDecorators = {
1755
1791
  transactionLine: [{ type: Input }],
1756
- transactionInfo: [{ type: Input }]
1792
+ transactionInfo: [{ type: Input }],
1793
+ readonly: [{ type: HostBinding, args: ['class.read-only',] }]
1757
1794
  };
1758
1795
 
1759
1796
  class DialogTransactionLineBaseComponent extends TransactionLineBaseComponent {
@@ -2174,6 +2211,22 @@ class ErrorService {
2174
2211
  }
2175
2212
  });
2176
2213
  }
2214
+ else if (response.validationResult.fieldValidations) {
2215
+ messages.push(this._messageAsValidationError('Validation error'));
2216
+ for (let key in response.validationResult.fieldValidations) {
2217
+ if (response.validationResult.fieldValidations.hasOwnProperty(key)) {
2218
+ if (response.validationResult.fieldValidations[key].messages && response.validationResult.fieldValidations[key].messages.length > 0) {
2219
+ for (let i = 0; i < response.validationResult.fieldValidations[key].messages.length; i++) {
2220
+ const messageCode = {
2221
+ value: response.validationResult.fieldValidations[key].messages[i].fieldId,
2222
+ defaultStr: response.validationResult.fieldValidations[key].messages[i].message
2223
+ };
2224
+ messagesDetails.push(this._messageDetails(messageCode));
2225
+ }
2226
+ }
2227
+ }
2228
+ }
2229
+ }
2177
2230
  }
2178
2231
  messages.push('</div>');
2179
2232
  return this.showError(messages.join(''), messagesDetails.length > 0 ? messagesDetails.join('') : undefined);
@@ -3206,6 +3259,22 @@ class TransactionConnectorAdapterService {
3206
3259
  }
3207
3260
  });
3208
3261
  }
3262
+ changeHeaderTransactionDeliveryDateDefinitive(uuid, definitive) {
3263
+ return __awaiter(this, void 0, void 0, function* () {
3264
+ const request = {
3265
+ transactionUuid: uuid,
3266
+ newDeliveryDateDefinitive: definitive
3267
+ };
3268
+ const response = yield this.connector.changeHeaderDeliveryDateDefinitive(request);
3269
+ if (response && response.validationResult && response.validationResult.success) {
3270
+ return this._boFactory.makeWithRawBackendData(TransactionInfoResponse, response.resultObject);
3271
+ }
3272
+ else {
3273
+ this._handleExceptionFromResponse(response);
3274
+ return null;
3275
+ }
3276
+ });
3277
+ }
3209
3278
  changeHeaderTransactionRemark(uuid, remark) {
3210
3279
  return __awaiter(this, void 0, void 0, function* () {
3211
3280
  const request = {
@@ -4338,6 +4407,11 @@ class TransactionConnectorService {
4338
4407
  return this._adapterService.changeHeaderTransactionDeliveryDate(uuid, date);
4339
4408
  });
4340
4409
  }
4410
+ changeHeaderTransactionDeliveryDateDefinitive(uuid, definitive) {
4411
+ return __awaiter(this, void 0, void 0, function* () {
4412
+ return this._adapterService.changeHeaderTransactionDeliveryDateDefinitive(uuid, definitive);
4413
+ });
4414
+ }
4341
4415
  changeHeaderTransactionRemark(uuid, remark) {
4342
4416
  return __awaiter(this, void 0, void 0, function* () {
4343
4417
  return this._adapterService.changeHeaderTransactionRemark(uuid, remark);
@@ -4881,6 +4955,36 @@ class RelationConnectorService {
4881
4955
  });
4882
4956
  });
4883
4957
  }
4958
+ insertSupplier(relation) {
4959
+ return __awaiter(this, void 0, void 0, function* () {
4960
+ return new Promise((resolve, reject) => {
4961
+ return this.connector.insertSupplier(relation).then((result) => {
4962
+ if (result.validationResult && result.validationResult.success) {
4963
+ resolve(this._boFactory.makeWithRawBackendData(SupplierFullObject, result.resultObject));
4964
+ }
4965
+ else {
4966
+ this._handleExceptionFromResponse(result);
4967
+ reject(null);
4968
+ }
4969
+ });
4970
+ });
4971
+ });
4972
+ }
4973
+ updateSupplier(relation) {
4974
+ return __awaiter(this, void 0, void 0, function* () {
4975
+ return new Promise((resolve, reject) => {
4976
+ return this.connector.updateSupplier(relation).then((result) => {
4977
+ if (result.validationResult && result.validationResult.success) {
4978
+ resolve(this._boFactory.makeWithRawBackendData(SupplierFullObject, result.resultObject));
4979
+ }
4980
+ else {
4981
+ this._handleExceptionFromResponse(result);
4982
+ reject(null);
4983
+ }
4984
+ });
4985
+ });
4986
+ });
4987
+ }
4884
4988
  _handleExceptionFromResponse(result) {
4885
4989
  this._errorService.showValidationError(result);
4886
4990
  }
@@ -4897,8 +5001,149 @@ RelationConnectorService.ctorParameters = () => [
4897
5001
  { type: TransactionEventService }
4898
5002
  ];
4899
5003
 
5004
+ class RelationService {
5005
+ constructor(_adapterService, _selectMultipleCacheService, _selectSingleCacheService, _selectMultipleParameterizedCacheService) {
5006
+ this._adapterService = _adapterService;
5007
+ this._selectMultipleCacheService = _selectMultipleCacheService;
5008
+ this._selectSingleCacheService = _selectSingleCacheService;
5009
+ this._selectMultipleParameterizedCacheService = _selectMultipleParameterizedCacheService;
5010
+ this._lockMethods = new Map([
5011
+ [RelationKind.Customer, (relationNr) => this._lockCustomerFullObject(relationNr)],
5012
+ [RelationKind.Supplier, (relationNr) => this._lockSupplierFullObject(relationNr)],
5013
+ [RelationKind.Personnel, (relationNr) => this._lockEmployeeFullObject(relationNr)],
5014
+ [RelationKind.Branch, (relationNr) => this._lockBranchFullObject(relationNr)],
5015
+ [RelationKind.Company, (relationNr) => this._lockCompanyFullObject(relationNr)],
5016
+ [RelationKind.ContactPerson, (relationNr) => this._lockContactPerson(relationNr)],
5017
+ ]);
5018
+ this._getMethods = new Map([
5019
+ [RelationKind.Customer, (relationNr) => this.getCustomerFullObject(relationNr)],
5020
+ [RelationKind.Supplier, (relationNr) => this.getSupplierFullObject(relationNr)]
5021
+ ]);
5022
+ this._updateMethods = new Map([
5023
+ [RelationKind.Customer, (relation) => this.updateCustomer(relation)],
5024
+ [RelationKind.Supplier, (relation) => this.updateSupplier(relation)]
5025
+ ]);
5026
+ this._insertMethods = new Map([
5027
+ [RelationKind.Customer, (relation) => this.insertCustomer(relation)],
5028
+ [RelationKind.Supplier, (relation) => this.insertSupplier(relation)]
5029
+ ]);
5030
+ }
5031
+ getCustomerFullObject(relationNo) {
5032
+ return this._selectSingleCacheService.requestCache(CustomerFullObject, relationNo, () => {
5033
+ return this._adapterService.getCustomerFullObject(relationNo);
5034
+ }).getValue();
5035
+ }
5036
+ getSupplierFullObject(relationNo) {
5037
+ return this._selectSingleCacheService.requestCache(SupplierFullObject, relationNo, () => {
5038
+ return this._adapterService.getSupplierFullObject(relationNo);
5039
+ }).getValue();
5040
+ }
5041
+ insertCustomer(relation) {
5042
+ return this._adapterService.insertCustomer(relation);
5043
+ }
5044
+ updateCustomer(relation) {
5045
+ return __awaiter(this, void 0, void 0, function* () {
5046
+ return this._adapterService.updateCustomer(relation);
5047
+ });
5048
+ }
5049
+ insertSupplier(relation) {
5050
+ return this._adapterService.insertSupplier(relation);
5051
+ }
5052
+ updateSupplier(relation) {
5053
+ return __awaiter(this, void 0, void 0, function* () {
5054
+ return this._adapterService.updateSupplier(relation);
5055
+ });
5056
+ }
5057
+ getRelationListObjects(relationRequest) {
5058
+ return this._adapterService.getRelationListObjects(relationRequest);
5059
+ }
5060
+ getRelationNumber(relationId) {
5061
+ return this._adapterService.getRelationNumber(relationId);
5062
+ }
5063
+ getBranches(branchNr) {
5064
+ return this._selectMultipleParameterizedCacheService.requestCache(BranchLov, (branchNr) => {
5065
+ return this._adapterService.getBranches(branchNr);
5066
+ }).getValue(branchNr);
5067
+ }
5068
+ insertRelation(relationKind, relation) {
5069
+ const insertMethod = this._insertMethods.get(relationKind);
5070
+ if (insertMethod) {
5071
+ return insertMethod.call(this, relation);
5072
+ }
5073
+ else {
5074
+ const result = new Relation();
5075
+ return Promise.resolve(result);
5076
+ }
5077
+ }
5078
+ updateRelation(relationKind, relation) {
5079
+ const updateMethod = this._updateMethods.get(relationKind);
5080
+ if (updateMethod) {
5081
+ return updateMethod.call(this, relation);
5082
+ }
5083
+ else {
5084
+ const result = new Relation();
5085
+ return Promise.resolve(result);
5086
+ }
5087
+ }
5088
+ lockRelation(relationKind, relationNr) {
5089
+ const lockMethod = this._lockMethods.get(relationKind);
5090
+ if (lockMethod) {
5091
+ return lockMethod.call(this, relationNr);
5092
+ }
5093
+ else {
5094
+ const result = new ValidationResult();
5095
+ result.success = false;
5096
+ return Promise.resolve(result);
5097
+ }
5098
+ }
5099
+ getRelation(relationKind, relationNr) {
5100
+ const getMethod = this._getMethods.get(relationKind);
5101
+ if (getMethod) {
5102
+ return getMethod.call(this, relationNr);
5103
+ }
5104
+ else {
5105
+ const result = new ValidationResult();
5106
+ result.success = false;
5107
+ return Promise.resolve(null);
5108
+ }
5109
+ }
5110
+ commit() {
5111
+ return this._adapterService.commit();
5112
+ }
5113
+ _lockCustomerFullObject(relationNr) {
5114
+ return this._adapterService.lockCustomerFullObject(relationNr);
5115
+ }
5116
+ _lockSupplierFullObject(relationNr) {
5117
+ return this._adapterService.lockSupplierFullObject(relationNr);
5118
+ }
5119
+ _lockEmployeeFullObject(relationNr) {
5120
+ return this._adapterService.lockEmployeeFullObject(relationNr);
5121
+ }
5122
+ _lockBranchFullObject(relationNr) {
5123
+ return this._adapterService.lockBranchFullObject(relationNr);
5124
+ }
5125
+ _lockCompanyFullObject(relationNr) {
5126
+ return this._adapterService.lockCompanyFullObject(relationNr);
5127
+ }
5128
+ _lockContactPerson(relationNr) {
5129
+ return this._adapterService.lockContactPerson(relationNr);
5130
+ }
5131
+ }
5132
+ RelationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function RelationService_Factory() { return new RelationService(i0.ɵɵinject(RelationConnectorService), i0.ɵɵinject(SelectMultipleCacheService), i0.ɵɵinject(SelectSingleCacheService), i0.ɵɵinject(SelectMultipleParameterizedCacheService)); }, token: RelationService, providedIn: "root" });
5133
+ RelationService.decorators = [
5134
+ { type: Injectable, args: [{
5135
+ providedIn: "root"
5136
+ },] }
5137
+ ];
5138
+ RelationService.ctorParameters = () => [
5139
+ { type: RelationConnectorService },
5140
+ { type: SelectMultipleCacheService },
5141
+ { type: SelectSingleCacheService },
5142
+ { type: SelectMultipleParameterizedCacheService }
5143
+ ];
5144
+
4900
5145
  class PendingReasonService {
4901
- constructor(options, dialogService, connector, sharedService, articleConnector, dictionaryService, transactionEventService, relationConnector) {
5146
+ constructor(options, dialogService, connector, sharedService, articleConnector, dictionaryService, transactionEventService, relationService) {
4902
5147
  this.options = options;
4903
5148
  this.dialogService = dialogService;
4904
5149
  this.connector = connector;
@@ -4906,7 +5151,7 @@ class PendingReasonService {
4906
5151
  this.articleConnector = articleConnector;
4907
5152
  this.dictionaryService = dictionaryService;
4908
5153
  this.transactionEventService = transactionEventService;
4909
- this.relationConnector = relationConnector;
5154
+ this.relationService = relationService;
4910
5155
  this.logout = new Subject();
4911
5156
  this.transactionUpdated = new BehaviorSubject(undefined);
4912
5157
  this.relationUpdated = new BehaviorSubject(undefined);
@@ -4917,7 +5162,7 @@ class PendingReasonService {
4917
5162
  this.purchasePortalLine = [];
4918
5163
  this.docDeliveryBatch = new DocDeliveryBatch();
4919
5164
  this.articleAmount = 0;
4920
- this._relation = new CustomerFullObject();
5165
+ this._relation = new Relation();
4921
5166
  }
4922
5167
  set relation(value) {
4923
5168
  if (value) {
@@ -4936,6 +5181,11 @@ class PendingReasonService {
4936
5181
  this.transactionEventService.connectionInitialized.next(true);
4937
5182
  });
4938
5183
  }
5184
+ resetCurrentTransaction() {
5185
+ this.currentTransaction = new TransactionInfoResponse();
5186
+ this._relation = new CustomerFullObject();
5187
+ this.articleAmount = 0;
5188
+ }
4939
5189
  cancelAddTransactionLine(lineUuid, remember = true) {
4940
5190
  return __awaiter(this, void 0, void 0, function* () {
4941
5191
  return new Promise((resolve, reject) => {
@@ -5138,14 +5388,14 @@ class PendingReasonService {
5138
5388
  }
5139
5389
  _getRelation(relation) {
5140
5390
  if (relation) {
5141
- this.relationConnector.getRelationNumber(relation.relationId).then((relationNr) => {
5391
+ this.relationService.getRelationNumber(relation.relationId).then((relationNr) => {
5142
5392
  if (relation.relationType === RelationKind.Customer) {
5143
- this.relationConnector.getCustomerFullObject(parseInt(relationNr, 0)).then((customer) => {
5393
+ this.relationService.getCustomerFullObject(parseInt(relationNr, 0)).then((customer) => {
5144
5394
  this.relation = customer;
5145
5395
  });
5146
5396
  }
5147
5397
  else if (relation.relationType === RelationKind.Supplier) {
5148
- this.relationConnector.getSupplierFullObject(parseInt(relationNr, 0)).then((supplier) => {
5398
+ this.relationService.getSupplierFullObject(parseInt(relationNr, 0)).then((supplier) => {
5149
5399
  this.relation = supplier;
5150
5400
  });
5151
5401
  }
@@ -5153,7 +5403,7 @@ class PendingReasonService {
5153
5403
  }
5154
5404
  }
5155
5405
  }
5156
- PendingReasonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PendingReasonService_Factory() { return new PendingReasonService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(DialogService), i0.ɵɵinject(TransactionConnectorService), i0.ɵɵinject(i4.SharedService), i0.ɵɵinject(ArticleConnectorService), i0.ɵɵinject(DictionaryService), i0.ɵɵinject(TransactionEventService), i0.ɵɵinject(RelationConnectorService)); }, token: PendingReasonService, providedIn: "root" });
5406
+ PendingReasonService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PendingReasonService_Factory() { return new PendingReasonService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(DialogService), i0.ɵɵinject(TransactionConnectorService), i0.ɵɵinject(i4.SharedService), i0.ɵɵinject(ArticleConnectorService), i0.ɵɵinject(DictionaryService), i0.ɵɵinject(TransactionEventService), i0.ɵɵinject(RelationService)); }, token: PendingReasonService, providedIn: "root" });
5157
5407
  PendingReasonService.decorators = [
5158
5408
  { type: Injectable, args: [{
5159
5409
  providedIn: "root"
@@ -5167,7 +5417,7 @@ PendingReasonService.ctorParameters = () => [
5167
5417
  { type: ArticleConnectorService },
5168
5418
  { type: DictionaryService },
5169
5419
  { type: TransactionEventService },
5170
- { type: RelationConnectorService }
5420
+ { type: RelationService }
5171
5421
  ];
5172
5422
 
5173
5423
  class TransactionService extends PendingReasonService {
@@ -5258,6 +5508,15 @@ class TransactionService extends PendingReasonService {
5258
5508
  return false;
5259
5509
  });
5260
5510
  }
5511
+ updateHeaderTransactionDeliveryDateDefinitive(uuid, definitive) {
5512
+ return __awaiter(this, void 0, void 0, function* () {
5513
+ const response = yield this.connector.changeHeaderTransactionDeliveryDateDefinitive(uuid, definitive);
5514
+ if (response) {
5515
+ return this.handleHeaderOperationStatuses(response);
5516
+ }
5517
+ return false;
5518
+ });
5519
+ }
5261
5520
  updateHeaderTransactionRemark(uuid, remark) {
5262
5521
  return __awaiter(this, void 0, void 0, function* () {
5263
5522
  const response = yield this.connector.changeHeaderTransactionRemark(uuid, remark);
@@ -5472,10 +5731,10 @@ class TransactionService extends PendingReasonService {
5472
5731
  // this._cleanRelationBeforeSave();
5473
5732
  this.initializeTransaction();
5474
5733
  if (!this.relation.relationId) {
5475
- this.relation = yield this.relationConnector.insertCustomer(this.relation);
5734
+ this.relation = yield this.relationService.insertRelation(this._relationKindFromTransactionKind.get(this.transactionKind), this.relation);
5476
5735
  }
5477
5736
  else {
5478
- this.relation = yield this.relationConnector.updateCustomer(this.relation);
5737
+ this.relation = yield this.relationService.updateRelation(this._relationKindFromTransactionKind.get(this.transactionKind), this.relation);
5479
5738
  }
5480
5739
  if (!this.currentTransaction.transactionInfo.relation) {
5481
5740
  return yield this.addRelationToTransaction(this.relation.relationId);
@@ -5980,7 +6239,7 @@ class TransactionService extends PendingReasonService {
5980
6239
  });
5981
6240
  }
5982
6241
  }
5983
- TransactionService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionService_Factory() { return new TransactionService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(DialogService), i0.ɵɵinject(TransactionConnectorService), i0.ɵɵinject(i4.SharedService), i0.ɵɵinject(ArticleConnectorService), i0.ɵɵinject(DictionaryService), i0.ɵɵinject(TransactionEventService), i0.ɵɵinject(RelationConnectorService)); }, token: TransactionService, providedIn: "root" });
6242
+ TransactionService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TransactionService_Factory() { return new TransactionService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(DialogService), i0.ɵɵinject(TransactionConnectorService), i0.ɵɵinject(i4.SharedService), i0.ɵɵinject(ArticleConnectorService), i0.ɵɵinject(DictionaryService), i0.ɵɵinject(TransactionEventService), i0.ɵɵinject(RelationService)); }, token: TransactionService, providedIn: "root" });
5984
6243
  TransactionService.decorators = [
5985
6244
  { type: Injectable, args: [{
5986
6245
  providedIn: "root"
@@ -6007,24 +6266,27 @@ class CheckoutComponent {
6007
6266
  }
6008
6267
  ngOnInit() {
6009
6268
  this.service.transactionKind = this.transactionType;
6269
+ this.relationType = this.service.getRelationKindFromTransactionKind();
6010
6270
  }
6011
6271
  // ngOnDestroy(): void {
6012
6272
  // this._subscriptions.forEach(subscription => subscription.unsubscribe());
6013
6273
  // }
6014
6274
  handleCreateTransaction(event) {
6015
6275
  return __awaiter(this, void 0, void 0, function* () {
6276
+ let success = true;
6016
6277
  if (this.stepper.activeStep === 0 && (yield this.handleRelationValidation())) {
6017
- const success = yield this.service.saveRelation();
6278
+ success = yield this.service.saveRelation();
6018
6279
  if (success) {
6019
6280
  yield this.service.updateHeaderTransactionDefinitive(this.service.currentTransaction.transactionInfo.uuid, true);
6020
6281
  }
6021
6282
  }
6283
+ if (!success) {
6284
+ return;
6285
+ }
6022
6286
  const response = yield this.service.saveTransaction();
6023
6287
  if (response && response.isSuccess) {
6024
6288
  const id = this.service.currentTransaction.transactionInfo.id;
6025
- this.service.currentTransaction = new TransactionInfoResponse();
6026
- this.service.relation = new CustomerFullObject();
6027
- this.service.articleAmount = 0;
6289
+ this.service.resetCurrentTransaction();
6028
6290
  this.transactionFinished.emit({ id: id, fromCheckout: this.showCreateTransactionButton });
6029
6291
  }
6030
6292
  });
@@ -6100,7 +6362,9 @@ CheckoutComponent.decorators = [
6100
6362
  (createClicked)="handleCreateTransaction($event)"
6101
6363
  >
6102
6364
  <co-stepper-step #stepRelation [index]="1" [label]="'YOUR_DATA' | localize" (validateStep)="handleRelationValidation()">
6103
- <co-checkout-overview-relation-edit #checkoutRelation *ngIf="stepRelation.show" [(relation)]="service.relation"
6365
+ <co-checkout-overview-relation-edit #checkoutRelation *ngIf="stepRelation.show"
6366
+ [(relation)]="service.relation"
6367
+ [relationType]="relationType"
6104
6368
  [deliveryAddressNawNr]="deliveryAddressNawNr"
6105
6369
  [invoiceAddressNawNr]="invoiceAddressNawNr"
6106
6370
  (deliveryAddressChange)="handleDeliveryAddressChange($event)"
@@ -6158,8 +6422,10 @@ class CheckoutOverviewRelationEditComponent {
6158
6422
  constructor(_formMaster, service) {
6159
6423
  this._formMaster = _formMaster;
6160
6424
  this.service = service;
6425
+ this.relationKind = RelationKind$1;
6161
6426
  this.icons = Icon;
6162
6427
  this.addressType = AddressType;
6428
+ this.relationType = RelationKind$1.Customer;
6163
6429
  this.validSubmit = new EventEmitter();
6164
6430
  this.invalidSubmit = new EventEmitter();
6165
6431
  this.deliveryAddressChange = new EventEmitter();
@@ -6170,6 +6436,12 @@ class CheckoutOverviewRelationEditComponent {
6170
6436
  set relation(value) {
6171
6437
  this._relation = value;
6172
6438
  if (this._relation) {
6439
+ if (this._relation instanceof CustomerFullObject) {
6440
+ this.customerGroup = this._relation.customerGroup;
6441
+ }
6442
+ else {
6443
+ this._relation.type = RelationNameKind.Company;
6444
+ }
6173
6445
  this.address = this._relation.getFirstAddressOrCreateNew();
6174
6446
  const firstActiveAddress = this._relation.activeAddresses.length > 0 ? this._relation.activeAddresses[0] : undefined;
6175
6447
  this.deliveryAddressNawNr = firstActiveAddress ? firstActiveAddress.nawNr : 0;
@@ -6192,6 +6464,12 @@ class CheckoutOverviewRelationEditComponent {
6192
6464
  }
6193
6465
  });
6194
6466
  }
6467
+ handleCustomerGroupChange(group) {
6468
+ this.customerGroup = group;
6469
+ if (this._relation instanceof CustomerFullObject) {
6470
+ this._relation.customerGroup = this.customerGroup;
6471
+ }
6472
+ }
6195
6473
  updateRelation(rel) {
6196
6474
  this._relation = rel;
6197
6475
  this.relationChange.emit(this._relation);
@@ -6233,15 +6511,15 @@ CheckoutOverviewRelationEditComponent.decorators = [
6233
6511
  </div>
6234
6512
  <div class="checkout-data-column">
6235
6513
  <div class="checkout-data-row">
6236
- <co-relation-type
6514
+ <co-relation-type *ngIf="relationType === relationKind.Customer"
6237
6515
  [relation]="relation"
6238
6516
  ></co-relation-type>
6239
6517
  </div>
6240
- <div class="checkout-data-row">
6241
- <relation-customer-groups [(model)]="relation.customerGroup" required></relation-customer-groups>
6518
+ <div class="checkout-data-row" *ngIf="relationType === relationKind.Customer">
6519
+ <relation-customer-groups [model]="customerGroup" (modelChange)="handleCustomerGroupChange($event)" required></relation-customer-groups>
6242
6520
  </div>
6243
6521
  <div class="checkout-data-row">
6244
- <co-relation-general [relation]="relation" (relationChange)="updateRelation($event)"></co-relation-general>
6522
+ <co-relation-general [relation]="relation" [relationType]="relationType" (relationChange)="updateRelation($event)"></co-relation-general>
6245
6523
  </div>
6246
6524
  <div class="checkout-data-row">
6247
6525
  <co-relation-address [address]="address"></co-relation-address>
@@ -6338,6 +6616,7 @@ CheckoutOverviewRelationEditComponent.ctorParameters = () => [
6338
6616
  ];
6339
6617
  CheckoutOverviewRelationEditComponent.propDecorators = {
6340
6618
  relation: [{ type: Input }],
6619
+ relationType: [{ type: Input }],
6341
6620
  deliveryAddressNawNr: [{ type: Input }],
6342
6621
  invoiceAddressNawNr: [{ type: Input }],
6343
6622
  validSubmit: [{ type: Output }],
@@ -7351,6 +7630,7 @@ CoreModule.decorators = [
7351
7630
 
7352
7631
  class RelationBaseComponent {
7353
7632
  constructor() {
7633
+ this.relationType = RelationKind$1.Customer;
7354
7634
  this.relationChange = new EventEmitter();
7355
7635
  this._relation = NULL_RELATION_OBJECT;
7356
7636
  }
@@ -7375,6 +7655,7 @@ RelationBaseComponent.decorators = [
7375
7655
  ];
7376
7656
  RelationBaseComponent.propDecorators = {
7377
7657
  relation: [{ type: Input }],
7658
+ relationType: [{ type: Input }],
7378
7659
  relationChange: [{ type: Output }]
7379
7660
  };
7380
7661
 
@@ -11494,10 +11775,42 @@ class TransactionQuickAccessPurchaseOrderOverviewComponent extends TransactionQu
11494
11775
  this.reportDocumentEmailRequest = new EmailPurchaseOrderRequest();
11495
11776
  this.reportDocumentPrintRequest = new PrintPurchaseOrderRequest();
11496
11777
  this.reportDocumentPdfRequest = new PdfPurchaseOrderRequest();
11778
+ this.catalogOptions = {
11779
+ searchOnStart: true,
11780
+ showAddToCart: false,
11781
+ showLookAtArticleButton: false,
11782
+ showAddArticleButton: false
11783
+ };
11784
+ this.catalogParameters = {};
11785
+ this.showCatalog = false;
11786
+ this.searchText = "";
11497
11787
  }
11498
11788
  showClass() {
11499
11789
  return true;
11500
11790
  }
11791
+ handleSearch(text) {
11792
+ this.showCatalogDialog();
11793
+ }
11794
+ handleAddArticle(event) {
11795
+ event.preventDefault();
11796
+ event.stopPropagation();
11797
+ this.service.addArticle(this.searchText);
11798
+ }
11799
+ handleSearchCatalog(event) {
11800
+ this.showCatalogDialog();
11801
+ }
11802
+ handleCatalogArticleClick(article) {
11803
+ return __awaiter(this, void 0, void 0, function* () {
11804
+ if (yield this.service.addArticle(article.articleNumber)) {
11805
+ this.showCatalog = false;
11806
+ }
11807
+ });
11808
+ }
11809
+ showCatalogDialog() {
11810
+ this.catalogParameters.general = this.searchText;
11811
+ this.catalogParameters.publicationCode = 71; // todo: fix this?
11812
+ this.showCatalog = true;
11813
+ }
11501
11814
  emailDocument(request) {
11502
11815
  return __awaiter(this, void 0, void 0, function* () {
11503
11816
  yield this.service.emailPurchaseOrder(request);
@@ -11529,12 +11842,28 @@ TransactionQuickAccessPurchaseOrderOverviewComponent.decorators = [
11529
11842
  { type: Component, args: [{
11530
11843
  selector: "co-transaction-quick-access-purchase-order-overview",
11531
11844
  template: `
11845
+ <co-input-search
11846
+ [(model)]="searchText"
11847
+ [placeholder]="'SEARCH_ADD_ARTICLE' | localize"
11848
+ [centerLabel]="true"
11849
+ [useLeftIcon]="true"
11850
+ [useRightIcon]="true"
11851
+ (search)="handleSearch($event)"
11852
+ ></co-input-search>
11532
11853
  <co-quick-send-button
11533
11854
  [defaultMethodIcon]="defaultSendMethodIcon"
11534
11855
  [showLoader]="showLoader"
11535
11856
  (sendIconClicked)="handleSend(defaultSendMethod)"
11536
11857
  (openSendMethodDialog)="showSendMethodDialog = true"
11537
11858
  ></co-quick-send-button>
11859
+ <co-dialog-catalog *ngIf="showCatalog"
11860
+ [options]="catalogOptions"
11861
+ [parameters]="catalogParameters"
11862
+ [showNavigation]="true"
11863
+ (closeClick)="showCatalog = false"
11864
+ (articleClicked)="handleCatalogArticleClick($event)"
11865
+ >
11866
+ </co-dialog-catalog>
11538
11867
  <co-send-method-dialog *ngIf="showSendMethodDialog"
11539
11868
  [headerTitle]="'Verzendmethode'"
11540
11869
  [defaultSendMethod]="defaultSendMethod"
@@ -11601,6 +11930,7 @@ class TransactionMappingService {
11601
11930
  [{ type: TransactionKind.SalesOrder, category: TransactionTypeCategory.SalesOrderAllocation }, TransactionGoodsAllocationLineComponent],
11602
11931
  [{ type: TransactionKind.SalesOrder, category: TransactionTypeCategory.SalesOrderDeliveryNote }, TransactionOrderDeliveryLineComponent],
11603
11932
  [{ type: TransactionKind.SalesOrder, category: TransactionTypeCategory.SalesOrderInvoice }, TransactionOrderDeliveryLineComponent],
11933
+ [{ type: TransactionKind.PurchaseOrder, category: TransactionTypeCategory.PurchaseOrderOverview }, TransactionPurchaseLineComponent],
11604
11934
  [{ type: TransactionKind.PurchaseOrder, category: TransactionTypeCategory.PurchaseOrderReceivedGoods }, TransactionReceiveGoodsLineComponent],
11605
11935
  ]);
11606
11936
  this._transactionFilterComponent = new Map([
@@ -12104,171 +12434,68 @@ class SharedConnectorService {
12104
12434
  return this.connector.selectDocsByTableKey(table, key).then((result) => {
12105
12435
  if (result.validationResult && result.validationResult.success) {
12106
12436
  resolve(this._boFactory.makeBOArrayFromRawBackendDataArray(CoDocument, result.resultObjects));
12107
- }
12108
- else {
12109
- reject(result.validationMessagesAsString);
12110
- }
12111
- });
12112
- });
12113
- }
12114
- getDocumentContent(id, thumbnail = true) {
12115
- return new Promise((resolve, reject) => {
12116
- return this.connector.getDocumentContent(id, thumbnail).then((result) => {
12117
- if (result.validationResult && result.validationResult.success) {
12118
- resolve(result.resultObject.documentContent);
12119
- }
12120
- else {
12121
- reject(result.validationMessagesAsString);
12122
- }
12123
- });
12124
- });
12125
- }
12126
- }
12127
- SharedConnectorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SharedConnectorService_Factory() { return new SharedConnectorService(i0.ɵɵinject(OptionsService)); }, token: SharedConnectorService, providedIn: "root" });
12128
- SharedConnectorService.decorators = [
12129
- { type: Injectable, args: [{
12130
- providedIn: "root"
12131
- },] }
12132
- ];
12133
- SharedConnectorService.ctorParameters = () => [
12134
- { type: OptionsService }
12135
- ];
12136
-
12137
- class SharedService {
12138
- constructor(_optionsService, _connector, _transactionEventService) {
12139
- this._optionsService = _optionsService;
12140
- this._connector = _connector;
12141
- this._transactionEventService = _transactionEventService;
12142
- this._subs = [];
12143
- this._subs.push(this._transactionEventService.connectionInitialized.subscribe((initialized) => {
12144
- if (initialized) {
12145
- this._connector.connect();
12146
- }
12147
- }));
12148
- }
12149
- ngOnDestroy() {
12150
- this._subs.forEach(s => s.unsubscribe());
12151
- }
12152
- selectDocsByTableKey(table, key) {
12153
- return this._connector.selectDocsByTableKey(table, key);
12154
- }
12155
- getDocumentContent(docId, thumbnail = true) {
12156
- return this._connector.getDocumentContent(docId, thumbnail);
12157
- }
12158
- }
12159
- SharedService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SharedService_Factory() { return new SharedService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(SharedConnectorService), i0.ɵɵinject(TransactionEventService)); }, token: SharedService, providedIn: "root" });
12160
- SharedService.decorators = [
12161
- { type: Injectable, args: [{
12162
- providedIn: "root"
12163
- },] }
12164
- ];
12165
- SharedService.ctorParameters = () => [
12166
- { type: OptionsService },
12167
- { type: SharedConnectorService },
12168
- { type: TransactionEventService }
12169
- ];
12170
-
12171
- class RelationService {
12172
- constructor(_adapterService, _selectMultipleCacheService, _selectSingleCacheService, _selectMultipleParameterizedCacheService) {
12173
- this._adapterService = _adapterService;
12174
- this._selectMultipleCacheService = _selectMultipleCacheService;
12175
- this._selectSingleCacheService = _selectSingleCacheService;
12176
- this._selectMultipleParameterizedCacheService = _selectMultipleParameterizedCacheService;
12177
- this._lockMethods = new Map([
12178
- [RelationKind.Customer, (relationNr) => this._lockCustomerFullObject(relationNr)],
12179
- [RelationKind.Supplier, (relationNr) => this._lockSupplierFullObject(relationNr)],
12180
- [RelationKind.Personnel, (relationNr) => this._lockEmployeeFullObject(relationNr)],
12181
- [RelationKind.Branch, (relationNr) => this._lockBranchFullObject(relationNr)],
12182
- [RelationKind.Company, (relationNr) => this._lockCompanyFullObject(relationNr)],
12183
- [RelationKind.ContactPerson, (relationNr) => this._lockContactPerson(relationNr)],
12184
- ]);
12185
- this._updateMethods = new Map([
12186
- [RelationKind.Customer, (relation) => this.updateCustomer(relation)]
12187
- ]);
12188
- }
12189
- getCustomerFullObject(relationNo) {
12190
- return this._selectSingleCacheService.requestCache(CustomerFullObject, relationNo, () => {
12191
- return this._adapterService.getCustomerFullObject(relationNo);
12192
- }).getValue();
12193
- }
12194
- getSupplierFullObject(relationNo) {
12195
- return this._selectSingleCacheService.requestCache(SupplierFullObject, relationNo, () => {
12196
- return this._adapterService.getSupplierFullObject(relationNo);
12197
- }).getValue();
12198
- }
12199
- insertCustomer(relation) {
12200
- return this._adapterService.insertCustomer(relation);
12201
- }
12202
- updateCustomer(relation) {
12203
- return __awaiter(this, void 0, void 0, function* () {
12204
- return this._adapterService.updateCustomer(relation);
12205
- });
12206
- }
12207
- getRelationListObjects(relationRequest) {
12208
- return this._adapterService.getRelationListObjects(relationRequest);
12209
- }
12210
- getRelationNumber(relationId) {
12211
- return this._adapterService.getRelationNumber(relationId);
12212
- }
12213
- getBranches(branchNr) {
12214
- return this._selectMultipleParameterizedCacheService.requestCache(BranchLov, (branchNr) => {
12215
- return this._adapterService.getBranches(branchNr);
12216
- }).getValue(branchNr);
12217
- }
12218
- updateRelation(relationKind, relation) {
12219
- const updateMethod = this._updateMethods.get(relationKind);
12220
- if (updateMethod) {
12221
- return updateMethod.call(this, relation);
12222
- }
12223
- else {
12224
- const result = new Relation();
12225
- return Promise.resolve(result);
12226
- }
12227
- }
12228
- lockRelation(relationKind, relationNr) {
12229
- const lockMethod = this._lockMethods.get(relationKind);
12230
- if (lockMethod) {
12231
- return lockMethod.call(this, relationNr);
12232
- }
12233
- else {
12234
- const result = new ValidationResult();
12235
- result.success = false;
12236
- return Promise.resolve(result);
12237
- }
12238
- }
12239
- commit() {
12240
- return this._adapterService.commit();
12241
- }
12242
- _lockCustomerFullObject(relationNr) {
12243
- return this._adapterService.lockCustomerFullObject(relationNr);
12437
+ }
12438
+ else {
12439
+ reject(result.validationMessagesAsString);
12440
+ }
12441
+ });
12442
+ });
12244
12443
  }
12245
- _lockSupplierFullObject(relationNr) {
12246
- return this._adapterService.lockSupplierFullObject(relationNr);
12444
+ getDocumentContent(id, thumbnail = true) {
12445
+ return new Promise((resolve, reject) => {
12446
+ return this.connector.getDocumentContent(id, thumbnail).then((result) => {
12447
+ if (result.validationResult && result.validationResult.success) {
12448
+ resolve(result.resultObject.documentContent);
12449
+ }
12450
+ else {
12451
+ reject(result.validationMessagesAsString);
12452
+ }
12453
+ });
12454
+ });
12247
12455
  }
12248
- _lockEmployeeFullObject(relationNr) {
12249
- return this._adapterService.lockEmployeeFullObject(relationNr);
12456
+ }
12457
+ SharedConnectorService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SharedConnectorService_Factory() { return new SharedConnectorService(i0.ɵɵinject(OptionsService)); }, token: SharedConnectorService, providedIn: "root" });
12458
+ SharedConnectorService.decorators = [
12459
+ { type: Injectable, args: [{
12460
+ providedIn: "root"
12461
+ },] }
12462
+ ];
12463
+ SharedConnectorService.ctorParameters = () => [
12464
+ { type: OptionsService }
12465
+ ];
12466
+
12467
+ class SharedService {
12468
+ constructor(_optionsService, _connector, _transactionEventService) {
12469
+ this._optionsService = _optionsService;
12470
+ this._connector = _connector;
12471
+ this._transactionEventService = _transactionEventService;
12472
+ this._subs = [];
12473
+ this._subs.push(this._transactionEventService.connectionInitialized.subscribe((initialized) => {
12474
+ if (initialized) {
12475
+ this._connector.connect();
12476
+ }
12477
+ }));
12250
12478
  }
12251
- _lockBranchFullObject(relationNr) {
12252
- return this._adapterService.lockBranchFullObject(relationNr);
12479
+ ngOnDestroy() {
12480
+ this._subs.forEach(s => s.unsubscribe());
12253
12481
  }
12254
- _lockCompanyFullObject(relationNr) {
12255
- return this._adapterService.lockCompanyFullObject(relationNr);
12482
+ selectDocsByTableKey(table, key) {
12483
+ return this._connector.selectDocsByTableKey(table, key);
12256
12484
  }
12257
- _lockContactPerson(relationNr) {
12258
- return this._adapterService.lockContactPerson(relationNr);
12485
+ getDocumentContent(docId, thumbnail = true) {
12486
+ return this._connector.getDocumentContent(docId, thumbnail);
12259
12487
  }
12260
12488
  }
12261
- RelationService.ɵprov = i0.ɵɵdefineInjectable({ factory: function RelationService_Factory() { return new RelationService(i0.ɵɵinject(RelationConnectorService), i0.ɵɵinject(SelectMultipleCacheService), i0.ɵɵinject(SelectSingleCacheService), i0.ɵɵinject(SelectMultipleParameterizedCacheService)); }, token: RelationService, providedIn: "root" });
12262
- RelationService.decorators = [
12489
+ SharedService.ɵprov = i0.ɵɵdefineInjectable({ factory: function SharedService_Factory() { return new SharedService(i0.ɵɵinject(OptionsService), i0.ɵɵinject(SharedConnectorService), i0.ɵɵinject(TransactionEventService)); }, token: SharedService, providedIn: "root" });
12490
+ SharedService.decorators = [
12263
12491
  { type: Injectable, args: [{
12264
12492
  providedIn: "root"
12265
12493
  },] }
12266
12494
  ];
12267
- RelationService.ctorParameters = () => [
12268
- { type: RelationConnectorService },
12269
- { type: SelectMultipleCacheService },
12270
- { type: SelectSingleCacheService },
12271
- { type: SelectMultipleParameterizedCacheService }
12495
+ SharedService.ctorParameters = () => [
12496
+ { type: OptionsService },
12497
+ { type: SharedConnectorService },
12498
+ { type: TransactionEventService }
12272
12499
  ];
12273
12500
 
12274
12501
  class AvatarComponent {
@@ -13134,6 +13361,7 @@ class RelationGeneralComponent extends RelationBaseComponent {
13134
13361
  this._dictionaryService = _dictionaryService;
13135
13362
  this._dialogService = _dialogService;
13136
13363
  this._relationService = _relationService;
13364
+ this.relationKind = RelationKind$1;
13137
13365
  this.relType = RelationNameKind;
13138
13366
  this.genderType = GenderType;
13139
13367
  this.readonly = false;
@@ -13191,7 +13419,7 @@ class RelationGeneralComponent extends RelationBaseComponent {
13191
13419
  }
13192
13420
  else {
13193
13421
  this.hideSidebar();
13194
- this.relation = yield this._relationService.getCustomerFullObject(parseInt(relationSuggested.relationNr));
13422
+ this.relation = yield this._relationService.getRelation(relationSuggested.relationType, parseInt(relationSuggested.relationNr));
13195
13423
  this.relationChange.next(this.relation);
13196
13424
  }
13197
13425
  }
@@ -13868,6 +14096,11 @@ class TransactionHeaderDeliveryComponent extends TransactionBaseComponent {
13868
14096
  }
13869
14097
  });
13870
14098
  }
14099
+ changeDeliveryDateDefinitive(event, definitive) {
14100
+ event.preventDefault();
14101
+ event.stopPropagation();
14102
+ this.service.updateHeaderTransactionDeliveryDateDefinitive(this.transactionInfo.uuid, definitive);
14103
+ }
13871
14104
  }
13872
14105
  TransactionHeaderDeliveryComponent.decorators = [
13873
14106
  { type: Component, args: [{
@@ -13898,8 +14131,10 @@ TransactionHeaderDeliveryComponent.decorators = [
13898
14131
  [defaultEditMode]="false"
13899
14132
  [showLabel]="false"
13900
14133
  ></co-transaction-header-delivery-date>
13901
- <co-icon *ngIf="transactionInfo.deliveryDateDefinitive" [iconData]="iconService.getIcon(icons.LockKeyholeSolid)"></co-icon>
13902
- <co-icon *ngIf="!transactionInfo.deliveryDateDefinitive" [iconData]="iconService.getIcon(icons.LockKeyholeOpenSolid)"></co-icon>
14134
+ <co-icon *ngIf="transactionInfo.deliveryDateDefinitive" [iconData]="iconService.getIcon(icons.LockKeyholeSolid)"
14135
+ (click)="changeDeliveryDateDefinitive($event, false)"></co-icon>
14136
+ <co-icon *ngIf="!transactionInfo.deliveryDateDefinitive" [iconData]="iconService.getIcon(icons.LockKeyholeOpenSolid)"
14137
+ (click)="changeDeliveryDateDefinitive($event, true)"></co-icon>
13903
14138
  </div>
13904
14139
  </ng-template>
13905
14140
  <ng-template #secondBlock>
@@ -15751,7 +15986,6 @@ class TransactionComponent {
15751
15986
  this.showQuickAccess = true;
15752
15987
  this.showButtonBar = true;
15753
15988
  this.activeViewMode = ContentViewMode.List;
15754
- this.activeCategory = TransactionTypeCategory.SalesOrderOverview;
15755
15989
  this.sidePanelOpen = false;
15756
15990
  this._subs = [];
15757
15991
  this._transaction = new TransactionInfoResponse();
@@ -15768,6 +16002,11 @@ class TransactionComponent {
15768
16002
  set transaction(value) {
15769
16003
  if (value) {
15770
16004
  this._transaction = value;
16005
+ if (this._transaction) {
16006
+ this.activeCategory = this._transaction.transactionInfo.transactionKind === TransactionKind.PurchaseOrder ?
16007
+ TransactionTypeCategory.PurchaseOrderOverview :
16008
+ TransactionTypeCategory.SalesOrderOverview;
16009
+ }
15771
16010
  }
15772
16011
  }
15773
16012
  get transaction() {
@@ -18416,9 +18655,7 @@ class TransactionConfirmationHistoryComponent {
18416
18655
  this.getPurchasePortalLine.filterObject = this.purchasePortalFilter;
18417
18656
  this.transactionService.getPurchasePortalLines(this.getPurchasePortalLine).then((result) => {
18418
18657
  this.transactionService.purchasePortalLine = result;
18419
- this.transactionService.purchasePortalLine.forEach((element) => {
18420
- this.filteredDocBatchArray = element.docBatchArray.filter(value => value.historical === 'G');
18421
- });
18658
+ this.filteredDocBatchArray = this.transactionService.purchasePortalLine[0].docBatchArray.filter(value => value.historical === 'G');
18422
18659
  });
18423
18660
  });
18424
18661
  }
@@ -18521,31 +18758,20 @@ class TransactionConfirmationDetailsComponent {
18521
18758
  this.showAddOrder = false;
18522
18759
  this.newDocBatchArray = new DocDeliveryBatch();
18523
18760
  this.docBatchSaved = new EventEmitter();
18524
- this.isEditMode = false;
18525
18761
  }
18526
18762
  showClass() {
18527
18763
  return true;
18528
18764
  }
18529
- set isEditing(value) {
18530
- this.isEditMode = value;
18531
- console.log(this.isEditMode);
18532
- console.log(this.isEditing);
18533
- }
18534
- get isEditing() {
18535
- return this.isEditMode;
18536
- }
18537
18765
  addButtonClicked() {
18538
18766
  this.showAddOrder = !this.showAddOrder;
18539
18767
  }
18540
18768
  handleOkClick() {
18541
18769
  return __awaiter(this, void 0, void 0, function* () {
18542
18770
  if (this.newDocBatchArray.docAmount && this.newDocBatchArray.confirmedPrice) {
18771
+ this.newDocBatchArray.docDateOrg = new Date();
18543
18772
  this.newDocBatchArray.deleteLine = "F";
18544
18773
  this.newDocBatchArray.historical = "G";
18545
- if (!this.newDocBatchArray.docDateOrg) {
18546
- this.newDocBatchArray.docDateOrg = this.newDocBatchArray.docDate;
18547
- this.transactionService.purchasePortalLine[0].docBatchArray.push(this.newDocBatchArray);
18548
- }
18774
+ this.transactionService.purchasePortalLine[0].docBatchArray.push(this.newDocBatchArray);
18549
18775
  this.transactionService.purchasePortalLine[0].docKind = "IB";
18550
18776
  yield this.transactionService.updatePurchasePortalLines(this.transactionService.purchasePortalLine[0]);
18551
18777
  this.docBatchSaved.emit(true);
@@ -18556,10 +18782,6 @@ class TransactionConfirmationDetailsComponent {
18556
18782
  }
18557
18783
  });
18558
18784
  }
18559
- handleCancelClick() {
18560
- this.newDocBatchArray = new DocDeliveryBatch();
18561
- this.isEditing = false;
18562
- }
18563
18785
  }
18564
18786
  TransactionConfirmationDetailsComponent.decorators = [
18565
18787
  { type: Component, args: [{
@@ -18577,9 +18799,6 @@ TransactionConfirmationDetailsComponent.decorators = [
18577
18799
  <span class="header-right-text" [textContent]="transactionLines.deliveryDate | date:'dd-MM-YYYY'"></span>
18578
18800
  </div>
18579
18801
  </div>
18580
- <div class="header-inform-user" *ngIf="isEditing">
18581
- <span class="header-inform-user editting" [textContent]="'EDITING_DATA_ROW' | localize"></span>
18582
- </div>
18583
18802
  <div *ngIf="showAddOrder" class="columns-wrapper">
18584
18803
  <div class="details-column">
18585
18804
  <co-input-text class="details-input"
@@ -18620,7 +18839,7 @@ TransactionConfirmationDetailsComponent.decorators = [
18620
18839
  </co-form>
18621
18840
 
18622
18841
  <div *ngIf="showAddOrder" class="save-cancel-wrapper">
18623
- <co-default-ok-cancel-buttons (okClick)="handleOkClick()" (cancelClick)="handleCancelClick()"></co-default-ok-cancel-buttons>
18842
+ <co-default-ok-cancel-buttons (okClick)="handleOkClick()"></co-default-ok-cancel-buttons>
18624
18843
  </div>
18625
18844
  </div>
18626
18845
  `,
@@ -18639,7 +18858,6 @@ TransactionConfirmationDetailsComponent.propDecorators = {
18639
18858
  transactionInfoNr: [{ type: Input }],
18640
18859
  showClass: [{ type: HostBinding, args: ["class.co-transaction-confirmation-details",] }],
18641
18860
  newDocBatchArray: [{ type: Input }],
18642
- isEditing: [{ type: Input }],
18643
18861
  docBatchSaved: [{ type: Output }]
18644
18862
  };
18645
18863
 
@@ -18736,7 +18954,6 @@ class TransactionLineSidePanelPurchaseComponent {
18736
18954
  this.goodsReceiptStatus = new GoodsReceiptStatusWithHistory();
18737
18955
  this.selectedLineDocBatchArray = new DocDeliveryBatch();
18738
18956
  this.isDocBatchSaved = false;
18739
- this.editingMode = false;
18740
18957
  this._transactionInfo = new TransactionInfo();
18741
18958
  }
18742
18959
  set transactionInfo(value) {
@@ -18763,7 +18980,6 @@ class TransactionLineSidePanelPurchaseComponent {
18763
18980
  }
18764
18981
  fillInputOnClick(data) {
18765
18982
  this.selectedLineDocBatchArray = data;
18766
- this.editingMode = true;
18767
18983
  }
18768
18984
  docBatchSaved(data) {
18769
18985
  this.isDocBatchSaved = data;
@@ -18779,7 +18995,6 @@ TransactionLineSidePanelPurchaseComponent.decorators = [
18779
18995
  [transactionInfoNr]="transactionInfo.transactionNr"
18780
18996
  [transactionLines]="transactionLine"
18781
18997
  [newDocBatchArray]="selectedLineDocBatchArray"
18782
- [isEditing]="editingMode"
18783
18998
  (docBatchSaved)="docBatchSaved($event)"
18784
18999
  ></co-transaction-confirmation-details>
18785
19000
  <co-transaction-confirmation-history
@@ -20729,7 +20944,10 @@ TransactionQuickAccessPurchaseOrderOverviewModule.decorators = [
20729
20944
  imports: [
20730
20945
  CommonModule,
20731
20946
  QuickSendButtonModule,
20732
- SendMethodDialogModule
20947
+ SendMethodDialogModule,
20948
+ InputSearchModule,
20949
+ DialogCatalogModule,
20950
+ PipeModule
20733
20951
  ],
20734
20952
  declarations: [
20735
20953
  TransactionQuickAccessPurchaseOrderOverviewComponent
@@ -21950,12 +22168,21 @@ class TransactionLineSupplierButtonComponent extends TransactionLineBaseComponen
21950
22168
  showClass() {
21951
22169
  return true;
21952
22170
  }
22171
+ handleOpenDialog(event) {
22172
+ event.preventDefault();
22173
+ event.stopPropagation();
22174
+ this.showDialogSupplier = !this.readonly;
22175
+ }
21953
22176
  transactionLineSet() {
21954
22177
  return __awaiter(this, void 0, void 0, function* () {
21955
22178
  if (this.transactionLine && this.transactionLine.isArticle) {
21956
- this._relationService.getSupplierFullObject(this.transactionLine.supplierId).then((supp) => {
21957
- this.transactionLine.supplierDescription = supp ? supp.displayName : "";
22179
+ const request = new RelationRequest();
22180
+ request.relationId = this.transactionLine.supplierId;
22181
+ this._relationService.getRelationListObjects(request).then((relations) => {
22182
+ const relation = relations && relations.length > 0 ? relations[0] : null;
22183
+ this.transactionLine.supplierDescription = relation ? relation.displayName : "";
21958
22184
  });
22185
+ this.readonly = !this.transactionLine.articleFreeSupplier;
21959
22186
  }
21960
22187
  });
21961
22188
  }
@@ -21964,7 +22191,7 @@ TransactionLineSupplierButtonComponent.decorators = [
21964
22191
  { type: Component, args: [{
21965
22192
  selector: "co-transaction-line-supplier-button",
21966
22193
  template: `
21967
- <div class="transaction-line-button big" (click)="showDialogSupplier = true">
22194
+ <div class="transaction-line-button big" (click)="handleOpenDialog($event)">
21968
22195
  <span class="co-transaction-overflow-ellipsis" [textContent]="transactionLine.supplierDescription"></span>
21969
22196
  </div>
21970
22197
  <co-dialog-transaction-line-supplier *ngIf="showDialogSupplier"
@@ -22432,8 +22659,8 @@ class TransactionFilterItemComponent {
22432
22659
  this.placeholder = '';
22433
22660
  this.customContent = false;
22434
22661
  this.singleSelect = false;
22435
- this.collectionChange = new EventEmitter();
22436
22662
  this.searchCollectionPlaceholder = "SEARCH_IN_COLLECTION";
22663
+ this.collectionChange = new EventEmitter();
22437
22664
  this.searchPlaceholder = "SEARCH";
22438
22665
  this.noResultsLabel = "NO_RESULTS";
22439
22666
  this.showMoreLabel = "SHOW_MORE";
@@ -22482,6 +22709,7 @@ TransactionFilterItemComponent.propDecorators = {
22482
22709
  customContent: [{ type: Input }],
22483
22710
  singleSelect: [{ type: Input }],
22484
22711
  minSearchCharsToLoadCollection: [{ type: Input }],
22712
+ searchCollectionPlaceholder: [{ type: Input }],
22485
22713
  collectionLoadFn: [{ type: Input }],
22486
22714
  collectionChange: [{ type: Output }]
22487
22715
  };
@@ -22689,13 +22917,40 @@ FilterRequestService.ctorParameters = () => [
22689
22917
  { type: TransactionService }
22690
22918
  ];
22691
22919
 
22920
+ var SearchPlaceholder;
22921
+ (function (SearchPlaceholder) {
22922
+ SearchPlaceholder["ArticleNr"] = "SEARCH_ARTICLE_NR";
22923
+ SearchPlaceholder["BatchNumber"] = "SEARCH_BATCH_NUMBER";
22924
+ SearchPlaceholder["Branch"] = "SEARCH_BRANCH";
22925
+ SearchPlaceholder["CommissionCode"] = "SEARCH_COMMISSION_CODE";
22926
+ SearchPlaceholder["Confirmed"] = "SEARCH_CONFIRMED";
22927
+ SearchPlaceholder["CustomerGroup"] = "SEARCH_CUSTOMER_GROUP";
22928
+ SearchPlaceholder["CustomerName"] = "SEARCH_CUSTOMER_NAME";
22929
+ SearchPlaceholder["Delivered"] = "SEARCH_DELIVERED";
22930
+ SearchPlaceholder["DeliveryMethod"] = "SEARCH_DELIVERY_METHOD";
22931
+ SearchPlaceholder["ExceedenceCode"] = "SEARCH_EXCEEDENCE_CODE";
22932
+ SearchPlaceholder["Invoiced"] = "SEARCH_INVOICED";
22933
+ SearchPlaceholder["MainArticle"] = "SEARCH_MAIN_ARTICLE";
22934
+ SearchPlaceholder["OnHold"] = "SEARCH_ONHOLD";
22935
+ SearchPlaceholder["OwnReference"] = "SEARCH_OWN_REFERENCE";
22936
+ SearchPlaceholder["PurchaseNumber"] = "SEARCH_PURCHASENUMBER";
22937
+ SearchPlaceholder["PurchasePerson"] = "SEARCH_PURCHASEPERSON";
22938
+ SearchPlaceholder["SalesPerson"] = "SEARCH_SALESPERSON";
22939
+ SearchPlaceholder["SerialNumber"] = "SEARCH_SERIAL_NUMBER";
22940
+ SearchPlaceholder["SourceWarehouse"] = "SEARCH_SOURCE_WAREHOUSE";
22941
+ SearchPlaceholder["Supplier"] = "SEARCH_SUPPLIER";
22942
+ SearchPlaceholder["Tags"] = "SEARCH_TAGS";
22943
+ SearchPlaceholder["TurnoverGroup"] = "SEARCH_TURNOVER_GROUP";
22944
+ SearchPlaceholder["Warehouse"] = "SEARCH_WAREHOUSE";
22945
+ })(SearchPlaceholder || (SearchPlaceholder = {}));
22946
+
22692
22947
  class TransactionFilterContentBaseComponent {
22693
22948
  constructor(searchService, filterRequestService, transactionService) {
22694
22949
  this.searchService = searchService;
22695
22950
  this.filterRequestService = filterRequestService;
22696
22951
  this.transactionService = transactionService;
22952
+ this.searchPlaceholder = SearchPlaceholder;
22697
22953
  this.searchRequest = this.searchService.searchRequest;
22698
- this.searchPlaceholder = "SEARCH";
22699
22954
  this.filterButtonLabel = "SEARCH_IMPERATIVE";
22700
22955
  }
22701
22956
  ngOnInit() {
@@ -22789,6 +23044,7 @@ TransactionPurchaseOrderFilterContentArticleComponent.decorators = [
22789
23044
  <div class="filter-item-wrapper" lazyRender #lazyRenderArticleNr="lazyRender">
22790
23045
  <co-transaction-filter-item *ngIf="lazyRenderArticleNr.isShowing"
22791
23046
  [placeholder]="'ARTICLE_NR'"
23047
+ [searchCollectionPlaceholder]="searchPlaceholder.ArticleNr"
22792
23048
  [singleSelect]="true"
22793
23049
  [minSearchCharsToLoadCollection]="3"
22794
23050
  [collectionLoadFn]="getArticles"
@@ -22800,6 +23056,7 @@ TransactionPurchaseOrderFilterContentArticleComponent.decorators = [
22800
23056
  <div class="filter-item-wrapper" lazyRender #lazyRenderTurnoverGroup="lazyRender">
22801
23057
  <co-transaction-filter-item *ngIf="lazyRenderTurnoverGroup.isShowing"
22802
23058
  [placeholder]="'TURNOVER_GROUP'"
23059
+ [searchCollectionPlaceholder]="searchPlaceholder.TurnoverGroup"
22803
23060
  [collection]="turnoverGroups"
22804
23061
  (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeTurnoverGroup')">
22805
23062
  </co-transaction-filter-item>
@@ -22809,6 +23066,7 @@ TransactionPurchaseOrderFilterContentArticleComponent.decorators = [
22809
23066
  <div class="filter-item-wrapper" lazyRender #lazyRenderExceedanceCodes="lazyRender">
22810
23067
  <co-transaction-filter-item *ngIf="lazyRenderExceedanceCodes.isShowing"
22811
23068
  [placeholder]="'EXCEEDENCE_CODE'"
23069
+ [searchCollectionPlaceholder]="searchPlaceholder.ExceedenceCode"
22812
23070
  [collection]="exceedanceCodes"
22813
23071
  (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'exceedanceCodes')"
22814
23072
  >
@@ -22821,7 +23079,7 @@ TransactionPurchaseOrderFilterContentArticleComponent.decorators = [
22821
23079
  [placeholder]="'SERIAL_NUMBER'"
22822
23080
  [customContent]="true">
22823
23081
  <co-input-text [(model)]="searchRequest.serialNumber"
22824
- [placeholder]="searchPlaceholder | localize"></co-input-text>
23082
+ [placeholder]="searchPlaceholder.SerialNumber | localize"></co-input-text>
22825
23083
  </co-transaction-filter-item>
22826
23084
  </div>
22827
23085
 
@@ -22831,7 +23089,7 @@ TransactionPurchaseOrderFilterContentArticleComponent.decorators = [
22831
23089
  [placeholder]="'BATCH_NUMBER'"
22832
23090
  [customContent]="true">
22833
23091
  <co-input-text [(model)]="searchRequest.batchNumber"
22834
- [placeholder]="searchPlaceholder | localize"></co-input-text>
23092
+ [placeholder]="searchPlaceholder.BatchNumber | localize"></co-input-text>
22835
23093
  </co-transaction-filter-item>
22836
23094
  </div>
22837
23095
 
@@ -22839,6 +23097,7 @@ TransactionPurchaseOrderFilterContentArticleComponent.decorators = [
22839
23097
  <div class="filter-item-wrapper" lazyRender #lazyRenderSupplier="lazyRender">
22840
23098
  <co-transaction-filter-item *ngIf="lazyRenderSupplier.isShowing"
22841
23099
  [placeholder]="'SUPPLIER'"
23100
+ [searchCollectionPlaceholder]="searchPlaceholder.Supplier"
22842
23101
  [collection]="suppliers"
22843
23102
  (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeSupplier')">
22844
23103
  </co-transaction-filter-item>
@@ -22951,7 +23210,7 @@ TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
22951
23210
  [placeholder]="'SERIAL_NUMBER'"
22952
23211
  [customContent]="true">
22953
23212
  <co-input-text [(model)]="searchRequest.serialNumber"
22954
- [placeholder]="searchPlaceholder | localize"></co-input-text>
23213
+ [placeholder]="searchPlaceholder.SerialNumber | localize"></co-input-text>
22955
23214
  </co-transaction-filter-item>
22956
23215
  </div>
22957
23216
 
@@ -22961,7 +23220,7 @@ TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
22961
23220
  [placeholder]="'BATCH_NUMBER'"
22962
23221
  [customContent]="true">
22963
23222
  <co-input-text [(model)]="searchRequest.batchNumber"
22964
- [placeholder]="searchPlaceholder | localize"></co-input-text>
23223
+ [placeholder]="searchPlaceholder.BatchNumber | localize"></co-input-text>
22965
23224
  </co-transaction-filter-item>
22966
23225
  </div>
22967
23226
 
@@ -23055,6 +23314,7 @@ TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
23055
23314
  <div class="filter-item-wrapper" lazyRender #lazyRenderWarehouse="lazyRender">
23056
23315
  <co-transaction-filter-item *ngIf="lazyRenderWarehouse.isShowing"
23057
23316
  [placeholder]="'WAREHOUSE'"
23317
+ [searchCollectionPlaceholder]="searchPlaceholder.Warehouse"
23058
23318
  [singleSelect]="true"
23059
23319
  [collection]="warehouses"
23060
23320
  (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'warehouse')">
@@ -23065,6 +23325,7 @@ TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
23065
23325
  <div class="filter-item-wrapper" lazyRender #lazyRenderSourceWarehouse="lazyRender">
23066
23326
  <co-transaction-filter-item *ngIf="lazyRenderSourceWarehouse.isShowing"
23067
23327
  [placeholder]="'SOURCE_WAREHOUSE'"
23328
+ [searchCollectionPlaceholder]="searchPlaceholder.SourceWarehouse"
23068
23329
  [singleSelect]="true"
23069
23330
  [collection]="sourceWarehouses"
23070
23331
  (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'sourceWarehouse')">
@@ -23075,6 +23336,7 @@ TransactionPurchaseOrderFilterContentLogisticsComponent.decorators = [
23075
23336
  <div class="filter-item-wrapper" lazyRender #lazyRenderDeliveryMethod="lazyRender">
23076
23337
  <co-transaction-filter-item *ngIf="lazyRenderDeliveryMethod.isShowing"
23077
23338
  [placeholder]="'DELIVERY_METHOD'"
23339
+ [searchCollectionPlaceholder]="searchPlaceholder.DeliveryMethod"
23078
23340
  [collection]="deliveryMethods"
23079
23341
  (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeDeliveryMethod')">
23080
23342
  </co-transaction-filter-item>
@@ -23280,7 +23542,7 @@ TransactionPurchaseOrderFilterContentOrderComponent.decorators = [
23280
23542
  [placeholder]="'PURCHASENUMBER'"
23281
23543
  [customContent]="true">
23282
23544
  <co-input-text [(model)]="searchRequest.transNr"
23283
- [placeholder]="'PURCHASENUMBER' | localize"></co-input-text>
23545
+ [placeholder]="searchPlaceholder.PurchaseNumber | localize"></co-input-text>
23284
23546
  </co-transaction-filter-item>
23285
23547
  </div>
23286
23548
 
@@ -23318,6 +23580,7 @@ TransactionPurchaseOrderFilterContentOrderComponent.decorators = [
23318
23580
  <div class="filter-item-wrapper" lazyRender #lazyRenderBranch="lazyRender">
23319
23581
  <co-transaction-filter-item *ngIf="lazyRenderBranch.isShowing"
23320
23582
  [placeholder]="'BRANCH'"
23583
+ [searchCollectionPlaceholder]="searchPlaceholder.Branch"
23321
23584
  [collection]="branches"
23322
23585
  (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeBranchId')">
23323
23586
  </co-transaction-filter-item>
@@ -23327,6 +23590,7 @@ TransactionPurchaseOrderFilterContentOrderComponent.decorators = [
23327
23590
  <div class="filter-item-wrapper" lazyRender #lazyRenderSalesPerson="lazyRender">
23328
23591
  <co-transaction-filter-item *ngIf="lazyRenderSalesPerson.isShowing"
23329
23592
  [placeholder]="'PURCHASE_PERSON'"
23593
+ [searchCollectionPlaceholder]="searchPlaceholder.PurchasePerson"
23330
23594
  [collection]="purchasePersons"
23331
23595
  (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeSalesPerson')">
23332
23596
  </co-transaction-filter-item>
@@ -23338,7 +23602,7 @@ TransactionPurchaseOrderFilterContentOrderComponent.decorators = [
23338
23602
  [placeholder]="'OWN_REFERENCE'"
23339
23603
  [customContent]="true">
23340
23604
  <co-input-text [(model)]="searchRequest.userReference"
23341
- [placeholder]="'OWN_REFERENCE' | localize"></co-input-text>
23605
+ [placeholder]="searchPlaceholder.OwnReference | localize"></co-input-text>
23342
23606
  </co-transaction-filter-item>
23343
23607
  </div>
23344
23608
 
@@ -23346,6 +23610,7 @@ TransactionPurchaseOrderFilterContentOrderComponent.decorators = [
23346
23610
  <div class="filter-item-wrapper" lazyRender #lazyRenderTags="lazyRender">
23347
23611
  <co-transaction-filter-item *ngIf="lazyRenderTags.isShowing"
23348
23612
  [placeholder]="'TAGS'"
23613
+ [searchCollectionPlaceholder]="searchPlaceholder.Tags"
23349
23614
  [collection]="tags"
23350
23615
  (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'tagRange')">
23351
23616
  </co-transaction-filter-item>
@@ -23355,6 +23620,7 @@ TransactionPurchaseOrderFilterContentOrderComponent.decorators = [
23355
23620
  <div class="filter-item-wrapper" lazyRender #lazyRenderOnHold="lazyRender">
23356
23621
  <co-transaction-filter-item *ngIf="lazyRenderOnHold.isShowing"
23357
23622
  [placeholder]="'ON_HOLD'"
23623
+ [searchCollectionPlaceholder]="searchPlaceholder.OnHold"
23358
23624
  [collection]="onHoldCodes"
23359
23625
  (collectionChange)="filterRequestService.handleCollectionChangeForRange($event,'rangeOnHoldCodes')">
23360
23626
  </co-transaction-filter-item>
@@ -23364,6 +23630,7 @@ TransactionPurchaseOrderFilterContentOrderComponent.decorators = [
23364
23630
  <div class="filter-item-wrapper" lazyRender #lazyRenderCommissionCode="lazyRender">
23365
23631
  <co-transaction-filter-item *ngIf="lazyRenderCommissionCode.isShowing"
23366
23632
  [placeholder]="'COMMISSION_CODE'"
23633
+ [searchCollectionPlaceholder]="searchPlaceholder.CommissionCode"
23367
23634
  [collection]="commissionCodes"
23368
23635
  (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'commissionCodes')">
23369
23636
  </co-transaction-filter-item>
@@ -24185,47 +24452,52 @@ TransactionSalesOrderFilterContentArticleComponent.decorators = [
24185
24452
  <!--Artikelnummer-->
24186
24453
  <div class="filter-item-wrapper" lazyRender #lazyRenderArticleNr="lazyRender">
24187
24454
  <co-transaction-filter-item *ngIf="lazyRenderArticleNr.isShowing"
24188
- [placeholder]="'ARTICLE_NR'"
24189
- [singleSelect]="true"
24190
- [minSearchCharsToLoadCollection]="3"
24191
- [collectionLoadFn]="getArticles"
24192
- (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'articleNr')">
24455
+ [placeholder]="'ARTICLE_NR'"
24456
+ [searchCollectionPlaceholder]="searchPlaceholder.ArticleNr"
24457
+ [singleSelect]="true"
24458
+ [minSearchCharsToLoadCollection]="3"
24459
+ [collectionLoadFn]="getArticles"
24460
+ (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'articleNr')">
24193
24461
  </co-transaction-filter-item>
24194
24462
  </div>
24195
24463
 
24196
24464
  <!--Omzetgroep-->
24197
24465
  <div class="filter-item-wrapper" lazyRender #lazyRenderTurnoverGroup="lazyRender">
24198
24466
  <co-transaction-filter-item *ngIf="lazyRenderTurnoverGroup.isShowing"
24199
- [placeholder]="'TURNOVER_GROUP'"
24200
- [collection]="turnoverGroups"
24201
- (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeTurnoverGroup')">
24467
+ [placeholder]="'TURNOVER_GROUP'"
24468
+ [searchCollectionPlaceholder]="searchPlaceholder.TurnoverGroup"
24469
+ [collection]="turnoverGroups"
24470
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeTurnoverGroup')">
24202
24471
  </co-transaction-filter-item>
24203
24472
  </div>
24204
24473
 
24205
24474
  <!--Hoofdartikel-->
24206
24475
  <div class="filter-item-wrapper" lazyRender #lazyRenderMainArticle="lazyRender">
24207
24476
  <co-transaction-filter-item *ngIf="lazyRenderMainArticle.isShowing"
24208
- [placeholder]="'MAIN_ARTICLE'"
24209
- [collection]="mainArticles"
24210
- (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'mainArticleNrRange')">
24477
+ [placeholder]="'MAIN_ARTICLE'"
24478
+ [searchCollectionPlaceholder]="searchPlaceholder.MainArticle"
24479
+ [collection]="mainArticles"
24480
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'mainArticleNrRange')">
24211
24481
  </co-transaction-filter-item>
24212
24482
  </div>
24213
24483
 
24214
24484
  <!--Uitloopcode -->
24215
24485
  <div class="filter-item-wrapper" lazyRender #lazyRenderExceedanceCodes="lazyRender">
24216
24486
  <co-transaction-filter-item *ngIf="lazyRenderExceedanceCodes.isShowing"
24217
- [placeholder]="'EXCEEDENCE_CODE'"
24218
- [collection]="exceedanceCodes"
24219
- (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'exceedanceCodes')">
24487
+ [placeholder]="'EXCEEDENCE_CODE'"
24488
+ [searchCollectionPlaceholder]="searchPlaceholder.ExceedenceCode"
24489
+ [collection]="exceedanceCodes"
24490
+ (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'exceedanceCodes')">
24220
24491
  </co-transaction-filter-item>
24221
24492
  </div>
24222
24493
 
24223
24494
  <!--Leverancier-->
24224
24495
  <div class="filter-item-wrapper" lazyRender #lazyRenderSupplier="lazyRender">
24225
24496
  <co-transaction-filter-item *ngIf="lazyRenderSupplier.isShowing"
24226
- [placeholder]="'SUPPLIER'"
24227
- [collection]="suppliers"
24228
- (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeSupplier')"
24497
+ [placeholder]="'SUPPLIER'"
24498
+ [searchCollectionPlaceholder]="searchPlaceholder.Supplier"
24499
+ [collection]="suppliers"
24500
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeSupplier')"
24229
24501
  >
24230
24502
  </co-transaction-filter-item>
24231
24503
  </div>
@@ -24319,9 +24591,10 @@ TransactionSalesOrderFilterContentLogisticsComponent.decorators = [
24319
24591
  <!--Levermethode-->
24320
24592
  <div class="filter-item-wrapper" lazyRender #lazyRenderDeliveryMethod="lazyRender">
24321
24593
  <co-transaction-filter-item *ngIf="lazyRenderDeliveryMethod.isShowing"
24322
- [placeholder]="'DELIVERY_METHOD'"
24323
- [collection]="deliveryMethods"
24324
- (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeDeliveryMethod')"
24594
+ [placeholder]="'DELIVERY_METHOD'"
24595
+ [collection]="deliveryMethods"
24596
+ [searchCollectionPlaceholder]="searchPlaceholder.DeliveryMethod"
24597
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeDeliveryMethod')"
24325
24598
  >
24326
24599
  </co-transaction-filter-item>
24327
24600
  </div>
@@ -24330,8 +24603,8 @@ TransactionSalesOrderFilterContentLogisticsComponent.decorators = [
24330
24603
  <!--Leverdatum definitief-->
24331
24604
  <div class="filter-item-wrapper" lazyRender #lazyRenderDeliveryDateFinal="lazyRender">
24332
24605
  <co-transaction-filter-item *ngIf="lazyRenderDeliveryDateFinal.isShowing"
24333
- [placeholder]="'DELIVERY_DATE_FINAL'"
24334
- [customContent]="true"
24606
+ [placeholder]="'DELIVERY_DATE_FINAL'"
24607
+ [customContent]="true"
24335
24608
  >
24336
24609
  <co-input-checkbox
24337
24610
  [model]="searchRequest.deliveryDateDefinitive === 'J'"
@@ -24354,131 +24627,133 @@ TransactionSalesOrderFilterContentLogisticsComponent.decorators = [
24354
24627
  [label]="'DELIVERED'"
24355
24628
  (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'quantityDelivered')"
24356
24629
  ></co-transaction-filter-historic-state>
24357
- </div>
24358
-
24359
- <!--Gefactureerd-->
24360
- <div class="filter-item-wrapper" lazyRender #lazyRenderInvoiced="lazyRender">
24361
- <co-transaction-filter-historic-state *ngIf="lazyRenderInvoiced.isShowing"
24362
- [label]="'INVOICED'"
24363
- (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'quantityInvoiced')"
24364
- ></co-transaction-filter-historic-state>
24365
- </div>
24630
+ </div>
24366
24631
 
24367
- <!--Te picken-->
24368
- <div class="filter-item-wrapper" lazyRender #lazyRenderToBePicked="lazyRender">
24369
- <co-transaction-filter-historic-state *ngIf="lazyRenderToBePicked.isShowing"
24370
- [label]="'TO_BE_PICKED'"
24371
- (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'quantityToBePicked')"
24372
- ></co-transaction-filter-historic-state>
24373
- </div>
24632
+ <!--Gefactureerd-->
24633
+ <div class="filter-item-wrapper" lazyRender #lazyRenderInvoiced="lazyRender">
24634
+ <co-transaction-filter-historic-state *ngIf="lazyRenderInvoiced.isShowing"
24635
+ [label]="'INVOICED'"
24636
+ (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'quantityInvoiced')"
24637
+ ></co-transaction-filter-historic-state>
24638
+ </div>
24374
24639
 
24375
- <!--Gepicked-->
24376
- <div class="filter-item-wrapper" lazyRender #lazyRenderPicked="lazyRender">
24377
- <co-transaction-filter-historic-state *ngIf="lazyRenderPicked.isShowing"
24378
- [label]="'PICKED'"
24379
- (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'quantityPicked')"
24380
- ></co-transaction-filter-historic-state>
24381
- </div>
24640
+ <!--Te picken-->
24641
+ <div class="filter-item-wrapper" lazyRender #lazyRenderToBePicked="lazyRender">
24642
+ <co-transaction-filter-historic-state *ngIf="lazyRenderToBePicked.isShowing"
24643
+ [label]="'TO_BE_PICKED'"
24644
+ (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'quantityToBePicked')"
24645
+ ></co-transaction-filter-historic-state>
24646
+ </div>
24382
24647
 
24383
- <!--Bevestigde leverdatum-->
24384
- <div class="filter-item-wrapper" lazyRender #lazyRenderConfirmedDeliveryDate="lazyRender">
24385
- <co-transaction-filter-item *ngIf="lazyRenderConfirmedDeliveryDate.isShowing"
24386
- [placeholder]="'CONFIRMED_DELIVERY_DATE'"
24387
- [customContent]="true">
24388
- <co-input-date-range
24389
- [startDate]="confirmedDeliveryStartDate"
24390
- [endDate]="confirmedDeliveryEndDate"
24391
- (dateRangeChange)="onDateRangeChange($event, 'confirmedDeliveryDateRange')"
24392
- (cleared)="onClearedDateRangeChange('confirmedDeliveryDateRange')"
24393
- [placeholder]="'SELECT_DATE' | localize">
24394
- </co-input-date-range>
24395
- </co-transaction-filter-item>
24396
- </div>
24648
+ <!--Gepicked-->
24649
+ <div class="filter-item-wrapper" lazyRender #lazyRenderPicked="lazyRender">
24650
+ <co-transaction-filter-historic-state *ngIf="lazyRenderPicked.isShowing"
24651
+ [label]="'PICKED'"
24652
+ (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'quantityPicked')"
24653
+ ></co-transaction-filter-historic-state>
24654
+ </div>
24397
24655
 
24398
- <!--Aankomstdatum-->
24399
- <div class="filter-item-wrapper" lazyRender #lazyRenderArrivalDate="lazyRender">
24400
- <co-transaction-filter-item *ngIf="lazyRenderArrivalDate.isShowing"
24401
- [placeholder]="'ARRIVAL_DATE'"
24402
- [customContent]="true">
24403
- <co-input-date-range
24404
- [startDate]="arrivalStartDate"
24405
- [endDate]="arrivalEndDate"
24406
- (dateRangeChange)="onDateRangeChange($event, 'arrivalDateRange')"
24407
- (cleared)="onClearedDateRangeChange('arrivalDateRange')"
24408
- [placeholder]="'SELECT_DATE' | localize">
24409
- </co-input-date-range>
24410
- </co-transaction-filter-item>
24411
- </div>
24656
+ <!--Bevestigde leverdatum-->
24657
+ <div class="filter-item-wrapper" lazyRender #lazyRenderConfirmedDeliveryDate="lazyRender">
24658
+ <co-transaction-filter-item *ngIf="lazyRenderConfirmedDeliveryDate.isShowing"
24659
+ [placeholder]="'CONFIRMED_DELIVERY_DATE'"
24660
+ [customContent]="true">
24661
+ <co-input-date-range
24662
+ [startDate]="confirmedDeliveryStartDate"
24663
+ [endDate]="confirmedDeliveryEndDate"
24664
+ (dateRangeChange)="onDateRangeChange($event, 'confirmedDeliveryDateRange')"
24665
+ (cleared)="onClearedDateRangeChange('confirmedDeliveryDateRange')"
24666
+ [placeholder]="'SELECT_DATE' | localize">
24667
+ </co-input-date-range>
24668
+ </co-transaction-filter-item>
24669
+ </div>
24412
24670
 
24413
- <!--Deellevering-->
24414
- <div class="filter-item-wrapper" lazyRender #lazyRenderPartialDelivery="lazyRender">
24415
- <co-transaction-filter-item *ngIf="lazyRenderPartialDelivery.isShowing"
24416
- [placeholder]="'PART_DELIVERY'"
24417
- [customContent]="true">
24418
- <co-input-checkbox
24419
- [model]="searchRequest.partialDelivery === 'J'"
24420
- (modelChange)="filterRequestService.handleCheckboxValueChangeForString($event, 'partialDelivery')"
24421
- [label]="'PART_DELIVERY' | localize">
24422
- </co-input-checkbox>
24423
- </co-transaction-filter-item>
24424
- </div>
24671
+ <!--Aankomstdatum-->
24672
+ <div class="filter-item-wrapper" lazyRender #lazyRenderArrivalDate="lazyRender">
24673
+ <co-transaction-filter-item *ngIf="lazyRenderArrivalDate.isShowing"
24674
+ [placeholder]="'ARRIVAL_DATE'"
24675
+ [customContent]="true">
24676
+ <co-input-date-range
24677
+ [startDate]="arrivalStartDate"
24678
+ [endDate]="arrivalEndDate"
24679
+ (dateRangeChange)="onDateRangeChange($event, 'arrivalDateRange')"
24680
+ (cleared)="onClearedDateRangeChange('arrivalDateRange')"
24681
+ [placeholder]="'SELECT_DATE' | localize">
24682
+ </co-input-date-range>
24683
+ </co-transaction-filter-item>
24684
+ </div>
24425
24685
 
24426
- <!--Magazijn -->
24427
- <div class="filter-item-wrapper" lazyRender #lazyRenderWarehouse="lazyRender">
24428
- <co-transaction-filter-item *ngIf="lazyRenderWarehouse.isShowing"
24429
- [placeholder]="'WAREHOUSE'"
24430
- [singleSelect]="true"
24431
- [collection]="warehouses"
24432
- (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'warehouse')">
24433
- </co-transaction-filter-item>
24434
- </div>
24686
+ <!--Deellevering-->
24687
+ <div class="filter-item-wrapper" lazyRender #lazyRenderPartialDelivery="lazyRender">
24688
+ <co-transaction-filter-item *ngIf="lazyRenderPartialDelivery.isShowing"
24689
+ [placeholder]="'PART_DELIVERY'"
24690
+ [customContent]="true">
24691
+ <co-input-checkbox
24692
+ [model]="searchRequest.partialDelivery === 'J'"
24693
+ (modelChange)="filterRequestService.handleCheckboxValueChangeForString($event, 'partialDelivery')"
24694
+ [label]="'PART_DELIVERY' | localize">
24695
+ </co-input-checkbox>
24696
+ </co-transaction-filter-item>
24697
+ </div>
24435
24698
 
24436
- <!--Bron magazijn-->
24437
- <div class="filter-item-wrapper" lazyRender #lazyRenderSourceWarehouse="lazyRender">
24438
- <co-transaction-filter-item *ngIf="lazyRenderSourceWarehouse.isShowing"
24439
- [placeholder]="'SOURCE_WAREHOUSE'"
24440
- [singleSelect]="true"
24441
- [collection]="sourceWarehouses"
24442
- (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'sourceWarehouse')">
24443
- </co-transaction-filter-item>
24444
- </div>
24699
+ <!--Magazijn -->
24700
+ <div class="filter-item-wrapper" lazyRender #lazyRenderWarehouse="lazyRender">
24701
+ <co-transaction-filter-item *ngIf="lazyRenderWarehouse.isShowing"
24702
+ [placeholder]="'WAREHOUSE'"
24703
+ [singleSelect]="true"
24704
+ [collection]="warehouses"
24705
+ [searchCollectionPlaceholder]="searchPlaceholder.Warehouse"
24706
+ (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'warehouse')">
24707
+ </co-transaction-filter-item>
24708
+ </div>
24445
24709
 
24446
- <!--Serienummer -->
24447
- <div class="filter-item-wrapper" lazyRender #lazyRenderSerialNumber="lazyRender">
24448
- <co-transaction-filter-item *ngIf="lazyRenderSerialNumber.isShowing"
24449
- [placeholder]="'SERIAL_NUMBER'"
24450
- [customContent]="true">
24451
- <co-input-text [(model)]="searchRequest.serialNumber"
24452
- [placeholder]="searchPlaceholder | localize"></co-input-text>
24453
- </co-transaction-filter-item>
24454
- </div>
24710
+ <!--Bron magazijn-->
24711
+ <div class="filter-item-wrapper" lazyRender #lazyRenderSourceWarehouse="lazyRender">
24712
+ <co-transaction-filter-item *ngIf="lazyRenderSourceWarehouse.isShowing"
24713
+ [placeholder]="'SOURCE_WAREHOUSE'"
24714
+ [singleSelect]="true"
24715
+ [collection]="sourceWarehouses"
24716
+ [searchCollectionPlaceholder]="searchPlaceholder.SourceWarehouse"
24717
+ (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'sourceWarehouse')">
24718
+ </co-transaction-filter-item>
24719
+ </div>
24455
24720
 
24456
- <!--Batchnummer -->
24457
- <div class="filter-item-wrapper" lazyRender #lazyRenderBatchNumber="lazyRender">
24458
- <co-transaction-filter-item *ngIf="lazyRenderBatchNumber.isShowing"
24459
- [placeholder]="'BATCH_NUMBER'"
24460
- [customContent]="true">
24461
- <co-input-text [(model)]="searchRequest.batchNumber"
24462
- [placeholder]="searchPlaceholder | localize"></co-input-text>
24463
- </co-transaction-filter-item>
24464
- </div>
24721
+ <!--Serienummer -->
24722
+ <div class="filter-item-wrapper" lazyRender #lazyRenderSerialNumber="lazyRender">
24723
+ <co-transaction-filter-item *ngIf="lazyRenderSerialNumber.isShowing"
24724
+ [placeholder]="'SERIAL_NUMBER'"
24725
+ [customContent]="true">
24726
+ <co-input-text [(model)]="searchRequest.serialNumber"
24727
+ [placeholder]="searchPlaceholder.SerialNumber | localize"></co-input-text>
24728
+ </co-transaction-filter-item>
24729
+ </div>
24465
24730
 
24466
- <!--Inclusief retouren-->
24467
- <div class="filter-item-wrapper" lazyRender #lazyRenderIncludingReturns="lazyRender">
24468
- <co-transaction-filter-item *ngIf="lazyRenderIncludingReturns.isShowing"
24469
- [placeholder]="'INCLUDING_RETURNS'"
24470
- [customContent]="true">
24471
- <co-input-checkbox
24472
- [label]="'INCLUDING_RETURNS' | localize"
24473
- [model]="searchRequest.includingReturns === 1"
24474
- (modelChange)="filterRequestService.handleCheckboxValueChangeForNumber($event, 'includingReturns')"
24475
- >
24476
- </co-input-checkbox>
24477
- </co-transaction-filter-item>
24478
- </div>
24731
+ <!--Batchnummer -->
24732
+ <div class="filter-item-wrapper" lazyRender #lazyRenderBatchNumber="lazyRender">
24733
+ <co-transaction-filter-item *ngIf="lazyRenderBatchNumber.isShowing"
24734
+ [placeholder]="'BATCH_NUMBER'"
24735
+ [customContent]="true">
24736
+ <co-input-text [(model)]="searchRequest.batchNumber"
24737
+ [placeholder]="searchPlaceholder.BatchNumber | localize"></co-input-text>
24738
+ </co-transaction-filter-item>
24739
+ </div>
24479
24740
 
24480
- <!--Levermethode op (regel/header): todo: nog uitzoeken welke filter dit is-->
24741
+ <!--Inclusief retouren-->
24742
+ <div class="filter-item-wrapper" lazyRender #lazyRenderIncludingReturns="lazyRender">
24743
+ <co-transaction-filter-item *ngIf="lazyRenderIncludingReturns.isShowing"
24744
+ [placeholder]="'INCLUDING_RETURNS'"
24745
+ [customContent]="true">
24746
+ <co-input-checkbox
24747
+ [label]="'INCLUDING_RETURNS' | localize"
24748
+ [model]="searchRequest.includingReturns === 1"
24749
+ (modelChange)="filterRequestService.handleCheckboxValueChangeForNumber($event, 'includingReturns')"
24750
+ >
24751
+ </co-input-checkbox>
24752
+ </co-transaction-filter-item>
24481
24753
  </div>
24754
+
24755
+ <!--Levermethode op (regel/header): todo: nog uitzoeken welke filter dit is-->
24756
+ </div>
24482
24757
  `
24483
24758
  },] }
24484
24759
  ];
@@ -24605,8 +24880,8 @@ TransactionSalesOrderFilterContentOrderComponent.decorators = [
24605
24880
  <!--Orderdatum-->
24606
24881
  <div class="filter-item-wrapper" lazyRender #lazyRenderOrderDate="lazyRender">
24607
24882
  <co-transaction-filter-item *ngIf="lazyRenderOrderDate.isShowing"
24608
- [placeholder]="'ORDER_DATE'"
24609
- [customContent]="true">
24883
+ [placeholder]="'ORDER_DATE'"
24884
+ [customContent]="true">
24610
24885
  <co-input-date-range
24611
24886
  [startDate]="transStartDate"
24612
24887
  [endDate]="transEndDate"
@@ -24620,8 +24895,8 @@ TransactionSalesOrderFilterContentOrderComponent.decorators = [
24620
24895
  <!--Leverdatum-->
24621
24896
  <div class="filter-item-wrapper" lazyRender #lazyRenderDeliveryDate="lazyRender">
24622
24897
  <co-transaction-filter-item *ngIf="lazyRenderDeliveryDate.isShowing"
24623
- [placeholder]="'DELIVERY_DATE'"
24624
- [customContent]="true">
24898
+ [placeholder]="'DELIVERY_DATE'"
24899
+ [customContent]="true">
24625
24900
  <co-input-date-range
24626
24901
  [startDate]="deliveryStartDate"
24627
24902
  [endDate]="deliveryEndDate"
@@ -24635,18 +24910,20 @@ TransactionSalesOrderFilterContentOrderComponent.decorators = [
24635
24910
  <!--Filiaal-->
24636
24911
  <div class="filter-item-wrapper" lazyRender #lazyRenderBranch="lazyRender">
24637
24912
  <co-transaction-filter-item *ngIf="lazyRenderBranch.isShowing"
24638
- [placeholder]="'BRANCH'"
24639
- [collection]="branches"
24640
- (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeBranchId')">
24913
+ [placeholder]="'BRANCH'"
24914
+ [searchCollectionPlaceholder]="searchPlaceholder.Branch"
24915
+ [collection]="branches"
24916
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeBranchId')">
24641
24917
  </co-transaction-filter-item>
24642
24918
  </div>
24643
24919
 
24644
24920
  <!--Verkoper-->
24645
24921
  <div class="filter-item-wrapper" lazyRender #lazyRenderHandledBy="lazyRender">
24646
24922
  <co-transaction-filter-item *ngIf="lazyRenderHandledBy.isShowing"
24647
- [placeholder]="'HANDLED_BY'"
24648
- [collection]="salesPersons"
24649
- (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeSalesPerson')"
24923
+ [placeholder]="'HANDLED_BY'"
24924
+ [searchCollectionPlaceholder]="searchPlaceholder.SalesPerson"
24925
+ [collection]="salesPersons"
24926
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'rangeSalesPerson')"
24650
24927
  >
24651
24928
  </co-transaction-filter-item>
24652
24929
  </div>
@@ -24654,38 +24931,39 @@ TransactionSalesOrderFilterContentOrderComponent.decorators = [
24654
24931
  <!--Eigen referentie-->
24655
24932
  <div class="filter-item-wrapper" lazyRender #lazyRenderUserReference="lazyRender">
24656
24933
  <co-transaction-filter-item *ngIf="lazyRenderUserReference.isShowing"
24657
- [placeholder]="'OWN_REFERENCE'"
24658
- [customContent]="true">
24934
+ [placeholder]="'OWN_REFERENCE'"
24935
+ [customContent]="true">
24659
24936
  <co-input-text [(model)]="searchRequest.userReference"
24660
- [placeholder]="'OWN_REFERENCE' | localize"></co-input-text>
24937
+ [placeholder]="searchPlaceholder.OwnReference | localize"></co-input-text>
24661
24938
  </co-transaction-filter-item>
24662
24939
  </div>
24663
24940
 
24664
24941
  <!--Tags-->
24665
24942
  <div class="filter-item-wrapper" lazyRender #lazyRenderTags="lazyRender">
24666
24943
  <co-transaction-filter-item *ngIf="lazyRenderTags.isShowing"
24667
- [placeholder]="'TAGS'"
24668
- [collection]="tags"
24669
- (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'tagRange')">
24670
- <co-input-text [(model)]="searchRequest.tagRange" [placeholder]="'TAGS' | localize"></co-input-text>
24944
+ [placeholder]="'TAGS'"
24945
+ [searchCollectionPlaceholder]="searchPlaceholder.Tags"
24946
+ [collection]="tags"
24947
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event, 'tagRange')">
24948
+ <co-input-text [(model)]="searchRequest.tagRange" [placeholder]="searchPlaceholder.Tags | localize"></co-input-text>
24671
24949
  </co-transaction-filter-item>
24672
24950
  </div>
24673
24951
 
24674
24952
  <!--On hold codes-->
24675
24953
  <div class="filter-item-wrapper" lazyRender #lazyRenderOnHold="lazyRender">
24676
24954
  <co-transaction-filter-item *ngIf="lazyRenderOnHold.isShowing"
24677
- [placeholder]="'ON_HOLD'"
24678
- [collection]="onHoldCodes"
24679
- (collectionChange)="filterRequestService.handleCollectionChangeForRange($event,'rangeOnHoldCodes')">
24680
- <co-input-text [(model)]="searchRequest.tagRange" [placeholder]="'TAGS' | localize"></co-input-text>
24955
+ [placeholder]="'ON_HOLD'"
24956
+ [collection]="onHoldCodes"
24957
+ (collectionChange)="filterRequestService.handleCollectionChangeForRange($event,'rangeOnHoldCodes')">
24958
+ <co-input-text [(model)]="searchRequest.tagRange" [placeholder]="searchPlaceholder.OnHold | localize"></co-input-text>
24681
24959
  </co-transaction-filter-item>
24682
24960
  </div>
24683
24961
 
24684
24962
  <!--Order definitief-->
24685
24963
  <div class="filter-item-wrapper" lazyRender #lazyRenderTransDef="lazyRender">
24686
24964
  <co-transaction-filter-item *ngIf="lazyRenderTransDef.isShowing"
24687
- [placeholder]="'ORDER_DEFINITIVE'"
24688
- [customContent]="true">
24965
+ [placeholder]="'ORDER_DEFINITIVE'"
24966
+ [customContent]="true">
24689
24967
  <co-input-checkbox
24690
24968
  [model]="searchRequest.transactionDefinitive === 'J'"
24691
24969
  (modelChange)="filterRequestService.handleCheckboxValueChangeForString($event, 'transactionDefinitive')"
@@ -24696,9 +24974,10 @@ TransactionSalesOrderFilterContentOrderComponent.decorators = [
24696
24974
  <!--Commissiecode-->
24697
24975
  <div class="filter-item-wrapper" lazyRender #lazyRenderCommissionCodes="lazyRender">
24698
24976
  <co-transaction-filter-item *ngIf="lazyRenderCommissionCodes.isShowing"
24699
- [placeholder]="'COMMISSION_CODE'"
24700
- [collection]="commissionCodes"
24701
- (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'commissionCodes')"
24977
+ [placeholder]="'COMMISSION_CODE'"
24978
+ [searchCollectionPlaceholder]="searchPlaceholder.CommissionCode"
24979
+ [collection]="commissionCodes"
24980
+ (collectionChange)="filterRequestService.handleCollectionChangeForArray($event, 'commissionCodes')"
24702
24981
  >
24703
24982
  </co-transaction-filter-item>
24704
24983
  </div>
@@ -24706,8 +24985,8 @@ TransactionSalesOrderFilterContentOrderComponent.decorators = [
24706
24985
  <!--Inactieve transacties-->
24707
24986
  <div class="filter-item-wrapper" lazyRender #lazyRenderInactiveTrans="lazyRender">
24708
24987
  <co-transaction-filter-item *ngIf="lazyRenderInactiveTrans.isShowing"
24709
- [placeholder]="'INACTIVE_TRANSACTIONS'"
24710
- [customContent]="true">
24988
+ [placeholder]="'INACTIVE_TRANSACTIONS'"
24989
+ [customContent]="true">
24711
24990
  <co-input-checkbox
24712
24991
  [model]="searchRequest.active === false"
24713
24992
  (modelChange)="searchRequest.active = !$event"
@@ -24719,21 +24998,23 @@ TransactionSalesOrderFilterContentOrderComponent.decorators = [
24719
24998
  <!--Klantnaam-->
24720
24999
  <div class="filter-item-wrapper" lazyRender #lazyRenderRelationName="lazyRender">
24721
25000
  <co-transaction-filter-item *ngIf="lazyRenderRelationName.isShowing"
24722
- [placeholder]="'CUSTOMER_NAME'"
24723
- [singleSelect]="true"
24724
- [minSearchCharsToLoadCollection]="3"
24725
- [collectionLoadFn]="loadCustomers"
24726
- (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'relationName' )">
25001
+ [placeholder]="'CUSTOMER_NAME'"
25002
+ [searchCollectionPlaceholder]="searchPlaceholder.CustomerName"
25003
+ [singleSelect]="true"
25004
+ [minSearchCharsToLoadCollection]="3"
25005
+ [collectionLoadFn]="loadCustomers"
25006
+ (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'relationName' )">
24727
25007
  </co-transaction-filter-item>
24728
25008
  </div>
24729
25009
 
24730
25010
  <!--Klantgroep-->
24731
25011
  <div class="filter-item-wrapper" lazyRender #lazyRenderCustomerGroup="lazyRender">
24732
25012
  <co-transaction-filter-item *ngIf="lazyRenderCustomerGroup.isShowing"
24733
- [placeholder]="'CUSTOMER_GROUP'"
24734
- [singleSelect]="true"
24735
- [collection]="customerGroups"
24736
- (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'customerGroupId')">
25013
+ [placeholder]="'CUSTOMER_GROUP'"
25014
+ [searchCollectionPlaceholder]="searchPlaceholder.CustomerGroup"
25015
+ [singleSelect]="true"
25016
+ [collection]="customerGroups"
25017
+ (collectionChange)="filterRequestService.handleCollectionChangeForSingleSelect($event, 'customerGroupId')">
24737
25018
  </co-transaction-filter-item>
24738
25019
  </div>
24739
25020
  </div>