Exemple #1
0
        [ProducesResponseType(404)] // Not found
        public async Task <IActionResult> Lit([FromQuery] KeyUidRnoNo2 keyDétail)
        {
            CarteUtilisateur carte = await _utilisateurService.CréeCarteUtilisateur(HttpContext.User);

            if (carte == null)
            {
                // fausse carte
                return(Forbid());
            }

            bool estLeClient = await carte.EstActifEtAMêmeUidRno(AKeyUidRnoNo2.KeyUidRno_1(keyDétail).KeyParam);

            if (!estLeClient)
            {
                bool estFournisseur = await carte.EstActifEtAMêmeUidRno(AKeyUidRnoNo2.KeyUidRno_2(keyDétail).KeyParam);

                if (!estFournisseur)
                {
                    return(Forbid());
                }
            }

            DétailCommande détail = await _détailCommandeService.Lit(keyDétail.KeyParam);

            if (détail == null)
            {
                return(NotFound());
            }

            DétailCommandeVue vue = _détailCommandeService.CréeVue(détail);

            return(Ok(vue));
        }
Exemple #2
0
        public async Task <Commande> CommandeDeDétail(AKeyUidRnoNo2 aKeyDétail)
        {
            Commande commande = await _context.Commande
                                .Where(c => c.CommenceKey(aKeyDétail.KeyParam))
                                .FirstOrDefaultAsync();

            return(commande);
        }
Exemple #3
0
        /// <summary>
        /// retourne la Commande du détail référencé
        /// </summary>
        /// <param name="aKeyDétail">KeyUidRnoNo2 d'un détail ou DétailCommande ou DétailCommandeVue</param>
        /// <returns></returns>
        public async Task <Commande> Commande(AKeyUidRnoNo2 aKeyDétail)
        {
            Commande commande = await _context.Commande
                                .Where(c => c.Uid == aKeyDétail.Uid && c.Rno == aKeyDétail.Rno && c.No == aKeyDétail.No)
                                .FirstOrDefaultAsync();

            return(commande);
        }
Exemple #4
0
 public Vérificateur(ParamsSupprimeDétail paramsDétail)
 {
     KeyClient     = AKeyUidRnoNo2.KeyUidRno_1(paramsDétail);
     KeyCommande   = AKeyUidRnoNo2.KeyUidRnoNo_1(paramsDétail);
     KeyDétail     = paramsDétail;
     NoLivraison   = paramsDétail.NoLivraison;
     DateCatalogue = paramsDétail.DateCatalogue;
 }
 public KeyUidRnoNo Key2(AKeyUidRnoNo2 key)
 {
     return(new KeyUidRnoNo
     {
         Uid = key.Uid2,
         Rno = key.Rno2,
         No = key.No
     });
 }
Exemple #6
0
        /// <summary>
        /// retourne le détail référencé, les champs Commande, Commande.Livraison et Livraison.Facture sont inclus
        /// </summary>
        /// <param name="aKeyDétail">KeyUidRnoNo2 d'un détail ou DétailCommande ou DétailCommandeVue</param>
        /// <returns></returns>
        public async Task <DétailCommande> Détail(AKeyUidRnoNo2 aKeyDétail)
        {
            DétailCommande détail = await _context.DétailCommande
                                    .Where(d => d.AMêmeKey(aKeyDétail))
                                    .Include(d => d.Commande)
                                    .ThenInclude(c => c.Livraison)
                                    .ThenInclude(l => l.Facture)
                                    .FirstOrDefaultAsync();

            return(détail);
        }
Exemple #7
0
 public Vérificateur(DétailCommandes.DétailCommandeVue vueDétail, ParamsEditeDétail paramsDétail)
 {
     KeyClient   = AKeyUidRnoNo2.KeyUidRno_1(vueDétail);
     KeyCommande = AKeyUidRnoNo2.KeyUidRnoNo_1(vueDétail);
     KeyDétail   = new KeyUidRnoNo2();
     KeyDétail.CopieKey(vueDétail.KeyParam);
     VueDétail = vueDétail;
     if (paramsDétail != null)
     {
         NoLivraison   = paramsDétail.NoLivraison;
         DateCatalogue = paramsDétail.DateCatalogue;
     }
 }
Exemple #8
0
 public Vérificateur(AKeyUidRnoNo2 keyDétail)
 {
     KeyClient   = AKeyUidRnoNo2.KeyUidRno_1(keyDétail);
     KeyCommande = AKeyUidRnoNo2.KeyUidRnoNo_1(keyDétail);
     KeyDétail   = keyDétail;
 }