예제 #1
0
        public async Task <IActionResult> Create(int destinatarioId, [Bind("Id,Testo,GruppoId")] Rapporto rapporto)
        {
            if (_context.Assegnazioni.Count(a => a.GruppoId == rapporto.GruppoId && a.UtenteId == destinatarioId) > 0)
            {
                rapporto.Data   = DateTime.Now.Date;
                rapporto.Autore = await _manager.GetUserAsync(User);

                rapporto.Gruppo = await _context.Gruppi.FindAsync(rapporto.GruppoId);

                if (destinatarioId != 0)
                {
                    rapporto.Destinatario = await _context.Users.FindAsync(destinatarioId);
                }
                await _context.AddAsync(rapporto);

                if (await _context.SaveChangesAsync() > 0)
                {
                    return(RedirectToAction("Index"));
                }
            }
            else
            {
                ViewData["Errore"] = "Il destinatario non fa parte del gruppo.";
            }
            ViewData["DestinatarioId"] = new SelectList(_context.Users, "Id", "Nome", rapporto.DestinatarioId);
            ViewData["GruppoId"]       = new SelectList(_context.Gruppi, "Id", "Nome", rapporto.GruppoId);
            return(View(rapporto));
        }
예제 #2
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,Testo,AutoreUtenteId,GruppoId")] Rapporto rapporto)
        {
            if (id != rapporto.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(rapporto);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!RapportoExists(rapporto.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            ViewData["AutoreUtenteId"] = new SelectList(_context.Users, "Id", "Id", rapporto.AutoreId);
            ViewData["GruppoId"]       = new SelectList(_context.Gruppi, "Id", "Id", rapporto.GruppoId);
            //ViewData["SoggettoUtenteId"] = new SelectList(_context.Users, "Id", "Id", rapporto.SoggettoUtenteId);
            return(View(rapporto));
        }