示例#1
0
    } else {
        $tmpPanier[$data["prod_id"]] = intval($data["quantite"]);
        $app['session']->set('panier', $tmpPanier);
    }
    return $tmpPanier[$data["prod_id"]];
})->bind('gopanier');
$app->get('/validPanierScr', function (Request $request) use($app) {
    $tmpPanier = $app['session']->get('panier');
    $tableauCommande = [];
    $commandeDAO = new commandeDAO($app['db']);
    $produitDAO = new produitDAO($app['db']);
    $lastId = $commandeDAO->findLastId();
    $lastId = intval($lastId);
    $lastId += 1;
    foreach ($tmpPanier as $key => $value) {
        $tmpObject = $produitDAO->find($key);
        if ($tmpObject->getStock() < $value) {
            $app['session']->getFlashBag()->add('error', array('title' => 'Oups, problème de stock...', 'message' => "Vous avez demandé {$value} Kg de " . $tmpObject->getNomProduit() . ", nous n'en possédons que " . $tmpObject->getStock() . " Kg."));
            return $app->redirect($app['url_generator']->generate('panier'));
        }
        $tableauCommande[$key] = new Commande();
        $tableauCommande[$key]->setComId($lastId);
        $tableauCommande[$key]->setProdId($key);
        $tableauCommande[$key]->setComQuantite($value);
        $token = $app['security']->getToken();
        $user = $token->getUser();
        $tableauCommande[$key]->setUsrId(intval($user->getId()));
        $tableauCommande[$key]->setComEtat('En attente');
    }
    foreach ($tableauCommande as $key => $value) {
        $commandeDAO->save($value);
示例#2
0
    }
    return $app['twig']->render('admin/gestComm.html.twig', array('tableauCommandes' => $mesCommandes, 'quantiteCommandes' => $quantiteCommandes));
})->bind('gestComm');
// Edition mot de passe admin
$app->post('/changeCommScr', function (Request $request) use($app) {
    $data = $request->request->all();
    $comid = $data["idCom"];
    $commandeDAO = new CommandeDAO($app['db']);
    $produitDAO = new produitDAO($app['db']);
    $mesCommandes = $commandeDAO->find($comid);
    $state = $data["etat"];
    if ($state == "Expédiée") {
        foreach ($mesCommandes as $key => $value) {
            $idProd = $value->getProdId();
            $quantiteProdCom = $value->getComQuantite();
            $prodObj = $produitDAO->find($idProd);
            $actualStock = $prodObj->getStock();
            $newStock = $actualStock - $quantiteProdCom;
            if ($newStock >= 0) {
                $prodObj->setStock($newStock);
                $produitDAO->save($prodObj);
            } else {
                $app['session']->getFlashBag()->add('error', array('title' => 'Oups, problème de stock...', 'message' => "Si vous demandez {$quantiteProdCom} Kg de " . $prodObj->getNomProduit() . ", le stock va passer en négatif, augmentez les stocks avant. Stock actuel : " . $prodObj->getStock() . " Kg."));
                return "error";
            }
        }
    }
    foreach ($mesCommandes as $key => $value) {
        $value->setComEtat($state);
        $count = $commandeDAO->stateSave($value);
    }