/// <summary> /// 日付別の履歴を取得 /// </summary> /// <param name="iPlayerName">プレイヤー名</param> /// <param name="iYmd">日付</param> /// <returns></returns> public FishHistoryDBModel SelectDayly(string iPlayerName, DateTime iYmd, FishResultStatusKind iResultStatus, string iFishName) { logger.Trace("Player={0} Ymd={1} ResultStatus={2} Fish={3}", iPlayerName, iYmd, iResultStatus, iFishName); FishHistoryDBModel tmpHistory = GetHistoryDB(iPlayerName, iYmd); FishHistoryDBModel ret = GetHistoryDB(iPlayerName, iYmd); ret.Fishes.Clear(); foreach (FishHistoryDBFishModel fish in tmpHistory.Fishes) { bool addFlg = true; if (iResultStatus != FishResultStatusKind.Unknown && fish.Result != iResultStatus) { addFlg = false; } if (iFishName != string.Empty && fish.FishName != iFishName) { addFlg = false; } if (addFlg) { ret.Fishes.Add(fish); } } return(ret); }
/// <summary> /// 日付別の履歴を取得 /// </summary> /// <param name="iPlayerName">プレイヤー名</param> /// <param name="iYmd">日付</param> /// <returns></returns> public FishHistoryDBModel SelectDayly(string iPlayerName, DateTime iYmd, FishResultStatusKind iResultStatus, string iFishName) { FishHistoryDBModel tmpHistory = GetHistoryDB(iPlayerName, iYmd); FishHistoryDBModel ret = GetHistoryDB(iPlayerName, iYmd); ret.Fishes.Clear(); foreach (FishHistoryDBFishModel fish in tmpHistory.Fishes) { bool addFlg = true; if (iResultStatus != FishResultStatusKind.Unknown && fish.Result != iResultStatus) addFlg = false; if (iFishName != string.Empty && fish.FishName != iFishName) addFlg = false; if (addFlg) { ret.Fishes.Add(fish); } } return ret; }
/// <summary> /// 日別のサマリーを取得する /// </summary> /// <param name="iPlayerName">プレイヤー名</param> /// <param name="iYmd">日付</param> /// <returns>サマリー情報</returns> public FishHistoryDBSummaryModel GetSummary(string iPlayerName, DateTime iYmd, FishResultStatusKind iResult, string iFishName) { FishHistoryDBModel history = SelectDayly(iPlayerName, iYmd, iResult, iFishName); FishHistoryDBSummaryModel ret = new FishHistoryDBSummaryModel(); foreach(FishHistoryDBFishModel fish in history.Fishes) { ret.Add(fish); } return ret; }
private void EventFished(FishResultStatusKind iFishResultStatus) { //返すデータの設定 FishedEventArgs e = new FishedEventArgs(); e.FishResultStatus = iFishResultStatus; e.Message = this.Message; //イベントの発生 OnFished(e); }
/// <summary> /// 日別のサマリーを取得する /// </summary> /// <param name="iPlayerName">プレイヤー名</param> /// <param name="iYmd">日付</param> /// <returns>サマリー情報</returns> public FishHistoryDBSummaryModel GetSummary(string iPlayerName, DateTime iYmd, FishResultStatusKind iResultStatus, string iFishName) { logger.Trace("Player={0} Ymd={1} ResultStatus={2} Fish={3}", iPlayerName, iYmd, iResultStatus, iFishName); FishHistoryDBModel history = SelectDayly(iPlayerName, iYmd, iResultStatus, iFishName); FishHistoryDBSummaryModel ret = new FishHistoryDBSummaryModel(); foreach (FishHistoryDBFishModel fish in history.Fishes) { ret.Add(fish); } return(ret); }
/// <summary> /// 釣り情報の更新 /// </summary> private void updateFishingInfo(DataGridView iGrid, DateTime iYmd, FishResultStatusKind iResult, string iFishName) { if (InvokeRequired) { Invoke(new UpdateFishingInfoDelegate(updateFishingInfo), iGrid, iYmd, iResult, iFishName); } else { this.Cursor = Cursors.WaitCursor; logger.Output(LogLevelKind.DEBUG, "釣り情報の更新"); FishHistoryDBSummaryModel sum = fishHistoryDB.GetSummary(fishing.PlayerName, iYmd, iResult, iFishName); DataTable tbl = new DataTable(); tbl.Columns.Add("Result", typeof(string)); tbl.Columns.Add("FishName", typeof(string)); tbl.Columns.Add("Count", typeof(string)); tbl.Columns.Add("ResultPer", typeof(string)); tbl.Columns.Add("AllPer", typeof(string)); //全体 DataRow row = tbl.NewRow(); row["Result"] = "全体"; row["FishName"] = string.Empty; row["Count"] = sum.Count; row["ResultPer"] = string.Empty; row["AllPer"] = "100%"; tbl.Rows.Add(row); foreach (FishHistoryDBSummaryResultModel result in sum.Results) { if (result.Count > 0) { row = tbl.NewRow(); row["Result"] = result.Result.ToString(); row["FishName"] = string.Empty; row["Count"] = result.Count.ToString(); row["ResultPer"] = string.Empty; row["AllPer"] = result.TotalPercent.ToString() + "%"; tbl.Rows.Add(row); if (result.Result != FishResultStatusKind.NoBite) { foreach (FishHistoryDBSummaryFishModel fish in result.Fishes) { row = tbl.NewRow(); row["Result"] = string.Empty; row["FishName"] = fish.FishName; row["Count"] = fish.Count.ToString(); row["ResultPer"] = fish.Percent.ToString() + "%"; row["AllPer"] = fish.TotalPercent.ToString() + "%"; tbl.Rows.Add(row); } } } } tbl.AcceptChanges(); //グリッドにデータソースを設定 iGrid.DataSource = tbl.DefaultView; this.Cursor = Cursors.Default; } }