libs.functions.tools.recalculation

libs/functions/tools/score_simulator.py

 1"""
 2libs/functions/tools/score_simulator.py
 3"""
 4
 5import logging
 6from contextlib import closing
 7
 8import libs.global_value as g
 9from cls.score import GameResult
10from libs.data import modify
11from libs.utils import dbutil
12
13
14def main():
15    """ポイント再計算"""
16    modify.db_backup()
17    with closing(dbutil.get_connection()) as cur:
18        rows = cur.execute("select * from result where rule_version=?;", (g.cfg.mahjong.rule_version,))
19        count = 0
20
21        for row in rows:
22            result = GameResult(ts=str(row["ts"]))
23            result.calc(**dict(row))
24            cur.execute(g.sql["RESULT_UPDATE"], result.to_dict())
25            count += 1
26
27        cur.commit()
28    logging.notice("recalculated: %s", count)  # type: ignore
def main():
15def main():
16    """ポイント再計算"""
17    modify.db_backup()
18    with closing(dbutil.get_connection()) as cur:
19        rows = cur.execute("select * from result where rule_version=?;", (g.cfg.mahjong.rule_version,))
20        count = 0
21
22        for row in rows:
23            result = GameResult(ts=str(row["ts"]))
24            result.calc(**dict(row))
25            cur.execute(g.sql["RESULT_UPDATE"], result.to_dict())
26            count += 1
27
28        cur.commit()
29    logging.notice("recalculated: %s", count)  # type: ignore

ポイント再計算