libs.global_value
モジュール間データ共有用
1"""モジュール間データ共有用""" 2 3from typing import TYPE_CHECKING 4 5if TYPE_CHECKING: 6 from argparse import Namespace 7 8 from slack_bolt.app.app import App 9 from slack_sdk.web.client import WebClient 10 11 from cls.config import AppConfig 12 from cls.parser import MessageParser 13 from cls.types import TeamDataDict 14 15args: "Namespace" = None # type: ignore 16"""コマンドライン引数""" 17app: "App" 18"""slack object""" 19webclient: "WebClient" 20"""slack object""" 21 22# モジュール共通インスタンス 23cfg: "AppConfig" 24"""Configインスタンス共有""" 25msg: "MessageParser" 26"""MessageParserインスタンス共有""" 27 28# 環境パラメータ 29member_list: dict = {} 30"""メンバーリスト 31- 別名: 表示名 32""" 33team_list: list["TeamDataDict"] = [] 34"""チームリスト 35- id: チームID 36- team: チーム名 37- member: 所属メンバーリスト 38""" 39bot_id: str = "" 40"""ボットID""" 41params: dict = {} 42"""プレースホルダ用パラメータ""" 43 44app_var: dict = {} 45"""ホームタブ用初期値""" 46 47sql: dict = {} 48"""共通クエリ""" 49sql["RESULT_INSERT"] = """ 50 insert into 51 result ( 52 ts, playtime, 53 p1_name, p1_str, p1_rpoint, p1_rank, p1_point, 54 p2_name, p2_str, p2_rpoint, p2_rank, p2_point, 55 p3_name, p3_str, p3_rpoint, p3_rank, p3_point, 56 p4_name, p4_str, p4_rpoint, p4_rank, p4_point, 57 deposit, rule_version, comment 58 ) values ( 59 :ts, :playtime, 60 :p1_name, :p1_str, :p1_rpoint, :p1_rank, :p1_point, 61 :p2_name, :p2_str, :p2_rpoint, :p2_rank, :p2_point, 62 :p3_name, :p3_str, :p3_rpoint, :p3_rank, :p3_point, 63 :p4_name, :p4_str, :p4_rpoint, :p4_rank, :p4_point, 64 :deposit, :rule_version, :comment 65 ) 66 ; 67""" 68 69sql["RESULT_UPDATE"] = """ 70 update result set 71 p1_name=:p1_name, p1_str=:p1_str, p1_rpoint=:p1_rpoint, p1_rank=:p1_rank, p1_point=:p1_point, 72 p2_name=:p2_name, p2_str=:p2_str, p2_rpoint=:p2_rpoint, p2_rank=:p2_rank, p2_point=:p2_point, 73 p3_name=:p3_name, p3_str=:p3_str, p3_rpoint=:p3_rpoint, p3_rank=:p3_rank, p3_point=:p3_point, 74 p4_name=:p4_name, p4_str=:p4_str, p4_rpoint=:p4_rpoint, p4_rank=:p4_rank, p4_point=:p4_point, 75 deposit=:deposit, comment=:comment 76 where ts=:ts 77 ; 78""" 79 80sql["RESULT_DELETE"] = "delete from result where ts=?;" 81 82sql["REMARKS_INSERT"] = """ 83 insert into 84 remarks ( 85 thread_ts, event_ts, name, matter 86 ) values ( 87 :thread_ts, :event_ts, :name, :matter 88 ) 89 ; 90""" 91 92sql["REMARKS_DELETE_ALL"] = "delete from remarks where thread_ts=?;" 93 94sql["REMARKS_DELETE_ONE"] = "delete from remarks where event_ts=?;" 95 96sql["REMARKS_DELETE_COMPAR"] = """ 97 delete from remarks 98 where 99 thread_ts=:thread_ts 100 and event_ts=:event_ts 101 and name=:name 102 and matter=:matter 103 ; 104""" 105 106sql["SELECT_ALL_RESULTS"] = """ 107 select 108 rank, rpoint 109 from 110 individual_results 111 where 112 rule_version = :rule_version 113 and name = :player_name 114 ; 115""" 116 117sql["SELECT_GAME_RESULTS"] = """ 118 select 119 ts, 120 p1_name, p1_str, 121 p2_name, p2_str, 122 p3_name, p3_str, 123 p4_name, p4_str, 124 comment, 125 rule_version 126 from 127 result where ts=:ts 128 ; 129"""
args: argparse.Namespace =
None
コマンドライン引数
app: slack_bolt.app.app.App
slack object
webclient: slack_sdk.web.client.WebClient
slack object
cfg: cls.config.AppConfig
Configインスタンス共有
MessageParserインスタンス共有
member_list: dict =
{}
メンバーリスト
- 別名: 表示名
チームリスト
- id: チームID
- team: チーム名
- member: 所属メンバーリスト
bot_id: str =
''
ボットID
params: dict =
{}
プレースホルダ用パラメータ
app_var: dict =
{}
ホームタブ用初期値
sql: dict =
{'RESULT_INSERT': '\n insert into\n result (\n ts, playtime,\n p1_name, p1_str, p1_rpoint, p1_rank, p1_point,\n p2_name, p2_str, p2_rpoint, p2_rank, p2_point,\n p3_name, p3_str, p3_rpoint, p3_rank, p3_point,\n p4_name, p4_str, p4_rpoint, p4_rank, p4_point,\n deposit, rule_version, comment\n ) values (\n :ts, :playtime,\n :p1_name, :p1_str, :p1_rpoint, :p1_rank, :p1_point,\n :p2_name, :p2_str, :p2_rpoint, :p2_rank, :p2_point,\n :p3_name, :p3_str, :p3_rpoint, :p3_rank, :p3_point,\n :p4_name, :p4_str, :p4_rpoint, :p4_rank, :p4_point,\n :deposit, :rule_version, :comment\n )\n ;\n', 'RESULT_UPDATE': '\n update result set\n p1_name=:p1_name, p1_str=:p1_str, p1_rpoint=:p1_rpoint, p1_rank=:p1_rank, p1_point=:p1_point,\n p2_name=:p2_name, p2_str=:p2_str, p2_rpoint=:p2_rpoint, p2_rank=:p2_rank, p2_point=:p2_point,\n p3_name=:p3_name, p3_str=:p3_str, p3_rpoint=:p3_rpoint, p3_rank=:p3_rank, p3_point=:p3_point,\n p4_name=:p4_name, p4_str=:p4_str, p4_rpoint=:p4_rpoint, p4_rank=:p4_rank, p4_point=:p4_point,\n deposit=:deposit, comment=:comment\n where ts=:ts\n ;\n', 'RESULT_DELETE': 'delete from result where ts=?;', 'REMARKS_INSERT': '\n insert into\n remarks (\n thread_ts, event_ts, name, matter\n ) values (\n :thread_ts, :event_ts, :name, :matter\n )\n ;\n', 'REMARKS_DELETE_ALL': 'delete from remarks where thread_ts=?;', 'REMARKS_DELETE_ONE': 'delete from remarks where event_ts=?;', 'REMARKS_DELETE_COMPAR': '\n delete from remarks\n where\n thread_ts=:thread_ts\n and event_ts=:event_ts\n and name=:name\n and matter=:matter\n ;\n', 'SELECT_ALL_RESULTS': '\n select\n rank, rpoint\n from\n individual_results\n where\n rule_version = :rule_version\n and name = :player_name\n ;\n', 'SELECT_GAME_RESULTS': '\n select\n ts,\n p1_name, p1_str,\n p2_name, p2_str,\n p3_name, p3_str,\n p4_name, p4_str,\n comment,\n rule_version\n from\n result where ts=:ts\n ;\n'}
共通クエリ