@hitsoft/uretim-yonetimi 1.0.29 → 1.0.31

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.
@@ -3,7 +3,7 @@ import { Component, Injectable, ChangeDetectionStrategy, ViewChild, NgModule } f
3
3
  import * as i1 from '@abp/ng.core';
4
4
  import { ListService, AuthGuard, PermissionGuard, CoreModule, LazyModuleFactory } from '@abp/ng.core';
5
5
  import * as i3 from '@abp/ng.theme.shared';
6
- import { ThemeSharedModule } from '@abp/ng.theme.shared';
6
+ import { ThemeSharedModule, Confirmation } from '@abp/ng.theme.shared';
7
7
  import * as i1$1 from '@angular/router';
8
8
  import { RouterModule } from '@angular/router';
9
9
  import { NgbDateAdapter, NgbCollapseModule, NgbDatepickerModule, NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
@@ -1515,6 +1515,7 @@ class HitFillingControlComponent {
1515
1515
  this.searchBasildiMi = false;
1516
1516
  this.isEmriBarkoduGecerliMi = false;
1517
1517
  this.isLoading = false;
1518
+ this.isSaving = false;
1518
1519
  this.hatBilgisi = '';
1519
1520
  this.qrCode = '';
1520
1521
  this.lines = [];
@@ -1536,7 +1537,19 @@ class HitFillingControlComponent {
1536
1537
  this.searchBasildiMi = true;
1537
1538
  this.service.getFillingControlInfo(this.isEmriNo).subscribe({
1538
1539
  next: response => {
1540
+ var _a;
1539
1541
  if (response === null || response === void 0 ? void 0 : response.isSuccessful) {
1542
+ const status = (((_a = response.items) === null || _a === void 0 ? void 0 : _a.status) || '').toString().toUpperCase();
1543
+ if (status === 'P') {
1544
+ this.confirmation.warn('', 'Bu üretim siparişi onaylanmamıştır, kontrol yapılamaz.', {
1545
+ hideYesBtn: true,
1546
+ cancelText: 'Kapat',
1547
+ dismissible: false,
1548
+ });
1549
+ this.clearAll();
1550
+ this.isLoading = false;
1551
+ return;
1552
+ }
1540
1553
  this.hatBilgisi = response.items.u_Hat;
1541
1554
  this.lines = response.items.lines;
1542
1555
  this.isEmriBarkoduGecerliMi = true;
@@ -1695,7 +1708,7 @@ class HitFillingControlComponent {
1695
1708
  this.focusQRInput();
1696
1709
  }
1697
1710
  save() {
1698
- if (!this.isEmriNo || this.lines.length === 0) {
1711
+ if (!this.isEmriNo || this.lines.length === 0 || this.isSaving) {
1699
1712
  return;
1700
1713
  }
1701
1714
  // Tüm kontroller tamamlanmış mı kontrolü
@@ -1716,6 +1729,7 @@ class HitFillingControlComponent {
1716
1729
  batchNumber: line.batchNumber || ''
1717
1730
  }))
1718
1731
  };
1732
+ this.isSaving = true;
1719
1733
  this.isLoading = true;
1720
1734
  this.service.saveFillingControl(saveData).subscribe({
1721
1735
  next: response => {
@@ -1727,9 +1741,11 @@ class HitFillingControlComponent {
1727
1741
  });
1728
1742
  this.clearAll();
1729
1743
  }
1744
+ this.isSaving = false;
1730
1745
  this.isLoading = false;
1731
1746
  },
1732
1747
  error: e => {
1748
+ this.isSaving = false;
1733
1749
  this.isLoading = false;
1734
1750
  this.confirmation.status$.subscribe({
1735
1751
  next: () => {
@@ -1747,6 +1763,7 @@ class HitFillingControlComponent {
1747
1763
  this.qrCode = '';
1748
1764
  this.lines = [];
1749
1765
  this.isDataLoadedFromDb = false;
1766
+ this.isSaving = false;
1750
1767
  this.focusOnIsEmriNo();
1751
1768
  }
1752
1769
  get showKazanDegisimiButton() {
@@ -1757,27 +1774,50 @@ class HitFillingControlComponent {
1757
1774
  this.lines.every(x => x.isControlled);
1758
1775
  }
1759
1776
  get isSaveButtonDisabled() {
1760
- // İş emri yoksa veya satır yoksa veya tüm satırlar kontrol edilmemişse disable
1777
+ // İş emri yoksa veya satır yoksa veya tüm satırlar kontrol edilmemişse veya kaydetme işlemi devam ediyorsa disable
1761
1778
  return !this.isEmriNo ||
1762
1779
  this.lines.length === 0 ||
1763
- !this.lines.every(x => x.isControlled);
1780
+ !this.lines.every(x => x.isControlled) ||
1781
+ this.isSaving;
1764
1782
  }
1765
1783
  kazanDegisimi() {
1766
- this.confirmation.warn('', 'Kazan değişim işlemi için kontrol edilen ürünler sıfırlanacaktır. Devam etmek istiyor musunuz?', {
1784
+ // İlk soru: Bu kazana ait tüm üretimden girişleri tamamladınız mı?
1785
+ this.confirmation.warn('', 'Bu kazana ait tüm üretimden girişleri tamamladınız mı?', {
1767
1786
  yesText: 'Evet',
1768
1787
  cancelText: 'Hayır'
1769
1788
  }).subscribe(status => {
1770
1789
  if (status === 'confirm') {
1771
- // Tüm satırların IsControlled alanını false yap
1772
- this.lines.forEach(line => {
1773
- line.isControlled = false;
1774
- line.batchNumber = '';
1790
+ // İkinci soru: Kazan değişimi öncesinde kazan YM fire çıkışı gerçekleştirildi mi?
1791
+ this.confirmation.warn('', 'Kazan değişimi öncesinde kazan YM fire çıkışı gerçekleştirildi mi?', {
1792
+ yesText: 'Evet',
1793
+ cancelText: 'Hayır'
1794
+ }).subscribe(status2 => {
1795
+ if (status2 === 'confirm') {
1796
+ // Üçüncü soru: Bileşen fire çıkışı gerçekleştirildi mi?
1797
+ this.confirmation.warn('', 'Bileşen fire çıkışı gerçekleştirildi mi?', {
1798
+ yesText: 'Evet',
1799
+ cancelText: 'Hayır'
1800
+ }).subscribe(status3 => {
1801
+ if (status3 === 'confirm') {
1802
+ // Tüm onaylar verildi, kazan değişimi işlemini gerçekleştir
1803
+ // Tüm satırların IsControlled alanını false yap
1804
+ this.lines.forEach(line => {
1805
+ line.isControlled = false;
1806
+ line.batchNumber = '';
1807
+ });
1808
+ // Grid'i refresh et
1809
+ this.dataGrid.instance.refresh();
1810
+ this.isDataLoadedFromDb = false; // Artık yeni veri girilecek
1811
+ // QR input'a focus et
1812
+ this.focusOnQrCode();
1813
+ }
1814
+ // status3 !== 'confirm' ise üçüncü soruya hayır dendi, işlem iptal
1815
+ });
1816
+ }
1817
+ // status2 !== 'confirm' ise ikinci soruya hayır dendi, işlem iptal
1775
1818
  });
1776
- // Grid'i refresh et
1777
- this.dataGrid.instance.refresh();
1778
- // QR input'a focus et
1779
- this.focusOnQrCode();
1780
1819
  }
1820
+ // status !== 'confirm' ise ilk soruya hayır dendi, işlem iptal
1781
1821
  });
1782
1822
  }
1783
1823
  focusOnIsEmriNo() {
@@ -1926,6 +1966,7 @@ class HitFillingReceiptFromProductionComponent {
1926
1966
  this.confirmation = confirmation;
1927
1967
  this.ngZone = ngZone;
1928
1968
  this.isLoading = false;
1969
+ this.isSaving = false;
1929
1970
  this.isWorkOrderLoaded = false;
1930
1971
  this.workOrderInfo = null;
1931
1972
  // Pallet controls
@@ -1987,6 +2028,7 @@ class HitFillingReceiptFromProductionComponent {
1987
2028
  return;
1988
2029
  }
1989
2030
  const salPackUn = this.workOrderInfo.salPackUn || 0;
2031
+ debugger;
1990
2032
  if (this.paletTipi === 'TAM') {
1991
2033
  // Tam Palet: Pallet height × Pieces per box
1992
2034
  const paletYukseklik = this.workOrderInfo.u_DKpaletyuseklik || 0;
@@ -1995,17 +2037,39 @@ class HitFillingReceiptFromProductionComponent {
1995
2037
  else {
1996
2038
  // Kısmi Palet: Koli count × Pieces per box
1997
2039
  const koliAdet = this.koliAdet || 0;
1998
- this.toplamMiktar = koliAdet * salPackUn;
1999
- }
2000
- }
2001
- save() {
2002
- return __awaiter(this, void 0, void 0, function* () {
2003
- if (!this.isEmriNo || !this.workOrderInfo || this.toplamMiktar <= 0) {
2004
- this.confirmation.warn('', 'Lütfen tüm alanları doldurun!', {
2040
+ const kismiMiktar = koliAdet * salPackUn;
2041
+ // Calculate TAM pallet quantity for comparison
2042
+ const paletYukseklik = this.workOrderInfo.u_DKpaletyuseklik || 0;
2043
+ const tamPaletMiktar = paletYukseklik * salPackUn;
2044
+ // KISMI quantity should not exceed TAM pallet quantity
2045
+ if (kismiMiktar > tamPaletMiktar) {
2046
+ this.toplamMiktar = tamPaletMiktar;
2047
+ // Reset to maximum allowed value asynchronously to avoid change detection loop
2048
+ setTimeout(() => {
2049
+ this.koliAdet = paletYukseklik;
2050
+ }, 0);
2051
+ this.confirmation.warn('', `Koli adedi ${paletYukseklik}'i geçemez! (TAM palet miktarı: ${tamPaletMiktar})`, {
2005
2052
  hideYesBtn: true,
2006
2053
  cancelText: 'Kapat',
2007
2054
  dismissible: false,
2008
2055
  });
2056
+ }
2057
+ else {
2058
+ this.toplamMiktar = kismiMiktar;
2059
+ }
2060
+ }
2061
+ }
2062
+ save() {
2063
+ return __awaiter(this, void 0, void 0, function* () {
2064
+ debugger;
2065
+ if (!this.isEmriNo || !this.workOrderInfo || this.toplamMiktar <= 0 || this.isSaving) {
2066
+ if (!this.isSaving) {
2067
+ this.confirmation.warn('', 'Lütfen tüm alanları doldurun!', {
2068
+ hideYesBtn: true,
2069
+ cancelText: 'Kapat',
2070
+ dismissible: false,
2071
+ });
2072
+ }
2009
2073
  return;
2010
2074
  }
2011
2075
  // Check if completed quantity will exceed planned quantity
@@ -2027,6 +2091,7 @@ class HitFillingReceiptFromProductionComponent {
2027
2091
  batchNumber: '',
2028
2092
  componentsToConsume: this.prepareComponentsToConsume()
2029
2093
  };
2094
+ this.isSaving = true;
2030
2095
  this.isLoading = true;
2031
2096
  this.service.createReceipt(saveData).subscribe({
2032
2097
  next: response => {
@@ -2038,9 +2103,11 @@ class HitFillingReceiptFromProductionComponent {
2038
2103
  });
2039
2104
  this.clearAll();
2040
2105
  }
2106
+ this.isSaving = false;
2041
2107
  this.isLoading = false;
2042
2108
  },
2043
2109
  error: e => {
2110
+ this.isSaving = false;
2044
2111
  this.isLoading = false;
2045
2112
  },
2046
2113
  });
@@ -2059,16 +2126,13 @@ class HitFillingReceiptFromProductionComponent {
2059
2126
  const controlledLines = this.workOrderInfo.lines.filter(line => line.isControlled && line.batchNumber);
2060
2127
  // For YM/151* products, consume by lot from control screen
2061
2128
  for (const line of controlledLines) {
2062
- const remainingQty = line.plannedQty - line.issuedQty;
2063
- if (remainingQty > 0) {
2064
- components.push({
2065
- itemCode: line.itemCode,
2066
- quantity: remainingQty,
2067
- warehouseCode: line.warehouse,
2068
- batchNumber: line.batchNumber,
2069
- baseLine: line.lineNum
2070
- });
2071
- }
2129
+ components.push({
2130
+ itemCode: line.itemCode,
2131
+ quantity: line.issuedQty,
2132
+ warehouseCode: line.warehouse,
2133
+ batchNumber: line.batchNumber,
2134
+ baseLine: line.lineNum
2135
+ });
2072
2136
  }
2073
2137
  // For other components, use "Teyit sonrası otomatik çekme" logic
2074
2138
  // (This would be handled by the backend with FIFO for batch/serial items)
@@ -2081,13 +2145,15 @@ class HitFillingReceiptFromProductionComponent {
2081
2145
  this.paletTipi = 'TAM';
2082
2146
  this.koliAdet = null;
2083
2147
  this.toplamMiktar = 0;
2148
+ this.isSaving = false;
2084
2149
  this.focusOnIsEmriNo();
2085
2150
  }
2086
2151
  get isSaveButtonDisabled() {
2087
2152
  return !this.isEmriNo ||
2088
2153
  !this.workOrderInfo ||
2089
2154
  this.toplamMiktar <= 0 ||
2090
- (this.paletTipi === 'KISMI' && (!this.koliAdet || this.koliAdet <= 0));
2155
+ (this.paletTipi === 'KISMI' && (!this.koliAdet || this.koliAdet <= 0)) ||
2156
+ this.isSaving;
2091
2157
  }
2092
2158
  focusOnIsEmriNo() {
2093
2159
  this.ngZone.run(() => {
@@ -2206,6 +2272,14 @@ class HitBoilerYMProductWasteService {
2206
2272
  method: 'POST',
2207
2273
  url: `${this.resourceEndpoint}?docEntry=${input}`,
2208
2274
  }, { apiName: this.apiName });
2275
+ this.finishWorkOrderAndSaveWaste = (input) => this.restService.request({
2276
+ method: 'POST',
2277
+ url: `${this.resourceEndpoint}/finish-and-save-waste?docEntry=${input}`,
2278
+ }, { apiName: this.apiName });
2279
+ this.finishWorkOrderWithoutSavingWaste = (input) => this.restService.request({
2280
+ method: 'POST',
2281
+ url: `${this.resourceEndpoint}/finish-without-saving-waste?docEntry=${input}`,
2282
+ }, { apiName: this.apiName });
2209
2283
  this.resourceEndpoint = '/api/uretim-yonetimi/boiler-ym-product-waste';
2210
2284
  }
2211
2285
  }
@@ -2231,6 +2305,7 @@ class HitBoilerYMProductWasteComponent {
2231
2305
  dismissible: false,
2232
2306
  };
2233
2307
  this.isLoading = false;
2308
+ this.isSaving = false;
2234
2309
  this.isEmriBarkoduGecerliMi = false;
2235
2310
  this.searcheBasildiMi = false;
2236
2311
  this.boilerYMProductWastePostDto = new BoilerYMProductWastePostDto;
@@ -2295,35 +2370,47 @@ class HitBoilerYMProductWasteComponent {
2295
2370
  });
2296
2371
  }
2297
2372
  save() {
2298
- if (!this.isEmriBarkoduGecerliMi || !this.productionOrder) {
2373
+ if (!this.isEmriBarkoduGecerliMi || !this.productionOrder || this.isSaving) {
2299
2374
  this.focusWorkOrder();
2300
2375
  return;
2301
2376
  }
2302
- this.isLoading = true;
2303
- this.service.create(this.productionOrder.absoluteEntry).subscribe({
2304
- next: (response) => {
2305
- var _a;
2306
- if (response === null || response === void 0 ? void 0 : response.isSuccessful) {
2307
- this.confirmation
2308
- .success('', 'İşlem başarıyla tamamlandı.', this.options)
2309
- .subscribe(() => this.clearAll());
2310
- }
2311
- else {
2312
- const message = ((_a = response === null || response === void 0 ? void 0 : response.errors) === null || _a === void 0 ? void 0 : _a.length)
2313
- ? response.errors.join('\n')
2314
- : 'Fire işlemi sırasında bir hata oluştu.';
2315
- this.showError(message);
2316
- }
2317
- },
2318
- error: (error) => {
2319
- },
2320
- complete: () => {
2321
- this.clearAll();
2322
- },
2377
+ this.confirmation.warn('', 'Fire kaydını yapmak istediğinizden emin misiniz?', {
2378
+ yesText: 'Evet',
2379
+ cancelText: 'Hayır'
2380
+ }).subscribe((status) => {
2381
+ if (status !== Confirmation.Status.confirm) {
2382
+ return;
2383
+ }
2384
+ this.isSaving = true;
2385
+ this.isLoading = true;
2386
+ this.service.create(this.productionOrder.absoluteEntry).subscribe({
2387
+ next: (response) => {
2388
+ var _a;
2389
+ if (response === null || response === void 0 ? void 0 : response.isSuccessful) {
2390
+ this.confirmation
2391
+ .success('', 'İşlem başarıyla tamamlandı.', this.options)
2392
+ .subscribe(() => this.clearAll());
2393
+ }
2394
+ else {
2395
+ const message = ((_a = response === null || response === void 0 ? void 0 : response.errors) === null || _a === void 0 ? void 0 : _a.length)
2396
+ ? response.errors.join('\n')
2397
+ : 'Fire işlemi sırasında bir hata oluştu.';
2398
+ this.showError(message);
2399
+ }
2400
+ },
2401
+ error: (error) => {
2402
+ this.isSaving = false;
2403
+ this.isLoading = false;
2404
+ },
2405
+ complete: () => {
2406
+ this.clearAll();
2407
+ },
2408
+ });
2323
2409
  });
2324
2410
  }
2325
2411
  clearAll() {
2326
2412
  this.isLoading = false;
2413
+ this.isSaving = false;
2327
2414
  this.isEmriBarkoduGecerliMi = false;
2328
2415
  this.searcheBasildiMi = false;
2329
2416
  this.isEmriBarkodu = null;
@@ -2348,12 +2435,101 @@ class HitBoilerYMProductWasteComponent {
2348
2435
  this.confirmation.error('', message, this.options);
2349
2436
  notify({ message, type: 'error' });
2350
2437
  }
2438
+ finishWorkOrderAndSaveWaste() {
2439
+ debugger;
2440
+ if (!this.isEmriBarkoduGecerliMi || !this.productionOrder || this.isSaving) {
2441
+ this.focusWorkOrder();
2442
+ return;
2443
+ }
2444
+ this.confirmation.warn('', 'İş emrini bitirmek ve fireyi kaydetmek istediğinizden emin misiniz?', {
2445
+ yesText: 'Evet',
2446
+ cancelText: 'Hayır'
2447
+ }).subscribe((status) => {
2448
+ if (status !== Confirmation.Status.confirm) {
2449
+ return;
2450
+ }
2451
+ this.isSaving = true;
2452
+ this.isLoading = true;
2453
+ this.service.finishWorkOrderAndSaveWaste(this.productionOrder.absoluteEntry).subscribe({
2454
+ next: (response) => {
2455
+ var _a;
2456
+ debugger;
2457
+ if (response === null || response === void 0 ? void 0 : response.isSuccessful) {
2458
+ this.confirmation
2459
+ .success('', 'İş emri bitirildi ve fire kaydedildi.', this.options)
2460
+ .subscribe(() => this.clearAll());
2461
+ }
2462
+ else {
2463
+ const message = ((_a = response === null || response === void 0 ? void 0 : response.errors) === null || _a === void 0 ? void 0 : _a.length)
2464
+ ? response.errors.join('\n')
2465
+ : 'İş emri bitirme işlemi sırasında bir hata oluştu.';
2466
+ this.showError(message);
2467
+ this.isSaving = false;
2468
+ this.isLoading = false;
2469
+ }
2470
+ },
2471
+ error: (error) => {
2472
+ debugger;
2473
+ let message = error.error.error.message;
2474
+ message = message.length
2475
+ ? message
2476
+ : 'İş emri bitirme işlemi sırasında bir hata oluştu.';
2477
+ this.isSaving = false;
2478
+ this.isLoading = false;
2479
+ this.showError(message);
2480
+ },
2481
+ complete: () => {
2482
+ this.clearAll();
2483
+ },
2484
+ });
2485
+ });
2486
+ }
2487
+ finishWorkOrderWithoutSavingWaste() {
2488
+ if (!this.isEmriBarkoduGecerliMi || !this.productionOrder || this.isSaving) {
2489
+ this.focusWorkOrder();
2490
+ return;
2491
+ }
2492
+ this.confirmation.warn('', 'İş emrini bitirmek istediğinizden emin misiniz? (Fire kaydedilmeyecek)', {
2493
+ yesText: 'Evet',
2494
+ cancelText: 'Hayır'
2495
+ }).subscribe((status) => {
2496
+ if (status !== Confirmation.Status.confirm) {
2497
+ return;
2498
+ }
2499
+ this.isSaving = true;
2500
+ this.isLoading = true;
2501
+ this.service.finishWorkOrderWithoutSavingWaste(this.productionOrder.absoluteEntry).subscribe({
2502
+ next: (response) => {
2503
+ var _a;
2504
+ if (response === null || response === void 0 ? void 0 : response.isSuccessful) {
2505
+ this.confirmation
2506
+ .success('', 'İş emri bitirildi.', this.options)
2507
+ .subscribe(() => this.clearAll());
2508
+ }
2509
+ else {
2510
+ const message = ((_a = response === null || response === void 0 ? void 0 : response.errors) === null || _a === void 0 ? void 0 : _a.length)
2511
+ ? response.errors.join('\n')
2512
+ : 'İş emri bitirme işlemi sırasında bir hata oluştu.';
2513
+ this.showError(message);
2514
+ }
2515
+ },
2516
+ error: (error) => {
2517
+ this.showError('İş emri bitirme işlemi sırasında bir hata oluştu.');
2518
+ this.isSaving = false;
2519
+ this.isLoading = false;
2520
+ },
2521
+ complete: () => {
2522
+ this.clearAll();
2523
+ },
2524
+ });
2525
+ });
2526
+ }
2351
2527
  }
2352
2528
  HitBoilerYMProductWasteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitBoilerYMProductWasteComponent, deps: [{ token: HitBoilerYMProductWasteService }, { token: i3.ConfirmationService }, { token: i0.NgZone }, { token: HitProductionOrdersService }, { token: HitFillingControlService }], target: i0.ɵɵFactoryTarget.Component });
2353
- HitBoilerYMProductWasteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitBoilerYMProductWasteComponent, selector: "lib-hit-boiler-ym-product-waste", 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::BoilerYMProductWaste.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)=\"save()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi\">\r\n <i class=\"fa fa-save me-1\"></i>\r\n {{ 'UretimYonetimi::BoilerYMProductWaste.Save' | 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 [disabled]=\"isLoading\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::BoilerYMProductWaste.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [min]=\"1\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ConveyorInformation' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_Hat\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ProductDescription' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.BatchNumber' | abpLocalization\"\r\n [(value)]=\"ymProduct.batchNumber\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ItemCode' | abpLocalization\"\r\n [(value)]=\"ymProduct.itemCode\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ProductQuantity' | abpLocalization\"\r\n [(value)]=\"ymProduct.batchQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [":host{display:block}dx-number-box,dx-text-box{width:100%}dx-data-grid{width:100%}\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.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" }] });
2529
+ HitBoilerYMProductWasteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitBoilerYMProductWasteComponent, selector: "lib-hit-boiler-ym-product-waste", 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::BoilerYMProductWaste.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row pt-2 g-2\">\r\n <div class=\"col-12 col-md-6 col-lg-3\">\r\n <button class=\"btn btn-success btn-sm w-100\" type=\"button\" (click)=\"save()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi || isSaving\">\r\n <i class=\"fa fa-save me-1\"></i>\r\n Kazan De\u011Fi\u015Fimi \u00D6ncesi Fire Giri\u015Fi\r\n </button>\r\n </div>\r\n <div class=\"col-12 col-md-6 col-lg-3\">\r\n <button class=\"btn btn-primary btn-sm w-100\" type=\"button\" (click)=\"finishWorkOrderAndSaveWaste()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi || isSaving\">\r\n <i class=\"fa fa-check-double me-1\"></i>\r\n \u0130\u015F Emrini Bitir ve Fireyi Kaydet\r\n </button>\r\n </div>\r\n <div class=\"col-12 col-md-6 col-lg-3\">\r\n <button class=\"btn btn-info btn-sm w-100\" type=\"button\" (click)=\"finishWorkOrderWithoutSavingWaste()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi || isSaving\">\r\n <i class=\"fa fa-check me-1\"></i>\r\n \u0130\u015F Emrini Bitir ve Fireyi Kaydetme\r\n </button>\r\n </div>\r\n <div class=\"col-12 col-md-6 col-lg-3\">\r\n <button class=\"btn btn-warning btn-sm w-100\" type=\"button\" (click)=\"clearAll()\"\r\n [disabled]=\"isLoading\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::BoilerYMProductWaste.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [min]=\"1\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ConveyorInformation' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_Hat\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ProductDescription' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.BatchNumber' | abpLocalization\"\r\n [(value)]=\"ymProduct.batchNumber\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ItemCode' | abpLocalization\"\r\n [(value)]=\"ymProduct.itemCode\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ProductQuantity' | abpLocalization\"\r\n [(value)]=\"ymProduct.batchQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [":host{display:block}dx-number-box,dx-text-box{width:100%}dx-data-grid{width:100%}\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.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" }] });
2354
2530
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitBoilerYMProductWasteComponent, decorators: [{
2355
2531
  type: Component,
2356
- args: [{ selector: 'lib-hit-boiler-ym-product-waste', 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::BoilerYMProductWaste.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)=\"save()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi\">\r\n <i class=\"fa fa-save me-1\"></i>\r\n {{ 'UretimYonetimi::BoilerYMProductWaste.Save' | 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 [disabled]=\"isLoading\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::BoilerYMProductWaste.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [min]=\"1\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ConveyorInformation' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_Hat\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ProductDescription' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.BatchNumber' | abpLocalization\"\r\n [(value)]=\"ymProduct.batchNumber\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ItemCode' | abpLocalization\"\r\n [(value)]=\"ymProduct.itemCode\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ProductQuantity' | abpLocalization\"\r\n [(value)]=\"ymProduct.batchQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [":host{display:block}dx-number-box,dx-text-box{width:100%}dx-data-grid{width:100%}\n"] }]
2532
+ args: [{ selector: 'lib-hit-boiler-ym-product-waste', 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::BoilerYMProductWaste.Title' | abpLocalization }}\r\n </h3>\r\n </div>\r\n <div class=\"row pt-2 g-2\">\r\n <div class=\"col-12 col-md-6 col-lg-3\">\r\n <button class=\"btn btn-success btn-sm w-100\" type=\"button\" (click)=\"save()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi || isSaving\">\r\n <i class=\"fa fa-save me-1\"></i>\r\n Kazan De\u011Fi\u015Fimi \u00D6ncesi Fire Giri\u015Fi\r\n </button>\r\n </div>\r\n <div class=\"col-12 col-md-6 col-lg-3\">\r\n <button class=\"btn btn-primary btn-sm w-100\" type=\"button\" (click)=\"finishWorkOrderAndSaveWaste()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi || isSaving\">\r\n <i class=\"fa fa-check-double me-1\"></i>\r\n \u0130\u015F Emrini Bitir ve Fireyi Kaydet\r\n </button>\r\n </div>\r\n <div class=\"col-12 col-md-6 col-lg-3\">\r\n <button class=\"btn btn-info btn-sm w-100\" type=\"button\" (click)=\"finishWorkOrderWithoutSavingWaste()\"\r\n [disabled]=\"!isEmriBarkoduGecerliMi || isSaving\">\r\n <i class=\"fa fa-check me-1\"></i>\r\n \u0130\u015F Emrini Bitir ve Fireyi Kaydetme\r\n </button>\r\n </div>\r\n <div class=\"col-12 col-md-6 col-lg-3\">\r\n <button class=\"btn btn-warning btn-sm w-100\" type=\"button\" (click)=\"clearAll()\"\r\n [disabled]=\"isLoading\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::BoilerYMProductWaste.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [min]=\"1\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"isEmriBarkodu\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isEmriBarkoduGecerliMi\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isEmriBarkoduGecerliMi\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ConveyorInformation' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_Hat\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ProductDescription' | abpLocalization\"\r\n [(value)]=\"productionOrder.productDescription\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.BatchNumber' | abpLocalization\"\r\n [(value)]=\"ymProduct.batchNumber\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ItemCode' | abpLocalization\"\r\n [(value)]=\"ymProduct.itemCode\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-number-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::BoilerYMProductWaste.ProductQuantity' | abpLocalization\"\r\n [(value)]=\"ymProduct.batchQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [":host{display:block}dx-number-box,dx-text-box{width:100%}dx-data-grid{width:100%}\n"] }]
2357
2533
  }], ctorParameters: function () { return [{ type: HitBoilerYMProductWasteService }, { type: i3.ConfirmationService }, { type: i0.NgZone }, { type: HitProductionOrdersService }, { type: HitFillingControlService }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
2358
2534
  type: ViewChild,
2359
2535
  args: ['barkodNumarasiRef', { static: false }]
@@ -2492,6 +2668,7 @@ class HitComponentWastageComponent {
2492
2668
  dismissible: false,
2493
2669
  };
2494
2670
  this.isLoading = false;
2671
+ this.isSaving = false;
2495
2672
  this.isWorkOrderNoValid = false;
2496
2673
  this.searcheBasildiMi = false;
2497
2674
  this.componentWastagePostDto = new ComponentWastagePostDto;
@@ -2638,10 +2815,11 @@ class HitComponentWastageComponent {
2638
2815
  });
2639
2816
  }
2640
2817
  save() {
2641
- if (!this.isWorkOrderNoValid || !this.componentWastagePostDto) {
2818
+ if (!this.isWorkOrderNoValid || !this.componentWastagePostDto || this.isSaving) {
2642
2819
  this.focusWorkOrder();
2643
2820
  return;
2644
2821
  }
2822
+ this.isSaving = true;
2645
2823
  this.isLoading = true;
2646
2824
  this.componentWastagePostDto.documentLines.forEach(line => {
2647
2825
  line.baseEntry = this.productionOrder.absoluteEntry;
@@ -2662,6 +2840,8 @@ class HitComponentWastageComponent {
2662
2840
  }
2663
2841
  },
2664
2842
  error: (error) => {
2843
+ this.isSaving = false;
2844
+ this.isLoading = false;
2665
2845
  },
2666
2846
  complete: () => {
2667
2847
  this.clearAll();
@@ -2674,6 +2854,7 @@ class HitComponentWastageComponent {
2674
2854
  this.workOrderNo = null;
2675
2855
  this.productionOrder = null;
2676
2856
  this.componentWastagePostDto = new ComponentWastagePostDto;
2857
+ this.isSaving = false;
2677
2858
  this.isLoading = false;
2678
2859
  this.lookupDataSourceItemCodes = {};
2679
2860
  this.ngZone.run(() => {
@@ -2696,10 +2877,10 @@ class HitComponentWastageComponent {
2696
2877
  }
2697
2878
  }
2698
2879
  HitComponentWastageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitComponentWastageComponent, deps: [{ token: HitComponentWastageService }, { token: i3.ConfirmationService }, { token: i0.NgZone }, { token: HitProductionOrdersService }], target: i0.ɵɵFactoryTarget.Component });
2699
- HitComponentWastageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitComponentWastageComponent, selector: "lib-hit-component-wastage", viewQueries: [{ propertyName: "nmbBoxBarkodNumarasi", first: true, predicate: ["barkodNumarasiRef"], descendants: true }, { propertyName: "componentWastageLinesGrid", first: true, predicate: ["getComponentWastageLinesGrid"], 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::ComponentWastage.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)=\"save()\"\r\n [disabled]=\"!isWorkOrderNoValid\">\r\n <i class=\"fa fa-save me-1\"></i>\r\n {{ 'UretimYonetimi::ComponentWastage.Save' | 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 [disabled]=\"isLoading\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::ComponentWastage.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [min]=\"1\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"workOrderNo\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isWorkOrderNoValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isWorkOrderNoValid\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isWorkOrderNoValid\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.ConveyorInformation' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_Hat\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.ProductDescription' | 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::ComponentWastage.ProductQuantity' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n <div class=\"mt-3\">\r\n <dx-data-grid #getComponentWastageLinesGrid\r\n [dataSource]=\"componentWastagePostDto.documentLines\"\r\n [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [sorting]=\"{ mode: 'none' }\"\r\n [repaintChangesOnly]=\"true\"\r\n [rowAlternationEnabled]=\"true\"\r\n (onToolbarPreparing)=\"onToolbarPreparing($event)\">\r\n <dxo-editing\r\n mode=\"row\"\r\n [newRowPosition]=\"'last'\"\r\n [allowDeleting]=\"true\"\r\n [allowUpdating]=\"true\"\r\n [useIcons]=\"true\">\r\n </dxo-editing>\r\n <dxi-column dataField=\"baseLine\" [minWidth]=\"250\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ItemCode' | abpLocalization}}\">\r\n <dxo-lookup style=\"width:100%;\"\r\n [dataSource]=\"lookupDataSourceItemCodes\"\r\n displayExpr=\"itemName\"\r\n valueExpr=\"lineNum\">\r\n </dxo-lookup>\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNedeni\" [minWidth]=\"125\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.CauseOfWastage' | abpLocalization}}\">\r\n <dxo-lookup\r\n [dataSource]=\"lookupDataSourceCauseOfWastages\"\r\n displayExpr=\"name\"\r\n dataType=\"string\"\r\n valueExpr=\"id\">\r\n </dxo-lookup>\r\n <dxi-validation-rule\r\n type=\"required\"\r\n dataType=\"string\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"quantity\"\r\n dataType=\"number\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.QuantityOfWastage' | abpLocalization}}\">\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n <dxi-validation-rule\r\n type=\"numeric\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNDesc\"\r\n dataType=\"string\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.DescOfWastage' | abpLocalization}}\">\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"componentWastages && componentWastages.length && isWorkOrderNoValid\">\r\n <div>\r\n <h5>{{ 'UretimYonetimi::ComponentWastage.ComponentWastageRecords' | abpLocalization }}</h5>\r\n </div>\r\n <dx-data-grid #instanceComponentWastagesGrid\r\n [dataSource]=\"componentWastages\"\r\n [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [sorting]=\"{ mode: 'none' }\"\r\n [repaintChangesOnly]=\"true\"\r\n [rowAlternationEnabled]=\"true\">\r\n <dxi-column dataField=\"docEntry\" [minWidth]=\"50\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.DocEntry' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"itemName\" [minWidth]=\"250\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.ItemName' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"fireNedeniAdi\" [minWidth]=\"125\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.CauseOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"quantity\"\r\n dataType=\"number\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.QuantityOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNDesc\"\r\n dataType=\"string\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.DescOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [":host{display:block}dx-number-box,dx-text-box{width:100%}dx-data-grid{width:100%}\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: i7$1.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i7$1.DxoLookupComponent, selector: "dxo-lookup", inputs: ["allowClearing", "calculateCellValue", "dataSource", "displayExpr", "valueExpr"] }, { kind: "component", type: i7$1.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }, { kind: "component", type: i7$1.DxoEditingComponent, selector: "dxo-editing", inputs: ["allowAdding", "allowDeleting", "allowUpdating", "changes", "confirmDelete", "editColumnName", "editRowKey", "form", "mode", "newRowPosition", "popup", "refreshMode", "selectTextOnEditStart", "startEditAction", "texts", "useIcons", "allowAddShape", "allowChangeConnection", "allowChangeConnectorPoints", "allowChangeConnectorText", "allowChangeShapeText", "allowDeleteConnector", "allowDeleteShape", "allowMoveShape", "allowResizeShape", "allowDependencyAdding", "allowDependencyDeleting", "allowResourceAdding", "allowResourceDeleting", "allowResourceUpdating", "allowTaskAdding", "allowTaskDeleting", "allowTaskResourceUpdating", "allowTaskUpdating", "enabled", "allowDragging", "allowResizing", "allowTimeZoneEditing"], outputs: ["changesChange", "editColumnNameChange", "editRowKeyChange"] }, { kind: "component", type: i8.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }] });
2880
+ HitComponentWastageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: HitComponentWastageComponent, selector: "lib-hit-component-wastage", viewQueries: [{ propertyName: "nmbBoxBarkodNumarasi", first: true, predicate: ["barkodNumarasiRef"], descendants: true }, { propertyName: "componentWastageLinesGrid", first: true, predicate: ["getComponentWastageLinesGrid"], 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::ComponentWastage.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)=\"save()\"\r\n [disabled]=\"!isWorkOrderNoValid || isSaving\">\r\n <i class=\"fa fa-save me-1\"></i>\r\n {{ 'UretimYonetimi::ComponentWastage.Save' | 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 [disabled]=\"isLoading\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::ComponentWastage.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [min]=\"1\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"workOrderNo\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isWorkOrderNoValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isWorkOrderNoValid\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isWorkOrderNoValid\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.ConveyorInformation' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_Hat\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.ProductDescription' | 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::ComponentWastage.ProductQuantity' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n <div class=\"mt-3\">\r\n <dx-data-grid #getComponentWastageLinesGrid\r\n [dataSource]=\"componentWastagePostDto.documentLines\"\r\n [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [sorting]=\"{ mode: 'none' }\"\r\n [repaintChangesOnly]=\"true\"\r\n [rowAlternationEnabled]=\"true\"\r\n (onToolbarPreparing)=\"onToolbarPreparing($event)\">\r\n <dxo-editing\r\n mode=\"row\"\r\n [newRowPosition]=\"'last'\"\r\n [allowDeleting]=\"true\"\r\n [allowUpdating]=\"true\"\r\n [useIcons]=\"true\">\r\n </dxo-editing>\r\n <dxi-column dataField=\"baseLine\" [minWidth]=\"250\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ItemCode' | abpLocalization}}\">\r\n <dxo-lookup style=\"width:100%;\"\r\n [dataSource]=\"lookupDataSourceItemCodes\"\r\n displayExpr=\"itemName\"\r\n valueExpr=\"lineNum\">\r\n </dxo-lookup>\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNedeni\" [minWidth]=\"125\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.CauseOfWastage' | abpLocalization}}\">\r\n <dxo-lookup\r\n [dataSource]=\"lookupDataSourceCauseOfWastages\"\r\n displayExpr=\"name\"\r\n dataType=\"string\"\r\n valueExpr=\"id\">\r\n </dxo-lookup>\r\n <dxi-validation-rule\r\n type=\"required\"\r\n dataType=\"string\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"quantity\"\r\n dataType=\"number\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.QuantityOfWastage' | abpLocalization}}\">\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n <dxi-validation-rule\r\n type=\"numeric\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNDesc\"\r\n dataType=\"string\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.DescOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"componentWastages && componentWastages.length && isWorkOrderNoValid\">\r\n <div>\r\n <h5>{{ 'UretimYonetimi::ComponentWastage.ComponentWastageRecords' | abpLocalization }}</h5>\r\n </div>\r\n <dx-data-grid #instanceComponentWastagesGrid\r\n [dataSource]=\"componentWastages\"\r\n [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [sorting]=\"{ mode: 'none' }\"\r\n [repaintChangesOnly]=\"true\"\r\n [rowAlternationEnabled]=\"true\">\r\n <dxi-column dataField=\"docEntry\" [minWidth]=\"50\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.DocEntry' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"itemName\" [minWidth]=\"250\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.ItemName' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"fireNedeniAdi\" [minWidth]=\"125\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.CauseOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"quantity\"\r\n dataType=\"number\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.QuantityOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNDesc\"\r\n dataType=\"string\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.DescOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [":host{display:block}dx-number-box,dx-text-box{width:100%}dx-data-grid{width:100%}\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: i7$1.DxiColumnComponent, selector: "dxi-column", inputs: ["alignment", "allowEditing", "allowExporting", "allowFiltering", "allowFixing", "allowGrouping", "allowHeaderFiltering", "allowHiding", "allowReordering", "allowResizing", "allowSearch", "allowSorting", "autoExpandGroup", "buttons", "calculateCellValue", "calculateDisplayValue", "calculateFilterExpression", "calculateGroupValue", "calculateSortValue", "caption", "cellTemplate", "columns", "cssClass", "customizeText", "dataField", "dataType", "editCellTemplate", "editorOptions", "encodeHtml", "falseText", "filterOperations", "filterType", "filterValue", "filterValues", "fixed", "fixedPosition", "format", "formItem", "groupCellTemplate", "groupIndex", "headerCellTemplate", "headerFilter", "hidingPriority", "isBand", "lookup", "minWidth", "name", "ownerBand", "renderAsync", "selectedFilterOperation", "setCellValue", "showEditorAlways", "showInColumnChooser", "showWhenGrouped", "sortIndex", "sortingMethod", "sortOrder", "trueText", "type", "validationRules", "visible", "visibleIndex", "width"], outputs: ["filterValueChange", "filterValuesChange", "groupIndexChange", "selectedFilterOperationChange", "sortIndexChange", "sortOrderChange", "visibleChange", "visibleIndexChange"] }, { kind: "component", type: i7$1.DxoLookupComponent, selector: "dxo-lookup", inputs: ["allowClearing", "calculateCellValue", "dataSource", "displayExpr", "valueExpr"] }, { kind: "component", type: i7$1.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }, { kind: "component", type: i7$1.DxoEditingComponent, selector: "dxo-editing", inputs: ["allowAdding", "allowDeleting", "allowUpdating", "changes", "confirmDelete", "editColumnName", "editRowKey", "form", "mode", "newRowPosition", "popup", "refreshMode", "selectTextOnEditStart", "startEditAction", "texts", "useIcons", "allowAddShape", "allowChangeConnection", "allowChangeConnectorPoints", "allowChangeConnectorText", "allowChangeShapeText", "allowDeleteConnector", "allowDeleteShape", "allowMoveShape", "allowResizeShape", "allowDependencyAdding", "allowDependencyDeleting", "allowResourceAdding", "allowResourceDeleting", "allowResourceUpdating", "allowTaskAdding", "allowTaskDeleting", "allowTaskResourceUpdating", "allowTaskUpdating", "enabled", "allowDragging", "allowResizing", "allowTimeZoneEditing"], outputs: ["changesChange", "editColumnNameChange", "editRowKeyChange"] }, { kind: "component", type: i8.DxNumberBoxComponent, selector: "dx-number-box", inputs: ["accessKey", "activeStateEnabled", "buttons", "disabled", "elementAttr", "focusStateEnabled", "format", "height", "hint", "hoverStateEnabled", "inputAttr", "invalidValueMessage", "isValid", "label", "labelMode", "max", "min", "mode", "name", "placeholder", "readOnly", "rtlEnabled", "showClearButton", "showSpinButtons", "step", "stylingMode", "tabIndex", "text", "useLargeSpinButtons", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "visible", "width"], outputs: ["onChange", "onContentReady", "onCopy", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onKeyDown", "onKeyUp", "onOptionChanged", "onPaste", "onValueChanged", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formatChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "invalidValueMessageChange", "isValidChange", "labelChange", "labelModeChange", "maxChange", "minChange", "modeChange", "nameChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "showClearButtonChange", "showSpinButtonsChange", "stepChange", "stylingModeChange", "tabIndexChange", "textChange", "useLargeSpinButtonsChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "visibleChange", "widthChange", "onBlur"] }, { kind: "pipe", type: i1.LocalizationPipe, name: "abpLocalization" }] });
2700
2881
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: HitComponentWastageComponent, decorators: [{
2701
2882
  type: Component,
2702
- args: [{ selector: 'lib-hit-component-wastage', 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::ComponentWastage.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)=\"save()\"\r\n [disabled]=\"!isWorkOrderNoValid\">\r\n <i class=\"fa fa-save me-1\"></i>\r\n {{ 'UretimYonetimi::ComponentWastage.Save' | 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 [disabled]=\"isLoading\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::ComponentWastage.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [min]=\"1\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"workOrderNo\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isWorkOrderNoValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isWorkOrderNoValid\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isWorkOrderNoValid\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.ConveyorInformation' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_Hat\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.ProductDescription' | 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::ComponentWastage.ProductQuantity' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n <div class=\"mt-3\">\r\n <dx-data-grid #getComponentWastageLinesGrid\r\n [dataSource]=\"componentWastagePostDto.documentLines\"\r\n [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [sorting]=\"{ mode: 'none' }\"\r\n [repaintChangesOnly]=\"true\"\r\n [rowAlternationEnabled]=\"true\"\r\n (onToolbarPreparing)=\"onToolbarPreparing($event)\">\r\n <dxo-editing\r\n mode=\"row\"\r\n [newRowPosition]=\"'last'\"\r\n [allowDeleting]=\"true\"\r\n [allowUpdating]=\"true\"\r\n [useIcons]=\"true\">\r\n </dxo-editing>\r\n <dxi-column dataField=\"baseLine\" [minWidth]=\"250\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ItemCode' | abpLocalization}}\">\r\n <dxo-lookup style=\"width:100%;\"\r\n [dataSource]=\"lookupDataSourceItemCodes\"\r\n displayExpr=\"itemName\"\r\n valueExpr=\"lineNum\">\r\n </dxo-lookup>\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNedeni\" [minWidth]=\"125\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.CauseOfWastage' | abpLocalization}}\">\r\n <dxo-lookup\r\n [dataSource]=\"lookupDataSourceCauseOfWastages\"\r\n displayExpr=\"name\"\r\n dataType=\"string\"\r\n valueExpr=\"id\">\r\n </dxo-lookup>\r\n <dxi-validation-rule\r\n type=\"required\"\r\n dataType=\"string\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"quantity\"\r\n dataType=\"number\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.QuantityOfWastage' | abpLocalization}}\">\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n <dxi-validation-rule\r\n type=\"numeric\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNDesc\"\r\n dataType=\"string\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.DescOfWastage' | abpLocalization}}\">\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"componentWastages && componentWastages.length && isWorkOrderNoValid\">\r\n <div>\r\n <h5>{{ 'UretimYonetimi::ComponentWastage.ComponentWastageRecords' | abpLocalization }}</h5>\r\n </div>\r\n <dx-data-grid #instanceComponentWastagesGrid\r\n [dataSource]=\"componentWastages\"\r\n [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [sorting]=\"{ mode: 'none' }\"\r\n [repaintChangesOnly]=\"true\"\r\n [rowAlternationEnabled]=\"true\">\r\n <dxi-column dataField=\"docEntry\" [minWidth]=\"50\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.DocEntry' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"itemName\" [minWidth]=\"250\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.ItemName' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"fireNedeniAdi\" [minWidth]=\"125\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.CauseOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"quantity\"\r\n dataType=\"number\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.QuantityOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNDesc\"\r\n dataType=\"string\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.DescOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [":host{display:block}dx-number-box,dx-text-box{width:100%}dx-data-grid{width:100%}\n"] }]
2883
+ args: [{ selector: 'lib-hit-component-wastage', 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::ComponentWastage.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)=\"save()\"\r\n [disabled]=\"!isWorkOrderNoValid || isSaving\">\r\n <i class=\"fa fa-save me-1\"></i>\r\n {{ 'UretimYonetimi::ComponentWastage.Save' | 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 [disabled]=\"isLoading\">\r\n <i class=\"fa fa-broom me-1\"></i>\r\n {{ 'UretimYonetimi::ComponentWastage.Clean' | abpLocalization }}\r\n </button>\r\n </div>\r\n </div>\r\n </abp-page-toolbar-container>\r\n\r\n <div class=\"card mt-2\">\r\n <div class=\"card-body\">\r\n <div style=\"display: flex; align-items: center;\">\r\n <dx-number-box #barkodNumarasiRef class=\"me-1\" style=\"width:100%;\" [min]=\"1\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.WorkOrderNo' | abpLocalization\"\r\n [(value)]=\"workOrderNo\" (onEnterKey)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isWorkOrderNoValid\">\r\n </dx-number-box>\r\n <dx-button style=\"margin-top: 7.5px;\" icon=\"search\" type=\"default\" (onClick)=\"getProductionOrder()\"\r\n [disabled]=\"searcheBasildiMi || isWorkOrderNoValid\">\r\n </dx-button>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"isWorkOrderNoValid\">\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.ConveyorInformation' | abpLocalization\"\r\n [(value)]=\"productionOrder.u_Hat\"\r\n [disabled]=\"true\">\r\n </dx-text-box>\r\n <dx-text-box style=\"width:100%;\"\r\n [label]=\"'UretimYonetimi::ComponentWastage.ProductDescription' | 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::ComponentWastage.ProductQuantity' | abpLocalization\"\r\n [(value)]=\"productionOrder.plannedQuantity\"\r\n [disabled]=\"true\">\r\n </dx-number-box>\r\n <div class=\"mt-3\">\r\n <dx-data-grid #getComponentWastageLinesGrid\r\n [dataSource]=\"componentWastagePostDto.documentLines\"\r\n [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [sorting]=\"{ mode: 'none' }\"\r\n [repaintChangesOnly]=\"true\"\r\n [rowAlternationEnabled]=\"true\"\r\n (onToolbarPreparing)=\"onToolbarPreparing($event)\">\r\n <dxo-editing\r\n mode=\"row\"\r\n [newRowPosition]=\"'last'\"\r\n [allowDeleting]=\"true\"\r\n [allowUpdating]=\"true\"\r\n [useIcons]=\"true\">\r\n </dxo-editing>\r\n <dxi-column dataField=\"baseLine\" [minWidth]=\"250\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ItemCode' | abpLocalization}}\">\r\n <dxo-lookup style=\"width:100%;\"\r\n [dataSource]=\"lookupDataSourceItemCodes\"\r\n displayExpr=\"itemName\"\r\n valueExpr=\"lineNum\">\r\n </dxo-lookup>\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNedeni\" [minWidth]=\"125\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.CauseOfWastage' | abpLocalization}}\">\r\n <dxo-lookup\r\n [dataSource]=\"lookupDataSourceCauseOfWastages\"\r\n displayExpr=\"name\"\r\n dataType=\"string\"\r\n valueExpr=\"id\">\r\n </dxo-lookup>\r\n <dxi-validation-rule\r\n type=\"required\"\r\n dataType=\"string\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"quantity\"\r\n dataType=\"number\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.QuantityOfWastage' | abpLocalization}}\">\r\n <dxi-validation-rule\r\n type=\"required\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n <dxi-validation-rule\r\n type=\"numeric\"\r\n message=\"\">\r\n </dxi-validation-rule>\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNDesc\"\r\n dataType=\"string\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.DescOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n <div class=\"mt-3\" *ngIf=\"componentWastages && componentWastages.length && isWorkOrderNoValid\">\r\n <div>\r\n <h5>{{ 'UretimYonetimi::ComponentWastage.ComponentWastageRecords' | abpLocalization }}</h5>\r\n </div>\r\n <dx-data-grid #instanceComponentWastagesGrid\r\n [dataSource]=\"componentWastages\"\r\n [showBorders]=\"true\"\r\n [showRowLines]=\"true\"\r\n [columnAutoWidth]=\"true\"\r\n [sorting]=\"{ mode: 'none' }\"\r\n [repaintChangesOnly]=\"true\"\r\n [rowAlternationEnabled]=\"true\">\r\n <dxi-column dataField=\"docEntry\" [minWidth]=\"50\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.DocEntry' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"itemName\" [minWidth]=\"250\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.ItemName' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"fireNedeniAdi\" [minWidth]=\"125\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.CauseOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"quantity\"\r\n dataType=\"number\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.QuantityOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n <dxi-column dataField=\"u_FireNDesc\"\r\n dataType=\"string\"\r\n caption=\"{{'UretimYonetimi::ComponentWastage.ComponentWastageRecords.DescOfWastage' | abpLocalization}}\">\r\n </dxi-column>\r\n </dx-data-grid>\r\n </div>\r\n </div>\r\n </div>\r\n</abp-page>\r\n", styles: [":host{display:block}dx-number-box,dx-text-box{width:100%}dx-data-grid{width:100%}\n"] }]
2703
2884
  }], ctorParameters: function () { return [{ type: HitComponentWastageService }, { type: i3.ConfirmationService }, { type: i0.NgZone }, { type: HitProductionOrdersService }]; }, propDecorators: { nmbBoxBarkodNumarasi: [{
2704
2885
  type: ViewChild,
2705
2886
  args: ['barkodNumarasiRef', { static: false }]