Пример #1
0
        public async Task<IActionResult> Edit(int id, [Bind("Qty,CarelloId,ComponenteId")] ComponenteDelCarello componenteDelCarello)
        {
            if (id != componenteDelCarello.CarelloId)
            {
                return NotFound();
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(componenteDelCarello);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ComponenteDelCarelloExists(componenteDelCarello.CarelloId))
                    {
                        return NotFound();
                    }
                    else
                    {
                        throw;
                    }
                }
                return RedirectToAction(nameof(Index));
            }
            ViewData["CarelloId"] = new SelectList(_context.Carelli, "Id", "Matricola", componenteDelCarello.CarelloId);
            ViewData["ComponenteId"] = new SelectList(_context.Componente, "Id", "Codice", componenteDelCarello.ComponenteId);
            return View(componenteDelCarello);
        }
Пример #2
0
 public async Task<IActionResult> Create([Bind("Qty,CarelloId,ComponenteId")] ComponenteDelCarello componenteDelCarello)
 {
     if (ModelState.IsValid)
     {
         _context.Add(componenteDelCarello);
         await _context.SaveChangesAsync();
         return RedirectToAction(nameof(Index));
     }
     ViewData["CarelloId"] = new SelectList(_context.Carelli, "Id", "Matricola", componenteDelCarello.CarelloId);
     ViewData["ComponenteId"] = new SelectList(_context.Componente, "Id", "Codice", componenteDelCarello.ComponenteId);
     return View(componenteDelCarello);
 }
Пример #3
0
        public async Task <ActionResult> Json([FromBody] DbViewArriviComponente dbView)
        {
            string result = "Error! c'è un problema!";

            if (!string.IsNullOrEmpty(dbView.Matricola) && !string.IsNullOrEmpty(dbView.Descrizione) &&
                dbView.ComponenteCarello != null && !string.IsNullOrEmpty(dbView.Identificativo) &&
                !string.IsNullOrEmpty(dbView.CodiceLocazione) && dbView.AreaId != 0)
            {
                //controllo per sapere se il carello esiste già
                Carello carello = _context.Carelli.FirstOrDefault(c => c.Matricola == dbView.Matricola);

                //se non esiste lo aggiungiamo
                if (carello == null)
                {
                    carello           = new Carello();
                    carello.Matricola = dbView.Matricola;
                    _context.Carelli.Add(carello);
                    await _context.SaveChangesAsync();
                }
                int idCarello = carello.Id;

                //controllo per sapere se la locazione esiste già
                Locazione locazione = _context.Locazioni.FirstOrDefault(l => l.AreaId == dbView.AreaId &&
                                                                        l.Codice == dbView.CodiceLocazione);
                //se non esiste la aggiungiamo
                if (locazione == null)
                {
                    locazione        = new Locazione();
                    locazione.Codice = dbView.CodiceLocazione;
                    locazione.AreaId = dbView.AreaId;
                    _context.Locazioni.Add(locazione);
                    await _context.SaveChangesAsync();
                }
                int locazioneId = locazione.Id;

                //Verifica se è gia stato effetuato questa accetazione
                Arrivi arrivi = _context.Arrivi.Find(idCarello, locazioneId);
                if (arrivi == null)
                {
                    arrivi = new Arrivi();
                    arrivi.Identificativo = dbView.Identificativo;
                    arrivi.Descrizione    = dbView.Descrizione;
                    arrivi.Date           = DateTime.Now;
                    arrivi.CarelloId      = idCarello;
                    arrivi.LocazioneId    = locazioneId;
                    _context.Arrivi.Add(arrivi);
                    await _context.SaveChangesAsync();
                }
                else
                {
                    //manda in error 500 se si cerca di inserire un carello gia presente e una locazione gia presente
                }

                //aggiornamento delle componente di questo carello
                ComponenteDelCarello cdc;
                Componente           compo;
                foreach (var item in dbView.ComponenteCarello)
                {
                    cdc              = new ComponenteDelCarello();
                    compo            = _context.Componente.FirstOrDefault(c => c.Codice == item.ComponenteId);
                    cdc.ComponenteId = compo.Id;
                    cdc.CarelloId    = idCarello;
                    cdc.Qty          = item.Qty;
                    _context.ComponentiDeiCarelli.Add(cdc);
                }
                _context.SaveChanges();
                result = "Success!";
            }
            return(Json(result));
        }