Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion aimbat/lib/data.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ def _create_station(
select(AimbatStation)
.where(AimbatStation.name == new_aimbat_station.name)
.where(AimbatStation.network == new_aimbat_station.network)
.where(AimbatStation.channel == new_aimbat_station.channel)
.where(AimbatStation.location == new_aimbat_station.location)
)
aimbat_station = session.exec(select_aimbat_station).one_or_none()

Expand Down Expand Up @@ -106,7 +108,6 @@ def add_files_to_project(
"""Add files to the AIMBAT database.

Parameters:
session: Database session.
datasources: List of data sources to add.
datatype: Type of data.
disable_progress_bar: Do not display progress bar.
Expand Down
4 changes: 2 additions & 2 deletions aimbat/lib/io/_sac.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,8 @@ def create_station_from_sacfile(sacfile: str | PathLike) -> AimbatStation:

logger.debug(f"Reading station data from {sacfile}.")

event = SAC.from_file(sacfile).station
aimbat_station = AimbatStation.model_validate(event)
station = SAC.from_file(sacfile).station
aimbat_station = AimbatStation.model_validate(station)
return aimbat_station


Expand Down
14 changes: 10 additions & 4 deletions aimbat/lib/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ class AimbatEvent(SQLModel, table=True):
active: bool | None = Field(default=None, unique=True)
"Indicates if an event is the active event."

time: datetime = Field(unique=True, sa_type=_DateTimeUTC)
time: datetime = Field(unique=True, sa_type=_DateTimeUTC, allow_mutation=False)
"Event time."

latitude: float
Expand Down Expand Up @@ -149,15 +149,21 @@ class AimbatStation(SQLModel, table=True):
name: str = Field(allow_mutation=False)
"Station name."

network: str = Field(allow_mutation=False)
"Network name."

location: str = Field(allow_mutation=False)
"Location ID."

channel: str = Field(allow_mutation=False)
"Channel code."

latitude: float
"Station latitude"

longitude: float
"Station longitude"

network: str | None = Field(default=None, allow_mutation=False)
"Network name."

elevation: float | None = None
"Station elevation."

Expand Down
4 changes: 4 additions & 0 deletions aimbat/lib/station.py
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,8 @@ def print_station_table(short: bool, all_events: bool = False) -> None:
table.add_column(
"Name & Network", justify="center", style=TABLE_STYLING.mine, no_wrap=True
)
table.add_column("Channel", justify="center", style=TABLE_STYLING.mine)
table.add_column("Location", justify="center", style=TABLE_STYLING.mine)
table.add_column("Latitude", justify="center", style=TABLE_STYLING.mine)
table.add_column("Longitude", justify="center", style=TABLE_STYLING.mine)
table.add_column("Elevation", justify="center", style=TABLE_STYLING.mine)
Expand All @@ -128,6 +130,8 @@ def print_station_table(short: bool, all_events: bool = False) -> None:
else str(aimbat_station.id)
),
f"{aimbat_station.name} - {aimbat_station.network}",
f"{aimbat_station.channel}",
f"{aimbat_station.location}",
(
f"{aimbat_station.latitude:.3f}"
if short
Expand Down
6 changes: 3 additions & 3 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 8 additions & 2 deletions tests/lib/test_lib_common.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,20 @@ def session_with_stations(
) -> Iterator[Session]:
station_1 = AimbatStation(
id=UUID1,
name="test_station_1",
name="TEST1",
network="TE",
channel="BHZ",
location="",
latitude=12,
longitude=12,
elevation=12,
)
station_2 = AimbatStation(
id=UUID2,
name="test_station_2",
name="TEST2",
network="TE",
channel="BHZ",
location="",
latitude=12,
longitude=12,
elevation=12,
Expand Down
14 changes: 7 additions & 7 deletions uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading