Exemplo n.º 1
0
        public async Task <IActionResult> GetRNalog([FromRoute] int id)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            RNalog rNalog = await _context.RadniNalozi.SingleOrDefaultAsync(m => m.ID == id);

            if (rNalog == null)
            {
                return(NotFound());
            }

            return(Ok(rNalog));
        }
Exemplo n.º 2
0
        public async Task <IActionResult> PostRNalog([FromBody]  RNalog rNalog)
        {
            //string correctdate = rNalog.Datum.ToString();
            //DateTime dt = Convert.ToDateTime(rNalog.Datum.ToString("MM/dd/yyyy"));
            //rNalog.Datum = dt;


            // rNalog.Datum = DateTime.Now.ToShortDateString();


            //provjera ako su dodatni izvrsitelji prazni



            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }


            Automobil  auto  = _context.Automobili.Where(a => a.ID == rNalog.AutomobilID).FirstOrDefault();
            MjestoRada rad   = _context.MjestoRada.Where(m => m.ID == rNalog.MjestoRada.ID).FirstOrDefault();
            VrstaRada  vrsta = _context.VrstaRada.Where(vr => vr.ID == rNalog.VrstaRada.ID).FirstOrDefault();

            //rNalog.Automobil = auto;
            //rNalog.MjestoRada = rad;
            //rNalog.VrstaRada = vrsta;


            // string correctdate = rNalog.Datum.ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);

            // DateTime dt = DateTime.ParseExact(correctdate, "dd/MM/yyyy", CultureInfo.GetCultureInfoByIetfLanguageTag("hr-HR"));



            RNalog nalog = new RNalog
            {
                LokacijaRada         = rNalog.LokacijaRada,
                Automobil            = auto,
                MjestoRada           = rad,
                VrstaRada            = vrsta,
                AutomobilID          = rNalog.AutomobilID,
                Datum                = String.Format("{0:DD-MM-YYYY HH}", rNalog.Datum),
                Izvrsitelj2          = rNalog.Izvrsitelj2,
                Izvrsitelj3          = rNalog.Izvrsitelj3,
                Materijal            = rNalog.Materijal,
                MjestoRadaID         = rNalog.MjestoRada.ID,
                OpisRadova           = rNalog.OpisRadova,
                PutniNalog           = rNalog.PutniNalog,
                Rukovoditelj         = rNalog.Rukovoditelj,
                VrstaRadaID          = rNalog.VrstaRadaID,
                IspraveZaRad         = rNalog.IspraveZaRad,
                KategorijaRada       = rNalog.KategorijaRada,
                TipRada              = rNalog.TipRada,
                ObukaZaposlenika     = rNalog.ObukaZaposlenika,
                OsiguranjeMjestaRada = rNalog.OsiguranjeMjestaRada,
                NadzorZaposlenika    = rNalog.NadzorZaposlenika,
                RadVezanUZ           = rNalog.RadVezanUZ,
                Prilog               = rNalog.Prilog,
                Napomena             = rNalog.Napomena,
                RadniZadatakBroj     = rNalog.RadniZadatakBroj,
                PocetakRadova        = String.Format("{0:DD-MM-YYYY HH}", rNalog.PocetakRadova),
                KrajRadova           = String.Format("{0:DD-MM-YYYY HH}", rNalog.KrajRadova)
            };

            Console.WriteLine(nalog.Datum);

            _context.Entry(nalog).State = EntityState.Added;


            //sranje koje trebaobaviti za save OWNED TIPOVA
            var katRada = _context.Entry(nalog).Reference(s => s.KategorijaRada).TargetEntry;

            katRada.State = EntityState.Added;

            var ispraveRad = _context.Entry(nalog).Reference(s => s.IspraveZaRad).TargetEntry;

            ispraveRad.State = EntityState.Added;

            var nadzorZapo = _context.Entry(nalog).Reference(s => s.NadzorZaposlenika).TargetEntry;

            nadzorZapo.State = EntityState.Added;

            var obukaZapo = _context.Entry(nalog).Reference(s => s.ObukaZaposlenika).TargetEntry;

            obukaZapo.State = EntityState.Added;

            var osiguranjeMjesta = _context.Entry(nalog).Reference(s => s.OsiguranjeMjestaRada).TargetEntry;

            osiguranjeMjesta.State = EntityState.Added;


            var tipRada = _context.Entry(nalog).Reference(s => s.TipRada).TargetEntry;

            tipRada.State = EntityState.Added;


            // _context.RadniNalozi.Add(nalog);

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateException)
            {
                if (RNalogExists(nalog.ID))
                {
                    return(new StatusCodeResult(StatusCodes.Status409Conflict));
                }
                else
                {
                    throw;
                }
            }

            return(CreatedAtAction("GetRNalog", new { id = nalog.ID }, "success creating nalog"));
        }
Exemplo n.º 3
0
        public async Task <IActionResult> PutRNalog([FromRoute] int id, [FromBody] RNalog nalog)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != nalog.ID)
            {
                return(BadRequest());
            }

            //var nalog = await _context.RadniNalozi.SingleOrDefaultAsync(m => m.ID == id);



            // rNalog.Datum = rNalog.Datum;

            //  Datum = String.Format("{0:dd-MM-yyyy}", DateTime.Now)


            var rnalog2 = _context.RadniNalozi
                          .Include(mjrada => mjrada.MjestoRada)
                          .Include(vrada => vrada.VrstaRada)
                          .Include(izvr2 => izvr2.Rukovoditelj)
                          .Include(izvr3 => izvr3.Izvrsitelj2)
                          .Include(aut => aut.Automobil)
                          .Include(izvr4 => izvr4.Izvrsitelj3).AsNoTracking().SingleOrDefault(rn => rn.ID == nalog.ID);

            rnalog2.ID                   = nalog.ID;
            rnalog2.AutomobilID          = nalog.AutomobilID;
            rnalog2.MjestoRadaID         = nalog.MjestoRadaID;
            rnalog2.VrstaRadaID          = nalog.VrstaRadaID;
            rnalog2.Datum                = String.Format("{0:DD-MM-YYYY HH}", nalog.Datum);
            rnalog2.Izvrsitelj2.ID       = nalog.Izvrsitelj2.ID;
            rnalog2.Izvrsitelj2          = nalog.Izvrsitelj2;
            rnalog2.Izvrsitelj3          = nalog.Izvrsitelj3;
            rnalog2.Izvrsitelj3.ID       = nalog.Izvrsitelj3.ID;
            rnalog2.OpisRadova           = nalog.OpisRadova;
            rnalog2.PutniNalog           = nalog.PutniNalog;
            rnalog2.Rukovoditelj.ID      = nalog.Rukovoditelj.ID;
            rnalog2.Rukovoditelj         = nalog.Rukovoditelj;
            rnalog2.IspraveZaRad         = nalog.IspraveZaRad;
            rnalog2.KategorijaRada       = nalog.KategorijaRada;
            rnalog2.TipRada              = nalog.TipRada;
            rnalog2.ObukaZaposlenika     = nalog.ObukaZaposlenika;
            rnalog2.OsiguranjeMjestaRada = nalog.OsiguranjeMjestaRada;
            rnalog2.NadzorZaposlenika    = nalog.NadzorZaposlenika;
            rnalog2.RadVezanUZ           = nalog.RadVezanUZ;
            rnalog2.Prilog               = nalog.Prilog;
            rnalog2.Napomena             = nalog.Napomena;
            rnalog2.LokacijaRada         = nalog.LokacijaRada;
            rnalog2.RadniZadatakBroj     = nalog.RadniZadatakBroj;
            rnalog2.PocetakRadova        = String.Format("{0:DD-MM-YYYY HH}", nalog.PocetakRadova);
            rnalog2.KrajRadova           = String.Format("{0:DD-MM-YYYY HH}", nalog.KrajRadova);
            rnalog2.Automobil            = nalog.Automobil;
            rnalog2.VrstaRada            = nalog.VrstaRada;
            rnalog2.IzvjOpisIzvRadova    = nalog.IzvjOpisIzvRadova;
            rnalog2.IzvjNeizvedeniRadovi = nalog.IzvjNeizvedeniRadovi;
            rnalog2.IzvjUoceniNedostaci  = nalog.IzvjUoceniNedostaci;
            rnalog2.IzvjNapomena         = nalog.IzvjNapomena;
            rnalog2.IzvjRadnoVrijeme     = nalog.IzvjRadnoVrijeme;
            rnalog2.IzvjPrijevoz         = nalog.IzvjPrijevoz;
            rnalog2.IzvjIzdatnice        = nalog.IzvjIzdatnice;
            rnalog2.IzvjPovratnice       = nalog.IzvjPovratnice;
            rnalog2.IzvjOstaliTroskovi   = nalog.IzvjOstaliTroskovi;
            rnalog2.IzvjPrimio           = nalog.IzvjPrimio;
            rnalog2.IzvjPodnio           = nalog.IzvjPodnio;
            rnalog2.IzvjPreglEvident     = nalog.IzvjPreglEvident;

            //RNalog nalog = new RNalog
            //{
            //    ID = rNalog.ID,
            //    Automobil = rNalog.Automobil,
            //    MjestoRada = rNalog.MjestoRada,
            //    VrstaRada = rNalog.VrstaRada,
            //    AutomobilID = rNalog.AutomobilID,
            //    Datum = String.Format("{0:DD-MM-YYYY HH}", rNalog.Datum),
            //    Izvrsitelj2 = rNalog.Izvrsitelj2,
            //    Izvrsitelj3 = rNalog.Izvrsitelj3,
            //    Materijal = rNalog.Materijal,
            //    MjestoRadaID = rNalog.MjestoRada.ID,
            //    OpisRadova = rNalog.OpisRadova,
            //    PutniNalog = rNalog.PutniNalog,
            //    Rukovoditelj = rNalog.Rukovoditelj,
            //    VrstaRadaID = rNalog.VrstaRadaID,
            //    IspraveZaRad = rNalog.IspraveZaRad,
            //    KategorijaRada = rNalog.KategorijaRada,
            //    TipRada = rNalog.TipRada,
            //    ObukaZaposlenika = rNalog.ObukaZaposlenika,
            //    OsiguranjeMjestaRada = rNalog.OsiguranjeMjestaRada,
            //    NadzorZaposlenika = rNalog.NadzorZaposlenika,
            //    RadVezanUZ = rNalog.RadVezanUZ,
            //    Prilog = rNalog.Prilog,
            //    Napomena = rNalog.Napomena,
            //    RadniZadatakBroj = rNalog.RadniZadatakBroj,
            //    PocetakRadova = String.Format("{0:DD-MM-YYYY HH}", rNalog.PocetakRadova),
            //    KrajRadova = String.Format("{0:DD-MM-YYYY HH}", rNalog.KrajRadova)



            //};


            _context.Entry(rnalog2.Rukovoditelj).State         = EntityState.Modified;
            _context.Entry(rnalog2.Izvrsitelj2).State          = EntityState.Modified;
            _context.Entry(rnalog2.Izvrsitelj3).State          = EntityState.Modified;
            _context.Entry(rnalog2.KategorijaRada).State       = EntityState.Modified;
            _context.Entry(rnalog2.TipRada).State              = EntityState.Modified;
            _context.Entry(rnalog2.ObukaZaposlenika).State     = EntityState.Modified;
            _context.Entry(rnalog2.OsiguranjeMjestaRada).State = EntityState.Modified;
            _context.Entry(rnalog2.IspraveZaRad).State         = EntityState.Modified;
            _context.Entry(rnalog2.NadzorZaposlenika).State    = EntityState.Modified;

            _context.Entry(rnalog2.Automobil).State = EntityState.Modified;

            _context.Entry(rnalog2).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!RNalogExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            //return NoContent();
            return(Ok("SUCCESSFULLY edited NALOG WITH ID:" + nalog.ID));
        }