@hitsoft/uretim-yonetimi 1.0.12 → 1.0.13

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 (137) hide show
  1. package/config/enums/route-names.d.ts +3 -0
  2. package/config/index.d.ts +5 -0
  3. package/config/providers/create-barcode-route.provider.d.ts +9 -0
  4. package/config/providers/issues-for-production-route.provider.d.ts +9 -0
  5. package/config/providers/production-order-route.provider.d.ts +9 -0
  6. package/config/providers/receipt-from-production-route.provider.d.ts +9 -0
  7. package/config/providers/route.provider.d.ts +8 -0
  8. package/config/uretim-yonetimi-config.module.d.ts +8 -0
  9. package/esm2020/config/enums/index.mjs +2 -0
  10. package/esm2020/config/enums/route-names.mjs +2 -0
  11. package/esm2020/config/hitsoft-uretim-yonetimi-config.mjs +5 -0
  12. package/esm2020/config/providers/create-barcode-route.provider.mjs +19 -0
  13. package/esm2020/config/providers/index.mjs +2 -0
  14. package/esm2020/config/providers/issues-for-production-route.provider.mjs +19 -0
  15. package/esm2020/config/providers/production-order-route.provider.mjs +19 -0
  16. package/esm2020/config/providers/receipt-from-production-route.provider.mjs +19 -0
  17. package/esm2020/config/providers/route.provider.mjs +24 -0
  18. package/esm2020/config/public-api.mjs +4 -0
  19. package/esm2020/config/uretim-yonetimi-config.module.mjs +28 -0
  20. package/esm2020/hitsoft-uretim-yonetimi.mjs +5 -0
  21. package/esm2020/lib/components/hit-create-barcodes/hit-create-barcodes-routing.module.mjs +26 -0
  22. package/esm2020/lib/components/hit-create-barcodes/hit-create-barcodes.component.mjs +186 -0
  23. package/esm2020/lib/components/hit-create-barcodes/hit-create-barcodes.module.mjs +65 -0
  24. package/esm2020/lib/components/hit-issues-for-productions/hit-issues-for-productions-routing.module.mjs +26 -0
  25. package/esm2020/lib/components/hit-issues-for-productions/hit-issues-for-productions.component.mjs +250 -0
  26. package/esm2020/lib/components/hit-issues-for-productions/hit-issues-for-productions.module.mjs +68 -0
  27. package/esm2020/lib/components/hit-production-orders/hit-production-orders-routing.module.mjs +26 -0
  28. package/esm2020/lib/components/hit-production-orders/hit-production-orders.component.mjs +152 -0
  29. package/esm2020/lib/components/hit-production-orders/hit-production-orders.module.mjs +65 -0
  30. package/esm2020/lib/components/hit-receipt-from-productions/hit-receipt-from-production-routing.module.mjs +26 -0
  31. package/esm2020/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.component.mjs +215 -0
  32. package/esm2020/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.module.mjs +62 -0
  33. package/esm2020/lib/components/uretim-yonetimi.component.mjs +11 -0
  34. package/esm2020/lib/hit-proxy/devexpress-query-builder/devexpress-load-options.model.mjs +2 -0
  35. package/esm2020/lib/hit-proxy/devexpress-query-builder/devexpress-query-builder.mjs +54 -0
  36. package/esm2020/lib/hit-proxy/hit-create-barcodes/hit-create-barcodes.service.mjs +35 -0
  37. package/esm2020/lib/hit-proxy/hit-create-barcodes/models.mjs +3 -0
  38. package/esm2020/lib/hit-proxy/hit-issues-for-productions/hit-issues-for-productions.service.mjs +35 -0
  39. package/esm2020/lib/hit-proxy/hit-issues-for-productions/models.mjs +24 -0
  40. package/esm2020/lib/hit-proxy/hit-production-orders/hit-production-orders.service.mjs +44 -0
  41. package/esm2020/lib/hit-proxy/hit-production-orders/models.mjs +65 -0
  42. package/esm2020/lib/hit-proxy/hit-receipt-from-productions/hit-receipt-from-productions.service.mjs +30 -0
  43. package/esm2020/lib/hit-proxy/hit-receipt-from-productions/models.mjs +20 -0
  44. package/esm2020/lib/hit-proxy/models.mjs +80 -0
  45. package/esm2020/lib/uretim-yonetimi-routing.module.mjs +33 -0
  46. package/esm2020/lib/uretim-yonetimi.module.mjs +55 -0
  47. package/esm2020/public-api.mjs +6 -0
  48. package/fesm2015/hitsoft-uretim-yonetimi-config.mjs +121 -0
  49. package/fesm2015/hitsoft-uretim-yonetimi-config.mjs.map +1 -0
  50. package/fesm2015/hitsoft-uretim-yonetimi.mjs +1538 -0
  51. package/fesm2015/hitsoft-uretim-yonetimi.mjs.map +1 -0
  52. package/fesm2020/hitsoft-uretim-yonetimi-config.mjs +121 -0
  53. package/fesm2020/hitsoft-uretim-yonetimi-config.mjs.map +1 -0
  54. package/fesm2020/hitsoft-uretim-yonetimi.mjs +1516 -0
  55. package/fesm2020/hitsoft-uretim-yonetimi.mjs.map +1 -0
  56. package/index.d.ts +5 -0
  57. package/lib/components/hit-create-barcodes/hit-create-barcodes-routing.module.d.ts +7 -0
  58. package/lib/components/hit-create-barcodes/hit-create-barcodes.component.d.ts +45 -0
  59. package/lib/components/hit-create-barcodes/hit-create-barcodes.module.d.ts +16 -0
  60. package/lib/components/hit-issues-for-productions/hit-issues-for-productions-routing.module.d.ts +7 -0
  61. package/lib/components/hit-issues-for-productions/hit-issues-for-productions.component.d.ts +48 -0
  62. package/lib/components/hit-issues-for-productions/hit-issues-for-productions.module.d.ts +16 -0
  63. package/lib/components/hit-production-orders/hit-production-orders-routing.module.d.ts +7 -0
  64. package/lib/components/hit-production-orders/hit-production-orders.component.d.ts +44 -0
  65. package/lib/components/hit-production-orders/hit-production-orders.module.d.ts +16 -0
  66. package/lib/components/hit-receipt-from-productions/hit-receipt-from-production-routing.module.d.ts +7 -0
  67. package/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.component.d.ts +57 -0
  68. package/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.module.d.ts +16 -0
  69. package/lib/components/uretim-yonetimi.component.d.ts +5 -0
  70. package/lib/hit-proxy/devexpress-query-builder/devexpress-load-options.model.d.ts +17 -0
  71. package/lib/hit-proxy/devexpress-query-builder/devexpress-query-builder.d.ts +18 -0
  72. package/lib/hit-proxy/hit-create-barcodes/hit-create-barcodes.service.d.ts +23 -0
  73. package/lib/hit-proxy/hit-create-barcodes/models.d.ts +6 -0
  74. package/lib/hit-proxy/hit-issues-for-productions/hit-issues-for-productions.service.d.ts +17 -0
  75. package/lib/hit-proxy/hit-issues-for-productions/models.d.ts +30 -0
  76. package/lib/hit-proxy/hit-production-orders/hit-production-orders.service.d.ts +19 -0
  77. package/lib/hit-proxy/hit-production-orders/models.d.ts +85 -0
  78. package/lib/hit-proxy/hit-receipt-from-productions/hit-receipt-from-productions.service.d.ts +16 -0
  79. package/lib/hit-proxy/hit-receipt-from-productions/models.d.ts +39 -0
  80. package/lib/hit-proxy/models.d.ts +21 -0
  81. package/lib/uretim-yonetimi-routing.module.d.ts +7 -0
  82. package/lib/uretim-yonetimi.module.d.ts +17 -0
  83. package/package.json +42 -14
  84. package/{src/public-api.ts → public-api.d.ts} +0 -4
  85. package/.eslintrc.json +0 -44
  86. package/config/ng-package.json +0 -7
  87. package/config/src/enums/route-names.ts +0 -3
  88. package/config/src/providers/create-barcode-route.provider.ts +0 -21
  89. package/config/src/providers/issues-for-production-route.provider.ts +0 -21
  90. package/config/src/providers/production-order-route.provider.ts +0 -21
  91. package/config/src/providers/receipt-from-production-route.provider.ts +0 -21
  92. package/config/src/providers/route.provider.ts +0 -26
  93. package/config/src/uretim-yonetimi-config.module.ts +0 -22
  94. package/karma.conf.js +0 -44
  95. package/ng-package.json +0 -7
  96. package/src/lib/components/hit-create-barcodes/hit-create-barcodes-component.css +0 -10
  97. package/src/lib/components/hit-create-barcodes/hit-create-barcodes-routing.module.ts +0 -19
  98. package/src/lib/components/hit-create-barcodes/hit-create-barcodes.component.html +0 -80
  99. package/src/lib/components/hit-create-barcodes/hit-create-barcodes.component.ts +0 -219
  100. package/src/lib/components/hit-create-barcodes/hit-create-barcodes.module.ts +0 -39
  101. package/src/lib/components/hit-issues-for-productions/hit-issues-for-productions-routing.module.ts +0 -19
  102. package/src/lib/components/hit-issues-for-productions/hit-issues-for-productions.componenet.css +0 -7
  103. package/src/lib/components/hit-issues-for-productions/hit-issues-for-productions.component.html +0 -96
  104. package/src/lib/components/hit-issues-for-productions/hit-issues-for-productions.component.ts +0 -274
  105. package/src/lib/components/hit-issues-for-productions/hit-issues-for-productions.module.ts +0 -46
  106. package/src/lib/components/hit-production-orders/hit-production-orders-routing.module.ts +0 -19
  107. package/src/lib/components/hit-production-orders/hit-production-orders.component.html +0 -79
  108. package/src/lib/components/hit-production-orders/hit-production-orders.component.ts +0 -214
  109. package/src/lib/components/hit-production-orders/hit-production-orders.module.ts +0 -39
  110. package/src/lib/components/hit-receipt-from-productions/hit-receipt-from-production-component.css +0 -10
  111. package/src/lib/components/hit-receipt-from-productions/hit-receipt-from-production-routing.module.ts +0 -19
  112. package/src/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.component.html +0 -101
  113. package/src/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.component.ts +0 -258
  114. package/src/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.module.ts +0 -38
  115. package/src/lib/components/uretim-yonetimi.component.ts +0 -9
  116. package/src/lib/hit-proxy/devexpress-query-builder/devexpress-load-options.model.ts +0 -20
  117. package/src/lib/hit-proxy/devexpress-query-builder/devexpress-query-builder.ts +0 -51
  118. package/src/lib/hit-proxy/hit-create-barcodes/hit-create-barcodes.service.ts +0 -41
  119. package/src/lib/hit-proxy/hit-create-barcodes/models.ts +0 -6
  120. package/src/lib/hit-proxy/hit-issues-for-productions/hit-issues-for-productions.service.ts +0 -39
  121. package/src/lib/hit-proxy/hit-issues-for-productions/models.ts +0 -42
  122. package/src/lib/hit-proxy/hit-production-orders/hit-production-orders.service.ts +0 -60
  123. package/src/lib/hit-proxy/hit-production-orders/models.ts +0 -137
  124. package/src/lib/hit-proxy/hit-receipt-from-productions/hit-receipt-from-productions.service.ts +0 -32
  125. package/src/lib/hit-proxy/hit-receipt-from-productions/models.ts +0 -43
  126. package/src/lib/hit-proxy/models.ts +0 -105
  127. package/src/lib/uretim-yonetimi-routing.module.ts +0 -30
  128. package/src/lib/uretim-yonetimi.component.spec.ts +0 -24
  129. package/src/lib/uretim-yonetimi.module.ts +0 -52
  130. package/src/lib/uretim-yonetimi.service.spec.ts +0 -15
  131. package/src/test.ts +0 -29
  132. package/tsconfig.lib.json +0 -20
  133. package/tsconfig.lib.prod.json +0 -10
  134. package/tsconfig.spec.json +0 -17
  135. /package/config/{src/enums/index.ts → enums/index.d.ts} +0 -0
  136. /package/config/{src/providers/index.ts → providers/index.d.ts} +0 -0
  137. /package/config/{src/public-api.ts → public-api.d.ts} +0 -0
@@ -0,0 +1,1516 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Component, Injectable, ChangeDetectionStrategy, ViewChild, NgModule } from '@angular/core';
3
+ import * as i1 from '@abp/ng.core';
4
+ import { ListService, AuthGuard, PermissionGuard, CoreModule, LazyModuleFactory } from '@abp/ng.core';
5
+ import * as i3 from '@abp/ng.theme.shared';
6
+ import { ThemeSharedModule } from '@abp/ng.theme.shared';
7
+ import * as i1$1 from '@angular/router';
8
+ import { RouterModule } from '@angular/router';
9
+ import { NgbDateAdapter, NgbCollapseModule, NgbDatepickerModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
10
+ import { NgxValidateCoreModule } from '@ngx-validate/core';
11
+ import { CommercialUiModule } from '@volo/abp.commercial.ng.ui';
12
+ import * as i7 from '@abp/ng.components/page';
13
+ import { PageModule } from '@abp/ng.components/page';
14
+ import { DateAdapter } from '@abp/ng.theme.shared/extensions';
15
+ import { firstValueFrom } from 'rxjs';
16
+ import * as i4 from '@angular/forms';
17
+ import * as i6 from '@angular/common';
18
+ import * as i8 from 'devextreme-angular';
19
+ import { DxTextBoxModule, DxButtonModule, DxDataGridModule, DxNumberBoxModule, DevExtremeModule, DxLoadIndicatorModule } from 'devextreme-angular';
20
+ import * as i8$1 from 'devextreme-angular/ui/nested';
21
+ import * as AspNetData from 'devextreme-aspnet-data-nojquery';
22
+ import * as i5 from '@angular/platform-browser';
23
+ import * as i9 from 'devextreme-angular/core';
24
+
25
+ class UretimYonetimiComponent {
26
+ }
27
+ UretimYonetimiComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
+ UretimYonetimiComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: UretimYonetimiComponent, selector: "lib-uretim-yonetimi", ngImport: i0, template: ` <p>uretim-yonetimi works!</p> `, isInline: true });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiComponent, decorators: [{
30
+ type: Component,
31
+ args: [{ selector: 'lib-uretim-yonetimi', template: ` <p>uretim-yonetimi works!</p> ` }]
32
+ }] });
33
+
34
+ class ProductionOrder {
35
+ }
36
+ class Warehouse {
37
+ }
38
+ class HammaddeDepo {
39
+ }
40
+ class ItemInfos {
41
+ }
42
+ class Item {
43
+ }
44
+ class ProductionOrderList {
45
+ constructor() {
46
+ this.ProductionOrderLines = [];
47
+ }
48
+ }
49
+ class ProductionOrderLineForListing {
50
+ constructor(itemCode, itemName, warehouseCode, quantity, plannedQty, batchNumber, baseType = 202, baseEntry = -1, baseLine = -1) {
51
+ this.ItemCode = itemCode;
52
+ this.ItemName = itemName;
53
+ this.WarehouseCode = warehouseCode;
54
+ this.Quantity = quantity;
55
+ this.PlannedQty = plannedQty;
56
+ this.BatchNumber = batchNumber;
57
+ this.BaseType = baseType;
58
+ this.BaseEntry = baseEntry;
59
+ this.BaseLine = baseLine;
60
+ }
61
+ }
62
+ class ProductionOrderPatchDto {
63
+ constructor(productionOrderLines = []) {
64
+ this.ProductionOrderLines = productionOrderLines;
65
+ }
66
+ }
67
+ class ProductionOrderLine$1 {
68
+ constructor(itemNo, warehouse, baseQuantity, plannedQuantity, issuedQuantity, productionOrderIssueType, documentAbsoluteEntry, lineNumber, batchNumbers) {
69
+ this.DocumentAbsoluteEntry = documentAbsoluteEntry;
70
+ this.LineNumber = lineNumber;
71
+ this.ItemNo = itemNo;
72
+ this.BaseQuantity = baseQuantity;
73
+ this.PlannedQuantity = plannedQuantity;
74
+ this.IssuedQuantity = issuedQuantity;
75
+ this.Warehouse = warehouse;
76
+ this.ProductionOrderIssueType = productionOrderIssueType;
77
+ this.BatchNumbers = batchNumbers;
78
+ }
79
+ }
80
+ class BatchNumber$1 {
81
+ constructor(batchNumber, quantity) {
82
+ this.BatchNumber = batchNumber;
83
+ this.Quantity = quantity;
84
+ }
85
+ }
86
+ class ProductionOrdersGetDto {
87
+ }
88
+ class TuketilenHammadde {
89
+ constructor(chemicalCode, lotNumber, expirationDate, weight, terminalCode) {
90
+ this.chemicalCode = chemicalCode;
91
+ this.lotNumber = lotNumber;
92
+ this.expirationDate = expirationDate;
93
+ this.weightGr = weight; // Gram cinsinden
94
+ this.weightKg = weight ? weight / 1000 : 0; // Kilogram cinsine dönüştürülmüş hali
95
+ this.terminalCode = terminalCode;
96
+ }
97
+ }
98
+
99
+ class ResultBase {
100
+ }
101
+ class HitHelper {
102
+ static getMeasurementFormatted(suffix) {
103
+ return suffix ? '#,##0.00 ' + suffix : '#,##0.00';
104
+ }
105
+ static getMeasurementFormattedWithLocalization(value, unit) {
106
+ const locale = navigator.language || 'tr-TR';
107
+ const formatted = new Intl.NumberFormat(locale, {
108
+ minimumFractionDigits: 2,
109
+ maximumFractionDigits: 2,
110
+ }).format(value);
111
+ return unit ? `${formatted} ${unit}` : formatted;
112
+ }
113
+ static getFormattedErrors(errors) {
114
+ if (!errors?.length) {
115
+ return '';
116
+ }
117
+ if (errors.length === 1) {
118
+ return errors[0];
119
+ }
120
+ return errors
121
+ .map((err, index) => `${index + 1}. ${err}`)
122
+ .join('\n');
123
+ }
124
+ static parseQR(code) {
125
+ const aiRegexMap = {
126
+ '240': /^240(.+?)10/,
127
+ '10': /10(.+?)17/,
128
+ '17': /17(\d{6})/,
129
+ '3103': /3103(\d{6})/,
130
+ '21': /21([A-Z]{2}\d{8})$/,
131
+ };
132
+ const chemicalCodeMatch = code.match(aiRegexMap['240']);
133
+ const lotNumberMatch = code.match(aiRegexMap['10']);
134
+ const expDateMatch = code.match(aiRegexMap['17']);
135
+ const weightMatch = code.match(aiRegexMap['3103']);
136
+ const terminalCodeMatch = code.match(aiRegexMap['21']);
137
+ if (!chemicalCodeMatch || !lotNumberMatch || !expDateMatch || !weightMatch || !terminalCodeMatch) {
138
+ return null;
139
+ }
140
+ var onMu = false;
141
+ while (!onMu) {
142
+ if (lotNumberMatch[1].substring(0, 2) == "10") {
143
+ chemicalCodeMatch[1] += "10";
144
+ lotNumberMatch[1] = lotNumberMatch[1].substring(2);
145
+ }
146
+ else {
147
+ onMu = true;
148
+ }
149
+ }
150
+ var onYediMi = false;
151
+ while (!onYediMi) {
152
+ if (expDateMatch[1].substring(0, 2) == "17") {
153
+ lotNumberMatch[1] += "10";
154
+ expDateMatch[1] = expDateMatch[1].substring(2);
155
+ }
156
+ else {
157
+ onYediMi = true;
158
+ }
159
+ }
160
+ if (!chemicalCodeMatch || !lotNumberMatch || !expDateMatch || !weightMatch || !terminalCodeMatch) {
161
+ return null;
162
+ }
163
+ const expDateRaw = expDateMatch[1]; // YYMMDD
164
+ const expirationDate = `20${expDateRaw.slice(0, 2)}-${expDateRaw.slice(2, 4)}-${expDateRaw.slice(4, 6)}`;
165
+ return new Hammadde(chemicalCodeMatch[1], lotNumberMatch[1], expirationDate, parseInt(weightMatch[1]), terminalCodeMatch[1]);
166
+ }
167
+ }
168
+ class Hammadde {
169
+ constructor(chemicalCode, lotNumber, expirationDate, weight, terminalCode) {
170
+ this.chemicalCode = chemicalCode;
171
+ this.lotNumber = lotNumber;
172
+ this.expirationDate = expirationDate;
173
+ this.weightGr = weight; // Gram cinsinden
174
+ this.weightKg = weight ? weight / 1000 : 0; // Kilogram cinsine dönüştürülmüş hali
175
+ this.terminalCode = terminalCode;
176
+ }
177
+ }
178
+
179
+ class HitProductionOrdersService {
180
+ constructor(restService) {
181
+ this.restService = restService;
182
+ this.apiName = 'UretimYonetimi';
183
+ this.get = (id) => this.restService.request({
184
+ method: 'GET',
185
+ url: `${this.resourceEndpoint}?id=${id + ''}`,
186
+ }, { apiName: this.apiName });
187
+ this.get2 = (id) => this.restService.request({
188
+ method: 'GET',
189
+ url: `${this.resourceEndpoint}?id=${id + ''}`,
190
+ }, { apiName: this.apiName });
191
+ this.patch = (input) => this.restService.request({
192
+ method: 'PATCH',
193
+ url: `${this.resourceEndpoint}`,
194
+ body: input
195
+ }, { apiName: this.apiName });
196
+ this.getWarehouses = () => this.restService.request({
197
+ method: 'GET',
198
+ url: `${this.resourceEndpoint}/get-warehouses`,
199
+ }, { apiName: this.apiName });
200
+ this.getWareHouseInfo = (itemCode, orderNo) => this.restService.request({
201
+ method: 'GET',
202
+ url: `${this.resourceEndpoint}/get-warehouse-info?itemCode=${itemCode}&orderNo=${orderNo}`,
203
+ }, { apiName: this.apiName });
204
+ this.getItemInfo = (itemCode) => this.restService.request({
205
+ method: 'GET',
206
+ url: `${this.resourceEndpoint}/get-item-info?itemCode=${itemCode}`,
207
+ }, { apiName: this.apiName });
208
+ this.resourceEndpoint = '/api/uretim-yonetimi/production-orders';
209
+ }
210
+ }
211
+ HitProductionOrdersService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersService, deps: [{ token: i1.RestService }], target: i0.ɵɵFactoryTarget.Injectable });
212
+ HitProductionOrdersService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersService, providedIn: 'root' });
213
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersService, decorators: [{
214
+ type: Injectable,
215
+ args: [{
216
+ providedIn: 'root',
217
+ }]
218
+ }], ctorParameters: function () { return [{ type: i1.RestService }]; } });
219
+
220
+ class HitProductionOrdersComponent {
221
+ constructor(ngZone, list, track, service, confirmation, fb, productionOrdersService) {
222
+ this.ngZone = ngZone;
223
+ this.list = list;
224
+ this.track = track;
225
+ this.service = service;
226
+ this.confirmation = confirmation;
227
+ this.fb = fb;
228
+ this.productionOrdersService = productionOrdersService;
229
+ this.HitHelper = HitHelper;
230
+ this.options = {
231
+ hideYesBtn: true,
232
+ cancelText: 'Kapat',
233
+ dismissible: false,
234
+ };
235
+ this.isLoading = false;
236
+ this.isEmriBarkoduGecerliMi = false;
237
+ this.searcheBasildiMi = false;
238
+ this.hammaddeQR = '';
239
+ this.qrOkutulduMu = false;
240
+ this.warehouses = [];
241
+ }
242
+ ngOnInit() {
243
+ this.getWarehouses();
244
+ }
245
+ ngAfterViewInit() {
246
+ this.nmbBoxBarkodNumarasi.instance.focus();
247
+ }
248
+ async getProductionOrderDetails() {
249
+ if (!this.isEmriBarkodu) {
250
+ return;
251
+ }
252
+ try {
253
+ this.isLoading = true;
254
+ this.isEmriBarkoduGecerliMi = false;
255
+ this.searcheBasildiMi = true;
256
+ const response = await firstValueFrom(this.productionOrdersService.get(this.isEmriBarkodu));
257
+ const response2 = await this.productionOrdersService.get2(this.isEmriBarkodu).subscribe();
258
+ if (response?.items) {
259
+ this.unitOfMeasure = response.items.unitOfMeasurement;
260
+ this.productionOrder = response.items;
261
+ this.productionOrderList = new ProductionOrderList();
262
+ this.isEmriBarkoduGecerliMi = true;
263
+ this.ngZone.run(() => {
264
+ setTimeout(() => {
265
+ this.nmbBoxHammaddeQR.instance.focus();
266
+ }, 0);
267
+ });
268
+ }
269
+ }
270
+ catch (error) {
271
+ this.isEmriBarkoduGecerliMi = false;
272
+ this.searcheBasildiMi = false;
273
+ }
274
+ finally {
275
+ this.isLoading = false;
276
+ }
277
+ }
278
+ async parseAndAddQR() {
279
+ if (!this.hammaddeQR) {
280
+ return;
281
+ }
282
+ const parsed = HitHelper.parseQR(this.hammaddeQR);
283
+ if (!parsed) {
284
+ this.confirmation.error('', 'Geçersiz barkod!', this.options).subscribe({
285
+ next: () => {
286
+ this.hammaddeQR = '';
287
+ this.nmbBoxHammaddeQR.instance.focus();
288
+ },
289
+ });
290
+ return;
291
+ }
292
+ const response = await firstValueFrom(this.service.getWareHouseInfo(parsed.chemicalCode, this.productionOrder.absoluteEntry.toString()));
293
+ const response2 = await firstValueFrom(this.service.getItemInfo(parsed.chemicalCode));
294
+ if (response?.items && response.isSuccessful) {
295
+ const productionOrderLineForListing = new ProductionOrderLineForListing(parsed.chemicalCode, response2.items.itemName, response.items.selectedWarehouse, parsed.weightKg, parsed.weightKg, parsed.lotNumber, 202, this.productionOrder.absoluteEntry, 0);
296
+ this.productionOrderList.ProductionOrderLines.push(productionOrderLineForListing);
297
+ this.qrOkutulduMu = true;
298
+ }
299
+ this.hammaddeQR = '';
300
+ }
301
+ patchProductionOrder() {
302
+ this.isLoading = true;
303
+ const productionOrderLines = this.productionOrderList.ProductionOrderLines.map(productionLine => {
304
+ return new ProductionOrderLine$1(productionLine.ItemCode, productionLine.WarehouseCode, productionLine.Quantity, productionLine.Quantity, productionLine.Quantity, '', productionLine.BaseEntry, 0, [new BatchNumber$1(productionLine.BatchNumber, productionLine.Quantity)]);
305
+ });
306
+ this.productionOrderPatch = new ProductionOrderPatchDto(productionOrderLines);
307
+ this.service.patch(this.productionOrderPatch).subscribe({
308
+ next: result => {
309
+ if (result.isSuccessful) {
310
+ this.confirmation.success('', 'İşlem başarılı!', this.options).subscribe(() => {
311
+ this.clearAll();
312
+ });
313
+ }
314
+ },
315
+ });
316
+ this.isLoading = false;
317
+ }
318
+ clearAll() {
319
+ this.isEmriBarkoduGecerliMi = false;
320
+ this.searcheBasildiMi = false;
321
+ this.qrOkutulduMu = false;
322
+ this.productionOrderPatch = null;
323
+ this.isEmriBarkodu = null;
324
+ this.hammaddeQR = '';
325
+ this.productionOrder = null;
326
+ this.unitOfMeasure = null;
327
+ this.ngZone.run(() => {
328
+ setTimeout(() => {
329
+ this.nmbBoxBarkodNumarasi.instance.focus();
330
+ }, 0);
331
+ });
332
+ }
333
+ getWarehouses() {
334
+ this.isLoading = true;
335
+ this.service.getWarehouses().subscribe(result => {
336
+ if (result.items) {
337
+ this.warehouses = result.items.slice();
338
+ }
339
+ });
340
+ this.isLoading = false;
341
+ }
342
+ }
343
+ HitProductionOrdersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersComponent, deps: [{ token: i0.NgZone }, { token: i1.ListService }, { token: i1.TrackByService }, { token: HitProductionOrdersService }, { token: i3.ConfirmationService }, { token: i4.FormBuilder }, { token: HitProductionOrdersService }], target: i0.ɵɵFactoryTarget.Component });
344
+ HitProductionOrdersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitProductionOrdersComponent, selector: "lib-hit-production-orders", providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], viewQueries: [{ propertyName: "nmbBoxBarkodNumarasi", first: true, predicate: ["barkodNumarasiRef"], descendants: true }, { propertyName: "nmbBoxHammaddeQR", first: true, predicate: ["hammaddeQRRef"], descendants: true }], ngImport: i0, template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::ProductionOrders' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" (click)=\"patchProductionOrder()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi\">\r\n <i class=\"fa fa-plus me-1\"></i>\r\n {{ 'UretimYonetimi::ProductionOrders.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::ProductionOrders.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ProductionOrders.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\" (onEnterKey)=\"getProductionOrderDetails()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrderDetails()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ProductionOrders.WorkOrderName' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ProductionOrders.PlannedQty' | abpLocalization\"\r\n format=\"#,##0.00\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-text-box #hammaddeQRRef style=\"width:100%;\" class=\"me-1\"\r\n [label]=\"'UretimYonetimi::ProductionOrders.QrBarcode' | abpLocalization\"\r\n [maxLength]=\"256\"\r\n [(value)]=\"hammaddeQR\" (onEnterKey)=\"parseAndAddQR()\"\r\n [placeholder]=\"'UretimYonetimi::ProductionOrders.QrBarcode.Placeholder' | abpLocalization\"\r\n [disabled]=\"qrOkutulduMu\">\r\n </dx-text-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"plus\" type=\"default\" (onClick)=\"parseAndAddQR()\"\r\n [disabled]=\"qrOkutulduMu\">\r\n </dx-button>\r\n </div>\r\n\r\n <div *ngIf=\"productionOrderList.ProductionOrderLines?.length\" class=\"mt-3\">\r\n <dx-data-grid [dataSource]=\"productionOrderList.ProductionOrderLines\" [showBorders]=\"true\"\r\n [columnAutoWidth]=\"true\" (onRowRemoved)=\"qrOkutulduMu=false\">\r\n <dxo-editing mode=\"row\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\r\n </dxo-editing>\r\n <dxi-column dataField=\"ItemName\" [caption]=\"'UretimYonetimi::ProductionOrders.ItemName' | abpLocalization\" [allowEditing]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"Quantity\" [caption]=\"'UretimYonetimi::ProductionOrders.Quantity' | abpLocalization\" dataType=\"number\" [format]=\"'#0.00 kg'\"></dxi-column>\r\n <dxi-column dataField=\"WarehouseCode\" [caption]=\"'UretimYonetimi::ProductionOrders.Warehouse' | abpLocalization\" [width]=\"150\" [allowSorting]=\"false\">\r\n <dxo-lookup [dataSource]=\"warehouses\" displayExpr=\"whsName\" valueExpr=\"whsCode\">\r\n </dxo-lookup>\r\n </dxi-column>\r\n <dxi-column dataField=\"ItemCode\" [caption]=\"'UretimYonetimi::ProductionOrders.ItemCode' | abpLocalization\" [allowEditing]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"BatchNumber\" [caption]=\"'UretimYonetimi::ProductionOrders.BatchNumber' | abpLocalization\" [allowEditing]=\"false\"></dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i7.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i8.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i8.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i8$1.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i8$1.DxoLookupComponent, selector: "dxo-lookup", inputs: ["allowClearing", "calculateCellValue", "dataSource", "displayExpr", "valueExpr"] }, { kind: "component", type: i8$1.DxoEditingComponent, selector: "dxo-editing", inputs: ["allowAdding", "allowDeleting", "allowUpdating", "changes", "confirmDelete", "editColumnName", "editRowKey", "form", "mode", "newRowPosition", "popup", "refreshMode", "selectTextOnEditStart", "startEditAction", "texts", "useIcons", "allowAddShape", "allowChangeConnection", "allowChangeConnectorPoints", "allowChangeConnectorText", "allowChangeShapeText", "allowDeleteConnector", "allowDeleteShape", "allowMoveShape", "allowResizeShape", "allowDependencyAdding", "allowDependencyDeleting", "allowResourceAdding", "allowResourceDeleting", "allowResourceUpdating", "allowTaskAdding", "allowTaskDeleting", "allowTaskResourceUpdating", "allowTaskUpdating", "enabled", "allowDragging", "allowResizing", "allowTimeZoneEditing"], outputs: ["changesChange", "editColumnNameChange", "editRowKeyChange"] }, { kind: "component", type: i8.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
345
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersComponent, decorators: [{
346
+ type: Component,
347
+ args: [{ selector: 'lib-hit-production-orders', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::ProductionOrders' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" (click)=\"patchProductionOrder()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi\">\r\n <i class=\"fa fa-plus me-1\"></i>\r\n {{ 'UretimYonetimi::ProductionOrders.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::ProductionOrders.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ProductionOrders.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\" (onEnterKey)=\"getProductionOrderDetails()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrderDetails()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ProductionOrders.WorkOrderName' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ProductionOrders.PlannedQty' | abpLocalization\"\r\n format=\"#,##0.00\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-text-box #hammaddeQRRef style=\"width:100%;\" class=\"me-1\"\r\n [label]=\"'UretimYonetimi::ProductionOrders.QrBarcode' | abpLocalization\"\r\n [maxLength]=\"256\"\r\n [(value)]=\"hammaddeQR\" (onEnterKey)=\"parseAndAddQR()\"\r\n [placeholder]=\"'UretimYonetimi::ProductionOrders.QrBarcode.Placeholder' | abpLocalization\"\r\n [disabled]=\"qrOkutulduMu\">\r\n </dx-text-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"plus\" type=\"default\" (onClick)=\"parseAndAddQR()\"\r\n [disabled]=\"qrOkutulduMu\">\r\n </dx-button>\r\n </div>\r\n\r\n <div *ngIf=\"productionOrderList.ProductionOrderLines?.length\" class=\"mt-3\">\r\n <dx-data-grid [dataSource]=\"productionOrderList.ProductionOrderLines\" [showBorders]=\"true\"\r\n [columnAutoWidth]=\"true\" (onRowRemoved)=\"qrOkutulduMu=false\">\r\n <dxo-editing mode=\"row\" [allowUpdating]=\"true\" [allowDeleting]=\"true\" [useIcons]=\"true\">\r\n </dxo-editing>\r\n <dxi-column dataField=\"ItemName\" [caption]=\"'UretimYonetimi::ProductionOrders.ItemName' | abpLocalization\" [allowEditing]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"Quantity\" [caption]=\"'UretimYonetimi::ProductionOrders.Quantity' | abpLocalization\" dataType=\"number\" [format]=\"'#0.00 kg'\"></dxi-column>\r\n <dxi-column dataField=\"WarehouseCode\" [caption]=\"'UretimYonetimi::ProductionOrders.Warehouse' | abpLocalization\" [width]=\"150\" [allowSorting]=\"false\">\r\n <dxo-lookup [dataSource]=\"warehouses\" displayExpr=\"whsName\" valueExpr=\"whsCode\">\r\n </dxo-lookup>\r\n </dxi-column>\r\n <dxi-column dataField=\"ItemCode\" [caption]=\"'UretimYonetimi::ProductionOrders.ItemCode' | abpLocalization\" [allowEditing]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"BatchNumber\" [caption]=\"'UretimYonetimi::ProductionOrders.BatchNumber' | abpLocalization\" [allowEditing]=\"false\"></dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n" }]
348
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: HitProductionOrdersService }, { type: i3.ConfirmationService }, { type: i4.FormBuilder }, { type: HitProductionOrdersService }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
349
+ type: ViewChild,
350
+ args: ['barkodNumarasiRef', { static: false }]
351
+ }], nmbBoxHammaddeQR: [{
352
+ type: ViewChild,
353
+ args: ['hammaddeQRRef', { static: false }]
354
+ }] } });
355
+
356
+ const routes$4 = [
357
+ {
358
+ path: '',
359
+ component: HitProductionOrdersComponent,
360
+ canActivate: [AuthGuard, PermissionGuard],
361
+ },
362
+ ];
363
+ class HitProductionOrdersRoutingModule {
364
+ }
365
+ HitProductionOrdersRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
366
+ HitProductionOrdersRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
367
+ HitProductionOrdersRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersRoutingModule, imports: [RouterModule.forChild(routes$4), RouterModule] });
368
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersRoutingModule, decorators: [{
369
+ type: NgModule,
370
+ args: [{
371
+ imports: [RouterModule.forChild(routes$4)],
372
+ exports: [RouterModule],
373
+ }]
374
+ }] });
375
+
376
+ class HitProductionOrderModule {
377
+ }
378
+ HitProductionOrderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
379
+ HitProductionOrderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrderModule, declarations: [HitProductionOrdersComponent], imports: [HitProductionOrdersRoutingModule,
380
+ CoreModule,
381
+ ThemeSharedModule,
382
+ CommercialUiModule,
383
+ NgxValidateCoreModule,
384
+ NgbCollapseModule,
385
+ NgbDatepickerModule,
386
+ NgbDropdownModule,
387
+ PageModule,
388
+ DxTextBoxModule,
389
+ DxButtonModule,
390
+ DxDataGridModule,
391
+ DxNumberBoxModule] });
392
+ HitProductionOrderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrderModule, imports: [HitProductionOrdersRoutingModule,
393
+ CoreModule,
394
+ ThemeSharedModule,
395
+ CommercialUiModule,
396
+ NgxValidateCoreModule,
397
+ NgbCollapseModule,
398
+ NgbDatepickerModule,
399
+ NgbDropdownModule,
400
+ PageModule,
401
+ DxTextBoxModule,
402
+ DxButtonModule,
403
+ DxDataGridModule,
404
+ DxNumberBoxModule] });
405
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrderModule, decorators: [{
406
+ type: NgModule,
407
+ args: [{
408
+ declarations: [HitProductionOrdersComponent],
409
+ imports: [
410
+ HitProductionOrdersRoutingModule,
411
+ CoreModule,
412
+ ThemeSharedModule,
413
+ CommercialUiModule,
414
+ NgxValidateCoreModule,
415
+ NgbCollapseModule,
416
+ NgbDatepickerModule,
417
+ NgbDropdownModule,
418
+ PageModule,
419
+ DxTextBoxModule,
420
+ DxButtonModule,
421
+ DxDataGridModule,
422
+ DxNumberBoxModule
423
+ ],
424
+ }]
425
+ }] });
426
+ function loadHitProductionOrdersAsChild() {
427
+ return Promise.resolve(HitProductionOrderModule);
428
+ }
429
+
430
+ class GetProductionOrderDto {
431
+ }
432
+ class ReceiptFromProductionsPostDto {
433
+ constructor() {
434
+ this.documentLines = [];
435
+ }
436
+ }
437
+ class ReceiptFromProductionsLines {
438
+ constructor() {
439
+ this.batchNumbers = [];
440
+ }
441
+ }
442
+ class ReceiptFromProductionsBatchNumbers {
443
+ }
444
+ class ProductionOrderLine {
445
+ constructor() {
446
+ this.quantity = 0;
447
+ }
448
+ }
449
+
450
+ class DevexpressRestService {
451
+ constructor(envService, toaster) {
452
+ this.envService = envService;
453
+ this.toaster = toaster;
454
+ this.localizationKey = 'tr';
455
+ this.createStore = (options) => AspNetData.createStore({
456
+ key: options.key,
457
+ loadParams: options.params,
458
+ loadUrl: `${this.envService.getEnvironment().apis.eDonusum.url + '/' + options.loadUrl}`,
459
+ insertUrl: `${this.envService.getEnvironment().apis.eDonusum.url + '/' + options.insertUrl}`,
460
+ insertMethod: 'POST',
461
+ updateUrl: `${this.envService.getEnvironment().apis.eDonusum.url + '/' + options.updateUrl}`,
462
+ updateMethod: 'PUT',
463
+ deleteUrl: `${this.envService.getEnvironment().apis.eDonusum.url + '/' + options.deleteUrl}`,
464
+ deleteMethod: 'DELETE',
465
+ onLoading(loadOptions) {
466
+ },
467
+ onBeforeSend(operation, ajaxSettings) {
468
+ let languages = {};
469
+ languages = JSON.parse(localStorage.getItem('abpSession'));
470
+ if (operation === "insert" || operation === "update" || operation === "delete") {
471
+ console.log(ajaxSettings);
472
+ if (operation == "delete") {
473
+ ajaxSettings.url = ajaxSettings.url + "/" + localStorage.getItem("appointment-deleted-id");
474
+ }
475
+ ajaxSettings.contentType = "application/json";
476
+ ajaxSettings.data = ajaxSettings.data.values;
477
+ }
478
+ ajaxSettings.headers = {
479
+ Authorization: 'Bearer ' + localStorage.getItem('access_token'),
480
+ 'Accept-Language': languages.language
481
+ };
482
+ }, onAjaxError: this.onAjaxError
483
+ });
484
+ }
485
+ onAjaxError(e) {
486
+ let jsonObj = e.xhr.responseJSON || JSON.parse(e.xhr.responseText);
487
+ e.error = jsonObj ? ` ${jsonObj.error.message} : ${jsonObj.error.details}` : 'null text';
488
+ }
489
+ }
490
+ DevexpressRestService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DevexpressRestService, deps: [{ token: i1.EnvironmentService }, { token: i3.ToasterService }], target: i0.ɵɵFactoryTarget.Injectable });
491
+ DevexpressRestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DevexpressRestService, providedIn: 'root' });
492
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DevexpressRestService, decorators: [{
493
+ type: Injectable,
494
+ args: [{
495
+ providedIn: 'root'
496
+ }]
497
+ }], ctorParameters: function () { return [{ type: i1.EnvironmentService }, { type: i3.ToasterService }]; } });
498
+
499
+ class HitReceiptFromProductionsService {
500
+ constructor(restService, devexService) {
501
+ this.restService = restService;
502
+ this.devexService = devexService;
503
+ this.apiName = 'UretimYonetimi';
504
+ this.create = (input) => this.restService.request({
505
+ method: 'POST',
506
+ url: `${this.resourceEndpoint}`,
507
+ body: input,
508
+ }, { apiName: this.apiName });
509
+ this.getBarcodeInfo = (productionOrderId, receiptId, barcodeNumber) => this.restService.request({
510
+ method: 'POST',
511
+ url: `/api/uretim-yonetimi/create-barcodes/get-barcode?productionOrderId=${productionOrderId}&receiptId=${receiptId}&barcodeNumber=${barcodeNumber}`,
512
+ }, { apiName: this.apiName });
513
+ this.resourceEndpoint = '/api/uretim-yonetimi/receipt-from-productions';
514
+ }
515
+ }
516
+ HitReceiptFromProductionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsService, deps: [{ token: i1.RestService }, { token: DevexpressRestService }], target: i0.ɵɵFactoryTarget.Injectable });
517
+ HitReceiptFromProductionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsService, providedIn: 'root' });
518
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsService, decorators: [{
519
+ type: Injectable,
520
+ args: [{
521
+ providedIn: 'root',
522
+ }]
523
+ }], ctorParameters: function () { return [{ type: i1.RestService }, { type: DevexpressRestService }]; } });
524
+
525
+ class HitReceiptFromProductionsComponent {
526
+ constructor(ngZone, list, track, service, confirmation, productionOrdersService, sanitizer) {
527
+ this.ngZone = ngZone;
528
+ this.list = list;
529
+ this.track = track;
530
+ this.service = service;
531
+ this.confirmation = confirmation;
532
+ this.productionOrdersService = productionOrdersService;
533
+ this.sanitizer = sanitizer;
534
+ this.HitHelper = HitHelper;
535
+ this.isLoading = false;
536
+ this.options = {
537
+ hideYesBtn: true,
538
+ cancelText: 'Kapat',
539
+ dismissible: false,
540
+ };
541
+ this.isProductionOrderValid = false;
542
+ this.searcheBasildiMi = false;
543
+ this.showModal = false;
544
+ this.pdfSrc = null;
545
+ this.productionOrder = new GetProductionOrderDto();
546
+ this.receiptFromProductionsPostDtoQuantity = 0;
547
+ this.receiptFromProductionsPostDto = new ReceiptFromProductionsPostDto();
548
+ this.receiptFromProductionsPostDtoDocumentLine = new ReceiptFromProductionsLines();
549
+ this.receiptFromProductionsPostDtoBatchNumber = new ReceiptFromProductionsBatchNumbers();
550
+ this.warehouses = [];
551
+ }
552
+ ngOnInit() {
553
+ this.clearAll();
554
+ this.getWarehouses();
555
+ }
556
+ ngAfterViewInit() {
557
+ this.focusOnBarkodNumarasi();
558
+ }
559
+ generateReport() {
560
+ this.service
561
+ .getBarcodeInfo(this.isEmriNumarasiForBarcode, this.newRecordDocEntry, 1)
562
+ .subscribe({
563
+ next: response => {
564
+ const base64Data = response.base64; // base64 string (sadece veri kısmı, "data:application/pdf;base64,..." değilse)
565
+ // Base64'ü decode edip binary veriye çeviriyoruz
566
+ const byteCharacters = atob(base64Data);
567
+ const byteNumbers = new Array(byteCharacters.length);
568
+ for (let i = 0; i < byteCharacters.length; i++) {
569
+ byteNumbers[i] = byteCharacters.charCodeAt(i);
570
+ }
571
+ const byteArray = new Uint8Array(byteNumbers);
572
+ // Blob oluşturuyoruz
573
+ const blob = new Blob([byteArray], { type: 'application/pdf' });
574
+ // Blob'tan URL oluşturup yeni sekmede açıyoruz (veya download edebilirsin)
575
+ this.blobUrl = URL.createObjectURL(blob);
576
+ this.pdfSrc = this.bypassAndSanitize(this.blobUrl);
577
+ },
578
+ });
579
+ }
580
+ bypassAndSanitize(url) {
581
+ return this.sanitizer.bypassSecurityTrustResourceUrl(url);
582
+ }
583
+ downloadPdf(blobUrl) {
584
+ const a = document.createElement('a');
585
+ a.href = blobUrl;
586
+ const parts = blobUrl.split('/');
587
+ const lastPart = parts.pop(); // "myfile.pdf"
588
+ a.download = lastPart + '.pdf'; // Kaydedilecek dosya adı
589
+ a.style.display = 'none';
590
+ // iOS'ta desteklenmesi için target=_blank eklenebilir
591
+ a.target = '_blank';
592
+ // DOM'a ekleyip tıklat
593
+ document.body.appendChild(a);
594
+ a.click();
595
+ document.body.removeChild(a);
596
+ }
597
+ async getProductionOrder() {
598
+ this.clearForm();
599
+ this.isLoading = true;
600
+ this.searcheBasildiMi = true;
601
+ this.productionOrdersService.get(this.barkodNumarasi).subscribe({
602
+ next: result => {
603
+ if (result.isSuccessful) {
604
+ this.productionOrder = result.items;
605
+ this.receiptFromProductionsPostDtoQuantity =
606
+ result.items.plannedQuantity - result.items.completedQuantity;
607
+ this.receiptFromProductionsPostDtoDocumentLine.baseEntry = this.barkodNumarasi;
608
+ this.receiptFromProductionsPostDtoDocumentLine.baseType = 202;
609
+ this.receiptFromProductionsPostDtoDocumentLine.quantity =
610
+ this.receiptFromProductionsPostDtoQuantity;
611
+ this.receiptFromProductionsPostDtoDocumentLine.warehouseCode = result.items.warehouse;
612
+ this.receiptFromProductionsPostDtoBatchNumber.batchNumber = result.items.u_trkBatch;
613
+ this.receiptFromProductionsPostDtoBatchNumber.quantity =
614
+ this.receiptFromProductionsPostDtoQuantity;
615
+ this.unitOfMeasure = result.items.unitOfMeasurement;
616
+ this.isProductionOrderValid = true;
617
+ this.focusOnToplananMiktar();
618
+ }
619
+ else {
620
+ if (result?.isSuccessful == false) {
621
+ this.confirmation.status$.subscribe({
622
+ next: () => {
623
+ this.clearAll();
624
+ },
625
+ });
626
+ }
627
+ }
628
+ },
629
+ });
630
+ this.isLoading = false;
631
+ }
632
+ async postReceiptFromProductions() {
633
+ this.isLoading = true;
634
+ this.receiptFromProductionsPostDtoDocumentLine.batchNumbers = [
635
+ this.receiptFromProductionsPostDtoBatchNumber,
636
+ ];
637
+ this.receiptFromProductionsPostDto.documentLines = [
638
+ this.receiptFromProductionsPostDtoDocumentLine,
639
+ ];
640
+ this.service.create(this.receiptFromProductionsPostDto).subscribe({
641
+ next: result => {
642
+ if (result.isSuccessful) {
643
+ this.confirmation.success('İşlem Başarılı', '', this.options).subscribe(() => {
644
+ this.newRecordDocEntry = result.items.docEntry;
645
+ this.isEmriNumarasiForBarcode = this.barkodNumarasi;
646
+ this.showModal = true;
647
+ this.clearAll();
648
+ });
649
+ }
650
+ else {
651
+ this.confirmation.status$.subscribe(() => {
652
+ this.focusOnToplananMiktar();
653
+ });
654
+ }
655
+ },
656
+ error: () => {
657
+ this.confirmation.status$.subscribe(() => {
658
+ this.focusOnToplananMiktar();
659
+ });
660
+ },
661
+ });
662
+ this.isLoading = false;
663
+ }
664
+ clearAll() {
665
+ this.barkodNumarasi = null;
666
+ this.clearForm();
667
+ }
668
+ clearForm() {
669
+ this.productionOrder = new GetProductionOrderDto();
670
+ this.receiptFromProductionsPostDto = new ReceiptFromProductionsPostDto();
671
+ this.receiptFromProductionsPostDtoDocumentLine = new ReceiptFromProductionsLines();
672
+ this.receiptFromProductionsPostDtoBatchNumber = new ReceiptFromProductionsBatchNumbers();
673
+ this.unitOfMeasure = null;
674
+ this.isProductionOrderValid = false;
675
+ this.searcheBasildiMi = false;
676
+ this.focusOnBarkodNumarasi();
677
+ }
678
+ async getWarehouses() {
679
+ this.isLoading = true;
680
+ this.productionOrdersService.getWarehouses().subscribe({
681
+ next: result => {
682
+ if (result.items) {
683
+ this.warehouses = result.items.slice();
684
+ }
685
+ },
686
+ });
687
+ this.isLoading = false;
688
+ }
689
+ focusOnBarkodNumarasi() {
690
+ this.ngZone.run(() => {
691
+ setTimeout(() => {
692
+ this.nmbBoxBarkodNumarasi.instance.focus();
693
+ }, 0);
694
+ });
695
+ }
696
+ focusOnToplananMiktar() {
697
+ this.ngZone.run(() => {
698
+ setTimeout(() => {
699
+ this.nmbBoxToplananMiktar.instance.focus();
700
+ }, 0);
701
+ });
702
+ }
703
+ getWarehouseName(code) {
704
+ const match = this.warehouses.find(x => x.whsCode === code);
705
+ return match ? match.whsName : '';
706
+ }
707
+ quantityChanged(e) {
708
+ this.receiptFromProductionsPostDtoBatchNumber.quantity = e.value;
709
+ this.receiptFromProductionsPostDtoDocumentLine.quantity = e.value;
710
+ }
711
+ }
712
+ HitReceiptFromProductionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsComponent, deps: [{ token: i0.NgZone }, { token: i1.ListService }, { token: i1.TrackByService }, { token: HitReceiptFromProductionsService }, { token: i3.ConfirmationService }, { token: HitProductionOrdersService }, { token: i5.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
713
+ HitReceiptFromProductionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitReceiptFromProductionsComponent, selector: "lib-hit-receipt-from-productions", providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], viewQueries: [{ propertyName: "nmbBoxBarkodNumarasi", first: true, predicate: ["barkodNumarasiRef"], descendants: true }, { propertyName: "nmbBoxToplananMiktar", first: true, predicate: ["toplananMiktarRef"], descendants: true }], ngImport: i0, template: "<abp-page [breadcrumb]=\"false\" style=\"padding: 0;\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\"\r\n (click)=\"postReceiptFromProductions()\"\r\n [disabled]=\"!isProductionOrderValid\">\r\n <i class=\"fa fa-plus me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box class=\"me-1 w-100\"\r\n #barkodNumarasiRef\r\n [label]=\"'UretimYonetimi::ReceiptFromProductions.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"barkodNumarasi\"\r\n (onChange)=\"getProductionOrder()\"\r\n (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isProductionOrderValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\"\r\n (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isProductionOrderValid\">\r\n </dx-button>\r\n </div>\r\n <div *ngIf=\"isProductionOrderValid\">\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.StokCode' | abpLocalization\"\r\n [(value)]=\"productionOrder.itemNo\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.StokDesc' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.ToWhs' | abpLocalization\" [maxLength]=\"128\"\r\n [value]=\"getWarehouseName(receiptFromProductionsPostDtoDocumentLine.warehouseCode)\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.BatchNumber' | abpLocalization\"\r\n [(value)]=\"receiptFromProductionsPostDtoBatchNumber.batchNumber\"\r\n [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.PlannedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.CompletedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.completedQuantity\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.Quantity' | abpLocalization\"\r\n [(value)]=\"receiptFromProductionsPostDtoBatchNumber.quantity\"\r\n (onValueChanged)=\"quantityChanged($event)\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [showSpinButtons]=\"true\" [min]=\"0\" #toplananMiktarRef>\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\" (disappear)=\"clearAll()\">\r\n <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template>\r\n <ng-template #abpBody>\r\n <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>\r\n </ng-template>\r\n <ng-template #abpFooter>\r\n <button (click)=\"downloadPdf(blobUrl)\" type=\"button\"\r\n class=\"btn btn-secondary mobilde-gorunur\" abpClose> \u0130ndir\r\n </button>\r\n <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n</abp-modal>\r\n", styles: [".mobilde-gorunur{display:none}@media (max-width: 768px){.mobilde-gorunur{display:block}}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "directive", type: i3.ModalCloseDirective, selector: "[abpClose]" }, { kind: "component", type: i7.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i7.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i8.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i8.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
714
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsComponent, decorators: [{
715
+ type: Component,
716
+ args: [{ selector: 'lib-hit-receipt-from-productions', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<abp-page [breadcrumb]=\"false\" style=\"padding: 0;\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\"\r\n (click)=\"postReceiptFromProductions()\"\r\n [disabled]=\"!isProductionOrderValid\">\r\n <i class=\"fa fa-plus me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\" aria-hidden=\"true\"></i>\r\n {{ 'UretimYonetimi::ReceiptFromProductions.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box class=\"me-1 w-100\"\r\n #barkodNumarasiRef\r\n [label]=\"'UretimYonetimi::ReceiptFromProductions.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"barkodNumarasi\"\r\n (onChange)=\"getProductionOrder()\"\r\n (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isProductionOrderValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\"\r\n (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isProductionOrderValid\">\r\n </dx-button>\r\n </div>\r\n <div *ngIf=\"isProductionOrderValid\">\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.StokCode' | abpLocalization\"\r\n [(value)]=\"productionOrder.itemNo\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.StokDesc' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.ToWhs' | abpLocalization\" [maxLength]=\"128\"\r\n [value]=\"getWarehouseName(receiptFromProductionsPostDtoDocumentLine.warehouseCode)\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-text-box [label]=\"'UretimYonetimi::ReceiptFromProductions.BatchNumber' | abpLocalization\"\r\n [(value)]=\"receiptFromProductionsPostDtoBatchNumber.batchNumber\"\r\n [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.PlannedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.CompletedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.completedQuantity\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <dx-number-box [label]=\"'UretimYonetimi::ReceiptFromProductions.Quantity' | abpLocalization\"\r\n [(value)]=\"receiptFromProductionsPostDtoBatchNumber.quantity\"\r\n (onValueChanged)=\"quantityChanged($event)\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [showSpinButtons]=\"true\" [min]=\"0\" #toplananMiktarRef>\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\" (disappear)=\"clearAll()\">\r\n <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template>\r\n <ng-template #abpBody>\r\n <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>\r\n </ng-template>\r\n <ng-template #abpFooter>\r\n <button (click)=\"downloadPdf(blobUrl)\" type=\"button\"\r\n class=\"btn btn-secondary mobilde-gorunur\" abpClose> \u0130ndir\r\n </button>\r\n <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n</abp-modal>\r\n", styles: [".mobilde-gorunur{display:none}@media (max-width: 768px){.mobilde-gorunur{display:block}}\n"] }]
717
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: HitReceiptFromProductionsService }, { type: i3.ConfirmationService }, { type: HitProductionOrdersService }, { type: i5.DomSanitizer }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
718
+ type: ViewChild,
719
+ args: ['barkodNumarasiRef', { static: false }]
720
+ }], nmbBoxToplananMiktar: [{
721
+ type: ViewChild,
722
+ args: ['toplananMiktarRef', { static: false }]
723
+ }] } });
724
+
725
+ const routes$3 = [
726
+ {
727
+ path: '',
728
+ component: HitReceiptFromProductionsComponent,
729
+ canActivate: [AuthGuard, PermissionGuard],
730
+ },
731
+ ];
732
+ class HitReceiptFromProductionRoutingModule {
733
+ }
734
+ HitReceiptFromProductionRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
735
+ HitReceiptFromProductionRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
736
+ HitReceiptFromProductionRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionRoutingModule, imports: [RouterModule.forChild(routes$3), RouterModule] });
737
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionRoutingModule, decorators: [{
738
+ type: NgModule,
739
+ args: [{
740
+ imports: [RouterModule.forChild(routes$3)],
741
+ exports: [RouterModule],
742
+ }]
743
+ }] });
744
+
745
+ class HitReceiptFromProductionsModule {
746
+ }
747
+ HitReceiptFromProductionsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
748
+ HitReceiptFromProductionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsModule, declarations: [HitReceiptFromProductionsComponent], imports: [HitReceiptFromProductionRoutingModule,
749
+ CoreModule,
750
+ ThemeSharedModule,
751
+ CommercialUiModule,
752
+ NgxValidateCoreModule,
753
+ NgbCollapseModule,
754
+ NgbDatepickerModule,
755
+ NgbDropdownModule,
756
+ PageModule,
757
+ DxButtonModule,
758
+ DxNumberBoxModule,
759
+ DevExtremeModule] });
760
+ HitReceiptFromProductionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsModule, imports: [HitReceiptFromProductionRoutingModule,
761
+ CoreModule,
762
+ ThemeSharedModule,
763
+ CommercialUiModule,
764
+ NgxValidateCoreModule,
765
+ NgbCollapseModule,
766
+ NgbDatepickerModule,
767
+ NgbDropdownModule,
768
+ PageModule,
769
+ DxButtonModule,
770
+ DxNumberBoxModule,
771
+ DevExtremeModule] });
772
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsModule, decorators: [{
773
+ type: NgModule,
774
+ args: [{
775
+ declarations: [HitReceiptFromProductionsComponent],
776
+ imports: [
777
+ HitReceiptFromProductionRoutingModule,
778
+ CoreModule,
779
+ ThemeSharedModule,
780
+ CommercialUiModule,
781
+ NgxValidateCoreModule,
782
+ NgbCollapseModule,
783
+ NgbDatepickerModule,
784
+ NgbDropdownModule,
785
+ PageModule,
786
+ DxButtonModule,
787
+ DxNumberBoxModule,
788
+ DevExtremeModule,
789
+ ],
790
+ }]
791
+ }] });
792
+ function loadHitReceiptFromProductionsAsChild() {
793
+ return Promise.resolve(HitReceiptFromProductionsModule);
794
+ }
795
+
796
+ class IssuesForProductionPostDto {
797
+ constructor(issueLines = []) {
798
+ this.DocumentLines = issueLines;
799
+ }
800
+ }
801
+ class IssueLine {
802
+ constructor() {
803
+ this.IsQRReady = false;
804
+ this.Quantity = 0;
805
+ this.BaseType = 202;
806
+ this.BatchNumbers = [];
807
+ }
808
+ }
809
+ class BatchNumber {
810
+ constructor(batchNumber, quantity) {
811
+ this.BatchNumber = batchNumber;
812
+ this.Quantity = quantity;
813
+ }
814
+ }
815
+ class IssuesForProductionPatchDto {
816
+ }
817
+ class IssuesForProductionGetDto {
818
+ }
819
+
820
+ class HitIssuesForProductionsService {
821
+ constructor(restService, devexService) {
822
+ this.restService = restService;
823
+ this.devexService = devexService;
824
+ this.apiName = 'UretimYonetimi';
825
+ this.post = (input) => this.restService.request({
826
+ method: 'POST',
827
+ url: `${this.resourceEndpoint}`,
828
+ body: input,
829
+ }, { apiName: this.apiName });
830
+ this.patch = (input) => this.restService.request({
831
+ method: 'POST',
832
+ url: `${this.resourceEndpoint}`,
833
+ body: input,
834
+ }, { apiName: this.apiName });
835
+ this.get = (itemCode, orderNo) => this.restService.request({
836
+ method: 'GET',
837
+ url: `${this.resourceEndpoint}?itemCode=${itemCode}&orderNo=${orderNo}`,
838
+ }, { apiName: this.apiName });
839
+ this.resourceEndpoint = '/api/uretim-yonetimi/issues-for-productions';
840
+ }
841
+ }
842
+ HitIssuesForProductionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsService, deps: [{ token: i1.RestService }, { token: DevexpressRestService }], target: i0.ɵɵFactoryTarget.Injectable });
843
+ HitIssuesForProductionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsService, providedIn: 'root' });
844
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsService, decorators: [{
845
+ type: Injectable,
846
+ args: [{
847
+ providedIn: 'root',
848
+ }]
849
+ }], ctorParameters: function () { return [{ type: i1.RestService }, { type: DevexpressRestService }]; } });
850
+
851
+ class HitIssuesForProductionsComponent {
852
+ constructor(ngZone, list, track, service, confirmation, fb, productionOrdersService) {
853
+ this.ngZone = ngZone;
854
+ this.list = list;
855
+ this.track = track;
856
+ this.service = service;
857
+ this.confirmation = confirmation;
858
+ this.fb = fb;
859
+ this.productionOrdersService = productionOrdersService;
860
+ this.options = {
861
+ hideYesBtn: true,
862
+ cancelText: 'Kapat',
863
+ dismissible: false,
864
+ };
865
+ this.isLoading = false;
866
+ this.isEmriBarkoduGecerliMi = false;
867
+ this.searcheBasildiMi = false;
868
+ this.hammaddeQR = '';
869
+ this.warehouses = [];
870
+ this.HitHelper = HitHelper;
871
+ }
872
+ ngAfterViewInit() {
873
+ this.focusBarkodInput();
874
+ }
875
+ ngOnInit() {
876
+ this.clearAll();
877
+ this.getWarehouses();
878
+ }
879
+ async getProductionOrder() {
880
+ if (!this.isEmriBarkodu) {
881
+ this.focusBarkodInput();
882
+ return;
883
+ }
884
+ this.isLoading = true;
885
+ this.isEmriBarkoduGecerliMi = false;
886
+ this.searcheBasildiMi = true;
887
+ this.productionOrdersService.get(this.isEmriBarkodu).subscribe({
888
+ next: (response) => {
889
+ if (response.isSuccessful) {
890
+ this.productionOrder = response.items;
891
+ this.isEmriBarkoduGecerliMi = true;
892
+ this.unitOfMeasure = response.items.unitOfMeasurement;
893
+ const issueLines = this.productionOrder.getProductionOrderLine.map((issueLine) => {
894
+ issueLine.quantity = 0;
895
+ const newIssueLine = new IssueLine();
896
+ newIssueLine.ItemCode = issueLine.itemCode;
897
+ newIssueLine.BaseLine = issueLine.lineNum;
898
+ newIssueLine.WarehouseCode = issueLine.warehouse;
899
+ newIssueLine.BaseEntry = issueLine.absoluteEntry;
900
+ newIssueLine.BatchNumbers = [new BatchNumber(issueLine.batchNumber, issueLine.plannedQty)];
901
+ return newIssueLine;
902
+ });
903
+ this.issuesForProductionPost = new IssuesForProductionPostDto(issueLines);
904
+ this.ngZone.run(() => {
905
+ setTimeout(() => {
906
+ this.nmbBoxHammaddeQR.instance.focus();
907
+ }, 0);
908
+ });
909
+ }
910
+ else {
911
+ this.isEmriBarkoduGecerliMi = false;
912
+ this.searcheBasildiMi = false;
913
+ }
914
+ },
915
+ error: (e) => {
916
+ this.isLoading = false;
917
+ this.isEmriBarkoduGecerliMi = false;
918
+ this.searcheBasildiMi = false;
919
+ this.confirmation.status$.subscribe({
920
+ next: () => {
921
+ this.clearAll();
922
+ }
923
+ });
924
+ this.focusBarkodInput();
925
+ }
926
+ });
927
+ this.isLoading = false;
928
+ }
929
+ async parseAndAddQR() {
930
+ if (!this.hammaddeQR) {
931
+ this.focusQRInput();
932
+ return;
933
+ }
934
+ this.isLoading = true;
935
+ const parsed = HitHelper.parseQR(this.hammaddeQR);
936
+ if (!parsed) {
937
+ this.confirmation.error('', 'Geçersiz barkod!', this.options).subscribe({
938
+ next: () => {
939
+ this.hammaddeQR = '';
940
+ this.focusQRInput();
941
+ }
942
+ });
943
+ return;
944
+ }
945
+ this.service.get(parsed.chemicalCode, this.productionOrder.absoluteEntry.toString()).subscribe({
946
+ next: (response) => {
947
+ if (response.isSuccessful) {
948
+ const issueLine = this.productionOrder.getProductionOrderLine.find((x) => x.itemCode === parsed.chemicalCode);
949
+ if (issueLine == null) {
950
+ this.confirmation.error('', "Bu iş emrinde " + parsed.chemicalCode + " kodlu stok bulunmuyor. ", this.options);
951
+ }
952
+ const issueLineForPost = this.issuesForProductionPost.DocumentLines.find((x) => x.ItemCode === parsed.chemicalCode);
953
+ if (issueLine) {
954
+ if (issueLine.issuedQty + issueLine.quantity + parsed.weightKg > issueLine.plannedQty + (issueLine.plannedQty * 0.02)) {
955
+ this.confirmation.error('', 'Toplanan miktar planlanan miktarı aşıyor!', this.options);
956
+ return;
957
+ }
958
+ issueLine.quantity += parsed.weightKg;
959
+ issueLine.batchNumber = parsed.lotNumber;
960
+ issueLineForPost.Quantity += parsed.weightKg;
961
+ if (issueLineForPost.IsQRReady) {
962
+ issueLineForPost.BatchNumbers.push(new BatchNumber(parsed.lotNumber, parsed.weightKg));
963
+ }
964
+ else {
965
+ issueLineForPost.BatchNumbers = [new BatchNumber(parsed.lotNumber, parsed.weightKg)];
966
+ issueLineForPost.IsQRReady = true;
967
+ }
968
+ }
969
+ }
970
+ },
971
+ error: (e) => {
972
+ this.confirmation.status$.subscribe({
973
+ next: () => {
974
+ this.focusQRInput();
975
+ this.hammaddeQR = '';
976
+ this.isLoading = false;
977
+ }
978
+ });
979
+ },
980
+ complete: () => {
981
+ this.focusQRInput();
982
+ this.hammaddeQR = '';
983
+ this.isLoading = false;
984
+ }
985
+ });
986
+ }
987
+ async postIssuesForProduction() {
988
+ if (!this.issuesForProductionPost) {
989
+ this.focusBarkodInput();
990
+ return;
991
+ }
992
+ this.isLoading = true;
993
+ this.issuesForProductionPost.DocumentLines.forEach((x) => {
994
+ x.BaseEntry = this.productionOrder.absoluteEntry;
995
+ });
996
+ this.issuesForProductionPost.DocumentLines = this.issuesForProductionPost.DocumentLines.filter((x) => x.IsQRReady);
997
+ this.service.post(this.issuesForProductionPost).subscribe({
998
+ next: (response) => {
999
+ if (response.isSuccessful) {
1000
+ this.confirmation.success('', 'İşlem başarılı!', this.options).subscribe(() => {
1001
+ this.clearAll();
1002
+ });
1003
+ }
1004
+ else {
1005
+ this.confirmation.status$.subscribe({
1006
+ next: () => {
1007
+ this.focusQRInput();
1008
+ }
1009
+ });
1010
+ }
1011
+ },
1012
+ error: (e) => {
1013
+ this.confirmation.status$.subscribe({
1014
+ next: () => {
1015
+ this.focusQRInput();
1016
+ }
1017
+ });
1018
+ }
1019
+ });
1020
+ this.isLoading = false;
1021
+ }
1022
+ clearAll() {
1023
+ this.isEmriBarkoduGecerliMi = false;
1024
+ this.searcheBasildiMi = false;
1025
+ this.issuesForProductionPost = null;
1026
+ this.isEmriBarkodu = null;
1027
+ this.hammaddeQR = '';
1028
+ this.productionOrder = null;
1029
+ this.focusBarkodInput();
1030
+ this.unitOfMeasure = null;
1031
+ }
1032
+ getWarehouses() {
1033
+ this.isLoading = true;
1034
+ this.productionOrdersService.getWarehouses().subscribe({
1035
+ next: (result) => {
1036
+ if (result.items) {
1037
+ this.warehouses = result.items.slice();
1038
+ }
1039
+ }
1040
+ });
1041
+ this.isLoading = false;
1042
+ }
1043
+ onRowPrepared(e) {
1044
+ if (e.rowType === 'data') {
1045
+ if (e.data.plannedQty <= e.data.issuedQty) {
1046
+ e.rowElement.classList.add('hit-grey-row');
1047
+ }
1048
+ else if (e.data.quantity > 0) {
1049
+ e.rowElement.classList.add('hit-green-row');
1050
+ }
1051
+ }
1052
+ }
1053
+ focusQRInput() {
1054
+ this.ngZone.run(() => {
1055
+ setTimeout(() => {
1056
+ this.nmbBoxHammaddeQR.instance.focus();
1057
+ }, 0);
1058
+ });
1059
+ }
1060
+ focusBarkodInput() {
1061
+ this.ngZone.run(() => {
1062
+ setTimeout(() => {
1063
+ this.nmbBoxBarkodNumarasi.instance.focus();
1064
+ }, 0);
1065
+ });
1066
+ }
1067
+ }
1068
+ HitIssuesForProductionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsComponent, deps: [{ token: i0.NgZone }, { token: i1.ListService }, { token: i1.TrackByService }, { token: HitIssuesForProductionsService }, { token: i3.ConfirmationService }, { token: i4.FormBuilder }, { token: HitProductionOrdersService }], target: i0.ɵɵFactoryTarget.Component });
1069
+ HitIssuesForProductionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitIssuesForProductionsComponent, selector: "lib-hit-issues-for-productions", providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], viewQueries: [{ propertyName: "nmbBoxBarkodNumarasi", first: true, predicate: ["barkodNumarasiRef"], descendants: true }, { propertyName: "nmbBoxHammaddeQR", first: true, predicate: ["hammaddeQRRef"], descendants: true }, { propertyName: "dataGrid", first: true, predicate: ["getProductionOrderLineGrid"], descendants: true }], ngImport: i0, template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::IssuesForProductions.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" (click)=\"postIssuesForProduction()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi\">\r\n <i class=\"fa fa-plus me-1\"></i>\r\n {{ 'UretimYonetimi::IssuesForProductions.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::IssuesForProductions.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.WorkOrderNo' | abpLocalization\" [(value)]=\"isEmriBarkodu\"\r\n (onChange)=\"getProductionOrder()\" (onEnterKey)=\"getProductionOrder()\" [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.WorkOrderName' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\" [label]=\"'UretimYonetimi::IssuesForProductions.PlannedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\" [disabled]=\"true\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\">\r\n </dx-number-box>\r\n\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-text-box #hammaddeQRRef style=\"width:100%;\" class=\"me-1\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.IssueQRCode' | abpLocalization\" [maxLength]=\"256\"\r\n [(value)]=\"hammaddeQR\" (onEnterKey)=\"parseAndAddQR()\"\r\n [placeholder]=\"'UretimYonetimi::IssuesForProductions.IssueQRCode.Placeholder' | abpLocalization\">\r\n </dx-text-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"plus\" type=\"default\" (onClick)=\"parseAndAddQR()\">\r\n </dx-button>\r\n </div>\r\n\r\n <div *ngIf=\"productionOrder.getProductionOrderLine?.length\" class=\"mt-3\">\r\n <dx-data-grid #getProductionOrderLineGrid [dataSource]=\"productionOrder.getProductionOrderLine\"\r\n [showBorders]=\"true\" [columnAutoWidth]=\"true\" [sorting]=\"{ mode: 'none' }\"\r\n (onRowPrepared)=\"onRowPrepared($event)\">\r\n <dxi-column dataField=\"itemName\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.ItemName' | abpLocalization}}\"></dxi-column>\r\n <dxi-column cellTemplate=\"templateQty\"\r\n caption=\"{{ 'UretimYonetimi::IssuesForProductions.Quantity' | abpLocalization }}\"\r\n dataType=\"number\"></dxi-column>\r\n <dxi-column cellTemplate=\"templatePlannedQty\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.PlannedQty' | abpLocalization}}\"\r\n dataType=\"number\"></dxi-column>\r\n <dxi-column cellTemplate=\"templateIssuedQty\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.CompletedQty' | abpLocalization}}\"\r\n dataType=\"number\"></dxi-column>\r\n <dxi-column dataField=\"itemCode\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.ItemCode' | abpLocalization}}\"\r\n [width]=\"150\"></dxi-column>\r\n <dxi-column dataField=\"batchNumber\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.BatchNumber' | abpLocalization}}\"\r\n [width]=\"120\"></dxi-column>\r\n <dxi-column dataField=\"warehouse\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.Warehouse' | abpLocalization}}\" [width]=\"120\">\r\n\r\n <dxo-lookup [dataSource]=\"warehouses\" displayExpr=\"whsName\" valueExpr=\"whsCode\">\r\n </dxo-lookup>\r\n </dxi-column>\r\n <div *dxTemplate=\"let data of 'templateQty'\">\r\n {{ HitHelper.getMeasurementFormattedWithLocalization(data.key.quantity, data.key.unitOfMeasurement) }}\r\n </div>\r\n <div *dxTemplate=\"let data of 'templatePlannedQty'\">\r\n {{ HitHelper.getMeasurementFormattedWithLocalization(data.key.plannedQty, data.key.unitOfMeasurement) }}\r\n </div>\r\n <div *dxTemplate=\"let data of 'templateIssuedQty'\">\r\n {{ HitHelper.getMeasurementFormattedWithLocalization(data.key.issuedQty, data.key.unitOfMeasurement) }}\r\n </div>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: ["::ng-deep .hit-green-row{background-color:#daf5dc!important}::ng-deep .hit-grey-row{background-color:#80808070!important}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i7.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i8.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "directive", type: i9.DxTemplateDirective, selector: "[dxTemplate]", inputs: ["dxTemplateOf"] }, { kind: "component", type: i8.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i8.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i8$1.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i8$1.DxoLookupComponent, selector: "dxo-lookup", inputs: ["allowClearing", "calculateCellValue", "dataSource", "displayExpr", "valueExpr"] }, { kind: "component", type: i8.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
1070
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsComponent, decorators: [{
1071
+ type: Component,
1072
+ args: [{ selector: 'lib-hit-issues-for-productions', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::IssuesForProductions.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" (click)=\"postIssuesForProduction()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi\">\r\n <i class=\"fa fa-plus me-1\"></i>\r\n {{ 'UretimYonetimi::IssuesForProductions.Create' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::IssuesForProductions.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.WorkOrderNo' | abpLocalization\" [(value)]=\"isEmriBarkodu\"\r\n (onChange)=\"getProductionOrder()\" (onEnterKey)=\"getProductionOrder()\" [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.WorkOrderName' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\" [label]=\"'UretimYonetimi::IssuesForProductions.PlannedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\" [disabled]=\"true\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\">\r\n </dx-number-box>\r\n\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-text-box #hammaddeQRRef style=\"width:100%;\" class=\"me-1\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.IssueQRCode' | abpLocalization\" [maxLength]=\"256\"\r\n [(value)]=\"hammaddeQR\" (onEnterKey)=\"parseAndAddQR()\"\r\n [placeholder]=\"'UretimYonetimi::IssuesForProductions.IssueQRCode.Placeholder' | abpLocalization\">\r\n </dx-text-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"plus\" type=\"default\" (onClick)=\"parseAndAddQR()\">\r\n </dx-button>\r\n </div>\r\n\r\n <div *ngIf=\"productionOrder.getProductionOrderLine?.length\" class=\"mt-3\">\r\n <dx-data-grid #getProductionOrderLineGrid [dataSource]=\"productionOrder.getProductionOrderLine\"\r\n [showBorders]=\"true\" [columnAutoWidth]=\"true\" [sorting]=\"{ mode: 'none' }\"\r\n (onRowPrepared)=\"onRowPrepared($event)\">\r\n <dxi-column dataField=\"itemName\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.ItemName' | abpLocalization}}\"></dxi-column>\r\n <dxi-column cellTemplate=\"templateQty\"\r\n caption=\"{{ 'UretimYonetimi::IssuesForProductions.Quantity' | abpLocalization }}\"\r\n dataType=\"number\"></dxi-column>\r\n <dxi-column cellTemplate=\"templatePlannedQty\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.PlannedQty' | abpLocalization}}\"\r\n dataType=\"number\"></dxi-column>\r\n <dxi-column cellTemplate=\"templateIssuedQty\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.CompletedQty' | abpLocalization}}\"\r\n dataType=\"number\"></dxi-column>\r\n <dxi-column dataField=\"itemCode\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.ItemCode' | abpLocalization}}\"\r\n [width]=\"150\"></dxi-column>\r\n <dxi-column dataField=\"batchNumber\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.BatchNumber' | abpLocalization}}\"\r\n [width]=\"120\"></dxi-column>\r\n <dxi-column dataField=\"warehouse\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.Warehouse' | abpLocalization}}\" [width]=\"120\">\r\n\r\n <dxo-lookup [dataSource]=\"warehouses\" displayExpr=\"whsName\" valueExpr=\"whsCode\">\r\n </dxo-lookup>\r\n </dxi-column>\r\n <div *dxTemplate=\"let data of 'templateQty'\">\r\n {{ HitHelper.getMeasurementFormattedWithLocalization(data.key.quantity, data.key.unitOfMeasurement) }}\r\n </div>\r\n <div *dxTemplate=\"let data of 'templatePlannedQty'\">\r\n {{ HitHelper.getMeasurementFormattedWithLocalization(data.key.plannedQty, data.key.unitOfMeasurement) }}\r\n </div>\r\n <div *dxTemplate=\"let data of 'templateIssuedQty'\">\r\n {{ HitHelper.getMeasurementFormattedWithLocalization(data.key.issuedQty, data.key.unitOfMeasurement) }}\r\n </div>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: ["::ng-deep .hit-green-row{background-color:#daf5dc!important}::ng-deep .hit-grey-row{background-color:#80808070!important}\n"] }]
1073
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: HitIssuesForProductionsService }, { type: i3.ConfirmationService }, { type: i4.FormBuilder }, { type: HitProductionOrdersService }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
1074
+ type: ViewChild,
1075
+ args: ['barkodNumarasiRef', { static: false }]
1076
+ }], nmbBoxHammaddeQR: [{
1077
+ type: ViewChild,
1078
+ args: ['hammaddeQRRef', { static: false }]
1079
+ }], dataGrid: [{
1080
+ type: ViewChild,
1081
+ args: ['getProductionOrderLineGrid', { static: false }]
1082
+ }] } });
1083
+
1084
+ const routes$2 = [
1085
+ {
1086
+ path: '',
1087
+ component: HitIssuesForProductionsComponent,
1088
+ canActivate: [AuthGuard, PermissionGuard],
1089
+ },
1090
+ ];
1091
+ class HitIssuesForProductionsRoutingModule {
1092
+ }
1093
+ HitIssuesForProductionsRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1094
+ HitIssuesForProductionsRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
1095
+ HitIssuesForProductionsRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsRoutingModule, imports: [RouterModule.forChild(routes$2), RouterModule] });
1096
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsRoutingModule, decorators: [{
1097
+ type: NgModule,
1098
+ args: [{
1099
+ imports: [RouterModule.forChild(routes$2)],
1100
+ exports: [RouterModule],
1101
+ }]
1102
+ }] });
1103
+
1104
+ class HitIssuesForProductionModule {
1105
+ }
1106
+ HitIssuesForProductionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1107
+ HitIssuesForProductionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionModule, declarations: [HitIssuesForProductionsComponent], imports: [HitIssuesForProductionsRoutingModule,
1108
+ CoreModule,
1109
+ ThemeSharedModule,
1110
+ CommercialUiModule,
1111
+ NgxValidateCoreModule,
1112
+ NgbCollapseModule,
1113
+ NgbDatepickerModule,
1114
+ NgbDropdownModule,
1115
+ PageModule,
1116
+ DxTextBoxModule,
1117
+ DxButtonModule,
1118
+ DxDataGridModule,
1119
+ DxLoadIndicatorModule,
1120
+ DevExtremeModule] });
1121
+ HitIssuesForProductionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionModule, imports: [HitIssuesForProductionsRoutingModule,
1122
+ CoreModule,
1123
+ ThemeSharedModule,
1124
+ CommercialUiModule,
1125
+ NgxValidateCoreModule,
1126
+ NgbCollapseModule,
1127
+ NgbDatepickerModule,
1128
+ NgbDropdownModule,
1129
+ PageModule,
1130
+ DxTextBoxModule,
1131
+ DxButtonModule,
1132
+ DxDataGridModule,
1133
+ DxLoadIndicatorModule,
1134
+ DevExtremeModule] });
1135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionModule, decorators: [{
1136
+ type: NgModule,
1137
+ args: [{
1138
+ declarations: [HitIssuesForProductionsComponent],
1139
+ imports: [
1140
+ HitIssuesForProductionsRoutingModule,
1141
+ CoreModule,
1142
+ ThemeSharedModule,
1143
+ CommercialUiModule,
1144
+ NgxValidateCoreModule,
1145
+ NgbCollapseModule,
1146
+ NgbDatepickerModule,
1147
+ NgbDropdownModule,
1148
+ PageModule,
1149
+ DxTextBoxModule,
1150
+ DxButtonModule,
1151
+ DxDataGridModule,
1152
+ DxLoadIndicatorModule,
1153
+ DevExtremeModule
1154
+ ],
1155
+ }]
1156
+ }] });
1157
+ function loadHitIssuesForProductionsAsChild() {
1158
+ return Promise.resolve(HitIssuesForProductionModule);
1159
+ }
1160
+
1161
+ class HitCreateBarcodesService {
1162
+ constructor(restService) {
1163
+ this.restService = restService;
1164
+ this.apiName = 'UretimYonetimi';
1165
+ this.getReceiptFromProductions = (orderNo) => this.restService.request({
1166
+ method: 'GET',
1167
+ url: `${this.resourceEndpoint}/get-receipt-from-productions?productionOrderId=${orderNo}`,
1168
+ }, { apiName: this.apiName });
1169
+ this.getBarcodeInfo = (productionOrderId, receiptId, barcodeNumber) => this.restService.request({
1170
+ method: 'POST',
1171
+ url: `${this.resourceEndpoint}/get-barcode?productionOrderId=${productionOrderId}&receiptId=${receiptId}&barcodeNumber=${barcodeNumber}`,
1172
+ }, { apiName: this.apiName });
1173
+ this.resourceEndpoint = '/api/uretim-yonetimi/create-barcodes';
1174
+ }
1175
+ }
1176
+ HitCreateBarcodesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesService, deps: [{ token: i1.RestService }], target: i0.ɵɵFactoryTarget.Injectable });
1177
+ HitCreateBarcodesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesService, providedIn: 'root' });
1178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesService, decorators: [{
1179
+ type: Injectable,
1180
+ args: [{
1181
+ providedIn: 'root',
1182
+ }]
1183
+ }], ctorParameters: function () { return [{ type: i1.RestService }]; } });
1184
+ class BarcodeViewerComponent {
1185
+ constructor(http, sanitizer) {
1186
+ this.http = http;
1187
+ this.sanitizer = sanitizer;
1188
+ this.pdfSrc = null;
1189
+ this.resourceEndpoint = '/api/uretim-yonetimi/create-barcodes';
1190
+ }
1191
+ }
1192
+
1193
+ class HitCreateBarcodesComponent {
1194
+ constructor(ngZone, list, track, service, confirmation, productionOrdersService, sanitizer) {
1195
+ this.ngZone = ngZone;
1196
+ this.list = list;
1197
+ this.track = track;
1198
+ this.service = service;
1199
+ this.confirmation = confirmation;
1200
+ this.productionOrdersService = productionOrdersService;
1201
+ this.sanitizer = sanitizer;
1202
+ this.isLoading = false;
1203
+ this.isEmriBarkoduGecerliMi = false;
1204
+ this.searchBasildiMi = false;
1205
+ this.printingQuantity = 1;
1206
+ this.showModal = false;
1207
+ this.pdfSrc = null;
1208
+ }
1209
+ async getProductionOrder() {
1210
+ if (!this.isEmriBarkodu) {
1211
+ return;
1212
+ }
1213
+ this.isLoading = true;
1214
+ this.isEmriBarkoduGecerliMi = false;
1215
+ this.searchBasildiMi = true;
1216
+ this.productionOrdersService.get(this.isEmriBarkodu).subscribe({
1217
+ next: response => {
1218
+ if (response?.isSuccessful) {
1219
+ this.productionOrder = response.items;
1220
+ this.isEmriBarkoduGecerliMi = true;
1221
+ this.getReceiptFromProductions();
1222
+ }
1223
+ else {
1224
+ this.isEmriBarkoduGecerliMi = false;
1225
+ }
1226
+ },
1227
+ error: e => {
1228
+ this.isEmriBarkoduGecerliMi = false;
1229
+ this.searchBasildiMi = true;
1230
+ this.confirmation.status$.subscribe({
1231
+ next: () => {
1232
+ this.clearAll();
1233
+ },
1234
+ });
1235
+ },
1236
+ });
1237
+ this.isLoading = false;
1238
+ }
1239
+ ngAfterViewInit() {
1240
+ this.focusOnBarkodNumarasi();
1241
+ }
1242
+ clearAll() {
1243
+ this.isEmriBarkoduGecerliMi = false;
1244
+ this.searchBasildiMi = false;
1245
+ this.isEmriBarkodu = null;
1246
+ this.productionOrder = null;
1247
+ this.receiptFromProductions = null;
1248
+ this.focusOnBarkodNumarasi();
1249
+ }
1250
+ generateReport() {
1251
+ this.service
1252
+ .getBarcodeInfo(this.isEmriBarkodu, this.selectedReceiptFromProductions.docEntry, this.printingQuantity)
1253
+ .subscribe({
1254
+ next: response => {
1255
+ const base64Data = response.base64; // base64 string (sadece veri kısmı, "data:application/pdf;base64,..." değilse)
1256
+ // Base64'ü decode edip binary veriye çeviriyoruz
1257
+ const byteCharacters = atob(base64Data);
1258
+ const byteNumbers = new Array(byteCharacters.length);
1259
+ for (let i = 0; i < byteCharacters.length; i++) {
1260
+ byteNumbers[i] = byteCharacters.charCodeAt(i);
1261
+ }
1262
+ const byteArray = new Uint8Array(byteNumbers);
1263
+ // Blob oluşturuyoruz
1264
+ const blob = new Blob([byteArray], { type: 'application/pdf' });
1265
+ // Blob'tan URL oluşturup yeni sekmede açıyoruz (veya download edebilirsin)
1266
+ this.blobUrl = URL.createObjectURL(blob);
1267
+ this.pdfSrc = this.bypassAndSanitize(this.blobUrl);
1268
+ },
1269
+ });
1270
+ }
1271
+ bypassAndSanitize(url) {
1272
+ return this.sanitizer.bypassSecurityTrustResourceUrl(url);
1273
+ }
1274
+ downloadPdf(blobUrl) {
1275
+ const a = document.createElement('a');
1276
+ a.href = blobUrl;
1277
+ const parts = blobUrl.split('/');
1278
+ const lastPart = parts.pop(); // "myfile.pdf"
1279
+ a.download = lastPart + '.pdf'; // Kaydedilecek dosya adı
1280
+ a.style.display = 'none';
1281
+ // iOS'ta desteklenmesi için target=_blank eklenebilir
1282
+ a.target = '_blank';
1283
+ // DOM'a ekleyip tıklat
1284
+ document.body.appendChild(a);
1285
+ a.click();
1286
+ document.body.removeChild(a);
1287
+ }
1288
+ async getReceiptFromProductions() {
1289
+ if (!this.isEmriBarkodu) {
1290
+ return;
1291
+ }
1292
+ this.isLoading = true;
1293
+ this.service.getReceiptFromProductions(this.isEmriBarkodu + '').subscribe({
1294
+ next: response => {
1295
+ if (response?.isSuccessful) {
1296
+ this.receiptFromProductions = response.items;
1297
+ this.receiptFromProductions.forEach((item) => {
1298
+ item.docDateString = this.formatDate(item.docDate);
1299
+ });
1300
+ setTimeout(() => {
1301
+ if (this.receiptFromProductions?.length === 1) {
1302
+ const key = this.receiptFromProductions[0];
1303
+ this.dataGrid.instance.selectRows([key], false);
1304
+ }
1305
+ });
1306
+ }
1307
+ else {
1308
+ this.confirmation.status$.subscribe({
1309
+ next: () => {
1310
+ this.clearAll();
1311
+ },
1312
+ });
1313
+ }
1314
+ },
1315
+ error: e => {
1316
+ this.confirmation.status$.subscribe({
1317
+ next: () => {
1318
+ this.clearAll();
1319
+ },
1320
+ });
1321
+ },
1322
+ });
1323
+ this.isLoading = false;
1324
+ }
1325
+ selectReceiptFromProductions(e) {
1326
+ e.component.byKey(e.currentSelectedRowKeys[0]).done(receiptFromProductions => {
1327
+ if (receiptFromProductions) {
1328
+ this.selectedReceiptFromProductions = receiptFromProductions;
1329
+ }
1330
+ });
1331
+ }
1332
+ formatDate(date) {
1333
+ if (!date)
1334
+ return '';
1335
+ const pad = (n) => n.toString().padStart(2, '0');
1336
+ const d = new Date(date);
1337
+ const day = pad(d.getDate());
1338
+ const month = pad(d.getMonth() + 1); // Aylar 0-indexli
1339
+ const year = d.getFullYear();
1340
+ const hour = pad(d.getHours());
1341
+ const minute = pad(d.getMinutes());
1342
+ return `${day}/${month}/${year} ${hour}:${minute}`;
1343
+ }
1344
+ focusOnBarkodNumarasi() {
1345
+ this.ngZone.run(() => {
1346
+ setTimeout(() => {
1347
+ this.nmbBoxBarkodNumarasi.instance.focus();
1348
+ }, 0);
1349
+ });
1350
+ }
1351
+ }
1352
+ HitCreateBarcodesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesComponent, deps: [{ token: i0.NgZone }, { token: i1.ListService }, { token: i1.TrackByService }, { token: HitCreateBarcodesService }, { token: i3.ConfirmationService }, { token: HitProductionOrdersService }, { token: i5.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
1353
+ HitCreateBarcodesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitCreateBarcodesComponent, selector: "lib-hit-create-barcodes", providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], viewQueries: [{ propertyName: "nmbBoxBarkodNumarasi", first: true, predicate: ["barkodNumarasiRef"], descendants: true }, { propertyName: "dataGrid", first: true, predicate: ["gridRFP"], descendants: true }], ngImport: i0, template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::CreateBarcodes.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" [disabled]=\"!this.selectedReceiptFromProductions\"\r\n (click)=\"showModal=true\">\r\n <i class=\"fa fa-plus me-1\"></i>\r\n {{ 'UretimYonetimi::CreateBarcodes.Print' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::CreateBarcodes.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\" style=\"height: calc(100vh - 241px); overflow: auto;\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::CreateBarcodes.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\"\r\n (onChange)=\"getProductionOrder()\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searchBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searchBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\" [label]=\"'UretimYonetimi::CreateBarcodes.ItemCode' | abpLocalization\"\r\n [(value)]=\"productionOrder.itemNo\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\" [label]=\"'UretimYonetimi::CreateBarcodes.ItemName' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\" [label]=\"'UretimYonetimi::CreateBarcodes.BatchNumber' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_trkBatch\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\" [label]=\"'UretimYonetimi::CreateBarcodes.PrintingQuantity' | abpLocalization\"\r\n [(value)]=\"printingQuantity\">\r\n </dx-number-box>\r\n <dx-data-grid #gridRFP class=\"mt-3\" [dataSource]=\"receiptFromProductions\" [columnAutoWidth]=\"true\"\r\n (onSelectionChanged)=\"selectReceiptFromProductions($event)\">\r\n <dxi-column dataField=\"quantity\"\r\n [caption]=\"'UretimYonetimi::CreateBarcodes.Quantity' | abpLocalization\"></dxi-column>\r\n <dxi-column dataField=\"docDateString\"\r\n [caption]=\"'UretimYonetimi::CreateBarcodes.Date' | abpLocalization\"></dxi-column>\r\n <dxo-selection mode=\"single\"></dxo-selection>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\">\r\n <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template>\r\n <ng-template #abpBody>\r\n <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>\r\n </ng-template>\r\n <ng-template #abpFooter>\r\n <button (click)=\"downloadPdf(blobUrl)\" type=\"button\"\r\n class=\"btn btn-secondary mobilde-gorunur\" abpClose> \u0130ndir\r\n </button>\r\n <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n</abp-modal>\r\n", styles: [".mobilde-gorunur{display:none}@media (max-width: 768px){.mobilde-gorunur{display:block}}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "directive", type: i3.ModalCloseDirective, selector: "[abpClose]" }, { kind: "component", type: i7.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i7.PageToolbarContainerComponent, selector: "abp-page-toolbar-container" }, { kind: "component", type: i8.DxButtonComponent, selector: "dx-button", inputs: ["accessKey", "activeStateEnabled", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "icon", "rtlEnabled", "stylingMode", "tabIndex", "template", "text", "type", "useSubmitBehavior", "validationGroup", "visible", "width"], outputs: ["onClick", "onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "iconChange", "rtlEnabledChange", "stylingModeChange", "tabIndexChange", "templateChange", "textChange", "typeChange", "useSubmitBehaviorChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i8.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8.DxTextBoxComponent, selector: "dx-text-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "height", "hint", "hoverStateEnabled", "inputAttr", "isValid", "label", "labelMode", "mask", "maskChar", "maskInvalidMessage", "maskRules", "maxLength", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showMaskMode", "spellcheck", "stylingMode", "tabIndex", "text", "useMaskedValue", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isValidChange", "labelChange", "labelModeChange", "maskChange", "maskCharChange", "maskInvalidMessageChange", "maskRulesChange", "maxLengthChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showMaskModeChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useMaskedValueChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "component", type: i8.DxDataGridComponent, selector: "dx-data-grid", inputs: ["accessKey", "activeStateEnabled", "allowColumnReordering", "allowColumnResizing", "autoNavigateToFocusedRow", "cacheEnabled", "cellHintEnabled", "columnAutoWidth", "columnChooser", "columnFixing", "columnHidingEnabled", "columnMinWidth", "columnResizingMode", "columns", "columnWidth", "customizeColumns", "dataRowTemplate", "dataSource", "dateSerializationFormat", "disabled", "editing", "elementAttr", "errorRowEnabled", "export", "filterBuilder", "filterBuilderPopup", "filterPanel", "filterRow", "filterSyncEnabled", "filterValue", "focusedColumnIndex", "focusedRowEnabled", "focusedRowIndex", "focusedRowKey", "grouping", "groupPanel", "headerFilter", "height", "highlightChanges", "hint", "hoverStateEnabled", "keyboardNavigation", "keyExpr", "loadPanel", "masterDetail", "noDataText", "pager", "paging", "remoteOperations", "renderAsync", "repaintChangesOnly", "rowAlternationEnabled", "rowDragging", "rowTemplate", "rtlEnabled", "scrolling", "searchPanel", "selectedRowKeys", "selection", "selectionFilter", "showBorders", "showColumnHeaders", "showColumnLines", "showRowLines", "sortByGroupSummaryInfo", "sorting", "stateStoring", "summary", "syncLookupFilterValues", "tabIndex", "toolbar", "twoWayBindingEnabled", "visible", "width", "wordWrapEnabled"], outputs: ["onAdaptiveDetailRowPreparing", "onCellClick", "onCellDblClick", "onCellHoverChanged", "onCellPrepared", "onContentReady", "onContextMenuPreparing", "onDataErrorOccurred", "onDisposing", "onEditCanceled", "onEditCanceling", "onEditingStart", "onEditorPrepared", "onEditorPreparing", "onExporting", "onFocusedCellChanged", "onFocusedCellChanging", "onFocusedRowChanged", "onFocusedRowChanging", "onInitialized", "onInitNewRow", "onKeyDown", "onOptionChanged", "onRowClick", "onRowCollapsed", "onRowCollapsing", "onRowDblClick", "onRowExpanded", "onRowExpanding", "onRowInserted", "onRowInserting", "onRowPrepared", "onRowRemoved", "onRowRemoving", "onRowUpdated", "onRowUpdating", "onRowValidating", "onSaved", "onSaving", "onSelectionChanged", "onToolbarPreparing", "accessKeyChange", "activeStateEnabledChange", "allowColumnReorderingChange", "allowColumnResizingChange", "autoNavigateToFocusedRowChange", "cacheEnabledChange", "cellHintEnabledChange", "columnAutoWidthChange", "columnChooserChange", "columnFixingChange", "columnHidingEnabledChange", "columnMinWidthChange", "columnResizingModeChange", "columnsChange", "columnWidthChange", "customizeColumnsChange", "dataRowTemplateChange", "dataSourceChange", "dateSerializationFormatChange", "disabledChange", "editingChange", "elementAttrChange", "errorRowEnabledChange", "exportChange", "filterBuilderChange", "filterBuilderPopupChange", "filterPanelChange", "filterRowChange", "filterSyncEnabledChange", "filterValueChange", "focusedColumnIndexChange", "focusedRowEnabledChange", "focusedRowIndexChange", "focusedRowKeyChange", "groupingChange", "groupPanelChange", "headerFilterChange", "heightChange", "highlightChangesChange", "hintChange", "hoverStateEnabledChange", "keyboardNavigationChange", "keyExprChange", "loadPanelChange", "masterDetailChange", "noDataTextChange", "pagerChange", "pagingChange", "remoteOperationsChange", "renderAsyncChange", "repaintChangesOnlyChange", "rowAlternationEnabledChange", "rowDraggingChange", "rowTemplateChange", "rtlEnabledChange", "scrollingChange", "searchPanelChange", "selectedRowKeysChange", "selectionChange", "selectionFilterChange", "showBordersChange", "showColumnHeadersChange", "showColumnLinesChange", "showRowLinesChange", "sortByGroupSummaryInfoChange", "sortingChange", "stateStoringChange", "summaryChange", "syncLookupFilterValuesChange", "tabIndexChange", "toolbarChange", "twoWayBindingEnabledChange", "visibleChange", "widthChange", "wordWrapEnabledChange"] }, { kind: "component", type: i8$1.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i8$1.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "deferred", "mode", "selectAllMode", "showCheckBoxesMode", "recursive"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
1354
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesComponent, decorators: [{
1355
+ type: Component,
1356
+ args: [{ selector: 'lib-hit-create-barcodes', changeDetection: ChangeDetectionStrategy.Default, providers: [ListService, { provide: NgbDateAdapter, useClass: DateAdapter }], template: "<abp-page [breadcrumb]=\"false\">\r\n <abp-page-toolbar-container class=\"col\">\r\n <div class=\"row\">\r\n <h3 class=\"page-title\">\r\n {{ 'UretimYonetimi::CreateBarcodes.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row text-lg-end pt-2\">\r\n <div class=\"col-8\">\r\n <button class=\"btn btn-success btn-sm\" type=\"button\" [disabled]=\"!this.selectedReceiptFromProductions\"\r\n (click)=\"showModal=true\">\r\n <i class=\"fa fa-plus me-1\"></i>\r\n {{ 'UretimYonetimi::CreateBarcodes.Print' | abpLocalization }}\r\n </button>\r\n </div>\r\n <div class=\"col-4\">\r\n <button class=\"btn btn-warning btn-sm\" type=\"button\" (click)=\"clearAll()\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::CreateBarcodes.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\" style=\"height: calc(100vh - 241px); overflow: auto;\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::CreateBarcodes.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\"\r\n (onChange)=\"getProductionOrder()\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searchBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searchBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\" [label]=\"'UretimYonetimi::CreateBarcodes.ItemCode' | abpLocalization\"\r\n [(value)]=\"productionOrder.itemNo\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\" [label]=\"'UretimYonetimi::CreateBarcodes.ItemName' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\" [label]=\"'UretimYonetimi::CreateBarcodes.BatchNumber' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_trkBatch\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\" [label]=\"'UretimYonetimi::CreateBarcodes.PrintingQuantity' | abpLocalization\"\r\n [(value)]=\"printingQuantity\">\r\n </dx-number-box>\r\n <dx-data-grid #gridRFP class=\"mt-3\" [dataSource]=\"receiptFromProductions\" [columnAutoWidth]=\"true\"\r\n (onSelectionChanged)=\"selectReceiptFromProductions($event)\">\r\n <dxi-column dataField=\"quantity\"\r\n [caption]=\"'UretimYonetimi::CreateBarcodes.Quantity' | abpLocalization\"></dxi-column>\r\n <dxi-column dataField=\"docDateString\"\r\n [caption]=\"'UretimYonetimi::CreateBarcodes.Date' | abpLocalization\"></dxi-column>\r\n <dxo-selection mode=\"single\"></dxo-selection>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\">\r\n <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template>\r\n <ng-template #abpBody>\r\n <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>\r\n </ng-template>\r\n <ng-template #abpFooter>\r\n <button (click)=\"downloadPdf(blobUrl)\" type=\"button\"\r\n class=\"btn btn-secondary mobilde-gorunur\" abpClose> \u0130ndir\r\n </button>\r\n <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n</abp-modal>\r\n", styles: [".mobilde-gorunur{display:none}@media (max-width: 768px){.mobilde-gorunur{display:block}}\n"] }]
1357
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: HitCreateBarcodesService }, { type: i3.ConfirmationService }, { type: HitProductionOrdersService }, { type: i5.DomSanitizer }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
1358
+ type: ViewChild,
1359
+ args: ['barkodNumarasiRef', { static: false }]
1360
+ }], dataGrid: [{
1361
+ type: ViewChild,
1362
+ args: ['gridRFP', { static: false }]
1363
+ }] } });
1364
+
1365
+ const routes$1 = [
1366
+ {
1367
+ path: '',
1368
+ component: HitCreateBarcodesComponent,
1369
+ canActivate: [AuthGuard, PermissionGuard],
1370
+ },
1371
+ ];
1372
+ class HitCreateBarcodesRoutingModule {
1373
+ }
1374
+ HitCreateBarcodesRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1375
+ HitCreateBarcodesRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
1376
+ HitCreateBarcodesRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesRoutingModule, imports: [RouterModule.forChild(routes$1), RouterModule] });
1377
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesRoutingModule, decorators: [{
1378
+ type: NgModule,
1379
+ args: [{
1380
+ imports: [RouterModule.forChild(routes$1)],
1381
+ exports: [RouterModule],
1382
+ }]
1383
+ }] });
1384
+
1385
+ class HitCreateBarcodesModule {
1386
+ }
1387
+ HitCreateBarcodesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1388
+ HitCreateBarcodesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesModule, declarations: [HitCreateBarcodesComponent], imports: [HitCreateBarcodesRoutingModule,
1389
+ CoreModule,
1390
+ ThemeSharedModule,
1391
+ CommercialUiModule,
1392
+ NgxValidateCoreModule,
1393
+ NgbCollapseModule,
1394
+ NgbDatepickerModule,
1395
+ NgbDropdownModule,
1396
+ PageModule,
1397
+ DxButtonModule,
1398
+ DxNumberBoxModule,
1399
+ DxTextBoxModule,
1400
+ DxDataGridModule] });
1401
+ HitCreateBarcodesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesModule, imports: [HitCreateBarcodesRoutingModule,
1402
+ CoreModule,
1403
+ ThemeSharedModule,
1404
+ CommercialUiModule,
1405
+ NgxValidateCoreModule,
1406
+ NgbCollapseModule,
1407
+ NgbDatepickerModule,
1408
+ NgbDropdownModule,
1409
+ PageModule,
1410
+ DxButtonModule,
1411
+ DxNumberBoxModule,
1412
+ DxTextBoxModule,
1413
+ DxDataGridModule] });
1414
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesModule, decorators: [{
1415
+ type: NgModule,
1416
+ args: [{
1417
+ declarations: [HitCreateBarcodesComponent],
1418
+ imports: [
1419
+ HitCreateBarcodesRoutingModule,
1420
+ CoreModule,
1421
+ ThemeSharedModule,
1422
+ CommercialUiModule,
1423
+ NgxValidateCoreModule,
1424
+ NgbCollapseModule,
1425
+ NgbDatepickerModule,
1426
+ NgbDropdownModule,
1427
+ PageModule,
1428
+ DxButtonModule,
1429
+ DxNumberBoxModule,
1430
+ DxTextBoxModule,
1431
+ DxDataGridModule,
1432
+ ],
1433
+ }]
1434
+ }] });
1435
+ function loadHitCreateBarcodesAsChild() {
1436
+ return Promise.resolve(HitCreateBarcodesModule);
1437
+ }
1438
+
1439
+ const routes = [
1440
+ {
1441
+ path: '',
1442
+ pathMatch: 'full',
1443
+ component: UretimYonetimiComponent,
1444
+ },
1445
+ { path: 'create-barcodes', loadChildren: loadHitCreateBarcodesAsChild },
1446
+ { path: 'production-orders', loadChildren: loadHitProductionOrdersAsChild },
1447
+ { path: 'issues-for-productions', loadChildren: loadHitIssuesForProductionsAsChild },
1448
+ { path: 'receipt-from-productions', loadChildren: loadHitReceiptFromProductionsAsChild }
1449
+ ];
1450
+ class UretimYonetimiRoutingModule {
1451
+ }
1452
+ UretimYonetimiRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1453
+ UretimYonetimiRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
1454
+ UretimYonetimiRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] });
1455
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiRoutingModule, decorators: [{
1456
+ type: NgModule,
1457
+ args: [{
1458
+ imports: [RouterModule.forChild(routes)],
1459
+ exports: [RouterModule],
1460
+ }]
1461
+ }] });
1462
+
1463
+ class UretimYonetimiModule {
1464
+ constructor(replacementService, localizationService) {
1465
+ this.replacementService = replacementService;
1466
+ this.localizationService = localizationService;
1467
+ replacementService.add({
1468
+ key: 'ProductionOrderComponentKey',
1469
+ component: HitProductionOrdersComponent,
1470
+ });
1471
+ replacementService.add({
1472
+ key: 'ReceiptFromProductionsKey',
1473
+ component: HitReceiptFromProductionsComponent,
1474
+ });
1475
+ replacementService.add({
1476
+ key: 'IssuesForProductionsKey',
1477
+ component: HitIssuesForProductionsComponent,
1478
+ });
1479
+ replacementService.add({
1480
+ key: 'CreateBarcodesKey',
1481
+ component: HitCreateBarcodesComponent,
1482
+ });
1483
+ }
1484
+ static forChild() {
1485
+ return {
1486
+ ngModule: UretimYonetimiModule,
1487
+ providers: [],
1488
+ };
1489
+ }
1490
+ static forLazy() {
1491
+ return new LazyModuleFactory(UretimYonetimiModule.forChild());
1492
+ }
1493
+ ;
1494
+ }
1495
+ UretimYonetimiModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiModule, deps: [{ token: i1.ReplaceableComponentsService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.NgModule });
1496
+ UretimYonetimiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiModule, declarations: [UretimYonetimiComponent], imports: [CoreModule, ThemeSharedModule, UretimYonetimiRoutingModule], exports: [UretimYonetimiComponent] });
1497
+ UretimYonetimiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiModule, imports: [CoreModule, ThemeSharedModule, UretimYonetimiRoutingModule] });
1498
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiModule, decorators: [{
1499
+ type: NgModule,
1500
+ args: [{
1501
+ declarations: [UretimYonetimiComponent],
1502
+ imports: [CoreModule, ThemeSharedModule, UretimYonetimiRoutingModule],
1503
+ exports: [UretimYonetimiComponent],
1504
+ }]
1505
+ }], ctorParameters: function () { return [{ type: i1.ReplaceableComponentsService }, { type: i1.LocalizationService }]; } });
1506
+
1507
+ /*
1508
+ * Public API Surface of uretim-yonetimi
1509
+ */
1510
+
1511
+ /**
1512
+ * Generated bundle index. Do not edit.
1513
+ */
1514
+
1515
+ export { UretimYonetimiComponent, UretimYonetimiModule };
1516
+ //# sourceMappingURL=hitsoft-uretim-yonetimi.mjs.map