public ObservableCollection <PredmetRada> GetAllFromPredmetRada()
        {
            ObservableCollection <PredmetRada> predmetRadaList = new ObservableCollection <PredmetRada>();

            using (NpgsqlConnection sqlConnection = ConnectionCreator.createConnection())
            {
                sqlConnection.Open();

                NpgsqlCommand cmd = new NpgsqlCommand(GET_ALL_RECORDS_FROM_PREDMET_RADA, sqlConnection);

                NpgsqlDataReader rdr = cmd.ExecuteReader();

                while (rdr.Read())
                {
                    PredmetRada predmetRada = new PredmetRada();
                    predmetRada.IDPredmetRada  = rdr.GetInt32(0);
                    predmetRada.TipPredmetRada = rdr.GetString(1);
                    predmetRada.NazivPR        = rdr.GetString(2);
                    predmetRada.JedMerePR      = rdr.GetString(3);
                    predmetRada.Cena           = rdr.GetInt32(4);
                    predmetRadaList.Add(predmetRada);
                }
            }

            return(predmetRadaList);
        }
        private void CreateButtonCommandExecute(object param)
        {
            PredmetRada udpatedPredmetRada = new PredmetRada
            {
                Cena           = Int32.Parse(_cena),
                JedMerePR      = _jedMere,
                NazivPR        = _nazivPR,
                TipPredmetRada = _tipPredmetaRada
            };
            bool isCreated = _predmetRadaSqlProvider.CreatePredmetRadaById(udpatedPredmetRada);

            if (isCreated)
            {
                Window curWindow = (Window)param;
                curWindow.Close();
                mainContentViewModel.RefreshData();
            }
            else
            {
                ErrorDialog          errorDialog          = new ErrorDialog();
                ErrorDialogViewModel errorDialogViewModel = (ErrorDialogViewModel)errorDialog.DataContext;
                errorDialog.Title = "Greška";
                errorDialogViewModel.ErrorMessage = "Došlo je do greške. Pokušajte ponovo";
                errorDialog.ShowDialog();
            }
        }
        public bool CreatePredmetRadaById(PredmetRada predmetRadaNew)
        {
            using (NpgsqlConnection sqlConnection = ConnectionCreator.createConnection())
            {
                sqlConnection.Open();

                NpgsqlCommand cmd = new NpgsqlCommand(CREATE_PREDMET_RADA, sqlConnection);

                cmd.Parameters.AddWithValue("@TipPredmetRada", NpgsqlDbType.Varchar, predmetRadaNew.TipPredmetRada);
                cmd.Parameters.AddWithValue("@NazivPR", NpgsqlDbType.Varchar, predmetRadaNew.NazivPR);
                cmd.Parameters.AddWithValue("@JedMerePR", NpgsqlDbType.Varchar, predmetRadaNew.JedMerePR);
                cmd.Parameters.AddWithValue("@Cena", NpgsqlDbType.Integer, predmetRadaNew.Cena);

                int rowsAffected = cmd.ExecuteNonQuery();

                return(rowsAffected == 1);
            }
        }
        private void DeleteButtonCommandExecute(object param)
        {
            {
                bool succeded = false;
                switch (_selectedTabIndex)
                {
                case 0:
                    RadnoMestoViewModel radnoMestoViewModel = (RadnoMestoViewModel)ContentMainScreen;
                    RadnoMesto          selected            = radnoMestoViewModel.ItemSelected;
                    if (selected != null)
                    {
                        if (!DoesRadnikProizvodnjaContainsRadnoMestoId(selected.IDRadnoMesto))
                        {
                            succeded = _radnoMestoSqlProvider.DeleteFromRadnoMestoById(selected.IDRadnoMesto);
                            if (succeded)
                            {
                                radnoMestoViewModel.RadnoMestoList.Remove(selected);
                            }
                        }
                        else
                        {
                            ShowCantDeleteErrorDialog();
                        }
                    }
                    else
                    {
                        ShowNotSelectedErrorDialog(true);
                    }
                    break;

                case 1:
                    OperacijaViewModel operacijaViewModel = (OperacijaViewModel)ContentMainScreen;
                    Operacija          selectedOperacija  = operacijaViewModel.ItemSelected;
                    if (selectedOperacija != null)
                    {
                        succeded = _operacijaSqlProvider.DeleteFromOperacijaById(selectedOperacija.IDOperacija);
                        if (succeded)
                        {
                            operacijaViewModel.OperacijaList.Remove(selectedOperacija);
                        }
                    }
                    else
                    {
                        ShowNotSelectedErrorDialog(true);
                    }
                    break;

                case 2:
                    PredmetRadaViewModel predmetRadaViewModel = (PredmetRadaViewModel)ContentMainScreen;
                    PredmetRada          predmetRadaSelected  = predmetRadaViewModel.ItemSelected;
                    if (predmetRadaSelected != null)
                    {
                        succeded = _predmetRadaSqlProvider.DeleteFromPredmetRadaById(predmetRadaSelected.IDPredmetRada);
                        if (succeded)
                        {
                            predmetRadaViewModel.PredmetRadaList.Remove(predmetRadaSelected);
                        }
                    }
                    else
                    {
                        ShowNotSelectedErrorDialog(true);
                    }
                    break;

                case 3:
                    RadnaListaViewModel radnaListaViewModel = (RadnaListaViewModel)ContentMainScreen;
                    RadnaLista          radnaListaSelected  = radnaListaViewModel.ItemSelected;
                    if (radnaListaSelected != null)
                    {
                        succeded = _radnaListaSqlProvider.DeleteFromRadnaListaById(radnaListaSelected.IDRadnaLista);
                        if (succeded)
                        {
                            radnaListaViewModel.RadnaListaList.Remove(radnaListaSelected);
                        }
                    }
                    else
                    {
                        ShowNotSelectedErrorDialog(true);
                    }
                    break;

                case 4:
                    RadnikProizvodnjaViewModel radnikProizvodnjaViewModel = (RadnikProizvodnjaViewModel)ContentMainScreen;
                    RadnikProizvodnja          radnikProizvodnjaSelected  = radnikProizvodnjaViewModel.ItemSelected;
                    if (radnikProizvodnjaSelected != null)
                    {
                        succeded = _radnikProizvodnjaSqlProvider.DeleteFromRadnikProizvodnjaById(radnikProizvodnjaSelected.IDRadnik);
                        if (succeded)
                        {
                            radnikProizvodnjaViewModel.RadnikProizvodnjaList.Remove(radnikProizvodnjaSelected);
                        }
                    }
                    else
                    {
                        ShowNotSelectedErrorDialog(true);
                    }
                    break;

                case 5:
                    RadniNalogViewModel radniNalogViewModel = (RadniNalogViewModel)ContentMainScreen;
                    RadniNalog          radniNalogSelected  = radniNalogViewModel.ItemSelected;
                    if (radniNalogSelected != null)
                    {
                        succeded = _radniNalogSqlProvider.DeleteFromRadniNalogById(radniNalogSelected.IDRadniNalog);
                        if (succeded)
                        {
                            radniNalogViewModel.RadniNalogList.Remove(radniNalogSelected);
                        }
                    }
                    else
                    {
                        ShowNotSelectedErrorDialog(true);
                    }
                    break;

                case 6:
                    TehnoloskiPostupakViewModel tehnoloskiPostupakViewModel = (TehnoloskiPostupakViewModel)ContentMainScreen;
                    TehnoloskiPostupak          tehnoloskiPostupakSelected  = tehnoloskiPostupakViewModel.ItemSelected;
                    if (tehnoloskiPostupakSelected != null)
                    {
                        succeded = _tehnoloskiPostupakSqlProvider.DeleteFromTehnoloskiPostupakById(tehnoloskiPostupakSelected.IDTehPostupak);
                        if (succeded)
                        {
                            tehnoloskiPostupakViewModel.TehnoloskiPostupakList.Remove(tehnoloskiPostupakSelected);
                        }
                    }
                    else
                    {
                        ShowNotSelectedErrorDialog(true);
                    }
                    break;

                case 7:
                    TrebovanjeViewModel trebovanjeViewModel = (TrebovanjeViewModel)ContentMainScreen;
                    Trebovanje          trebovanjeSelected  = trebovanjeViewModel.ItemSelected;
                    if (trebovanjeSelected != null)
                    {
                        succeded = _trebovanjeSqlProvider.DeleteFromTrebovanjeById(trebovanjeSelected.IDTrebovanje);
                        if (succeded)
                        {
                            trebovanjeViewModel.TrebovanjeList.Remove(trebovanjeSelected);
                        }
                    }
                    else
                    {
                        ShowNotSelectedErrorDialog(true);
                    }
                    break;

                case 8:
                    TehnPostupakOperacijaViewModel tpoViewModel = (TehnPostupakOperacijaViewModel)ContentMainScreen;
                    tpoViewModel.DeleteSelected();
                    break;
                }
            }
        }
 public CreatePredmetRadaDialogViewModel(IPredmetRadaSqlProvider predmetRadaSqlProvider, PredmetRada predmetRada,
                                         MainContentViewModel mainContentViewModel)
 {
     _predmetRadaSqlProvider = predmetRadaSqlProvider;
     IdPredmetaRada          = predmetRada.IDPredmetRada;
     TipPredmetaRada         = predmetRada.TipPredmetRada;
     NazivPR = predmetRada.NazivPR;
     JedMere = predmetRada.JedMerePR;
     Cena    = predmetRada.Cena.ToString();
     this.mainContentViewModel = mainContentViewModel;
 }