public static List <MatchModel> AddCompetitorToMatch(CompetitorModel comp, MatchModel match, List <MatchModel> matches) { DataAccess.AddCompetitorToEvent(comp, match); MatchModel newComp = new MatchModel(); newComp.CompetitorId = comp.CompetitorId; newComp.MatchId = match.MatchId; newComp.Age = comp.Age; newComp.DisplayName = comp.DisplayName; newComp.DojoName = comp.DojoName; newComp.Gender = comp.Gender; newComp.RankName = comp.RankName; newComp.Weight = comp.Weight; newComp.Height = comp.Height; newComp.Children = new List <MatchModel>(); foreach (MatchModel m in matches) { if (m.MatchId == match.MatchId) { m.Children.Add(newComp); break; } } return(matches); }
/// <summary> /// Matches the partner. /// </summary> protected void MatchPartners() { // Iterate through each competitor that does not have a partner yet foreach (CompetitorModel competitor in this.ScoreKeeperService.Competitors.Where(c => !c.HasPartner)) { OpCodes partnerOpCode; // Hong partners with Chung and vice-versa switch (competitor.DeviceType) { case OpCodes.ChungRegistered: partnerOpCode = OpCodes.HongRegistered; break; case OpCodes.HongRegistered: partnerOpCode = OpCodes.ChungRegistered; break; default: continue; // skip anything we don't have a rule for } // Search for a matching competitor CompetitorModel partner = this.ScoreKeeperService.Competitors.FirstOrDefault(c => !c.HasPartner && c.DeviceType == partnerOpCode); // Assign the partners if we were successful if (partner != null) { competitor.Partner = partner; // The model will do the work of reverse mating this.Logger.Log("KickAndPunch matched " + competitor.DisplayName + " with " + partner.DisplayName, Category.Info, Priority.Low); } } }
public ActionResult AddCompetitor(string name) { try { var competitor = new CompetitorModel { Name = name, CreatedDate = DateTime.Now }; var competitorBLL = new CompetitorBLL(); competitorBLL.AddCompetitor(competitor); var message = new MessageResult <CompetitorModel> { isError = false, ResultList = null, Message = "Success", Result = null }; return(Json(message, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { var message = new MessageResult <ClientModel> { isError = true, ResultList = null, Message = ex.Message, Result = null }; return(Json(message, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// Called when the receiver reports data from a device indicating a hit has registered. /// We need to update the scorekeeper service if a game is in progress. /// </summary> /// <param name="deviceData">The sensor impact data.</param> protected void OnSensorHit(DeviceDataEventArgs deviceData) { CompetitorModel competitor = this.ScoreKeeperService.Competitors.FirstOrDefault(c => c.DeviceId.Equals(deviceData.DeviceId)); if (competitor != null) { byte impactLevel = Math.Max(deviceData.HeadHitValue, deviceData.VestHitValue); // If we are in partnering mode, we need to flip to award score/impact to the correct person if (competitor.HasPartner) { competitor = competitor.Partner; } competitor.LastImpactLevel = impactLevel; if (!this.StopWatchService.IsRunning && this.StopWatchService.DisplayTime == this.StopWatchService.Duration) { competitor.Score = competitor.HighestImpactLevel; } else if (this.StopWatchService.IsRunning && impactLevel >= competitor.RequiredImpactLevel) { competitor.Score += 1; // TODO: Allow configurable points this.Logger.Log("KickAndPunch score for " + competitor.DisplayName + " is now " + competitor.Score, Category.Info, Priority.Low); } } }
/// <summary> /// Gets the meter view and wires up the competitor to it /// </summary> /// <param name="model">The model.</param> /// <returns></returns> private MeterView GetMeterView(CompetitorModel model) { // Note: This should probably be refactored into a factory class somewhere!!!!! var meter = this.container.GetExportedValue <MeterView>(); meter.ViewModel.HasPanels = model.DeviceType == OpCodes.TargetRegistered; meter.ViewModel.Competitor = model; meter.ViewModel.CloseMeterCommand = new DelegateCommand(delegate { model.UnPartner(); this.scoreKeeperService.Competitors.Remove(model); }); meter.ViewModel.MoveMeterRightCommand = new DelegateCommand(delegate { var pos = this.Meters.IndexOf(meter); if (pos + 1 < this.Meters.Count) { this.Meters.Move(pos, pos + 1); } }); meter.ViewModel.MoveMeterLeftCommand = new DelegateCommand(delegate { var pos = this.Meters.IndexOf(meter); if (pos > 0) { this.Meters.Move(pos, pos - 1); } }); return(meter); }
public ActionResult UpdateCompetitor(int id, string name) { try { var competitor = new CompetitorModel { Id = id, Name = name }; var competitorBLL = new CompetitorBLL(); competitorBLL.UpdateCompetitor(competitor); var message = new MessageResult <CompetitorModel> { isError = false, ResultList = null, Message = "Success", Result = null }; return(Json(message, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { var message = new MessageResult <ClientModel> { isError = true, ResultList = null, Message = ex.Message, Result = null }; return(Json(message, JsonRequestBehavior.AllowGet)); } }
/// <summary> /// Called when the receiver sends a status packet such as low battery or lost connection to us /// </summary> /// <param name="deviceStatus">The <see cref="LaJust.EIDSS.Communications.Entities.DeviceStatusEventArgs"/> instance containing the event data.</param> protected void OnStatusNotification(DeviceStatusEventArgs deviceStatus) { CompetitorModel competitor = this.ScoreKeeperService.Competitors.FirstOrDefault(c => c.DeviceId.Equals(deviceStatus.DeviceId)); if (competitor != null) { competitor.DeviceStatus = deviceStatus.DeviceStatus; } }
public IHttpActionResult Competitors() { var model = new CompanyKeywordManager(this.config, this.clientUser).GetCompanies(); var response = new CompetitorModel { CompanyName = this.clientUser.UserFilter.UserName }; response.Competitors.AddRange(this.clientUser.CompetitorFilter.Select(i => i.UserName)); return(this.Ok(response)); }
public IHttpActionResult PostReiniciarGanador() { if (CompetitorModel.ReiniciarGanador()) { return(Json(new { status = true, info = "Reiniciar Registrado" })); } else { return(Json(new { status = false, info = "Ha ocurrido un problema al ingresar al reiniciar" })); } }
public bool ValidateCompetitorExists(CompetitorModel competitor) { var competitors = _repository.Get(i => i.Name == competitor.Name).ToList(); if (competitors.Count == 0) { return(true); } else { return(false); } }
public IHttpActionResult GetObtenerGanadorAnterior() { CompetitorModel ls = CompetitorModel.ObtenerGanadorAnterior(); if (ls != null) { return(Json(new { status = true, data = ls })); } else { return(Json(new { status = false, info = "Error al obtener ganador anterior" })); } }
public IHttpActionResult GetObtenerCompetitors() { List <CompetitorModel> ls = CompetitorModel.ObtenerTodos(); if (ls != null) { return(Json(new { status = true, data = ls })); } else { return(Json(new { status = false, info = "Error al intentar obtener a los competidores" })); } }
public void AddCompetitor(CompetitorModel competitor) { if (ValidateCompetitorExists(competitor)) { TinyMapper.Bind <CompetitorModel, CompetitorEntity>(); var competitorEntity = TinyMapper.Map <CompetitorEntity>(competitor); _repository.Insert(competitorEntity); } else { throw new Exception("Competitor already exists!"); } }
public void UpdateCompetitor(CompetitorModel competitor) { if (ValidateCompetitorExists(competitor)) { Mapper.Initialize(cfg => cfg.CreateMap <CompetitorModel, CompetitorEntity>().ForMember(x => x.CreatedDate, opt => opt.Ignore())); var competitorEntity = _repository.Get(i => i.Id == competitor.Id).First(); Mapper.Map(competitor, competitorEntity); competitorEntity.ModifiedDate = DateTime.Now; _repository.Update(competitorEntity); } else { throw new Exception("Competitor already exists!"); } }
public IHttpActionResult PostActualizarCuerpo(CompetitorModel ganador) { if (ganador != null) { if (CompetitorModel.ActualizarGanador(ganador.id)) { return(Json(new { status = true, info = "Ganador Registrado" })); } else { return(Json(new { status = false, info = "Ha ocurrido un problema al ingresar al ganador" })); } } else { return(Json(new { status = false, info = "Los datos enviados son incorrectos" })); } }
public static List <CompetitorModel> GetCompetitorModel(List <Competitor> mcs) { List <Models.CompetitorModel> model = new List <Models.CompetitorModel>(); foreach (Competitor obj in mcs) { if (model.Any(m => m.CompetitorId == obj.CompetitorId)) { continue; } CompetitorModel mm = new CompetitorModel(obj); model.Add(mm); } return(model); }
//Dynamic select options for enrollmember public List <SelectListItem> ApprovedEventList(int userID) { CompetitorModel comp = new CompetitorModel(); comp.userID = userID; string query = "select e.eventID from eventclub as ec inner join club as c on ec.clubID = c.clubID inner join event as e on e.eventID = ec.eventID where userID = @userID and startdate >= date('now')"; competitorList = SqliteDataAccess.LoadManyObjects(comp, query); List <SelectListItem> events2 = new List <SelectListItem>(); foreach (var obj in competitorList) { events2.Add(new SelectListItem { Text = obj.eventID, Value = obj.eventID }); } comp.eventList = events2; return(events2); }
//Adds member to eventcompetitor if club is in eventclub table public ActionResult EnrollMember(CompetitorModel comp) { //checks if club is allowed to submit members for said event EnrolledUserModel obj = new EnrolledUserModel(); obj.eventID = comp.eventID; obj.userID = (int)HttpContext.Session.GetInt32("UserID"); string query1 = "select * from eventclub as ec join club as c on ec.clubID = c.clubID where userID = @userID and ec.eventID = @eventID"; Console.WriteLine("1. " + comp.eventID + " " + comp.userID); obj = SqliteDataAccess.SingleObject(obj, query1); if (obj == null) { Console.WriteLine("NULL"); return(RedirectToAction("Application", "Home")); } else { CompetitorModel competitor = new CompetitorModel(); competitor.userID = comp.userID; string query3 = "select * from competitor where userID = @userID"; competitor = SqliteDataAccess.SingleObject(competitor, query3); competitor.eventID = comp.eventID; string query2 = "insert into eventcompetitor(eventID, competitorID) values(@eventID, @competitorID)"; SqliteDataAccess.SaveSingleObject(competitor, query2); for (int i = 1; i < 7; i++) { CompetitorModel comp2 = new CompetitorModel(); comp2.eventID = comp.eventID; comp2.competitorID = competitor.competitorID; comp2.jumpnr = i; competitorList.Add(comp2); } string query4 = "insert into jump(eventID, competitorID, jumpnr) values(@eventID, @competitorID, @jumpnr)"; SqliteDataAccess.SaveManyObjects(competitorList, query4); } return(RedirectToAction("Application", "Home")); }
public List <string> ApprovedEventList2(int userID) { CompetitorModel comp = new CompetitorModel(); comp.userID = userID; string query = "select e.eventID from eventclub as ec inner join club as c on ec.clubID = c.clubID inner join event as e on e.eventID = ec.eventID where userID = 16 and startdate >= date('now')"; competitorList = SqliteDataAccess.LoadManyObjects(comp, query); var events2 = new List <string>(); foreach (var obj in competitorList) { events2.Add(obj.eventID); } comp.eventListstring = events2.ToList(); return(events2.ToList()); }
public static List <MatchModel> FilterMatchModel_ApplicableMatches(List <MatchModel> model, CompetitorModel competitor, List <Division> divisions) { if (divisions.Count == 0) { return(model); } List <Division> filteredDivs = new List <Division>(); foreach (var div in divisions) { if (div.MinAge <= competitor.Age && div.MaxAge >= competitor.Age && div.Gender == competitor.Gender && div.MinRank.Level <= competitor.Level && div.MaxRank.Level >= competitor.Level && div.MinWeight_lb <= competitor.Weight && div.MaxWeight_lb >= competitor.Weight) { filteredDivs.Add(div); } } List <MatchModel> filteredModel = new List <MatchModel>(); foreach (var m in model) { if (filteredDivs.Any(d => d.DivisionId == m.DivisionId)) { filteredModel.Add(m); } } return(filteredModel); }
public static Competitor GetCompetitorFromCompetitorModel(CompetitorModel cm) { return(DataAccess.GetCompetitor(cm.CompetitorId)); }
public static CompetitorModel GetCompetitorModel(Competitor obj) { CompetitorModel mm = new CompetitorModel(obj); return(mm); }