// GET: Admin/Netzbetreiber/CreateRelationship/12001234 public ActionResult CreateRelationship(int?bnr, string returnURL) { if (bnr == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Netzbetreiber nb = db.Netzbetreiber.GetByID(bnr); if (nb == null) { return(HttpNotFound()); } //Erzeuge ViewModel EditRelationshipViewModel vm = new EditRelationshipViewModel() { BNR = nb.BNR, Netzbetreiber = nb, Confirmed = false, UserList = new List <SelectListItem>() }; //Füge Liste der Nutzer dem ViewModel hinzu foreach (ApplicationUser user in db.Users.Get()) { vm.UserList.Add(new SelectListItem() { Text = user.UserName, Value = user.Id }); } ViewBag.returnURL = returnURL; return(View(vm)); }
public ActionResult Create( [Bind(Include = "BNR,Name,Rechtsform,StrasseHausNr,PLZOrt,VereinfachtesVerfahren")] Netzbetreiber netzbetreiber) { if (ModelState.IsValid) { Netzbetreiber nb = db.Netzbetreiber.GetByID(netzbetreiber.BNR); if (nb != null) { ViewBag.ErrorText = "Die angegebene BNR ist bereits vergeben."; return(View(netzbetreiber)); } if ((netzbetreiber.BNR < 12000000) || (netzbetreiber.BNR > 12009999)) { ViewBag.ErrorText = "Die angegebene BNR ist ungültig."; return(View(netzbetreiber)); } //BNR ist gültig und noch nicht vergeben db.Netzbetreiber.Insert(netzbetreiber); db.Save(); return(RedirectToAction("Index")); } return(View(netzbetreiber)); }
public ActionResult DeleteConfirmed(int id) { Netzbetreiber netzbetreiber = db.Netzbetreiber.GetByID(id); db.Netzbetreiber.Delete(netzbetreiber); db.Save(); return(RedirectToAction("Index")); }
public ActionResult CreateGrid(GridViewModel vm) { if (ModelState.IsValid) { //Daten holen Regulierungsperiode rp = db.Regulierungsperioden.GetByID(vm.RegPId); if (rp == null) { return(HttpNotFound()); } Netzbetreiber nb = db.Netzbetreiber.GetByID(vm.BNR); if (nb == null) { return(HttpNotFound()); } //Neues Netz erzeugen Netz netz = new Netz() { BNR = vm.BNR, NetzNr = vm.NetzNr, NetzName = vm.NetzName, Netzbetreiber = nb, RegPId = vm.RegPId, Regulierungsperiode = rp, EOGs = new List <EOG>(), Basisjahr = new Basisjahr() }; //Werte fürs Basisjahr zuordnen netz.Basisjahr.Netz = netz; netz.Basisjahr.Netzkosten = vm.Netzkosten; netz.Basisjahr.KAdnb = vm.KAdnb; netz.Basisjahr.Effizienzwert = vm.Effizienzwert; netz.Basisjahr.Verteilungsfaktor = vm.Verteilungsfaktor; netz.Basisjahr.RestwertNetzanlagen = vm.RestwertNetzanlagen; netz.Basisjahr.RestwertRegelanlagen = vm.RestwertRegelanlagen; netz.Basisjahr.VersorgteFlaeche = vm.VersorgteFlaeche; netz.Basisjahr.AnzahlAusspeisepunkte = vm.AnzahlAusspeisepunkte; netz.Basisjahr.Jahreshoechstlast = vm.Jahreshoechstlast; netz.Basisjahr.StartDate = vm.StartDate; netz.Basisjahr.EndDate = vm.EndDate; //EOGs erzeugen int dauerRp = (rp.EndDate.Year - rp.StartDate.Year + 1); for (int i = 1; i <= dauerRp; i++) { netz.EOGs.Add(new EOG(netz.Basisjahr, i)); netz.EOGs.ElementAt(i - 1).Netz = netz; netz.EOGs.ElementAt(i - 1).StartDate = rp.StartDate.AddYears(i - 1); } db.Netze.Insert(netz); db.Save(); return(RedirectToAction("Details", new { id = vm.BNR })); } return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); }
public ActionResult Edit( [Bind(Include = "BNR,Name,Rechtsform,StrasseHausNr,PLZOrt,VereinfachtesVerfahren")] Netzbetreiber netzbetreiber) { if (ModelState.IsValid) { db.Netzbetreiber.Update(netzbetreiber); db.Save(); return(RedirectToAction("Index")); } return(View(netzbetreiber)); }
// GET: Admin/Netzbetreibers/Details/5 public ActionResult Details(int?id, int?rpId, string returnURL) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Netzbetreiber netzbetreiber = db.Netzbetreiber.GetByID(id); if (netzbetreiber == null) { return(HttpNotFound()); } //Wenn keine RegPId angegeben wurde, liefere die zum aktuellen Zeitpunkt aktuelle RegP, sonst die angegebene RegP. Regulierungsperiode rp; if (rpId == null) { //Hole aktuelle RegP, falls keine rpId angegeben wurde rp = db.Regulierungsperioden.Get( o => o.StartDate <= DateTime.Now && o.EndDate >= DateTime.Now).FirstOrDefault(); } else { //Hole angegebene RP rp = db.Regulierungsperioden.GetByID(rpId); } if (rp != null) { //Es wurde eine RP gefunden EOGViewModel vm = new EOGViewModel() { RegPNumber = rp.RegPId, RegPStart = rp.StartDate, RegPEnd = rp.EndDate, RegPMax = db.Regulierungsperioden.dbSet.Max(r => r.RegPId), Netzbetreiber = new List <Netzbetreiber>() }; //Nur die Netze übernehmen, die in der aktuellen RP vorhanden sind netzbetreiber.Netze = (from n in netzbetreiber.Netze where n.RegPId == rp.RegPId select n).ToList(); vm.Netzbetreiber.Add(netzbetreiber); ViewBag.ReturnURL = returnURL; return(View(vm)); } //Es wurde keine RP gefunden return(HttpNotFound()); }
// GET: Admin/Netzbetreibers/Delete/5 public ActionResult Delete(int?id, string returnURL) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Netzbetreiber netzbetreiber = db.Netzbetreiber.GetByID(id); if (netzbetreiber == null) { return(HttpNotFound()); } ViewBag.ReturnURL = returnURL; return(View(netzbetreiber)); }
public ActionResult CreateRelationship([Bind(Include = "BNR")] IndexViewModel model) { if (model.BNR != null) // Es wurde eine BNR gepostet. { string userId = User.Identity.GetUserId(); // Den User NICHT über den UserManager holen, da dieser einen eigenen DbContext hat und dann mehrere // ChangeTracker existieren, die Probleme verursachen. ApplicationUser user = db.Users.GetByID(userId); Netzbetreiber nb = db.Netzbetreiber.GetByID(model.BNR); if (nb != null) // Der NB existiert, der verknüpft werden soll. { UserNetzbetreiberRelationship rs = db.UserNetzbetreiberRelationships.GetByID(user.Id, nb.BNR); if (rs == null) { // Die RS ist nicht bereits vorhanden rs = new UserNetzbetreiberRelationship() { BNR = Convert.ToInt32(model.BNR), Netzbetreiber = nb, Id = user.Id, User = user, Confirmed = false }; nb.UserRelationships.Add(rs); user.NetzbetreiberRelationships.Add(rs); db.UserNetzbetreiberRelationships.Insert(rs); db.Save(); return(RedirectToAction("Index", new { Message = ManageMessageId.AddNBSuccess })); } else { // Die RS ist bereits vorhanden return(RedirectToAction("Index", new { Message = ManageMessageId.RelationshipExists })); } } // Die BNR gibt es nicht return(RedirectToAction("Index", new { Message = ManageMessageId.BNRNotFound })); } return(RedirectToAction("Index")); }
protected override void Seed(EWFDbContext context) { var manager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(context)); //Standard-Account erstellen ApplicationUser user = new ApplicationUser() { UserName = "******", Email = "*****@*****.**", EmailConfirmed = true, PhoneNumberConfirmed = false, TwoFactorEnabled = false, LockoutEnabled = false, AccessFailedCount = 0 }; //Erzeugt den User manager.Create(user, "webadmin"); //Erzeugt die Admin-Rolle context.Roles.Add(new IdentityRole() { Name = "Admin" }); context.SaveChanges(); //Fügt die Beziehung zwischen User und Role hinzu. manager.AddToRole(user.Id, "Admin"); //Regulierungsperiode Regulierungsperiode regP = new Regulierungsperiode() { Number = 1, StartDate = new DateTime(2009, 1, 1), EndDate = new DateTime(2012, 12, 31) }; context.Regulierungsperioden.Add(regP); //Test-Netzbetreiber erstellen Netzbetreiber nb = new Netzbetreiber() { BNR = 12009999, Name = "Verteilernetzbetreiber", Rechtsform = "GmbH", PLZOrt = "99999 Musterstadt", StrasseHausNr = "Musterstraße 555", VereinfachtesVerfahren = false }; //Beziehung zwischen Nutzer und Netzbetreiber erstellen UserNetzbetreiberRelationship rs = new UserNetzbetreiberRelationship() { Netzbetreiber = nb, BNR = nb.BNR, User = user, Id = user.Id, Confirmed = true }; //Navigation-Properties zuweisen nb.UserRelationships = new List <UserNetzbetreiberRelationship>(); nb.UserRelationships.Add(rs); user.NetzbetreiberRelationships = new List <UserNetzbetreiberRelationship>(); user.NetzbetreiberRelationships.Add(rs); //Fügt nb und rs dem ORM hinzu context.Netzbetreiber.Add(nb); context.UserNetzbetreiberRelationships.Add(rs); //Netz für Test-Netzbetreiber Netz n = new Netz() { Netzbetreiber = nb, BNR = nb.BNR, RegPId = regP.RegPId, Regulierungsperiode = regP, NetzNr = 1, NetzName = "Region Ost", EOGs = new List <EOG> () }; context.Netze.Add(n); //Basisjahr für Netz 1 des Test-Netzbetreiber Basisjahr b = new Basisjahr() { NetzId = n.NetzId, Netz = n, Netzkosten = 79500587.45d, KAdnb = 4879325.78d, Effizienzwert = 0.92547878d, Verteilungsfaktor = 0.1d, RestwertNetzanlagen = 240567345.36d, RestwertRegelanlagen = 61894356.56d, StartDate = new DateTime(2006, 1, 1), EndDate = new DateTime(2006, 12, 31), VersorgteFlaeche = 345.34d, AnzahlAusspeisepunkte = 74895, Jahreshoechstlast = 25326d }; context.Basisjahre.Add(b); context.SaveChanges(); //EOGs für Netz 1 des Test-Netzbetreiber EOG eog = new EOG(b, 1) { StartDate = new DateTime(2009, 1, 1), EndDate = new DateTime(2009, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 2) { StartDate = new DateTime(2010, 1, 1), EndDate = new DateTime(2010, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 3) { StartDate = new DateTime(2011, 1, 1), EndDate = new DateTime(2011, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 4) { StartDate = new DateTime(2012, 1, 1), EndDate = new DateTime(2012, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); context.SaveChanges(); //Weiteres Netz für Test-Netzbetreiber n = new Netz() { BNR = nb.BNR, Netzbetreiber = nb, RegPId = regP.RegPId, NetzNr = 2, NetzName = "Region West", Regulierungsperiode = regP, EOGs = new List <EOG>() }; context.Netze.Add(n); //Basisjahr für Netz 2 des Test-Netzbetreiber b = new Basisjahr() { NetzId = n.NetzId, Netz = n, Netzkosten = 25500587.45d, KAdnb = 2879325.78d, Effizienzwert = 0.897851d, Verteilungsfaktor = 0.1d, RestwertNetzanlagen = 112567345.36d, RestwertRegelanlagen = 19894356.56d, StartDate = new DateTime(2006, 1, 1), EndDate = new DateTime(2006, 12, 31), VersorgteFlaeche = 134.4d, AnzahlAusspeisepunkte = 24895, Jahreshoechstlast = 11389d }; context.Basisjahre.Add(b); //EOGs für Netz 2 des Test-Netzbetreiber eog = new EOG(b, 1) { StartDate = new DateTime(2009, 1, 1), EndDate = new DateTime(2009, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 2) { StartDate = new DateTime(2010, 1, 1), EndDate = new DateTime(2010, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 3) { StartDate = new DateTime(2011, 1, 1), EndDate = new DateTime(2011, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 4) { StartDate = new DateTime(2012, 1, 1), EndDate = new DateTime(2012, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); //Weitere Regulierungsperiode regP = new Regulierungsperiode() { Number = 2, StartDate = new DateTime(2013, 1, 1), EndDate = new DateTime(2017, 12, 31) }; context.Regulierungsperioden.Add(regP); //Weiteres Netz für Test-Netzbetreiber n = new Netz() { BNR = nb.BNR, Netzbetreiber = nb, RegPId = regP.RegPId, Regulierungsperiode = regP, NetzNr = 1, NetzName = "Gesamtnetz", EOGs = new List <EOG>() }; context.SaveChanges(); //Basisjahr für Netz 1 des Test-Netzbetreiber b = new Basisjahr() { NetzId = n.NetzId, Netz = n, Netzkosten = 101500587.45d, KAdnb = 5879325.78d, Effizienzwert = 0.93547878d, Verteilungsfaktor = 0.2d, RestwertNetzanlagen = 396567345.36d, RestwertRegelanlagen = 3894356.56d, StartDate = new DateTime(2010, 1, 1), EndDate = new DateTime(2010, 12, 31), VersorgteFlaeche = 480.4d, AnzahlAusspeisepunkte = 104895, Jahreshoechstlast = 38576d }; context.Basisjahre.Add(b); //EOGs für Netz 2 des Test-Netzbetreiber eog = new EOG(b, 1) { StartDate = new DateTime(2013, 1, 1), EndDate = new DateTime(2013, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 2) { StartDate = new DateTime(2014, 1, 1), EndDate = new DateTime(2014, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 3) { StartDate = new DateTime(2015, 1, 1), EndDate = new DateTime(2015, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 4) { StartDate = new DateTime(2016, 1, 1), EndDate = new DateTime(2016, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); eog = new EOG(b, 5) { StartDate = new DateTime(2017, 1, 1), EndDate = new DateTime(2017, 12, 31), NetzId = n.NetzId, Netz = n }; n.EOGs.Add(eog); context.EOGs.Add(eog); //Weiterer Test-Netzbetreiber nb = new Netzbetreiber() { BNR = 12009998, Name = "Fernleitungsnetzbetreiber", Rechtsform = "AG", PLZOrt = "00001 Testheim", StrasseHausNr = "Teststraße 444", VereinfachtesVerfahren = false }; context.Netzbetreiber.Add(nb); //Relationship für weiteren Test-Netzbetreiber rs = new UserNetzbetreiberRelationship() { Netzbetreiber = nb, BNR = nb.BNR, User = user, Id = user.Id, Confirmed = true }; //Navigation-Properties zuweisen context.UserNetzbetreiberRelationships.Add(rs); //Weiterer Test-User user = new ApplicationUser() { UserName = "******", Email = "*****@*****.**", EmailConfirmed = true, LockoutEnabled = false, AccessFailedCount = 0 }; //Erzeugt den User manager.Create(user, "test12"); //Relationship für weiteren User rs = new UserNetzbetreiberRelationship() { Netzbetreiber = nb, BNR = nb.BNR, User = user, Id = user.Id, Confirmed = false }; context.UserNetzbetreiberRelationships.Add(rs); //Weitere Regulierungsperiode regP = new Regulierungsperiode() { Number = 3, StartDate = new DateTime(2018, 1, 1), EndDate = new DateTime(2022, 12, 31) }; context.Regulierungsperioden.Add(regP); context.SaveChanges(); }