@hitsoft/uretim-yonetimi 1.0.0

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 (90) hide show
  1. package/README.md +24 -0
  2. package/config/enums/index.d.ts +1 -0
  3. package/config/enums/route-names.d.ts +3 -0
  4. package/config/index.d.ts +5 -0
  5. package/config/providers/create-barcode-route.provider.d.ts +9 -0
  6. package/config/providers/index.d.ts +1 -0
  7. package/config/providers/issues-for-production-route.provider.d.ts +9 -0
  8. package/config/providers/production-order-route.provider.d.ts +9 -0
  9. package/config/providers/receipt-from-production-route.provider.d.ts +9 -0
  10. package/config/providers/route.provider.d.ts +8 -0
  11. package/config/public-api.d.ts +3 -0
  12. package/config/uretim-yonetimi-config.module.d.ts +8 -0
  13. package/esm2020/config/enums/index.mjs +2 -0
  14. package/esm2020/config/enums/route-names.mjs +2 -0
  15. package/esm2020/config/hitsoft-uretim-yonetimi-config.mjs +5 -0
  16. package/esm2020/config/providers/create-barcode-route.provider.mjs +19 -0
  17. package/esm2020/config/providers/index.mjs +2 -0
  18. package/esm2020/config/providers/issues-for-production-route.provider.mjs +19 -0
  19. package/esm2020/config/providers/production-order-route.provider.mjs +19 -0
  20. package/esm2020/config/providers/receipt-from-production-route.provider.mjs +19 -0
  21. package/esm2020/config/providers/route.provider.mjs +24 -0
  22. package/esm2020/config/public-api.mjs +4 -0
  23. package/esm2020/config/uretim-yonetimi-config.module.mjs +28 -0
  24. package/esm2020/hitsoft-uretim-yonetimi.mjs +5 -0
  25. package/esm2020/lib/components/hit-create-barcodes/hit-create-barcodes-routing.module.mjs +26 -0
  26. package/esm2020/lib/components/hit-create-barcodes/hit-create-barcodes.component.mjs +136 -0
  27. package/esm2020/lib/components/hit-create-barcodes/hit-create-barcodes.module.mjs +65 -0
  28. package/esm2020/lib/components/hit-issues-for-productions/hit-issues-for-productions-routing.module.mjs +26 -0
  29. package/esm2020/lib/components/hit-issues-for-productions/hit-issues-for-productions.component.mjs +246 -0
  30. package/esm2020/lib/components/hit-issues-for-productions/hit-issues-for-productions.module.mjs +68 -0
  31. package/esm2020/lib/components/hit-production-orders/hit-production-orders-routing.module.mjs +26 -0
  32. package/esm2020/lib/components/hit-production-orders/hit-production-orders.component.mjs +154 -0
  33. package/esm2020/lib/components/hit-production-orders/hit-production-orders.module.mjs +65 -0
  34. package/esm2020/lib/components/hit-receipt-from-productions/hit-receipt-from-production-routing.module.mjs +26 -0
  35. package/esm2020/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.component.mjs +217 -0
  36. package/esm2020/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.module.mjs +62 -0
  37. package/esm2020/lib/components/uretim-yonetimi.component.mjs +17 -0
  38. package/esm2020/lib/hit-proxy/devexpress-query-builder/devexpress-load-options.model.mjs +2 -0
  39. package/esm2020/lib/hit-proxy/devexpress-query-builder/devexpress-query-builder.mjs +54 -0
  40. package/esm2020/lib/hit-proxy/hit-create-barcodes/hit-create-barcodes.service.mjs +35 -0
  41. package/esm2020/lib/hit-proxy/hit-create-barcodes/models.mjs +3 -0
  42. package/esm2020/lib/hit-proxy/hit-issues-for-productions/hit-issues-for-productions.service.mjs +35 -0
  43. package/esm2020/lib/hit-proxy/hit-issues-for-productions/models.mjs +24 -0
  44. package/esm2020/lib/hit-proxy/hit-production-orders/hit-production-orders.service.mjs +40 -0
  45. package/esm2020/lib/hit-proxy/hit-production-orders/models.mjs +65 -0
  46. package/esm2020/lib/hit-proxy/hit-receipt-from-productions/hit-receipt-from-productions.service.mjs +30 -0
  47. package/esm2020/lib/hit-proxy/hit-receipt-from-productions/models.mjs +14 -0
  48. package/esm2020/lib/hit-proxy/models.mjs +72 -0
  49. package/esm2020/lib/services/uretim-yonetimi.service.mjs +18 -0
  50. package/esm2020/lib/uretim-yonetimi-routing.module.mjs +33 -0
  51. package/esm2020/lib/uretim-yonetimi.module.mjs +55 -0
  52. package/esm2020/public-api.mjs +7 -0
  53. package/fesm2015/hitsoft-uretim-yonetimi-config.mjs +121 -0
  54. package/fesm2015/hitsoft-uretim-yonetimi-config.mjs.map +1 -0
  55. package/fesm2015/hitsoft-uretim-yonetimi.mjs +1487 -0
  56. package/fesm2015/hitsoft-uretim-yonetimi.mjs.map +1 -0
  57. package/fesm2020/hitsoft-uretim-yonetimi-config.mjs +121 -0
  58. package/fesm2020/hitsoft-uretim-yonetimi-config.mjs.map +1 -0
  59. package/fesm2020/hitsoft-uretim-yonetimi.mjs +1466 -0
  60. package/fesm2020/hitsoft-uretim-yonetimi.mjs.map +1 -0
  61. package/index.d.ts +5 -0
  62. package/lib/components/hit-create-barcodes/hit-create-barcodes-routing.module.d.ts +7 -0
  63. package/lib/components/hit-create-barcodes/hit-create-barcodes.component.d.ts +38 -0
  64. package/lib/components/hit-create-barcodes/hit-create-barcodes.module.d.ts +16 -0
  65. package/lib/components/hit-issues-for-productions/hit-issues-for-productions-routing.module.d.ts +7 -0
  66. package/lib/components/hit-issues-for-productions/hit-issues-for-productions.component.d.ts +46 -0
  67. package/lib/components/hit-issues-for-productions/hit-issues-for-productions.module.d.ts +16 -0
  68. package/lib/components/hit-production-orders/hit-production-orders-routing.module.d.ts +7 -0
  69. package/lib/components/hit-production-orders/hit-production-orders.component.d.ts +43 -0
  70. package/lib/components/hit-production-orders/hit-production-orders.module.d.ts +16 -0
  71. package/lib/components/hit-receipt-from-productions/hit-receipt-from-production-routing.module.d.ts +7 -0
  72. package/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.component.d.ts +53 -0
  73. package/lib/components/hit-receipt-from-productions/hit-receipt-from-productions.module.d.ts +16 -0
  74. package/lib/components/uretim-yonetimi.component.d.ts +10 -0
  75. package/lib/hit-proxy/devexpress-query-builder/devexpress-load-options.model.d.ts +17 -0
  76. package/lib/hit-proxy/devexpress-query-builder/devexpress-query-builder.d.ts +18 -0
  77. package/lib/hit-proxy/hit-create-barcodes/hit-create-barcodes.service.d.ts +23 -0
  78. package/lib/hit-proxy/hit-create-barcodes/models.d.ts +5 -0
  79. package/lib/hit-proxy/hit-issues-for-productions/hit-issues-for-productions.service.d.ts +17 -0
  80. package/lib/hit-proxy/hit-issues-for-productions/models.d.ts +30 -0
  81. package/lib/hit-proxy/hit-production-orders/hit-production-orders.service.d.ts +18 -0
  82. package/lib/hit-proxy/hit-production-orders/models.d.ts +85 -0
  83. package/lib/hit-proxy/hit-receipt-from-productions/hit-receipt-from-productions.service.d.ts +16 -0
  84. package/lib/hit-proxy/hit-receipt-from-productions/models.d.ts +39 -0
  85. package/lib/hit-proxy/models.d.ts +20 -0
  86. package/lib/services/uretim-yonetimi.service.d.ts +9 -0
  87. package/lib/uretim-yonetimi-routing.module.d.ts +7 -0
  88. package/lib/uretim-yonetimi.module.d.ts +17 -0
  89. package/package.json +42 -0
  90. package/public-api.d.ts +3 -0
@@ -0,0 +1,1466 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, Component, 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 * as i8$1 from '@ngx-validate/core';
11
+ import { NgxValidateCoreModule } from '@ngx-validate/core';
12
+ import { CommercialUiModule } from '@volo/abp.commercial.ng.ui';
13
+ import * as i7 from '@abp/ng.components/page';
14
+ import { PageModule } from '@abp/ng.components/page';
15
+ import { DateAdapter } from '@abp/ng.theme.shared/extensions';
16
+ import { firstValueFrom } from 'rxjs';
17
+ import * as i4 from '@angular/forms';
18
+ import { Validators } from '@angular/forms';
19
+ import * as i6 from '@angular/common';
20
+ import * as i8 from 'devextreme-angular';
21
+ import { DxTextBoxModule, DxButtonModule, DxDataGridModule, DxNumberBoxModule, DevExtremeModule, DxLoadIndicatorModule } from 'devextreme-angular';
22
+ import * as i9 from 'devextreme-angular/ui/nested';
23
+ import * as AspNetData from 'devextreme-aspnet-data-nojquery';
24
+ import * as i6$1 from '@angular/platform-browser';
25
+ import * as i12 from 'devextreme-angular/ui/form';
26
+ import * as i13 from 'devextreme-angular/ui/load-indicator';
27
+
28
+ class UretimYonetimiService {
29
+ constructor(restService) {
30
+ this.restService = restService;
31
+ this.apiName = 'UretimYonetimi';
32
+ }
33
+ }
34
+ UretimYonetimiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiService, deps: [{ token: i1.RestService }], target: i0.ɵɵFactoryTarget.Injectable });
35
+ UretimYonetimiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiService, providedIn: 'root' });
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiService, decorators: [{
37
+ type: Injectable,
38
+ args: [{
39
+ providedIn: 'root',
40
+ }]
41
+ }], ctorParameters: function () { return [{ type: i1.RestService }]; } });
42
+
43
+ class UretimYonetimiComponent {
44
+ constructor(service) {
45
+ this.service = service;
46
+ }
47
+ ngOnInit() {
48
+ }
49
+ }
50
+ UretimYonetimiComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiComponent, deps: [{ token: UretimYonetimiService }], target: i0.ɵɵFactoryTarget.Component });
51
+ 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 });
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiComponent, decorators: [{
53
+ type: Component,
54
+ args: [{ selector: 'lib-uretim-yonetimi', template: ` <p>uretim-yonetimi works!</p> ` }]
55
+ }], ctorParameters: function () { return [{ type: UretimYonetimiService }]; } });
56
+
57
+ class ProductionOrder {
58
+ }
59
+ class Warehouse {
60
+ }
61
+ class HammaddeDepo {
62
+ }
63
+ class ItemInfos {
64
+ }
65
+ class Item {
66
+ }
67
+ class ProductionOrderList {
68
+ constructor() {
69
+ this.ProductionOrderLines = [];
70
+ }
71
+ }
72
+ class ProductionOrderLineForListing {
73
+ constructor(itemCode, itemName, warehouseCode, quantity, plannedQty, batchNumber, baseType = 202, baseEntry = -1, baseLine = -1) {
74
+ this.ItemCode = itemCode;
75
+ this.ItemName = itemName;
76
+ this.WarehouseCode = warehouseCode;
77
+ this.Quantity = quantity;
78
+ this.PlannedQty = plannedQty;
79
+ this.BatchNumber = batchNumber;
80
+ this.BaseType = baseType;
81
+ this.BaseEntry = baseEntry;
82
+ this.BaseLine = baseLine;
83
+ }
84
+ }
85
+ class ProductionOrderPatchDto {
86
+ constructor(productionOrderLines = []) {
87
+ this.ProductionOrderLines = productionOrderLines;
88
+ }
89
+ }
90
+ class ProductionOrderLine$1 {
91
+ constructor(itemNo, warehouse, baseQuantity, plannedQuantity, issuedQuantity, productionOrderIssueType, documentAbsoluteEntry, lineNumber, batchNumbers) {
92
+ this.DocumentAbsoluteEntry = documentAbsoluteEntry;
93
+ this.LineNumber = lineNumber;
94
+ this.ItemNo = itemNo;
95
+ this.BaseQuantity = baseQuantity;
96
+ this.PlannedQuantity = plannedQuantity;
97
+ this.IssuedQuantity = issuedQuantity;
98
+ this.Warehouse = warehouse;
99
+ this.ProductionOrderIssueType = productionOrderIssueType;
100
+ this.BatchNumbers = batchNumbers;
101
+ }
102
+ }
103
+ class BatchNumber$1 {
104
+ constructor(batchNumber, quantity) {
105
+ this.BatchNumber = batchNumber;
106
+ this.Quantity = quantity;
107
+ }
108
+ }
109
+ class ProductionOrdersGetDto {
110
+ }
111
+ class TuketilenHammadde {
112
+ constructor(chemicalCode, lotNumber, expirationDate, weight, terminalCode) {
113
+ this.chemicalCode = chemicalCode;
114
+ this.lotNumber = lotNumber;
115
+ this.expirationDate = expirationDate;
116
+ this.weightGr = weight; // Gram cinsinden
117
+ this.weightKg = weight ? weight / 1000 : 0; // Kilogram cinsine dönüştürülmüş hali
118
+ this.terminalCode = terminalCode;
119
+ }
120
+ }
121
+
122
+ class ResultBase {
123
+ }
124
+ class HitHelper {
125
+ static getMeasurementFormatted(suffix) {
126
+ return '#0.00 ' + suffix;
127
+ }
128
+ static getFormattedErrors(errors) {
129
+ if (!errors?.length) {
130
+ return '';
131
+ }
132
+ if (errors.length === 1) {
133
+ return errors[0];
134
+ }
135
+ return errors
136
+ .map((err, index) => `${index + 1}. ${err}`)
137
+ .join('\n');
138
+ }
139
+ static parseQR(code) {
140
+ const aiRegexMap = {
141
+ '240': /^240(.+?)10/,
142
+ '10': /10(.+?)17/,
143
+ '17': /17(\d{6})/,
144
+ '3103': /3103(\d{6})/,
145
+ '21': /21([A-Z]{2}\d{8})$/,
146
+ };
147
+ const chemicalCodeMatch = code.match(aiRegexMap['240']);
148
+ const lotNumberMatch = code.match(aiRegexMap['10']);
149
+ const expDateMatch = code.match(aiRegexMap['17']);
150
+ const weightMatch = code.match(aiRegexMap['3103']);
151
+ const terminalCodeMatch = code.match(aiRegexMap['21']);
152
+ if (!chemicalCodeMatch || !lotNumberMatch || !expDateMatch || !weightMatch || !terminalCodeMatch) {
153
+ return null;
154
+ }
155
+ var onMu = false;
156
+ while (!onMu) {
157
+ if (lotNumberMatch[1].substring(0, 2) == "10") {
158
+ chemicalCodeMatch[1] += "10";
159
+ lotNumberMatch[1] = lotNumberMatch[1].substring(2);
160
+ }
161
+ else {
162
+ onMu = true;
163
+ }
164
+ }
165
+ var onYediMi = false;
166
+ while (!onYediMi) {
167
+ if (expDateMatch[1].substring(0, 2) == "17") {
168
+ lotNumberMatch[1] += "10";
169
+ expDateMatch[1] = expDateMatch[1].substring(2);
170
+ }
171
+ else {
172
+ onYediMi = true;
173
+ }
174
+ }
175
+ if (!chemicalCodeMatch || !lotNumberMatch || !expDateMatch || !weightMatch || !terminalCodeMatch) {
176
+ return null;
177
+ }
178
+ const expDateRaw = expDateMatch[1]; // YYMMDD
179
+ const expirationDate = `20${expDateRaw.slice(0, 2)}-${expDateRaw.slice(2, 4)}-${expDateRaw.slice(4, 6)}`;
180
+ return new Hammadde(chemicalCodeMatch[1], lotNumberMatch[1], expirationDate, parseInt(weightMatch[1]), terminalCodeMatch[1]);
181
+ }
182
+ }
183
+ class Hammadde {
184
+ constructor(chemicalCode, lotNumber, expirationDate, weight, terminalCode) {
185
+ this.chemicalCode = chemicalCode;
186
+ this.lotNumber = lotNumber;
187
+ this.expirationDate = expirationDate;
188
+ this.weightGr = weight; // Gram cinsinden
189
+ this.weightKg = weight ? weight / 1000 : 0; // Kilogram cinsine dönüştürülmüş hali
190
+ this.terminalCode = terminalCode;
191
+ }
192
+ }
193
+
194
+ class HitProductionOrdersService {
195
+ constructor(restService) {
196
+ this.restService = restService;
197
+ this.apiName = 'UretimYonetimi';
198
+ this.get = (id) => this.restService.request({
199
+ method: 'GET',
200
+ url: `${this.resourceEndpoint}?id=${id + ''}`,
201
+ }, { apiName: this.apiName });
202
+ this.patch = (input) => this.restService.request({
203
+ method: 'PATCH',
204
+ url: `${this.resourceEndpoint}`,
205
+ body: input
206
+ }, { apiName: this.apiName });
207
+ this.getWarehouses = () => this.restService.request({
208
+ method: 'GET',
209
+ url: `${this.resourceEndpoint}/get-warehouses`,
210
+ }, { apiName: this.apiName });
211
+ this.getWareHouseInfo = (itemCode, orderNo) => this.restService.request({
212
+ method: 'GET',
213
+ url: `${this.resourceEndpoint}/get-warehouse-info?itemCode=${itemCode}&orderNo=${orderNo}`,
214
+ }, { apiName: this.apiName });
215
+ this.getItemInfo = (itemCode) => this.restService.request({
216
+ method: 'GET',
217
+ url: `${this.resourceEndpoint}/get-item-info?itemCode=${itemCode}`,
218
+ }, { apiName: this.apiName });
219
+ this.resourceEndpoint = '/api/uretim-yonetimi/production-orders';
220
+ }
221
+ }
222
+ HitProductionOrdersService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersService, deps: [{ token: i1.RestService }], target: i0.ɵɵFactoryTarget.Injectable });
223
+ HitProductionOrdersService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersService, providedIn: 'root' });
224
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersService, decorators: [{
225
+ type: Injectable,
226
+ args: [{
227
+ providedIn: 'root',
228
+ }]
229
+ }], ctorParameters: function () { return [{ type: i1.RestService }]; } });
230
+
231
+ class HitProductionOrdersComponent {
232
+ constructor(ngZone, list, track, service, confirmation, fb, productionOrdersService) {
233
+ this.ngZone = ngZone;
234
+ this.list = list;
235
+ this.track = track;
236
+ this.service = service;
237
+ this.confirmation = confirmation;
238
+ this.fb = fb;
239
+ this.productionOrdersService = productionOrdersService;
240
+ this.HitHelper = HitHelper;
241
+ this.options = {
242
+ hideYesBtn: true,
243
+ cancelText: 'Kapat',
244
+ dismissible: false,
245
+ };
246
+ this.isLoading = false;
247
+ this.isEmriBarkoduGecerliMi = false;
248
+ this.hammaddeQR = '';
249
+ this.qrOkutulduMu = false;
250
+ this.warehouses = [];
251
+ }
252
+ ngOnInit() {
253
+ this.getWarehouses();
254
+ }
255
+ ngAfterViewInit() {
256
+ this.nmbBoxBarkodNumarasi.instance.focus();
257
+ }
258
+ async getProductionOrderDetails() {
259
+ if (!this.isEmriBarkodu) {
260
+ return;
261
+ }
262
+ try {
263
+ this.isLoading = true;
264
+ this.isEmriBarkoduGecerliMi = false;
265
+ const response = await firstValueFrom(this.productionOrdersService.get(this.isEmriBarkodu));
266
+ if (response?.items) {
267
+ this.unitOfMeasure = response.items.unitOfMeasurement;
268
+ this.productionOrder = response.items;
269
+ this.productionOrderList = new ProductionOrderList();
270
+ this.isEmriBarkoduGecerliMi = true;
271
+ this.ngZone.run(() => {
272
+ setTimeout(() => {
273
+ this.nmbBoxHammaddeQR.instance.focus();
274
+ }, 0);
275
+ });
276
+ }
277
+ }
278
+ catch (error) {
279
+ this.isEmriBarkoduGecerliMi = false;
280
+ }
281
+ finally {
282
+ this.isLoading = false;
283
+ }
284
+ }
285
+ async parseAndAddQR() {
286
+ if (!this.hammaddeQR) {
287
+ return;
288
+ }
289
+ const parsed = HitHelper.parseQR(this.hammaddeQR);
290
+ if (!parsed) {
291
+ this.confirmation.error('', 'Geçersiz barkod!', this.options).subscribe({
292
+ next: () => {
293
+ this.hammaddeQR = '';
294
+ this.nmbBoxHammaddeQR.instance.focus();
295
+ },
296
+ });
297
+ return;
298
+ }
299
+ const response = await firstValueFrom(this.service.getWareHouseInfo(parsed.chemicalCode, this.productionOrder.absoluteEntry.toString()));
300
+ const response2 = await firstValueFrom(this.service.getItemInfo(parsed.chemicalCode));
301
+ if (response?.items && response.isSuccessful) {
302
+ const productionOrderLineForListing = new ProductionOrderLineForListing(parsed.chemicalCode, response2.items.itemName, response.items.selectedWarehouse, parsed.weightKg, parsed.weightKg, parsed.lotNumber, 202, this.productionOrder.absoluteEntry, 0);
303
+ this.productionOrderList.ProductionOrderLines.push(productionOrderLineForListing);
304
+ this.qrOkutulduMu = true;
305
+ }
306
+ this.hammaddeQR = '';
307
+ }
308
+ patchProductionOrder() {
309
+ // Map IssuesForProductionList to IssuesForProductionPostDto
310
+ const productionOrderLines = this.productionOrderList.ProductionOrderLines.map(productionLine => {
311
+ return new ProductionOrderLine$1(productionLine.ItemCode, productionLine.WarehouseCode, productionLine.Quantity, productionLine.Quantity, productionLine.Quantity, '', productionLine.BaseEntry, 0, [new BatchNumber$1(productionLine.BatchNumber, productionLine.Quantity)]);
312
+ });
313
+ this.productionOrderPatch = new ProductionOrderPatchDto(productionOrderLines);
314
+ this.service.patch(this.productionOrderPatch).subscribe({
315
+ next: result => {
316
+ if (result.isSuccessful) {
317
+ this.confirmation.success('', 'İşlem başarılı!', this.options).subscribe(() => {
318
+ this.clearAll();
319
+ });
320
+ }
321
+ else {
322
+ this.confirmation.status$.subscribe({
323
+ next: () => {
324
+ this.clearAll();
325
+ }
326
+ });
327
+ }
328
+ },
329
+ });
330
+ this.clearAll();
331
+ }
332
+ clearAll() {
333
+ this.isEmriBarkoduGecerliMi = false;
334
+ this.qrOkutulduMu = false;
335
+ this.productionOrderPatch = null;
336
+ this.isEmriBarkodu = null;
337
+ this.hammaddeQR = '';
338
+ this.productionOrder = null;
339
+ this.unitOfMeasure = null;
340
+ this.ngZone.run(() => {
341
+ setTimeout(() => {
342
+ this.nmbBoxBarkodNumarasi.instance.focus();
343
+ }, 0);
344
+ });
345
+ }
346
+ getWarehouses() {
347
+ this.isLoading = true;
348
+ this.service.getWarehouses().subscribe(result => {
349
+ if (result.items) {
350
+ this.warehouses = result.items.slice();
351
+ }
352
+ });
353
+ this.isLoading = false;
354
+ }
355
+ }
356
+ 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 });
357
+ 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\">Ek Talep</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> Ek Talep Olu\u015Ftur\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> Temizle\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 *ngIf=\"isLoading\" class=\"loading-overlay\">\r\n <div style=\"background: rgba(126, 128, 130, 0.8);\" id=\"lp-page-loader\"></div>\r\n </div>\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-text-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [label]=\"'\u0130\u015F Emri Numaras\u0131'\"\r\n [(value)]=\"isEmriBarkodu\" (onEnterKey)=\"getProductionOrderDetails()\" [disabled]=\"isEmriBarkoduGecerliMi\">\r\n </dx-text-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrderDetails()\"\r\n [disabled]=\"isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\" [label]=\"'\u0130\u015F Emri Ad\u0131'\" [(value)]=\"productionOrder.productDescription\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\" \r\n #plannedQuantityRef\r\n [label]=\"'Planlanan Miktar'\" \r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\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\" [label]=\"'Hammadde QR Barkodu'\" [maxLength]=\"256\"\r\n [(value)]=\"hammaddeQR\" (onEnterKey)=\"parseAndAddQR()\" placeholder=\"QR kod okutun...\"\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=\"Par\u00E7a Ad\u0131\" [allowEditing]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"Quantity\" caption=\"Miktar\" dataType=\"number\" [format]=\"'#0.00 kg'\"></dxi-column>\r\n <dxi-column dataField=\"WarehouseCode\" caption=\"Depo\" [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=\"Par\u00E7a Kodu\" [allowEditing]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"BatchNumber\" caption=\"Parti No\" [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: i9.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: i9.DxoLookupComponent, selector: "dxo-lookup", inputs: ["allowClearing", "calculateCellValue", "dataSource", "displayExpr", "valueExpr"] }, { kind: "component", type: i9.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"] }], changeDetection: i0.ChangeDetectionStrategy.Default });
358
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersComponent, decorators: [{
359
+ type: Component,
360
+ 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\">Ek Talep</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> Ek Talep Olu\u015Ftur\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> Temizle\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 *ngIf=\"isLoading\" class=\"loading-overlay\">\r\n <div style=\"background: rgba(126, 128, 130, 0.8);\" id=\"lp-page-loader\"></div>\r\n </div>\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-text-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [label]=\"'\u0130\u015F Emri Numaras\u0131'\"\r\n [(value)]=\"isEmriBarkodu\" (onEnterKey)=\"getProductionOrderDetails()\" [disabled]=\"isEmriBarkoduGecerliMi\">\r\n </dx-text-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrderDetails()\"\r\n [disabled]=\"isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\" [label]=\"'\u0130\u015F Emri Ad\u0131'\" [(value)]=\"productionOrder.productDescription\" [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\" \r\n #plannedQuantityRef\r\n [label]=\"'Planlanan Miktar'\" \r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\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\" [label]=\"'Hammadde QR Barkodu'\" [maxLength]=\"256\"\r\n [(value)]=\"hammaddeQR\" (onEnterKey)=\"parseAndAddQR()\" placeholder=\"QR kod okutun...\"\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=\"Par\u00E7a Ad\u0131\" [allowEditing]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"Quantity\" caption=\"Miktar\" dataType=\"number\" [format]=\"'#0.00 kg'\"></dxi-column>\r\n <dxi-column dataField=\"WarehouseCode\" caption=\"Depo\" [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=\"Par\u00E7a Kodu\" [allowEditing]=\"false\"></dxi-column>\r\n <dxi-column dataField=\"BatchNumber\" caption=\"Parti No\" [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" }]
361
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: HitProductionOrdersService }, { type: i3.ConfirmationService }, { type: i4.FormBuilder }, { type: HitProductionOrdersService }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
362
+ type: ViewChild,
363
+ args: ['barkodNumarasiRef', { static: false }]
364
+ }], nmbBoxHammaddeQR: [{
365
+ type: ViewChild,
366
+ args: ['hammaddeQRRef', { static: false }]
367
+ }] } });
368
+
369
+ const routes$4 = [
370
+ {
371
+ path: '',
372
+ component: HitProductionOrdersComponent,
373
+ canActivate: [AuthGuard, PermissionGuard],
374
+ },
375
+ ];
376
+ class HitProductionOrdersRoutingModule {
377
+ }
378
+ HitProductionOrdersRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
379
+ HitProductionOrdersRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
380
+ HitProductionOrdersRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersRoutingModule, imports: [RouterModule.forChild(routes$4), RouterModule] });
381
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrdersRoutingModule, decorators: [{
382
+ type: NgModule,
383
+ args: [{
384
+ imports: [RouterModule.forChild(routes$4)],
385
+ exports: [RouterModule],
386
+ }]
387
+ }] });
388
+
389
+ class HitProductionOrderModule {
390
+ }
391
+ HitProductionOrderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
392
+ HitProductionOrderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrderModule, declarations: [HitProductionOrdersComponent], 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
+ HitProductionOrderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrderModule, imports: [HitProductionOrdersRoutingModule,
406
+ CoreModule,
407
+ ThemeSharedModule,
408
+ CommercialUiModule,
409
+ NgxValidateCoreModule,
410
+ NgbCollapseModule,
411
+ NgbDatepickerModule,
412
+ NgbDropdownModule,
413
+ PageModule,
414
+ DxTextBoxModule,
415
+ DxButtonModule,
416
+ DxDataGridModule,
417
+ DxNumberBoxModule] });
418
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitProductionOrderModule, decorators: [{
419
+ type: NgModule,
420
+ args: [{
421
+ declarations: [HitProductionOrdersComponent],
422
+ imports: [
423
+ HitProductionOrdersRoutingModule,
424
+ CoreModule,
425
+ ThemeSharedModule,
426
+ CommercialUiModule,
427
+ NgxValidateCoreModule,
428
+ NgbCollapseModule,
429
+ NgbDatepickerModule,
430
+ NgbDropdownModule,
431
+ PageModule,
432
+ DxTextBoxModule,
433
+ DxButtonModule,
434
+ DxDataGridModule,
435
+ DxNumberBoxModule
436
+ ],
437
+ }]
438
+ }] });
439
+ function loadHitProductionOrdersAsChild() {
440
+ return Promise.resolve(HitProductionOrderModule);
441
+ }
442
+
443
+ class GetProductionOrderDto {
444
+ }
445
+ class ReceiptFromProductionsPostDto {
446
+ }
447
+ class ReceiptFromProductionsLines {
448
+ }
449
+ class ReceiptFromProductionsBatchNumbers {
450
+ }
451
+ class ProductionOrderLine {
452
+ constructor() {
453
+ this.quantity = 0;
454
+ }
455
+ }
456
+
457
+ class DevexpressRestService {
458
+ constructor(envService, toaster) {
459
+ this.envService = envService;
460
+ this.toaster = toaster;
461
+ this.localizationKey = 'tr';
462
+ this.createStore = (options) => AspNetData.createStore({
463
+ key: options.key,
464
+ loadParams: options.params,
465
+ loadUrl: `${this.envService.getEnvironment().apis.eDonusum.url + '/' + options.loadUrl}`,
466
+ insertUrl: `${this.envService.getEnvironment().apis.eDonusum.url + '/' + options.insertUrl}`,
467
+ insertMethod: 'POST',
468
+ updateUrl: `${this.envService.getEnvironment().apis.eDonusum.url + '/' + options.updateUrl}`,
469
+ updateMethod: 'PUT',
470
+ deleteUrl: `${this.envService.getEnvironment().apis.eDonusum.url + '/' + options.deleteUrl}`,
471
+ deleteMethod: 'DELETE',
472
+ onLoading(loadOptions) {
473
+ },
474
+ onBeforeSend(operation, ajaxSettings) {
475
+ let languages = {};
476
+ languages = JSON.parse(localStorage.getItem('abpSession'));
477
+ if (operation === "insert" || operation === "update" || operation === "delete") {
478
+ console.log(ajaxSettings);
479
+ if (operation == "delete") {
480
+ ajaxSettings.url = ajaxSettings.url + "/" + localStorage.getItem("appointment-deleted-id");
481
+ }
482
+ ajaxSettings.contentType = "application/json";
483
+ ajaxSettings.data = ajaxSettings.data.values;
484
+ }
485
+ ajaxSettings.headers = {
486
+ Authorization: 'Bearer ' + localStorage.getItem('access_token'),
487
+ 'Accept-Language': languages.language
488
+ };
489
+ }, onAjaxError: this.onAjaxError
490
+ });
491
+ }
492
+ onAjaxError(e) {
493
+ let jsonObj = e.xhr.responseJSON || JSON.parse(e.xhr.responseText);
494
+ e.error = jsonObj ? ` ${jsonObj.error.message} : ${jsonObj.error.details}` : 'null text';
495
+ }
496
+ }
497
+ 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 });
498
+ DevexpressRestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DevexpressRestService, providedIn: 'root' });
499
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DevexpressRestService, decorators: [{
500
+ type: Injectable,
501
+ args: [{
502
+ providedIn: 'root'
503
+ }]
504
+ }], ctorParameters: function () { return [{ type: i1.EnvironmentService }, { type: i3.ToasterService }]; } });
505
+
506
+ class HitReceiptFromProductionsService {
507
+ constructor(restService, devexService) {
508
+ this.restService = restService;
509
+ this.devexService = devexService;
510
+ this.apiName = 'UretimYonetimi';
511
+ this.create = (input) => this.restService.request({
512
+ method: 'POST',
513
+ url: `${this.resourceEndpoint}`,
514
+ body: input,
515
+ }, { apiName: this.apiName });
516
+ this.getBarcodeInfo = (productionOrderId, receiptId, barcodeNumber) => this.restService.request({
517
+ method: 'POST',
518
+ url: `/api/uretim-yonetimi/create-barcodes/get-barcode?productionOrderId=${productionOrderId}&receiptId=${receiptId}&barcodeNumber=${barcodeNumber}`,
519
+ }, { apiName: this.apiName });
520
+ this.resourceEndpoint = '/api/uretim-yonetimi/receipt-from-productions';
521
+ }
522
+ }
523
+ 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 });
524
+ HitReceiptFromProductionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsService, providedIn: 'root' });
525
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsService, decorators: [{
526
+ type: Injectable,
527
+ args: [{
528
+ providedIn: 'root',
529
+ }]
530
+ }], ctorParameters: function () { return [{ type: i1.RestService }, { type: DevexpressRestService }]; } });
531
+
532
+ class HitReceiptFromProductionsComponent {
533
+ constructor(ngZone, list, track, service, confirmation, fb, productionOrdersService, sanitizer) {
534
+ this.ngZone = ngZone;
535
+ this.list = list;
536
+ this.track = track;
537
+ this.service = service;
538
+ this.confirmation = confirmation;
539
+ this.fb = fb;
540
+ this.productionOrdersService = productionOrdersService;
541
+ this.sanitizer = sanitizer;
542
+ this.HitHelper = HitHelper;
543
+ this.isLoading = false;
544
+ this.options = {
545
+ hideYesBtn: true,
546
+ cancelText: 'Kapat',
547
+ dismissible: false,
548
+ };
549
+ this.getProductionOrderDtoIsLoading = "valid";
550
+ this.isProductionOrderValid = false;
551
+ this.showModal = false;
552
+ this.pdfSrc = null;
553
+ this.receiptFromProductionsPostDtoIsLoading = false;
554
+ this.receiptFromProductionsPostDto = new ReceiptFromProductionsPostDto();
555
+ this.warehouses = [];
556
+ }
557
+ ngOnInit() {
558
+ this.createForm();
559
+ this.clearAll();
560
+ this.getWarehouses();
561
+ }
562
+ ngAfterViewInit() {
563
+ this.focusOnBarkodNumarasi();
564
+ }
565
+ createForm() {
566
+ this.form = this.fb.group({
567
+ stokKodu: ['', Validators.required],
568
+ stokTanimi: ['', Validators.required],
569
+ miktar: ['', Validators.required],
570
+ toplanan: ['', Validators.required],
571
+ kalan: ['', Validators.required],
572
+ hedefDepo: ['', Validators.required],
573
+ hedefDepoCode: ['', Validators.required],
574
+ partiNo: ['', Validators.required],
575
+ });
576
+ }
577
+ generateReport() {
578
+ this.service.getBarcodeInfo(this.barkodNumarasi, this.newRecordDocEntry, 1).subscribe({
579
+ next: response => {
580
+ const base64Data = response.base64; // base64 string (sadece veri kısmı, "data:application/pdf;base64,..." değilse)
581
+ // Base64'ü decode edip binary veriye çeviriyoruz
582
+ const byteCharacters = atob(base64Data);
583
+ const byteNumbers = new Array(byteCharacters.length);
584
+ for (let i = 0; i < byteCharacters.length; i++) {
585
+ byteNumbers[i] = byteCharacters.charCodeAt(i);
586
+ }
587
+ const byteArray = new Uint8Array(byteNumbers);
588
+ // Blob oluşturuyoruz
589
+ const blob = new Blob([byteArray], { type: 'application/pdf' });
590
+ // Blob'tan URL oluşturup yeni sekmede açıyoruz (veya download edebilirsin)
591
+ const blobUrl = URL.createObjectURL(blob);
592
+ this.pdfSrc = this.bypassAndSanitize(blobUrl);
593
+ },
594
+ });
595
+ }
596
+ bypassAndSanitize(url) {
597
+ return this.sanitizer.bypassSecurityTrustResourceUrl(url);
598
+ }
599
+ async getProductionOrder() {
600
+ this.clearForm();
601
+ this.getProductionOrderDtoIsLoading = "pending";
602
+ this.isLoading = true;
603
+ this.productionOrdersService.get(this.barkodNumarasi).subscribe({
604
+ next: (result) => {
605
+ if (result.isSuccessful) {
606
+ this.form.patchValue({
607
+ stokKodu: result.items.itemNo,
608
+ stokTanimi: result.items.productDescription,
609
+ miktar: result.items.plannedQuantity,
610
+ toplanan: result.items.completedQuantity,
611
+ kalan: result.items.plannedQuantity - result.items.completedQuantity,
612
+ hedefDepo: result.items.warehouse,
613
+ hedefDepoCode: result.items.warehouse,
614
+ partiNo: result.items.u_trkBatch,
615
+ });
616
+ const filteredWarehouses = this.warehouses.filter(warehouse => warehouse.whsCode === result.items.warehouse);
617
+ if (filteredWarehouses.length > 0) {
618
+ this.form.patchValue({
619
+ hedefDepo: filteredWarehouses[0].whsName,
620
+ });
621
+ }
622
+ this.unitOfMeasure = result.items.unitOfMeasurement;
623
+ this.isProductionOrderValid = true;
624
+ this.focusOnToplananMiktar();
625
+ }
626
+ else {
627
+ if (result?.isSuccessful == false) {
628
+ this.confirmation.status$.subscribe({
629
+ next: () => {
630
+ this.clearAll();
631
+ }
632
+ });
633
+ }
634
+ }
635
+ }
636
+ });
637
+ this.getProductionOrderDtoIsLoading = "valid";
638
+ this.isLoading = false;
639
+ }
640
+ async postReceiptFromProductions() {
641
+ this.isLoading = true;
642
+ this.receiptFromProductionsPostDtoIsLoading = true;
643
+ this.receiptFromProductionsPostDto = new ReceiptFromProductionsPostDto();
644
+ const line = new ReceiptFromProductionsLines();
645
+ line.baseEntry = this.barkodNumarasi;
646
+ line.baseType = 202;
647
+ line.quantity = this.form.value.kalan;
648
+ line.warehouseCode = this.form.value.hedefDepoCode;
649
+ const batchNumber = new ReceiptFromProductionsBatchNumbers();
650
+ batchNumber.batchNumber = this.form.value.u_trkBatch;
651
+ batchNumber.quantity = this.form.value.kalan;
652
+ line.batchNumbers = [batchNumber];
653
+ this.receiptFromProductionsPostDto.documentLines = [line];
654
+ this.service.create(this.receiptFromProductionsPostDto).subscribe({
655
+ next: (result) => {
656
+ if (result.isSuccessful) {
657
+ this.confirmation.success('İşlem Başarılı', '', this.options).subscribe(() => {
658
+ this.newRecordDocEntry = result.items.docEntry;
659
+ this.showModal = true;
660
+ });
661
+ }
662
+ else {
663
+ this.confirmation.status$.subscribe(() => {
664
+ this.focusOnToplananMiktar();
665
+ });
666
+ }
667
+ },
668
+ error: () => {
669
+ this.confirmation.status$.subscribe(() => {
670
+ this.focusOnToplananMiktar();
671
+ });
672
+ }
673
+ });
674
+ this.receiptFromProductionsPostDtoIsLoading = false;
675
+ this.isLoading = false;
676
+ }
677
+ clearAll() {
678
+ this.barkodNumarasi = null;
679
+ this.clearForm();
680
+ }
681
+ clearForm() {
682
+ this.unitOfMeasure = null;
683
+ this.form.reset();
684
+ this.form.markAsPristine();
685
+ this.form.markAsUntouched();
686
+ this.isProductionOrderValid = false;
687
+ this.focusOnBarkodNumarasi();
688
+ }
689
+ async getWarehouses() {
690
+ this.isLoading = true;
691
+ this.productionOrdersService.getWarehouses().subscribe({
692
+ next: (result) => {
693
+ if (result.items) {
694
+ this.warehouses = result.items.slice();
695
+ }
696
+ }
697
+ });
698
+ this.isLoading = false;
699
+ }
700
+ focusOnBarkodNumarasi() {
701
+ this.ngZone.run(() => {
702
+ setTimeout(() => {
703
+ this.nmbBoxBarkodNumarasi.instance.focus();
704
+ }, 0);
705
+ });
706
+ }
707
+ focusOnToplananMiktar() {
708
+ this.ngZone.run(() => {
709
+ setTimeout(() => {
710
+ this.nmbBoxToplananMiktar.instance.focus();
711
+ }, 0);
712
+ });
713
+ }
714
+ }
715
+ 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: i4.FormBuilder }, { token: HitProductionOrdersService }, { token: i6$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
716
+ 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 *ngIf=\"isLoading\">\r\n <dx-load-indicator [visible]=\"true\"></dx-load-indicator>\r\n </div>\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 [validationStatus]=\"getProductionOrderDtoIsLoading\"\r\n [disabled]=\"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]=\"isProductionOrderValid\">\r\n </dx-button>\r\n </div>\r\n <form [formGroup]=\"form\" id=\"hit-order\" *ngIf=\"isProductionOrderValid\">\r\n <dx-form id=\"form\" labelLocation=\"top\">\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'stokKodu'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.StokCode' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'stokTanimi'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.StokDesc' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'hedefDepo'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.ToWhs' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'partiNo'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.BatchNumber' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box [formControlName]=\"'miktar'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.PlannedQty' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box [formControlName]=\"'toplanan'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.CompletedQty' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box #toplananMiktarRef [formControlName]=\"'kalan'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.Quantity' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [showSpinButtons]=\"true\" [min]=\"0\">\r\n </dx-number-box>\r\n </dxi-item>\r\n </dx-form>\r\n </form>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\" (disappear)=\"clearAll()\"> <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template> <ng-template #abpBody> <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe> </ng-template> <ng-template #abpFooter> <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }} </button>\r\n </ng-template> \r\n</abp-modal>\r\n", dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { 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: "directive", type: i8$1.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i8$1.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { 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: i9.DxiItemComponent, selector: "dxi-item", inputs: ["disabled", "html", "icon", "template", "text", "title", "titleTemplate", "visible", "onClick", "stylingMode", "type", "baseSize", "box", "ratio", "shrink", "elementAttr", "hint", "beginGroup", "closeMenuOnClick", "items", "selectable", "selected", "colSpan", "cssClass", "dataField", "editorOptions", "editorType", "helpText", "isRequired", "itemType", "label", "name", "validationRules", "visibleIndex", "alignItemLabels", "caption", "colCount", "colCountByScreen", "tabPanelOptions", "tabs", "badge", "tabTemplate", "buttonOptions", "horizontalAlignment", "verticalAlignment", "locateInMenu", "location", "menuItemTemplate", "options", "showText", "widget", "height", "width", "imageAlt", "imageSrc", "acceptedValues", "formatName", "formatValues", "key", "showChevron", "heightRatio", "widthRatio", "expanded", "hasItems", "id", "parentId"] }, { kind: "component", type: i12.DxFormComponent, selector: "dx-form", inputs: ["accessKey", "activeStateEnabled", "alignItemLabels", "alignItemLabelsInAllGroups", "colCount", "colCountByScreen", "customizeItem", "disabled", "elementAttr", "focusStateEnabled", "formData", "height", "hint", "hoverStateEnabled", "items", "labelLocation", "labelMode", "minColWidth", "optionalMark", "readOnly", "requiredMark", "requiredMessage", "rtlEnabled", "screenByWidth", "scrollingEnabled", "showColonAfterLabel", "showOptionalMark", "showRequiredMark", "showValidationSummary", "tabIndex", "validationGroup", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onEditorEnterKey", "onFieldDataChanged", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "alignItemLabelsChange", "alignItemLabelsInAllGroupsChange", "colCountChange", "colCountByScreenChange", "customizeItemChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formDataChange", "heightChange", "hintChange", "hoverStateEnabledChange", "itemsChange", "labelLocationChange", "labelModeChange", "minColWidthChange", "optionalMarkChange", "readOnlyChange", "requiredMarkChange", "requiredMessageChange", "rtlEnabledChange", "screenByWidthChange", "scrollingEnabledChange", "showColonAfterLabelChange", "showOptionalMarkChange", "showRequiredMarkChange", "showValidationSummaryChange", "tabIndexChange", "validationGroupChange", "visibleChange", "widthChange"] }, { kind: "component", type: i13.DxLoadIndicatorComponent, selector: "dx-load-indicator", inputs: ["elementAttr", "height", "hint", "indicatorSrc", "rtlEnabled", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onOptionChanged", "elementAttrChange", "heightChange", "hintChange", "indicatorSrcChange", "rtlEnabledChange", "visibleChange", "widthChange"] }, { 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 });
717
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsComponent, decorators: [{
718
+ type: Component,
719
+ 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 *ngIf=\"isLoading\">\r\n <dx-load-indicator [visible]=\"true\"></dx-load-indicator>\r\n </div>\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 [validationStatus]=\"getProductionOrderDtoIsLoading\"\r\n [disabled]=\"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]=\"isProductionOrderValid\">\r\n </dx-button>\r\n </div>\r\n <form [formGroup]=\"form\" id=\"hit-order\" *ngIf=\"isProductionOrderValid\">\r\n <dx-form id=\"form\" labelLocation=\"top\">\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'stokKodu'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.StokCode' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'stokTanimi'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.StokDesc' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'hedefDepo'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.ToWhs' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-text-box [formControlName]=\"'partiNo'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.BatchNumber' | abpLocalization\" [maxLength]=\"128\" [disabled]=\"true\">\r\n </dx-text-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box [formControlName]=\"'miktar'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.PlannedQty' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box [formControlName]=\"'toplanan'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.CompletedQty' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </dxi-item>\r\n\r\n <dxi-item>\r\n <dx-number-box #toplananMiktarRef [formControlName]=\"'kalan'\" [label]=\"'UretimYonetimi::ReceiptFromProductions.Quantity' | abpLocalization\"\r\n [format]=\"HitHelper.getMeasurementFormatted(unitOfMeasure)\"\r\n [showSpinButtons]=\"true\" [min]=\"0\">\r\n </dx-number-box>\r\n </dxi-item>\r\n </dx-form>\r\n </form>\r\n </div>\r\n </div>\r\n</abp-page>\r\n\r\n<abp-modal [(visible)]=\"showModal\" (appear)=\"generateReport()\" (disappear)=\"clearAll()\"> <ng-template #abpHeader>\r\n <h3>{{ 'UretimYonetimi::CreateBarcodes.BarcodePreview' | abpLocalization }}</h3>\r\n </ng-template> <ng-template #abpBody> <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\"\r\n webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe> </ng-template> <ng-template #abpFooter> <button type=\"button\"\r\n class=\"btn btn-secondary\" abpClose> {{ 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }} </button>\r\n </ng-template> \r\n</abp-modal>\r\n" }]
720
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: HitReceiptFromProductionsService }, { type: i3.ConfirmationService }, { type: i4.FormBuilder }, { type: HitProductionOrdersService }, { type: i6$1.DomSanitizer }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
721
+ type: ViewChild,
722
+ args: ['barkodNumarasiRef', { static: false }]
723
+ }], nmbBoxToplananMiktar: [{
724
+ type: ViewChild,
725
+ args: ['toplananMiktarRef', { static: false }]
726
+ }] } });
727
+
728
+ const routes$3 = [
729
+ {
730
+ path: '',
731
+ component: HitReceiptFromProductionsComponent,
732
+ canActivate: [AuthGuard, PermissionGuard],
733
+ },
734
+ ];
735
+ class HitReceiptFromProductionRoutingModule {
736
+ }
737
+ HitReceiptFromProductionRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
738
+ HitReceiptFromProductionRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
739
+ HitReceiptFromProductionRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionRoutingModule, imports: [RouterModule.forChild(routes$3), RouterModule] });
740
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionRoutingModule, decorators: [{
741
+ type: NgModule,
742
+ args: [{
743
+ imports: [RouterModule.forChild(routes$3)],
744
+ exports: [RouterModule],
745
+ }]
746
+ }] });
747
+
748
+ class HitReceiptFromProductionsModule {
749
+ }
750
+ HitReceiptFromProductionsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
751
+ HitReceiptFromProductionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsModule, declarations: [HitReceiptFromProductionsComponent], imports: [HitReceiptFromProductionRoutingModule,
752
+ CoreModule,
753
+ ThemeSharedModule,
754
+ CommercialUiModule,
755
+ NgxValidateCoreModule,
756
+ NgbCollapseModule,
757
+ NgbDatepickerModule,
758
+ NgbDropdownModule,
759
+ PageModule,
760
+ DxButtonModule,
761
+ DxNumberBoxModule,
762
+ DevExtremeModule] });
763
+ HitReceiptFromProductionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsModule, imports: [HitReceiptFromProductionRoutingModule,
764
+ CoreModule,
765
+ ThemeSharedModule,
766
+ CommercialUiModule,
767
+ NgxValidateCoreModule,
768
+ NgbCollapseModule,
769
+ NgbDatepickerModule,
770
+ NgbDropdownModule,
771
+ PageModule,
772
+ DxButtonModule,
773
+ DxNumberBoxModule,
774
+ DevExtremeModule] });
775
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitReceiptFromProductionsModule, decorators: [{
776
+ type: NgModule,
777
+ args: [{
778
+ declarations: [HitReceiptFromProductionsComponent],
779
+ imports: [
780
+ HitReceiptFromProductionRoutingModule,
781
+ CoreModule,
782
+ ThemeSharedModule,
783
+ CommercialUiModule,
784
+ NgxValidateCoreModule,
785
+ NgbCollapseModule,
786
+ NgbDatepickerModule,
787
+ NgbDropdownModule,
788
+ PageModule,
789
+ DxButtonModule,
790
+ DxNumberBoxModule,
791
+ DevExtremeModule,
792
+ ],
793
+ }]
794
+ }] });
795
+ function loadHitReceiptFromProductionsAsChild() {
796
+ return Promise.resolve(HitReceiptFromProductionsModule);
797
+ }
798
+
799
+ class IssuesForProductionPostDto {
800
+ constructor(issueLines = []) {
801
+ this.DocumentLines = issueLines;
802
+ }
803
+ }
804
+ class IssueLine {
805
+ constructor() {
806
+ this.IsQRReady = false;
807
+ this.Quantity = 0;
808
+ this.BaseType = 202;
809
+ this.BatchNumbers = [];
810
+ }
811
+ }
812
+ class BatchNumber {
813
+ constructor(batchNumber, quantity) {
814
+ this.BatchNumber = batchNumber;
815
+ this.Quantity = quantity;
816
+ }
817
+ }
818
+ class IssuesForProductionPatchDto {
819
+ }
820
+ class IssuesForProductionGetDto {
821
+ }
822
+
823
+ class HitIssuesForProductionsService {
824
+ constructor(restService, devexService) {
825
+ this.restService = restService;
826
+ this.devexService = devexService;
827
+ this.apiName = 'UretimYonetimi';
828
+ this.post = (input) => this.restService.request({
829
+ method: 'POST',
830
+ url: `${this.resourceEndpoint}`,
831
+ body: input,
832
+ }, { apiName: this.apiName });
833
+ this.patch = (input) => this.restService.request({
834
+ method: 'POST',
835
+ url: `${this.resourceEndpoint}`,
836
+ body: input,
837
+ }, { apiName: this.apiName });
838
+ this.get = (itemCode, orderNo) => this.restService.request({
839
+ method: 'GET',
840
+ url: `${this.resourceEndpoint}?itemCode=${itemCode}&orderNo=${orderNo}`,
841
+ }, { apiName: this.apiName });
842
+ this.resourceEndpoint = '/api/uretim-yonetimi/issues-for-productions';
843
+ }
844
+ }
845
+ 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 });
846
+ HitIssuesForProductionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsService, providedIn: 'root' });
847
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitIssuesForProductionsService, decorators: [{
848
+ type: Injectable,
849
+ args: [{
850
+ providedIn: 'root',
851
+ }]
852
+ }], ctorParameters: function () { return [{ type: i1.RestService }, { type: DevexpressRestService }]; } });
853
+
854
+ class HitIssuesForProductionsComponent {
855
+ constructor(ngZone, list, track, service, confirmation, fb, productionOrdersService) {
856
+ this.ngZone = ngZone;
857
+ this.list = list;
858
+ this.track = track;
859
+ this.service = service;
860
+ this.confirmation = confirmation;
861
+ this.fb = fb;
862
+ this.productionOrdersService = productionOrdersService;
863
+ this.options = {
864
+ hideYesBtn: true,
865
+ cancelText: 'Kapat',
866
+ dismissible: false,
867
+ };
868
+ this.isLoading = false;
869
+ this.isEmriBarkoduGecerliMi = false;
870
+ this.hammaddeQR = '';
871
+ this.warehouses = [];
872
+ this.HitHelper = HitHelper;
873
+ }
874
+ ngAfterViewInit() {
875
+ this.focusBarkodInput();
876
+ }
877
+ ngOnInit() {
878
+ this.clearAll();
879
+ this.getWarehouses();
880
+ }
881
+ async getProductionOrder() {
882
+ if (!this.isEmriBarkodu) {
883
+ this.focusBarkodInput();
884
+ return;
885
+ }
886
+ this.isLoading = true;
887
+ this.isEmriBarkoduGecerliMi = false;
888
+ this.productionOrdersService.get(this.isEmriBarkodu).subscribe({
889
+ next: (response) => {
890
+ if (response.isSuccessful) {
891
+ this.productionOrder = response.items;
892
+ this.isEmriBarkoduGecerliMi = true;
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
+ }
913
+ },
914
+ error: (e) => {
915
+ this.isLoading = false;
916
+ this.isEmriBarkoduGecerliMi = false;
917
+ this.confirmation.status$.subscribe({
918
+ next: () => {
919
+ this.clearAll();
920
+ }
921
+ });
922
+ this.focusBarkodInput();
923
+ }
924
+ });
925
+ this.isLoading = false;
926
+ }
927
+ async parseAndAddQR() {
928
+ if (!this.hammaddeQR) {
929
+ this.focusQRInput();
930
+ return;
931
+ }
932
+ this.isLoading = true;
933
+ const parsed = HitHelper.parseQR(this.hammaddeQR);
934
+ if (!parsed) {
935
+ this.confirmation.error('', 'Geçersiz barkod!', this.options).subscribe({
936
+ next: () => {
937
+ this.hammaddeQR = '';
938
+ this.focusQRInput();
939
+ }
940
+ });
941
+ return;
942
+ }
943
+ this.service.get(parsed.chemicalCode, this.productionOrder.absoluteEntry.toString()).subscribe({
944
+ next: (response) => {
945
+ if (response.isSuccessful) {
946
+ const issueLine = this.productionOrder.getProductionOrderLine.find((x) => x.itemCode === parsed.chemicalCode);
947
+ if (issueLine == null) {
948
+ this.confirmation.error('', "Bu iş emrinde " + parsed.chemicalCode + " kodlu stok bulunmuyor. ", this.options);
949
+ }
950
+ const issueLineForPost = this.issuesForProductionPost.DocumentLines.find((x) => x.ItemCode === parsed.chemicalCode);
951
+ if (issueLine) {
952
+ if (issueLine.issuedQty + issueLine.quantity + parsed.weightKg > issueLine.plannedQty) {
953
+ this.confirmation.error('', 'Toplanan miktar planlanan miktarı aşıyor!', this.options);
954
+ return;
955
+ }
956
+ issueLine.quantity += parsed.weightKg;
957
+ issueLine.batchNumber = parsed.lotNumber;
958
+ issueLineForPost.Quantity += parsed.weightKg;
959
+ if (issueLineForPost.IsQRReady) {
960
+ issueLineForPost.BatchNumbers.push(new BatchNumber(parsed.lotNumber, parsed.weightKg));
961
+ }
962
+ else {
963
+ issueLineForPost.BatchNumbers = [new BatchNumber(parsed.lotNumber, parsed.weightKg)];
964
+ issueLineForPost.IsQRReady = true;
965
+ }
966
+ }
967
+ }
968
+ },
969
+ error: (e) => {
970
+ this.confirmation.status$.subscribe({
971
+ next: () => {
972
+ this.focusQRInput();
973
+ this.hammaddeQR = '';
974
+ this.isLoading = false;
975
+ }
976
+ });
977
+ },
978
+ complete: () => {
979
+ this.focusQRInput();
980
+ this.hammaddeQR = '';
981
+ this.isLoading = false;
982
+ }
983
+ });
984
+ }
985
+ async postIssuesForProduction() {
986
+ if (!this.issuesForProductionPost) {
987
+ this.focusBarkodInput();
988
+ return;
989
+ }
990
+ this.isLoading = true;
991
+ this.issuesForProductionPost.DocumentLines.forEach((x) => {
992
+ x.BaseEntry = this.productionOrder.absoluteEntry;
993
+ });
994
+ console.log(this.issuesForProductionPost);
995
+ this.issuesForProductionPost.DocumentLines = this.issuesForProductionPost.DocumentLines.filter((x) => x.IsQRReady);
996
+ this.service.post(this.issuesForProductionPost).subscribe({
997
+ next: (response) => {
998
+ if (response.isSuccessful) {
999
+ this.confirmation.success('', 'İşlem başarılı!', this.options).subscribe(() => {
1000
+ this.clearAll();
1001
+ });
1002
+ }
1003
+ else {
1004
+ this.confirmation.status$.subscribe({
1005
+ next: () => {
1006
+ this.clearAll();
1007
+ }
1008
+ });
1009
+ }
1010
+ },
1011
+ error: (e) => {
1012
+ this.confirmation.error('', 'Bir hata oluştu!', this.options).subscribe({
1013
+ next: () => {
1014
+ this.clearAll();
1015
+ }
1016
+ });
1017
+ this.isLoading = false;
1018
+ },
1019
+ complete: () => {
1020
+ this.isLoading = false;
1021
+ }
1022
+ });
1023
+ }
1024
+ clearAll() {
1025
+ this.isEmriBarkoduGecerliMi = false;
1026
+ this.issuesForProductionPost = null;
1027
+ this.isEmriBarkodu = null;
1028
+ this.hammaddeQR = '';
1029
+ this.productionOrder = null;
1030
+ this.focusBarkodInput();
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\r\n class=\"me-1\" style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\"\r\n (onChange)=\"getProductionOrder()\"\r\n (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"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\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.PlannedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-text-box #hammaddeQRRef\r\n style=\"width:100%;\"\r\n class=\"me-1\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.IssueQRCode' | abpLocalization\"\r\n [maxLength]=\"256\"\r\n [(value)]=\"hammaddeQR\"\r\n (onEnterKey)=\"parseAndAddQR()\"\r\n placeholder=\"QR kod okutun...\">\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\r\n [dataSource]=\"productionOrder.getProductionOrderLine\"\r\n [showBorders]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [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 dataField=\"quantity\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.Quantity' | abpLocalization}}\"\r\n dataType=\"number\" [format]=\"HitHelper.getMeasurementFormatted('kg')\"></dxi-column>\r\n <dxi-column dataField=\"plannedQty\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.PlannedQty' | abpLocalization}}\"\r\n dataType=\"number\" [format]=\"HitHelper.getMeasurementFormatted('kg')\"></dxi-column>\r\n <dxi-column dataField=\"issuedQty\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.CompletedQty' | abpLocalization}}\"\r\n dataType=\"number\" [format]=\"HitHelper.getMeasurementFormatted('kg')\"></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}}\"\r\n [width]=\"120\">\r\n\r\n <dxo-lookup [dataSource]=\"warehouses\" displayExpr=\"whsName\" valueExpr=\"whsCode\">\r\n </dxo-lookup>\r\n </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", styles: ["::ng-deep .hit-green-row{background-color:#daf5dc!important}::ng-deep .hit-grey-row{background-color:#f2f4f7!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: "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: i9.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: i9.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\r\n class=\"me-1\" style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\"\r\n (onChange)=\"getProductionOrder()\"\r\n (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"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\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.PlannedQty' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-text-box #hammaddeQRRef\r\n style=\"width:100%;\"\r\n class=\"me-1\"\r\n [label]=\"'UretimYonetimi::IssuesForProductions.IssueQRCode' | abpLocalization\"\r\n [maxLength]=\"256\"\r\n [(value)]=\"hammaddeQR\"\r\n (onEnterKey)=\"parseAndAddQR()\"\r\n placeholder=\"QR kod okutun...\">\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\r\n [dataSource]=\"productionOrder.getProductionOrderLine\"\r\n [showBorders]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [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 dataField=\"quantity\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.Quantity' | abpLocalization}}\"\r\n dataType=\"number\" [format]=\"HitHelper.getMeasurementFormatted('kg')\"></dxi-column>\r\n <dxi-column dataField=\"plannedQty\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.PlannedQty' | abpLocalization}}\"\r\n dataType=\"number\" [format]=\"HitHelper.getMeasurementFormatted('kg')\"></dxi-column>\r\n <dxi-column dataField=\"issuedQty\"\r\n caption=\"{{'UretimYonetimi::IssuesForProductions.CompletedQty' | abpLocalization}}\"\r\n dataType=\"number\" [format]=\"HitHelper.getMeasurementFormatted('kg')\"></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}}\"\r\n [width]=\"120\">\r\n\r\n <dxo-lookup [dataSource]=\"warehouses\" displayExpr=\"whsName\" valueExpr=\"whsCode\">\r\n </dxo-lookup>\r\n </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", styles: ["::ng-deep .hit-green-row{background-color:#daf5dc!important}::ng-deep .hit-grey-row{background-color:#f2f4f7!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.printingQuantity = 1;
1205
+ this.showModal = false;
1206
+ this.pdfSrc = null;
1207
+ }
1208
+ async getProductionOrder() {
1209
+ if (!this.isEmriBarkodu) {
1210
+ return;
1211
+ }
1212
+ this.isLoading = true;
1213
+ this.isEmriBarkoduGecerliMi = false;
1214
+ this.productionOrdersService.get(this.isEmriBarkodu).subscribe({
1215
+ next: response => {
1216
+ if (response?.isSuccessful) {
1217
+ this.productionOrder = response.items;
1218
+ this.isEmriBarkoduGecerliMi = true;
1219
+ this.getReceiptFromProductions();
1220
+ }
1221
+ else {
1222
+ this.isEmriBarkoduGecerliMi = false;
1223
+ }
1224
+ },
1225
+ error: e => {
1226
+ this.isEmriBarkoduGecerliMi = false;
1227
+ this.confirmation.status$.subscribe({
1228
+ next: () => {
1229
+ this.clearAll();
1230
+ }
1231
+ });
1232
+ },
1233
+ });
1234
+ this.isLoading = false;
1235
+ }
1236
+ clearAll() {
1237
+ this.isEmriBarkoduGecerliMi = false;
1238
+ this.isEmriBarkodu = null;
1239
+ this.productionOrder = null;
1240
+ this.receiptFromProductions = null;
1241
+ this.ngZone.run(() => {
1242
+ setTimeout(() => {
1243
+ this.nmbBoxBarkodNumarasi.instance.focus();
1244
+ }, 0);
1245
+ });
1246
+ }
1247
+ generateReport() {
1248
+ this.service.getBarcodeInfo(this.isEmriBarkodu, this.selectedReceiptFromProductions.docEntry, this.printingQuantity).subscribe({
1249
+ next: response => {
1250
+ const base64Data = response.base64; // base64 string (sadece veri kısmı, "data:application/pdf;base64,..." değilse)
1251
+ // Base64'ü decode edip binary veriye çeviriyoruz
1252
+ const byteCharacters = atob(base64Data);
1253
+ const byteNumbers = new Array(byteCharacters.length);
1254
+ for (let i = 0; i < byteCharacters.length; i++) {
1255
+ byteNumbers[i] = byteCharacters.charCodeAt(i);
1256
+ }
1257
+ const byteArray = new Uint8Array(byteNumbers);
1258
+ // Blob oluşturuyoruz
1259
+ const blob = new Blob([byteArray], { type: 'application/pdf' });
1260
+ // Blob'tan URL oluşturup yeni sekmede açıyoruz (veya download edebilirsin)
1261
+ const blobUrl = URL.createObjectURL(blob);
1262
+ this.pdfSrc = this.bypassAndSanitize(blobUrl);
1263
+ },
1264
+ });
1265
+ }
1266
+ bypassAndSanitize(url) {
1267
+ return this.sanitizer.bypassSecurityTrustResourceUrl(url);
1268
+ }
1269
+ async getReceiptFromProductions() {
1270
+ if (!this.isEmriBarkodu) {
1271
+ return;
1272
+ }
1273
+ this.isLoading = true;
1274
+ this.service.getReceiptFromProductions(this.isEmriBarkodu + '').subscribe({
1275
+ next: response => {
1276
+ if (response?.isSuccessful) {
1277
+ this.receiptFromProductions = response.items;
1278
+ }
1279
+ else {
1280
+ this.confirmation.status$.subscribe({
1281
+ next: () => {
1282
+ this.clearAll();
1283
+ }
1284
+ });
1285
+ }
1286
+ },
1287
+ error: e => {
1288
+ this.confirmation.status$.subscribe({
1289
+ next: () => {
1290
+ this.clearAll();
1291
+ }
1292
+ });
1293
+ },
1294
+ });
1295
+ this.isLoading = false;
1296
+ }
1297
+ selectReceiptFromProductions(e) {
1298
+ e.component.byKey(e.currentSelectedRowKeys[0]).done(receiptFromProductions => {
1299
+ if (receiptFromProductions) {
1300
+ this.selectedReceiptFromProductions = receiptFromProductions;
1301
+ }
1302
+ });
1303
+ }
1304
+ }
1305
+ 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: i6$1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
1306
+ 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 }], 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\" [(value)]=\"isEmriBarkodu\"\r\n (onChange)=\"getProductionOrder()\" (onEnterKey)=\"getProductionOrder()\" [disabled]=\"isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"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 class=\"mt-3\" [dataSource]=\"receiptFromProductions\" [columnAutoWidth]=\"true\"\r\n (onSelectionChanged)=\"selectReceiptFromProductions($event)\">\r\n <dxi-column dataField=\"quantity\"></dxi-column>\r\n <dxi-column dataField=\"docDate\"></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> <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\" webkitallowfullscreen\r\n mozallowfullscreen allowfullscreen></iframe>\r\n </ng-template>\r\n <ng-template #abpFooter> <button type=\"button\" class=\"btn btn-secondary\" abpClose> {{\r\n 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n</abp-modal>", 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: i9.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: i9.DxoSelectionComponent, selector: "dxo-selection", inputs: ["allowSelectAll", "deferred", "mode", "selectAllMode", "showCheckBoxesMode", "recursive"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }], changeDetection: i0.ChangeDetectionStrategy.Default });
1307
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesComponent, decorators: [{
1308
+ type: Component,
1309
+ 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\" [(value)]=\"isEmriBarkodu\"\r\n (onChange)=\"getProductionOrder()\" (onEnterKey)=\"getProductionOrder()\" [disabled]=\"isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"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 class=\"mt-3\" [dataSource]=\"receiptFromProductions\" [columnAutoWidth]=\"true\"\r\n (onSelectionChanged)=\"selectReceiptFromProductions($event)\">\r\n <dxi-column dataField=\"quantity\"></dxi-column>\r\n <dxi-column dataField=\"docDate\"></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> <iframe *ngIf=\"pdfSrc\" [src]=\"pdfSrc\" width=\"100%\" height=\"300\" webkitallowfullscreen\r\n mozallowfullscreen allowfullscreen></iframe>\r\n </ng-template>\r\n <ng-template #abpFooter> <button type=\"button\" class=\"btn btn-secondary\" abpClose> {{\r\n 'UretimYonetimi::CreateBarcodes.Close' | abpLocalization }}\r\n </button>\r\n </ng-template>\r\n</abp-modal>" }]
1310
+ }], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i1.ListService }, { type: i1.TrackByService }, { type: HitCreateBarcodesService }, { type: i3.ConfirmationService }, { type: HitProductionOrdersService }, { type: i6$1.DomSanitizer }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
1311
+ type: ViewChild,
1312
+ args: ['barkodNumarasiRef', { static: false }]
1313
+ }] } });
1314
+
1315
+ const routes$1 = [
1316
+ {
1317
+ path: '',
1318
+ component: HitCreateBarcodesComponent,
1319
+ canActivate: [AuthGuard, PermissionGuard],
1320
+ },
1321
+ ];
1322
+ class HitCreateBarcodesRoutingModule {
1323
+ }
1324
+ HitCreateBarcodesRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1325
+ HitCreateBarcodesRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
1326
+ HitCreateBarcodesRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesRoutingModule, imports: [RouterModule.forChild(routes$1), RouterModule] });
1327
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesRoutingModule, decorators: [{
1328
+ type: NgModule,
1329
+ args: [{
1330
+ imports: [RouterModule.forChild(routes$1)],
1331
+ exports: [RouterModule],
1332
+ }]
1333
+ }] });
1334
+
1335
+ class HitCreateBarcodesModule {
1336
+ }
1337
+ HitCreateBarcodesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1338
+ HitCreateBarcodesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesModule, declarations: [HitCreateBarcodesComponent], imports: [HitCreateBarcodesRoutingModule,
1339
+ CoreModule,
1340
+ ThemeSharedModule,
1341
+ CommercialUiModule,
1342
+ NgxValidateCoreModule,
1343
+ NgbCollapseModule,
1344
+ NgbDatepickerModule,
1345
+ NgbDropdownModule,
1346
+ PageModule,
1347
+ DxButtonModule,
1348
+ DxNumberBoxModule,
1349
+ DxTextBoxModule,
1350
+ DxDataGridModule] });
1351
+ HitCreateBarcodesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesModule, imports: [HitCreateBarcodesRoutingModule,
1352
+ CoreModule,
1353
+ ThemeSharedModule,
1354
+ CommercialUiModule,
1355
+ NgxValidateCoreModule,
1356
+ NgbCollapseModule,
1357
+ NgbDatepickerModule,
1358
+ NgbDropdownModule,
1359
+ PageModule,
1360
+ DxButtonModule,
1361
+ DxNumberBoxModule,
1362
+ DxTextBoxModule,
1363
+ DxDataGridModule] });
1364
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitCreateBarcodesModule, decorators: [{
1365
+ type: NgModule,
1366
+ args: [{
1367
+ declarations: [HitCreateBarcodesComponent],
1368
+ imports: [
1369
+ HitCreateBarcodesRoutingModule,
1370
+ CoreModule,
1371
+ ThemeSharedModule,
1372
+ CommercialUiModule,
1373
+ NgxValidateCoreModule,
1374
+ NgbCollapseModule,
1375
+ NgbDatepickerModule,
1376
+ NgbDropdownModule,
1377
+ PageModule,
1378
+ DxButtonModule,
1379
+ DxNumberBoxModule,
1380
+ DxTextBoxModule,
1381
+ DxDataGridModule,
1382
+ ],
1383
+ }]
1384
+ }] });
1385
+ function loadHitCreateBarcodesAsChild() {
1386
+ return Promise.resolve(HitCreateBarcodesModule);
1387
+ }
1388
+
1389
+ const routes = [
1390
+ {
1391
+ path: '',
1392
+ pathMatch: 'full',
1393
+ component: UretimYonetimiComponent,
1394
+ },
1395
+ { path: 'create-barcodes', loadChildren: loadHitCreateBarcodesAsChild },
1396
+ { path: 'production-orders', loadChildren: loadHitProductionOrdersAsChild },
1397
+ { path: 'issues-for-productions', loadChildren: loadHitIssuesForProductionsAsChild },
1398
+ { path: 'receipt-from-productions', loadChildren: loadHitReceiptFromProductionsAsChild }
1399
+ ];
1400
+ class UretimYonetimiRoutingModule {
1401
+ }
1402
+ UretimYonetimiRoutingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiRoutingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1403
+ UretimYonetimiRoutingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiRoutingModule, imports: [i1$1.RouterModule], exports: [RouterModule] });
1404
+ UretimYonetimiRoutingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiRoutingModule, imports: [RouterModule.forChild(routes), RouterModule] });
1405
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiRoutingModule, decorators: [{
1406
+ type: NgModule,
1407
+ args: [{
1408
+ imports: [RouterModule.forChild(routes)],
1409
+ exports: [RouterModule],
1410
+ }]
1411
+ }] });
1412
+
1413
+ class UretimYonetimiModule {
1414
+ constructor(replacementService, localizationService) {
1415
+ this.replacementService = replacementService;
1416
+ this.localizationService = localizationService;
1417
+ replacementService.add({
1418
+ key: 'ProductionOrderComponentKey',
1419
+ component: HitProductionOrdersComponent,
1420
+ });
1421
+ replacementService.add({
1422
+ key: 'ReceiptFromProductionsKey',
1423
+ component: HitReceiptFromProductionsComponent,
1424
+ });
1425
+ replacementService.add({
1426
+ key: 'IssuesForProductionsKey',
1427
+ component: HitIssuesForProductionsComponent,
1428
+ });
1429
+ replacementService.add({
1430
+ key: 'CreateBarcodesKey',
1431
+ component: HitCreateBarcodesComponent,
1432
+ });
1433
+ }
1434
+ static forChild() {
1435
+ return {
1436
+ ngModule: UretimYonetimiModule,
1437
+ providers: [],
1438
+ };
1439
+ }
1440
+ static forLazy() {
1441
+ return new LazyModuleFactory(UretimYonetimiModule.forChild());
1442
+ }
1443
+ ;
1444
+ }
1445
+ 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 });
1446
+ UretimYonetimiModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiModule, declarations: [UretimYonetimiComponent], imports: [CoreModule, ThemeSharedModule, UretimYonetimiRoutingModule], exports: [UretimYonetimiComponent] });
1447
+ UretimYonetimiModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiModule, imports: [CoreModule, ThemeSharedModule, UretimYonetimiRoutingModule] });
1448
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: UretimYonetimiModule, decorators: [{
1449
+ type: NgModule,
1450
+ args: [{
1451
+ declarations: [UretimYonetimiComponent],
1452
+ imports: [CoreModule, ThemeSharedModule, UretimYonetimiRoutingModule],
1453
+ exports: [UretimYonetimiComponent],
1454
+ }]
1455
+ }], ctorParameters: function () { return [{ type: i1.ReplaceableComponentsService }, { type: i1.LocalizationService }]; } });
1456
+
1457
+ /*
1458
+ * Public API Surface of uretim-yonetimi
1459
+ */
1460
+
1461
+ /**
1462
+ * Generated bundle index. Do not edit.
1463
+ */
1464
+
1465
+ export { UretimYonetimiComponent, UretimYonetimiModule, UretimYonetimiService };
1466
+ //# sourceMappingURL=hitsoft-uretim-yonetimi.mjs.map