public ActionResult CopyPlatoon(Guid id) { TerritoryPlatoon territoryPlatoon = db.TerritoryPlatoons.Include(x => x.PlatoonCharacters).SingleOrDefault(x => x.Id == id); if (territoryPlatoon == null) { return(HttpNotFound()); } var platoons = db.TerritoryPlatoons.Where(x => x.PhaseTerritory.TerritoryBattlePhase.TerritoryBattle_Id == territoryPlatoon.PhaseTerritory.TerritoryBattlePhase.TerritoryBattle_Id && x.PhaseTerritory.TerritoryBattlePhase.Phase <= territoryPlatoon.PhaseTerritory.TerritoryBattlePhase.Phase) .Select(s => new { Text = "Phase " + s.PhaseTerritory.TerritoryBattlePhase.Phase + " - " + s.PhaseTerritory.PhaseLocation + " - Platoon " + s.PlatoonNumber, Value = s.Id }).OrderBy(x => x.Text).AsEnumerable(); SelectList selectList = new SelectList(platoons, "Value", "Text"); PlatoonCopyModel model = new PlatoonCopyModel() { PlatoonOptions = selectList, CopyToPlatoonId = id }; return(PartialView("_CopyPlatoon", model)); }
public ActionResult CopyPlatoon(PlatoonCopyModel platoonCopyModel) { if (ModelState.IsValid) { TerritoryPlatoon territoryPlatoonFrom = db.TerritoryPlatoons.Include(x => x.PlatoonCharacters).SingleOrDefault(x => x.Id == platoonCopyModel.SelectedPlatoonId); TerritoryPlatoon territoryPlatoonTo = db.TerritoryPlatoons.Include(x => x.PlatoonCharacters).SingleOrDefault(x => x.Id == platoonCopyModel.CopyToPlatoonId); territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 1).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 1).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 2).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 2).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 3).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 3).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 4).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 4).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 5).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 5).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 6).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 6).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 7).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 7).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 8).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 8).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 9).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 9).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 10).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 10).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 11).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 11).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 12).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 12).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 13).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 13).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 14).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 14).Character_Id; territoryPlatoonTo.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 15).Character_Id = territoryPlatoonFrom.PlatoonCharacters.FirstOrDefault(x => x.PlatoonPosition == 15).Character_Id; db.Entry(territoryPlatoonTo).State = EntityState.Modified; db.SaveChanges(); var tbp = db.TerritoryBattlePhases.Find(territoryPlatoonTo.PhaseTerritory.TerritoryBattlePhase_Id); tbp.RefreshReport = true; db.Entry(tbp).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Edit", "TerritoryPlatoons", new { id = territoryPlatoonTo.Id })); } return(RedirectToAction("")); }