public ActionResult MainTableSave(MainTable mainTable) { if (!ModelState.IsValid) { var viewModel = new MainTableFormViewModel { MainTable = mainTable, Plcs = _context.Plcs.ToList(), Units = _context.Units.ToList(), Labels = _context.Labels.ToList(), Titles = _context.Titles.ToList() }; return(View("MainTableForm", viewModel)); } if (mainTable.Id == 0) { _context.MainTables.Add(mainTable); _context.SaveChanges(); //duplicate new id parameter to IdAsc for asc or desc var mainTableInDb = _context.MainTables.Single(c => c.Id == mainTable.Id); mainTableInDb.IdAsc = mainTable.Id; // _context.SaveChanges(); // populate MainTablePropertie table var viewModel = new MainTablePropertie { MainTablePropertieId = mainTable.Id, SclMax = 100, SclMin = 0, IsCutOffMax = false, CutOffMax = 100, IsCutOffMin = false, CutOffMin = 0 }; _context.MainTableProperties.Add(viewModel); _context.SaveChanges(); } else { var mainTableInDb = _context.MainTables.Single(c => c.Id == mainTable.Id); mainTableInDb.LabelId = mainTable.LabelId; mainTableInDb.PlcId = mainTable.PlcId; mainTableInDb.UnitId = mainTable.UnitId; mainTableInDb.TitleId = mainTable.TitleId; mainTableInDb.IsContainer = mainTable.IsContainer; mainTableInDb.Container = mainTable.Container; _context.SaveChanges(); } // _context.SaveChanges(); return(RedirectToAction("MainTable", "Parameters")); }
public ActionResult LimitsSave(MainTablePropertie mainTablePropertie) { if (!ModelState.IsValid) { return(View("LimitsForm", mainTablePropertie)); } if (mainTablePropertie.MainTablePropertieId == 0) { _context.MainTableProperties.Add(mainTablePropertie); } else { var mainTablePropertieInDb = _context.MainTableProperties.Single(c => c.MainTablePropertieId == mainTablePropertie.MainTablePropertieId); if (!mainTablePropertie.IsCutOffMax) { mainTablePropertieInDb.CutOffMax = mainTablePropertie.SclMax; } else { mainTablePropertieInDb.CutOffMax = mainTablePropertie.CutOffMax; } if (!mainTablePropertie.IsCutOffMin) { mainTablePropertieInDb.CutOffMin = mainTablePropertie.SclMin; } else { mainTablePropertieInDb.CutOffMin = mainTablePropertie.CutOffMin; } mainTablePropertieInDb.IsCutOffMax = mainTablePropertie.IsCutOffMax; mainTablePropertieInDb.IsCutOffMin = mainTablePropertie.IsCutOffMin; mainTablePropertieInDb.SclMax = mainTablePropertie.SclMax; mainTablePropertieInDb.SclMin = mainTablePropertie.SclMin; } _context.SaveChanges(); return(RedirectToAction("Limits", "Parameters")); }