libs.domain.datamodels module¶
libs/domain/datamodels.py
- class libs.domain.datamodels.Args¶
Bases:
objectコマンドラインオプション
- __init__(service, config, no_cleanup, debug, verbose, moderate, notime, text, host, port, compar, unification, recalculation, export_data, import_data, vacuum, gen_test_data, testcase)¶
- Parameters:
service (str)
config (Path)
no_cleanup (bool)
debug (int)
verbose (int)
moderate (bool)
notime (bool)
text (str)
host (str)
port (int)
compar (bool)
unification (Path)
recalculation (bool)
export_data (str)
import_data (str)
vacuum (bool)
gen_test_data (int)
testcase (Path | None)
- Return type:
None
- compar: bool¶
- config: Path¶
設定ファイルパス
- debug: int¶
デバッグ出力フラグ
- export_data: str¶
- gen_test_data: int¶
- host: str¶
- import_data: str¶
- moderate: bool¶
INFO以下のログレベル出力を抑止
- no_cleanup: bool¶
作業ディレクトリの内容を削除
- notime: bool¶
ログに日付を付与しない
- port: int¶
- recalculation: bool¶
- service: str¶
- testcase: Path | None¶
- text: str¶
- unification: Path¶
- vacuum: bool¶
- verbose: int¶
詳細出力フラグ
- class libs.domain.datamodels.CommandAttrs¶
Bases:
ParameterDataサブコマンド設定パラメータ
- __init__(individual=True, guest_skip=True, guest_skip2=True, unregistered_replace=True, friendly_fire=False, statistics=False, ranked=3, stipulated=0, stipulated_rate=0.05, interval=80, search_word='', group_length=0, commandword=<factory>, command_suffix=<factory>, aggregation_range='当日', always_argument=<factory>, dropitems=<factory>)¶
- Parameters:
individual (bool)
guest_skip (bool)
guest_skip2 (bool)
unregistered_replace (bool)
friendly_fire (bool)
statistics (bool)
ranked (int)
stipulated (int)
stipulated_rate (float)
interval (int)
search_word (str)
group_length (int)
commandword (list[str])
command_suffix (list[str])
aggregation_range (str)
always_argument (list[str])
dropitems (list[str])
- Return type:
None
- aggregation_range: str = '当日'¶
検索範囲未指定時に使用される範囲
- always_argument: list[str]¶
オプションとして常に付与される文字列
- command_suffix: list[str]¶
コマンド接尾辞(登録キーワード+接尾辞を呼び出しキーワードとして扱う)
- commandword: list[str]¶
呼び出しキーワード
- dropitems: list[str]¶
非表示にする項目
- stipulated_calculation(game_count)¶
規定打数をゲーム数から計算
- Parameters:
game_count (int) – 指定ゲーム数
- Returns:
規定ゲーム数
- Return type:
int
- class libs.domain.datamodels.ComparisonResults¶
Bases:
object突合結果
- __init__(search_after=-7, score_list=<factory>, mismatch=<factory>, missing=<factory>, delete=<factory>, remark_mod=<factory>, remark_del=<factory>, invalid_score=<factory>, pending=<factory>)¶
- Parameters:
search_after (int)
score_list (dict[str, MessageParserProtocol])
mismatch (list[dict[str, GameResult]])
missing (list[GameResult])
delete (list[GameResult])
remark_mod (list[RemarkDict])
remark_del (list[RemarkDict])
invalid_score (list[GameResult])
pending (list[GameResult])
- Return type:
None
- property after: ExtendedDatetime¶
突合開始日時
- property before: ExtendedDatetime¶
突合終了日時
- delete: list[GameResult]¶
スコア削除
- invalid_score: list[GameResult]¶
素点合計不一致
- mismatch: list[dict[str, GameResult]]¶
スコア差分
- missing: list[GameResult]¶
スコア追加
- output(kind)¶
出力メッセージ生成
- Parameters:
kind (Literal[summary, headline, pending, mismatch, missing, delete, remark_mod, remark_del, invalid_score]) – 種類
- Returns:
生成文字列
- Return type:
str
- pending: list[GameResult]¶
処理保留データ
- remark_del: list[RemarkDict]¶
メモ削除
- remark_mod: list[RemarkDict]¶
メモ変更
- score_list: dict[str, MessageParserProtocol]¶
スコアリスト(一時保管用)
- search_after: int = -7¶
突合範囲(日数)
- class libs.domain.datamodels.GameInfo¶
Bases:
objectゲーム集計情報
- __init__(count=0, first_game=None, last_game=None, first_comment=None, last_comment=None)¶
- Parameters:
count (int)
first_game (ExtendedDatetime | None)
last_game (ExtendedDatetime | None)
first_comment (str | None)
last_comment (str | None)
- Return type:
None
- clear()¶
情報削除
- Return type:
None
- count: int = 0¶
集計範囲のゲーム数
- first_comment: str | None = None¶
集計範囲の最初のゲームコメント
- first_game: ExtendedDatetime | None = None¶
集計範囲の最初のゲーム時間
- get()¶
指定条件を満たすゲーム数のカウント、最初と最後の時刻とコメントを取得
- Return type:
None
- last_comment: str | None = None¶
集計範囲の最後のゲームコメント
- last_game: ExtendedDatetime | None = None¶
集計範囲の最後のゲーム時間
- class libs.domain.datamodels.ParameterData¶
Bases:
object動作パラメータ
- __init__(individual=True, guest_skip=True, guest_skip2=True, unregistered_replace=True, friendly_fire=False, statistics=False, ranked=3, stipulated=0, stipulated_rate=0.05, interval=80, search_word='', group_length=0)¶
- Parameters:
individual (bool)
guest_skip (bool)
guest_skip2 (bool)
unregistered_replace (bool)
friendly_fire (bool)
statistics (bool)
ranked (int)
stipulated (int)
stipulated_rate (float)
interval (int)
search_word (str)
group_length (int)
- Return type:
None
- default_reset()¶
デフォルト値にリセット
- Return type:
None
- friendly_fire: bool = False¶
チーム戦集計時のチーム同卓ゲームの扱い
True: チーム同卓ゲームを集計(同じチームのポイントは合算される)
False: チーム同卓ゲームを集計対象外にする
- group_length: int = 0¶
コメント検索時に指定文字数でグループ化する
- guest_skip: bool = True¶
ゲストアリ/ナシフラグ(サマリ集計用)
- guest_skip2: bool = True¶
ゲストアリ/ナシフラグ(詳細集計用)
- individual: bool = True¶
個人/チーム集計切替フラグ
True: 個人集計
False: チーム集計
- interval: int = 80¶
移動平均算出ゲーム数指定
- ranked: int = 3¶
ランキング/レーティングで表示する順位
- search_word: str = ''¶
コメント検索文字列
- statistics: bool = False¶
統計情報表示
- stipulated: int = 0¶
規定打数指定
- stipulated_rate: float = 0.05¶
規定打数計算レート
- unregistered_replace: bool = True¶
メンバー未登録プレイヤー名をゲストに置き換えるかフラグ
True: 置き換える
False: 置き換えない