Добавил форму с предосмотром и редактированием

This commit is contained in:
2025-11-01 13:57:50 +03:00
parent e01785fa53
commit c8a951eac6
10 changed files with 1058 additions and 50 deletions

View File

@@ -52,7 +52,7 @@ def remove_str(s: str):
return float(s.strip().replace(",", "."))
return s
def fill_data_from_df(df: pd.DataFrame, sat: Satellite):
def fill_data_from_df(df: pd.DataFrame, sat: Satellite, current_user=None):
try:
df.rename(columns={'Модуляция ': 'Модуляция'}, inplace=True)
except Exception as e:
@@ -111,6 +111,7 @@ def fill_data_from_df(df: pd.DataFrame, sat: Satellite):
location = stroka[1]['Местоопределение'].strip()
comment = stroka[1]['Комментарий']
source = stroka[1]['Объект наблюдения']
user_to_use = current_user if current_user else CustomUser.objects.get(id=1)
vch_load_obj, _ = Parameter.objects.get_or_create(
id_satellite=sat,
@@ -120,7 +121,6 @@ def fill_data_from_df(df: pd.DataFrame, sat: Satellite):
bod_velocity=v,
modulation=mod_obj,
snr=snr,
# defaults={'id_user_add': CustomUser.objects.get(id=1)}
)
geo, _ = Geo.objects.get_or_create(
@@ -131,7 +131,7 @@ def fill_data_from_df(df: pd.DataFrame, sat: Satellite):
'coords_valid': valid_point,
'location': location,
'comment': comment,
'is_average': (comment != -1.0)
'is_average': (comment != -1.0),
}
)
geo.save()
@@ -144,7 +144,7 @@ def fill_data_from_df(df: pd.DataFrame, sat: Satellite):
if not existing_obj_items.exists():
obj_item = ObjItem.objects.create(
name=source,
id_user_add=CustomUser.objects.get(id=1)
created_by=user_to_use
)
obj_item.parameters_obj.set([vch_load_obj])
geo.objitem = obj_item
@@ -202,7 +202,7 @@ def get_point_from_json(filepath: str):
def get_points_from_csv(file_content):
def get_points_from_csv(file_content, current_user=None):
df = pd.read_csv(io.StringIO(file_content), sep=";",
names=['id', 'obj', 'lat', 'lon', 'h', 'time', 'sat', 'norad_id', 'freq', 'f_range', 'et', 'qaul', 'mir_1', 'mir_2', 'mir_3'])
df[['lat', 'lon', 'freq', 'f_range']] = df[['lat', 'lon', 'freq', 'f_range']].replace(',', '.', regex=True).astype(float)
@@ -239,12 +239,14 @@ def get_points_from_csv(file_content):
name=row['mir_3']
)
user_to_use = current_user if current_user else CustomUser.objects.get(id=1)
vch_load_obj, _ = Parameter.objects.get_or_create(
id_satellite=sat_obj,
polarization=pol_obj,
frequency=row['freq'],
freq_range=row['f_range'],
# defaults={'id_user_add': CustomUser.objects.get(id=1)}
# defaults={'id_user_add': user_to_use}
)
geo_obj, _ = Geo.objects.get_or_create(
@@ -252,7 +254,7 @@ def get_points_from_csv(file_content):
coords=Point(row['lon'], row['lat'], srid=4326),
defaults={
'is_average': False,
# 'id_user_add': CustomUser.objects.get(id=1),
# 'id_user_add': user_to_use,
}
)
geo_obj.mirrors.set(Mirror.objects.filter(name__in=mir_lst))
@@ -264,7 +266,7 @@ def get_points_from_csv(file_content):
if not existing_obj_items.exists():
obj_item = ObjItem.objects.create(
name=row['obj'],
# id_user_add=CustomUser.objects.get(id=1)
created_by=user_to_use
)
obj_item.parameters_obj.set([vch_load_obj])
geo_obj.objitem = obj_item