예제 #1
0
        public async Task <List <FicheFrais> > CreateFicheFrais(int id, CreateFicheModel model)
        {
            if (model == null)
            {
                throw new NullReferenceException("Register model is null");
            }
            var date = DateTime.Now;

            var forfait = await _context.Forfaits.FirstOrDefaultAsync(f => f.Libelle == model.Forfait);

            var idForfait = forfait.Id;
            var montant   = forfait.Montant;
            var etat      = await _context.Etats.FirstOrDefaultAsync(e => e.Id == "CR");

            //var ligne = await _context.LignesFrais.Where(l => l.Mois == date.ToString("MM-yyyy")).ToListAsync();

            var fiche = new FicheFrais();

            fiche.Mois             = date.ToString("MM-yyyy");
            fiche.EtatId           = etat.Id;
            fiche.VisiteurId       = id;
            fiche.ForfaitId        = idForfait;
            fiche.Justificatifs    = Convert.ToInt32(model.Justificatif);
            fiche.MontantValide    = (decimal)montant * Convert.ToInt32(model.Justificatif);
            fiche.DateModification = date;

            _context.FichesFrais.Add(fiche);
            await _context.SaveChangesAsync();

            return(await _context.FichesFrais.Where(f => f.Mois == fiche.Mois).ToListAsync());
        }
예제 #2
0
        public async Task <IActionResult> CreateFicheFrais([FromBody] CreateFicheModel model)
        {
            var userId = Convert.ToInt32(User.FindFirst(ClaimTypes.NameIdentifier).Value);

            try
            {
                return(Ok(await _fraisRepository.CreateFicheFrais(userId, model)));
            }
            catch
            {
                return(Ok("Error"));
            }
        }