mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-11-07 09:52:13 +00:00
change types to dateType
This commit is contained in:
@@ -1,9 +1,12 @@
|
||||
"""Company News Standard Model."""
|
||||
|
||||
|
||||
from datetime import datetime
|
||||
from datetime import (
|
||||
date as dateType,
|
||||
datetime,
|
||||
)
|
||||
from typing import Optional
|
||||
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from pydantic import Field, NonNegativeInt, field_validator
|
||||
|
||||
from openbb_core.provider.abstract.data import Data
|
||||
@@ -25,22 +28,39 @@ class CompanyNewsQueryParams(QueryParams):
|
||||
limit: Optional[NonNegativeInt] = Field(
|
||||
default=20, description=QUERY_DESCRIPTIONS.get("limit", "")
|
||||
)
|
||||
date: Optional[str] = Field(
|
||||
date: Optional[dateType] = Field(
|
||||
default=None, description="Date of the news to retrieve."
|
||||
)
|
||||
start_date: Optional[str] = Field(
|
||||
start_date: Optional[dateType] = Field(
|
||||
default=None, description="Start date of the news to retrieve."
|
||||
)
|
||||
end_date: Optional[str] = Field(
|
||||
end_date: Optional[dateType] = Field(
|
||||
default=None, description="End date of the news to retrieve."
|
||||
)
|
||||
|
||||
@field_validator("symbols", mode="before")
|
||||
@classmethod
|
||||
def symbols_validate(cls, v: str): # pylint: disable=E0213
|
||||
def symbols_validate(cls, v: str) -> str: # pylint: disable=E0213
|
||||
"""Validate the symbols."""
|
||||
return v.upper()
|
||||
|
||||
@field_validator("start_date", mode="before")
|
||||
@classmethod
|
||||
def start_date_validate(cls, v) -> dateType: # pylint: disable=E0213
|
||||
"""Populate start date if empty."""
|
||||
if not v:
|
||||
now = datetime.now().date()
|
||||
v = now - relativedelta(years=1)
|
||||
return v
|
||||
|
||||
@field_validator("end_date", mode="before")
|
||||
@classmethod
|
||||
def end_date_validate(cls, v) -> dateType: # pylint: disable=E0213
|
||||
"""Populate end date if empty."""
|
||||
if not v:
|
||||
v = datetime.now().date()
|
||||
return v
|
||||
|
||||
|
||||
class CompanyNewsData(Data):
|
||||
"""Company News Data."""
|
||||
|
||||
Reference in New Issue
Block a user