public Boolean AddProduct(Listino listino, Prodotto prodotto, int quantita)
        {
            Listino existingListino = GetListino(listino.Id);

            if (existingListino != null)
            {
                ProdottoService prodSrv          = new ProdottoService();
                Prodotto        existingProdotto = prodSrv.GetProdotto(prodotto.Id);

                if (existingProdotto != null)
                {
                    DettaglioListino dettaglio = new DettaglioListino()
                    {
                        Id_listino  = listino.Id,
                        Id_prodotto = prodotto.Id,
                        quantita    = quantita
                    };
                    context.DettaglioListinoSet.Add(dettaglio);
                    context.SaveChanges();

                    return(true);
                }
                else
                {
                    return(false);
                    //throw new DbUpdateException();
                }
            }
            else
            {
                return(false);
                //throw new DbUpdateException();
            }
        }
Exemple #2
0
        public ActionResult AddProduct(int idListino, int idProdotto, int quantita)
        {
            /*foreach (ModelState state in ViewData.ModelState.Values.Where(x => x.Errors.Count > 0))
             * {
             *  var faultyState = state;
             * }*/

            if (ModelState.IsValid)
            {
                ListinoService listSrv = new ListinoService();
                Listino        listino = listSrv.GetListino(idListino);

                ProdottoService prodSrv  = new ProdottoService();
                Prodotto        prodotto = prodSrv.GetProdotto(idProdotto);
                bool            result   = listSrv.AddProduct(listino, prodotto, quantita);

                List <Prodotto> prodotti  = listSrv.GetProdotti(listino);
                var             viewModel = new ListinoModel(listino, prodotti);

                return(View("Manage", viewModel));
                //return Redirect(Request.UrlReferrer.ToString());
            }
            else
            {
                return(null);
            }
        }
 public ListinoModel(Listino listino, List <Prodotto> prodotti)
 {
     Id          = listino.Id;
     Codice      = listino.Codice;
     Descrizione = listino.Descrizione;
     Prodotti    = prodotti;
 }
        public Listino GetListino(int id)
        {
            Listino listino = new Listino();

            listino = (from item in context.ListinoSet select item).SingleOrDefault(x => x.Id == id);

            return(listino);
        }
        public static List <Prodotto> GetProdottiFree(this ListinoModel _listino)
        {
            Listino listino = ListinoModel2Listino(_listino);

            ListinoService  listSrv  = new ListinoService();
            List <Prodotto> prodotti = listSrv.GetProdottiFree(listino);

            return(prodotti);
        }
Exemple #6
0
        public ListinoDTO Modifica(int id, string anno, string nome, int idInstaller)
        {
            Listino l = modelloDatiDbContext.Listini.Find(id);

            l.ListinoID = id;
            l.Anno      = anno;
            l.Nome      = nome;
            l.Installer = modelloDatiDbContext.Customers.Find(idInstaller);
            modelloDatiDbContext.SaveChanges();
            return(ListinoConverter.convertToDTO(l));
        }
Exemple #7
0
        public void InserisciItemTypeInListino(double prezzo, int idItemType, int idListino)
        {
            ItemType itemType = modelloDatiDbContext.ItemTypes.Find(idItemType);
            Listino  listino  = modelloDatiDbContext.Listini.Find(idListino);
            Prezzo   p        = new Prezzo()
            {
                Price = prezzo, ItemType = itemType, Listino = listino
            };

            modelloDatiDbContext.Prezzi.Add(p);
            modelloDatiDbContext.SaveChanges();
        }
Exemple #8
0
        public void Associa(string anno, string nome, int idInstaller, int idManufacturer)
        {
            Customer installer    = modelloDatiDbContext.Customers.Find(idInstaller);
            Customer manufacturer = modelloDatiDbContext.Customers.Find(idManufacturer);
            Listino  l            = new Listino()
            {
                Anno = anno, Nome = nome, Installer = installer, Manufacturer = manufacturer
            };

            modelloDatiDbContext.Listini.Add(l);
            Inserisci();
        }
Exemple #9
0
        public ActionResult Delete(int id)
        {
            ListinoService listSrv = new ListinoService();

            Listino listino = listSrv.GetListino(id);

            if (listino == null)
            {
                return(HttpNotFound());
            }

            Boolean result = listSrv.DeleteListino(listino);

            return(RedirectToAction("Index"));
        }
        public static Listino ListinoModel2Listino(ListinoModel _listino)
        {
            DettaglioListinoService dlSrv    = new DettaglioListinoService();
            List <DettaglioListino> dettagli = dlSrv.GetDettagliByListino(_listino.Id);

            Listino listino = new Listino()
            {
                Id          = _listino.Id,
                Codice      = _listino.Codice,
                Descrizione = _listino.Descrizione,
                //DettaglioListino = dettagli
            };

            return(listino);
        }
Exemple #11
0
        public ActionResult Edit(int id)
        {
            ListinoService listSrv = new ListinoService();
            Listino        listino = listSrv.GetListino(id);

            if (listino == null)
            {
                return(HttpNotFound());
            }

            List <Prodotto> prodotti = listSrv.GetProdotti(listino);

            var viewModel = new ListinoModel(listino, prodotti);

            return(View("Edit", viewModel));
        }
        public List <Prodotto> GetProdotti(Listino listino)
        {
            var listProduct = context.DettaglioListinoSet.Where(x => x.Id_listino == listino.Id).ToList();

            List <Prodotto> prodotti = new List <Prodotto>();

            foreach (var dettaglio in listProduct)
            {
                ProdottoService prodSrv = new ProdottoService();
                if (dettaglio.Id_prodotto.HasValue)
                {
                    prodotti.Add(prodSrv.GetProdotto(dettaglio.Id_prodotto.Value));
                }
            }
            return(prodotti);
        }
        public List <Prodotto> GetProdottiFree(Listino listino)
        {
            /*T-SQL QUERY:
             *  select a.* from ProdottoSet a
             *  left join DettaglioListinoSet b on a.Id = b.Id_prodotto
             *  where (b.Id_prodotto is NULL OR b.Id_listino != 1)
             */
            List <Prodotto> prodotti = (from a in context.ProdottoSet
                                        join b in context.DettaglioListinoSet on a.Id equals b.Id_prodotto into temp
                                        from bsub in temp.DefaultIfEmpty()
                                        where bsub.Id_prodotto == null || bsub.Id_listino != listino.Id
                                        select a
                                        ).ToList();

            return(prodotti);
        }
        public Listino CreateListino(Listino listino)
        {
            Listino existingListino = GetListino(listino.Id);

            if (existingListino == null)
            {
                context.ListinoSet.Add(listino);
                context.SaveChanges();
            }
            else
            {
                throw new DbUpdateException();
            }

            return(listino);
        }
Exemple #15
0
        public static Listino convertToListino(ListinoDTO lDTO)
        {
            Listino l = new Listino();

            l.ListinoID = lDTO.id;
            l.Anno      = lDTO.anno;
            l.Nome      = lDTO.nomeListino;
            if (lDTO.installer != null)
            {
                l.Installer = CustomerConverter.convertToCustomer(lDTO.installer);
            }
            if (lDTO.idManufacturer != null)
            {
                l.Manufacturer = CustomerConverter.convertToCustomer(lDTO.idManufacturer);
            }
            return(l);
        }
Exemple #16
0
        public static ListinoDTO convertToDTO(Listino l)
        {
            ListinoDTO lDTO = new ListinoDTO();

            lDTO.id          = l.ListinoID;
            lDTO.anno        = l.Anno;
            lDTO.nomeListino = l.Nome;
            if (l.Installer != null)
            {
                lDTO.installer = CustomerConverter.convertToDto(l.Installer);
            }
            if (l.Manufacturer != null)
            {
                lDTO.idManufacturer = CustomerConverter.convertToDto(l.Manufacturer);
            }
            return(lDTO);
        }
Exemple #17
0
        public int CompareTo(object obj)
        {
            var dto = obj as DTOPrezzoIdentifier;

            if (dto == null)
            {
                return(-1);
            }
            if ((dto.Listino == null && Listino != null) || Listino == null && dto.Listino != null)
            {
                return(-1);
            }
            if ((dto.ProdottoDiListino == null && ProdottoDiListino != null) || ProdottoDiListino == null && dto.ProdottoDiListino != null)
            {
                return(-1);
            }
            return((ProdottoDiListino.CompareTo(dto.ProdottoDiListino)) == 0 ? Listino.CompareTo(dto.Listino) : ProdottoDiListino.CompareTo(dto.ProdottoDiListino));
        }
        public Boolean RemoveProduct(Listino listino, Prodotto prodotto, int quantita)
        {
            Listino existingListino = GetListino(listino.Id);

            if (existingListino != null)
            {
                ProdottoService prodSrv          = new ProdottoService();
                Prodotto        existingProdotto = prodSrv.GetProdotto(prodotto.Id);

                if (existingProdotto != null)
                {
                    DettaglioListinoService dlSrv = new DettaglioListinoService();

                    ///Get from different context (NOT WORKING)
                    //DettaglioListino dettaglio = dlSrv.GetDettaglioByListinoProdotto(listino.Id, prodotto.Id);

                    ///Get from same context (OK)
                    DettaglioListino dettaglio = context.DettaglioListinoSet.SingleOrDefault(x => x.Id_listino == listino.Id && x.Id_prodotto == prodotto.Id);

                    if (dettaglio != null)
                    {
                        context.DettaglioListinoSet.Remove(dettaglio);
                        context.SaveChanges();

                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
                else
                {
                    return(false);
                    //throw new DbUpdateException();
                }
            }
            else
            {
                return(false);
                //throw new DbUpdateException();
            }
        }
        public Listino UpdateListino(Listino listino, List <Prodotto> prodotti)
        {
            Listino newListino = GetListino(listino.Id);

            newListino = GetListino(listino.Id);

            if (newListino != null)
            {
                newListino.Codice      = listino.Codice;
                newListino.Descrizione = listino.Descrizione;

                context.SaveChanges();
            }
            else
            {
                throw new DbUpdateException();
            }

            return(listino);
        }
Exemple #20
0
        public ActionResult Save(Listino listino, List <Prodotto> prodotti)
        {
            if (!ModelState.IsValid)
            {
                var viewModel = new ListinoModel(listino, prodotti);

                return(View("Edit", viewModel));
            }

            ListinoService listSrv = new ListinoService();

            if (listino.Id == 0)
            {
                listSrv.CreateListino(listino);
            }
            else
            {
                listSrv.UpdateListino(listino, prodotti);
            }

            return(RedirectToAction("Index"));
        }
Exemple #21
0
        public ActionResult RemoveProduct(int idListino, int idProdotto, int quantita)
        {
            if (ModelState.IsValid)
            {
                ListinoService listSrv = new ListinoService();
                Listino        listino = listSrv.GetListino(idListino);

                ProdottoService prodSrv  = new ProdottoService();
                Prodotto        prodotto = prodSrv.GetProdotto(idProdotto);
                bool            result   = listSrv.RemoveProduct(listino, prodotto, quantita);

                List <Prodotto> prodotti  = listSrv.GetProdotti(listino);
                var             viewModel = new ListinoModel(listino, prodotti);

                return(View("Manage", viewModel));
                //return Redirect(Request.UrlReferrer.ToString());
            }
            else
            {
                return(null);
            }
        }
        public Boolean DeleteListino(Listino listino)
        {
            Listino newListino = GetListino(listino.Id);

            if (newListino != null)
            {
                /// FIRST remove related entries in dettaglioListino
                DettaglioListinoService dlSrv    = new DettaglioListinoService();
                List <DettaglioListino> dettagli = dlSrv.GetDettagliByListino(listino.Id);
                foreach (var dettaglio in dettagli)
                {
                    context.DettaglioListinoSet.Remove(dettaglio);
                    context.SaveChanges();
                }

                context.ListinoSet.Remove(listino);
                context.SaveChanges();
                return(true);
            }
            else
            {
                return(false);
            }
        }