public void AgregarASubasta(Apostador apostador, string Objeto) { var ObjetoSubast = GetObject(Objeto); if(ObjetoSubast != null) { if (!CheckIfApostadorInObjectList(ObjetoSubast,apostador)) { ObjetoSubast.Apostadores.Add(apostador); ModificarObjetoSubasta(ObjetoSubast); var Mensaje = String.Format("Se ha suscrito al {0}", ObjetoSubast.Nombre); apostador.Notify(Mensaje); } else { var Mensaje = String.Format("Ya esta suscrito", ObjetoSubast.Nombre); apostador.Notify(Mensaje); } } }
public void Apostar(Apostador apostador, string Objeto, int Precio) { var ObjetoApostar = GetObject(Objeto); if (ObjetoApostar != null) { if (CheckIfApostadorInObjectList(ObjetoApostar,apostador)) { if (Precio > ObjetoApostar.Precio) { ObjetoApostar.Precio = Precio; ModificarObjetoSubasta(ObjetoApostar); var Mensaje = String.Format("El precio de {0} ha cambiado a {1}.", ObjetoApostar.Nombre, ObjetoApostar.Precio); Notificar(ObjetoApostar.Apostadores, Mensaje); } else { string Mensaje = String.Format("El precio de {0} es de {1}.Intente de Nuevo", ObjetoApostar.Nombre, ObjetoApostar.Precio); apostador.Notify(Mensaje); } } } }
bool CheckIfApostadorInObjectList(ObjetoSubasta objeto, Apostador apostador) { return objeto.Apostadores.Where(a => a.Ip == apostador.Ip && a.Port == apostador.Port).SingleOrDefault() != null; }
public override void RegistarEnSubasta(string Parametros) { string[] parameters = Parametros.Split('|'); Apostador apostador= new Apostador(int.Parse(parameters[2]), parameters[1], this); Subasta.AgregarASubasta(apostador, parameters[0]); }
public override void MandarApuesta(string Parametros) { string[] parameters = Parametros.Split('|'); Apostador apostador= new Apostador(int.Parse(parameters[3]), parameters[2], this); Subasta.Apostar(apostador, parameters[0],int.Parse(parameters[1])); }