コード例 #1
0
        public ActionResult <IEnumerable <CaisseSimpleMv> > Get()
        {
            // Construction element de retour.
            List <CaisseSimpleMv> caisseSimpleMvItems = new List <CaisseSimpleMv>();

            // On charge les caisses.
            IEnumerable <CaisseItem> caisses = _caissesService.DonneCaisses().Result;

            // On parcours les caisses.
            foreach (CaisseItem caisseItem in caisses)
            {
                // Chargement session de caisse en cours.
                CaisseSessionItem caisseSessionItem = caisseItem.Sessions
                                                      .Where(x => x.DateFermeture == DateTime.MinValue)
                                                      .SingleOrDefault();

                // Lecture.
                string strEtatCaisse    = "";
                string strClientEnCours = "";
                if (caisseSessionItem != null)
                {
                    // Etat de la caisse.
                    if (caisseSessionItem.DateFermeture != DateTime.MinValue)
                    {
                        strEtatCaisse = "Ferme";
                    }
                    else if (caisseSessionItem.DateDernierClient != DateTime.MinValue)
                    {
                        strEtatCaisse = "Dernier client";
                    }
                    else if (caisseSessionItem.DateOuverture != DateTime.MinValue)
                    {
                        strEtatCaisse = "Ouverte";
                    }

                    // Client en cours.
                    CaisseClientItem caisseClientItem = caisseSessionItem.Clients
                                                        .Where(x => x.DateFinClient == DateTime.MinValue)
                                                        .SingleOrDefault();
                    if (caisseClientItem != null)
                    {
                        strClientEnCours = caisseClientItem.NomClient;
                    }
                }

                // Ajout à la liste des résultats.
                caisseSimpleMvItems.Add(new CaisseSimpleMv()
                {
                    Numero        = caisseItem.Numero,
                    Etat          = strEtatCaisse,
                    ClientEnCours = strClientEnCours
                });
            }

            // Retour.
            return(Ok(caisseSimpleMvItems));
        }