yeref 0.25.6__py3-none-any.whl → 0.25.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
yeref/yeref.py CHANGED
@@ -16013,7 +16013,7 @@ async def calc_metrics(bot, PROJECT_USERNAME, dataroom_folder_id, EXTRA_D, BASE_
16013
16013
 
16014
16014
  # --- Начинаем сразу с объединённого цикла по всем метрикам r1–r5 ---
16015
16015
  metrics_paths = [r1, r2, r3, r4, r5]
16016
- tables = [] # сюда будем складывать словари вида {'name': basename, 'rows': [[...], ...]}
16016
+ tables = []
16017
16017
 
16018
16018
  # 1) Собираем существующие CSV-файлы
16019
16019
  for path in metrics_paths:
@@ -16038,45 +16038,43 @@ async def calc_metrics(bot, PROJECT_USERNAME, dataroom_folder_id, EXTRA_D, BASE_
16038
16038
  http_auth = credentials.authorize(httplib2.Http())
16039
16039
  sheets_service = build('sheets', 'v4', http=http_auth, cache_discovery=False)
16040
16040
 
16041
- # 4) Переименовываем стандартный лист «Лист1»/«Sheet1» PROJECT_USERNAME
16041
+ # 4) Получаем metadata, ищем лист с названием PROJECT_USERNAME
16042
16042
  spreadsheet = sheets_service.spreadsheets().get(spreadsheetId=dataroom_folder_id).execute()
16043
- sheet_id_to_rename = None
16043
+ sheet_id_target = None
16044
16044
  for sheet in spreadsheet.get('sheets', []):
16045
16045
  props = sheet.get('properties', {})
16046
- title = props.get('title', '')
16047
- if title in ['Лист1', 'Sheet1']:
16048
- sheet_id_to_rename = props.get('sheetId')
16046
+ if props.get('title') == PROJECT_USERNAME:
16047
+ sheet_id_target = props.get('sheetId')
16048
+ logger.info(f"Найден существующий лист '{PROJECT_USERNAME}', sheetId={sheet_id_target}")
16049
16049
  break
16050
16050
 
16051
- if sheet_id_to_rename is not None:
16052
- rename_request = {
16051
+ # 5) Если листа нет — создаём новый лист с названием PROJECT_USERNAME
16052
+ if sheet_id_target is None:
16053
+ add_request = {
16053
16054
  'requests': [
16054
16055
  {
16055
- 'updateSheetProperties': {
16056
+ 'addSheet': {
16056
16057
  'properties': {
16057
- 'sheetId': sheet_id_to_rename,
16058
16058
  'title': PROJECT_USERNAME
16059
- },
16060
- 'fields': 'title'
16059
+ }
16061
16060
  }
16062
16061
  }
16063
16062
  ]
16064
16063
  }
16065
- sheets_service.spreadsheets().batchUpdate(
16064
+ response = sheets_service.spreadsheets().batchUpdate(
16066
16065
  spreadsheetId=dataroom_folder_id,
16067
- body=rename_request
16066
+ body=add_request
16068
16067
  ).execute()
16069
- logger.info(f"Лист переименован в '{PROJECT_USERNAME}'.")
16070
- else:
16071
- logger.warning("Не найден лист 'Лист1' или 'Sheet1' для переименования.")
16068
+ sheet_id_target = response['replies'][0]['addSheet']['properties']['sheetId']
16069
+ logger.info(f"Создан новый лист '{PROJECT_USERNAME}', sheetId={sheet_id_target}")
16072
16070
 
16073
- # 5) Готовим запросы для записи всех таблиц одна за другой с промежутком
16071
+ # 6) Готовим запросы для записи всех таблиц одна за другой с промежутком
16074
16072
  safe_title = PROJECT_USERNAME.replace("'", "\\'")
16075
16073
  offset = 1 # первая строка, с которой начнём писать
16076
16074
  data_requests = []
16077
16075
 
16078
16076
  for tbl in tables:
16079
- # 5.1) Заголовок: имя CSV-файла
16077
+ # 6.1) Заголовок: имя CSV-файла
16080
16078
  header_range = f"'{safe_title}'!A{offset}"
16081
16079
  data_requests.append({
16082
16080
  'range': header_range,
@@ -16086,7 +16084,7 @@ async def calc_metrics(bot, PROJECT_USERNAME, dataroom_folder_id, EXTRA_D, BASE_
16086
16084
  logger.info(f"Добавлен заголовок '{tbl['name']}' → A{offset}")
16087
16085
  offset += 1
16088
16086
 
16089
- # 5.2) Содержимое CSV: все строки сразу под заголовком
16087
+ # 6.2) Содержимое CSV: все строки сразу под заголовком
16090
16088
  data_range = f"'{safe_title}'!A{offset}"
16091
16089
  data_requests.append({
16092
16090
  'range': data_range,
@@ -16096,10 +16094,10 @@ async def calc_metrics(bot, PROJECT_USERNAME, dataroom_folder_id, EXTRA_D, BASE_
16096
16094
  logger.info(f"Добавлены {len(tbl['rows'])} строк из '{tbl['name']}' → A{offset}")
16097
16095
  offset += len(tbl['rows'])
16098
16096
 
16099
- # 5.3) Оставляем минимум 2 пустые строки перед следующей таблицей
16100
- offset += 3
16097
+ # 6.3) Оставляем минимум 2 пустые строки перед следующей таблицей
16098
+ offset += 2
16101
16099
 
16102
- # 6) Выполняем единый batchUpdate для всех data_requests
16100
+ # 7) Выполняем единый batchUpdate для всех data_requests
16103
16101
  write_body = {
16104
16102
  'valueInputOption': 'USER_ENTERED',
16105
16103
  'data': data_requests
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: yeref
3
- Version: 0.25.6
3
+ Version: 0.25.7
4
4
  Summary: desc-f
5
5
  Author: john smith
6
6
  Dynamic: author
@@ -0,0 +1,8 @@
1
+ yeref/__init__.py,sha256=Qpv3o6Xa78VdLcsSRmctGtpnYE9btpAkCekgGhgJyXM,49
2
+ yeref/l_.py,sha256=LMX_olmJwq-tgoALJCnhV_fGrL_i_43yBLkLIcEVqGo,1176743
3
+ yeref/tonweb.js,sha256=Jf6aFOQ1OIY4q7fINYz-m5LsI3seMus124M5SYYZmtE,443659
4
+ yeref/yeref.py,sha256=wRpSWql996MWX-i-4GjL4SUHNmNjwheGS0I0yrx7eRg,1056354
5
+ yeref-0.25.7.dist-info/METADATA,sha256=020yfGCI6pVZfOZEIAcchgFDr7IsnqdOluNCjrHkPo4,118
6
+ yeref-0.25.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
7
+ yeref-0.25.7.dist-info/top_level.txt,sha256=yCQKchWHbfV-3OuQPYRdi2loypD-nmbDJbtt3OuKKkY,6
8
+ yeref-0.25.7.dist-info/RECORD,,
@@ -1,8 +0,0 @@
1
- yeref/__init__.py,sha256=Qpv3o6Xa78VdLcsSRmctGtpnYE9btpAkCekgGhgJyXM,49
2
- yeref/l_.py,sha256=LMX_olmJwq-tgoALJCnhV_fGrL_i_43yBLkLIcEVqGo,1176743
3
- yeref/tonweb.js,sha256=Jf6aFOQ1OIY4q7fINYz-m5LsI3seMus124M5SYYZmtE,443659
4
- yeref/yeref.py,sha256=8Ow6asK12jj3noAAUVtCKwq-txpj_ks_w-L-IQKqaZA,1056443
5
- yeref-0.25.6.dist-info/METADATA,sha256=bsrMXHVBgRzsBy8TBIwOSrV1PA13MYOgpYrFdb4BfPY,118
6
- yeref-0.25.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
7
- yeref-0.25.6.dist-info/top_level.txt,sha256=yCQKchWHbfV-3OuQPYRdi2loypD-nmbDJbtt3OuKKkY,6
8
- yeref-0.25.6.dist-info/RECORD,,
File without changes