// 투수정보를 가지고 온다. private PitcherInfo GetFirstPitchers(Match match, AttackType attckType, String teamInitial, DateTime dateTime) { // 경기를 가져온다. DatabaseManager dbMgr = new DatabaseManager(); var players = dbMgr.SelectAll <Player>(); var matches = dbMgr.SelectAll <Match>(); var schedules = dbMgr.SelectAll <Schedule>(); var ths = dbMgr.SelectAll <Th>(); var bats = dbMgr.SelectAll <Bat>(); // 지난 데이터의 분석기 생성 BeThe.DataAnalyzer.Manager analyzer = new BeThe.DataAnalyzer.Manager(); analyzer.MaxDateTime = dateTime; ThType tyType = attckType == AttackType.Home ? ThType.말 : ThType.초; var pitcherId = (from t in ths join b in bats on t.Id equals b.ThId where t.MatchId == match.Id && t.Number == 1 && t.ThType == tyType select b).First().PitcherId; // 투수 정보 가져오기 var pitcherInfo = analyzer.GetPitcherInfo(pitcherId, 4); return(pitcherInfo); }
// 한경기의 한쪽 팀의 분석정보를 가져온다. private AnalyzerData GetAnalyzerData(Match match, AttackType attckType, String teamInitial, DateTime dateTime) { // 분석된 데이터 만들기 AnalyzerData analyzerData = new AnalyzerData(); analyzerData.HitterInfos = new List <HitterInfo>(); // 경기를 가져온다. DatabaseManager dbMgr = new DatabaseManager(); var players = dbMgr.SelectAll <Player>(); var matches = dbMgr.SelectAll <Match>(); var schedules = dbMgr.SelectAll <Schedule>(); var ths = dbMgr.SelectAll <Th>(); var bats = dbMgr.SelectAll <Bat>(); ThType tyType = attckType == AttackType.Home ? ThType.말 : ThType.초; // 지난 데이터의 분석기 생성 BeThe.DataAnalyzer.Manager analyzer = new BeThe.DataAnalyzer.Manager(); analyzer.MaxDateTime = dateTime; // 당일 선발투수 가져오기(분석시 입력 혹은 크롤링 구현) var pitcherId = (from t in ths join b in bats on t.Id equals b.ThId where t.MatchId == match.Id && t.Number == 1 && t.ThType == tyType select b).First().PitcherId; // 투수 정보 가져오기 analyzerData.PitcherInfo = analyzer.GetPitcherInfo(pitcherId, 4); // 타자리스트 얻어오기 var hitters = analyzer.GetStartPlayerForNDays(teamInitial, 4); foreach (var hitter in hitters) { // 각타자의 정보 얻어오기 var HitInfo = GetHitterInfo(hitter.PlayerId, analyzer, teamInitial); analyzerData.HitterInfos.Add(HitInfo); } return(analyzerData); }