Bonjour tout le monde
Je suis en train de créer une application pour un restaurant qui a besoin d’une solution afin de continuer son activité en ces temps de pandémie.
C’est pour cela que je voudrais savoir si vous connaissez une solution pour pouvoir créer un panier d’achat afin d’implémenter (plus tard) le click-and-collect.
Voilà ou j’en suis…
J’ai crée cette TableView et voilà le TableViewController associé
Voilà mes 2 models :
1)ProductLine.swift
import UIKit
class ProductLine {
var name : String
var products : [Product]
init(named : String,includeProducts : [Product]) {
name = named
products = includeProducts
}
class func getProductLines()-> [ProductLine]
{
return [entrées(),plats(),salades(),planches(),menuEnfant(),burgers(),fish(),desserts()]
}
private class func entrées() -> ProductLine {
// (0) Entrees : Oeuf cocotte, Potage , Terrine , Cassolette , Camenbert
var products = [Product]()
products.append(Product(imageName: "oeufCocotte", title: "Tartare de saumon", description: "Une delicieuse entrée avec de l'avocat et de la mangue",price : "7.40€" ))
products.append(Product(imageName: "potage", title: "Croustillant de chèvre", description: "Un delicieux potage",price : "4.70€"))
products.append(Product(imageName: "terrine", title: "Terrine de campagne maison", description: "Une delicieuse terrine",price : "5.50€"))
products.append(Product(imageName: "camembert", title: "Demi camembert rôti au miel et jambon serrano", description: "Un delicieux camenbert",price : "6.90€"))
return ProductLine(named: "Entrées", includeProducts: products)
}
// (1) Plats : Risotto de coquillette,Entrecote,Rosace,Tartare
private class func plats() -> ProductLine
{
var products = [Product]()
products.append(Product(imageName: "saumon", title: "Pavé de saumon", description: "Pavé de sumon et ses legumes Wok",price: "16.20€"))
products.append(Product(imageName: "entrecote", title: "Entrecôte", description: "Entrecote 300g,sauce poivre,frites et salades",price: "19.90€"))
products.append(Product(imageName: "tartare", title: "Tartare de boeuf", description: "Un delicieux tartare avec des pommes de terre sautées et de la salade",price: "15.00€"))
return ProductLine(named: "Plats", includeProducts: products)
}
// (2) Salades: Salade césar ,salade paysanne
private class func salades() -> ProductLine
{
var products = [Product]()
products.append(Product(imageName: "cesar", title: "Salade César", description: "Poulet,parmesan,lardons,oeuf,salade,tomates,oignons,croûtons,sauce césar",price: "13.90€"))
products.append(Product(imageName: "paysanne", title: "Poké bowl au saumon", description: "Guacamole,mangue,riz,poivron rouge,concombre,choux,fèves,carotte,graines de sésame",price: "15.00€"))
return ProductLine(named: "Salade & Poké bowl", includeProducts: products)
}
// (3) Planches : Planches de fromage, planche de charcuterie , planche mixte
private class func planches() -> ProductLine
{
var products = [Product]()
products.append(Product(imageName: "plancheFromage", title: "Planche de fromages", description: "Differents fromages",price: "12.90€"))
products.append(Product(imageName: "plancheCharcuterie", title: "Planche de charcuteries", description: "Differentes charcuteries",price: "12.90€"))
products.append(Product(imageName: "plancheMixte", title: "Planche mixte", description: "Planche de charcuterie et fromage",price: "12.90€"))
return ProductLine(named: "Planches", includeProducts: products)
}
// (4)Menu enfants
private class func menuEnfant() -> ProductLine
{
var products = [Product]()
products.append(Product(imageName: "burgerEnfant", title: "Burger enfant", description: "Bœuf haché maison, cheddar,tomate,salade,oignon",price: "9€"))
products.append(Product(imageName: "coquillettes", title: "Coquillette à la parisienne", description: "Delicieuses coquillettes",price: "9€"))
return ProductLine(named: "Le coin des enfants de - 10 ans", includeProducts: products)
}
// (5) Burgers
private class func burgers() -> ProductLine
{
var products = [Product]()
products.append(Product(imageName: "Ococher", title: "Ô'Cocher", description: "Bœuf haché maison, camembert,brisures de truffes,magret séché,salade,fondue de tomates et oignons",price: "16.90€"))
products.append(Product(imageName: "mexicain", title: "Le Mexicain", description: "Bœuf haché maison,cheddar épicé,chorizo poêlé, guacamole, œuf,salade,fondue de tomates et oignons",price: "16.00€"))
products.append(Product(imageName: "milanais", title: "Le Milanais", description: "Blanc de poulet pané, cantal, salade, tomate,oignons, sauce pesto",price: "15.00€"))
products.append(Product(imageName: "auvergnat", title: "L'Auvergnat", description: "Bœuf haché maison, cantal,bacon,salade,fondue de tomates oignons,sauce bleu d’Auvergne",price: "15.00€"))
products.append(Product(imageName: "paname", title: "Le Paname", description: "Bœuf haché maison,cantal,bacon,champignons,salade, fondue de tomates,oignons et sauce champignons",price: "15.00€"))
products.append(Product(imageName: "vegetarien", title: "Végétarien", description: "Galette de courgette et carottes champignon,cantal salade, oignons,fondue de tomates",price: "14.80€"))
return ProductLine(named: "Burgers", includeProducts: products)
}
// (6) Fish
private class func fish() -> ProductLine
{
var products = [Product]()
products.append(Product(imageName: "fish", title: "Fish and chips", description: "",price: "14.00€"))
return ProductLine(named: "Fish", includeProducts: products)
}
// (7) Dessert
private class func desserts() -> ProductLine
{
var products = [Product]()
products.append(Product(imageName: "mousseChocolat", title: "Mousse au chocolat", description: "Delicieuse mousse au chocolat",price: "5.00€"))
products.append(Product(imageName: "cremeBrulee", title: "Crème brûlée", description: "Delicieuse crème brulée",price: "5.00€"))
products.append(Product(imageName: "saladeFruits", title: "Salade de fruits", description: "Delicieuse salade de fruits",price: "5.00€"))
products.append(Product(imageName: "cheese", title: "Cheese cake", description: "Delicieux délice",price: "6.00€"))
products.append(Product(imageName: "bouleGlace", title: "Boule de glace artisan pedone", description: "Glace delicieuse",price: "3.00€"))
return ProductLine(named: "Desserts", includeProducts: products)
}
}
- Product.swift
import UIKit
class Product {
var image : UIImage
var title : String
var description : String
var price : String
init(imageName : String,title : String,description : String,price : String) {
self.title = title
self.description = description
self.price = price
if let image = UIImage(named: imageName){
self.image = image
}else{
self.image = UIImage(named: "default")!
}
}
}
Est ce que quelqu’un aurait une idée, s’il vous plait?