public void Execute(CreateProizvodDTO request)
        {
            // predpostavljacu da i proizvodi moraju imati unikatno ime iako nije realno
            if (_context.Proizvods.Any(k => k.Naziv.ToLower().Contains(request.Naziv.ToLower())))
            {
                throw new EntityAlreadyExistsException("This article ");
            }

            if (!_context.Kategorijas.Any(r => r.Id == request.KatId))
            {
                throw new EntityNotFoundException("Category ");
            }
            if (!_context.Dobavljacs.Any(r => r.Id == request.DobId))
            {
                throw new EntityNotFoundException("Supplier ");
            }
            if (!_context.Proizvodjacs.Any(r => r.Id == request.ProId))
            {
                throw new EntityNotFoundException("Maker ");
            }

            _context.Proizvods.Add(new Proizvod
            {
                Naziv      = request.Naziv,
                Opis       = request.Opis,
                Cena       = request.Cena,
                KatId      = request.KatId,
                DobId      = request.DobId,
                ProId      = request.ProId,
                ModifiedOn = null
            });

            _context.SaveChanges();
        }
Ejemplo n.º 2
0
        public ActionResult Create([FromForm] CreateProizvodDTO dto)
        {
            try
            {
                // TODO: Add insert logic here
                _createProizvod.Execute(dto);

                return(RedirectToAction(nameof(Index)));
            }
            catch (EntityNotFoundException e) { TempData["Error"] = e.Message; }
            catch (Exception e) { TempData["Error"] = "Server error " + e.Message; }
            return(View());
        }
Ejemplo n.º 3
0
 public ActionResult Post([FromBody] CreateProizvodDTO dto)
 {
     try
     {
         _createProizvod.Execute(dto);
         return(StatusCode(201));
     }
     catch (EntityAlreadyExistsException e)
     {
         return(UnprocessableEntity(e.Message));
     }
     catch (EntityNotFoundException e)
     {
         return(NotFound(e.Message));
     }
     catch (Exception e)
     {
         return(StatusCode(500, e.Message));
     }
 }