Esempio n. 1
0
        public bool addSutartis(SutartisEditViewModel sutartis)
        {
            string          conn            = ConfigurationManager.ConnectionStrings["MysqlConnection"].ConnectionString;
            MySqlConnection mySqlConnection = new MySqlConnection(conn);
            string          sqlquery        = @"INSERT INTO `" + Globals.dbPrefix + @"sutartys` (
                                    `sutarties_data`,
                                    `nuomos_data_laikas`,
                                    `planuojama_grazinimo_data_laikas`,
                                    `faktine_grazinimo_data_laikas`,
                                    `pradine_rida`,
                                    `galine_rida`,
                                    `kaina`,
                                    `degalu_kiekis_paimant`,
                                    `dagalu_kiekis_grazinus`,
                                    `busena`,
                                    `fk_klientas`,
                                    `fk_darbuotojas`,
                                    `fk_automobilis`,
                                    `fk_grazinimo_vieta`,
                                    `fk_paemimo_vieta`)
                                    VALUES(
                                     ?sutdata,
                                     ?nuomdata,
                                     ?plgrlaikas,
                                     ?fkgrlaikas,
                                     ?prrida,
                                     ?glrida,
                                     ?kaina,
                                     ?dkiekispa,
                                     ?dkiekisgr,
                                     ?busena,
                                     ?klientas,
                                     ?darbuotojas,
                                     ?automobilis,
                                     ?grvieta,
                                     ?pavieta)";
            MySqlCommand    mySqlCommand    = new MySqlCommand(sqlquery, mySqlConnection);

            mySqlCommand.Parameters.Add("?sutdata", MySqlDbType.Date).Value        = sutartis.sutartiesData;
            mySqlCommand.Parameters.Add("?nuomdata", MySqlDbType.DateTime).Value   = sutartis.nuomosDataLaikas.ToString("yyyy-MM-dd hh:mm:ss");
            mySqlCommand.Parameters.Add("?plgrlaikas", MySqlDbType.DateTime).Value = sutartis.planuojamaGrDataLaikas.ToString("yyyy-MM-dd hh:mm:ss");
            mySqlCommand.Parameters.Add("?fkgrlaikas", MySqlDbType.DateTime).Value = sutartis.faktineGrDataLaikas.ToString("yyyy-MM-dd hh:mm:ss");
            mySqlCommand.Parameters.Add("?prrida", MySqlDbType.Int32).Value        = sutartis.pradineRida;
            mySqlCommand.Parameters.Add("?glrida", MySqlDbType.Int32).Value        = sutartis.galineRida;
            mySqlCommand.Parameters.Add("?kaina", MySqlDbType.Decimal).Value       = sutartis.kaina;
            mySqlCommand.Parameters.Add("?dkiekispa", MySqlDbType.Int32).Value     = sutartis.degaluKiekisPaimant;
            mySqlCommand.Parameters.Add("?dkiekisgr", MySqlDbType.Int32).Value     = sutartis.degaluKiekisGrazinant;
            mySqlCommand.Parameters.Add("?busena", MySqlDbType.Int32).Value        = sutartis.busena;
            mySqlCommand.Parameters.Add("?darbuotojas", MySqlDbType.VarChar).Value = sutartis.fk_darbuotojas;
            mySqlCommand.Parameters.Add("?klientas", MySqlDbType.VarChar).Value    = sutartis.fk_klientas;
            mySqlCommand.Parameters.Add("?automobilis", MySqlDbType.Int32).Value   = sutartis.fk_automobilis;
            mySqlCommand.Parameters.Add("?grvieta", MySqlDbType.Int32).Value       = sutartis.fk_grazinimoVieta;
            mySqlCommand.Parameters.Add("?pavieta", MySqlDbType.Int32).Value       = sutartis.fk_paemimoVieta;
            mySqlConnection.Open();
            mySqlCommand.ExecuteNonQuery();
            mySqlConnection.Close();

            return(true);
        }
        // GET: Sutartis/Create
        public ActionResult Create()
        {
            SutartisEditViewModel sutartis = new SutartisEditViewModel();

            //uzpildo pasirinkimo sąrašus
            PopulateSelections(sutartis);
            //grazinama paslaugos kurimo puslapį
            return(View(sutartis));
        }
        public ActionResult Edit(int id, SutartisEditViewModel collection)
        {
            try
            {
                // TODO: Add update logic here
                if (ModelState.IsValid)
                {
                    sutartisRepository.updateSutartis(collection);

                    if (collection.paslaugos != null)
                    {
                        foreach (var item in collection.paslaugos)
                        {
                            //naujoms pridetos paslaugos sutvarkomi duomenys
                            if (item.fk_sutartis == 0)
                            {
                                item.fk_paslauga = Convert.ToInt32(item.fk_key.Substring(0, item.fk_key.IndexOf("_")));             // nustatomas paslaugos id kuris issaugotas fk_key element iki _ simbolio
                                var ticks = item.fk_key.Substring(item.fk_key.IndexOf('_') + 1, item.fk_key.Length - (item.fk_key.IndexOf('_') + 1));
                                item.fk_kainaGaliojaNuo = new DateTime(Convert.ToInt64(ticks));                                     //nustatoma paslaugos kainos data
                                item.fk_sutartis        = collection.nr;                                                            // nustatomas sutarties nr
                                item.kaina = paslaugosKainaRepository.getPaslaugosKaina(item.fk_paslauga, item.fk_kainaGaliojaNuo); //iš duomenų bazės paimama paslaugos kaina
                            }
                        }

                        // istrina visas sutarties uzsakytas paslaugas
                        uzsakytaPaslaugaRepository.deleteUzsakytasPaslaugas(collection.nr);

                        //per nauja prideda visas sutarties uzsakytas paslaugas
                        foreach (var item in collection.paslaugos)
                        {
                            uzsakytaPaslaugaRepository.insertUzsakytaPaslauga(item);
                        }
                    }
                    else
                    {
                        uzsakytaPaslaugaRepository.deleteUzsakytasPaslaugas(collection.nr);
                    }
                }

                return(RedirectToAction("Index"));
            }
            catch
            {
                PopulateSelections(collection);
                return(View(collection));
            }
        }
Esempio n. 4
0
        public SutartisEditViewModel getSutartis(int nr)
        {
            SutartisEditViewModel sutartis  = new SutartisEditViewModel();
            string          conn            = ConfigurationManager.ConnectionStrings["MysqlConnection"].ConnectionString;
            MySqlConnection mySqlConnection = new MySqlConnection(conn);
            string          sqlquery        = @"SELECT * FROM " + Globals.dbPrefix + @"sutartys where nr=" + nr;
            MySqlCommand    mySqlCommand    = new MySqlCommand(sqlquery, mySqlConnection);

            mySqlConnection.Open();
            MySqlDataAdapter mda = new MySqlDataAdapter(mySqlCommand);
            DataTable        dt  = new DataTable();

            mda.Fill(dt);
            mySqlConnection.Close();

            foreach (DataRow item in dt.Rows)
            {
                sutartis.nr                     = Convert.ToInt32(item["nr"]);
                sutartis.sutartiesData          = Convert.ToDateTime(item["sutarties_data"]);
                sutartis.nuomosDataLaikas       = Convert.ToDateTime(item["nuomos_data_laikas"]);
                sutartis.planuojamaGrDataLaikas = Convert.ToDateTime(item["planuojama_grazinimo_data_laikas"]);
                sutartis.faktineGrDataLaikas    = Convert.ToDateTime(item["faktine_grazinimo_data_laikas"]);
                sutartis.pradineRida            = Convert.ToInt32(item["pradine_rida"]);
                sutartis.galineRida             = (item["galine_rida"] == DBNull.Value ? -1:Convert.ToInt32(item["galine_rida"]));
                sutartis.kaina                  = Convert.ToDecimal(item["kaina"]);
                sutartis.degaluKiekisPaimant    = Convert.ToInt32(item["degalu_kiekis_paimant"]);
                sutartis.degaluKiekisGrazinant  = (item["dagalu_kiekis_grazinus"] == DBNull.Value ? -1 :Convert.ToInt32(item["dagalu_kiekis_grazinus"]));
                sutartis.busena                 = Convert.ToInt32(item["busena"]);
                sutartis.fk_klientas            = Convert.ToString(item["fk_klientas"]);
                sutartis.fk_darbuotojas         = Convert.ToString(item["fk_darbuotojas"]);
                sutartis.fk_automobilis         = Convert.ToInt32(item["fk_automobilis"]);
                sutartis.fk_grazinimoVieta      = Convert.ToInt32(item["fk_grazinimo_vieta"]);
                sutartis.fk_paemimoVieta        = Convert.ToInt32(item["fk_paemimo_vieta"]);
            }

            if (sutartis.galineRida == -1)
            {
                sutartis.galineRida = null;
            }

            if (sutartis.degaluKiekisGrazinant == -1)
            {
                sutartis.degaluKiekisGrazinant = null;
            }

            return(sutartis);
        }
        public ActionResult Create(SutartisEditViewModel collection)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    //išsaugo nauja sutarti
                    sutartisRepository.addSutartis(collection);

                    //jei yra prideta paslaugų išųsaugojo ir paslaugas
                    if (collection.paslaugos != null)
                    {
                        foreach (var item in collection.paslaugos)
                        {
                            //html elemente sutarties id nenustatytas todel duomenis sutvarkome programiskai cia
                            if (item.fk_sutartis == 0)
                            {
                                item.fk_paslauga = Convert.ToInt32(item.fk_key.Substring(0, item.fk_key.IndexOf("_"))); // fk_key elemente išsaugotas paslaugos id iki _ simbolio
                                var ticks = item.fk_key.Substring(item.fk_key.IndexOf('_') + 1, item.fk_key.Length - (item.fk_key.IndexOf('_') + 1));
                                item.fk_kainaGaliojaNuo = new DateTime(Convert.ToInt64(ticks));                         // ticks paverciami į datos reikšmę
                                item.fk_sutartis        = collection.nr;                                                // nustatomas sutarties nr
                            }
                        }

                        //kiekviena uzsakyta paslauga isaugojama duomenu bazeje
                        foreach (var item in collection.paslaugos)
                        {
                            uzsakytaPaslaugaRepository.insertUzsakytaPaslauga(item);
                        }
                    }
                }

                return(RedirectToAction("Index"));
            }
            catch
            {
                PopulateSelections(collection);
                return(View(collection));
            }
        }
        // GET: Sutartis/Edit/5
        public ActionResult Edit(int id)
        {
            SutartisEditViewModel sutartis = sutartisRepository.getSutartis(id);

            PopulateSelections(sutartis);
            List <UzsakytaPaslauga> paslaugos = new List <UzsakytaPaslauga>();

            paslaugos.Add(new UzsakytaPaslauga());
            ViewBag.paslaugos = paslaugos;
            decimal bendraSuma = 0;

            //Suskaiciuojama bendra suma
            bendraSuma += sutartis.kaina;

            foreach (var item in sutartis.paslaugos)
            {
                bendraSuma += item.kaina;
            }
            //paduodama bendra suma per viewbag kintamajį į vaizda
            ViewBag.bendraSuma = bendraSuma;

            return(View(sutartis));
        }
        public ActionResult Delete(int id, FormCollection collection)
        {
            try
            {
                SutartisEditViewModel sutartis = sutartisRepository.getSutartis(id);
                if (sutartis.busena == 1 || sutartis.busena == 3)
                {
                    uzsakytaPaslaugaRepository.deleteUzsakytasPaslaugas(id);
                    sutartisRepository.deleteSutartis(id);
                }
                else
                {
                    ViewBag.naudojama = "Sutartis yra patvirtinta arba užbaigta, pašalinti negalima.";
                    return(View(sutartis));
                }

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
        public void PopulateSelections(SutartisEditViewModel sutartis)
        {
            //surenka sarasu informacija is duomenu bazes
            var automobiliai = automobiliaiRepository.getCars();
            var busenos      = sutartiesBusenosRepository.getSutartiesBusenos();
            var darbuotojai  = darbuotojasRepository.getDarbuotojai();
            var klientai     = klientasRepository.getKlientai();
            var aiksteles    = aikstelesRepository.getAiksteles();
            List <SelectListItem> selectListAutomobiliai = new List <SelectListItem>();
            List <SelectListItem> selectListBusenos      = new List <SelectListItem>();
            List <SelectListItem> selectListDarbuotojai  = new List <SelectListItem>();
            List <SelectListItem> selectListKlientai     = new List <SelectListItem>();
            List <SelectListItem> selectListAiksteles    = new List <SelectListItem>();

            //sukuria selectlistitem sarašus
            foreach (var item in automobiliai)
            {
                selectListAutomobiliai.Add(new SelectListItem {
                    Value = Convert.ToString(item.id), Text = item.valstybinisNr + " - " + item.marke + " " + item.modelis
                });
            }

            foreach (var item in darbuotojai)
            {
                selectListDarbuotojai.Add(new SelectListItem {
                    Value = item.tabelis, Text = item.vardas + " " + item.pavarde
                });
            }

            foreach (var item in klientai)
            {
                selectListKlientai.Add(new SelectListItem {
                    Value = item.asmensKodas, Text = item.vardas + " " + item.pavarde
                });
            }

            foreach (var item in busenos)
            {
                selectListBusenos.Add(new SelectListItem {
                    Value = Convert.ToString(item.id), Text = item.name
                });
            }

            foreach (var item in aiksteles)
            {
                selectListAiksteles.Add(new SelectListItem {
                    Value = Convert.ToString(item.id), Text = item.pavadinimas
                });
            }

            //priskiria sarašus vaizdo objektui
            sutartis.VietosList       = selectListAiksteles;
            sutartis.DarbuotojaiList  = selectListDarbuotojai;
            sutartis.KlientaiList     = selectListKlientai;
            sutartis.BusenosList      = selectListBusenos;
            sutartis.AutomobiliaiList = selectListAutomobiliai;

            sutartis.paslaugos = uzsakytaPaslaugaRepository.getUzsakytosPaslaugos(sutartis.nr);

            //uzsakytose paslaugose sukuria fk_key raktini elementą kuris naudojamas pasirinkime
            for (int i = 0; i < sutartis.paslaugos.Count; i++)
            {
                sutartis.paslaugos[i].fk_key = sutartis.paslaugos[i].fk_paslauga + "_" + sutartis.paslaugos[i].fk_kainaGaliojaNuo.Ticks;
            }

            List <SelectListItem>  selectListItems = new List <SelectListItem>();
            List <SelectListGroup> groups          = new List <SelectListGroup>();

            var paslaugos = paslaugaRepository.getPaslaugos();

            List <PaslaugaEditViewModel> paslaugosViewModel = new List <PaslaugaEditViewModel>();

            foreach (var item in paslaugos)
            {
                paslaugosViewModel.Add(new PaslaugaEditViewModel {
                    paslauga = item, paslaugosKainos = paslaugosKainaRepository.getPaslaugosKainos2(item.id)
                });
            }

            bool yra = false;

            //sukuriamos paslaugu kainu grupes
            foreach (var item in paslaugosViewModel)
            {
                yra = false;
                foreach (var i in groups)
                {
                    if (i.Name.Equals(item.paslauga.pavadinimas))
                    {
                        yra = true;
                    }
                }
                if (!yra)
                {
                    groups.Add(new SelectListGroup()
                    {
                        Name = item.paslauga.pavadinimas
                    });
                }
            }

            //sudaromas pasirinkimo sarašas pagal paslaugu grupes
            foreach (var x in paslaugosViewModel)
            {
                foreach (var item in x.paslaugosKainos)
                {
                    var optGroup = new SelectListGroup()
                    {
                        Name = "--------"
                    };
                    foreach (var i in groups)
                    {
                        if (i.Name.Equals(x.paslauga.pavadinimas))
                        {
                            optGroup = i;
                        }
                    }

                    selectListItems.Add(
                        new SelectListItem()
                    {
                        Value = Convert.ToString(item.fk_paslauga + "_" + item.galiojaNuo.Ticks),
                        Text  = x.paslauga.pavadinimas + " " + item.kaina + " EUR (" + item.galiojaNuo + ")",
                        Group = optGroup
                    }
                        );
                }
            }

            //paslaugu kainu sarašas pagal paslaugu grupes priskiriamas vaizdo objektui
            sutartis.UzsPaslaugosList = selectListItems;
        }
        // GET: Sutartis/Delete/5
        public ActionResult Delete(int id)
        {
            SutartisEditViewModel sutartis = sutartisRepository.getSutartis(id);

            return(View(sutartis));
        }