|
|
|
|
@ -12,7 +12,9 @@ async def get(
|
|
|
|
|
*, db_session: DbSession, transaction_data_id: str
|
|
|
|
|
) -> Optional[PlantTransactionData]:
|
|
|
|
|
"""Returns a document based on the given document id."""
|
|
|
|
|
query = Select(PlantTransactionData).filter(PlantTransactionData.id == transaction_data_id)
|
|
|
|
|
query = Select(PlantTransactionData).filter(
|
|
|
|
|
PlantTransactionData.id == transaction_data_id
|
|
|
|
|
)
|
|
|
|
|
result = await db_session.execute(query)
|
|
|
|
|
return result.scalars().one_or_none()
|
|
|
|
|
|
|
|
|
|
@ -38,36 +40,40 @@ async def get_all(
|
|
|
|
|
return results
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
async def create(*, db_session: DbSession, yeardata_in: PlantTransactionDataCreate):
|
|
|
|
|
async def create(
|
|
|
|
|
*, db_session: DbSession, transaction_data_in: PlantTransactionDataCreate
|
|
|
|
|
):
|
|
|
|
|
"""Creates a new document."""
|
|
|
|
|
yeardata = PlantTransactionData(**yeardata_in.model_dump())
|
|
|
|
|
db_session.add(yeardata)
|
|
|
|
|
transaction_data = PlantTransactionData(**transaction_data_in.model_dump())
|
|
|
|
|
db_session.add(transaction_data)
|
|
|
|
|
await db_session.commit()
|
|
|
|
|
return yeardata
|
|
|
|
|
return transaction_data
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
async def update(
|
|
|
|
|
*,
|
|
|
|
|
db_session: DbSession,
|
|
|
|
|
yeardata: PlantTransactionData,
|
|
|
|
|
yeardata_in: PlantTransactionDataUpdate,
|
|
|
|
|
transaction_data: PlantTransactionData,
|
|
|
|
|
transaction_data_in: PlantTransactionDataUpdate,
|
|
|
|
|
):
|
|
|
|
|
"""Updates a document."""
|
|
|
|
|
data = yeardata_in.model_dump()
|
|
|
|
|
data = transaction_data_in.model_dump()
|
|
|
|
|
|
|
|
|
|
update_data = yeardata_in.model_dump(exclude_defaults=True)
|
|
|
|
|
update_data = transaction_data_in.model_dump(exclude_defaults=True)
|
|
|
|
|
|
|
|
|
|
for field in data:
|
|
|
|
|
if field in update_data:
|
|
|
|
|
setattr(yeardata, field, update_data[field])
|
|
|
|
|
setattr(transaction_data, field, update_data[field])
|
|
|
|
|
|
|
|
|
|
await db_session.commit()
|
|
|
|
|
|
|
|
|
|
return yeardata
|
|
|
|
|
return transaction_data
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
async def delete(*, db_session: DbSession, transaction_data_id: str):
|
|
|
|
|
"""Deletes a document."""
|
|
|
|
|
query = Delete(PlantTransactionData).where(PlantTransactionData.id == transaction_data_id)
|
|
|
|
|
query = Delete(PlantTransactionData).where(
|
|
|
|
|
PlantTransactionData.id == transaction_data_id
|
|
|
|
|
)
|
|
|
|
|
await db_session.execute(query)
|
|
|
|
|
await db_session.commit()
|
|
|
|
|
|