{"ast":null,"code":"import { FormGroup, FormControl, Validators } from '@angular/forms';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"src/app/shared/services/repository.service\";\nimport * as i2 from \"src/app/shared/services/repository-error-handler.service\";\nimport * as i3 from \"@angular/router\";\nimport * as i4 from \"@angular/material/form-field\";\nimport * as i5 from \"@angular/material/input\";\nimport * as i6 from \"@angular/material/card\";\nimport * as i7 from \"@angular/material/button\";\nimport * as i8 from \"@angular/forms\";\nconst _c0 = () => [\"/ui-components/assignments\"];\nexport class AddAssignmentComponent {\n  constructor(repository, errorHandler, router) {\n    this.repository = repository;\n    this.errorHandler = errorHandler;\n    this.router = router;\n    this.errorMessage = '';\n    this.createAssignment = assignmentFormValue => {\n      if (this.assignmentForm.valid) {\n        const assignment = {\n          ...assignmentFormValue\n        };\n        this.repository.createAssignment('api/assignments', assignment).subscribe({\n          next: pdfData => {\n            // 📌 PDF'yi indir\n            this.downloadPdf(pdfData);\n            // 📌 Başarı mesajı yerine direkt console.log\n            console.log(\"✅ Atama başarılı ve PDF oluşturuldu.\");\n            // 📌 Sayfayı yönlendir\n            this.redirectToAssignmentList();\n          },\n          error: err => {\n            this.errorHandler.handleError(err);\n            this.errorMessage = this.errorHandler.errorMessage;\n          }\n        });\n      }\n    };\n    this.redirectToAssignmentList = () => {\n      this.router.navigate(['/ui-components/assignments']);\n    };\n  }\n  ngOnInit() {\n    this.assignmentForm = new FormGroup({\n      deviceName: new FormControl('', [Validators.required]),\n      deviceBrand: new FormControl('', [Validators.required]),\n      deviceCategory: new FormControl('', [Validators.required]),\n      employeeName: new FormControl('', [Validators.required]),\n      employeeNumber: new FormControl('', [Validators.required])\n    });\n  }\n  // ✅ PDF indirme fonksiyonu\n  downloadPdf(pdfData) {\n    const blob = new Blob([pdfData], {\n      type: 'application/pdf'\n    });\n    const url = window.URL.createObjectURL(blob);\n    const a = document.createElement('a');\n    a.href = url;\n    a.download = 'ZimmetFormu.pdf';\n    a.click();\n    window.URL.revokeObjectURL(url);\n  }\n  static #_ = this.ɵfac = function AddAssignmentComponent_Factory(t) {\n    return new (t || AddAssignmentComponent)(i0.ɵɵdirectiveInject(i1.RepositoryService), i0.ɵɵdirectiveInject(i2.RepositoryErrorHandlerService), i0.ɵɵdirectiveInject(i3.Router));\n  };\n  static #_2 = this.ɵcmp = /*@__PURE__*/i0.ɵɵdefineComponent({\n    type: AddAssignmentComponent,\n    selectors: [[\"app-add-assignment\"]],\n    decls: 35,\n    vars: 4,\n    consts: [[1, \"cardWithShadow\", \"theme-card\"], [3, \"ngSubmit\", \"formGroup\"], [\"appearance\", \"outline\", 1, \"w-100\"], [\"matInput\", \"\", \"formControlName\", \"deviceName\", \"placeholder\", \"\\u00D6rn: Dell XPS 13\"], [\"matInput\", \"\", \"formControlName\", \"deviceBrand\", \"placeholder\", \"\\u00D6rn: Dell\"], [\"matInput\", \"\", \"formControlName\", \"deviceCategory\", \"placeholder\", \"\\u00D6rn: Laptop\"], [\"matInput\", \"\", \"formControlName\", \"employeeName\", \"placeholder\", \"\\u00D6rn: Ali Veli\"], [\"matInput\", \"\", \"formControlName\", \"employeeNumber\", \"placeholder\", \"\\u00D6rn: EMP123\"], [\"matInput\", \"\", \"formControlName\", \"assignedDate\", \"type\", \"date\"], [1, \"button-group\"], [\"mat-flat-button\", \"\", \"color\", \"primary\", \"type\", \"submit\", 3, \"disabled\"], [\"mat-button\", \"\", \"color\", \"warn\", 3, \"routerLink\"]],\n    template: function AddAssignmentComponent_Template(rf, ctx) {\n      if (rf & 1) {\n        i0.ɵɵelementStart(0, \"mat-card\", 0)(1, \"mat-card-header\")(2, \"mat-card-title\");\n        i0.ɵɵtext(3, \"Yeni Atama Yap\");\n        i0.ɵɵelementEnd()();\n        i0.ɵɵelementStart(4, \"mat-card-content\")(5, \"form\", 1);\n        i0.ɵɵlistener(\"ngSubmit\", function AddAssignmentComponent_Template_form_ngSubmit_5_listener() {\n          return ctx.createAssignment(ctx.assignmentForm.value);\n        });\n        i0.ɵɵelementStart(6, \"mat-form-field\", 2)(7, \"mat-label\");\n        i0.ɵɵtext(8, \"Cihaz Ad\\u0131\");\n        i0.ɵɵelementEnd();\n        i0.ɵɵelement(9, \"input\", 3);\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(10, \"mat-form-field\", 2)(11, \"mat-label\");\n        i0.ɵɵtext(12, \"Marka\");\n        i0.ɵɵelementEnd();\n        i0.ɵɵelement(13, \"input\", 4);\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(14, \"mat-form-field\", 2)(15, \"mat-label\");\n        i0.ɵɵtext(16, \"Kategori\");\n        i0.ɵɵelementEnd();\n        i0.ɵɵelement(17, \"input\", 5);\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(18, \"mat-form-field\", 2)(19, \"mat-label\");\n        i0.ɵɵtext(20, \"\\u00C7al\\u0131\\u015Fan Ad\\u0131\");\n        i0.ɵɵelementEnd();\n        i0.ɵɵelement(21, \"input\", 6);\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(22, \"mat-form-field\", 2)(23, \"mat-label\");\n        i0.ɵɵtext(24, \"\\u00C7al\\u0131\\u015Fan Sicil No\");\n        i0.ɵɵelementEnd();\n        i0.ɵɵelement(25, \"input\", 7);\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(26, \"mat-form-field\", 2)(27, \"mat-label\");\n        i0.ɵɵtext(28, \"Atama Tarihi\");\n        i0.ɵɵelementEnd();\n        i0.ɵɵelement(29, \"input\", 8);\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(30, \"div\", 9)(31, \"button\", 10);\n        i0.ɵɵtext(32, \"Kaydet\");\n        i0.ɵɵelementEnd();\n        i0.ɵɵelementStart(33, \"button\", 11);\n        i0.ɵɵtext(34, \"\\u0130ptal\");\n        i0.ɵɵelementEnd()()()()();\n      }\n      if (rf & 2) {\n        i0.ɵɵadvance(5);\n        i0.ɵɵproperty(\"formGroup\", ctx.assignmentForm);\n        i0.ɵɵadvance(26);\n        i0.ɵɵproperty(\"disabled\", !ctx.assignmentForm.valid);\n        i0.ɵɵadvance(2);\n        i0.ɵɵproperty(\"routerLink\", i0.ɵɵpureFunction0(3, _c0));\n      }\n    },\n    dependencies: [i3.RouterLink, i4.MatFormField, i4.MatLabel, i5.MatInput, i6.MatCard, i6.MatCardContent, i6.MatCardHeader, i6.MatCardTitle, i7.MatButton, i8.ɵNgNoValidate, i8.DefaultValueAccessor, i8.NgControlStatus, i8.NgControlStatusGroup, i8.FormGroupDirective, i8.FormControlName],\n    styles: [\"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZVJvb3QiOiIifQ== */\"]\n  });\n}","map":{"version":3,"names":["FormGroup","FormControl","Validators","AddAssignmentComponent","constructor","repository","errorHandler","router","errorMessage","createAssignment","assignmentFormValue","assignmentForm","valid","assignment","subscribe","next","pdfData","downloadPdf","console","log","redirectToAssignmentList","error","err","handleError","navigate","ngOnInit","deviceName","required","deviceBrand","deviceCategory","employeeName","employeeNumber","blob","Blob","type","url","window","URL","createObjectURL","a","document","createElement","href","download","click","revokeObjectURL","_","i0","ɵɵdirectiveInject","i1","RepositoryService","i2","RepositoryErrorHandlerService","i3","Router","_2","selectors","decls","vars","consts","template","AddAssignmentComponent_Template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵlistener","AddAssignmentComponent_Template_form_ngSubmit_5_listener","value","ɵɵelement","ɵɵadvance","ɵɵproperty","ɵɵpureFunction0","_c0"],"sources":["C:\\Users\\Cem\\Desktop\\InventryUI-Client\\src\\app\\pages\\ui-components\\assign\\assignments\\add-assignments\\add-assignments.component.ts","C:\\Users\\Cem\\Desktop\\InventryUI-Client\\src\\app\\pages\\ui-components\\assign\\assignments\\add-assignments\\add-assignments.component.html"],"sourcesContent":["import { HttpErrorResponse } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormControl, Validators } from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { RepositoryErrorHandlerService } from 'src/app/shared/services/repository-error-handler.service';\r\nimport { RepositoryService } from 'src/app/shared/services/repository.service';\r\n\r\n@Component({\r\n  selector: 'app-add-assignment',\r\n  templateUrl: './add-assignments.component.html',\r\n  styleUrls: ['./add-assignments.component.scss']\r\n})\r\nexport class AddAssignmentComponent implements OnInit {\r\n  public assignmentForm: FormGroup;\r\n  public errorMessage: string = '';\r\n\r\n  constructor(\r\n    private repository: RepositoryService,\r\n    private errorHandler: RepositoryErrorHandlerService,\r\n    private router: Router\r\n  ) {}\r\n\r\n  ngOnInit(): void {\r\n    this.assignmentForm = new FormGroup({\r\n      deviceName: new FormControl('', [Validators.required]),\r\n      deviceBrand: new FormControl('', [Validators.required]),\r\n      deviceCategory: new FormControl('', [Validators.required]),\r\n      employeeName: new FormControl('', [Validators.required]),\r\n      employeeNumber: new FormControl('', [Validators.required])\r\n    });\r\n  }\r\n\r\n  createAssignment = (assignmentFormValue: any) => {\r\n    if (this.assignmentForm.valid) {\r\n      const assignment: any = { ...assignmentFormValue };\r\n\r\n      this.repository.createAssignment('api/assignments', assignment)\r\n        .subscribe({\r\n          next: (pdfData: Blob) => {\r\n            // 📌 PDF'yi indir\r\n            this.downloadPdf(pdfData);\r\n\r\n            // 📌 Başarı mesajı yerine direkt console.log\r\n            console.log(\"✅ Atama başarılı ve PDF oluşturuldu.\");\r\n            \r\n            // 📌 Sayfayı yönlendir\r\n            this.redirectToAssignmentList();\r\n          },\r\n          error: (err: HttpErrorResponse) => {\r\n            this.errorHandler.handleError(err);\r\n            this.errorMessage = this.errorHandler.errorMessage;\r\n          }\r\n        });\r\n    }\r\n  };\r\n\r\n  // ✅ PDF indirme fonksiyonu\r\n  downloadPdf(pdfData: Blob) {\r\n    const blob = new Blob([pdfData], { type: 'application/pdf' });\r\n    const url = window.URL.createObjectURL(blob);\r\n    const a = document.createElement('a');\r\n    a.href = url;\r\n    a.download = 'ZimmetFormu.pdf';\r\n    a.click();\r\n    window.URL.revokeObjectURL(url);\r\n  }\r\n\r\n  redirectToAssignmentList = () => {\r\n    this.router.navigate(['/ui-components/assignments']);\r\n  };\r\n}\r\n","<mat-card class=\"cardWithShadow theme-card\">\r\n  <mat-card-header>\r\n    <mat-card-title>Yeni Atama Yap</mat-card-title>\r\n  </mat-card-header>\r\n\r\n  <mat-card-content>\r\n    <form [formGroup]=\"assignmentForm\" (ngSubmit)=\"createAssignment(assignmentForm.value)\">\r\n      \r\n      <!-- 📌 Cihaz Adı -->\r\n      <mat-form-field class=\"w-100\" appearance=\"outline\">\r\n        <mat-label>Cihaz Adı</mat-label>\r\n        <input matInput formControlName=\"deviceName\" placeholder=\"Örn: Dell XPS 13\">\r\n      </mat-form-field>\r\n\r\n      <!-- 📌 Marka -->\r\n      <mat-form-field class=\"w-100\" appearance=\"outline\">\r\n        <mat-label>Marka</mat-label>\r\n        <input matInput formControlName=\"deviceBrand\" placeholder=\"Örn: Dell\">\r\n      </mat-form-field>\r\n\r\n      <!-- 📌 Kategori -->\r\n      <mat-form-field class=\"w-100\" appearance=\"outline\">\r\n        <mat-label>Kategori</mat-label>\r\n        <input matInput formControlName=\"deviceCategory\" placeholder=\"Örn: Laptop\">\r\n      </mat-form-field>\r\n\r\n      <!-- 📌 Çalışan Adı -->\r\n      <mat-form-field class=\"w-100\" appearance=\"outline\">\r\n        <mat-label>Çalışan Adı</mat-label>\r\n        <input matInput formControlName=\"employeeName\" placeholder=\"Örn: Ali Veli\">\r\n      </mat-form-field>\r\n\r\n      <!-- 📌 Çalışan Sicil No -->\r\n      <mat-form-field class=\"w-100\" appearance=\"outline\">\r\n        <mat-label>Çalışan Sicil No</mat-label>\r\n        <input matInput formControlName=\"employeeNumber\" placeholder=\"Örn: EMP123\">\r\n      </mat-form-field>\r\n\r\n      <!-- 📌 Atama Tarihi -->\r\n      <mat-form-field class=\"w-100\" appearance=\"outline\">\r\n        <mat-label>Atama Tarihi</mat-label>\r\n        <input matInput formControlName=\"assignedDate\" type=\"date\">\r\n      </mat-form-field>\r\n\r\n      <!-- 📌 Form Butonları -->\r\n      <div class=\"button-group\">\r\n        <button mat-flat-button color=\"primary\" type=\"submit\" [disabled]=\"!assignmentForm.valid\">Kaydet</button>\r\n        <button mat-button color=\"warn\" [routerLink]=\"['/ui-components/assignments']\">İptal</button>\r\n      </div>\r\n    </form>\r\n  </mat-card-content>\r\n</mat-card>\r\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}