예제 #1
0
        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));
        }
예제 #2
0
        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(""));
        }