public ActionResult AddPrece(MinimalPreceViewModel prece) { if (!ModelState.IsValid) { return View(prece); } if (dataRepostory.Preces.Any(p => p.PrecesKods == prece.PrecesKods)) { return RedirectToAction("AddRewritePrompt",prece); } int precesKategorijasID = saveKategory(prece.Kategorija); var glabajamaPrece = new Prece { KategorijasID = precesKategorijasID, PrecesApraksts = prece.PrecesApraksts, PrecesNosaukums = prece.PrecesNosaukums, PrecesKods = prece.PrecesKods, PrecesCena = prece.PrecesCena }; dataRepostory.SavePrece(glabajamaPrece); TempData["message"] = String.Format("Prece \"{0}\" veiksmīgi saglabāta!", prece.PrecesNosaukums); return RedirectToAction("Index", "Admin"); }
/// <summary> /// Metode kura saglabā preci datubāzē /// </summary> /// <param name="prece">prece kuru jasaglabā</param> public void SavePrece(Prece prece) { //Pievieno tikai tad jaunu ja nav preces ar tadu id ja ir tad atjauno esosho if (!context.Preces.Any(p => p.PrecesID == prece.PrecesID)) { context.Preces.Add(prece); context.Entry(prece).State = EntityState.Added; } else { Prece preceDb = context.Preces.First(p => p.PrecesID == prece.PrecesID); preceDb.KategorijasID = prece.KategorijasID; preceDb.PrecesCena = prece.PrecesCena; preceDb.PrecesApraksts = prece.PrecesApraksts; preceDb.PrecesKods = prece.PrecesKods; preceDb.PrecesNosaukums = prece.PrecesNosaukums; context.Entry(preceDb).State = EntityState.Modified; } context.SaveChanges(); }
/// <summary> /// Metode kura parraksta visas preces kuram preces kods sakrit ar ienakosas preces kodu /// </summary> /// <param name="prece">ienakosa prece</param> public void RewriteAllPrecesWithSameKods(Prece prece) { IQueryable<Prece> precesWithSameKods = Preces.Where(p => p.PrecesKods == prece.PrecesKods); foreach(Prece preceWithSameKods in precesWithSameKods) { preceWithSameKods.PrecesNosaukums = prece.PrecesNosaukums; preceWithSameKods.PrecesCena = prece.PrecesCena; preceWithSameKods.PrecesApraksts = prece.PrecesApraksts; preceWithSameKods.KategorijasID = prece.KategorijasID; context.Entry(preceWithSameKods).State = EntityState.Modified; } context.SaveChanges(); }
private int saveCombinedEditViewData(EditPreceViewModel editPreceViewModel) { //Kategorijas saglabāšanas fāze int katId = saveKategory(editPreceViewModel.PrecesKategorija); //Termiņa saglabāšanas fāze Termins termins = dataRepostory.Termini.FirstOrDefault(t => t.TerminaID == editPreceViewModel.TerminaID); if (termins != null) { termins.NodosanasDatums = editPreceViewModel.NodosanasDatums; dataRepostory.SaveTermins(termins); } //Preces saglabāšanas fāze var prece = new Prece { PrecesNosaukums = editPreceViewModel.PrecesNosaukums, PrecesCena = editPreceViewModel.PrecesNomasCena, PrecesApraksts = editPreceViewModel.PrecesApraksts, KategorijasID = katId, PrecesID = editPreceViewModel.PrecesID, PrecesKods = editPreceViewModel.PrecesKods }; dataRepostory.SavePrece(prece); return katId; }
public ActionResult EditRewriteSave(EditPreceViewModel preceRewriteModel) { if (ModelState.IsValid && preceRewriteModel.PrecesID != 0) { int precesKatID = saveCombinedEditViewData(preceRewriteModel); Prece preceWithKodsToRewriteAllWithSameKods = new Prece { PrecesNosaukums = preceRewriteModel.PrecesNosaukums, PrecesKods = preceRewriteModel.PrecesKods, PrecesApraksts = preceRewriteModel.PrecesApraksts, PrecesCena = preceRewriteModel.PrecesNomasCena, KategorijasID = precesKatID }; //Parraksta visas preces kurām ir viens un tas pats kods dataRepostory.RewriteAllPrecesWithSameKods(preceWithKodsToRewriteAllWithSameKods); TempData["message"] = String.Format("Prece \"{1}\" veiksmīgi saglabāta un preces ar kodu: {0} parrakstītas!", preceRewriteModel.PrecesKods, preceRewriteModel.PrecesNosaukums); return Redirect(preceRewriteModel.ReturnUrl); } TempData["message"] = String.Format("Datos ieviesās kļūdas pirms saglabāšanas, Preces netika saglabātās!"); return Redirect(preceRewriteModel.ReturnUrl); }
/// <summary> /// Metode kura saglaba preces datus un parraksta visas tas preces kuram preces kods atbilda ar sagabajamaas preces kodu /// </summary> /// <param name="preceToSave">Prece kuras datus saglabat un parrakstit uz parejam precem ar to pasu preces kodu</param> /// <returns></returns> public ActionResult AddRewriteSave(MinimalPreceViewModel preceToSave) { if (ModelState.IsValid) { int precesKategorijasID = saveKategory(preceToSave.Kategorija); Prece glabajamaPrece = new Prece { KategorijasID = precesKategorijasID, PrecesApraksts = preceToSave.PrecesApraksts, PrecesNosaukums = preceToSave.PrecesNosaukums, PrecesKods = preceToSave.PrecesKods, PrecesCena = preceToSave.PrecesCena }; dataRepostory.SavePrece(glabajamaPrece); dataRepostory.RewriteAllPrecesWithSameKods(glabajamaPrece); TempData["message"] = String.Format("Prece \"{0}\" veiksmīgi saglabātaveiksmīgi saglabāta un preces ar kodu: {1} parrakstītas!", preceToSave.PrecesNosaukums, preceToSave.PrecesKods); } else { TempData["message"] = String.Format("Datos ieviesās kļūdas pirms saglabāšanas, Preces netika saglabātās!"); } return RedirectToAction("Index", "Admin"); }