date 1.1
This commit is contained in:
@@ -3,17 +3,11 @@ from server.backend.schemas.pydantic import ExcelInfo,settings,Translit
|
||||
from server.backend.api.nomenclature import processing
|
||||
import datetime
|
||||
import re
|
||||
def report_date(df, format: str):
|
||||
cell = str(df.iloc[0, 4])
|
||||
match = re.search(r"\d{2}\.\d{2}\.\d{4}", cell)
|
||||
if not match:
|
||||
return None
|
||||
dt = datetime.datetime.strptime(match.group(0), "%d.%m.%Y")
|
||||
return dt.strftime(format)
|
||||
def last_day_of_month(format: str):
|
||||
next_month = datetime.datetime.now().replace(day=28) + datetime.timedelta(days=4)
|
||||
last_day = next_month - datetime.timedelta(days=next_month.day)
|
||||
return last_day.strftime(format)
|
||||
def process_sheet(df,real_arti: int,real_quantity: int,real_sum_1: int,real_sum_2: int):
|
||||
# пропускаем служебные строки
|
||||
df = df.iloc[2:].reset_index(drop=True)
|
||||
|
||||
# выбираем нужные колонки по индексам
|
||||
df = df.iloc[:, [real_arti, real_quantity, real_sum_1, real_sum_2]].copy()
|
||||
df.dropna(inplace=True)
|
||||
@@ -45,5 +39,5 @@ def process_sheet(df,real_arti: int,real_quantity: int,real_sum_1: int,real_sum_
|
||||
def evaluating(dfs):
|
||||
validated_rows_1 = process_sheet(dfs["Отчет о реализации"], real_arti=2,real_quantity=8, real_sum_1=5,real_sum_2=6) # номера столбцов от озона
|
||||
validated_rows_2 = process_sheet(dfs["Отчет о реализации"], real_arti=2,real_quantity=16, real_sum_1=13,real_sum_2=14)#
|
||||
date=report_date(dfs["Отчет о реализации"], format=settings.TIMEFORMAT)
|
||||
date=last_day_of_month(format=settings.TIMEFORMAT)
|
||||
return validated_rows_1, validated_rows_2, date
|
||||
Reference in New Issue
Block a user