modifier ok

This commit is contained in:
Sana EL HIRI 2022-03-22 11:43:33 +01:00
parent 1b5b7f0e3e
commit 7d8e72e4ac
5 changed files with 129 additions and 120 deletions

171
db.json
View file

@ -1,107 +1,104 @@
{ {
"list_products": [ "list_products": [
{
"id": "801427",
"product_name": "Strelitzia Nicolai : D.21-H.75",
"product_price": "59,99",
"product_instock": "disponible",
"product_discount_code": "",
"product_color": "Blanc",
"product_unitprice_ati": "59.99",
"product_unitprice_tf": "54.5",
"product_discount_tf": "0.00",
"product_discount_ati": "0.00",
"product_qty": 0,
"product_rating": 3,
"product_breadcrumb_label": "plantes fleuries",
"product_url_page": "https://www.truffaut.com/strelitzia-nicolai-d-21-h-75-801427.html",
"product_url_picture": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0801000/801427_001.jpg",
"product_shipping_method": null,
"product_image_source": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0801000/801427_001.jpg",
"product_seller": "market place",
"product_web_only": "non"
},
{ {
"id": "910744", "id": "910744",
"product_name": "Spathiphyllum 'Sweet Lauretta' Pot déco foncé D24cm", "product_name": "bibi",
"product_price": "84,99", "product_price": "5",
"product_instock": "disponible", "product_qty": 5,
"product_rating": 5,
"product_breadcrumb_label": "plantes fleuries",
"product_instock": [
[
[
[
"disponible"
]
]
]
],
"product_url_picture": "https//picsum.photos/id/18/200/300",
"product_discount_code": "", "product_discount_code": "",
"product_color": "", "product_color": "",
"product_unitprice_ati": "84.99", "product_unitprice_ati": "",
"product_unitprice_tf": "77.3", "product_unitprice_tf": "",
"product_discount_tf": "0.00", "product_discount_tf": "",
"product_discount_ati": "0.00", "product_discount_ati": "",
"product_qty": 0, "product_url_page": "",
"product_rating": 3,
"product_breadcrumb_label": "plantes fleuries",
"product_url_page": "https://www.truffaut.com/spathiphyllum-sweet-lauretta-pot-deco-fonce-d24cm-910744.html",
"product_url_picture": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0910000/910744_001.jpg",
"product_shipping_method": null, "product_shipping_method": null,
"product_image_source": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0910000/910744_001.jpg", "product_image_source": "",
"product_seller": "market place", "product_seller": "market place",
"product_web_only": "non" "product_web_only": "non"
}, },
{ {
"id": "910743", "id": "910743",
"product_name": "Spathiphyllum 'Sweet Lauretta' Pot déco clair D24cm", "product_name": "Baba",
"product_price": "84,99", "product_price": "5",
"product_instock": "disponible", "product_qty": 5,
"product_rating": 5,
"product_breadcrumb_label": "plantes fleuries",
"product_instock": [
[
"disponible"
]
],
"product_url_picture": "https//picsum.photos/id/18/200/300",
"product_discount_code": "", "product_discount_code": "",
"product_color": "", "product_color": "",
"product_unitprice_ati": "84.99", "product_unitprice_ati": "",
"product_unitprice_tf": "77.3", "product_unitprice_tf": "",
"product_discount_tf": "0.00", "product_discount_tf": "",
"product_discount_ati": "0.00", "product_discount_ati": "",
"product_qty": 0, "product_url_page": "",
"product_rating": 3,
"product_breadcrumb_label": "plantes fleuries",
"product_url_page": "https://www.truffaut.com/spathiphyllum-sweet-lauretta-pot-deco-clair-d24cm-910743.html",
"product_url_picture": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0910000/910743_001.jpg",
"product_shipping_method": null, "product_shipping_method": null,
"product_image_source": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0910000/910743_001.jpg", "product_image_source": "",
"product_seller": "market place", "product_seller": "market place",
"product_web_only": "non" "product_web_only": "non"
}, },
{ {
"id": "63158", "id": "63158",
"product_name": "Spathiphyllum: d.14cm, pot grand modèle", "product_name": "boubou",
"product_price": "7,95", "product_price": "5",
"product_instock": "disponible", "product_qty": 5,
"product_rating": 5,
"product_breadcrumb_label": "cactus et plantes grasses",
"product_instock": [
"partiellement disponible"
],
"product_url_picture": "https//picsum.photos/id/18/200/300",
"product_discount_code": "", "product_discount_code": "",
"product_color": "Blanc", "product_color": "",
"product_unitprice_ati": "7.95", "product_unitprice_ati": "",
"product_unitprice_tf": "7.2", "product_unitprice_tf": "",
"product_discount_tf": "0.00", "product_discount_tf": "",
"product_discount_ati": "0.00", "product_discount_ati": "",
"product_qty": 1, "product_url_page": "",
"product_rating": 3,
"product_breadcrumb_label": "plantes fleuries",
"product_url_page": "https://www.truffaut.com/spathiphyllum-d-14cm-pot-grand-modele-63158.html",
"product_url_picture": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0063000/63158_005.jpg",
"product_shipping_method": null, "product_shipping_method": null,
"product_image_source": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0063000/63158_005.jpg", "product_image_source": "",
"product_seller": "Truffaut", "product_seller": "market place",
"product_web_only": "oui" "product_web_only": "non"
}, },
{ {
"id": "910674", "id": "910674",
"product_name": "Spathiphyllum 'Sweet Lauretta' pot D24cm", "product_name": "Spathiphyllum 'Sweet Lauretta' pot D24cm",
"product_price": "69,99", "product_price": "69,99",
"product_instock": "disponible", "product_qty": 3,
"product_rating": 4,
"product_breadcrumb_label": "plantes fleuries",
"product_instock": [
[
"disponible"
]
],
"product_url_picture": "https//picsum.photos/id/18/200/300",
"product_discount_code": "", "product_discount_code": "",
"product_color": "", "product_color": "",
"product_unitprice_ati": "69.99", "product_unitprice_ati": "",
"product_unitprice_tf": "63.6", "product_unitprice_tf": "",
"product_discount_tf": "0.00", "product_discount_tf": "",
"product_discount_ati": "0.00", "product_discount_ati": "",
"product_qty": 0, "product_url_page": "",
"product_rating": 3,
"product_breadcrumb_label": "plantes fleuries",
"product_url_page": "https://www.truffaut.com/spathiphyllum-sweet-lauretta-pot-d24cm-910674.html",
"product_url_picture": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0910000/910674_001.jpg",
"product_shipping_method": null, "product_shipping_method": null,
"product_image_source": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0910000/910674_001.jpg", "product_image_source": "",
"product_seller": "market place", "product_seller": "market place",
"product_web_only": "non" "product_web_only": "non"
}, },
@ -109,20 +106,22 @@
"id": "801429", "id": "801429",
"product_name": "Strelitzia Nicolai Cache-pot Anthracite: D.21-H.75", "product_name": "Strelitzia Nicolai Cache-pot Anthracite: D.21-H.75",
"product_price": "64,99", "product_price": "64,99",
"product_instock": "disponible", "product_qty": 5,
"product_discount_code": "", "product_rating": 4.5,
"product_color": "Blanc",
"product_unitprice_ati": "64.99",
"product_unitprice_tf": "59.1",
"product_discount_tf": "0.00",
"product_discount_ati": "0.00",
"product_qty": 0,
"product_rating": 3,
"product_breadcrumb_label": "plantes fleuries", "product_breadcrumb_label": "plantes fleuries",
"product_url_page": "https://www.truffaut.com/strelitzia-nicolai-cache-pot-gris-d-21-h-75-801429.html", "product_instock": [
"product_url_picture": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0801000/801429_001.jpg", "disponible"
],
"product_url_picture": "https//picsum.photos/id/18/200/300",
"product_discount_code": "",
"product_color": "",
"product_unitprice_ati": "",
"product_unitprice_tf": "",
"product_discount_tf": "",
"product_discount_ati": "",
"product_url_page": "",
"product_shipping_method": null, "product_shipping_method": null,
"product_image_source": "https://images.truffaut.com/media/catalog/product/cdn:///Articles/jpg/0801000/801429_001.jpg", "product_image_source": "",
"product_seller": "market place", "product_seller": "market place",
"product_web_only": "non" "product_web_only": "non"
}, },

View file

@ -10,7 +10,7 @@ import { Plant } from '../../models/plant';
export class FormulaireComponent implements OnInit { export class FormulaireComponent implements OnInit {
plantForm!: FormGroup; plantForm!: FormGroup;
@Input()buttonLabel!:String; @Input()buttonLabel!:String;
@Input() plantInfos!: Plant; @Input() plantInfos!: any;
@Output() submitted = new EventEmitter(); @Output() submitted = new EventEmitter();
constructor(private fb : FormBuilder) { constructor(private fb : FormBuilder) {
@ -19,12 +19,12 @@ export class FormulaireComponent implements OnInit {
ngOnInit(): void { ngOnInit(): void {
console.log(this.plantInfos); console.log(this.plantInfos);
this.plantForm = this.fb.group({ this.plantForm = this.fb.group({
nameFc: new FormControl(this.plantInfos.name, [Validators.required]), nameFc: new FormControl(this.plantInfos.product_name, [Validators.required]),
priceFc: new FormControl(this.plantInfos.price, [Validators.required]), priceFc: new FormControl(this.plantInfos.product_price, [Validators.required]),
quantityFc: new FormControl(this.plantInfos.quantity, [Validators.required]), quantityFc: new FormControl(this.plantInfos.product_qty, [Validators.required]),
inStockFc: new FormControl(this.plantInfos.inStock, [Validators.required]), inStockFc: new FormControl(this.plantInfos.product_instock, [Validators.required]),
categoryFc: new FormControl(this.plantInfos.category, [Validators.required]), categoryFc: new FormControl(this.plantInfos.product_breadcrumb_label, [Validators.required]),
ratingFc: new FormControl(this.plantInfos.rating, [Validators.required]), ratingFc: new FormControl(this.plantInfos.product_rating, [Validators.required]),
}); });
} }

View file

@ -9,6 +9,6 @@ export class Plant {
public category:string[]=['plantes fleuries','orchides','cactus et plantes grasses','bonsas','plantes vertes','palmier dintrieur'], public category:string[]=['plantes fleuries','orchides','cactus et plantes grasses','bonsas','plantes vertes','palmier dintrieur'],
public urlPicture: string = "https//picsum.photos/id/18/200/300", public urlPicture: string = "https//picsum.photos/id/18/200/300",
public rating: number = 0, public rating: number = 0,
public id?: number public id?: string
){} ){}
} }

View file

@ -27,14 +27,14 @@ export class PageModifierComponent implements OnInit {
const id = params.get('id') const id = params.get('id')
if( id != null){ if( id != null){
this.plantId = id; this.plantId = id;
console.log(this.plantId); //console.log(this.plantId);
this.adminService this.adminService
.getPlantById(this.plantId) .getPlantById(this.plantId)
.subscribe((plantData: any) => { .subscribe((plantData: any) => {
this.editPlant = plantData; this.editPlant = plantData;
console.log(this.editPlant); //console.log(this.editPlant);
console.log(this.editPlant.name); //console.log(this.editPlant.name);
}); });
} }
}); });
@ -44,29 +44,39 @@ export class PageModifierComponent implements OnInit {
/** Méthode qui envoie les champs modifiés pour mise à jour **/ /** Méthode qui envoie les champs modifiés pour mise à jour **/
public update(event: any): void { public update(plant: any): void {
console.log(event); //console.log(plant);
// const nameValue = this.updatePlantForm.value['nameFc']; const nameValue = plant.nameFc;
// const priceValue = this.updatePlantForm.value['priceFc']; const priceValue = plant.priceFc;
// const ratingValue = this.updatePlantForm.value['ratingFc']; const ratingValue = plant.ratingFc;
// const quantityValue = this.updatePlantForm.value['quantityFc']; const quantityValue = plant.quantityFc;
// const categoryValue = this.updatePlantForm.value['categoryFc']; const categoryValue = plant.categoryFc;
// const inStockValue = this.updatePlantForm.value['inStockFc']; const inStockValue = plant.inStockFc;
// const urlPicture = "https//picsum.photos/id/18/200/300";
// const plant: Plant = { const plante: any = {
// id: this.plantId, id: this.plantId,
// name: nameValue, product_name: nameValue,
// price: priceValue, product_price: priceValue,
// quantity: quantityValue, product_qty: quantityValue,
// rating: ratingValue, product_rating: ratingValue,
// category: categoryValue, product_breadcrumb_label: categoryValue,
// inStock: [inStockValue], product_instock: [inStockValue],
// urlPicture product_url_picture : "https//picsum.photos/id/18/200/300",
// }; product_discount_code : "",
// this.adminService.updatePlant(plant)?.subscribe((resp) => { product_color: "",
// this.router.navigate(['admin']); product_unitprice_ati: "",
// }); product_unitprice_tf: "",
product_discount_tf: "",
product_discount_ati: "",
product_url_page: "",
product_shipping_method: null,
product_image_source: "",
product_seller: "market place",
product_web_only: "non"
};
this.adminService.updatePlant(plante)?.subscribe((resp) => {
this.router.navigate(['admin']);
});
} }
} }

View file

@ -21,7 +21,7 @@ export class AdminService {
//console.log("avant mapping: ", tabObj); //console.log("avant mapping: ", tabObj);
// Ici grâce à la méthode .map() on transforme tout les objet json du tableau en instance de notre classe Plant() // Ici grâce à la méthode .map() on transforme tout les objet json du tableau en instance de notre classe Plant()
return tabObj.map((obj: any) => { return tabObj.map((obj: any) => {
return new Plant(obj.product_name, obj.product_price,obj.product_quantity,obj.product_instock,obj.product_breadcrumb_label,obj.product_image_source,obj.product_rating,obj.id); return new Plant(obj.product_name, obj.product_price,obj.product_qty,obj.product_instock,obj.product_breadcrumb_label,obj.product_image_source,obj.product_rating,obj.id);
}) })
})); }));
//this.collection$ = this.httpClient.get<Plant[]>(`${this.apiUrl}/list_products`); //this.collection$ = this.httpClient.get<Plant[]>(`${this.apiUrl}/list_products`);