-
-
@@ -65,67 +58,87 @@
#input />
-
-
- N°Facture
- {{ element.nfacture }}
+
+
+ ID
+
+ {{ transaction.transaction_id }}
+
-
- Nom
- {{ element.nom }}
+
+ ID type paiement
+
+ {{ transaction.type_paiement }}
+
-
-
- Prenoms
- {{ element.prenom }}
+
+
+ type paiement
+
+ {{ transaction.type_paiement_label }}
+
-
-
- Contact
- {{ element.contact }}
+
+
+ Marchand
+
+ {{ transaction.marchand }}
+
-
Service
- {{ element.service }}
-
-
-
-
- E-mail
- {{ element.email }}
+
+ {{ transaction.service }}
+
Montant
- {{ element.montant }}
+
+ {{ transaction.montant }}
+
-
- Mode Paiement
-
- {{ element.modePaiement }}
+
+ Date
+
+ {{ transaction.date }}
+
+ Commentaire
+
+ {{ transaction.commentaire }}
+
+
+
+
+ Etat
+
+ {{ transaction.etat }}
+
+
+
Status
- {{ element.status }}
+
+ {{ transaction.status }}
+
-
-
- Date Transaction
-
- {{ element.dateTransaction }}
+
+ Réference
+
+ {{ transaction.reference }}
@@ -140,3 +153,12 @@
[showFirstLastButtons]="true">
+
+
diff --git a/src/app/trafics/transactions/suivi-transaction/suivi-transaction.component.ts b/src/app/trafics/transactions/suivi-transaction/suivi-transaction.component.ts
index 489e334..e956986 100644
--- a/src/app/trafics/transactions/suivi-transaction/suivi-transaction.component.ts
+++ b/src/app/trafics/transactions/suivi-transaction/suivi-transaction.component.ts
@@ -3,142 +3,13 @@ import { MatTableDataSource, MatTableModule } from '@angular/material/table';
import { MatInputModule } from '@angular/material/input';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
-
-export interface PElement {
- nfacture: number;
- nom: string;
- prenom: string;
- contact: string;
- service: string;
- email: string;
- montant: number;
- modePaiement: string;
- status: string;
- dateTransaction: string;
-}
-
-const ELEMENT_DATA: PElement[] = [
- {
- nfacture: 1,
- nom: 'zaho',
- prenom: 'zadi',
- contact: '0101010101',
- service: 'mtn',
- email: 'mrtest@mail.com',
- montant: 25000,
- modePaiement: 'wave',
- status: 'valide',
- dateTransaction: '10-04-2024',
- },
- {
- nfacture: 2,
- nom: 'kablan',
- prenom: 'fatou',
- contact: '0101010101',
- service: 'mtn',
- email: 'mrtet@mail.com',
- montant: 25000,
- modePaiement: 'wave',
- status: 'valide',
- dateTransaction: '16-03-2024',
- },
- {
- nfacture: 3,
- nom: 'toure',
- prenom: 'koffi',
- contact: '0101010101',
- service: 'mtn',
- email: 'mrtest@mail.com',
- montant: 25000,
- modePaiement: 'wave',
- status: 'invalide',
- dateTransaction: '04-04-2024',
- },
- {
- nfacture: 4,
- nom: 'belem',
- prenom: 'asaph',
- contact: '0101010101',
- service: 'mtn',
- email: 'test@mail.com',
- montant: 27000,
- modePaiement: 'wave',
- status: 'valide',
- dateTransaction: '16-02-2024',
- },
- {
- nfacture: 5,
- nom: 'tanoh',
- prenom: 'delmas',
- contact: '0101010101',
- service: 'mtn',
- email: 'rtest@mail.com',
- montant: 50000,
- modePaiement: 'wave',
- status: 'invalide',
- dateTransaction: '16-04-2024',
- },
- {
- nfacture: 6,
- nom: 'gaba',
- prenom: 'akemane',
- contact: '0101010101',
- service: 'mtn',
- email: 'mtst@mail.com',
- montant: 25000,
- modePaiement: 'wave',
- status: 'valide',
- dateTransaction: '16-01-2024',
- },
- {
- nfacture: 7,
- nom: 'kra',
- prenom: 'zoulou',
- contact: '0101010101',
- service: 'mtn',
- email: 'mest@mail.com',
- montant: 25000,
- modePaiement: 'wave',
- status: 'valide',
- dateTransaction: '26-03-2024',
- },
- {
- nfacture: 8,
- nom: 'kakou',
- prenom: 'kasa',
- contact: '0101010101',
- service: 'mtn',
- email: 'mrtst@mail.com',
- montant: 80000,
- modePaiement: 'wave',
- status: 'invalide',
- dateTransaction: '10-04-2024',
- },
- {
- nfacture: 9,
- nom: 'nguessan',
- prenom: 'daouda',
- contact: '0101010101',
- service: 'mtn',
- email: 'mrte@mail.com',
- montant: 25000,
- modePaiement: 'wave',
- status: 'valide',
- dateTransaction: '16-04-2024',
- },
- {
- nfacture: 10,
- nom: 'Neon',
- prenom: 'kanon',
- contact: '0101010101',
- service: 'mtn',
- email: 'mrtest@mail.com',
- montant: 27000,
- modePaiement: 'wave',
- status: 'valide',
- dateTransaction: '16-04-2024',
- },
-];
+import { CommonModule } from '@angular/common';
+import { TransactionService } from 'src/app/_services/trafics/transaction/transaction.service';
+import { ITransaction } from 'src/app/_interfaces/trafics/transaction/transaction';
+import { HttpClient, HttpClientModule } from '@angular/common/http';
+import { RouterLink } from '@angular/router';
+import { IOperateur } from 'src/app/_interfaces/trafics/operateur/operateur';
+import { FormsModule } from '@angular/forms';
@Component({
selector: 'bgui-suivi-transaction',
@@ -148,24 +19,74 @@ const ELEMENT_DATA: PElement[] = [
MatInputModule,
MatTableModule,
MatPaginatorModule,
+ CommonModule,
+ HttpClientModule,
+ RouterLink,
+ FormsModule,
],
templateUrl: './suivi-transaction.component.html',
styleUrl: './suivi-transaction.component.scss',
})
export class SuiviTransactionComponent {
+ //private HtUrl = 'http://192.168.1.223:8000/transaction-history/';
+
+ private url = 'http://192.168.1.223:8000/operateur/';
+
+ transactions: ITransaction[] = [];
+ operateurs: IOperateur[] = [];
+ selectedOperateur: string = '';
+
+ constructor(
+ private httpClient: HttpClient,
+ public transactionService: TransactionService
+ ) {}
+
+ ngOnInit(): void {
+ this.transactionService.getAll().subscribe((data: ITransaction[]) => {
+ this.transactions = data;
+ console.log('transactions===>', this.transactions);
+
+ this.fetchOperateurs();
+ });
+ }
+
+ fetchOperateurs(): void {
+ this.httpClient.get
(this.url).subscribe(
+ (data: IOperateur) => {
+ this.operateurs.push(data);
+
+ console.log('operateur==>', this.operateurs);
+ },
+ error => {
+ console.error(
+ "Une erreur s'est produite lors de la récupération des opérateurs :",
+ error
+ );
+ }
+ );
+ }
+
+ onOperateurChange(event: Event): void {
+ const selectElement = event.target as HTMLSelectElement;
+ this.selectedOperateur = selectElement.value;
+ console.log('Selected opérateur ===>', this.selectedOperateur);
+ }
+
displayedColumns: string[] = [
- 'nfacture',
- 'nom',
- 'prenom',
- 'contact',
+ 'transaction_id',
+ 'type_paiement',
+ 'type_paiement_label',
+ 'marchand',
'service',
- 'email',
'montant',
- 'modePaiement',
+ 'date',
+ 'commentaire',
+ 'etat',
'status',
- 'dateTransaction',
+ 'reference',
];
- dataSource = new MatTableDataSource(ELEMENT_DATA);
+
+ dataSource = new MatTableDataSource(this.transactions);
@ViewChild(MatPaginator) paginator!: MatPaginator | undefined;
@@ -180,6 +101,3 @@ export class SuiviTransactionComponent {
this.dataSource.filter = filterValue.trim().toLowerCase();
}
}
-// function ViewChild(MatPaginator: any): (target: SuiviTransactionComponent, propertyKey: "paginator") => void {
-// throw new Error('Function not implemented.');
-// }
diff --git a/src/app/trafics/transactions/transaction.routes.ts b/src/app/trafics/transactions/transaction.routes.ts
index 56b9916..cac98ef 100644
--- a/src/app/trafics/transactions/transaction.routes.ts
+++ b/src/app/trafics/transactions/transaction.routes.ts
@@ -3,13 +3,12 @@ import { TraficsComponent } from '../trafics.component';
import { SuiviPaiementComponent } from './suivi-paiement/suivi-paiement.component';
import { SuiviTransactionComponent } from './suivi-transaction/suivi-transaction.component';
-
export const transactionsRoutes: Routes = [
{
path: '',
component: TraficsComponent,
children: [
- { path: '', redirectTo: 'suivi-paiement', pathMatch: 'full' },
+ { path: '', redirectTo: 'suivi-paiement', pathMatch: 'full' },
{
path: 'suivi-paiement',
component: SuiviPaiementComponent,
diff --git a/src/app/utilisateurs/create-users/create-users.component.html b/src/app/utilisateurs/create-users/create-users.component.html
index 9d89652..b5c2385 100644
--- a/src/app/utilisateurs/create-users/create-users.component.html
+++ b/src/app/utilisateurs/create-users/create-users.component.html
@@ -1,4 +1,3 @@
-
Create Users
-
+ Create Users
diff --git a/src/app/utilisateurs/create-users/create-users.component.ts b/src/app/utilisateurs/create-users/create-users.component.ts
index f6e96b7..84d4f4f 100644
--- a/src/app/utilisateurs/create-users/create-users.component.ts
+++ b/src/app/utilisateurs/create-users/create-users.component.ts
@@ -1,10 +1,9 @@
import { Component } from '@angular/core';
-import { UtilisateursComponent } from 'src/app/utilisateurs/utilisateurs.component';
@Component({
selector: 'bgui-create-users',
standalone: true,
- imports: [UtilisateursComponent],
+ imports: [],
templateUrl: './create-users.component.html',
styleUrl: './create-users.component.scss',
})
diff --git a/src/app/utilisateurs/utilisateurs.component.html b/src/app/utilisateurs/utilisateurs.component.html
index f3ccd42..41fb158 100644
--- a/src/app/utilisateurs/utilisateurs.component.html
+++ b/src/app/utilisateurs/utilisateurs.component.html
@@ -42,15 +42,16 @@
Actions
-
@@ -64,3 +65,29 @@
[showFirstLastButtons]="true">
+
+
diff --git a/src/app/utilisateurs/utilisateurs.component.ts b/src/app/utilisateurs/utilisateurs.component.ts
index de1871f..8f29a49 100644
--- a/src/app/utilisateurs/utilisateurs.component.ts
+++ b/src/app/utilisateurs/utilisateurs.component.ts
@@ -13,6 +13,7 @@ import { MatIconModule } from '@angular/material/icon';
import { RouterLink } from '@angular/router';
import { CarouselComponent } from '../shared/carousel/carousel.component';
import { MatMenuModule } from '@angular/material/menu';
+import { HttpClient } from '@angular/common/http';
export interface IUsers {
id: number;
@@ -96,7 +97,22 @@ const ELEMENT_DATA: IUsers[] = [
styleUrl: './utilisateurs.component.scss',
})
export class UtilisateursComponent {
+ constructor(private http: HttpClient) {}
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ dataTypePaiements: any[] = [];
+
+ ngOnInit(): void {
+ this.http
+ .get('http://192.168.1.223:8000/operateur/')
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
+ .subscribe((results: any) => {
+ console.log('results==>', results);
+ this.dataTypePaiements = results.results;
+
+ console.log('dataTypePaiements===>', this.dataTypePaiements);
+ });
+ }
editUser() {
throw new Error('Method not implemented.');
}
diff --git a/src/index.html b/src/index.html
index 8e54fcd..ac4dac4 100644
--- a/src/index.html
+++ b/src/index.html
@@ -23,7 +23,9 @@
-
+