public ActionResult GuildaPlayer(int id) { GPCLib.DataAccess.Guilda daGuilda = new GPCLib.DataAccess.Guilda(); List <SelectListItem> listSelectListItem = new List <SelectListItem>(); List <SelectListItem> listSelectListItemTodos = new List <SelectListItem>(); //Lista os Players para ambos ListBox GPCLib.Models.GuildaPlayersModels listGuilda = daGuilda.ListarUsuariosGuilda(id); List <GPCLib.Models.PlayerModels> PlayersTodos = new GPCLib.DataAccess.Player().ListarPlayersSemGuild(); //Monta o Objeto da Listbox foreach (GPCLib.Models.PlayerModels item in listGuilda.Players) { SelectListItem selectList = new SelectListItem() { Text = item.Nome, Value = item.Id.ToString() }; listSelectListItem.Add(selectList); } //Monta o Objeto da Listbox foreach (GPCLib.Models.PlayerModels item in PlayersTodos) { SelectListItem selectList = new SelectListItem() { Text = item.Nome, Value = item.Id.ToString() }; listSelectListItemTodos.Add(selectList); } //Atribui ao objeto de retorno GPCLib.Models.GuildaPlayerListModels listModel = new GPCLib.Models.GuildaPlayerListModels(); listModel.Players = listSelectListItem; GPCLib.Models.GuildaPlayerListModels listModelTodos = new GPCLib.Models.GuildaPlayerListModels(); listModelTodos.Players = listSelectListItemTodos; listGuilda.TodosPlayersListBox = listModelTodos; listGuilda.GuildaUsuarioListBox = listModel; return(View(listGuilda)); }
public ActionResult GravarUsuariosGuilda(GPCLib.Models.GuildaPlayersModels model) { GPCLib.DataAccess.Guilda daGuilda = new GPCLib.DataAccess.Guilda(); GPCLib.DataAccess.Player daPlayer = new GPCLib.DataAccess.Player(); GPCLib.DataAccess.Usuario daUsuario = new GPCLib.DataAccess.Usuario(); GPCLib.Models.PlayerUsuarioModels playerUsuario; //Antes de excluir selecioar todos os usuários GPCLib.Models.GuildaPlayersModels usuariosOld = daGuilda.ListarUsuariosGuilda(model.Guilda.Id); //Excluir membros da GUild e inserir novamente. daGuilda.ExcluirMembrosGuilda(model.Guilda.Id); GPCLib.Models.GuildaPlayer objPlayer; foreach (int item in model.GuildaUsuarioListBox.idPlayer) { objPlayer = new GPCLib.Models.GuildaPlayer(); objPlayer.Ativo = 1; objPlayer.idGuilda = model.Guilda.Id; objPlayer.idPlayer = item; if (usuariosOld.Players.Select(x => x.Id == item).Count() > 0) { objPlayer.idUsuario = usuariosOld.Players.First(x => x.Id == item).Usuario.Id; } daGuilda.InserirMembroGuilda(objPlayer); //Se já tiver Usuario x Player já grava a Guilda no ASPNETUSERs. playerUsuario = daPlayer.ObterPlayerUsuario(item); if (playerUsuario.Usuario != null) { //Atualiza o codigo da Guilda daUsuario.AtualizarCodGuilda(model.Guilda.Id, playerUsuario.Usuario.Id); } } TempData["Success"] = "Gravado com sucesso"; return(RedirectToAction("GuildaPlayer", new { id = model.Guilda.Id })); }