amr 6 lat temu
rodzic
commit
272d5d6017

+ 2 - 0
src/app/dashboard/dashboard-routing.ts

@@ -84,6 +84,7 @@ import { ModelVehicleAddComponent } from './model-vehicle/model-vehicle-add/mode
 import { RegistrationVehicleAddComponent } from './registration-vehicle/registration-vehicle-add/registration-vehicle-add.component';
 import { RegisterMovementVehicleAddComponent } from './register-movement-vehicle/register-movement-vehicle-add/register-movement-vehicle-add.component';
 import { VehicleMovementReportComponent } from './vehicle-movement-report/vehicle-movement-report/vehicle-movement-report.component';
+import { DefinitionListComponent } from './definition-of-classification/definition-list/definition-list.component';
 
 const dashboardRouting: Routes = [
     {path: 'service/:userID/:serviceID', component: ServiceItemComponent, canActivate: [AuthGuard], children: [
@@ -200,6 +201,7 @@ const dashboardRouting: Routes = [
     {path: 'existingReportVehicle', component: ExistingReportComponent, canActivate: [AuthGuard]},
     {path: 'VehicleReport/:typeReport', component: VehicleMovementReportComponent, canActivate: [AuthGuard]},
     {path: 'finalAccerditationReprot', component: FinalTraineeReportComponent, canActivate: [AuthGuard]},
+    {path: 'definitionClassificationList/:listPageId', component: DefinitionListComponent, canActivate: [AuthGuard]}
   ]},
 ];
 

+ 2 - 0
src/app/dashboard/dashboard.module.ts

@@ -128,6 +128,7 @@ import { VehicleMaintenanceAddComponent } from './vehicle-maintenance/vehicle-ma
 import { ExistingReportComponent } from './reports-existing-vehicles/existing-report/existing-report.component';
 import { VehicleMovementReportComponent } from './vehicle-movement-report/vehicle-movement-report/vehicle-movement-report.component';
 import { FinalTraineeReportComponent } from './final-trainee-report/final-trainee-report.component';
+import { DefinitionListComponent } from './definition-of-classification/definition-list/definition-list.component';
 
 
 @NgModule({
@@ -222,6 +223,7 @@ import { FinalTraineeReportComponent } from './final-trainee-report/final-traine
         ExistingReportComponent,
         VehicleMovementReportComponent,
         FinalTraineeReportComponent,
+        DefinitionListComponent,
     ],
     imports: [
         CommonModule,

+ 0 - 0
src/app/dashboard/definition-of-classification/definition-list/definition-list.component.css


+ 3 - 0
src/app/dashboard/definition-of-classification/definition-list/definition-list.component.html

@@ -0,0 +1,3 @@
+<p>
+  definition-list works!
+</p>

+ 68 - 0
src/app/dashboard/definition-of-classification/definition-list/definition-list.component.ts

@@ -0,0 +1,68 @@
+import { AuthServiceService } from './../../../shared/auth-service.service';
+import { NgxSpinnerService } from 'ngx-spinner';
+import { ActivatedRoute, Router, Params } from '@angular/router';
+import { DashboardService } from './../../../shared/dashboard.service';
+import { HttpClient } from '@angular/common/http';
+import { Component, OnInit } from '@angular/core';
+import { Modal } from 'ngx-modialog/plugins/bootstrap';
+import { UserService } from '../../../shared/user.service';
+import { ToastrService } from 'ngx-toastr';
+
+@Component({
+  selector: 'app-definition-list',
+  templateUrl: './definition-list.component.html',
+  styleUrls: ['./definition-list.component.css']
+})
+export class DefinitionListComponent implements OnInit {
+
+  constructor(private http: HttpClient,
+    private route: ActivatedRoute,
+    private router: Router,
+    private modal: Modal,
+    private userSer: UserService,
+    private spinner: NgxSpinnerService,
+    private authSer: AuthServiceService,
+    private toastr: ToastrService,
+    private dashboardSer: DashboardService) { }
+
+    dataList = [];
+    pages= [];
+    pageId: number;
+    advertisingListIds = [];
+    count: number;
+    perPagePagenation: number;
+    currentPage:number = 1;
+    filtterStatus = '';
+    selectedAll: any;
+    userLoginId:number;
+    serviceId:number;
+    dataTableNumber: number = 5;
+
+
+  ngOnInit() {
+    //init values of permisions
+    this.authSer.showAddBtn = false;
+    this.authSer.showDeleteBtn = false;
+    this.authSer.showEditBtn = false;
+    this.authSer.showPermissionsBtn = false;
+    //show / hide notification search in header
+    this.authSer.notificationLogin = true;
+    this.authSer.showSearchHeader = false;
+    this.authSer.showHeaderLogin = false;
+    this.authSer.showHeaderDashBoard = true;
+    this.authSer.showDashboardHeader = true;
+    this.authSer.internalHeader = false;
+
+    //get the page id param and store it in local storage to active status
+    this.route.params.subscribe(
+      (parmas: Params) => {
+        this.pageId = parmas['listPageId'];
+        localStorage.setItem('pageIdActive', parmas['listPageId']);
+      }
+    );
+
+  }
+
+
+
+}

+ 22 - 20
src/app/dashboard/register-movement-vehicle/register-movement-vehicle-add/register-movement-vehicle-add.component.html

@@ -17,19 +17,19 @@
           <form (ngSubmit)="onSubmitted()" #f="ngForm">
             <div class="row">
 
-                <div class="col-12 col-sm-12 col-md-4">
-                    <div class="form-group">
-                      <label for="vehicle_type_id" style="float: right; margin-right: 5px">نوع المركبه</label>
-                      <select class="form-control" name="vehicle_type_id" (input)="onChangeVehicleType($event)" [disabled]="checkEdit" [ngModel]="formData.vehicle_type_id" required>
-                        <option *ngFor="let type of vehicle_types" [value]="type.id">{{type.name}}</option>
-                      </select>
-                    </div>
-                  </div>
+              <div class="col-12 col-sm-12 col-md-4">
+                <div class="form-group">
+                  <label for="vehicle_type_id" style="float: right; margin-right: 5px">نوع المركبه</label>
+                  <select class="form-control" name="vehicle_type_id" (input)="onChangeVehicleType($event)" [disabled]="checkEdit" [(ngModel)]="formData.vehicle_type_id" required>
+                    <option *ngFor="let type of vehicle_types" [value]="type.id">{{type.name}}</option>
+                  </select>
+                </div>
+              </div>
 
               <div class="col-12 col-sm-12 col-md-4" *ngIf='show'>
                   <div class="form-group">
                     <label for="vehicle_id" style="float: right; margin-right: 5px"> رقم اللوحات</label>
-                    <select class="form-control" name="vehicle_id" [ngModel]="formData.vehicle_id" [disabled]="checkEdit" required>
+                    <select class="form-control" name="vehicle_id" [(ngModel)]="formData.vehicle_id" [disabled]="checkEdit" required>
                       <option *ngFor="let num of licenseNum" [value]="num.id">{{num.plate_number}}</option>
                     </select>
                   </div>
@@ -37,14 +37,14 @@
               <div class="col-12 col-sm-12 col-md-4">
                 <div class="form-group">
                    <label for="vehicle_recipient_name" style="float: right; margin-right: 5px">إسم الموظف</label>
-                   <input type="text" class="form-control" placeholder="إسم الموظف" name="vehicle_recipient_name" id="vehicle_recipient_name" [ngModel]="formData.vehicle_recipient_name" ngModel required />
+                   <input type="text" class="form-control" placeholder="إسم الموظف" name="vehicle_recipient_name" id="vehicle_recipient_name" [(ngModel)]="formData.vehicle_recipient_name" ngModel required />
                 </div>
               </div>
 
               <div class="col-12 col-sm-12 col-md-4">
                 <div class="form-group">
                     <label for="phone" style="float: right; margin-right: 5px">الجوال</label>
-                    <input type="text" class="form-control" placeholder="الهاتف" name="phone" id="phone" appOnlyNumber [ngModel]="formData.phone" ngModel required />
+                    <input type="text" class="form-control" placeholder="الهاتف" name="phone" id="phone" appOnlyNumber [(ngModel)]="formData.phone" ngModel required />
                 </div>
               </div>
 
@@ -75,21 +75,21 @@
               <div class="col-12 col-sm-12 col-md-4">
                 <div class="form-group">
                     <label for="start_mileage_recording" style="float: right; margin-right: 5px">تسجيل عدد الكيلومترات البداية</label>
-                    <input type="number" class="form-control" placeholder="تسجيل عدد الكيلومترات البداية" name="start_mileage_recording" id="start_mileage_recording" [ngModel]="formData.start_mileage_recording" ngModel required />
+                    <input type="number" class="form-control" placeholder="تسجيل عدد الكيلومترات البداية" name="start_mileage_recording" id="start_mileage_recording" [(ngModel)]="formData.start_mileage_recording" ngModel required />
                 </div>
               </div>
 
               <div class="col-12 col-sm-12 col-md-4">
                 <div class="form-group">
                     <label for="end_mileage_recording" style="float: right; margin-right: 5px">تسجيل عدد الكيلومترات للنهاية</label>
-                    <input type="number" class="form-control" placeholder="تسجيل عدد الكيلومترات للنهاية" name="end_mileage_recording" id="end_mileage_recording" [ngModel]="formData.end_mileage_recording" ngModel required />
+                    <input type="number" class="form-control" placeholder="تسجيل عدد الكيلومترات للنهاية" name="end_mileage_recording" id="end_mileage_recording" [(ngModel)]="formData.end_mileage_recording" ngModel required />
                 </div>
               </div>
 
               <div class="col-12 col-sm-12 col-md-12">
                 <div class="form-group">
                   <label for="movement_notes" style="float: right;margin-right: 5px"> الملاحظات<span class="spanReqired-w">*</span></label>
-                  <quill-editor id="movement_notes" name="movement_notes" [ngModel]="formData.movement_notes" >
+                  <quill-editor id="movement_notes" name="movement_notes" [(ngModel)]="formData.movement_notes" >
                   </quill-editor>
                 </div>
               </div>
@@ -127,16 +127,18 @@
           <table class="table table-bordered">
             <thead class="headBackground-w">
               <tr>
-                <th> نوع المركبه</th>
-                <th>رقم اللوحه</th>
-                <th *ngIf="authSer.showEditBtn">تعديل</th>
+                <th> تاريخ إستلام المركبه</th>
+                <th>تاريخ إستلام البطاقه </th>
+                <th>تسجيل عدد الكيلومترات البداية</th>
+                <th>تسجيل عدد الكيلومترات للنهايه</th>
               </tr>
             </thead>
             <tbody>
               <tr *ngFor="let data of vehicleDataTable | paginate: { itemsPerPage: perPagePagenation, currentPage: currentPage, totalItems: count }; let i = index ">
-                <td>{{data.vehicle_type_name}}</td>
-                <td>{{data.vehicle_plate_number}}</td>
-                <td *ngIf="authSer.showEditBtn"><button type="button" class="btn btn-outline-secondary" (click)="onEdit(data.id)"><i class="fas fa-edit"></i></button></td>
+                <td>{{data.vehicle_receipt_date}}</td>
+                <td>{{data.vehicle_delivery_date}}</td>
+                <td>{{data.start_mileage_recording}}</td>
+                <td>{{data.end_mileage_recording}}</td>
               </tr>
             </tbody>
           </table>

+ 15 - 7
src/app/dashboard/register-movement-vehicle/register-movement-vehicle-add/register-movement-vehicle-add.component.ts

@@ -54,8 +54,8 @@ export class RegisterMovementVehicleAddComponent implements OnInit {
   dataTableNumber: number = 5;
 
   formData = {
-    vehicle_type_id: '',
-    vehicle_id: '',
+    vehicle_type_id: null,
+    vehicle_id: null,
     vehicle_recipient_name: '',
     phone: '',
     start_mileage_recording: '',
@@ -89,12 +89,14 @@ export class RegisterMovementVehicleAddComponent implements OnInit {
             console.log(responce);
             this.formData.phone = responce['movement'].phone;
             this.formData.movement_notes = responce['movement'].movement_notes;
-            this.formData.vehicle_id = responce['movement'].vehicle_id;
             this.formData.vehicle_recipient_name = responce['movement'].vehicle_recipient_name;
             this.formData.end_mileage_recording = responce['movement'].end_mileage_recording;
             this.formData.start_mileage_recording = responce['movement'].start_mileage_recording;
             this.formData.vehicle_type_id = responce['movement'].vehicle_type_id;
             this.getLicenseNum(this.formData.vehicle_type_id);
+
+            this.formData.vehicle_id = responce['movement'].vehicle_id;
+
             this.checkEdit = true;
             this.startDate = responce['movement'].vehicle_receipt_date;
             this.endDate = responce['movement'].vehicle_delivery_date;
@@ -205,12 +207,13 @@ export class RegisterMovementVehicleAddComponent implements OnInit {
         }
       );
     };
+
     onChangeVehicleTypee(event){
       this.licenseNum = [];
       const typeId = event.target.value;
       this.getLicenseNum(typeId)
-  
-    }
+    };
+
     getLicenseNum(typeId){
       this.http.get(this.authSer.pathApi + '/get_vehicles_by_type_id/' + typeId ).subscribe(
         (response) => {
@@ -247,10 +250,15 @@ export class RegisterMovementVehicleAddComponent implements OnInit {
 
       this.checkSaveclick = true;
       delete this.vehicleForm.value['vehicle_type_id'];
+      delete this.formData['vehicle_type_id'];
+      this.formData['vehicle_receipt_date'] = this.startDate;
+      this.formData['vehicle_delivery_date'] = this.endDate;
       this.vehicleForm.value['vehicle_receipt_date'] = this.startDate;
       this.vehicleForm.value['vehicle_delivery_date'] = this.endDate;
 
-      console.log(this.vehicleForm.value);
+      console.log('form data ', this.formData);
+      console.log('vehicle form data ', this.vehicleForm.value);
+
       const startDateData = this.startDate.split('-');
       const endDateData = this.endDate.split('-');
 
@@ -266,7 +274,7 @@ export class RegisterMovementVehicleAddComponent implements OnInit {
           this.toastr.warning(' يوم تاريخ الإنتهاء يجب أن يكون أكبر من يوم تاريخ الإبتداء!');
           this.checkSaveclick = false;
         } else {
-          this.dashBoardSer.editItem( this.registerVehicleId, this.vehicleForm.value, 'registerMovementVehicle').subscribe(
+          this.dashBoardSer.editItem( this.registerVehicleId, this.formData, 'registerMovementVehicle').subscribe(
             (responce) => {
               console.log(responce);
               this.toastr.success('تم التعديل بنجاح');

+ 57 - 5
src/app/dashboard/reports-existing-vehicles/existing-report/existing-report.component.ts

@@ -26,7 +26,17 @@ export class ExistingReportComponent implements OnInit {
     showTableData:boolean = false;
 
   ngOnInit() {
-    
+    //init the values of permision boolean
+    this.authSer.showAddBtn = false;
+    this.authSer.showDeleteBtn = false;
+    this.authSer.showEditBtn = false;
+    //show / hide notification search in header
+    this.authSer.notificationLogin = true;
+    this.authSer.showSearchHeader = false;
+    this.authSer.showHeaderLogin = false;
+    this.authSer.showHeaderDashBoard = true;
+    this.authSer.showDashboardHeader = true;
+    this.authSer.internalHeader = false;
     localStorage.setItem('pageIdActive', '48');
 
 
@@ -114,8 +124,7 @@ export class ExistingReportComponent implements OnInit {
   }
 
   //print function
-  //onPrint() {
-    //window.print();
+
     onPrint(): void {
       let printContents, popupWin;
       printContents = document.getElementById('print-section').innerHTML;
@@ -128,14 +137,57 @@ export class ExistingReportComponent implements OnInit {
             <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"> </link>
             <style>
             //........Customized style.......
+            .table {
+              display:none;
+            }
+
+            .h1 {
+             width:600px;
+            }
+            .head{
+              margin-bottom: 10px;
+              width:100%;
+            }
+            .logo2{
+              float: right;
+              width:200px;
+              margin-right: 20px;
+            }
+            .logo1{
+              float: left;
+              margin-left: 20px;
+            }
+            table{
+              
+            }
+            table, th, td {
+              border: 1px solid black;
+              border-collapse: collapse;
+              width:600px;
+              position: relative;
+              top: 50%
+            }
+            th, td {
+              padding: 5px;
+             
+            }
+            .title{
+                         }
             </style>
           </head>
-      <body onload="window.print();window.close()">${printContents}</body>
+      <body onload="window.print();window.close()">
+     
+      <img class="logo1" src="../../assets/image/logo2.png">
+      <img  class="logo2" src="../../assets/image/logo1.png">
+      
+     <h1>تقرير المركبات الموجوده</h1>
+     
+      ${printContents}
+      </body>
         </html>`
       );
       popupWin.document.close();
   }
-  //}
 
 
 }

+ 0 - 1
src/app/dashboard/service-item/service-item.component.ts

@@ -104,7 +104,6 @@ export class ServiceItemComponent implements OnInit {
         for(let i = 0; i < this.pages.length; i++) {
           if(this.pages[i].id == this.pageActiveId) {
             this.pages[i].active = 1;
-            console.log('hhhhhhhhhhhhhhhhhhhhhhhhhh', this.pages[i].id);
           }
         }
 

+ 9 - 5
src/app/dashboard/vehicle-maintenance/vehicle-maintenance-add/vehicle-maintenance-add.component.html

@@ -30,7 +30,7 @@
 
             <div class="col-12 col-sm-12 col-md-4" *ngIf='show'>
                 <div class="form-group">
-                  <label for="vehicle_id" style="float: right; margin-right: 5px"> رقم اللوحات</label>
+                  <label for="vehicle_id" style="float: right; margin-right: 5px"> رقم اللوحه</label>
                   <select class="form-control" name="vehicle_id" [ngModel]="formData.vehicle_id" [disabled]="checkEdit" required>
                     <option *ngFor="let num of licenseNum" [value]="num.id">{{num.plate_number}}</option>
                   </select>
@@ -112,15 +112,19 @@
         <table class="table table-bordered">
           <thead class="headBackground-w">
             <tr>
-              <th> نوع المركبه</th>
-              <th>رقم اللوحه</th>
+              <th> تاريخ الصيانه</th>
+              <th>تاريخ الإستلام من الصيانه</th>
+              <th>تمت الصيانه</th>
+              <th>ملاحظات الصيانه</th>
               <th *ngIf="authSer.showEditBtn">تعديل</th>
             </tr>
           </thead>
           <tbody>
             <tr *ngFor="let data of vehicleDataTable | paginate: { itemsPerPage: perPagePagenation, currentPage: currentPage, totalItems: count }; let i = index ">
-              <td>{{data.vehicle_type_name}}</td>
-              <td>{{data.vehicle_plate_number}}</td>
+              <td>{{data.start_date}}</td>
+              <td>{{data.start_date}}</td>
+              <td>{{data.is_maintained == 0 ? 'لا' : data.is_maintained == 1 ? 'نعم' : 'not found'}}</td>
+              <td [innerHTML] = "data.maintenance_notes"></td>
               <td *ngIf="authSer.showEditBtn"><button type="button" class="btn btn-outline-secondary" (click)="onEdit(data.id)"><i class="fas fa-edit"></i></button></td>
             </tr>
           </tbody>

+ 1 - 10
src/app/dashboard/vehicle-movement-report/vehicle-movement-report/vehicle-movement-report.component.ts

@@ -51,8 +51,6 @@ export class VehicleMovementReportComponent implements OnInit {
           localStorage.setItem('pageIdActive', '49');
           this.searchData = '';
           this.vehicleData = [];
-          //this.movements = [];
-          //this.maintenances= [];
           this.showTableData = false;
           this.showTableData2 = false;
         } else if(params['typeReport'] == 'General') {
@@ -60,7 +58,6 @@ export class VehicleMovementReportComponent implements OnInit {
           localStorage.setItem('pageIdActive', '50');
           this.searchData = '';
           this.vehicleData = [];
-          //this.movements = [];
           this.showTableData = false;
           this.showTableData2 = false;
         }
@@ -97,12 +94,6 @@ export class VehicleMovementReportComponent implements OnInit {
         (responce) => {
           console.log(responce);
           this.vehicleData.push(responce['vehicle']);
-          // if(responce['vehicle'] != null) {
-          //   this.movements.push(responce['vehicle'].movements);
-          //   this.maintenances.push(responce['vehicle'].maintenances);
-          // } else {
-          //   this.toastr.warning('لا يوجد بيانات لهذه المركبه ');
-          // }
           console.log(this.vehicleData);
           if(this.vehicleData[0] == null) {
             this.toastr.warning('لا يوجد بيانات لهذا المركبه');
@@ -136,7 +127,7 @@ export class VehicleMovementReportComponent implements OnInit {
             <title>تقرير المركبات الموجوده</title>
             <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"> </link>
             <style>
-            //........Customized style.......
+                 
             </style>
           </head>
       <body onload="window.print();window.close()">${printContents}</body>

+ 16 - 0
src/app/servicesItems/services.component.ts

@@ -224,6 +224,22 @@ getDataService(dataService){
           console.log(error);
         }
       );
+     } else if(dataService.id == 5){
+       //خدمه البلاغات
+      this.userservice.getPagesPermetiotns(this.idUser, dataService.id).subscribe(
+        (response) => {
+          console.log(response);
+          this.pages = response['pages'];
+          console.log(this.pages);
+          if(this.pages[0].id == 51) {
+            this.router.navigate(['/service/' + this.idUser + '/' + dataService.id + '/definitionClassificationList/' + this.pages[0].id]);
+          }
+        },
+        (error) => {
+          console.log(error);
+        }
+      );
+
      }
   }