protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.potroseniMaterijal_Dodaj); Android.Widget.Toolbar toolbar = FindViewById <Android.Widget.Toolbar>(Resource.Id.toolbarHomePage); kolicinaInput = FindViewById <EditText>(Resource.Id.kolicinaInput); IznosData = FindViewById <TextView>(Resource.Id.IznosData); cijenaData = FindViewById <TextView>(Resource.Id.cijenaData); nazivData = FindViewById <TextView>(Resource.Id.nazivData); sifraData = FindViewById <TextView>(Resource.Id.sifraData); mjernaJedinicaTV = FindViewById <TextView>(Resource.Id.mjernaJedinicaTV); spremiBtn = FindViewById <Button>(Resource.Id.spremiBtn); odustaniBtn = FindViewById <Button>(Resource.Id.odustaniBtn); messageKolicina = FindViewById <TextView>(Resource.Id.messageKolicina); dostupno = FindViewById <TextView>(Resource.Id.dostupno); SetActionBar(toolbar); ActionBar.Title = "Dodaj materijal"; spremiBtn.Click += SpremiBtn_Click; odustaniBtn.Click += OdustaniBtn_Click; kolicinaInput.KeyPress += KolicinaInput_KeyPress; kolicinaInput.TextChanged += KolicinaInput_TextChanged; kolicinaInput.Text = "1,000"; kolicinaInput.RequestFocus(); materijalSifra = localMaterijali.GetString("sifra", null); radniNalog = localRadniNalozi.GetInt("id", 0); pozicijaId = localPozicija.GetInt("pozicijaId", 0); lokacijaId = localKomitentLokacija.GetInt("lokacijaId", 0); mjernaJedinicaId = localMaterijali.GetInt("mjernaJedinicaId", 0); var mjernaJedinica = db.Query <T_MjerneJedinice>( "SELECT * " + "FROM T_MjerneJedinice " + "WHERE Id = ?", mjernaJedinicaId).FirstOrDefault(); T_NAZR materijal = db.Query <T_NAZR>( "SELECT * " + "FROM T_NAZR " + "WHERE NAZR_SIFRA = ?", materijalSifra).FirstOrDefault(); skladiste = db.Query <DID_RadniNalog>( "SELECT * " + "FROM DID_RadniNalog " + "WHERE Id = ?", radniNalog).FirstOrDefault(); staraKolicinaNaSkladistu = db.Query <DID_StanjeSkladista>( "SELECT * " + "FROM DID_StanjeSkladista " + "WHERE Skladiste = ? " + "AND Materijal = ?", skladiste.PokretnoSkladiste, materijalSifra).FirstOrDefault().Kolicina; dostupno.Text = staraKolicinaNaSkladistu.ToString("F3").Replace('.', ','); cijena = materijal.NAZR_CIJENA_ART; nazivData.Text = materijal.NAZR_NAZIV; sifraData.Text = materijal.NAZR_SIFRA; cijenaData.Text = cijena.ToString("F2").Replace('.', ','); IznosData.Text = cijena.ToString("F2").Replace('.', ','); mjernaJedinicaTV.Text = mjernaJedinica.Oznaka; }
public void SaveBtn_Click(object sender, EventArgs args) { if (napomeneInput.Text.Length > 512) { return; } string lokacijaNaziv = db.Query <DID_Lokacija>( "SELECT * " + "FROM DID_Lokacija " + "WHERE SAN_Id = ?", lokacijaId).FirstOrDefault().SAN_Naziv; DID_RadniNalog_Lokacija radniNalogLokacija = db.Query <DID_RadniNalog_Lokacija>( "SELECT * " + "FROM DID_RadniNalog_Lokacija " + "WHERE Id = ?", radniNalogLokacijaId).FirstOrDefault(); if (radniNalogLokacija.Status == 3) { AlertDialog.Builder alert = new AlertDialog.Builder(this); alert.SetTitle("Upozorenje!"); alert.SetMessage("Dodavanjem ankete lokacija " + lokacijaNaziv + " gubi status izvršene lokacije. Jeste li sigurni da želite nastaviti?"); alert.SetPositiveButton("NASTAVI", (senderAlert, arg) => { SpremiAnketu(); db.Execute( "UPDATE DID_RadniNalog_Lokacija " + "SET Status = 2, " + "SinhronizacijaStatus = 0 " + "WHERE Id = ?", radniNalogLokacijaId); db.Execute( "UPDATE DID_Lokacija " + "SET SinhronizacijaStatus = 0 " + "WHERE SAN_Id = ?", lokacijaId); DID_RadniNalog radniNalog = db.Query <DID_RadniNalog>( "SELECT * " + "FROM DID_RadniNalog " + "WHERE Id = ?", radniNalogId).FirstOrDefault(); if (radniNalog.SinhronizacijaStatus == 2) { db.Query <DID_RadniNalog>( "UPDATE DID_RadniNalog " + "SET SinhronizacijaStatus = 1 " + "WHERE Id = ?", radniNalogId); } List <DID_RadniNalog_Lokacija> zavrseneLokacije = db.Query <DID_RadniNalog_Lokacija>( "SELECT * " + "FROM DID_RadniNalog_Lokacija " + "WHERE RadniNalog = ? " + "AND Status = 3", radniNalogId); if (zavrseneLokacije.Any()) { db.Query <DID_RadniNalog>( "UPDATE DID_RadniNalog " + "SET Status = 4 " + "WHERE Id = ?", radniNalogId); } else { db.Query <DID_RadniNalog>( "UPDATE DID_RadniNalog " + "SET Status = 3 " + "WHERE Id = ?", radniNalogId); } }); alert.SetNegativeButton("ODUSTANI", (senderAlert, arg) => { localPozicija.Edit().Clear().Commit(); localAnketa.Edit().Clear().Commit(); intent = new Intent(this, typeof(Activity_Lokacije)); StartActivity(intent); }); Dialog dialog = alert.Create(); dialog.Show(); } else { SpremiAnketu(); } }
public void SpremiBtn_Click(object sender, EventArgs e) { flag = true; if (string.IsNullOrEmpty(ulicaBrInput.Text) || ulicaBrInput.Text.Length > 100) { msgAdresa.Visibility = Android.Views.ViewStates.Visible; ulicaBrInput.RequestFocus(); flag = false; } if (string.IsNullOrEmpty(mjestoInput.Text) || mjestoInput.Text.Length > 50) { msgMjesto.Visibility = Android.Views.ViewStates.Visible; mjestoInput.RequestFocus(); flag = false; } if (string.IsNullOrEmpty(nazivInput.Text) || nazivInput.Text.Length > 100) { msgNaziv.Visibility = Android.Views.ViewStates.Visible; nazivInput.RequestFocus(); flag = false; } if (flag) { string naselje; int id = -1, RNLokacijeId = -1; string spinnerTip = spinnerTipLokacije.SelectedItem.ToString(); int tipLokacije = db.Query <DID_TipLokacije>( "SELECT * " + "FROM DID_TipLokacije " + "WHERE Naziv = ?", spinnerTip).FirstOrDefault().Sifra; List <DID_Lokacija> lokacije = db.Query <DID_Lokacija>( "SELECT * " + "FROM DID_Lokacija " + "WHERE SAN_Id < 0 " + "ORDER BY SAN_Id"); if (lokacije.Any()) { id = lokacije.FirstOrDefault().SAN_Id - 1; } List <DID_RadniNalog_Lokacija> radniNalogLokacije = db.Query <DID_RadniNalog_Lokacija>( "SELECT * " + "FROM DID_RadniNalog_Lokacija " + "WHERE Id < 0 " + "ORDER BY Id"); if (radniNalogLokacije.Any()) { RNLokacijeId = radniNalogLokacije.FirstOrDefault().Id - 1; } List <T_NASELJA> naseljaList = db.Query <T_NASELJA>( "SELECT * " + "FROM T_NASELJA " + "WHERE Naziv = ?", spinnerNaselja.SelectedItem.ToString()); if (!naseljaList.Any()) { naselje = ""; } else { naselje = naseljaList.FirstOrDefault().Sifra; } string tipPartnera = db.Query <T_KUPDOB>( "SELECT * " + "FROM T_KUPDOB " + "WHERE SIFRA = ?", sifraKomitenta).FirstOrDefault().TIP_PARTNERA; db.Query <DID_Lokacija>( "INSERT INTO DID_Lokacija (" + "SAN_Id, " + "SAN_Naziv, " + "SAN_Mjesto, " + "SAN_Naselje, " + "SAN_GradOpcina, " + "SAN_UlicaBroj, " + "SAN_OIBPartner, " + "SAN_KD_Sifra, " + "SAN_Tip, " + "SAN_Tip2," + "SinhronizacijaPrivremeniKljuc, " + "SAN_TipPartnera, " + "SAN_AnketePoPozicijama, " + "SAN_Status)" + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", id, nazivInput.Text, mjestoInput.Text, naselje, sifraOpcine, ulicaBrInput.Text, partnerOIB, sifraKomitenta, tipLokacije, 2, id, tipPartnera, anketePoPozicijama.Checked, 0 ); db.Query <DID_RadniNalog_Lokacija>( "INSERT INTO DID_RadniNalog_Lokacija (" + "Id, " + "Status, " + "RadniNalog, " + "Lokacija, " + "VrijemeDolaska, " + "TipAkcije, " + "SinhronizacijaPrivremeniKljuc)" + "VALUES (?, ?, ?, ?, ?, ?, ?)", RNLokacijeId, 1, radniNalog, id, DateTime.Now, 1, RNLokacijeId ); List <DID_RadniNalog_Lokacija> izvrseneLokacije = db.Query <DID_RadniNalog_Lokacija>( "SELECT * " + "FROM DID_RadniNalog_Lokacija " + "WHERE RadniNalog = ? " + "AND Status == 3", radniNalog); if (izvrseneLokacije.Any()) { db.Query <DID_RadniNalog>( "UPDATE DID_RadniNalog " + "SET Status = ? " + "WHERE Id = ?", 4, radniNalog); } else { db.Query <DID_RadniNalog>( "UPDATE DID_RadniNalog " + "SET Status = ? " + "WHERE Id = ?", 3, radniNalog); } DID_RadniNalog radniNalogObject = db.Query <DID_RadniNalog>( "SELECT * " + "FROM DID_RadniNalog " + "WHERE Id = ?", radniNalog).FirstOrDefault(); if (radniNalogObject.SinhronizacijaStatus == 2 && izvrseneLokacije.Any()) { db.Query <DID_RadniNalog>( "UPDATE DID_RadniNalog " + "SET SinhronizacijaStatus = 1 " + "WHERE Id = ?", radniNalog); } localKomitentLokacijaEdit.PutInt("radniNalogLokacijaId", RNLokacijeId); localKomitentLokacijaEdit.PutInt("lokacijaId", id); localKomitentLokacijaEdit.PutString("lokacijaNaziv", nazivInput.Text); localKomitentLokacijaEdit.Commit(); if (anketePoPozicijama.Checked) { intent = new Intent(this, typeof(Activity_Pozicije)); } else { int pozicijaId = -1; List <DID_LokacijaPozicija> pozicijeNove = db.Query <DID_LokacijaPozicija>( "SELECT * " + "FROM DID_LokacijaPozicija " + "WHERE POZ_Id < 0 " + "ORDER BY POZ_Id"); if (pozicijeNove.Any()) { pozicijaId = pozicijeNove.FirstOrDefault().POZ_Id - 1; } db.Query <DID_LokacijaPozicija>( "INSERT INTO DID_LokacijaPozicija (" + "POZ_Id, " + "SAN_Id, " + "POZ_Broj, " + "POZ_BrojOznaka, " + "POZ_Barcode, " + "POZ_Tip, " + "POZ_Status, " + "POZ_Opis, " + "SinhronizacijaPrivremeniKljuc, " + "SinhronizacijaStatus)" + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", pozicijaId, id, 1, null, null, 1, 1, null, pozicijaId, 1 ); Guid anketaId = Guid.NewGuid(); var username = localUsername.GetString("nazivDjelatnika", null); db.Query <DID_Anketa>( "INSERT INTO DID_Anketa (" + "Id, " + "ANK_TipDeratizacije, " + "ANK_RadniNalog, " + "ANK_KorisnickoIme, " + "ANK_POZ_Id, " + "ANK_DatumVrijeme, " + "ANK_TipDeratizacijskeKutijeSifra, " + "SinhronizacijaPrivremeniKljuc, " + "SinhronizacijaStatus)" + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)", anketaId, 2, radniNalog, username, pozicijaId, DateTime.Now, 1, anketaId, 2 ); localPozicijaEdit.PutInt("pozicijaId", -1); localPozicijaEdit.Commit(); intent = new Intent(this, typeof(Activity_PotroseniMaterijali_List)); } StartActivity(intent); } }