public void traiter(LigneDeCaisses ligneDeCaisses, Echeancier echeancier) {
    	       Client client = new Client(date);
               
        if (caisse.estOuverteEtaccepte(client) && caisse.fileVide()) {
            caisse.ajouter(client);

            Evenement e = new EvenementFinServiceClient(date+client.getNbArticles()*tempsPourScannerUnArticle+tempsDePaimentCBouMonnaie, client,caisse);
            echeancier.ajouter(e);
        } else {
           

            if (caisse.numero() < ligneDeCaisses.nombreDeCaisses()/2 || caisse.numero() == 7){

                caisse=ligneDeCaisses.caisseADroiteDe(caisse.numero());
                Evenement e = new EvenementChoisirBonneCaisse(date+tempsPourChangerDeCaisse,caisse,client,1);
                echeancier.ajouter(e);
                

            } else {
                
                
                caisse= ligneDeCaisses.caisseAGaucheDe(caisse.numero());
                Evenement e = new EvenementChoisirBonneCaisse(date+tempsPourChangerDeCaisse,caisse,client,-1);
                echeancier.ajouter(e);

            }
        }




            
    	Caisse c = uneCaisseAuHazard(ligneDeCaisses);
    	Evenement e = new EvenementArriveeClientCaisses(date + loiDePoisson.suivant(), c);
    	echeancier.ajouter(e);

        
        long d = delaiDePatienceGrosCaddy;
        if (client.getNbArticles() <= maxArticleCaisseRapide ) {
            d = (delaiDePatiencePetitCaddy);
        }

        
        e = new EvenementClientGrincheuxRonchonne(date +d, client);
        echeancier.ajouter(e);

        
        
        long ddd = dureePauseCaissier;
        Evenement fpc = new EvenementFinPauseCaissier(ddd, c);

        
    }