Esempio n. 1
0
        public List <Nabavke> Get()
        {
            var list = _context.Nabavka
                       .Include(x => x.Dobavljac).Include(y => y.Skladiste)
                       .ToList();

            var listanabavki = new List <Nabavke>();

            foreach (var item in list)
            {
                Nabavke nabavka = new Nabavke();

                nabavka.BrojNabavke     = item.BrojNabavke;
                nabavka.Datum           = item.Datum;
                nabavka.DobavljacId     = item.DobavljacId;
                nabavka.IznosRacuna     = item.IznosRacuna;
                nabavka.KontaktOsoba    = item.Dobavljac.KontaktOsoba;
                nabavka.NabavkaId       = item.NabavkaId;
                nabavka.Napomena        = item.Napomena;
                nabavka.NazivDobavljaca = item.Dobavljac.Naziv;
                nabavka.NazivSkladista  = item.Skladiste.Naziv;
                nabavka.Pdv             = item.Pdv;
                nabavka.SkladisteId     = item.SkladisteId;
                nabavka.Telefon         = item.Dobavljac.Telefon;

                listanabavki.Add(nabavka);
            }

            return(listanabavki);
        }
        public bool NabavkaNarucivanje(int nabavka, string napomena)
        {
            Nabavke nabavke = trebovanjeNabavkeContext.Nabavkes.FirstOrDefault(x => x.NabavkaId == nabavka);

            nabavke.StatusNabavkeId          = (int)Enum.Status.Naruceno; //status trebovanja "naruceno"
            nabavke.NapomenaReferentaNabavke = napomena;
            OdobravanjeNabavkeController email = new OdobravanjeNabavkeController();

            if (email.PosaljiMejlSkladistaruZaNovuNabavku(nabavke.SifraRadnika, nabavka))
            {
                trebovanjeNabavkeContext.SaveChanges();
                return(true);
            }
            else
            {
                return(false);
            }
        }
Esempio n. 3
0
        public Nabavke GetById(int id)
        {
            Model.Database.Nabavka item = _context.Nabavka.Where(x => x.NabavkaId == id)
                                          .Include(y => y.Skladiste).Include(z => z.Dobavljac)
                                          .SingleOrDefault();


            Nabavke nabavka = new Nabavke();

            nabavka.BrojNabavke     = item.BrojNabavke;
            nabavka.Datum           = item.Datum;
            nabavka.DobavljacId     = item.DobavljacId;
            nabavka.IznosRacuna     = item.IznosRacuna;
            nabavka.KontaktOsoba    = item.Dobavljac.KontaktOsoba;
            nabavka.NabavkaId       = item.NabavkaId;
            nabavka.Napomena        = item.Napomena;
            nabavka.NazivDobavljaca = item.Dobavljac.Naziv;
            nabavka.NazivSkladista  = item.Skladiste.Naziv;
            nabavka.Pdv             = item.Pdv;
            nabavka.SkladisteId     = item.SkladisteId;
            nabavka.Telefon         = item.Dobavljac.Telefon;

            return(nabavka);
        }
        public ActionResult NovaNabavkaZaOsnovnaSredstva(NabavkaViewModel viewModel)
        {
            //if (!ModelState.IsValid)
            //    return View(viewModel);

            string serijskiBroj = NoviSerijskiBroj();

            List <DokumentViewModel> dokumenti = new List <DokumentViewModel>();

            if (viewModel.Files != null)
            {
                foreach (HttpPostedFileBase file in viewModel.Files)
                {
                    //Checking file is available to save.
                    if (file != null)
                    {
                        byte[] uploadedFile = new byte[file.ContentLength];
                        file.InputStream.Read(uploadedFile, 0, uploadedFile.Length);

                        dokumenti.Add(new DokumentViewModel(uploadedFile, file.FileName));
                    }
                }
            }

            var logovaniRadnik = trebovanjeNabavkeContext.vRadniks.FirstOrDefault(r => r.KorisnickoIme == User.Identity.Name);

            Nabavke novaNabavka = new Nabavke
            {
                SifraRadnika          = logovaniRadnik.RadnikSifra,
                SifraReferentaNabavke = viewModel.SifraReferentaNabavke,
                TipId                   = viewModel.TipId,
                StatusNabavkeId         = (int)Status.Na_čekanju,
                SerijskiBroj            = serijskiBroj,
                DatumPodnosenjaZahtjeva = DateTime.Now,
                Obrazlozenja            = viewModel.Obrazlozenja,
                Odgovoran               = viewModel.Odgovoran,
                VezanaNabavkaId         = viewModel.VezanaNabavkaId,
                Dokuments               = dokumenti.Select(d => new Dokument
                {
                    Naziv     = d.FileName,
                    Dokument1 = d.fileBytes
                }).ToList(),
                NabavkaVeznas = viewModel.Stavke.Select(s => new NabavkaVezna
                {
                    Opis      = s.Opis,
                    Kolicina  = s.Kolicina,
                    ArtiklId  = s.ArtiklId,
                    StatusId  = (int)Status.Na_čekanju,
                    Cijena    = s.Cijena,
                    Dobavljac = s.Dobavljac
                }).ToList(),
                DatumiOdobravanjaNabavke = new DatumiOdobravanjaNabavke()
            };//nova nabavka

            trebovanjeNabavkeContext.Nabavkes.Add(novaNabavka);
            trebovanjeNabavkeContext.SaveChanges();

            var narucilac = trebovanjeNabavkeContext.vRadniks.FirstOrDefault(x => x.KorisnickoIme == User.Identity.Name);
            OdobravanjeNabavkeController email = new OdobravanjeNabavkeController();

            if (narucilac.SektorSifra.ToLower() == "m" && viewModel.TipId == 2)
            {
                if (email.PosaljiMejlMarketinguZaNovuNabavku(novaNabavka.SerijskiBroj))
                {
                    novaNabavka.StatusNabavkeId = (int)Status.U_procesu_nabavke;
                    trebovanjeNabavkeContext.SaveChanges();
                    return(Json(new { success = true }));
                }
                else
                {
                    return(Json(new { success = false }));
                }
            }
            else
            {
                //Poziv metode koja salje meil marketingu sa linkom do nove nabavke
                string sadrzajMejla = "<p>Poštovani, <br/><br/>  Na sistemu LANACO trebovanje i nabavke je novi zahtjev za <a href=" +
                                      adresaHosta + "OdobravanjeNabavke/OdobravanjeNabavke?nabavka=" + novaNabavka.NabavkaId + ">odobravanje nabavke</a>.<br/>" +
                                      "Podnosilac zahtjeva: " + narucilac.Ime + " " + narucilac.Prezime + "<br/>" +
                                      "Broj zahtjeva: " + novaNabavka.SerijskiBroj;

                sadrzajMejla += "<br/><br/><span>Srdačan pozdrav,<br/><br/> Lanaco trebovanje i nabavke</span>";


                //mejl za novu nabavku ce poslati nadredjenom ako ga ima, ako ga nema poslat ce mejl direktno Timu prodaje i nabavki da imaju novu narudzbu
                //false vraca samo u slucaju da mejl nije poslat
                if (email.SlanjeMejlaZaNovuNabavku("Zahtjev za odobravanje nabavke", sadrzajMejla, narucilac.KorisnickoIme, serijskiBroj))
                {
                    return(Json(new { success = true }));
                }
                else
                {
                    return(Json(new { success = false }));
                }
            }
        }