From 28e1319ee34216de8c1bfec7b8b741621a40d873 Mon Sep 17 00:00:00 2001 From: RTAkland Date: Mon, 20 Dec 2021 21:22:42 +0800 Subject: [PATCH] feat: fixed many bugs --- core/__init__.py | 23 ------------ core/settings.py | 98 ++++++++++++++++++++++++------------------------ 2 files changed, 48 insertions(+), 73 deletions(-) diff --git a/core/__init__.py b/core/__init__.py index 818870f..81c8398 100644 --- a/core/__init__.py +++ b/core/__init__.py @@ -5,31 +5,8 @@ # @Create Time: 2021/12/15 # @File Name: __init__.py -""" -Check the configuration file -""" import os -import sys -from core.logger import Logger -from core.language import Language -from core.read_config import read_config - - -settings = read_config() if not os.path.exists('./logs'): os.mkdir('./logs') - -for mail in settings[0].values(): - if not mail: - Logger.critical('mail-settings 有未填写项目') - sys.exit(1) -for request in settings[1].values(): - if not request: - Logger.critical('request-settings 有未填写项目') - sys.exit(1) -for other in settings[1].values(): - if not other: - Logger.critical('client-settings 有未填写项目') - sys.exit(1) diff --git a/core/settings.py b/core/settings.py index 6f85cc8..e51d9f4 100644 --- a/core/settings.py +++ b/core/settings.py @@ -11,62 +11,60 @@ import getpass from core.logger import Logger from core.language import Language from core.read_excel import read_excel -from core.read_config import read_config from ruamel.yaml import YAML -def change_settings(flag: bool = True): +def change_settings(): """ - - :return: None + 使用read_excel.py搜索到的结果再次进行二次选择, 并写入文件 + :return: """ language = Language() - settings = read_config() - if not settings[1]['mode'] or not flag: - Logger.info(f'[Modify]{language["fill_the_config"]}') - Logger.info(f'[Modify]{language["input_a_city_name"]}') - while True: - time.sleep(0.3) - city_name = input('-->') - match city_name: - case 'q': - Logger.info(f'[Modify]User quit.') - sys.exit(0) - case '': - Logger.critical(f'[Modify]{language["null_value"]}') - continue - case _: - break - searched_city = read_excel(city_name) - Logger.info(f'[Modify]{language["user_input"]}:[{city_name}]') - Logger.info(f'[Modify]{language["select_a_index"]}') - if not searched_city: - Logger.error(f'[Modify]{language["no_result"]}') - sys.exit(1) + Logger.info(f'[Modify]{language["change_setting"]}') + Logger.info(f'[Modify]{language["fill_the_config"]}') + Logger.info(f'[Modify]{language["input_a_city_name"]}') + while True: time.sleep(0.3) - while True: - try: - time.sleep(0.3) - user_input = input('-->') - if user_input == 'q': - Logger.info('[Quit]User quit') - sys.exit(1) - index = searched_city[int(user_input)] - with open('./config.yml', 'r', encoding='utf-8') as of: - data = YAML().load(of) - data['request-settings']['location'] = index[1] - data['only-view-settings']['city-name'] = f'{index[3]}-{index[7]}-{index[7]}' - data['only-view-settings']['time'] = time.strftime("%a %b %d %Y %H:%M:%S", time.localtime()) - data['only-view-settings']['user'] = getpass.getuser() - with open('./config.yml', 'w', encoding='utf-8') as wf: - YAML().dump(data, wf) - Logger.info(f'[Write]{language["write_successfully"]}:config.yml') - break - except (IndexError, ValueError) as e: - Logger.info(e) - Logger.error(f'[Write]{language["input_type_error"]}') - continue - finally: - Logger.info('[Done]Program has done.') + city_name = input('-->') + match city_name: + case 'q': + Logger.info(f'[Exit]{language["exit"]}') sys.exit(0) + case '': + Logger.error(f'[Modify]{language["null_value"]}') + continue + case _: + break + searched_city = read_excel(city_name) + Logger.info(f'[Modify]{language["user_input"]}:[{city_name}]') + Logger.info(f'[Modify]{language["select_a_index"]}') + if not searched_city: + Logger.error(f'[Modify]{language["no_result"]}') + sys.exit(1) + time.sleep(0.3) + while True: + try: + time.sleep(0.3) + user_input = input('-->') + if user_input == 'q': + Logger.info(f'[Exit]{language["exit"]}') + sys.exit(1) + index = searched_city[int(user_input)] + with open('./config.yml', 'r', encoding='utf-8') as of: + data = YAML().load(of) + data['request-settings']['location'] = index[1] + data['only-view-settings']['city-name'] = f'{index[3]}-{index[7]}-{index[7]}' + data['only-view-settings']['time'] = time.strftime("%a %b %d %Y %H:%M:%S", time.localtime()) + data['only-view-settings']['user'] = getpass.getuser() + with open('./config.yml', 'w', encoding='utf-8') as wf: + YAML().dump(data, wf) + Logger.info(f'[Write]{language["write_successfully"]}:config.yml') + break + except (IndexError, ValueError) as e: + Logger.info(e) + Logger.error(f'[Write]{language["input_type_error"]}') + continue + finally: + Logger.info(f'[Exit]{language["exit"]}') + sys.exit(0)