libs.data.lookup.textdata
lib/data/lookup/textdata.py
1""" 2lib/data/lookup/textdata.py 3""" 4 5import libs.global_value as g 6from libs.utils import dbutil, textutil 7 8 9# slack出力用 10def get_members_list() -> tuple[str, str]: 11 """登録済みのメンバー一覧を取得する(slack出力用) 12 13 Returns: 14 tuple[str, str]: 15 - str: post時のタイトル 16 - str: メンバー一覧 17 """ 18 19 title = "登録済みメンバー一覧" 20 padding = textutil.count_padding(list(set(g.member_list.values()))) 21 msg = f"# 表示名{" " * (padding - 8)}:登録されている名前 #\n" 22 23 for pname in set(g.member_list.values()): 24 name_list = [] 25 for alias, name in g.member_list.items(): 26 if name == pname: 27 name_list.append(alias) 28 msg += "{}{}:{}\n".format( # pylint: disable=consider-using-f-string 29 pname, 30 " " * (padding - textutil.len_count(pname)), 31 ", ".join(name_list), 32 ) 33 34 return (title, msg) 35 36 37def get_team_list() -> str: 38 """チームの登録状況を表示する(slack出力用) 39 40 Returns: 41 str: slackにpostする内容 42 """ 43 44 resultdb = dbutil.get_connection() 45 cur = resultdb.execute(""" 46 select 47 team.name, 48 ifnull( 49 group_concat(member.name), 50 "未エントリー" 51 ) 52 from 53 team 54 left join member on 55 team.id = member.team_id 56 group by 57 team.name 58 """) 59 team_data = dict(cur.fetchall()) 60 61 if len(team_data) == 0: 62 msg = "チームは登録されていません。" 63 else: 64 msg = "" 65 for k, v in team_data.items(): 66 msg += f"{k}\n" 67 for p in v.split(","): 68 msg += f"\t{p}\n" 69 msg += "\n" 70 71 return msg
def
get_members_list() -> tuple[str, str]:
11def get_members_list() -> tuple[str, str]: 12 """登録済みのメンバー一覧を取得する(slack出力用) 13 14 Returns: 15 tuple[str, str]: 16 - str: post時のタイトル 17 - str: メンバー一覧 18 """ 19 20 title = "登録済みメンバー一覧" 21 padding = textutil.count_padding(list(set(g.member_list.values()))) 22 msg = f"# 表示名{" " * (padding - 8)}:登録されている名前 #\n" 23 24 for pname in set(g.member_list.values()): 25 name_list = [] 26 for alias, name in g.member_list.items(): 27 if name == pname: 28 name_list.append(alias) 29 msg += "{}{}:{}\n".format( # pylint: disable=consider-using-f-string 30 pname, 31 " " * (padding - textutil.len_count(pname)), 32 ", ".join(name_list), 33 ) 34 35 return (title, msg)
登録済みのメンバー一覧を取得する(slack出力用)
Returns:
tuple[str, str]:
- str: post時のタイトル
- str: メンバー一覧
def
get_team_list() -> str:
38def get_team_list() -> str: 39 """チームの登録状況を表示する(slack出力用) 40 41 Returns: 42 str: slackにpostする内容 43 """ 44 45 resultdb = dbutil.get_connection() 46 cur = resultdb.execute(""" 47 select 48 team.name, 49 ifnull( 50 group_concat(member.name), 51 "未エントリー" 52 ) 53 from 54 team 55 left join member on 56 team.id = member.team_id 57 group by 58 team.name 59 """) 60 team_data = dict(cur.fetchall()) 61 62 if len(team_data) == 0: 63 msg = "チームは登録されていません。" 64 else: 65 msg = "" 66 for k, v in team_data.items(): 67 msg += f"{k}\n" 68 for p in v.split(","): 69 msg += f"\t{p}\n" 70 msg += "\n" 71 72 return msg
チームの登録状況を表示する(slack出力用)
Returns:
str: slackにpostする内容